/*
 Isomorphic SmartClient web presentation layer
 Online documentation data
 Copyright 2000 and beyond Isomorphic Software, Inc. All rights reserved.
*/


var docItems = {
    "method:Layout.getMember":{
        ref:"method:Layout.getMember",
        flags:"",
        description:" Given a numerical index or a member name or member ID, return a pointer to the appropriate member.\n <p>\n If passed a member Canvas, just returns it.\n\n",
        name:"getMember",
        seeAlso:[
            {
                ref:"method:Layout.getMemberNumber",
                description:null
            }
        ],
        params:[
            {
                description:"identifier for the required member",
                optional:false,
                name:"memberID",
                defaultValue:null,
                type:"String | int | Canvas"
            }
        ],
        returns:{
            description:"member widget",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:ComboBoxItem.pickListProperties":{
        ref:"attr:ComboBoxItem.pickListProperties",
        flags:"IRA",
        description:"If specified this properties block will be applied to the ${isc.DocUtils.linkForRef('class:PickListMenu','pickList')}\n created for this FormItem.\n <P>\n <i>Note</i>: Not every ListGrid property is supported when assigned to a pickList.\n Where there is a dedicated API on the form item (such as ${isc.DocUtils.linkForRef('attr:PickList.pickListCellHeight','pickListCellHeight')}),\n we recommend that be used in favor of setting the equivalent property on the \n <code>pickListProperties</code> block. Also note that while setting\n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is a valid way to create a filterable pickList,\n this setting is not supported on a SelectItem with ${isc.DocUtils.linkForRef('attr:SelectItem.multiple')} set to\n true - this combination of settings can cause a selected value to be filtered out of\n view at which point further selection changes will discard that value. In general\n we recommend the ComboBoxItem class (with ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} set\n as appropriate) as a better interface for filtering pickList data.",
        name:"pickListProperties",
        seeAlso:[
        ],
        valueType:"ListGrid Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:TabSet.useSimpleTabs":{
        ref:"attr:TabSet.useSimpleTabs",
        flags:"IRA",
        description:"Should we use simple button based tabs styled with CSS rather than\n image based ${isc.DocUtils.linkForRef('class:ImgTab')} tabs?\n <P>\n <smartclient>\n If set to true the ${isc.DocUtils.linkForRef('attr:TabSet.simpleTabButtonConstructor')} will be used and tabs will\n by styled according to ${isc.DocUtils.linkForRef('attr:TabSet.simpleTabBaseStyle')}.\n </smartclient>\n <smartgwt>\n If set to true tabs will instances of ${isc.DocUtils.linkForRef('class:Button')}, styled according to the\n ${isc.DocUtils.linkForRef('attr:TabSet.simpleTabBaseStyle')}.\n </smartgwt>",
        name:"useSimpleTabs",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:MiniDateRangeItem.autoValidate":{
        ref:"attr:MiniDateRangeItem.autoValidate",
        flags:"IRW",
        description:"If this attribute is set to true, the pop up date range dialog will automatically\n validate the user-entered <i>\"to\"</i> and <i>\"from\"</i> values on \n <code>\"OK\"</code>-click, and refuse to dismiss if these items contain invalid values.",
        name:"autoValidate",
        setter:[
            "setAutoValidate"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "method:UploadItem.setValue":{
        ref:"method:UploadItem.setValue",
        flags:"",
        description:" Attempting to set the value for an upload form item is disallowed for security reasons.\n Therefore this method will just log a warning, and not modify the value of the item.\n",
        name:"setValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:UploadItem"
    },
    "attr:TileLayout.expandMargins":{
        ref:"attr:TileLayout.expandMargins",
        flags:"IR",
        description:"With ${isc.DocUtils.linkForRef('type:LayoutPolicy')}:\"fit\", should margins be expanded so that tiles fill the\n available space in the TileLayout on the breadth axis?\n This can also affect ${isc.DocUtils.linkForRef('attr:TileLayout.tileWidth')} or ${isc.DocUtils.linkForRef('attr:TileLayout.tileHeight')}. See those properties for details.",
        name:"expandMargins",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:DrawItem.dragMove":{
        ref:"method:DrawItem.dragMove",
        flags:"",
        description:" Notification fired for every mouseMove event triggered while the user is dragging this\n DrawItem.  Will only fire if ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag','canDrag')} is true.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"dragMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag interaction.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragPan')}"
        ],
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "type:LineCap":{
        ref:"type:LineCap",
        values:[
            {
                description:"Semicircular rounding",
                value:"\"round\""
            },
            {
                description:"Squared-off endpoint",
                value:"\"square\""
            },
            {
                description:"Square endpoint, stops exactly at the line's end coordinates instead                   of extending 1/2 lineWidth further as \"round\" and \"square\" do",
                value:"\"butt\""
            }
        ],
        description:"Supported styles of drawing the endpoints of a line",
        name:"LineCap",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "line"
        ]
    },
    "attr:FormItem.startRow":{
        ref:"attr:FormItem.startRow",
        flags:"IRW",
        description:"Whether this item should always start a new row in the form layout.",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formLayout"
        ]
    },
    "attr:MultiSortDialog.title":{
        ref:"attr:MultiSortDialog.title",
        flags:"IR",
        description:"The title-text to appear in this Dialog's Header-bar.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Sort\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:IMenuButton.menuButtonImageUp":{
        ref:"attr:IMenuButton.menuButtonImageUp",
        flags:"IRA",
        description:"Image for menu button indicating that the button expands a menu.  This image is shown\n for menus expanding up from the button.   Menu direction is controlled by\n ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuBelow')}.",
        name:"menuButtonImageUp",
        seeAlso:[
            {
                ref:"attr:MenuButton.menuButtonImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]menu_button_up.gif\"",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "method:ListGrid.sortChanged":{
        ref:"method:ListGrid.sortChanged",
        flags:"",
        description:" Notification method executed when the ${isc.DocUtils.linkForRef('method:ListGrid.setSort','sort specifiers')} change\n for this grid.\n",
        name:"sortChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"new sort specifiers - may be empty indicating   the grid was unsorted",
                optional:false,
                name:"sortSpecifiers",
                defaultValue:null,
                type:"Array of SortSpecifier"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "classAttr:Validator.mustBeLongerThan":{
        ref:"classAttr:Validator.mustBeLongerThan",
        flags:"IRA",
        description:"Default error message to display when standard <code>lengthRange</code> type validator\n returns false because the value passed in has fewer than <code>validator.min</code> characters.\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeLongerThan",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be at least ${min} characters\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HiliteRule.clause":{
        ref:"attr:HiliteRule.clause",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:FilterClause')} displaying the ${isc.DocUtils.linkForRef('class:FormItem','formItems')} used to \n specify the criteria for this HiliteRule.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteRule.clauseProperties</code>.",
        name:"clause",
        seeAlso:[
        ],
        valueType:"AutoChild FilterClause",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteRule"
    },
    "attr:ResultTree.resultSize":{
        ref:"attr:ResultTree.resultSize",
        flags:"IRA",
        description:"How many tree nodes to retrieve at once from each large set of children in the tree.\n <P>\n Applicable only with <code>fetchMode: \"paged\"</code>.  When a paged ResultTree is asked\n for rows that have not yet been loaded, it will fetch adjacent rows that are likely to\n be required soon, in batches of this size.",
        name:"resultSize",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"75",
        type:"attr",
        definingClass:"class:ResultTree",
        groups:[
            "treeDataBinding"
        ]
    },
    "attr:FilterClause.removeButtonPrompt":{
        ref:"attr:FilterClause.removeButtonPrompt",
        flags:"IR",
        description:"The hover prompt text for the remove button.",
        name:"removeButtonPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Remove\"",
        type:"attr",
        definingClass:"class:FilterClause",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Browser.setIsTouch":{
        ref:"classMethod:Browser.setIsTouch",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('classAttr:Browser.isTouch')} to allow this global variable to be changed at runtime.\n This advanced method is provided to override SmartClient's auto-detection logic, since the\n framework can only detect touch devices that existed at the time the platform was released.\n Any change to ${isc.DocUtils.linkForRef('classAttr:Browser.isTouch')} must be made before any component is created.\n <p>\n Note that setting <code>Browser.isTouch</code> might affect the values of\n ${isc.DocUtils.linkForRef('classAttr:Browser.isDesktop')}, ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}, and/or ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')}.\n\n",
        name:"setIsTouch",
        seeAlso:[
        ],
        params:[
            {
                description:"new setting for <code>Browser.isTablet</code>.",
                optional:false,
                name:"isTouch",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Browser"
    },
    "attr:TimeItem.millisecondValues":{
        ref:"attr:TimeItem.millisecondValues",
        flags:"IRW",
        getter:[
            "getMillisecondValues"
        ],
        description:"An array of values to make available in the \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondItem','millisecond picker')} when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for specifying a limited set of valid Millisecond values, or when using the \n TimeItem to record duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMinValue','millisecondMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMaxValue','millisecondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondIncrement','millisecondIncrement')} for another method of \n controlling the content in the millisecond picker.",
        name:"millisecondValues",
        setter:[
            "setMillisecondValues"
        ],
        seeAlso:[
        ],
        valueType:"Array of Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:TileGrid.dataFetchMode":{
        ref:"attr:TileGrid.dataFetchMode",
        flags:"IRW",
        description:"How to fetch and manage records retrieve from the server.  See ${isc.DocUtils.linkForRef('type:FetchMode')}.\n <P>\n This setting only applies to the ${isc.DocUtils.linkForRef('class:ResultSet')} automatically created by calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')}.  If a pre-existing ResultSet is passed to setData() instead, it's\n existing setting for ${isc.DocUtils.linkForRef('attr:ResultSet.fetchMode')} applies.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"paged\"",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "databinding"
        ]
    },
    "method:Dialog.setToolbarButtons":{
        ref:"method:Dialog.setToolbarButtons",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:Dialog.toolbarButtons')} for this dialog.\n Synonym for ${isc.DocUtils.linkForRef('method:Dialog.setButtons')}.\n",
        name:"setToolbarButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"buttons for the toolbar",
                optional:false,
                name:"newButtons",
                defaultValue:"null",
                type:"array of Buttons"
            }
        ],
        type:"method",
        definingClass:"class:Dialog"
    },
    "attr:FacetChart.showDataPoints":{
        ref:"attr:FacetChart.showDataPoints",
        flags:"IR",
        description:"For line charts, whether to show data points for each individual data value.\n <P>\n If shown, the ${isc.DocUtils.linkForRef('method:FacetChart.pointClick')} and ${isc.DocUtils.linkForRef('method:FacetChart.getPointHoverHTML')} APIs can be used to create\n interactivity.",
        name:"showDataPoints",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Hilite.title":{
        ref:"attr:Hilite.title",
        flags:"IRW",
        description:"User-visible title for this hilite.  Used for interfaces such as menus that can enable or\n disable hilites.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "method:DynamicForm.setError":{
        ref:"method:DynamicForm.setError",
        deprecated:"This method has been deprecated as of SmartClient release 5.7.  Use ${isc.DocUtils.linkForRef('method:DynamicForm.addFieldErrors')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setFieldErrors')} instead",
        flags:"A",
        description:"          Sets error message(s) for the specified itemName to the error string or array of\n          strings. You must call form.markForRedraw() to display the new error message(s).<br>\n          <b>Note:</b> you can call this multiple times for an individual itemName\n\t\t\t which will result in an array of errors being remembered.\n\n",
        name:"setError",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the item to set",
                optional:false,
                name:"itemName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"error message string or array of strings",
                optional:false,
                name:"errorMessage",
                defaultValue:null,
                type:"string|array"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "method:DrawPath.getCenter":{
        ref:"method:DrawPath.getCenter",
        flags:"",
        description:" Get the mean center of the path.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the mean center",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawPath"
    },
    "attr:AdvancedHiliteEditor.saveButton":{
        ref:"attr:AdvancedHiliteEditor.saveButton",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:ImgButton')} that accepts this Hilite and fires the \n ${isc.DocUtils.linkForRef('attr:AdvancedHiliteEditor.callback','callback')}.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>advancedHiliteEditor.saveButtonProperties</code>.",
        name:"saveButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "attr:DynamicForm.canEdit":{
        ref:"attr:DynamicForm.canEdit",
        flags:"IRWA",
        description:"If set to <code>false</code>, the form will be marked read-only. A widget on the form\n is editable if either (1) beginning with the widget and continuing up the containment\n hierarchy, including the form, the first widget to have a non-null <code>canEdit</code>\n attribute has canEdit:true, or (2) neither the widget nor any parent has a non-null\n <code>canEdit</code> attribute. This setting allows you to enable or disable the default\n editability of the form's items at one time.\n <p>\n This setting differs from the enabled/disabled state in that most form items will\n allow copying of the contents while read-only but do not while disabled.\n <p>\n Note that a form is considered editable if <code>canEdit</code> is null (default) or\n <code>true</code>.",
        name:"canEdit",
        setter:[
            "setCanEdit"
        ],
        seeAlso:[
            {
                ref:"attr:DynamicForm.readOnlyDisplay",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "readOnly"
        ]
    },
    "attr:TreeGrid.showRoot":{
        ref:"attr:TreeGrid.showRoot",
        flags:"IR",
        description:"Specifies whether the root node should be displayed in the treeGrid.\n <P>\n This property is only available for \"children\" modelType trees, hence is not allowed for\n trees that load data from the server dynamically via ${isc.DocUtils.linkForRef('method:TreeGrid.fetchData')}.  \n <P>\n To get the equivalent of a visible \"root\" node in a tree that loads data dynamically,\n add a singular, top-level parent to the data.  However, note that this top-level parent\n will technically be the only child of root, and the implicit root object will be\n returned by ${isc.DocUtils.linkForRef('method:Tree.getRoot','this.data.getRoot()')}.",
        name:"showRoot",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeField"
        ]
    },
    "attr:ComboBoxItem.showAllOptions":{
        ref:"attr:ComboBoxItem.showAllOptions",
        flags:"IR",
        description:"If true, even non-matching options will be shown, with configurable \n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.separatorRows','separator rows')} in between.  Not valid for\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionDataSource','databound pickLists')}.",
        name:"showAllOptions",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:FacetChart.logScale":{
        ref:"attr:FacetChart.logScale",
        flags:"IR",
        description:"Whether to use logarithmic scaling for values.\n <P>\n Logarithmic scale charts show an equivalent percentage increase as equivalent distance\n on the chart.  That is, 10 and 100 are the same distance apart as 100 and 1000 (each\n being a 10 times or 1000% increase).",
        name:"logScale",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:FilterBuilder.getCriteria":{
        ref:"method:FilterBuilder.getCriteria",
        flags:"",
        description:" Get the criteria entered by the user.\n \n",
        name:"getCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"By default if a user has selected a field and operator   type, but has failed to enter a value for the field it will be skipped. This optional parameter\n   allows you to retrieve all criteria, including those with an empty <code>value</code> attribute.",
                optional:true,
                name:"includeEmptyValues",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:null,
            type:"AdvancedCriteria"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:ListGrid.includeInSummaryProperty":{
        ref:"attr:ListGrid.includeInSummaryProperty",
        flags:"IRW",
        description:"Property name on a record that will be checked to determine whether a record should\n be included when calculating totals for the ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','grid summary')}.",
        name:"includeInSummaryProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"includeInSummary\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "group:menuBasic":{
        ref:"group:menuBasic",
        refs:[
            "method:MenuItem.action",
            "attr:MenuItem.title",
            "attr:MenuItem.submenu",
            "attr:MenuItem.isSeparator",
            "attr:MenuItem.enabled"
        ],
        name:"menuBasic",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:Date.setShortDatetimeDisplayFormat":{
        ref:"classMethod:Date.setShortDatetimeDisplayFormat",
        flags:"",
        description:"  Set the default short format for datetime values. After calling this method, subsequent calls to\n ${isc.DocUtils.linkForRef('method:Date.toShortDateTime')} will return a string formatted according to this format\n specification. Note that this will be the standard datetime format used by\n SmartClient components.\n <P>\n The <code>format</code> parameter may be a ${isc.DocUtils.linkForRef('type:FormatString')}, a ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} \n string, or a function. If passed a function, this function will be executed in the scope of\n the Date and should return the formatted string.<br>\n <P>\n Initial default format is <code>\"toUSShortDatetime\"</code>.  See\n <a href='http://en.wikipedia.org/wiki/Date_format_by_country' target='_blank'>http://en.wikipedia.org/wiki/Date_format_by_country</a>\n for a useful overview of standard date formats per country.\n\n",
        name:"setShortDatetimeDisplayFormat",
        seeAlso:[
        ],
        params:[
            {
                description:"new formatter",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"FormatString | DateDisplayFormat | function"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('dateFormat')}",
            "${isc.DocUtils.linkForExampleId('customDateFormat')}"
        ],
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:Calendar.mainView":{
        ref:"attr:Calendar.mainView",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:TabSet')} for managing calendar views when multiple views are available (eg,\n ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day')} and ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month')}).",
        name:"mainView",
        seeAlso:[
        ],
        valueType:"AutoChild TabSet",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:CubeGrid.expandField":{
        ref:"method:CubeGrid.expandField",
        flags:"facetValueMap",
        description:" Expands the specified field.  No-ops if it's not showing, or if it's already expanded.\n",
        name:"expandField",
        seeAlso:[
        ],
        params:[
            {
                description:"field specified as a facetValueMap",
                optional:false,
                name:"facetValueMap",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"whether specified field was actually expanded",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:DateChooser.todayButton":{
        ref:"attr:DateChooser.todayButton",
        flags:"IR",
        description:"A button shown below the ${isc.DocUtils.linkForRef('class:DateGrid','calendar grid')} which, when clicked, \n navigates the calendar to today.",
        name:"todayButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:PickList.filterLocally":{
        ref:"attr:PickList.filterLocally",
        flags:"IRA",
        description:"If <code>filterLocally</code> is set for this item, and this item is showing options \n from a dataSource, fetch the entire set of options from the server, and use these values\n to map the item value to the appropriate display value. Also use <code>\"local\"</code>\n type filtering on drop down list of options.\n <P>\n This means data will only be fetched once from the server, and then filtered on the\n client.\n <P>\n Note - when this property is set to <code>false</code>, filtering will still be \n performed on the client if a complete set of data for some criteria has been cached\n by a fetch, and a subsequent fetch has more restrictive criteria. To explicitly\n disable client-side filtering set the ${isc.DocUtils.linkForRef('attr:PickList.useClientFiltering')} property to false.",
        name:"filterLocally",
        seeAlso:[
            {
                ref:"attr:FormItem.filterLocally",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:RPCRequest.useXmlHttpRequest":{
        ref:"attr:RPCRequest.useXmlHttpRequest",
        deprecated:"As of SmartClient 5.5, use ${isc.DocUtils.linkForRef('attr:RPCRequest.transport')}.  If you specify a value for this property, it will take precedence over ${isc.DocUtils.linkForRef('attr:RPCRequest.transport')}.",
        flags:"IRWA",
        description:"Selects the default http transport for this RPCRequest.  If set to true, this request will use\n XMLHttpRequest for the transport to the server.  If set to false it will use a hidden frame.  If\n left unset, the transport mechanism is determined from the RPCManager default set in \n ${isc.DocUtils.linkForRef('classAttr:RPCManager.useXmlHttpRequest')}\n <p>\n If you're using queueing, note that all requests in the queue must use the same transport.\n If you attempt to send a request via a different transport than those that are currently on\n the queue, it will be sent to the server separately, ahead of the queue, and a warning will\n be logged to the Developer Console.\n <p>\n If you specify <code>true</code> for this attribute and XMLHttp is not available, a warning\n will be logged to the Developer Console and RPCManager will attempt to use the frames\n transport for this request.  Note that some features like\n ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')} require the XMLHttp transport and will not work if the\n XMLHttp transport is unavailable (this can happen if the end user is using Internet Explorer\n and has disabled ActiveX).  You can query the availability of XMLHttp by calling\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.xmlHttpRequestAvailable')}",
        name:"useXmlHttpRequest",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.useXmlHttpRequest",
                description:null
            },
            {
                ref:"classMethod:RPCManager.xmlHttpRequestAvailable",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"RPCManager.useXmlHttpRequest",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "method:ListGrid.canSelectCell":{
        ref:"method:ListGrid.canSelectCell",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is set to <code>true</code> then, whenever an end-user or\n programmatic cell-selection is attempted, this method is called for \n each cell in the selection. If it returns false, the cell will not be selected.\n\n",
        name:"canSelectCell",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum being selected",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"colNum being selected",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"return false to disallow selection",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Mail.templateFile":{
        ref:"attr:Mail.templateFile",
        flags:"IR",
        description:"Qualified name of the file containing the message template, relative to webroot.  Like all\n the other <code>String</code> properties of <code>Mail</code>, you can use Velocity\n substitution variables in this property.  The content itself (ie, the contents of the file\n named in this property) can also contain Velocity substitutions, of course.\n <p>\n You must specify either this property or ${isc.DocUtils.linkForRef('attr:Mail.messageTemplate','messageTemplate')}, but\n clearly it makes no sense to specify them both.",
        name:"templateFile",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "attr:DrawItem.linePattern":{
        ref:"attr:DrawItem.linePattern",
        flags:"IRW",
        description:"Pattern for lines, eg \"solid\" or \"dash\".\n <P>\n Note that support in old browsers, such as Internet Explorer versions before IE11, is\n limited for ${isc.DocUtils.linkForRef('drawPane.drawingType','drawingType')} \"bitmap\" to items with straight\n edges - ${isc.DocUtils.linkForRef('class:DrawLine')}s, ${isc.DocUtils.linkForRef('class:DrawPath')}s, and ${isc.DocUtils.linkForRef('class:DrawRect')}s with no \n ${isc.DocUtils.linkForRef('attr:DrawRect.rounding','rounding')}.",
        name:"linePattern",
        setter:[
            "setLinePattern"
        ],
        seeAlso:[
        ],
        valueType:"LinePattern",
        defaultValue:"\"solid\"",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "line"
        ]
    },
    "attr:ListGridField.suppressValueIcon":{
        ref:"attr:ListGridField.suppressValueIcon",
        flags:"IRW",
        description:"If this field has a valueIcons property specified, setting this property to true will\n prevent the valueIcon being written out into this field's cells.\n <P>\n Note this property may also be set to false to avoid showing the standard\n ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} and ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')} for fields of type\n <code>boolean</code>.",
        name:"suppressValueIcon",
        seeAlso:[
            {
                ref:"attr:ListGridField.valueIcons",
                description:null
            },
            {
                ref:"attr:ListGridField.showValueIconOnly",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "method:DatabaseBrowser.getResults":{
        ref:"method:DatabaseBrowser.getResults",
        flags:"",
        description:" \n",
        name:"getResults",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DatabaseBrowser"
    },
    "type:ListGridComponent":{
        ref:"type:ListGridComponent",
        values:[
            {
                description:"The standard filter-component displayed when ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')}   is true",
                value:"\"filterEditor\""
            },
            {
                description:"The header-component displayed when ${isc.DocUtils.linkForRef('attr:ListGrid.showHeader')} is true.",
                value:"\"header\""
            },
            {
                description:"The body component for the grid.",
                value:"\"body\""
            },
            {
                description:"The summary-row component displayed when ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is   true.",
                value:"\"summaryRow\""
            }
        ],
        description:"Standard component-type displayed within a ListGrid, as contained by ${isc.DocUtils.linkForRef('attr:ListGrid.gridComponents')}.",
        name:"ListGridComponent",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "method:DataBoundComponent.find":{
        ref:"method:DataBoundComponent.find",
        flags:"",
        description:" This API is equivalent to ${isc.DocUtils.linkForRef('method:List.find')} but searches for a matching record among already-loaded data only.  \n Use ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData')} to load data from the server.\n",
        name:"find",
        seeAlso:[
        ],
        params:[
            {
                description:"AdvancedCriteria to use with",
                optional:false,
                name:"advancedCriteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        returns:{
            description:"first matching object or null if not found",
            type:"Object"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:TabSet.moreTabProperties":{
        ref:"attr:TabSet.moreTabProperties",
        flags:"IR",
        description:"Properties to apply to the \"more\" tab created by this TabSet.",
        name:"moreTabProperties",
        seeAlso:[
        ],
        valueType:"Tab Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:Tree.getAllNodes":{
        ref:"method:Tree.getAllNodes",
        flags:"",
        description:" Get all the nodes that exist in the tree under a particular node, as a flat list, in\n depth-first traversal order.\n\n",
        name:"getAllNodes",
        seeAlso:[
        ],
        params:[
            {
                description:"soptional node to start from.  Default is root.",
                optional:true,
                name:"node",
                defaultValue:null,
                type:null
            }
        ],
        returns:{
            description:"all the nodes that exist in the tree",
            type:"Array of TreeNode"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "classMethod:Page.getScreenWidth":{
        ref:"classMethod:Page.getScreenWidth",
        flags:"",
        description:"\t\tGet the width of the user's screen, in pixels.\n",
        name:"getScreenWidth",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:Scrollbar.skinImgDir":{
        ref:"attr:Scrollbar.skinImgDir",
        flags:"IRA",
        description:"Where are the skin images for the Scrollbar.  This is local to the ${isc.DocUtils.linkForRef('classMethod:Page.getSkinDir','overall skin directory')}.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/Scrollbar/\"",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "images"
        ]
    },
    "method:ColorPicker.setSaturation":{
        ref:"method:ColorPicker.setSaturation",
        flags:"",
        description:" Sets the Saturation of the selected color\n",
        name:"setSaturation",
        seeAlso:[
            {
                ref:"method:ColorPicker.getSaturation",
                description:null
            }
        ],
        params:[
            {
                description:"An integer between 0 and 240",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:AnimateShowEffect.startFrom":{
        ref:"attr:AnimateShowEffect.startFrom",
        flags:"IR",
        description:"For show animations of type <code>\"wipe\"</code> and\n   <code>\"slide\"</code> this attribute specifies where the wipe / slide should originate.\n   Valid values are <code>\"T\"</code> (vertical animation from the top down, the \n   default behavior), and <code>\"L\"</code> (horizontal animation from the left side).",
        name:"startFrom",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:AnimateShowEffect"
    },
    "attr:Point.x":{
        ref:"attr:Point.x",
        flags:"IR",
        description:"The x coordinate of this point.",
        name:"x",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:Point"
    },
    "attr:Point.y":{
        ref:"attr:Point.y",
        flags:"IR",
        description:"The y coordinate of this point.",
        name:"y",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:Point"
    },
    "method:CanvasItem.getCriterion":{
        ref:"method:CanvasItem.getCriterion",
        flags:"",
        description:" The standard formItem criteria editing APIs have been overridden in the canvasItem class\n to simplify the editing of complex ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} objects using nested \n DynamicForms.\n <P>\n The following pattern is supported without need for further modification:<br>\n A complex Advanced criteria object may have nested sub criteria using the <code>\"and\"</code>\n or <code>\"or\"</code> operators. For example:\n <pre>\n { _constructor:\"AdvancedCriteria\",\n   operator:\"and\",\n   criteria:[\n      {fieldName:\"field1\", value:\"value1\", operator:\"iContains\"},\n      {operator:\"or\", criteria:[\n          {fieldName:\"innerField1\", value:\"value1\", operator:\"equals\"},\n          {fieldName:\"innerField2\", value:\"value2\", operator:\"iContains\"}\n       ]\n      }\n   ]\n }\n </pre>\n To create a form capable of editing the above criteria without providing custom overrides\n to ${isc.DocUtils.linkForRef('method:FormItem.getCriterion')} et al, you would create a form with 2 items.\n The 'field1' criterion could be edited by a simple form item such as a TextItem.\n The nested criteria ('innerField1' and 'innerField2') could be edited by a canvasItem\n whose canvas property was set to a DynamicForm showing items capable of editing the 2\n inner criteria, and whose operator was specified as \"or\".<br>\n For example:\n <pre>\n  isc.DynamicForm.create({\n      items:[\n          {name:\"field1\", type:\"TextItem\"},\n          {name:\"nestedItem\", shouldSaveValue:true, type:\"CanvasItem\",\n              canvas:isc.DynamicForm.create({\n                  operator:\"or\",\n                  items:[\n                      {name:\"innerField1\", type:\"TextItem\", operator:\"equals\"},\n                      {name:\"innerField2\", type:\"TextItem\"}\n                  ]\n              })\n          }\n      ]\n  });\n  </pre>\n This form would be able to edit the above advanced criteria object via\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValuesAsCriteria')}. Edited values would be retrieved via\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}.\n <P>\n Note that the canvas item has <code>shouldSaveValue</code> set to true - this is required\n to ensure the nested form is actually passed the values to edit. \n <P>\n The default implementation of this method checks for this.canvas being specified as a\n dynamicForm, and in that case simply returns the result of \n ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsAdvancedCriteria')} on the inner form.\n <P>\n Note that this functionality may be entirely bypassed by\n setting ${isc.DocUtils.linkForRef('attr:CanvasItem.editCriteriaInInnerForm')} to false. This flag is useful when defining a\n dynamicForm based canvasItem which is not intended for editing nested data -- for example\n if a standard atomic field value is being displayed in some custom way using a\n DynamicForm embedded in the item.\n \n",
        name:"getCriterion",
        seeAlso:[
        ],
        returns:{
            description:"criterion to merge with advanced criteria returned by   ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
            type:"Criterion"
        },
        type:"method",
        definingClass:"class:CanvasItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:Tree.getParent":{
        ref:"method:Tree.getParent",
        flags:"",
        description:"\n Returns the parent of this node.\n\n",
        name:"getParent",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"parent of this node",
            type:"node"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:StatefulCanvas.setAutoFit":{
        ref:"method:StatefulCanvas.setAutoFit",
        flags:"",
        description:" Setter method for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.autoFit')} property. Pass in true or false to turn\n autoFit on or off. When autoFit is set to <code>false</code>, canvas will be resized to\n it's previously specified size.\n",
        name:"setAutoFit",
        seeAlso:[
        ],
        params:[
            {
                description:"New autoFit setting.",
                optional:false,
                name:"autoFit",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas"
    },
    "type:DrawShapeCommandType":{
        ref:"type:DrawShapeCommandType",
        values:[
            {
                description:"Draws a straight line from the current point to the last \"moveto\" point. There are no arguments.",
                value:"\"close\""
            },
            {
                description:"Start a new sub-path at a given (x,y) coordinate. The args array for this command type is a two-element array of the X and Y coordinates.",
                value:"\"moveto\""
            },
            {
                description:"Draw a line from the current point to the given (x,y) coordinate which becomes the new current point. Multiple (x,y) coordinates may be specified to draw a path, in which\n case the last point becomes the new current point. The args array for this command type is\n an array of one or more Points (two-element arrays of the X and Y coordinates).",
                value:"\"lineto\""
            },
            {
                description:"Draw a segment of a specified circle. A straight line (the \"initial line segment\") is drawn from the current point to the start of the circular arc. The args array\n for this command type contains 4 values:\n <ol start=\"0\">\n <li>The center (cx,cy) Point (two-element array) of the circle.</li>\n <li>radius</li>\n <li>startAngle - Start angle in degrees</li>\n <li>endAngle - End angle in degrees</li>\n </ol>\n Note that the ${isc.DocUtils.linkForExampleId('circletoCommand', '\"circleto\" Command example')} can be very helpful\n when learning how to write \"circleto\" commands.",
                value:"\"circleto\""
            }
        ],
        description:null,
        name:"DrawShapeCommandType",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Selection.deselectAll":{
        ref:"method:Selection.deselectAll",
        flags:"",
        description:"\t\t\tDeselect ALL records of the list\n",
        name:"deselectAll",
        seeAlso:[
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:ListGrid.ungroupText":{
        ref:"attr:ListGrid.ungroupText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid, and\n ${isc.DocUtils.linkForRef('attr:ListGrid.isGrouped','this.isGrouped')} is true, this\n attribute will be shown as the title for the menu item to ungroup the grid.",
        name:"ungroupText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Ungroup\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "group:shadow":{
        ref:"group:shadow",
        refs:[
            "method:Canvas.setShowShadow",
            "attr:Canvas.showShadow",
            "attr:Canvas.shadowDepth",
            "attr:Canvas.shadowOffset",
            "attr:Canvas.shadowSoftness",
            "attr:Canvas.shadowImage"
        ],
        name:"shadow",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DynamicForm.suppressValidationErrorCallback":{
        ref:"attr:DynamicForm.suppressValidationErrorCallback",
        flags:"IRWA",
        description:"When calling ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} on a form or valuesManager, by default if the server\n returns an error code, any callback passed into saveData() will not be fired.\n If the error code returned by the server indicates a validation error, it will be\n displayed to the user by updating the form items to show the error messages, and firing\n any specified hiddenValidationErrors handler, otherwise the standard RPCManager\n error handling logic would be invoked.\n <P>\n Developers who want to handle errors themselves can override this default by specifying\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError','dsRequest.willHandleError')} on the DSRequest. In this case the callback passed in \n will be fired even if the server returns an error status code.\n <P>\n If <code>suppressValidationErrorCallback</code> is set to true, if a save attempt returns\n a <i>validation</i> error code, the user-specified callback will not be fired\n <i>even if <code>willHandleError:true</code> was specified on the dsRequest</i> \n - though for other error codes, the callback would be fired if willHandleError is \n specified on the request.\n Note that this is the historical behavior for\n <smartclient>SmartClient builds 8.0 and earlier</smartclient>\n <smartgwt>SmartGWT builds 4.0 and earlier</smartgwt>",
        name:"suppressValidationErrorCallback",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "classMethod:Log.logWarn":{
        ref:"classMethod:Log.logWarn",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.logWarn')} is to call the method directly on\n the Log class.\n",
        name:"logWarn",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "method:FormItem.valueHover":{
        ref:"method:FormItem.valueHover",
        flags:"A",
        description:" Optional stringMethod to fire when the user hovers over this item's value.\n Return false to suppress default behavior of showing a hover canvas containing the\n HTML returned by ${isc.DocUtils.linkForRef('method:FormItem.valueHoverHTML')} / ${isc.DocUtils.linkForRef('method:DynamicForm.valueHoverHTML')}.\n\n",
        name:"valueHover",
        seeAlso:[
            {
                ref:"method:FormItem.itemHover",
                description:null
            }
        ],
        params:[
            {
                description:"Pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"This items form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "method:DrawPane.createSimpleGradient":{
        ref:"method:DrawPane.createSimpleGradient",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('method:DrawPane.addGradient')}",
        flags:"",
        description:" Creates a simple linear gradient which can be used by any DrawItem of this DrawPane.\n Any DrawItem's ${isc.DocUtils.linkForRef('attr:DrawItem.fillGradient','fillGradient')} can reference the gradient by the\n given ID.\n\n",
        name:"createSimpleGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"the ID of the simple linear gradient",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"identifier"
            },
            {
                description:"the simple linear gradient",
                optional:false,
                name:"simple",
                defaultValue:null,
                type:"SimpleGradient"
            }
        ],
        returns:{
            description:"id",
            type:"identifier"
        },
        type:"method",
        definingClass:"class:DrawPane"
    },
    "type:PromptStyle":{
        ref:"type:PromptStyle",
        values:[
            {
                description:"Displays a centered modal prompt with text specified by                 ${isc.DocUtils.linkForRef('attr:RPCRequest.prompt')}",
                value:"\"dialog\""
            },
            {
                description:"Changes the current cursor to the style specified by                 ${isc.DocUtils.linkForRef('attr:RPCRequest.promptCursor')}",
                value:"\"cursor\""
            }
        ],
        description:null,
        name:"PromptStyle",
        seeAlso:[
        ],
        type:"type"
    },
    "class:XJSONDataSource":{
        methods:[
        ],
        ref:"class:XJSONDataSource",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
        ],
        description:"A DataSource preconfigured to use the ${isc.DocUtils.linkForRef('type:RPCTransport','\"scriptInclude\"')} transport\n (sometimes called \"JSONP\") for cross-domain calls to JSON services.\n <P>\n To use this DataSource, provide the URL of the service as ${isc.DocUtils.linkForRef('attr:DataSource.dataURL')}, and\n provide ${isc.DocUtils.linkForRef('attr:DataSource.fields','fields')} that describe the structure of the data you want to\n extract from the service's response.\n <P>\n ${isc.DocUtils.linkForRef('attr:DataSource.recordXPath')} and ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath')} can be used to extract\n data from the JSON structure returned by the service.  See\n ${isc.DocUtils.linkForRef('group:clientDataIntegration','Client-Side Data Integration')} for an overview of how to\n control what parts of the JSON structure are included in the ${isc.DocUtils.linkForRef('class:DSResponse')} object, and\n hence provided to ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s that are bound to this DataSource.\n <P>\n This XJSONDataSource is really a subclass of DataSource with just a few property settings:\n <pre>\n    dataFormat : \"json\",\n    dataTransport : \"scriptInclude\"\n    callbackParam : \"callback\"\n </pre>\n <P>\n If you are also writing the server side code to respond to requests from this DataSource,\n see the \n <a href='http://developer.yahoo.net/common/json.html#callbackparam' target='_blank'>tutorial provided by Yahoo!</a> \n for a good overview of how this transport mechanism works.  Note, as indicated in the\n tutorial above, the server is responsible for writing out not just the data, but also a\n JavaScript function call that tells the client that the response has arrived.  The client\n passes the name of the function to call as the \"callback\" URL parameter.\n <P>\n NOTE: if you use this DataSource to contact Yahoo web services, remember to include\n output=json in the dataURL, as well as a\n <a href='http://developer.yahoo.net/' target='_blank'>Yahoo developer ID</a>.",
        name:"XJSONDataSource",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('jsonYahooWebServices')}"
        ]
    },
    "method:DataSource.getTypeOperators":{
        ref:"method:DataSource.getTypeOperators",
        flags:"",
        description:" Get the list of ${isc.DocUtils.linkForRef('type:OperatorId')}s available on this DataSource for the given ${isc.DocUtils.linkForRef('type:FieldType')}.\n <P>\n If ${isc.DocUtils.linkForRef('method:DataSource.setTypeOperators')} has been called for this DataSource and FieldType, returns that\n list, otherwise, returns the set of valid operators for the ${isc.DocUtils.linkForRef('type:FieldType')} as specified by \n ${isc.DocUtils.linkForRef('attr:SimpleType.validOperators')}, otherwise, the system-wide set of valid operators for the\n type as registered via ${isc.DocUtils.linkForRef('classMethod:DataSource.addSearchOperator')}.\n \n",
        name:"getTypeOperators",
        seeAlso:[
        ],
        params:[
            {
                description:"Defaults to \"text\" if not passed.",
                optional:true,
                name:"typeName",
                defaultValue:null,
                type:"FieldType | String"
            }
        ],
        returns:{
            description:"available Operators",
            type:"Array of OperatorId"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "classMethod:AutoTest.getLocator":{
        ref:"classMethod:AutoTest.getLocator",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('type:AutoTestLocator')} associated with some DOM element in a SmartClient\n application page.  If coords, representing the page position, is passed in, the locator\n may be generated with a specific trailing \"target area\" identifer that will map back to\n the appropriate, potentially different, physical coordinates, even if the widget is\n moved.  The coords argument will only have an effect in cases where the mouse position\n over the target could potentially change behavior.\n",
        name:"getLocator",
        seeAlso:[
        ],
        params:[
            {
                description:"DOM element within in the page. If null the locator for  the last mouse event target will be generated",
                optional:false,
                name:"DOMElement",
                defaultValue:null,
                type:"DOMElement"
            },
            {
                description:"If this parameter is passed in, check whether  the target element responds to native browser events directly rather than going through\n  the SmartClient widget/event handling model. If we detect this case, return null rather\n  than a live locator.  This allows us to differentiate between (for example) an event on\n  a Canvas handle, and an event occurring directly on a simple \n  <code>&lt;a href=...&gt;</code> tag written inside a Canvas handle.",
                optional:true,
                name:"checkForNativeHandling",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"X, Y page position",
                optional:true,
                name:"coords",
                defaultValue:null,
                type:"array"
            }
        ],
        returns:{
            description:"Locator string allowing the AutoTest subsystem to find   an equivalent DOM element on subsequent page loads.",
            type:"AutoTestLocator"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "attr:TabSet.showPaneContainerEdges":{
        ref:"attr:TabSet.showPaneContainerEdges",
        flags:"IRWA",
        description:"Should the paneContainer for this tabset show ${isc.DocUtils.linkForRef('attr:Canvas.showEdges','edges')}.",
        name:"showPaneContainerEdges",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:List.first":{
        ref:"method:List.first",
        flags:"",
        description:" Return the first item in this list\n\n",
        name:"first",
        seeAlso:[
        ],
        returns:{
            description:"first item in the list",
            type:"any"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "method:ListGrid.shouldIncludeHiliteInSummaryField":{
        ref:"method:ListGrid.shouldIncludeHiliteInSummaryField",
        flags:"",
        description:" When assembling a value for a ${isc.DocUtils.linkForRef('attr:ListGrid.canAddSummaryFields','summary field')}, if a referenced\n field is hilited, should the hilite HTML be included in the summary field value?\n <P>\n Example use case: Consider a grid containing a numeric field, and a summary field\n which contains some string value, plus the contents of the numeric field.\n If a hilite is defined for the grid which turns the numeric field text red when\n the value is negative, this property will govern whether the number will also be\n rendered in red within the summary field cells. Any other text in the summary field\n cells would not be effected by this hilite.\n <P>\n Default implementation returns ${isc.DocUtils.linkForRef('attr:DataBoundComponent.includeHilitesInSummaryFields','includeHilitesInSummaryFields')}.\n <P>\n To control hilites showing in group summaries, see ${isc.DocUtils.linkForRef('attr:ListGrid.showHilitesInGroupSummary','showHilitesInGroupSummary')}.\n\n",
        name:"shouldIncludeHiliteInSummaryField",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the summary field",
                optional:false,
                name:"summaryFieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"name of the field referenced by this summary",
                optional:false,
                name:"usedFieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"Return true to include hilites from the used field in the generated   summary field value.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.focusInFilterEditor":{
        ref:"method:ListGrid.focusInFilterEditor",
        flags:"",
        description:" If the filter editor (${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')}) is visible for this grid,\n this method will explicitly put focus into the specified field in the filter editor.\n",
        name:"focusInFilterEditor",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the field to put focus into. If unspecified focus will go                             to the first field in the editor",
                optional:true,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:DynamicForm.wrapItemTitles":{
        ref:"attr:DynamicForm.wrapItemTitles",
        flags:"IRW",
        description:"Whether titles for form items should wrap.  If not specified, titles will wrap by\n default.  Can be overridden for individual items via ${isc.DocUtils.linkForRef('attr:FormItem.wrapTitle')}",
        name:"wrapItemTitles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "group:allowedOperations":{
        ref:"group:allowedOperations",
        title:"Allowed Operations",
        refs:[
            "attr:Calendar.canCreateEvents",
            "attr:Calendar.canEditEvents",
            "attr:Calendar.canDeleteEvents",
            "attr:Calendar.canRemoveEvents",
            "attr:Calendar.canDragEvents"
        ],
        description:null,
        name:"allowedOperations",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Window.printBodyStyle":{
        ref:"attr:Window.printBodyStyle",
        flags:"IR",
        description:"Style for the Window body in printed output.",
        name:"printBodyStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"printHeader\"",
        type:"attr",
        definingClass:"class:Window"
    },
    "classMethod:Class.logFatal":{
        ref:"classMethod:Class.logFatal",
        flags:"",
        description:" Log a message at \"fatal\" priority\n \n",
        name:"logFatal",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:TileGrid.setFieldState":{
        ref:"method:TileGrid.setFieldState",
        flags:"",
        description:" Sets some presentation properties (visibility, width, userFormula and userSummary) of the \n grid fields based on the ${isc.DocUtils.linkForRef('type:ListGridFieldState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to ${isc.DocUtils.linkForRef('method:TileGrid.getFieldState')}.\n\n",
        name:"setFieldState",
        seeAlso:[
            {
                ref:"method:TileGrid.getFieldState",
                description:null
            }
        ],
        params:[
            {
                description:"state to apply to the grid's fields.",
                optional:false,
                name:"fieldState",
                defaultValue:null,
                type:"ListGridFieldState"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "viewState"
        ]
    },
    "classMethod:Log.setPriority":{
        ref:"classMethod:Log.setPriority",
        flags:"",
        description:" Set the priority of messages that will be visible for this log category.\n <P>\n After calling setPriority, any messages logged to the given category whose priority is\n below the specified priority will not appear in the Log.\n\n",
        name:"setPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.isEnabledFor",
                description:"to check whether a category would allow a log at a given priority"
            }
        ],
        params:[
            {
                description:"category name",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"String"
            },
            {
                description:"priority level to set",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            },
            {
                description:"Optional ISC class or instance - if passed the priority will be set for logging \n      occurring on the class or instance only.",
                optional:true,
                name:"object",
                defaultValue:null,
                type:"Class or Instance object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:DecisionGateway.criteriaMap":{
        ref:"attr:DecisionGateway.criteriaMap",
        flags:"IR",
        description:"A Map from ${isc.DocUtils.linkForRef('attr:ProcessElement.ID')} to Criteria that will cause this ProcessElement to\n be chosen as the next element if the criteria matches.",
        name:"criteriaMap",
        seeAlso:[
        ],
        valueType:"Object<String,Criteria>",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DecisionGateway"
    },
    "attr:Menu.submenuImage":{
        ref:"attr:Menu.submenuImage",
        flags:"IR",
        description:"Default image to use for the submenu indicator. Valid src, width and height must be\n specified. See ${isc.DocUtils.linkForRef('object:ImgProperties')} for format.<br>\n If ${isc.DocUtils.linkForRef('attr:Menu.submenuDirection')} is set to <code>\"left\"</code>, the image src will have\n the suffix <code>\"_left\"</code> appended to it.",
        name:"submenuImage",
        seeAlso:[
        ],
        valueType:"Img Properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:SimpleType.updateAtomicValue":{
        ref:"method:SimpleType.updateAtomicValue",
        flags:"",
        description:" Optional method to update a live data value with an edited atomic value\n (such as a string or number). If defined this method will be called\n when the user edits data in a field of this type, allowing the developer\n to convert from the atomic type to a raw data value for storage.\n <P>\n Note that if the user is editing a field which did not previously have a value, the\n 'currentValue' will be null. This method should handle this (creating a new data value).\n\n",
        name:"updateAtomicValue",
        seeAlso:[
        ],
        params:[
            {
                description:"New atomic value. This should match the underlying  atomic type specified by the ${isc.DocUtils.linkForRef('attr:SimpleType.inheritsFrom')} attribute.",
                optional:false,
                name:"atomicValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Existing data value to be updated.",
                optional:false,
                name:"currentValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"Updated data value.",
            type:"any"
        },
        type:"method",
        definingClass:"class:SimpleType"
    },
    "method:Canvas.resizeBy":{
        ref:"method:Canvas.resizeBy",
        flags:"",
        description:"\t\t\tResizes the widget, adding deltaX to its width and deltaY to its height (moves the right\n          and/or bottom sides of the widget).\n",
        name:"resizeBy",
        seeAlso:[
        ],
        params:[
            {
                description:"amount to resize horizontally (may be negative)",
                optional:true,
                name:"deltaX",
                defaultValue:null,
                type:"number"
            },
            {
                description:"amount to resize vertically (may be negative)",
                optional:true,
                name:"deltaY",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether the component actually changed size",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('resize')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:Array.first":{
        ref:"method:Array.first",
        flags:"",
        description:" Return the first item in this list\n\n",
        name:"first",
        seeAlso:[
        ],
        returns:{
            description:"first item in the list",
            type:"any"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:RPCRequest.serverOutputAsString":{
        ref:"attr:RPCRequest.serverOutputAsString",
        flags:"IRWA",
        description:"Setting this flag makes the body of the HTTP response available as a String in the\n ${isc.DocUtils.linkForRef('attr:RPCRequest.callback')} as ${isc.DocUtils.linkForRef('attr:RPCResponse.data')}.  This is typically only useful if you\n are sending a request that will <b>not</b> be received by the SmartClient Java Server,\n however in that case, set ${isc.DocUtils.linkForRef('attr:RPCRequest.useSimpleHttp')}:true instead, which implies\n <code>serverOutputAsString:true</code>.\n <P>\n <code>serverOutputAsString:true</code> allows you to, for example, load the contents of\n static files off your webserver into a string for processing on the client with no server\n support.  The ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL')} must be in the same domain as the current page for\n this to work.\n <p>\n This feature relies on the XMLHttpRequest object which can be disabled by end-users in some\n supported browsers.  See ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information.\n <p>\n Generally this API is used for either ${isc.DocUtils.linkForRef('group:nonJavaBackend','non-Java backends')} \n or for advanced usage such as content that requires processing before it can be used in\n SmartClient components (such as client-side web scraping).  Note that SmartClient provides\n higher-level APIs for loading common types of data, see eg ${isc.DocUtils.linkForRef('class:HTMLFlow')} for HTML content,\n ${isc.DocUtils.linkForRef('class:ViewLoader')} for loading SmartClient components, ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXML')} for loading\n XML, ${isc.DocUtils.linkForRef('attr:RPCRequest.evalResult')} for loading <a href='http://www.json.org/' target='_blank'>JSON</a>, and\n ${isc.DocUtils.linkForRef('class:DataSource')} for loading structured data in various formats.",
        name:"serverOutputAsString",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:ComboBoxItem.filterWithValue":{
        ref:"attr:ComboBoxItem.filterWithValue",
        flags:"RA",
        description:"Read-only property set by the ComboBoxItem to indicate whether we should use the \n current typed-in value as part of the filter criteria returned by \n ${isc.DocUtils.linkForRef('method:ComboBoxItem.getPickListFilterCriteria')}.  You can check this flag in order to\n mimic the ComboBoxItem's default behavior if you provide a custom implementation of\n <code>getPickListFilterCriteria()</code>.",
        name:"filterWithValue",
        seeAlso:[
            {
                ref:"method:ComboBoxItem.getPickListFilterCriteria",
                description:null
            },
            {
                ref:"attr:ComboBoxItem.filterFields",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:FormulaBuilder.titleField":{
        ref:"attr:FormulaBuilder.titleField",
        flags:"IR",
        description:"TextItem that allows users to set the title for this field.",
        name:"titleField",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "classAttr:RPCManager.defaultPrompt":{
        ref:"classAttr:RPCManager.defaultPrompt",
        flags:"IRW",
        description:"If showPrompt is enabled for a given transaction, this is the defaultPrompt to be shown\n to the user in a modal dialog while the transaction occurs.\n May be overridden at the request level via ${isc.DocUtils.linkForRef('attr:RPCRequest.prompt')}.<br>\n More targetted default prompts are also supported for certain code-paths. See the following \n set of properties for details:<ul>\n <li>${isc.DocUtils.linkForRef('classAttr:RPCManager.removeDataPrompt')}</li>\n <li>${isc.DocUtils.linkForRef('classAttr:RPCManager.saveDataPrompt')}</li>\n <li>${isc.DocUtils.linkForRef('classAttr:RPCManager.fetchDataPrompt')}</li>\n </ul>",
        name:"defaultPrompt",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.showPrompt",
                description:null
            },
            {
                ref:"classAttr:RPCManager.promptStyle",
                description:null
            },
            {
                ref:"classAttr:RPCManager.promptCursor",
                description:null
            },
            {
                ref:"attr:RPCRequest.showPrompt",
                description:null
            },
            {
                ref:"attr:RPCRequest.prompt",
                description:null
            },
            {
                ref:"attr:RPCRequest.promptStyle",
                description:null
            },
            {
                ref:"attr:RPCRequest.promptCursor",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"Contacting Server...\"",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "rpcPrompt",
            "i18nMessages"
        ]
    },
    "group:mouseEvents":{
        ref:"group:mouseEvents",
        refs:[
            "classMethod:EventHandler.getTarget",
            "classMethod:EventHandler.getDragTarget",
            "classMethod:EventHandler.getX",
            "classMethod:EventHandler.getY",
            "classMethod:EventHandler.leftButtonDown",
            "classMethod:EventHandler.rightButtonDown",
            "classMethod:EventHandler.middleButtonDown"
        ],
        name:"mouseEvents",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormItem.iconHSpace":{
        ref:"attr:FormItem.iconHSpace",
        flags:"IR",
        description:"Horizontal space (in px) to leave between form item icons. The space\n appears to the left of each icon. May be overridden at the icon level via\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.hspace')}.",
        name:"iconHSpace",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"3",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:DrawItem.canHover":{
        ref:"attr:DrawItem.canHover",
        flags:"IRW",
        description:"Will this DrawItem fire hover events when the user hovers over it?",
        name:"canHover",
        seeAlso:[
            {
                ref:"attr:DrawItem.showHover",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "hovers"
        ]
    },
    "attr:ComboBoxItem.saveOnEnter":{
        ref:"attr:ComboBoxItem.saveOnEnter",
        flags:"IRW",
        description:"ComboBox items will submit their containing form on enter keypress \n if ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOnEnter','saveOnEnter')} is true. Setting this property to\n <code>false</code> will disable this behavior.\n <P>\n Note that if the drop down list of options (pickList) is visible an\n <code>Enter</code> keypress is used to select a value from the available set of\n options and will not automatically cause form submission.",
        name:"saveOnEnter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:ToolStripGroup.setControlColumn":{
        ref:"method:ToolStripGroup.setControlColumn",
        flags:"",
        description:" Return the column widget that contains the passed control.\n \n",
        name:"setControlColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"the control to find in this group",
                optional:false,
                name:"control",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "method:DynamicForm.itemChanged":{
        ref:"method:DynamicForm.itemChanged",
        flags:"",
        description:" Handler fired when there is a changed() event fired on a FormItem within this form.\n <P>\n Fires after the change() handler on the FormItem itself, and only if the item did not\n cancel the change event and chooses to allow it to propagate to the form as a whole. \n\n",
        name:"itemChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"the FormItem where the change event occurred",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"new value for the FormItem",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:ColorPicker.crosshairImageURL":{
        ref:"attr:ColorPicker.crosshairImageURL",
        flags:"IR",
        description:"The location of the crosshair image file",
        name:"crosshairImageURL",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"[SKIN]ColorPicker/crosshair.png\"",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:TextAreaItem.height":{
        ref:"attr:TextAreaItem.height",
        flags:"IRW",
        description:"default height of this item",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Gauge.drawnClockwise":{
        ref:"attr:Gauge.drawnClockwise",
        flags:"IRW",
        description:"Whether the sectors are drawn clockwise, and increasing the value causes the\n needle to move clockwise.",
        name:"drawnClockwise",
        setter:[
            "setDrawnClockwise"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:RichTextItem.startRow":{
        ref:"attr:RichTextItem.startRow",
        flags:"IRW",
        description:"By default RichTextItems take up an entire row",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RichTextItem"
    },
    "attr:DataSource.inheritsFrom":{
        ref:"attr:DataSource.inheritsFrom",
        flags:"IR",
        description:"ID of another DataSource this DataSource inherits its ${isc.DocUtils.linkForRef('attr:DataSource.fields')} from.\n <P>\n Local fields (fields defined in this DataSource) are added to inherited fields \n to form the full set of fields.  Fields with the same name are merged in the same way\n that ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields','databound component fields')} are merged with\n DataSource fields.\n <P>\n The default order of the combined fields is new local fields first (including any fields\n present in the parent DataSource which the local DataSource re-declares), then parent\n fields.  You can set ${isc.DocUtils.linkForRef('attr:DataSource.useParentFieldOrder')} to instead use the parent's field\n order, with new local fields appearing last.  You can set ${isc.DocUtils.linkForRef('attr:DataSource.showLocalFieldsOnly')} to\n have all non-local fields hidden.\n <P>\n Note that <b>only fields are inherited</b> - other properties such as dataURL and\n dataFormat are not.  You can use ordinary inheritance, that is, creating a subclass of\n DataSource, in order to share properties such as dataURL across a series of DataSources\n that also inherit fields from each other via <code>inheritsFrom</code>.\n <P>\n This feature can be used for:\n <ul>\n <li>creating a customized view (eg, only certain fields shown) which will be used by\n multiple ${isc.DocUtils.linkForRef('interface:DataBoundComponent','databound components')}.\n <li>adding presentation-specific attributes to metadata that has been automatically\n derived from ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema','XML Schema')} or other metadata formats\n <li>modeling object subclassing and extension in server-side code and storage systems\n <li>modeling relational database joins, and the equivalents in other systems\n <li>creating hooks for others to customize your application in a maintainable way.  For\n example, if you have a dataSource \"employee\", you can create a dataSource\n \"customizedEmployee\" which inherits from \"employee\" but does not initially define any\n fields, and bind all ${isc.DocUtils.linkForRef('interface:DataBoundComponent','databound components')} to\n \"customizedEmployee\".  Customizations of fields (including appearance changes, field\n order, new fields, hiding of fields, and custom validation rules) can be added to\n \"customizedEmployee\", so that they are kept separately from the original field data and\n have the best possible chance of working with future versions of the \"employee\"\n dataSource.\n </ul>",
        name:"inheritsFrom",
        seeAlso:[
        ],
        valueType:"DataSource ID",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('schemaChaining')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "attr:FacetValue.isMinimizeValue":{
        ref:"attr:FacetValue.isMinimizeValue",
        flags:"IR",
        description:"Used to determine which facetValue is to be shown when the facet is minimized.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.  See\n ${isc.DocUtils.linkForRef('attr:CubeGrid.canMinimizeFacets')}.",
        name:"isMinimizeValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "method:DataSource.performCustomOperation":{
        ref:"method:DataSource.performCustomOperation",
        flags:"",
        description:" Invoke an operation declared with ${isc.DocUtils.linkForRef('attr:OperationBinding.operationType')} \"custom\".\n <P>\n <b>This is a rarely used API.</b>  If the operation you are performing can be thought of\n as one of the standard \"CRUD\" ${isc.DocUtils.linkForRef('type:DSOperationType','operation types')}, declare it\n with a CRUD operationType.  For example, if your operation updates a record, declare it\n with operationType \"update\" and invoke it via ${isc.DocUtils.linkForRef('method:DataSource.updateData')} - this will cause\n ${isc.DocUtils.linkForRef('class:ResultSet','cache sync')} to work correctly.\n <P>\n In particular:\n <ul>\n <li> do not use this API just because you need to add additional server-side logic to a\n CRUD operation (${isc.DocUtils.linkForRef('class:DMI')} allows this)\n <li> do not use this API to implement variants of core CRUD operations\n (${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} is the correct way to do this)\n <li> do not use this API just because an operation affects more than one record.  Most\n kinds of multi-record operations should use ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queuing')}.  \n However, a custom operation <em>is</em> appropriate for genuine \"batch\" updates, as \n opposed to just a number of ordinary updates by primaryKey - see \n ${isc.DocUtils.linkForRef('attr:OperationBinding.allowMultiUpdate')}\n <li> do not use this API just because you are calling a stored procedure in SQL - if the\n stored procedure performs some kind of CRUD operation on the records of this DataSource,\n use a standard CRUD operationType\n </ul>\n <P>\n Instead, the specific purpose of this API is to bypass all checks and side effects that\n normally occur for CRUD operations, for example, that a \"fetch\" requires valid Criteria\n or that an \"update\" or \"remove\" operation contains a valid primary key, or that an \"add\"\n operation returns the newly added record.  <code>performCustomOperation</code> allows\n you to pass an arbitrary Record to the server, act on it with custom code, and return\n arbitray results or even no results.\n <P>\n The \"data\" parameter becomes ${isc.DocUtils.linkForRef('attr:DSRequest.data','dsRequest.data')}.  With the SmartClient\n Server Framework, the data is accessible server-side via DSRequest.getValues() and in\n ${isc.DocUtils.linkForRef('group:velocitySupport','Velocity templates')} (such as &lt;customSQL&gt;) as $values.\n <P>\n Note that with SQLDataSource, <code>performCustomOperation</code> must be used if you\n plan to have a &lt;customSQL&gt; tag in your operationBinding that will execute SQL\n operations other than SELECT, UPDATE, INSERT, DELETE (such as creating a new table).\n By declaring ${isc.DocUtils.linkForRef('attr:OperationBinding.operationType')} \"custom\" in your .ds.xml file, all\n checks related to normal CRUD operations will be skipped and your &lt;customSQL&gt;\n can do arbitrary things.\n\n",
        name:"performCustomOperation",
        seeAlso:[
        ],
        params:[
            {
                description:"the operation ID",
                optional:false,
                name:"operationId",
                defaultValue:null,
                type:"String"
            },
            {
                description:"data to pass to the server.",
                optional:true,
                name:"data",
                defaultValue:null,
                type:"Record Properties"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "attr:ListGridField.validators":{
        ref:"attr:ListGridField.validators",
        flags:"IRW",
        description:"Array of ${isc.DocUtils.linkForRef('class:Validator')} objects for this field.  When the user edits cells in\n this field, these validators will be applied to the edited value.<br>\n Note: for databound listGrids, this property may be specified on the\n ${isc.DocUtils.linkForRef('class:DataSourceField')}, enabling both client and server side validation.",
        name:"validators",
        seeAlso:[
            {
                ref:"class:Validator",
                description:null
            },
            {
                ref:"attr:ListGridField.required",
                description:null
            }
        ],
        valueType:"Array of Validator",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataValidation')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "gridValidation"
        ]
    },
    "attr:PortalPosition.rowNum":{
        ref:"attr:PortalPosition.rowNum",
        flags:"IR",
        description:"The row number occupied by a ${isc.DocUtils.linkForRef('class:Portlet')} within a ${isc.DocUtils.linkForRef('class:PortalLayout')} column.",
        name:"rowNum",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:PortalPosition"
    },
    "attr:Calendar.headerLevels":{
        ref:"attr:Calendar.headerLevels",
        flags:"IRW",
        description:"Configures the levels of ${isc.DocUtils.linkForRef('object:HeaderLevel','headers')} shown above the event area, and \n their time units.\n <P>\n Header levels are provided from the top down, so the first header level should be the largest \n time unit and the last one the smallest.  The smallest is then used for the actual \n field-headers.",
        name:"headerLevels",
        setter:[
            "setHeaderLevels"
        ],
        seeAlso:[
        ],
        valueType:"Array of HeaderLevel",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:FilterBuilder.showSelectionCheckbox":{
        ref:"attr:FilterBuilder.showSelectionCheckbox",
        flags:"IR",
        description:"If true, causes a CheckboxItem to appear to the left of each clause in \"inline\" \n ${isc.DocUtils.linkForRef('type:TopOperatorAppearance','appearance')}.  This checkbox allows the user to select \n individual clauses so that, for example, clauses can be removed from the filterBuilder \n by application code.  This property is ignored for appearances other than \"inline\".",
        name:"showSelectionCheckbox",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:HeaderSpan.valign":{
        ref:"attr:HeaderSpan.valign",
        flags:"IR",
        description:"Vertical alignment of the title of this headerSpan.\n <P>\n Defaults to listGrid.headerSpanVAlign if unset.",
        name:"valign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "attr:DynamicForm.saveOnEnter":{
        ref:"attr:DynamicForm.saveOnEnter",
        flags:"IRW",
        description:"If <code>true</code>, when the user hits the Enter key while focused in a text-item in\n this form, we automatically submit the form to the server using the \n ${isc.DocUtils.linkForRef('method:DynamicForm.submit')} method.",
        name:"saveOnEnter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "method:SectionItem.expandSection":{
        ref:"method:SectionItem.expandSection",
        flags:"",
        description:" Expands a section, showing all the items contained within the section.\n",
        name:"expandSection",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:SectionItem"
    },
    "method:ListGrid.setCriteria":{
        ref:"method:ListGrid.setCriteria",
        flags:"",
        description:" Sets this component's filter criteria.\n Default implementation calls this.data.setCriteria().\n <P>\n Note: if ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is true, the ${isc.DocUtils.linkForRef('method:ListGrid.setFilterEditorCriteria')}\n method may be used to update the values displayed in the filter editor without effecting the\n data object.\n",
        name:"setCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"new criteria to show",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Criteria or AdvancedCriteria"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:DataSourceField.rootValue":{
        ref:"attr:DataSourceField.rootValue",
        flags:"IR",
        description:"For a field that is a foreignKey establishing a tree relationship, what value indicates a\n root-level node.  Defaults to null.\n <P>\n Note that the rootValue may be overridden on a specific ResultTree instance by setting\n ${isc.DocUtils.linkForRef('attr:ResultTree.rootNode')}, or if the ResultTree is auto-generated by a ${isc.DocUtils.linkForRef('class:TreeGrid')},\n by setting ${isc.DocUtils.linkForRef('attr:TreeGrid.treeRootValue')}. This allows a component to navigate a subtree of\n the hierarchical data from this dataSource starting at a particular node.",
        name:"rootValue",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('treeLoadXML')}"
        ],
        definingClass:"class:DataSourceField",
        groups:[
            "dataSourceRelations"
        ]
    },
    "attr:FacetChart.canMoveAxes":{
        ref:"attr:FacetChart.canMoveAxes",
        flags:"IR",
        description:"Whether the positions of value axes can be changed.  The default is true\n for charts with three or more vertical, value axes.",
        name:"canMoveAxes",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:Page.goBack":{
        ref:"classMethod:Page.goBack",
        flags:"",
        description:" Go back in the browser's history.<br><br>\n\n If the history is empty and the window.opener is set, we assume we're a child window and just\n close the window.\n\n",
        name:"goBack",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:FacetChart.chartRectProperties":{
        ref:"attr:FacetChart.chartRectProperties",
        flags:"IRW",
        description:"Properties for chart rect",
        name:"chartRectProperties",
        seeAlso:[
        ],
        valueType:"DrawRect Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "class:FieldPickerField":{
        methods:[
        ],
        ref:"class:FieldPickerField",
        classAttrs:[
            "classAttr:FieldPickerField.frozenTitle",
            "classAttr:FieldPickerField.precisionTitle",
            "classAttr:FieldPickerField.decimalPrecisionTitle",
            "classAttr:FieldPickerField.decimalPadTitle",
            "classAttr:FieldPickerField.alignTitle",
            "classAttr:FieldPickerField.cellAlignTitle"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/FieldPicker"
        ],
        attrs:[
        ],
        description:"Class containing properties that configure the display of\n and interaction with the fields showing in a ${isc.DocUtils.linkForRef('class:FieldPicker')}.",
        name:"FieldPickerField",
        seeAlso:[
        ],
        type:"class"
    },
    "group:dataType":{
        ref:"group:dataType",
        refs:[
            "attr:DataSourceField.required",
            "attr:DataSourceField.autoGenerated",
            "attr:DataSourceField.nillable",
            "attr:DataSourceField.valueMap",
            "attr:DataSourceField.validators",
            "attr:DataSourceField.length",
            "attr:SimpleType.valueMap"
        ],
        name:"dataType",
        seeAlso:[
        ],
        type:"group"
    },
    "type:LabelCollapseMode":{
        ref:"type:LabelCollapseMode",
        values:[
            {
                description:"Show all labels regardless, even though they will overlap",
                value:"\"none\""
            },
            {
                description:"Show significant time values such as the first day of the month or week.  Data values in Records must be true Date objects, not Strings.",
                value:"\"time\""
            },
            {
                description:"Pick round numbers in the range and show labels for just those numbers.  Best for continuous datasets that are not time-based",
                value:"\"numeric\""
            },
            {
                description:"Pick periodic values from the dataset and show labels for those.  Best when the there are no particular points that would clearly be the best to label",
                value:"\"sample\""
            }
        ],
        description:"Strategy to apply when there is too little room for labels to be shown for all data points with\n comfortable padding (${isc.DocUtils.linkForRef('attr:FacetChart.minLabelGap')}).",
        name:"LabelCollapseMode",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:MenuButton.title":{
        ref:"attr:MenuButton.title",
        flags:"IRW",
        description:"Default title for the button.",
        name:"title",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Show Menu\"",
        type:"attr",
        definingClass:"class:MenuButton",
        groups:[
            "i18nMessages"
        ]
    },
    "group:defaults":{
        ref:"group:defaults",
        refs:[
        ],
        name:"defaults",
        seeAlso:[
        ],
        type:"group"
    },
    "object:LinearGradient":{
        methods:[
        ],
        ref:"object:LinearGradient",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/Gradients"
        ],
        attrs:[
            "attr:LinearGradient.x1",
            "attr:LinearGradient.y1",
            "attr:LinearGradient.x2",
            "attr:LinearGradient.y2"
        ],
        description:"Definition of a linear gradient between two points, (${isc.DocUtils.linkForRef('attr:LinearGradient.x1','x1')}, ${isc.DocUtils.linkForRef('attr:LinearGradient.y1','y1')})\n and (${isc.DocUtils.linkForRef('attr:LinearGradient.x2','x2')}, ${isc.DocUtils.linkForRef('attr:LinearGradient.y2','y2')}).",
        name:"LinearGradient",
        seeAlso:[
        ],
        type:"object",
        inheritsFrom:"Gradient"
    },
    "method:ActiveXControl.getPluginHandle":{
        ref:"method:ActiveXControl.getPluginHandle",
        flags:"",
        description:"  Returns a handle to the element for this ISC ActiveX control object.\n",
        name:"getPluginHandle",
        seeAlso:[
        ],
        returns:{
            description:"pointer to the plugin element in the DOM",
            type:"HTML Element"
        },
        type:"method",
        definingClass:"class:ActiveXControl"
    },
    "classMethod:Class.echoLeaf":{
        ref:"classMethod:Class.echoLeaf",
        flags:"",
        description:" Return a very short (generally less than 40 characters) string representation of any object,\n suitable for viewing by a developer for debugging purposes.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echoLeaf\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"echoLeaf",
        seeAlso:[
            {
                ref:"method:Class.echo",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "classMethod:Page.getAppDir":{
        ref:"classMethod:Page.getAppDir",
        flags:"",
        description:" Returns the base URL of the application, which is the page URL minus the last non-directory \n path component.  For example, if the page is loaded from\n <code>http://foo.com/bar/zoo.jsp</code>, appDir will be <code>http://foo.com/bar/</code>.\n <P>\n If other page-wide URLs such as ${isc.DocUtils.linkForRef('classMethod:Page.setIsomorphicDir')} are specified as\n relative paths, they are considered relative to this URL.\n\n",
        name:"getAppDir",
        seeAlso:[
        ],
        returns:{
            description:"URL for page-specific files.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files"
        ]
    },
    "attr:ListGridRecord.canAcceptDrop":{
        ref:"attr:ListGridRecord.canAcceptDrop",
        flags:"IR",
        description:"When set to <code>false</code>, other records cannot be dropped on (i.e., inserted\n via drag and drop) immediately before this record.",
        name:"canAcceptDrop",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "classMethod:Messaging.getSubscribedChannels":{
        ref:"classMethod:Messaging.getSubscribedChannels",
        flags:"",
        description:" Returns an array of identifiers for all currently subscribed channels on this client\n\n",
        name:"getSubscribedChannels",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array of String"
        },
        type:"classMethod",
        definingClass:"class:Messaging",
        groups:[
            "messaging"
        ]
    },
    "attr:TreeGrid.animateFolderSpeed":{
        ref:"attr:TreeGrid.animateFolderSpeed",
        flags:"IRW",
        description:"When animating folder opening / closing, this property designates the speed of the\n animation in pixels shown (or hidden) per second. Takes precedence over the \n ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolderTime')} property, which allows the developer to specify a\n duration for the animation rather than a speed.",
        name:"animateFolderSpeed",
        seeAlso:[
            {
                ref:"attr:TreeGrid.animateFolderTime",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"3000",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateTree')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "animation"
        ]
    },
    "method:LoginDialog.register":{
        ref:"method:LoginDialog.register",
        flags:"",
        description:" Called if the user clicks on the ${isc.DocUtils.linkForRef('attr:LoginDialog.registrationItem','registration link')}\n on the login form. Implement this method to allow the user to register for a\n new account.\n",
        name:"register",
        seeAlso:[
        ],
        params:[
            {
                description:"Current values of form fields",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"Form on which the link was clicked",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:LoginDialog"
    },
    "attr:Flashlet.classID":{
        ref:"attr:Flashlet.classID",
        flags:"IR",
        description:"This attribute specifies the clsid of the outer &lt;object&gt; tag.\n  <p>\n  The default classID is: \"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"\n  <p>",
        name:"classID",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Flashlet"
    },
    "method:FacetChart.dataLabelClick":{
        ref:"method:FacetChart.dataLabelClick",
        flags:"",
        description:" Fires when the user clicks on a data label, that is, a text label showing values from\n the first facet.  For example, the labels underneath the X-axis of a column chart,\n labelling each column.\n\n",
        name:"dataLabelClick",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValue that was clicked, or null if click was in        empty space",
                optional:false,
                name:"facetValue",
                defaultValue:null,
                type:"FacetValue"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drillCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.resizeField":{
        ref:"method:ListGrid.resizeField",
        flags:"A",
        description:" Resize a particular field to a new width. Note that this method\n will also set ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')} to false if it was previously true.\n\n",
        name:"resizeField",
        seeAlso:[
        ],
        params:[
            {
                description:"Number of the field to resize",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"New width of the field",
                optional:false,
                name:"newWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.expansionMode":{
        ref:"attr:ListGrid.expansionMode",
        flags:"IRWA",
        description:"The ${isc.DocUtils.linkForRef('type:ExpansionMode')} for records in this grid.\n Default <code>null</code> value means no expansion.",
        name:"expansionMode",
        seeAlso:[
        ],
        valueType:"ExpansionMode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:RPCRequest.suppressAutoDraw":{
        ref:"attr:RPCRequest.suppressAutoDraw",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:RPCRequest.evalResult')} is set, setting this property to true causes\n ${isc.DocUtils.linkForRef('attr:Canvas.autoDraw')} to be set to false for the duration of the result evaluation -\n which is generally what you want if you're returning new components from the server.\n <P>\n This also effects components loaded via the ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} API.",
        name:"suppressAutoDraw",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:FacetChart.dataLineType":{
        ref:"attr:FacetChart.dataLineType",
        flags:"IRW",
        description:"How to draw lines between adjacent data points in Line and Scatter charts.\n See ${isc.DocUtils.linkForRef('type:DataLineType')}.\n <p>\n Does not apply to boundary lines for shapes in Area or Radar plots.",
        name:"dataLineType",
        setter:[
            "setDataLineType"
        ],
        seeAlso:[
        ],
        valueType:"DataLineType",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ListGrid.autoFitFieldText":{
        ref:"attr:ListGrid.autoFitFieldText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid,\n and ${isc.DocUtils.linkForRef('attr:ListGrid.canAutoFitFields')} is true, this attribute will be shown as the menu\n item title for an item to perform a one-time autoFit of the field to its title or content\n via a call to ${isc.DocUtils.linkForRef('method:ListGrid.autoFitField')}.",
        name:"autoFitFieldText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Auto Fit\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages",
            "autoFitFields"
        ]
    },
    "attr:ColorItem.pickerIconSrc":{
        ref:"attr:ColorItem.pickerIconSrc",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ColorItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.src','src')} of the picker icon image to be displayed.",
        name:"pickerIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/ColorPicker_icon.png\"",
        type:"attr",
        definingClass:"class:ColorItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:DataSourceField.inapplicable":{
        ref:"attr:DataSourceField.inapplicable",
        flags:"IR",
        description:"For use in ${isc.DocUtils.linkForRef('group:componentSchema')}, a field ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom','inherited')} from\n another schema can be redeclared with this property set in order to indicate that the\n property should not be used.\n <P>\n This is primarily used to influence ${isc.DocUtils.linkForRef('group:visualBuilder')}.  For simple type properties,\n this avoids the property appearing in the Component Editor.  \n <P>\n For fields that hold subcomponents, this prevents inappropriate drag and drop.  For example,\n a custom class called <code>MyDialog</code> may automatically create a series of children,\n and not allow arbitrary other children to be added.  In this case, the inherited property\n ${isc.DocUtils.linkForRef('attr:Canvas.children')} should be marked inapplicable in order to prevent arbitrary\n components being dropped onto a <code>MyDialog</code> instance.",
        name:"inapplicable",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentSchema"
        ]
    },
    "attr:SplitPane.addHistoryEntries":{
        ref:"attr:SplitPane.addHistoryEntries",
        flags:"IRW",
        description:"Should default history-tracking support be enabled? If <code>true</code>, then a history\n management scheme utilizing ${isc.DocUtils.linkForRef('classMethod:History.addHistoryEntry')} and ${isc.DocUtils.linkForRef('classMethod:History.registerCallback')}\n is enabled. The history callback is registered as an additive callback, allowing other\n history callbacks including the primary callback to be registered.\n <p>\n The default history management scheme is as follows:\n <ul>\n <li>History entries are only added after ${isc.DocUtils.linkForRef('classMethod:Page.isLoaded','page load')} and when the\n <code>SplitPane</code> is drawn.</li>\n <li>A history entry is added for a pane that is hidden by ${isc.DocUtils.linkForRef('method:SplitPane.showNavigationPane')},\n ${isc.DocUtils.linkForRef('method:SplitPane.showListPane')}, or ${isc.DocUtils.linkForRef('method:SplitPane.showDetailPane')} for the current ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode')}\n and ${isc.DocUtils.linkForRef('attr:SplitPane.pageOrientation','pageOrientation')} settings.\n <p>\n Example 1: When <code>deviceMode</code> is \"desktop\", all 3 panes are shown simultaneously,\n so no history entries are added.\n <p>\n Example 2: When <code>deviceMode</code> is \"handset\", calling ${isc.DocUtils.linkForRef('method:SplitPane.showDetailPane')}\n will hide the current pane (the ${isc.DocUtils.linkForRef('attr:SplitPane.listPane')} if present, otherwise the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane')}).\n A history entry is added for the pane that was hidden</li>\n </ul>\n <p>\n The default history management scheme can be supplemented with application-specific\n history management. For example, when <code>deviceMode</code> is \"tablet\", the ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane')}\n is always visible, but changes to the content of the <code>detailPane</code> are transparent\n to the <code>SplitPane</code>. The application can add history entries of its own when\n the user causes new information to be displayed in the <code>detailPane</code>.",
        name:"addHistoryEntries",
        setter:[
            "setAddHistoryEntries"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SplitPane",
        requiresModules:[
            "History"
        ]
    },
    "group:title":{
        ref:"group:title",
        refs:[
            "method:DataSource.getAutoTitle",
            "classMethod:DataSource.getAutoTitle",
            "attr:FormItem.showTitle",
            "attr:FormItem.titleOrientation",
            "attr:FormItem.titleAlign",
            "attr:FormItem.titleVAlign",
            "attr:FormItem.clipTitle",
            "attr:FormItem.wrapTitle",
            "attr:FormItem.vAlign",
            "attr:FormItem.titleClassName",
            "attr:FormItem.titleErrorClassName"
        ],
        name:"title",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:RPCManager.xmlHttpRequestAvailable":{
        ref:"classMethod:RPCManager.xmlHttpRequestAvailable",
        flags:"",
        description:"\n Returns true if the XMLHttpRequest object is available, false otherwise.  See\n ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information on when XMLHttpRequest parser may\n not available and what features are\n impacted as a result.\n\n",
        name:"xmlHttpRequestAvailable",
        seeAlso:[
        ],
        returns:{
            description:"true if XMLHttpRequest is available, false otherwise.",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:ListGridField.shouldPrint":{
        ref:"attr:ListGridField.shouldPrint",
        flags:"IRW",
        description:"Whether this field should be included in the printable representation of the grid.",
        name:"shouldPrint",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "printing"
        ]
    },
    "attr:DataSource.audit":{
        flags:"IR",
        type:"attr",
        requiresModules:[
            "SCServer"
        ],
        ref:"attr:DataSource.audit",
        description:"Enables saving of a log of changes to this DataSource in a second DataSource with the same\n fields, called the \"audit DataSource\".  <b>NOTE</b>: this feature applies to Enterprise\n Edition only; for more information on edition-specific features, see\n <a href='http://smartclient.com/product' target='_blank'>http://smartclient.com/product</a>.\n <p>\n When auditing is enabled, every time a DSRequest modifies this DataSource, a Record is added\n to the audit DataSource that shows the record as it existed after the change was made (or\n for a \"remove\", the values of the record at the time of deletion).  In addition, the audit\n DataSource has the following additional metadata fields:\n <ul>\n <li> ${isc.DocUtils.linkForRef('attr:DataSource.auditTypeFieldName','\"audit_operationType\"')}: type of the change (\"update\", \"add\" or \"remove\")\n <li> ${isc.DocUtils.linkForRef('attr:DataSource.auditUserFieldName','\"audit_modifier\"')}: username of the user that made the change.  The username is\n      determined in the same way that the \n      ${isc.DocUtils.linkForRef('attr:OperationBinding.requiresRole','Declarative Security')} subsystem determines the \n      current user.\n <li> ${isc.DocUtils.linkForRef('attr:DataSource.auditTimeStampFieldName','\"audit_changeTime\"')}: a field of type \"datetime\" recording the timestamp of\n      the change\n <li> ${isc.DocUtils.linkForRef('attr:DataSource.auditRevisionFieldName','\"audit_revision\"')}: a field of type \"sequence\" recording a simple\n      increasing integer value\n </ul>\n <p>\n If any of the field names above collide with field names of the DataSource being audited,\n an integer suffix will also be added, starting with 2 (for example, \"audit_modifier2\", then\n \"audit_modifier3\", etc).\n <p>\n To omit a data field from the automatically generated audit DataSource, just set\n ${isc.DocUtils.linkForRef('attr:DataSourceField.audit')} to false.\n <p>\n <h4>Auto-generated Audit DataSources</h4>\n <p>\n The audit DataSource is normally automatically generated, and unless otherwise specified\n with ${isc.DocUtils.linkForRef('attr:DataSource.auditDataSourceID')}, the ID of the audit DataSource will be\n <code>audit_[OriginalDSID]</code>.  \n <p>\n By default, the automatically generated audit DataSource will be of the same type as the\n DataSource being audited, however, if the DataSource being audited is not already a\n SQLDataSource, we recommend using ${isc.DocUtils.linkForRef('attr:DataSource.auditDSConstructor','auditDSConstructor:\"sql\"')} to use\n a SQLDataSource as the audit DataSource.  This is because a SQLDataSource used an audit\n DataSource will automatically generate a SQL table for storing audit data the first time\n changes are made.  JPA would require manual creation of a Java Bean, and Hibernate requires \n <a href='http://www.google.com/search?q=hbm2ddl.auto' target='_blank'>hbm2ddl.auto=update</a> to be set,\n which is widely considered unsafe for production use.\n <p>\n Automatically created audit DataSources can be loaded and queried just like other\n DataSources, using the DataSourceLoader, and using the server-side API\n <code>DataSource.getAuditDataSource()</code>.  However, you <b>must</b> load the DataSource\n being audited before loading its automatically created audit DataSource.\n <p>\n Note, that automatic SQL tables creation can be disabled. See \n ${isc.DocUtils.linkForRef('attr:DataSource.autoCreateAuditTable','autoCreateAuditTable')} for details.\n <p>\n <h4>Manually created Audit DataSources</h4>\n <p>\n The audit DataSource can also be manually created.  In this case, you can \n can either follow the naming conventions described above for the ID of the audit DataSource\n and the names of metadata fields, or use the linked properties to assign custom names.  If\n you omit any data fields from the tracked DataSource in your audit DataSource, those fields\n will be ignored for auditing purposes, exactly as though ${isc.DocUtils.linkForRef('attr:DataSourceField.audit')} had\n been set to false for an automatically-generated audit DataSource.\n <p>\n Also, note that in case of manually defined audit DataSource, if this DataSource\n is defined so it inherits the audited DataSource, all the audited DataSource's fields\n will be inherited, this including the primary keys. Since for the audit\n DataSource the primary key should be the revision field, in order to prevent the\n audit DataSource having two primary keys, the inherited DataSource's primary key \n will have to be declared in audit DataSource, but with the primaryKey attribute \n omitted (as well not being of type \"sequence\") in the audit DataSource.",
        name:"audit",
        valueType:"boolean",
        seeAlso:[
        ],
        serverDS:"only",
        examples:[
            "${isc.DocUtils.linkForExampleId('auditing')}"
        ],
        defaultValue:"false",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ]
    },
    "method:ListGrid.setHeaderSpanTitle":{
        ref:"method:ListGrid.setHeaderSpanTitle",
        flags:"",
        description:" Update the title of a ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpan')} dynamically.\n\n",
        name:"setHeaderSpanTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the headerSpan, as specified via ${isc.DocUtils.linkForRef('attr:HeaderSpan.name')}.",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new title for the headerSpan",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "method:MultiSortPanel.sortChanged":{
        ref:"method:MultiSortPanel.sortChanged",
        flags:"",
        description:" Fired whenever the sort configuration changes.  The single parameter is an array of\n ${isc.DocUtils.linkForRef('object:SortSpecifier')}s that represent the list of sort-levels as they appear after \n whatever change has occurred.\n\n",
        name:"sortChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"The current sort configuration, after any changes",
                optional:false,
                name:"sortLevels",
                defaultValue:null,
                type:"Array of SortSpecifier"
            }
        ],
        type:"method",
        definingClass:"class:MultiSortPanel"
    },
    "method:CubeGrid.removeFacet":{
        ref:"method:CubeGrid.removeFacet",
        flags:"",
        description:"\n Remove a facet from the current view, using a fixed value from that facet.  For example, remove\n the \"months\" facet from the view, collapsing to just January, or total for all months.\n\n",
        name:"removeFacet",
        seeAlso:[
            {
                ref:"method:CubeGrid.addFacet",
                description:null
            },
            {
                ref:"attr:CubeGrid.fixedFacetValues",
                description:null
            }
        ],
        params:[
            {
                description:"facetId to remove",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"New fixed value for the facet, to be added to cubeGrid.fixedFacetValues.  Default is the\n     rollup value for the facet.",
                optional:true,
                name:"fixedFacetValueId",
                defaultValue:null,
                type:"id"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:ButtonItem.button":{
        ref:"attr:ButtonItem.button",
        flags:"R",
        description:"This item is an autoChild generated ${isc.DocUtils.linkForRef('class:Canvas')} displayed by\n the ButtonItem and is an instance of ${isc.DocUtils.linkForRef('class:Button')} by defaut, cuztomizeable \n via the ${isc.DocUtils.linkForRef('attr:ButtonItem.buttonConstructor')} attribute.",
        name:"button",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ButtonItem"
    },
    "attr:Canvas.accessKey":{
        ref:"attr:Canvas.accessKey",
        flags:"IRWA",
        description:"If specified this governs the HTML accessKey for the widget.\n <P>\n This should be set to a character - when a user hits the html accessKey modifier for\n the browser, plus this character, focus will be given to the widget in question.\n The accessKey modifier can vary by browser and platform. \n <P>\n The following list of default behavior is for reference only, developers should also\n consult browser documentation for additional information.\n <ul>\n <li><b>Internet Explorer (all platforms)</b>: <code>Alt</code> + <i>accessKey</i></li>\n <li><b>Mozilla Firefox (Windows, Unix)</b>: <code>Alt+Shift</code> + <i>accessKey</i></li>\n <li><b>Mozilla Firefox (Mac)</b>: <code>Ctrl+Opt</code> + <i>accessKey</i></li>\n <li><b>Chrome and Safari (Windows, Unix)</b>:  <code>Alt</code> + <i>accessKey</i></li>\n <li><b>Chrome and Safari (Mac)</b>:  <code>Ctrl+Opt</code> + <i>accessKey</i></li>\n </ul>",
        name:"accessKey",
        setter:[
            "setAccessKey"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:DataBoundComponent.showComplexFields":{
        ref:"attr:DataBoundComponent.showComplexFields",
        flags:"IRWA",
        description:"Whether to show fields of non-atomic types when a DataBoundComponent is given a\n DataSource but no <code>component.fields</code>.\n <p>\n If true, the component will show fields that declare a complex type, for example, a\n field 'shippingAddress' that declares type 'Address', where 'Address' is the ID of a\n DataSource that declares the fields of a shipping address (city, street name, etc).\n <P>\n Such fields may need custom formatters or editors in order to create a usable interface,\n for example, an Address field in a ListGrid might use a custom formatter to combine the\n relevant fields of an address into one column, and might use a pop-up dialog for\n editing.",
        name:"showComplexFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "method:SelectItem.defaultDynamicValue":{
        ref:"method:SelectItem.defaultDynamicValue",
        flags:"A",
        description:" Expression evaluated to determine the ${isc.DocUtils.linkForRef('attr:SelectItem.defaultValue')} when no value is\n provided for this item. To default to the first option use\n ${isc.DocUtils.linkForRef('attr:SelectItem.defaultToFirstOption')} instead.\n",
        name:"defaultDynamicValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:SelectItem"
    },
    "class:TextSettings":{
        methods:[
        ],
        ref:"class:TextSettings",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:TextSettings.fieldList",
            "attr:TextSettings.fieldSeparator",
            "attr:TextSettings.lineSeparator",
            "attr:TextSettings.escapingMode"
        ],
        description:"Common base class of ${isc.DocUtils.linkForRef('class:TextImportSettings')}.",
        name:"TextSettings",
        seeAlso:[
        ],
        type:"class"
    },
    "classAttr:GroupingMessages.upcomingBeforeTitle":{
        ref:"classAttr:GroupingMessages.upcomingBeforeTitle",
        flags:"IRW",
        description:"When a ${isc.DocUtils.linkForRef('class:ListGrid')} is grouped by a date field in 'Upcoming' mode, \n this is the group title for all records in which the grouped date field occurs before\n the current date.",
        name:"upcomingBeforeTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Before\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.isSeparatorProperty":{
        ref:"attr:ListGrid.isSeparatorProperty",
        flags:"IRW",
        description:"If <code>record[this.isSeparatorProperty]</code> is set for some record, the\n record will be displayed as a simple separator row.",
        name:"isSeparatorProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"isSeparator\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:TreeGrid.customIconProperty":{
        ref:"attr:TreeGrid.customIconProperty",
        flags:"IRW",
        description:"This property allows the developer to rename the \n ${isc.DocUtils.linkForRef('attr:TreeNode.icon','default node.icon')} property.",
        name:"customIconProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"icon\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:DataView.dataViewLoaded":{
        ref:"method:DataView.dataViewLoaded",
        flags:"A",
        description:"\n Executed when the dataView has loaded all dependencies (such as DataSources or WebServices).\n No default implementation.\n\n",
        name:"dataViewLoaded",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DataView"
    },
    "attr:HeaderSpan.height":{
        ref:"attr:HeaderSpan.height",
        flags:"IR",
        description:"Height of this headerSpan.  Defaults to ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpanHeight')}.",
        name:"height",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "attr:SectionHeader.showClippedTitleOnHover":{
        ref:"attr:SectionHeader.showClippedTitleOnHover",
        flags:"IRW",
        description:"If true and the title is clipped, then a hover containing the full title of this section header\n is enabled.",
        name:"showClippedTitleOnHover",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionHeader",
        groups:[
            "hovers"
        ]
    },
    "method:ColumnTree.getSelectedRecord":{
        ref:"method:ColumnTree.getSelectedRecord",
        flags:"",
        description:" Get the selected record, that is, the parent of the nodes in the rightmost visible column.\n <P>\n This is generally the most recently clicked node unless programmatic navigation has taken\n place.\n <P>\n If only the first column is showing, the root node is returned (which can be detected via\n ${isc.DocUtils.linkForRef('method:Tree.isRoot')}).\n\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"the selected record",
            type:"Record"
        },
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "attr:TimeItem.millisecondItemTitle":{
        ref:"attr:TimeItem.millisecondItemTitle",
        flags:"IRW",
        description:"Title to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondItem','millisecond picker')}.",
        name:"millisecondItemTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Ms\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:BlurbItem.clipValue":{
        ref:"attr:BlurbItem.clipValue",
        flags:"IRW",
        description:"If true, text that exceeds the specified size of the form item will be clipped.",
        name:"clipValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:BlurbItem",
        groups:[
            "appearance"
        ]
    },
    "method:Tree.openAll":{
        ref:"method:Tree.openAll",
        flags:"",
        description:"\n Open all nodes under a particular node.\n\n",
        name:"openAll",
        seeAlso:[
        ],
        params:[
            {
                description:"node from which to open folders (if not specified, the root                              node is used)",
                optional:true,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('parentLinking')}"
        ],
        definingClass:"class:Tree"
    },
    "attr:IMenuButton.height":{
        ref:"attr:IMenuButton.height",
        flags:"IRW",
        description:"Default height of the button.",
        name:"height",
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"22",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "attr:TimeItem.invalidTimeStringMessage":{
        ref:"attr:TimeItem.invalidTimeStringMessage",
        flags:"IRW",
        description:"Validation error message to display if the user enters an invalid time string.",
        name:"invalidTimeStringMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Invalid time\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "class:BooleanItem":{
        methods:[
        ],
        ref:"class:BooleanItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"Boolean form item, implemented with customizable checkbox images",
        name:"BooleanItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FormItem.editPendingCSSText":{
        ref:"attr:FormItem.editPendingCSSText",
        flags:"IRWA",
        description:"Custom CSS text to be applied to cells with pending edits that have not yet been\n submitted.",
        name:"editPendingCSSText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"color:#0066CC;\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.locateRowsBy":{
        ref:"attr:ListGrid.locateRowsBy",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('classMethod:AutoTest.getElement')} is used to parse locator strings generated by\n ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')} for a cell in this grid, how should the row be identified?\n <br>\n Note that getLocator() will actually store all available information about the row in\n the generated string -- this attribute effects how a stored string will be parsed only.\n <P>\n Valid options area:\n <ul>\n <li><code>\"primaryKey\"</code> Only applies to databound grids: If the cell in question has\n  a primary key cell value, use it to identify cells in autoTest locator strings.</li>\n <li><code>\"titleField\"</code> If the cell in question has a value for the\n  ${isc.DocUtils.linkForRef('method:ListGrid.getTitleField','titleField')}, use it to identify cells in autoTest\n  locator strings</li>\n <li><code>\"targetCellValue\"</code> Identify rows by storing the cell value for the target\n  row / field in autoTest locator strings</li>\n <li><code>\"index\"</code>The rowNum will be used to identify the row.</li>\n </ul>\n If unset, default behavior is to identify by primary key (if available), otherwise by\n titleField (if available), otherwise by cell value (if available), and lastly by index.",
        name:"locateRowsBy",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoTest"
        ]
    },
    "method:Calendar.addEvent":{
        ref:"method:Calendar.addEvent",
        flags:"",
        description:" Create a new event in this calendar instance.\n\n",
        name:"addEvent",
        seeAlso:[
        ],
        params:[
            {
                description:"start date of event, or CalendarEvent Object",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date or Object"
            },
            {
                description:"end date of event",
                optional:true,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"name of event",
                optional:true,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"description of event",
                optional:true,
                name:"description",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new values of additional fields to be updated",
                optional:true,
                name:"otherFields",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:DataSource.invalidateCache":{
        ref:"method:DataSource.invalidateCache",
        flags:"",
        description:" Invalidate the cache when ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} or ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly')} are true.\n",
        name:"invalidateCache",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "method:ListGrid.getCellStartRow":{
        ref:"method:ListGrid.getCellStartRow",
        flags:"",
        description:" When using ${isc.DocUtils.linkForRef('method:ListGrid.getRowSpan','row spanning')}, returns the row number where a row-spanning cell\n starts.\n <P>\n For example, if row 2 col 0 spans 3 cells, <code>getCellStartRow()</code> for row 2 col 0,\n row 3 col 0, row 4 col 0 will all return 2, because that's the row when spanning starts.\n\n",
        name:"getCellStartRow",
        seeAlso:[
        ],
        params:[
            {
                description:"row number of cell for which the start row should be returned",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of cell for which the start row should be returned",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"row number where spanning starts",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DynamicForm.showErrorIcons":{
        ref:"attr:DynamicForm.showErrorIcons",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','showErrorIcons')}, \n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText','showErrorText')}, and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorStyle','showErrorStyle')} control how validation errors are\n displayed when they are displayed inline in the form (next to the form item where there\n is a validation error).  To instead display all errors at the top of the form, set\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors','showInlineErrors')}:false.\n <P>\n <code>showErrorIcons</code>, <code>showErrorText</code> and <code>showErrorStyle</code>\n are all boolean properties, and can be set on a DynamicForm to control the behavior\n form-wide, or set on individual FormItems.  \n <P>\n The HTML displayed next to a form item with errors is generated by \n ${isc.DocUtils.linkForRef('method:FormItem.getErrorHTML')}.\n The default implementation of that method respects <code>showErrorIcons</code> and\n <code>showErrorText</code> as follows:\n <P>\n <code>showErrorIcons</code>, or <code>showErrorIcon</code> at the FormItem level controls\n whether an error icon should appear next to fields which have validation errors.  The icon's\n appearance is governed by ${isc.DocUtils.linkForRef('attr:FormItem.errorIconSrc')}, ${isc.DocUtils.linkForRef('attr:FormItem.errorIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorIconHeight')}\n <P>\n <code>showErrorText</code> determines whether the text of the validation error should be\n displayed next to fields which have validation errors. The attribute\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showTitlesWithErrorMessages')} may be set to prefix error messages with the \n form item's title + <code>\":\"</code> (may be desired if the item has \n ${isc.DocUtils.linkForRef('attr:FormItem.showTitle')} set to false).\n <P>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')} controls where the error HTML should appear relative \n to form items. Therefore the combination of ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText')}<code>:false</code> and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')}<code>:\"left\"</code> creates a compact validation error display\n consisting of just an icon, to the left of the item with the error message\n available via a hover (similar appearance to ListGrid validation error display).  \n <P>\n In addition to this, <code>showErrorStyle</code> determines whether fields  with validation\n errors should have special styling applied to them. See ${isc.DocUtils.linkForRef('type:FormItemBaseStyle')} for a \n discussion for how error styling is calculated.",
        name:"showErrorIcons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:SectionStackSection.icon":{
        ref:"attr:SectionStackSection.icon",
        flags:"IR",
        description:"Base filename of the icon that represents open and closed states. The default settings\n also change the icon for disabled sections, so a total of four images are required\n (opened, closed, Disabled_opened, Disabled_closed).\n <P>\n Not shown if ${isc.DocUtils.linkForRef('attr:SectionStackSection.canCollapse')} is false.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]SectionHeader/opener.gif\"",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "type:DragDataAction":{
        ref:"type:DragDataAction",
        values:[
            {
                description:"Don't do anything, resulting in the same data being in both lists.",
                value:"\"none\""
            },
            {
                description:"Copy the data leaving the original in our list.",
                value:"Canvas.COPY"
            },
            {
                description:"Remove the data from this list so it can be moved into the other list.",
                value:"Canvas.MOVE"
            }
        ],
        description:"What do we do with data that's been dropped into another list?",
        name:"DragDataAction",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "drag"
        ]
    },
    "classAttr:Operators.iContainsPatternTitle":{
        ref:"classAttr:Operators.iContainsPatternTitle",
        flags:"IR",
        description:"Title for the \"iContainsPattern\" operator",
        name:"iContainsPatternTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"contains pattern\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:GridRenderer.setFastCellUpdates":{
        ref:"method:GridRenderer.setFastCellUpdates",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:GridRenderer.fastCellUpdates')}. Has no effect in browsers other than\n Internet Explorer.\n",
        name:"setFastCellUpdates",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to enable fastCellUpdates.",
                optional:false,
                name:"fastCellUpdates",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "attr:DateItem.pickerConstructor":{
        ref:"attr:DateItem.pickerConstructor",
        flags:"IR",
        description:"SmartClient class for the ${isc.DocUtils.linkForRef('attr:FormItem.picker')} autoChild displayed to allow the user\n to directly select dates.",
        name:"pickerConstructor",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"DateChooser\"",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "attr:TreeGrid.recordDropAppearance":{
        ref:"attr:TreeGrid.recordDropAppearance",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeGrid.canAcceptDroppedRecords')} is true for this treeGrid, this property governs\n whether the user can drop between, or over records within the grid.\n This controls what ${isc.DocUtils.linkForRef('type:RecordDropPosition')} is passed to the ${isc.DocUtils.linkForRef('method:TreeGrid.recordDrop')}\n event handler.",
        name:"recordDropAppearance",
        seeAlso:[
        ],
        valueType:"RecordDropAppearance",
        defaultValue:"ListGrid.BOTH",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "method:ListGrid.scrollToColumn":{
        ref:"method:ListGrid.scrollToColumn",
        flags:"",
        description:" Scroll the grid to specified column such that the row appears near the center of the\n viewport.\n <P>\n See ${isc.DocUtils.linkForRef('method:ListGrid.scrollToCell')} for a full description of how\n this method interacts with incremental loading and rendering of data.\n",
        name:"scrollToColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"Index of the column to scroll into view",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Horizontal position of scrolled column (optional)",
                optional:true,
                name:"xPosition",
                defaultValue:null,
                type:"Alignment"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "scrolling"
        ]
    },
    "attr:JSONEncoder.skipInternalProperties":{
        ref:"attr:JSONEncoder.skipInternalProperties",
        flags:"IR",
        description:"If true, don't show SmartClient internal properties when encoding and object.",
        name:"skipInternalProperties",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:ComboBoxItem.allowEmptyValue":{
        ref:"attr:ComboBoxItem.allowEmptyValue",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} is <code>false</code>, this property \n determines whether\n the user can clear the comboBoxItem value, or whether they are constrained to\n choosing one of the available options (in which case clearing the text box will\n simply revert to the last picked value when the user leaves the field).",
        name:"allowEmptyValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:Window.hiliteHeaderSrc":{
        ref:"attr:Window.hiliteHeaderSrc",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Window.showHeaderBackground')} is true, this governs the URL of the image to \n use in the header's highlighted state when the window is ${isc.DocUtils.linkForRef('method:Window.flash','flashed')}",
        name:"hiliteHeaderSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]Window/headerGradient_hilite.gif\" | null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "method:DrawKnob.setCenterPoint":{
        ref:"method:DrawKnob.setCenterPoint",
        flags:"",
        description:" Sets the center point of the drawKnob. If the additional <code>drawingCoords</code> attribute\n is passed, coordinates are expected to be already adjusted for drawPane pan and zoom.\n Otherwise coordinates are expected to be absolute pixel coordinates within the drawPane.\n",
        name:"setCenterPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"new x coordinate for this drawKnob",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"new y coordinate for this drawKnob",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"If specified, <code>x</code> and <code>y</code> values are  expected to be drawing coordinates - already adjusted for any zoom or pan applied to the\n  drawPane.",
                optional:true,
                name:"drawingCoords",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DrawKnob"
    },
    "method:GridRenderer.cellContextClick":{
        ref:"method:GridRenderer.cellContextClick",
        flags:"A",
        description:" Called when a cell receives a contextclick event.\n\n",
        name:"cellContextClick",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:GridRenderer.rowHover":{
        ref:"method:GridRenderer.rowHover",
        flags:"A",
        description:" Called when the mouse hovers over a row if this.canHover is true. \n  Returning false will suppress the hover text from being shown if this.showHover is true.\n\n",
        name:"rowHover",
        seeAlso:[
            {
                ref:"attr:GridRenderer.canHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event (default behavior of showing the hover)",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:GridRenderer.cellSelectionChanged":{
        ref:"method:GridRenderer.cellSelectionChanged",
        flags:"A",
        description:" Called when (cell-based) selection changes within this grid.\n\n",
        name:"cellSelectionChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of cells whos selected state was modified.",
                optional:false,
                name:"cellList",
                defaultValue:null,
                type:"array"
            }
        ],
        returns:{
            description:"Returning false will prevent the GridRenderer styling from being updated                      to reflect the selection change.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "selection"
        ]
    },
    "attr:FilterBuilder.rangeSeparator":{
        ref:"attr:FilterBuilder.rangeSeparator",
        flags:"IR",
        description:"For operators that check that a value is within a range, text to show between the start and\n end input fields for specifying the limits of the range.",
        name:"rangeSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"and\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.frozen":{
        ref:"attr:ListGridField.frozen",
        flags:"IR",
        description:"Whether this field should be \"frozen\" for the purposes of horizontal scrolling.  See\n ${isc.DocUtils.linkForRef('group:frozenFields')}.",
        name:"frozen",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "frozenFields"
        ]
    },
    "method:StretchImgButton.setAutoFit":{
        ref:"method:StretchImgButton.setAutoFit",
        flags:"",
        description:" Setter method for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.autoFit')} property. Pass in true or false to turn\n autoFit on or off. When autoFit is set to <code>false</code>, canvas will be resized to\n it's previously specified size.\n",
        name:"setAutoFit",
        seeAlso:[
        ],
        params:[
            {
                description:"New autoFit setting.",
                optional:false,
                name:"autoFit",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "method:Canvas.setPadding":{
        ref:"method:Canvas.setPadding",
        flags:"",
        description:" Set the CSS padding of this component, in pixels.  Padding provides space between the border\n and the component's contents.\n <P>\n This property sets the same thickness of padding on every side.  Differing per-side\n padding can be set in a CSS style and applied via ${isc.DocUtils.linkForRef('attr:Canvas.styleName')}.\n <P>\n",
        name:"setPadding",
        seeAlso:[
        ],
        params:[
            {
                description:"new padding in pixels",
                optional:false,
                name:"newPadding",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "object:EditNode":{
        methods:[
        ],
        ref:"object:EditNode",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools"
        ],
        attrs:[
            "attr:EditNode.defaults",
            "attr:EditNode.type",
            "attr:EditNode.liveObject"
        ],
        description:"An object representing a component that is currently being edited within an\n ${isc.DocUtils.linkForRef('interface:EditContext')}.\n <P>\n An EditNode is essentially a copy of a ${isc.DocUtils.linkForRef('object:PaletteNode')}, initially with the same properties\n as the PaletteNode from which it was generated.  However unlike a PaletteNode, an EditNode \n always has a ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObject')} - the object created from the \n ${isc.DocUtils.linkForRef('attr:PaletteNode.defaults')} or other properties defined on a paletteNode.\n <P>\n Like a Palette, an EditContext may use properties such as ${isc.DocUtils.linkForRef('attr:PaletteNode.icon')} or \n ${isc.DocUtils.linkForRef('attr:PaletteNode.title')} to display EditNodes.\n <P>\n An EditContext generally offers some means of editing EditNodes and, as edits are made,\n updates ${isc.DocUtils.linkForRef('attr:EditNode.defaults')} with the information required to re-create the component.",
        name:"EditNode",
        seeAlso:[
        ],
        type:"object",
        inheritsFrom:"PaletteNode"
    },
    "attr:Tab.iconHeight":{
        ref:"attr:Tab.iconHeight",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Tab.icon')} is specified, this property may be used to specify a size for the icon",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "attr:ListGrid.titleField":{
        ref:"attr:ListGrid.titleField",
        flags:"IRW",
        getter:[
            "getTitleField"
        ],
        description:"Best field to use for a user-visible title for an individual record from this grid.\n If ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')} is non null, this property may be specified on the\n dataSource instead.\n <p>\n If not explicitly set, titleField looks for fields named \"title\", \"name\", and \"id\"\n in that order.  If a field exists with one of those names, it becomes the titleField.\n If not, then the first field is designated as the titleField.",
        name:"titleField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.rowHasChanges":{
        ref:"method:ListGrid.rowHasChanges",
        flags:"",
        description:" If this listGrid can be edited, this method will return true if the row passed in has been\n edited, but the edits have not yet been saved to the ListGrid's data object.\n <P>\n Note this method will not return true if a record has been marked as\n ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved','removed')}, but has no other changes. Developers can use\n ${isc.DocUtils.linkForRef('method:ListGrid.recordMarkedAsRemoved')} to check for this case.\n\n",
        name:"rowHasChanges",
        seeAlso:[
        ],
        params:[
            {
                description:"index of row to check for changes",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"true if the row has changes.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:DrawItem.setLinePattern":{
        ref:"method:DrawItem.setLinePattern",
        flags:"",
        description:" Update linePattern for this drawItem.\n",
        name:"setLinePattern",
        seeAlso:[
        ],
        params:[
            {
                description:"new linePattern to use",
                optional:false,
                name:"pattern",
                defaultValue:null,
                type:"LinePattern"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:ListGridField.align":{
        ref:"attr:ListGridField.align",
        flags:"IRW",
        description:"Horizontal alignment for field's column header: \"left\", \"right\"\n or \"center\". Applied to the column header title and cells by default. A separate\n alignment for cells can be specified via ${isc.DocUtils.linkForRef('attr:ListGridField.cellAlign')}.<br>\n If null, values are left-aligned. If this field is editable, the\n alignment of cells in the body will also be reflected in any editors for the field.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:DrawCurve.endPoint":{
        ref:"attr:DrawCurve.endPoint",
        flags:"IRW",
        description:"End point of the curve",
        name:"endPoint",
        setter:[
            "setEndPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[100,100]",
        type:"attr",
        definingClass:"class:DrawCurve"
    },
    "attr:Canvas.mouseStillDownDelay":{
        ref:"attr:Canvas.mouseStillDownDelay",
        flags:"IRWA",
        description:"Amount of time (in milliseconds) between repeated 'mouseStillDown' events for this\n canvas. See ${isc.DocUtils.linkForRef('method:Canvas.mouseStillDown')} for details.",
        name:"mouseStillDownDelay",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "events"
        ]
    },
    "attr:DetailViewer.hiliteIcons":{
        ref:"attr:DetailViewer.hiliteIcons",
        flags:"IR",
        description:"Specifies a list of icons that can be used in ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites','hilites')}.\n <P>\n <code>hiliteIcons</code> should be specified as an Array of ${isc.DocUtils.linkForRef('type:SCImgURL')}.\n When present, the hilite editing interface shown when ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites')} is called \n will offer the user a drop down for picking one of these icons when defining either a \n simple or advanced hilite rule.\n <P>\n If the user picks an icon, the created hiliting rule will have ${isc.DocUtils.linkForRef('attr:Hilite.icon')} set to \n the chosen icon.  ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconPosition')} controls where the icon will \n appear for that field -- the default is that it appears in front of the normal cell content.\n This can also be overriden at the field level.",
        name:"hiliteIcons",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"[\"[SKINIMG]/Dialog/notify.png\", \"[SKINIMG]/Dialog/warn.png\", \"[SKINIMG]/actions/approve.png\"]",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListGrid.canReorderRecords":{
        ref:"attr:ListGrid.canReorderRecords",
        flags:"IRW",
        description:"Indicates whether records can be reordered by dragging within this listGrid.",
        name:"canReorderRecords",
        setter:[
            "setCanReorderRecords"
        ],
        seeAlso:[
            {
                ref:"attr:ListGridRecord.canDrag",
                description:null
            },
            {
                ref:"attr:ListGridRecord.canAcceptDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListMove')}",
            "${isc.DocUtils.linkForExampleId('gridsDragReorder')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dragging"
        ]
    },
    "attr:ListGrid.expansionFieldTrueImage":{
        ref:"attr:ListGrid.expansionFieldTrueImage",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is set to <code>true</code>, this property\n determines the image to display in the expansion field for expanded rows.\n If unset, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} will be used.",
        name:"expansionFieldTrueImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.expansionFieldFalseImage",
                description:null
            },
            {
                ref:"attr:ListGrid.expansionFieldImageWidth",
                description:null
            },
            {
                ref:"attr:ListGrid.expansionFieldImageHeight",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "class:DrawLabel":{
        methods:[
            "method:DrawLabel.moveBy",
            "method:DrawLabel.moveTo",
            "method:DrawLabel.getCenter",
            "method:DrawLabel.getBoundingBox",
            "method:DrawLabel.setLineColor",
            "method:DrawLabel.setContents",
            "method:DrawLabel.setFontSize"
        ],
        ref:"class:DrawLabel",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawLabel.knobs",
            "attr:DrawLabel.contents",
            "attr:DrawLabel.left",
            "attr:DrawLabel.top",
            "attr:DrawLabel.alignment",
            "attr:DrawLabel.fontFamily",
            "attr:DrawLabel.fontSize",
            "attr:DrawLabel.fontWeight",
            "attr:DrawLabel.fontStyle",
            "attr:DrawLabel.lineColor",
            "attr:DrawLabel.rotation"
        ],
        description:"DrawItem subclass to render a single-line text label.",
        name:"DrawLabel",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "attr:ListGrid.autoFitMaxWidth":{
        ref:"attr:ListGrid.autoFitMaxWidth",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData')} is set to <code>\"horizontal\"</code> or <code>\"both\"</code>\n this property provides an upper limit on how far the ListGrid will expand horizontally to\n accommodate its content.\n If content exceeds this width, scrollbars will be introduced as usual.\n In addition to this property, ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxColumns')} allows you to limit\n horizontal expansion based on the number of columns to be rendered.",
        name:"autoFitMaxWidth",
        setter:[
            "setAutoFitMaxWidth"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "method:DataSource.applyFilter":{
        ref:"method:DataSource.applyFilter",
        flags:"",
        description:" Returns records in the passed Array that match the provided filter\n ${isc.DocUtils.linkForRef('type:Criteria','criteria')}. Handles simple or ${isc.DocUtils.linkForRef('object:AdvancedCriteria','advanced')} criteria.\n <P>\n By default:\n <ul>\n <li> any criteria that do not correspond to a DataSource field are ignored\n <li> for simple criteria, any null or empty string criteria are ignored and\n      all other criteria are passed to ${isc.DocUtils.linkForRef('method:DataSource.fieldMatchesFilter')}\n <li> for advanced criteria, each criterion is evaluated via ${isc.DocUtils.linkForRef('method:DataSource.evaluateCriterion')}\n </ul>\n This method is called by ${isc.DocUtils.linkForRef('method:ResultSet.applyFilter')} to provide filtering when a\n ResultSet has a complete cache and filtering can be performed client-side.  You may want\n to override this method in order to mimic the filtering behavior that your server performs.\n\n",
        name:"applyFilter",
        seeAlso:[
        ],
        params:[
            {
                description:"the list of rows",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Array of Record"
            },
            {
                description:"the filter criteria",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"optional dataSource request properties",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"the list of matching rows",
            type:"Array"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:FacetChart.getGradations":{
        ref:"method:FacetChart.getGradations",
        flags:"",
        description:" Return an array of the gradation values used in the current chart.  Pass these values\n to ${isc.DocUtils.linkForRef('method:FacetChart.getXCoord')} / ${isc.DocUtils.linkForRef('method:FacetChart.getYCoord')} (depending on the orientation of the chart)\n to discover the coordinates where gradations are drawn.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getGradations",
        seeAlso:[
        ],
        returns:{
            description:"an array of gradation values used in the current chart.",
            type:"Array of float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:TabSet.setCanCloseTabs":{
        ref:"method:TabSet.setCanCloseTabs",
        flags:"",
        description:" Changes this TabSet's ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs','canCloseTabs')} property.\n",
        name:"setCanCloseTabs",
        seeAlso:[
        ],
        params:[
            {
                description:"the new value for canCloseTabs.",
                optional:false,
                name:"canCloseTabs",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:BlurbItem.textBoxStyle":{
        ref:"attr:BlurbItem.textBoxStyle",
        flags:"IRW",
        description:"Base css style for this item.",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"staticTextItem\"",
        type:"attr",
        definingClass:"class:BlurbItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DataBoundComponent.showHiddenFields":{
        ref:"attr:DataBoundComponent.showHiddenFields",
        flags:"IRW",
        description:"Whether to show fields marked <code>hidden:true</code> when a DataBoundComponent is given a\n DataSource but no <code>component.fields</code>.\n <p>\n The <code>hidden</code> property is used on DataSource fields to mark fields that are\n never of meaning to an end user.",
        name:"showHiddenFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "method:Window.setTitle":{
        ref:"method:Window.setTitle",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Window.title','title')} that appears in the window ${isc.DocUtils.linkForRef('attr:Window.header','header')}.\n The header will be redrawn if necessary.\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:Window",
        groups:[
            "header"
        ]
    },
    "attr:StatefulCanvas.align":{
        ref:"attr:StatefulCanvas.align",
        flags:"IRW",
        description:"Horizontal alignment of this component's title.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSourceField.canView":{
        ref:"attr:DataSourceField.canView",
        flags:"IR",
        description:"If false, this property indicates that this field is considered \"server only\".  This means:\n <ul>\n <li>Components cannot bind to the field; even if you explicitly add a field with the same \n     name to your ${isc.DocUtils.linkForRef('interface:DataBoundComponent','dataBoundComponent')}, it will be dropped</li>\n <li>If you are using SmartClient Server, the client will never be sent a value for the \n     field</li>\n <li>If you are using SmartClient Server, then similar to ${isc.DocUtils.linkForRef('attr:DataSourceField.canEdit','canEdit')}, no updates\n     to the field are allowed from the client.  If you explicitly add a value for the field \n     to, eg, a record you are passing to ${isc.DocUtils.linkForRef('method:DataSource.updateData')}, the server will strip\n     the value out of the record before processing the update request.\n </ul>\n <code>canView:false</code> is <b>not</b> the same thing as ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden','hidden')}.  Use \n <code>canView:false</code> when you want to prevent the client from ever seeing a field's \n definition or values; use <code>hidden:true</code> if it is fine from a security perspective\n that a field's definition and values are sent to the browser, but the field should not by\n default appear in user interface elements (but could do in some cases, like a special screen\n for advanced users or administrators, for example).\n <p>\n Note that this property must be set explicitly to false to have an effect; a null or \n undefined setting is treated the same as true.\n <P>\n This property is used to implement field-level view security: failing a \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresAuthentication','viewRequiresAuthentication')}, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresRole','viewRequiresRole')} or ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequires','viewRequires')} test is \n equivalent to setting <code>canView:false</code> on the field (and, indeed, from the \n client's perspective, the field <em>has</em> had <code>canView:false</code> set).",
        name:"canView",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "attr:DynamicForm.formSubmitFailedWarning":{
        ref:"attr:DynamicForm.formSubmitFailedWarning",
        flags:"IRWA",
        description:"Warning to display to the user if an attempt to ${isc.DocUtils.linkForRef('method:DynamicForm.submitForm','natively submit')} a\n form is unable to submit to the server. The most common cause for this failure is that the user\n has typed an invalid file-path into an upload type field.",
        name:"formSubmitFailedWarning",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Form was unable to be submitted. The most likely cause for this is an invalid value in an upload field.\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:PickList.useClientFiltering":{
        ref:"attr:PickList.useClientFiltering",
        flags:"IRA",
        description:"For ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource','databound')} items, this property will be passed\n to the generated ResultSet data object for the pickList as ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering')}.\n Setting to false will disable filtering on the client and ensure criteria are\n always passed to the DataSource directly.",
        name:"useClientFiltering",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:DSResponse.endRow":{
        ref:"attr:DSResponse.endRow",
        flags:"R",
        description:"End row of returned server results, when using paged result fetching\n <p>\n Note that startRow and endRow are zero-based - the first record is row zero.",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "paging"
        ]
    },
    "attr:FormItem.height":{
        ref:"attr:FormItem.height",
        flags:"IRW",
        description:"Height of the FormItem.  Can be either a number indicating a fixed height in pixels, a\n percentage indicating a percentage of the overall form's height, or \"*\" indicating take\n whatever remaining space is available. See the ${isc.DocUtils.linkForRef('group:formLayout')} overview for details.\n <p>\n <smartgwt>If height is specified as a String, getHeight() will return -1.  Use \n +sgwtLink{getHeightAsString()} in this case.<p></smartgwt>    \n For form items having a ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','picker icon')} (e.g. ${isc.DocUtils.linkForRef('class:SelectItem')}, ${isc.DocUtils.linkForRef('class:ComboBoxItem')})\n and ${isc.DocUtils.linkForRef('class:SpinnerItem')}s, if ${isc.DocUtils.linkForRef('group:skinning','spriting')} is enabled, it is not recommended\n to change the height of the form item from the default because the image sprites are set up\n assuming a specific, fixed height of the item. If the item height must be changed, then\n the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')} should be changed to a custom CSS style name.\n Or, in the case of ${isc.DocUtils.linkForRef('class:SpinnerItem')}s, the ${isc.DocUtils.linkForRef('attr:FormItemIcon.baseStyle','baseStyle')} and\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.src','src')} of the ${isc.DocUtils.linkForRef('attr:SpinnerItem.increaseIcon')} and ${isc.DocUtils.linkForRef('attr:SpinnerItem.decreaseIcon')}\n AutoChildren should be customized.",
        name:"height",
        seeAlso:[
        ],
        valueType:"int | String",
        defaultValue:"20",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formLayoutFilling')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "formLayout"
        ]
    },
    "attr:ProcessElement.nextElement":{
        ref:"attr:ProcessElement.nextElement",
        flags:"IR",
        description:"Next ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} or ${isc.DocUtils.linkForRef('attr:Process.elements','element')} to execute\n after this one completes.  Sequences are checked first. <code>nextElement</code> does\n not need to be specified on most elements if you use\n ${isc.DocUtils.linkForRef('attr:Process.sequences','sequences')}.",
        name:"nextElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ProcessElement"
    },
    "attr:ToolStripGroup.body":{
        ref:"attr:ToolStripGroup.body",
        flags:"IR",
        description:"HLayout autoChild that manages multiple VLayouts containing controls.",
        name:"body",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "attr:DataSourceField.javaKeyClass":{
        ref:"attr:DataSourceField.javaKeyClass",
        flags:"IR",
        description:"See ${isc.DocUtils.linkForRef('attr:DataSourceField.javaClass')} - when auto-populating of Java Beans / POJOs based on \n inbound DSRequest data, for a field of Map type, <code>javaKeyClass</code> can be used to\n specify a particular concrete class for the map keys.  If not specified, and a concrete\n type cannot be discovered using Java Reflection, <code>java.lang.Object</code> is used.\n\n Note that <code>javaKeyClass</code> take precedence over generics if both are used.",
        name:"javaKeyClass",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "method:DrawOval.setTop":{
        ref:"method:DrawOval.setTop",
        flags:"",
        description:" Set the top coordinate of the drawOval\n",
        name:"setTop",
        seeAlso:[
        ],
        params:[
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "method:EditContext.addNode":{
        ref:"method:EditContext.addNode",
        flags:"",
        description:" Add a new ${isc.DocUtils.linkForRef('object:EditNode')} to the EditContext, under the specified parent.\n <P>\n The EditContext will interrogate the parent and new nodes to determine what field \n within the parent allows a child of this type, and to find a method to add the newNode's \n liveObject to the parentNode's liveObject.  The new relationship will then be stored\n in the tree of EditNodes.\n <P>\n For example, when a Tab is dropped on a TabSet, the field TabSet.tabs is discovered as\n the correct target field via naming conventions, and the method TabSet.addTab() is likewise \n discovered as the correct method to add a Tab to a TabSet.\n\n",
        name:"addNode",
        seeAlso:[
        ],
        params:[
            {
                description:"new node to be added",
                optional:false,
                name:"newNode",
                defaultValue:null,
                type:"EditNode"
            },
            {
                description:"parent to add the new node under.",
                optional:true,
                name:"parentNode",
                defaultValue:null,
                type:"EditNode"
            },
            {
                description:"index within the parent's children array",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"the property of the liveParent to which the new node should                                  be added, if not auto-discoverable from the schema",
                optional:true,
                name:"parentProperty",
                defaultValue:null,
                type:"string"
            },
            {
                description:"whether to skip adding the liveObject to the liveParent                                           (default false)",
                optional:true,
                name:"skipParentComponentAdd",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"newNodenode added",
            type:"EditNode"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:TreeGrid.getSelectedPaths":{
        ref:"method:TreeGrid.getSelectedPaths",
        flags:"",
        description:" Returns a snapshot of the current selection within this treeGrid as \n a ${isc.DocUtils.linkForRef('type:ListGridSelectedState')} object.<br>\n This object can be passed to ${isc.DocUtils.linkForRef('method:TreeGrid.setSelectedPaths')} to reset this grid's selection\n the current state (assuming the same data is present in the grid).<br>\n",
        name:"getSelectedPaths",
        seeAlso:[
            {
                ref:"method:TreeGrid.setSelectedPaths",
                description:null
            }
        ],
        returns:{
            description:"current state of this grid's selection",
            type:"ListGridSelectedState"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "viewState"
        ]
    },
    "group:loadXMLSchemaTag":{
        ref:"group:loadXMLSchemaTag",
        title:"&lt;isomorphic:loadXMLSchema&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> JavaScript\n <p>\n Load an XML Schema (.xsd) file and create a ${isc.DocUtils.linkForRef('class:SchemaSet')} object representing the loaded\n definitions. This tag works just like ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')}, except it's\n synchronous and the result is server-cacheable.\n <p>\n Note that this JSP tag must be surrounded by &lt;SCRIPT&gt; tags in the JSP because it\n generates JavaScript code.  Like other tags that generate JavaScript code, this tag can be\n used in a JSP that is included from your main page in order to create separate\n cacheability.  For example:\n <pre>\n &lt;SCRIPT SRC=\"myXMLSchemaDefinitions.jsp\"&gt;&lt;/SCRIPT&gt;\n </pre>\n <p>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>url</b><br>\n <i>value format</i>: URL or URI\n <i>default value</i>: NONE\n <p>\n This attribute specifies the URL or URI of the XML Schema file to fetch and translate.  This\n can be either a remote URL - e.g: <code>http://host:port/schemaFile.xsd</code> or a relative\n or absolute URI to a file local to this container - e.g: <code>/some/schemaFile.xsd</code>\n or <code>../some/schemaFile.xsd</code>.  If the url is a remote URL, then an HTTP request\n will be made for the file.  If it is local, it will be fetched from disk using standard\n Servlet APIs (<code>ServletContext.getResourceAsStream()</code>).\n <p>\n <b>cache</b><br>\n <i>value format</i>: Integer (number of seconds to cache result)\n <i>default value</i>: 3600 (1 hour)\n <p>\n This attribute specifies the number of seconds for which the fetched XML Schema is cacheable\n on the server.  Fetching an XML Schema file from a remote server can cause a significant\n delay in JSP processing, and XML Schema files rarely change outside of a development\n environment.  Set this value to zero to disable caching.",
        name:"loadXMLSchemaTag",
        seeAlso:[
            {
                ref:"classMethod:XMLTools.loadXMLSchema",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:DetailViewerField.timeFormatter":{
        ref:"attr:DetailViewerField.timeFormatter",
        flags:"IRWA",
        description:"Time-format to apply to date type values within this field.  If specified, any\n dates displayed in this field will be formatted as times using the appropriate format.\n This is most commonly only applied to fields specified as type <code>\"time\"</code> though\n if no explicit ${isc.DocUtils.linkForRef('attr:DetailViewerField.dateFormatter')} is specified it will be respected for other \n fields as well.\n <P>\n If unspecified, a timeFormatter may be defined \n ${isc.DocUtils.linkForRef('attr:DetailViewer.timeFormatter','at the component level')} and will be respected by fields\n of type <code>\"time\"</code>.",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "appearance"
        ]
    },
    "method:IMenuButton.setShowMenuButtonImage":{
        ref:"method:IMenuButton.setShowMenuButtonImage",
        flags:"",
        description:" Setter for the 'showMenuButtonImage' property - shows/hides the menu button image\n at runtime.\n\n",
        name:"setShowMenuButtonImage",
        seeAlso:[
        ],
        params:[
            {
                description:"Should the image be shown",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:IMenuButton"
    },
    "attr:ListGrid.dataFetchMode":{
        ref:"attr:ListGrid.dataFetchMode",
        flags:"IR",
        description:"How to fetch and manage records retrieve from the server.  See ${isc.DocUtils.linkForRef('type:FetchMode')}.\n <P>\n This setting only applies to the ${isc.DocUtils.linkForRef('class:ResultSet')} automatically created by calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')}.  If a pre-existing ResultSet is passed to setData() instead, it's\n existing setting for ${isc.DocUtils.linkForRef('attr:ResultSet.fetchMode')} applies.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"paged\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "method:TimeItem.setHourValues":{
        ref:"method:TimeItem.setHourValues",
        flags:"A",
        description:" Sets the array of valid ${isc.DocUtils.linkForRef('attr:TimeItem.hourValues','hour values')} to use when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for limiting available valid Hour values, or when using the TimeItem to record\n duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.hourMinValue','hourMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourMaxValue','hourMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourIncrement','hourIncrement')} for another method of controlling the \n content in the hour picker.\n",
        name:"setHourValues",
        seeAlso:[
        ],
        params:[
            {
                description:"array of available Hour values",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Array of Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "method:FacetChart.setFilled":{
        ref:"method:FacetChart.setFilled",
        flags:"",
        description:" Method to change ${isc.DocUtils.linkForRef('attr:FacetChart.filled','filled')}.\n Use null to apply a default value for the current ${isc.DocUtils.linkForRef('type:ChartType','chartType')}.\n\n",
        name:"setFilled",
        seeAlso:[
        ],
        params:[
            {
                description:"new value",
                optional:false,
                name:"filled",
                defaultValue:null,
                type:"boolean or null"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:TabBar.breadth":{
        ref:"attr:TabBar.breadth",
        flags:"IRW",
        description:"Breadth of the tabBar (including baseline breadth)",
        name:"breadth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"21",
        type:"attr",
        definingClass:"class:TabBar"
    },
    "method:ColumnTree.getColumn":{
        ref:"method:ColumnTree.getColumn",
        flags:"A",
        description:" Advanced API - get the ListGrid representing the indicated column.\n",
        name:"getColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"column number, or parent node of the nodes shown in the column",
                optional:false,
                name:"column",
                defaultValue:null,
                type:"int or TreeNode"
            }
        ],
        returns:{
            description:"ListGrid that renders the indicated column, or null if column is not shown",
            type:"ListGrid"
        },
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "attr:TileGrid.tile":{
        ref:"attr:TileGrid.tile",
        flags:"IR",
        getter:[
            "getTile"
        ],
        description:"A TileGrid automatically creates one tile per record in the dataset, via the\n ${isc.DocUtils.linkForRef('type:AutoChild')} pattern.\n <P>\n By default, the ${isc.DocUtils.linkForRef('class:SimpleTile')} class will be used, and will contain content as rendered\n by a ${isc.DocUtils.linkForRef('class:DetailViewer')}, based on the provided ${isc.DocUtils.linkForRef('attr:TileGrid.fields')} (or on the default\n set of fields).\n <P>\n <smartclient>\n To create a completely different appearance, override ${isc.DocUtils.linkForRef('attr:TileGrid.tileConstructor')} with the name\n of the custom SmartClient class to use for each tile.  For example, subclass\n ${isc.DocUtils.linkForRef('class:SimpleTile')} and override ${isc.DocUtils.linkForRef('method:Canvas.getInnerHTML','getInnerHTML()')}, returning custom\n HTML for each tile.\n <pre>\n     isc.defineClass(\"MyCustomTile\", \"SimpleTile\").addProperties({\n        getInnerHTML : function () {\n           return this.Super(\"getInnerHTML\", arguments) +\n                this.getRecord().width + \" x \" + this.getRecord().height;\n        }\n     });\n\n     isc.TileGrid.create({\n        tileConstructor:\"MyCustomTile\"\n     });\n </pre>\n <P>\n Note that you can also override tile behaviors on a per-record basis, via\n ${isc.DocUtils.linkForRef('attr:TileRecord.tileConstructor')} and ${isc.DocUtils.linkForRef('attr:TileRecord.tileProperties')}.\n </smartclient>\n <smartgwt>\n To create a completely different appearance set ${isc.DocUtils.linkForRef('attr:TileGrid.tileConstructor')} to custom Canvas\n class name. You can use SmartGWT classes too with help of Reflection. For example, you can\n extend a DynamicForm with any layout:\n <pre>\n   public class CarTile extends DynamicForm {\n     public CarTile() {\n       StaticTextItem name = new StaticTextItem(\"name\");\n       name.setShowTitle(false);\n       StaticTextItem price = new StaticTextItem(\"price\");\n       price.setShowTitle(false);\n       this.setFields(pictureItem, name, price);\n     }\n   }\n </pre>\n Register the class factory and use it by passing it's class to tileConstructor\n <pre>\n   public interface CarTileMetaFactory extends BeanFactory.MetaFactory {\n     BeanFactory<CarTile> getCarTileFactory();\n   }\n   public void onModuleLoad() {\n     GWT.create(CarTileMetaFactory.class);\n     TileGrid tileGrid = new TileGrid();\n     tileGrid.setTileConstructor(CarTile.class.getName());\n     tileGrid.draw();\n   }\n </pre>\n </smartgwt>",
        name:"tile",
        seeAlso:[
        ],
        valueType:"MultiAutoChild SimpleTile",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:SectionStackSection.showClippedTitleOnHover":{
        ref:"attr:SectionStackSection.showClippedTitleOnHover",
        flags:"IRW",
        description:"If true and the title is clipped, then a hover containing the full title of this section header\n is enabled.",
        name:"showClippedTitleOnHover",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:SectionStackSection",
        groups:[
            "hovers"
        ]
    },
    "method:ListGrid.getExpansionField":{
        ref:"method:ListGrid.getExpansionField",
        flags:"",
        description:" Returns the specially generated expansion field used when ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is\n true.\n <P>\n Called during ${isc.DocUtils.linkForRef('method:ListGrid.setFields')}, this method can be overridden to add advanced dynamic\n defaults to the expansion field (call Super, modify the default field returned by Super,\n return the modified field).  Normal customization can be handled by just setting\n ${isc.DocUtils.linkForRef('type:AutoChild')} properties, as mentioned under the docs for ${isc.DocUtils.linkForRef('attr:ListGrid.expansionField')}.\n\n",
        name:"getExpansionField",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"ListGridField"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:Canvas.setShowResizeBar":{
        ref:"method:Canvas.setShowResizeBar",
        flags:"",
        description:" When this Canvas is included as a member in a ${isc.DocUtils.linkForRef('class:Layout')}, dynamically updates whether a \n resizeBar should be shown after this member in the layout, to allow it to be resized.\n <p>\n Whether a resizeBar is actually shown also depends on the \n ${isc.DocUtils.linkForRef('attr:Layout.defaultResizeBars','defaultResizeBars')} attribute of the layout, and whether this\n Canvas is the last layout member.\n",
        name:"setShowResizeBar",
        seeAlso:[
            {
                ref:"attr:Layout.defaultResizeBars",
                description:null
            }
        ],
        params:[
            {
                description:"setting for this.showResizeBar",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "layoutMember"
        ]
    },
    "method:ListGrid.setFieldIcon":{
        ref:"method:ListGrid.setFieldIcon",
        flags:"",
        description:" Change the ${isc.DocUtils.linkForRef('attr:ListGridField.icon')} for a field after the grid is created\n",
        name:"setFieldIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"field to update",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"icon for the field",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"SCImgURL"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Canvas.getContentElement":{
        ref:"method:Canvas.getContentElement",
        flags:"A",
        description:" Returns the DOM element for this Canvas which contains the ${isc.DocUtils.linkForRef('attr:Canvas.contents')}, or\n for ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas','parent components')}, the DOM elements for any drawn\n children. This method is provided for the \n very rare cases where a programmer needs to examine the DOM hierarchy created by\n a drawn SmartClient component.\n <P>\n Direct manipulation of the DOM elements created by SmartClient components\n is not supported. SmartClient components should be rendered or cleared using\n standard methods such as ${isc.DocUtils.linkForRef('method:Canvas.draw')}, ${isc.DocUtils.linkForRef('method:Canvas.clear')}. If direct\n integration with existing DOM structures is required, this should be achieved via the\n ${isc.DocUtils.linkForRef('attr:Canvas.htmlElement')} attribute, rather than by attempting to move the\n component's outer element via native browser APIs.<br>\n The content of SmartClient components' DOM elements should also not be directly \n manipulated using native browser APIs - standard methods such as \n ${isc.DocUtils.linkForRef('method:Canvas.setContents')}, ${isc.DocUtils.linkForRef('method:Canvas.addChild')}, ${isc.DocUtils.linkForRef('method:Canvas.removeChild')},\n ${isc.DocUtils.linkForRef('method:Canvas.markForRedraw')} and ${isc.DocUtils.linkForRef('method:Canvas.redraw')} should be used instead.\n <P>\n In some cases, the element returned may match the element returned by\n ${isc.DocUtils.linkForRef('method:Canvas.getOuterElement')}, but this will not always be the case.\n <P>\n If the widget is undrawn, this method will return <code>null</code>.\n\n",
        name:"getContentElement",
        seeAlso:[
        ],
        returns:{
            description:"The outer DOM element for a drawn Canvas.",
            type:"DOMElement"
        },
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:ListGridField.valueIconSize":{
        ref:"attr:ListGridField.valueIconSize",
        flags:"IRW",
        description:"Default width and height of value icons in this field.\n Takes precedence over valueIconWidth, valueIconHeight and valueIconSize specified at\n the ListGrid level.\n Can be overridden via ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconWidth')} and {ListGridField.valueIconHeight}",
        name:"valueIconSize",
        seeAlso:[
            {
                ref:"attr:ListGrid.valueIconSize",
                description:null
            },
            {
                ref:"attr:ListGridField.valueIconWidth",
                description:null
            },
            {
                ref:"attr:ListGridField.valueIconHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "object:PortalPosition":{
        methods:[
        ],
        ref:"object:PortalPosition",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/PortalLayout"
        ],
        attrs:[
            "attr:PortalPosition.colNum",
            "attr:PortalPosition.rowNum",
            "attr:PortalPosition.position"
        ],
        description:"Represents the position of a ${isc.DocUtils.linkForRef('class:Portlet')} within a ${isc.DocUtils.linkForRef('class:PortalLayout')}, indicating the\n column, row, and position within the row.",
        name:"PortalPosition",
        seeAlso:[
        ],
        type:"object"
    },
    "method:FacetChart.formatAxisValue":{
        ref:"method:FacetChart.formatAxisValue",
        flags:"",
        description:" Return the text string to display in ${isc.DocUtils.linkForRef('attr:FacetChart.gradationLabelProperties','gradation labels')}\n given the raw value for the metric displayed on the value axis.\n <p>\n Note that the rendering of values in hovers or via ${isc.DocUtils.linkForRef('attr:FacetChart.showDataValues')} is handled\n by ${isc.DocUtils.linkForRef('method:FacetChart.formatDataValue')}.\n",
        name:"formatAxisValue",
        seeAlso:[
        ],
        params:[
            {
                description:"raw value of the metric",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"whether the raw value is for the horizontal/x-axis (true) or for the vertical/y-axis (false)",
                optional:false,
                name:"forHorizontalAxis",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"the text to display.",
            type:"String"
        },
        type:"method",
        definingClass:"class:FacetChart",
        groups:[
            "display_values"
        ]
    },
    "attr:CalendarEvent.startDate":{
        ref:"attr:CalendarEvent.startDate",
        flags:"IRW",
        description:"Date object which represents the start date of a ${isc.DocUtils.linkForRef('object:CalendarEvent')}.\n The name of this field within the CalendarEvent can be changed via\n ${isc.DocUtils.linkForRef('attr:Calendar.startDateField')}",
        name:"startDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "method:TreeGrid.recordDoubleClick":{
        ref:"method:TreeGrid.recordDoubleClick",
        flags:"",
        description:"\n Handle a doubleClick on a tree node - override of ListGrid stringMethod of same name.  If\n the node is a folder, this implementation calls ${isc.DocUtils.linkForRef('method:TreeGrid.toggleFolder')} on it.  If\n the node is a leaf, calls ${isc.DocUtils.linkForRef('method:TreeGrid.openLeaf')} on it.\n \n",
        name:"recordDoubleClick",
        seeAlso:[
            {
                ref:"method:ListGrid.recordDoubleClick",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:Tab.tabSelected":{
        ref:"method:Tab.tabSelected",
        flags:"",
        description:" Optional handler to fire when a tab is selected. As with ${isc.DocUtils.linkForRef('method:TabSet.tabSelected')} this\n method only fires when the tabset is drawn.\n\n",
        name:"tabSelected",
        seeAlso:[
            {
                ref:"method:Tab.tabDeselected",
                description:null
            }
        ],
        params:[
            {
                description:"the tabSet containing the tab.",
                optional:false,
                name:"tabSet",
                defaultValue:null,
                type:"TabSet"
            },
            {
                description:"the index of the newly selected tab",
                optional:false,
                name:"tabNum",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"the newly selected tab's pane if set",
                optional:false,
                name:"tabPane",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"the ID of the newly selected tab",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"String"
            },
            {
                description:"pointer to the selected tab object",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"tab"
            },
            {
                description:"the name of the newly selected tab",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"object:Tab"
    },
    "method:TreeGrid.folderDrop":{
        ref:"method:TreeGrid.folderDrop",
        flags:"A",
        description:"\n Process a drop of one or more nodes on a TreeGrid folder.\n <P>\n This method can be overridden to provide custom drop behaviors and is a more appropriate\n override point than the lower level ${isc.DocUtils.linkForRef('method:Canvas.drop')} handler.\n <P>\n If this is a self-drop, nodes are simply reordered. An \"update\" operation will\n be submitted to update the ${isc.DocUtils.linkForRef('attr:Tree.parentIdField','parentId')} field of the moved node(s). \n <P>\n For a drop from another widget, ${isc.DocUtils.linkForRef('method:TreeGrid.transferDragData')} is called which,\n depending on the ${isc.DocUtils.linkForRef('attr:TreeGrid.dragDataAction','dragDataAction')} specified on the source\n widget, may either remove the source nodes from the original list (<code>dragDataAction:\"move\"</code>)\n or just provide a copy to this tree (<code>dragDataAction:\"copy\"</code>).\n <P>\n In either case the new row(s) appear in the <code>folder</code> at the <code>index</code>\n specified by the arguments of the same name.\n <P>\n If this grid is databound, the new nodes will be added to the dataset by calling\n ${isc.DocUtils.linkForRef('method:DataSource.addData')}.  Further, if the new nodes were dragged from another\n databound component, and ${isc.DocUtils.linkForRef('attr:DataBoundComponent.addDropValues','addDropValues')}\n is true, ${isc.DocUtils.linkForRef('method:DataBoundComponent.getDropValues','getDropValues')} will be called for every item\n being dropped.\n <P>\n As a special case, if the <code>sourceWidget</code> is also databound and a\n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} relationship is declared from the\n <code>sourceWidget</code>'s DataSource to this TreeGrid's DataSource, the interaction will\n be treated as a \"drag recategorization\" use case such as files being placed in folders,\n employees being assigned to teams, etc.  \"update\" DSRequests will be submitted that\n change the foreignKey field in the dropped records to point to the tree folder that was the\n target of the drop.  In this case no change will be made to the Tree data as such, only to\n the dropped records. \n <P>\n For multi-record drops, Queuing is automatically used to combine all DSRequests into a\n single HTTP Request (see QuickStart Guide, Server Framework chapter).  This allows the\n server to persist all changes caused by the drop in a single transaction (and this is\n automatically done when using the built-in server DataSources with Power Edition and\n above).\n <P>\n If these default persistence behaviors are undesirable, return false to cancel them, then\n and implement your own behavior, typically by using grid.updateData() or addData() to add\n new records.\n <p><b>NOTE:</b> the records you receive in this event are the actual Records from the source\n component.  Use ${isc.DocUtils.linkForRef('method:DataSource.copyRecords')} to create a copy before modifying the records\n or using them with updateData() or addData().\n\n",
        name:"folderDrop",
        seeAlso:[
        ],
        params:[
            {
                description:"List of nodes being dropped",
                optional:false,
                name:"nodes",
                defaultValue:null,
                type:"Array of TreeNode"
            },
            {
                description:"The folder being dropped on",
                optional:false,
                name:"folder",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Within the folder being dropped on, the index at which the drop is                        occurring.  Only passed if ${isc.DocUtils.linkForRef('attr:TreeGrid.canReorderRecords')} is true.",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            },
            {
                description:"The component that is the source of the nodes (where the nodes                              were dragged from).",
                optional:false,
                name:"sourceWidget",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"optional callback to be fired when the transfer process has                        completed.  The callback will be passed a single parameter \"records\",\n                       the list of nodes actually transferred to this component (it is called\n                       \"records\" because this is logic shared with ${isc.DocUtils.linkForRef('class:ListGrid')})",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('treeDropEvents')}"
        ],
        definingClass:"class:TreeGrid"
    },
    "attr:PickList.pickListMaxWidth":{
        ref:"attr:PickList.pickListMaxWidth",
        flags:"IRW",
        description:"Maximum width for this item's pickList.\n By default if the values displayed in this pickList are wider than the specified\n ${isc.DocUtils.linkForRef('attr:PickList.pickListWidth')} the pickList will render wide enough to accomodate them.\n This property allows the developer to limit how wide the pickList will render.",
        name:"pickListMaxWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"400",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:OperationBinding.lineBreakStyle":{
        ref:"attr:OperationBinding.lineBreakStyle",
        flags:"IR",
        description:"The style of line-breaks to use in the exported output.  See ${isc.DocUtils.linkForRef('type:LineBreakStyle')} for\n more information.",
        name:"lineBreakStyle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "attr:CubeGrid.alternateRecordStyles":{
        ref:"attr:CubeGrid.alternateRecordStyles",
        flags:"IRW",
        description:"Whether alternating rows should be drawn in alternating styles, in order to create a \"ledger\"\n effect for easier reading.  If enabled, the cell style for alternate rows will have \"Dark\"\n appended to it.",
        name:"alternateRecordStyles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "group:iscServer":{
        ref:"group:iscServer",
        title:"SmartClient Server Summary",
        treeLocation:[
            "Java Server Reference"
        ],
        refs:[
        ],
        description:"The SmartClient Server is a set of Java libraries, servlets and tools that provide the key\n server-side components needed to build a complete application in the modern web\n architecture.\n <P>\n The SmartClient Server can be ${isc.DocUtils.linkForRef('group:iscInstall','integrated')} into any pre-existing Java\n application, and is designed to rapidly connect SmartClient visual components to\n pre-existing Java business logic or persistence engines.  SmartClient's Ajax request\n processing facilities can be easily integrated into Struts Actions,\n ${isc.DocUtils.linkForRef('group:springIntegration','Spring controllers')}, or custom servlets and JSPs.\n <P>\n Alternatively, the SmartClient Server provides a complete SQL and Hibernate-based\n persistence engine for new applications, with out-of-the-box servlets for processing Ajax\n data requests.\n <P>\n The SmartClient Server is optional, and SmartClient's client-side Ajax engine can be\n integrated with any server that provides HTTP access, using XML, JSON, SOAP or proprietary\n data protocols.  However any server in a modern web application will be required to provide\n most or all of the features of the SmartClient Server (described below), and the SmartClient\n Server represents a best-of-breed implementation of these facilities with a long history of\n high-volume production deployments.\n <P>\n <h4>Server enforcement of ${isc.DocUtils.linkForRef('class:Validator','Validators')}</h4>\n <P>\n Data passed from the browser can be automatically validated by the SmartClient Server.\n In contrast, when using ${isc.DocUtils.linkForRef('group:clientDataIntegration','client-side integration')},\n data arrives as HTTP params or XML messages, and you must parse values into the correct\n types (eg java.util.Date) and validate them, or use a server framework that does so.\n <P>\n <h4>High Speed Data Delivery / Data Compression</h4>\n <P>\n The SmartClient Server delivers data to and from the browser using a proprietary, maximally\n efficient protocol, providing simple Java APIs for sending and receiving data.\n <P>\n SmartClient's data protocol is:\n <ul>\n <li> automatically compressed: provides 6-8x improvement in bandwidth utilization\n <li> efficient on the server: high speed data serialization for any Java Object\n <li> efficient in the browser: faster than ordinary XML or JSON data delivery\n <li> minimal: facilities for ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields','trimming')} and\n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath','extracting')} only the data you want the browser to see\n </ul>\n <P>\n <h4>Transparent upload support</h4>\n <P>\n SmartClient provides special client and server-side support for ${isc.DocUtils.linkForRef('group:upload','file\\n upload')}, which allows single and multiple-file HTTP uploads to be performed as a background\n Ajax request without reloading the page or launching sub-windows.\n <P>\n Uploaded files arrive at the SmartClient server as Java InputStreams accessible from the\n DSRequest object, and can optionally be automatically stored via SmartClient's SQL\n subsystem.\n <P>\n <h4>Transparent Queuing / \"Batch\" Operations</h4>\n <P>\n Any request transmitted to the SmartClient Server can be combined into a \"queue\" transmitted\n as a single HTTP request, with in-order execution for all queued operations. \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','startQueue()')} starts a queue and\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendQueue','sendQueue()')} transmits it; queuing is transparent to the code\n that initiates the individual requests.  This enables:\n <ul>\n <li> re-use of data access operations across different screens\n <li> easy implementation of transaction boundaries\n <li> simplified saving and loading of screens with complex, master-detail views\n <li> guaranteed in-order processing of operations\n <li> more efficient network usage\n </ul>\n <P>\n <h4>Visual Builder</h4>\n <P>\n ${isc.DocUtils.linkForRef('group:visualBuilder','Visual Builder')} is included with the SmartClient Server, and uses\n server features such as automatic SQL binding to provide a rapid prototyping environment.\n <P>\n <h4>Automatic Bi-directional Java &lt; - &gt; JavaScript serialization and translation</h4>\n <P>\n Provides a powerful, type-safe ${isc.DocUtils.linkForRef('attr:RPCRequest.data','data transmission mechanism')} for moving\n data between a Java server and the browser. \n <P>\n Any Java objects, including Java Beans, POJOs, Java Collections, XML DOMs and all Java\n primitives, with any level of nesting, can be automatically serialized and delivered as\n JavaScript Objects to the SmartClient client-side components.\n <P>\n JavaScript Objects existing in the browser can likewise be automatically transmitted to a\n Java Server and translated to Java Objects, with any level of nesting and automatic\n preservation of primitive types.\n <P>\n <h4>SQL and Hibernate connectors</h4>\n <P>\n DataSources of serverType:\"sql\" or serverType:\"hibernate\" can generate and execute queries\n against popular SQL engines or against the Hibernate ORM system, providing SmartClient's\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s with the four standard CRUD operations (create, retrieve, update,\n delete) without writing any server-side code.  For rapid prototyping, these DataSources can\n even generate SQL tables based on the DataSource declaration, using the\n ${isc.DocUtils.linkForRef('group:adminConsole')} visual tool.\n <P>\n Server-side APIs allow server-side modification of the request before it is executed (for\n example, to enforce security) and post-processing of the request after execution (for\n example, to provide calculated values).\n <P>\n Both serverType:\"sql\" and serverType:\"hibernate\" support the field-operator-value queries\n that can be generated by using the ${isc.DocUtils.linkForRef('class:FilterBuilder')} component (see\n ${isc.DocUtils.linkForExampleId('filterBuilderBracket', 'example')}).\n <P>\n <h4>Rich, Standardized Request / Response protocol</h4>\n <P>\n The SmartClient Server provides a standardized request and response protocol designed for\n data-oriented \"CRUD\" operations (create, retrieve, update, delete).\n <P>\n This standardized protocol automatically handles ${isc.DocUtils.linkForRef('class:DSRequest','request metadata')} (paging\n parameters, requested sort order, original values of data being modified) and\n ${isc.DocUtils.linkForRef('class:DSResponse','response metadata')} (error handling, cache management, session expiration etc).\n <P>\n Similar to the impact of Struts on early web applications, this standardized protocol avoids\n developers in different groups inventing their own incompatible and redundant\n request/response protocols, and allows developers to more easily learn code they didn't\n author.\n <P>\n <h4>Bi-directional XPath binding to Java Objects</h4>\n <P>\n Most UI designs do not directly reflect the underlying Object model and so some degree of\n translation is necessary in order to populate UI components with data and apply user changes\n to the Java Object model.  This is often accomplished with brittle, difficult to understand\n data translation code sprinkled throughout the system, done in a different way for every\n screen or component.\n <P>\n SmartClient provides a standard, ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath','XPath-based approach')} to\n adapting any Java-based Object model to the requirements of the UI design.  Data relevant to\n the application UI is centrally extracted in the server-side ${isc.DocUtils.linkForRef('class:DataSource')} layer, so\n that all UI components have a consistent, unified view of the data model for both loading\n <b>and</b> saving data.\n <P>\n <h4>Broadest possible browser support</h4>\n <P>\n The SmartClient Server can compensate for facilities \n ${isc.DocUtils.linkForRef('group:platformDependencies','missing or disabled in certain browsers')},\n including ActiveX being disabled in IE6 and missing XML support in some versions\n of Apple's Safari browser.\n <P>\n <h4>Transparent Proxying</h4>\n <P>\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendProxied','Proxying')} allows SmartClient applications to access web\n services, RSS feeds, HTML content and other data services in a secure manner regardless of\n where they are located: across the enterprise or publicly available.\n <P>\n <h4>Optional ${isc.DocUtils.linkForRef('group:networkPerformance','Network Performance')} Module</h4>\n <P>\n Provides:\n <ul>\n <li> compressed delivery of SmartClient runtime, application logic and other assets such as CSS\n <li> ${isc.DocUtils.linkForRef('class:FileLoader','background download')} of SmartClient and other assets for zero\n user-perceived load time\n <li> on-the-fly stripping and combining of JavaScript (application code and data)\n <li> browser cache control\n </ul>\n <P>\n <h4>Optional Messaging Module (aka server push)</h4>\n <P>\n The ${isc.DocUtils.linkForRef('group:messaging','Messaging')} module allows the server to \"push\" messages to the client, without\n client polling, for real-time monitoring/dashboarding applications.",
        name:"iscServer",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:RichTextItem.shouldSaveValue":{
        ref:"attr:RichTextItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RichTextItem",
        groups:[
            "formValues"
        ]
    },
    "attr:Menu.keyFieldDefaults":{
        ref:"attr:Menu.keyFieldDefaults",
        flags:"IR",
        description:"Default properties for the automatically generated icon column.\n Default object includes properties to set width and to show key for this column.\n <P>\n To modify the behavior or appearance of this column, developers may set\n ${isc.DocUtils.linkForRef('attr:Menu.keyFieldProperties')} at the instance level, or override this\n object at the class level. If overriding this object, we recommend using\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} rather than replacing this object entirely.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Menu.showKeys')} for an overview of the key column.",
        name:"keyFieldDefaults",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"object",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:MultiGroupPanel.levelDownButton":{
        ref:"attr:MultiGroupPanel.levelDownButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n group-levels down in the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.levelDownButtonProperties</code> and \n <code>multiGroupPanel.levelDownButtonDefaults</code>.",
        name:"levelDownButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:ListGrid.showSelectionCanvas":{
        ref:"attr:ListGrid.showSelectionCanvas",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType','selectionType')} is set to\n <smartclient>\"single\",</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.SelectionStyle#SINGLE},</smartgwt>\n setting this property to <code>true</code> means selection will be displayed to the\n user with the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionCanvas','selectionCanvas')} and/or\n ${isc.DocUtils.linkForRef('attr:ListGrid.selectionUnderCanvas','selectionUnderCanvas')} rather than with CSS styling.\n <p>\n If <code>showSelectionCanvas</code> is set to <code>true</code>, then the\n <code>selectionUnderCanvas</code> will automatically be enabled unless\n ${isc.DocUtils.linkForRef('attr:ListGrid.showSelectionUnderCanvas','showSelectionUnderCanvas')} is set to <code>false</code>.\n <p>\n NOTE: It is recommended to use the <code>selectionUnderCanvas</code> rather than the\n <code>selectionCanvas</code> if possible because the <code>selectionCanvas</code> is\n stacked on top of the selected record and this may interfere with event handling in rare\n cases. If no interactive components are shown in the <code>selectionCanvas</code> and it\n simply provides custom styling, then the <code>selectionUnderCanvas</code> should be used\n instead.\n <p>\n With ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','frozen fields')}, the <code>selectionCanvas</code>\n is displayed only over the non-frozen fields of the selected row.",
        name:"showSelectionCanvas",
        seeAlso:[
            {
                ref:"attr:ListGrid.showSelectionUnderCanvas",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "attr:UserTask.saveToServer":{
        ref:"attr:UserTask.saveToServer",
        flags:"IR",
        description:"If saveToServer is set then associated form will perform the normal \n ${isc.DocUtils.linkForRef('method:DynamicForm.submit')}\n actions when called (typically from a ${isc.DocUtils.linkForRef('class:SubmitItem')}). By default the form submit\n action is bypassed.",
        name:"saveToServer",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "method:Class.map":{
        ref:"method:Class.map",
        flags:"",
        description:"\n Call <code>method</code> on each item in <code>argsList</code> and return the Array of results.\n\n",
        name:"map",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the method on this instance which should be called on each element of the Array",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Array of items to call the method on",
                optional:false,
                name:"items",
                defaultValue:null,
                type:"Array"
            }
        ],
        returns:{
            description:"Array of results, one per element in the passed \"items\" Array",
            type:"Array"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "method:DrawPane.getSvgString":{
        ref:"method:DrawPane.getSvgString",
        flags:"",
        description:" Converts this DrawPane to the source of an <code>&lt;svg&gt;</code> element equivalent to the\n current drawing.\n <p>\n In Pro edition and above, the returned string can be used with\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportImage')} to download an image, or with server-side APIs in\n com.isomorphic.contentexport.ImageExport to obtain various kinds of images for further\n server-side processing.\n\n",
        name:"getSvgString",
        seeAlso:[
        ],
        returns:{
            description:"the source of an <code>&lt;svg&gt;</code> element.",
            type:"String"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('chartImageExport')}"
        ],
        definingClass:"class:DrawPane"
    },
    "attr:PickListMenu.normalCellHeight":{
        ref:"attr:PickListMenu.normalCellHeight",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} is unset, base style will be derived from\n ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')} if this grid has fixed row heights and\n the specified ${isc.DocUtils.linkForRef('attr:ListGrid.cellHeight')} matches this value. Otherwise\n ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')} will be used.",
        name:"normalCellHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:PickListMenu"
    },
    "attr:TreeGrid.animateFolderMaxRows":{
        ref:"attr:TreeGrid.animateFolderMaxRows",
        flags:"IRW",
        getter:[
            "getAnimateFolderMaxRows"
        ],
        description:"If ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolders')} is true for this grid, this number can be set to designate\n the maximum number of rows to animate at a time when opening / closing a folder.",
        name:"animateFolderMaxRows",
        seeAlso:[
            {
                ref:"method:TreeGrid.getAnimateFolderMaxRows",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "animation"
        ]
    },
    "attr:ImgTab.align":{
        ref:"attr:ImgTab.align",
        flags:"IRW",
        description:"Alignment of title text",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:ImgTab",
        groups:[
            "positioning"
        ]
    },
    "attr:TimeItem.secondValues":{
        ref:"attr:TimeItem.secondValues",
        flags:"IRW",
        getter:[
            "getSecondValues"
        ],
        description:"An array of values to make available in the ${isc.DocUtils.linkForRef('attr:TimeItem.secondItem','second picker')} when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for specifying a limited set of valid Second values, or when using the \n TimeItem to record duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.secondMinValue','secondMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondMaxValue','secondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondIncrement','secondIncrement')} for another method of controlling the \n content in the second picker.",
        name:"secondValues",
        setter:[
            "setSecondValues"
        ],
        seeAlso:[
        ],
        valueType:"Array of Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:SectionItem.collapseSection":{
        ref:"method:SectionItem.collapseSection",
        flags:"",
        description:" Collapse a sectionItem, and hide all the items within the section (not including\n the header).\n",
        name:"collapseSection",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:SectionItem"
    },
    "method:GridRenderer.getCellStyle":{
        ref:"method:GridRenderer.getCellStyle",
        flags:"",
        description:" Return the CSS class for a cell. By default this method has the following implementation:<br>\n - return any custom style for the record (see ${isc.DocUtils.linkForRef('attr:GridRenderer.recordCustomStyleProperty')}) \n   if defined.<br>\n - create a style name based on the result of ${isc.DocUtils.linkForRef('method:GridRenderer.getBaseStyle')} and the \n   state of the record.<br>\n The state of the record is indicated by adding a suffix to the base style.\n There are four independent boolean states, which are combined in the order given:\n <ol>\n <li>\"Disabled\" : whether the cell is disabled; enable by setting the \"enabled\" flag on record\n     returned by getCellRecord\n <li>\"Selected\" : whether cell is selected; enable by passing a Selection object as \"selection\"\n <li>\"Over\" : mouse is over this cell; enable with showRollovers\n <li>\"Dark\" : alternating color bands; enable with alternateRowStyles\n </ol>\n For example, with a baseStyle of \"myCell\", a cell which is selected, which the mouse is over,\n and which is in a dark-colored band will get a styleName of myCellSelectedOverDark.\n <p>\n Cell Styles customizable by:\n <ul>\n <li>attaching a custom style to a record by setting \n    <code>record[this.recordCustomStyleProperty]</code> to some valid CSS style name.  \n <li>modifying the base style returned by getBaseStyle() [see that method for further \n     documentation on this]\n <li>overriding this function\n </ul>\n <p>\n \"Selected\" style can be ignored by setting ${isc.DocUtils.linkForRef('attr:GridRenderer.showSelectedStyle')} to false.\n\n",
        name:"getCellStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"record object for this row and column",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"number of the row",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS style for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "appearance"
        ]
    },
    "group:menuKeys":{
        ref:"group:menuKeys",
        refs:[
            "attr:MenuItem.keys",
            "attr:MenuItem.keyTitle"
        ],
        name:"menuKeys",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:PortalLayout.column":{
        ref:"attr:PortalLayout.column",
        flags:"A",
        description:"Automatically generated vertical ${isc.DocUtils.linkForRef('class:Layout')} used to create columns of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} via\n ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')}. Since this is an ${isc.DocUtils.linkForRef('type:AutoChild')}, you can use \n columnDefaults and columnProperties to customize the columns.\n <p>\n The column includes a menu, if ${isc.DocUtils.linkForRef('attr:PortalLayout.showColumnMenus','showColumnMenus')} is true, and a ${isc.DocUtils.linkForRef('attr:PortalLayout.rowLayout','rowLayout')} which\n actually contains the ${isc.DocUtils.linkForRef('attr:PortalLayout.row','rows')}. Therefore, if you want to style the columns as a whole,\n use columnDefaults or columnProperties, but if you want to style the layout that contains the\n rows, use rowLayoutDefaults or rowLayoutProperties.",
        name:"column",
        seeAlso:[
            {
                ref:"attr:PortalLayout.rowLayout",
                description:null
            },
            {
                ref:"attr:PortalLayout.row",
                description:null
            }
        ],
        valueType:"MultiAutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PortalLayout"
    },
    "method:Canvas.setDragTracker":{
        ref:"method:Canvas.setDragTracker",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')} is set to <code>\"tracker\"</code>, this method will be called\n (if defined), when the user starts to drag this widget. It is an opportunity to update the\n drag tracker to display something relative to this canvas.  Typical implementation will\n be to call ${isc.DocUtils.linkForRef('classMethod:EventHandler.setDragTracker')}, passing in the desired custom tracker HTML\n as a string\n",
        name:"setDragTracker",
        seeAlso:[
        ],
        returns:{
            description:"Return false to suppress bubbling, and prevent <code>setDragTracker()</code>                      from being called on this widget's ancestors.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragTracker')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:Canvas.shrinkElementOnHide":{
        ref:"attr:Canvas.shrinkElementOnHide",
        flags:"IRWA",
        description:"This is an advanced setting. If set to <code>true</code>, when a widget is\n ${isc.DocUtils.linkForRef('method:Canvas.hide','hidden')}, the widget's handle will be resized such that\n it takes up no space, in addition to having its css <code>visibility</code>\n property set to <code>\"hidden\"</code>.\n <P>\n In addition to preventing the size of this widget from impacting the\n ${isc.DocUtils.linkForRef('method:Canvas.getScrollWidth','scroll size')} of any parent widget while hidden, this\n setting works around a native bug observed in Internet Explorer 10, whereby\n an <code>&lt;IFRAME&gt;</code> element with visibility set to hidden can\n cause rendering problems, if the HTML loaded by the <code>&lt;IFRAME&gt;</code>\n contains a <code>&lt;frameset&gt;</code>. In this case the browser may\n refuse to draw other elements at the same coordinates with a lower z-index than\n the hidden frame. Setting this property to <code>true</code> works around\n this problem for cases where an <code>&lt;IFRAME&gt;</code> containing a\n <code>&lt;frameset</code> will be rendered out, for example in an\n ${isc.DocUtils.linkForRef('class:HTMLFlow')} with <code>contentsType</code> set to <code>\"page\"</code>.",
        name:"shrinkElementOnHide",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "visibility"
        ]
    },
    "method:ListGrid.setAutoFitWidthApproach":{
        ref:"method:ListGrid.setAutoFitWidthApproach",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitWidthApproach')}.\n",
        name:"setAutoFitWidthApproach",
        seeAlso:[
        ],
        params:[
            {
                description:"new AutoFitWidth approach",
                optional:false,
                name:"approach",
                defaultValue:null,
                type:"AutoFitWidthApproach"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "classMethod:RPCManager.startQueue":{
        ref:"classMethod:RPCManager.startQueue",
        flags:"",
        description:"\n Start queuing requests.  When queuing requests, an HTTP request will not be sent to\n the server until RPCManager.sendQueue() is called.\n <p>\n All requests in a given queue must go to the same actionURL and use the same transport\n (XMLHttp or frames).  If a request specifies a different actionURL or transport than\n that of the requests currently on the queue, it will be sent to the server separately,\n ahead of the queue, and a warning will be logged to the Developer Console.\n <p>\n Note that the server must process all requests sent as part of the queue before any\n response is sent to the client.  You should avoid batching a request that will take a\n long time to process on the server with any other requests because it will delay the\n response of all requests in the queue.\n\n",
        name:"startQueue",
        seeAlso:[
            {
                ref:"classMethod:RPCManager.sendQueue",
                description:null
            }
        ],
        params:[
            {
                description:"whether queuing should be enabled, default true.  Passing false                      will disable queuing but not send the queue yet, so that any\n                      queued requests will be sent along with the next\n                      send()/sendRequest()",
                optional:true,
                name:"shouldQueue",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"whether queuing was already enabled before we called",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:RPCManager",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:AdvancedHiliteEditor.invalidHilitePrompt":{
        ref:"attr:AdvancedHiliteEditor.invalidHilitePrompt",
        flags:"IR",
        description:"The message to show when the user clicks \"Save\" without entering any criteria.",
        name:"invalidHilitePrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Enter at least one rule, a color or icon, and a target field, or press 'Cancel' to abandon changes.\"",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "method:JSONEncoder.encodeDate":{
        ref:"method:JSONEncoder.encodeDate",
        flags:"",
        description:" Encode a JavaScript Date value.\n <P>\n By default, follows the ${isc.DocUtils.linkForRef('attr:JSONEncoder.dateFormat')} setting.  <smartclient>Override to do\n custom encoding.</smartclient><smartgwt>To override the date format, all Dates should be\n converted to Strings beforehand.</smartgwt>\n \n",
        name:"encodeDate",
        seeAlso:[
        ],
        params:[
            {
                description:"JavaScript date object to be serialized",
                optional:false,
                name:"theDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"value to be included in result.  <b>If this value is intended to appear                  as a String it should include quotes (\")</b>",
            type:"String"
        },
        type:"method",
        definingClass:"class:JSONEncoder"
    },
    "attr:DetailViewer.configureFieldsText":{
        ref:"attr:DetailViewer.configureFieldsText",
        flags:"IR",
        description:"The title for the Configure Fields menu item.",
        name:"configureFieldsText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Configure Fields...\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DateItem.formatEditorValue":{
        ref:"method:DateItem.formatEditorValue",
        flags:"A",
        description:" Convert this item's data value to a text value for display in this item's\n text field.\n <P>\n If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true, entirely custom date formatting and\n parsing logic may be applied via overrides to ${isc.DocUtils.linkForRef('method:DateItem.parseEditorValue')} and\n ${isc.DocUtils.linkForRef('method:DateItem.formatEditorValue')}. These methods apply to this FormItem only - \n system-wide Date and Datetime formatting and parsing may also be customized via\n the APIs on the ${isc.DocUtils.linkForRef('class:Date')} class. See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more\n on this.\n <P>\n Note: custom formatting for this item may also be achieved via the\n ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter')} which allows you to directly specify various standard\n date display formats.\n",
        name:"formatEditorValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Underlying data value to format. May be null.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"The record currently being edited by this form.      Essentially the form's current values object.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"pointer to the DynamicForm",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"pointer to the FormItem",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"display value to show in the editor.",
            type:"string"
        },
        type:"method",
        definingClass:"class:DateItem"
    },
    "attr:FormItem.showIcons":{
        ref:"attr:FormItem.showIcons",
        flags:"IRWA",
        description:"Set to false to suppress writing out any ${isc.DocUtils.linkForRef('attr:FormItem.icons')} for this item.",
        name:"showIcons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:LoginDialog.loginFailureItem":{
        ref:"attr:LoginDialog.loginFailureItem",
        flags:"IR",
        description:"Field item containing login error message (if required) in ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"loginFailureItem",
        seeAlso:[
        ],
        valueType:"AutoChild BlurbItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "classMethod:Validator.addValidators":{
        ref:"classMethod:Validator.addValidators",
        flags:"A",
        description:"  Add several new validator types at once, as though ${isc.DocUtils.linkForRef('classMethod:Validator.addValidator')} were called\n  several times.\n \n",
        name:"addValidators",
        seeAlso:[
            {
                ref:"classMethod:Validator.addValidator",
                description:null
            }
        ],
        params:[
            {
                description:"Set of validators to add.  This parameter should      be a JavaScript object where the property names are validator type names, and the\n      property values are condition functions or expressions, for example:<br>\n      &nbsp;&nbsp;&nbsp;<code>{type1:condition1, type2:condition2}</code><br>.",
                optional:false,
                name:"newValidators",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Validator",
        groups:[
            "validation"
        ]
    },
    "method:TreeGrid.getExtraIcon":{
        ref:"method:TreeGrid.getExtraIcon",
        flags:"A",
        description:" Get an additional icon to show between the open icon and folder/node icon for a particular \n node.\n <P>\n NOTE: If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is <code>\"checkbox\"</code>, this method will\n NOT be called. Extra icons cannot be shown for that appearance.\n\n",
        name:"getExtraIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"tree node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"URL for the extra icon (null if none required)",
            type:"URL"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:ListGrid.fieldVisibilitySubmenuTitle":{
        ref:"attr:ListGrid.fieldVisibilitySubmenuTitle",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid, and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields','this.canPickFields')} is true, this\n attribute will be shown as the title for the menu item which contains a submenu with items\n allowing the user to show and hide fields in the grid.",
        name:"fieldVisibilitySubmenuTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Columns\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DSRequest.exportFields":{
        ref:"attr:DSRequest.exportFields",
        flags:"IR",
        description:"The list of field-names to export.  If provided, the field-list in the exported output is \n limited and sorted as per the list.\n <P>\n If exportFields is not provided, the exported output includes all visible fields \n from the DataSource (field.hidden=false), sorted in the order they're defined.",
        name:"exportFields",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:Window.headerSrc":{
        ref:"attr:Window.headerSrc",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Window.showHeaderBackground')} is <code>true</code>, this property provides\n the URL of the background image for the header.",
        name:"headerSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]Window/headerGradient.gif\" | null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "method:Array.clearProperty":{
        ref:"method:Array.clearProperty",
        flags:"",
        description:" Delete property in each item in this array.\n",
        name:"clearProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to clear",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"returns true if any of the properties in the array had a value for the     specified property.",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "iteration"
        ]
    },
    "attr:FacetValue.width":{
        ref:"attr:FacetValue.width",
        flags:"IR",
        description:"Width of the cube grid facetValue in pixels.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"width",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"facet.width",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "classMethod:AutoTest.getObject":{
        ref:"classMethod:AutoTest.getObject",
        flags:"",
        description:" Given an ${isc.DocUtils.linkForRef('type:AutoTestLocator')}, return the live SmartClient object it refers to, if any.\n",
        name:"getObject",
        seeAlso:[
        ],
        params:[
            {
                description:"Locator String previously returned by        ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')}",
                optional:false,
                name:"locator",
                defaultValue:null,
                type:"AutoTestLocator"
            }
        ],
        returns:{
            description:"target object, or null if  unable to resolve the locator to a live object.",
            type:"Canvas or FormItem or SectionStackSection"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "attr:ListGrid.isGrouped":{
        ref:"attr:ListGrid.isGrouped",
        flags:"R",
        description:"True if this listgrid is grouped, false otherwise",
        name:"isGrouped",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:RelativeDateItem.showFutureOptions":{
        ref:"attr:RelativeDateItem.showFutureOptions",
        flags:"IR",
        description:"Should we show time-unit options in the future? If set to false, for each \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.timeUnitOptions','timeUnitOption')} we will show only past options [for example\n \"N weeks ago\"].\n <P>\n Note: this does not change the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.presetOptions')}, which show up in \n addition to the time-unit options (<i>\"N days from now\"</i>, etc). The default\n preset options include both past and future presets so developers may wish to modify the\n presets to ensure only future options are available.",
        name:"showFutureOptions",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:TabSet.tabBarPosition":{
        ref:"attr:TabSet.tabBarPosition",
        flags:"IR",
        description:"Which side of the TabSet the TabBar should appear on.",
        name:"tabBarPosition",
        seeAlso:[
        ],
        valueType:"Side",
        defaultValue:"Canvas.TOP",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('tabsOrientation')}"
        ],
        definingClass:"class:TabSet",
        groups:[
            "tabBar"
        ]
    },
    "method:FormItem.valueClipped":{
        ref:"method:FormItem.valueClipped",
        flags:"",
        description:" Is the value clipped?\n <p>\n The form item must have value clipping enabled. If a form item type supports the\n clipValue attribute, then clipValue must be true. ${isc.DocUtils.linkForRef('class:TextItem')}s and derivatives\n (e.g. ${isc.DocUtils.linkForRef('class:SpinnerItem')}) automatically clip their values.\n\n",
        name:"valueClipped",
        seeAlso:[
        ],
        returns:{
            description:"true if the value is clipped; false otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:ComboBoxItem.completeOnTab":{
        ref:"attr:ComboBoxItem.completeOnTab",
        flags:"IRW",
        description:"If true, when the pickList is showing, the user can select the current value by hitting\n the <code>Tab</code> key.\n <P>\n Note that <code>completeOnTab</code> is not compatible with ${isc.DocUtils.linkForRef('attr:ComboBoxItem.formatOnBlur')}",
        name:"completeOnTab",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:Tree.pathDelim":{
        ref:"attr:Tree.pathDelim",
        flags:"IRWA",
        description:"Specifies the delimiter between node names.  The pathDelim is used to construct a unique\n path to each node. A path can be obtained for any node by calling\n ${isc.DocUtils.linkForRef('method:Tree.getPath')} and can be used to find any node in the tree by calling\n ${isc.DocUtils.linkForRef('method:Tree.find')}.  Note that you can also hand-construct a path - in other words\n you are not required to call ${isc.DocUtils.linkForRef('method:Tree.getPath')} in order to later use\n ${isc.DocUtils.linkForRef('method:Tree.find')} to retrieve it.\n <br><br>\n The pathDelim can be any character or sequence of characters, but must be a unique string\n with respect to the text that can appear in the ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')} that's used\n for naming the nodes.  So for example, if you have the following tree:\n <pre>\n one\n   two\n     three/four\n </pre>\n Then you will be unable to find the <code>three/four</code> node using\n ${isc.DocUtils.linkForRef('method:Tree.find')} if your tree is using the default pathDelim of /.\n In such a case, you can use a different pathDelim for the tree.  For example if you used |\n for the path delim, then you can find the <code>three/four</code> node in the tree above by\n calling <code>tree.find(\"one|two|three/four\")</code>.\n <br><br>\n The pathDelim is used only by ${isc.DocUtils.linkForRef('method:Tree.getPath')} and ${isc.DocUtils.linkForRef('method:Tree.find')} and\n does not affect any aspect of the tree structure or other forms of tree navigation (such as\n via ${isc.DocUtils.linkForRef('method:Tree.getChildren')}).",
        name:"pathDelim",
        seeAlso:[
            {
                ref:"attr:Tree.nameProperty",
                description:null
            },
            {
                ref:"method:Tree.find",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"/\"",
        type:"attr",
        definingClass:"class:Tree"
    },
    "method:FormItem.blurItem":{
        ref:"method:FormItem.blurItem",
        flags:"",
        description:"\t\t\tTakes focus from this form item's focusable element.\n",
        name:"blurItem",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling",
            "focus"
        ]
    },
    "attr:ComboBoxItem.cachePickListResults":{
        ref:"attr:ComboBoxItem.cachePickListResults",
        flags:"IR",
        description:"For databound pickLists (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}), by default SmartClient\n will cache and re-use datasets shown by different pickLists displayed by different\n SelectItems in an LRU (least recently used) caching pattern.\n <P>\n Setting this flag to false avoids this caching for situations where it is too\n aggressive.\n <p>\n Note that this does not control re-use of data <b>within a single pickList</b>.  To\n control when client-side filtering is used in ComboBoxItem, see\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.useClientFiltering')} and ${isc.DocUtils.linkForRef('attr:ComboBoxItem.filterLocally')}.",
        name:"cachePickListResults",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:TileLayout.autoWrapLines":{
        ref:"attr:TileLayout.autoWrapLines",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('type:LayoutPolicy')} is \"flow\", should we automatically start a new line when there's\n not enough room to fit the next tile on the same line?\n <P>\n If set to false, a new line will only be started if a tile specifies tile.startLine or\n tile.endLine.",
        name:"autoWrapLines",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutPolicy"
        ]
    },
    "attr:FormulaBuilder.defaultNewFieldTitle":{
        ref:"attr:FormulaBuilder.defaultNewFieldTitle",
        flags:"IRWA",
        description:"The default value for new Formula and Summary fields.",
        name:"defaultNewFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"New Field\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.canDragRecordsOut":{
        ref:"attr:ListGrid.canDragRecordsOut",
        flags:"IRW",
        description:"Indicates whether records can be dragged from this listGrid and dropped elsewhere.",
        name:"canDragRecordsOut",
        seeAlso:[
            {
                ref:"attr:ListGridRecord.canDrag",
                description:null
            },
            {
                ref:"attr:ListGridRecord.canAcceptDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListMove')}",
            "${isc.DocUtils.linkForExampleId('recordsAcrossWindows')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dragging"
        ]
    },
    "method:DataBoundComponent.setHiliteState":{
        ref:"method:DataBoundComponent.setHiliteState",
        flags:"",
        description:" Set the current hilites based on a hiliteState String previously returned from\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.getHiliteState')}.\n",
        name:"setHiliteState",
        seeAlso:[
        ],
        params:[
            {
                description:"hilites state encoded as a String",
                optional:false,
                name:"hiliteState",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "viewState"
        ]
    },
    "classMethod:Page.unregisterKey":{
        ref:"classMethod:Page.unregisterKey",
        flags:"",
        description:" Clears an action registered to fire on a specific a keyPress event via the ${isc.DocUtils.linkForRef('classMethod:Page.registerKey')}\n method. \n",
        name:"unregisterKey",
        seeAlso:[
            {
                ref:"classMethod:Page.registerKey",
                description:null
            }
        ],
        params:[
            {
                description:"Name of key to clear registry entries for.",
                optional:false,
                name:"actionID",
                defaultValue:null,
                type:"KeyName"
            },
            {
                description:"target specified when the action was registered for the key.",
                optional:true,
                name:"target",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "KeyRegistry"
        ]
    },
    "attr:HiliteRule.iconFieldTitle":{
        ref:"attr:HiliteRule.iconFieldTitle",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('attr:FormItem.title','title')} of the 'Icon' picker.",
        name:"iconFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Icon\"",
        type:"attr",
        definingClass:"class:HiliteRule",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.modalMask":{
        ref:"attr:Window.modalMask",
        flags:"R",
        description:"A ScreenSpan instance used to darken the rest of a page when a modal window is\n active. To use, set ${isc.DocUtils.linkForRef('attr:Window.showModalMask')} to true, add a CSS style \n \"modalMask\" to the active skin (generally with background-color set), \n and adjust ${isc.DocUtils.linkForRef('attr:Window.modalMaskOpacity')}.",
        name:"modalMask",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "modal",
            "appearance"
        ]
    },
    "attr:ListGrid.recordEnabledProperty":{
        ref:"attr:ListGrid.recordEnabledProperty",
        flags:"IR",
        description:"Property name on a record that will be checked to determine whether a record is enabled.\n <P>\n Setting this property on a record will effect the visual style and interactivity of\n the record.  If set to <code>false</code> the record (row in a ${isc.DocUtils.linkForRef('class:ListGrid')} or\n ${isc.DocUtils.linkForRef('class:TreeGrid')}) will not highlight when the mouse moves over it, nor will it respond to\n mouse clicks.",
        name:"recordEnabledProperty",
        seeAlso:[
            {
                ref:"attr:ListGridRecord.enabled",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"enabled\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('disabledRows')}"
        ],
        definingClass:"class:ListGrid"
    },
    "class:ValuesManager":{
        methods:[
            "method:ValuesManager.editNewRecord",
            "method:ValuesManager.editRecord",
            "method:ValuesManager.setSaveOperationType",
            "method:ValuesManager.isNewRecord",
            "method:ValuesManager.getSaveOperationType",
            "method:ValuesManager.editSelectedData",
            "method:ValuesManager.saveData",
            "method:ValuesManager.submit",
            "method:ValuesManager.cancel",
            "method:ValuesManager.filterData",
            "method:ValuesManager.fetchData",
            "method:ValuesManager.synchronizeMembers",
            "method:ValuesManager.setDataSource",
            "method:ValuesManager.getDataSource",
            "method:ValuesManager.getItem",
            "method:ValuesManager.getMembers",
            "method:ValuesManager.getMember",
            "method:ValuesManager.getMemberForField",
            "method:ValuesManager.validate",
            "method:ValuesManager.getValidatedValues",
            "method:ValuesManager.setErrors",
            "method:ValuesManager.addFieldErrors",
            "method:ValuesManager.setFieldErrors",
            "method:ValuesManager.clearErrors",
            "method:ValuesManager.clearFieldErrors",
            "method:ValuesManager.getErrors",
            "method:ValuesManager.getFieldErrors",
            "method:ValuesManager.hasErrors",
            "method:ValuesManager.hasFieldErrors",
            "method:ValuesManager.showErrors",
            "method:ValuesManager.showFieldErrors",
            "method:ValuesManager.getValues",
            "method:ValuesManager.setValues",
            "method:ValuesManager.clearValues",
            "method:ValuesManager.getMemberValues",
            "method:ValuesManager.setMemberValues",
            "method:ValuesManager.rememberValues",
            "method:ValuesManager.getOldValues",
            "method:ValuesManager.getChangedValues",
            "method:ValuesManager.resetValues",
            "method:ValuesManager.valuesHaveChanged",
            "method:ValuesManager.getValue",
            "method:ValuesManager.setValue",
            "method:ValuesManager.clearValue",
            "method:ValuesManager.addMember",
            "method:ValuesManager.addMembers",
            "method:ValuesManager.removeMember",
            "method:ValuesManager.removeMembers",
            "method:ValuesManager.handleHiddenValidationErrors",
            "method:ValuesManager.submitValues"
        ],
        exampleConfig:"ValuesManager.xml",
        ref:"class:ValuesManager",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:ValuesManager.getById"
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:ValuesManager.saveOperationType",
            "attr:ValuesManager.suppressValidationErrorCallback",
            "attr:ValuesManager.dataSource",
            "attr:ValuesManager.addOperation",
            "attr:ValuesManager.updateOperation",
            "attr:ValuesManager.removeOperation",
            "attr:ValuesManager.members",
            "attr:ValuesManager.disableValidation",
            "attr:ValuesManager.autoSynchronize"
        ],
        description:"The ValuesManager manages data from multiple member forms.\n <P>\n If a single logical form needs to be separated into multiple DynamicForm instances for\n Layout purposes (for example, spanning one logical form across multiple Tabs), a\n ValuesManager can be used to make the forms act as one logical form, supporting all\n value-related APIs otherwise called on DynamicForm directly.\n <P>\n A ValuesManager has no visual representation - it is strictly a logical entity, and the\n member forms provide the user interface.  You can initialize a ValuesManager with a set of\n member forms (by setting ${isc.DocUtils.linkForRef('attr:ValuesManager.members')} at init) or add and remove member\n forms dynamically.\n <P>\n Calling ${isc.DocUtils.linkForRef('method:ValuesManager.setValues')} on a ValuesManager will automatically route new\n field values to whichever member form is showing an editor for that field.  Likewise,\n calling ${isc.DocUtils.linkForRef('method:ValuesManager.validate')} will validate all member forms, and\n ${isc.DocUtils.linkForRef('method:ValuesManager.saveData')} will initiate a save operation which aggregates values from\n all member forms.\n <P>\n Like a DynamicForm, a ValuesManager can be databound by setting\n ${isc.DocUtils.linkForRef('attr:ValuesManager.dataSource')}.  In this case all member forms must also be bound to the\n same DataSource.\n <P>\n In general, when working with a ValuesManager and its member forms, call APIs on the\n ValuesManager whenever you are dealing with values that span multiple forms, and only call\n APIs on member forms that are specific to that form or its fields.\n <P>\n Note that, just as a DynamicForm can track values that are not shown in any FormItem, a\n ValuesManager may track values for which there is no FormItem in any member form.  However,\n when using a ValuesManager these extra values are only allowed on the ValuesManager itself.\n Member forms will not track values for which they do not have FormItems.",
        name:"ValuesManager",
        seeAlso:[
            {
                ref:"group:memoryLeaks",
                description:null
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('formSplitting')}"
        ]
    },
    "method:ListGrid.getExportBGColor":{
        ref:"method:ListGrid.getExportBGColor",
        flags:"",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData','exportData()')} or\n${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData()')}, background color to use \nfor the cell at the given rowNum and colNum.\n <p>\nSee ${isc.DocUtils.linkForRef('group:exportBGColor')} for an overview.\n\n",
        name:"getExportBGColor",
        seeAlso:[
        ],
        params:[
            {
                description:"row number of cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"the record object behind the row being exported",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"background color to use for the cell, or null to use the default                 background color",
            type:"CSSColor"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "exportBackgroundColor"
        ]
    },
    "method:Array.setLength":{
        ref:"method:Array.setLength",
        flags:"",
        description:" Set the length of this list.\n <P>\n If the length of the list is shortened, any elements past the new length of the list are removed.\n If the length is increased, all positions past the old length have the value\n <code>undefined</code>.\n\n",
        name:"setLength",
        seeAlso:[
        ],
        params:[
            {
                description:"new length",
                optional:false,
                name:"length",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "attr:DrawKnob.knobShape":{
        ref:"attr:DrawKnob.knobShape",
        flags:"R",
        description:"The ${isc.DocUtils.linkForRef('class:DrawItem')} instance rendered into this DrawKnob's drawPane",
        name:"knobShape",
        seeAlso:[
        ],
        valueType:"AutoChild DrawItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawKnob"
    },
    "method:StretchImg.setState":{
        ref:"method:StretchImg.setState",
        flags:"",
        description:" Set the specified image's state to newState and update the displayed image given by\n whichPart, or set the state for all images to newState and update the displayed images\n if whichPart is not provided.\n",
        name:"setState",
        seeAlso:[
        ],
        params:[
            {
                description:"name for the new state (\"off\", \"down\", etc)",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"string"
            },
            {
                description:"name of the piece to set (\"start\", \"stretch\" or \"end\")\t\t\t\t\t\t\t\t\t\t\tif not specified, sets them all",
                optional:true,
                name:"whichPart",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "method:ResultTree.dataArrived":{
        ref:"method:ResultTree.dataArrived",
        flags:"",
        description:" This callback fires whenever the resultTree receives new nodes from the server, after\n the new nodes have been integrated into the tree.\n \n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"The parentNode for which children were just loaded",
                optional:false,
                name:"parentNode",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:ResultTree"
    },
    "method:Gauge.getSectorLabelContents":{
        ref:"method:Gauge.getSectorLabelContents",
        flags:"",
        description:" Gets the label contents of the label for the sector at sectorIndex.\n\n",
        name:"getSectorLabelContents",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the target sector.",
                optional:false,
                name:"sectorIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"the label contents of the sector's label.",
            type:"String"
        },
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:SpinnerItem.decreaseIconProperties":{
        ref:"attr:SpinnerItem.decreaseIconProperties",
        flags:"IR",
        description:"FormItemIcon properties applied to the ${isc.DocUtils.linkForRef('attr:SpinnerItem.decreaseIcon','decreaseIcon')} AutoChild of this\n SpinnerItem.",
        name:"decreaseIconProperties",
        seeAlso:[
        ],
        valueType:"FormItemIcon Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "attr:DetailViewer.data":{
        ref:"attr:DetailViewer.data",
        flags:"IRW",
        description:"A single record object or an array of them, specifying data. Note that DetailViewers do\n not observe changes to the data array (in other words they will not automatically\n re-draw when the data provided via this property is altered).",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
        ],
        valueType:"Array[] of DetailViewerRecord | Array[] of Record | RecordList",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "basics"
        ]
    },
    "classAttr:RPCManager.defaultTransport":{
        ref:"classAttr:RPCManager.defaultTransport",
        flags:"IRW",
        description:"Selects the transport use for RPC requests by default.  You can override this setting on\n a per-request basis by setting ${isc.DocUtils.linkForRef('attr:RPCRequest.transport')}.",
        name:"defaultTransport",
        seeAlso:[
            {
                ref:"attr:RPCRequest.transport",
                description:null
            }
        ],
        valueType:"RPCTransport",
        defaultValue:"\"xmlHttpRequest\"",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "method:Gauge.getNumSectors":{
        ref:"method:Gauge.getNumSectors",
        flags:"",
        description:" Gets the number of sectors.\n\n",
        name:"getNumSectors",
        seeAlso:[
        ],
        returns:{
            description:"the number of sectors on this gauge.",
            type:"int"
        },
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:OperationBinding.mail":{
        ref:"attr:OperationBinding.mail",
        flags:"IR",
        description:"Definition of an email message that will be sent as an after-effect of selecting or updating\n data.\n <p>\n Note that if a fixed number of different messages need to be sent, multiple \n <code>&lt;mail&gt;</code> tags may be specified.  For example, one mail could be sent to an \n admin address, and a different message to every member of a user group.",
        name:"mail",
        seeAlso:[
        ],
        valueType:"Mail",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "mail"
        ]
    },
    "classMethod:Validator.addValidator":{
        ref:"classMethod:Validator.addValidator",
        flags:"A",
        description:" Add a new validator type that can be specified as ${isc.DocUtils.linkForRef('attr:Validator.type')} anywhere\n validators are declared, such as ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')} or\n ${isc.DocUtils.linkForRef('attr:FormItem.validators')}.\n <br>\n The <code>condition</code> argument should be a method of the same signature as\n ${isc.DocUtils.linkForRef('method:Validator.condition')}.\n <P>\n This method is essentially a shortcut for building a ${isc.DocUtils.linkForRef('object:validatorDefinition')} object\n and passing that to ${isc.DocUtils.linkForRef('classMethod:Validator.addValidatorDefinition')}\n\n",
        name:"addValidator",
        seeAlso:[
            {
                ref:"classMethod:Validator.addValidators",
                description:null
            }
        ],
        params:[
            {
                description:"type name for the new validator",
                optional:false,
                name:"type",
                defaultValue:null,
                type:"String"
            },
            {
                description:"function or expression to evaluate to determine whether                                 validation was successful",
                optional:false,
                name:"condition",
                defaultValue:null,
                type:"StringMethod"
            }
        ],
        type:"classMethod",
        definingClass:"class:Validator",
        groups:[
            "validation"
        ]
    },
    "attr:ColorPicker.moreButtonTitle":{
        ref:"attr:ColorPicker.moreButtonTitle",
        flags:"IR",
        description:"The title for the button that switches to a more complex view.",
        name:"moreButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"More &gt;&gt;\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:FacetChart.invalidPolynomialDegreeMessage":{
        ref:"classAttr:FacetChart.invalidPolynomialDegreeMessage",
        flags:"IRW",
        description:"Warning message issued when an invalid polynomial degree is entered into the prompt dialog created\n by the <code>\"Polynomial Degree...\"</code> option in the context menu for scatter plots.",
        name:"invalidPolynomialDegreeMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The regression polynomial degree must be a positive integer.\"",
        type:"classAttr",
        definingClass:"class:FacetChart",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:SelectItem.defaultToFirstOption":{
        ref:"attr:SelectItem.defaultToFirstOption",
        flags:"IRW",
        description:"Select the first option as the default value for this SelectItem. \n <P>\n If options are derived from a dataSource, the first value returned by the server will be\n used, otherwise the first value in the valueMap.  Note that setting this property to\n true will trigger a fetch at soon as the form is created, because the form will try to\n establish a default value at that time.\n <P>\n If enabled, this setting overrides ${isc.DocUtils.linkForRef('attr:SelectItem.defaultValue')} and\n ${isc.DocUtils.linkForRef('method:SelectItem.defaultDynamicValue')}.",
        name:"defaultToFirstOption",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "method:ListGrid.showField":{
        ref:"method:ListGrid.showField",
        flags:"",
        description:" Force a field to be shown. This method does not add new fields to the grid,\n it simply changes field visibility. If a field.showIf expression exists, it will be\n destroyed.\n <P>\n Note: for showing multiple fields it is more efficient to call ${isc.DocUtils.linkForRef('method:ListGrid.showFields')} than\n to call this method repeatedly.\n\n",
        name:"showField",
        seeAlso:[
        ],
        params:[
            {
                description:"field to show",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"String | ListGridField"
            },
            {
                description:"If passed, don't resize non-explicitly sized columns                                       to fill the available space.",
                optional:true,
                name:"suppressRelayout",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('columnOrder')}"
        ],
        definingClass:"class:ListGrid"
    },
    "classMethod:Log.clearPriority":{
        ref:"classMethod:Log.clearPriority",
        flags:"",
        description:" Clear the priority setting for a particular category, so that the category's effective\n priority returns to <code>Log.defaultPriority</code><br>\n If the optional second parameter is passed, the specific priority setting for the \n category on that object will be cleared, so logs in that category on that object will\n be logged at the global priority level for the category.\n\n",
        name:"clearPriority",
        seeAlso:[
        ],
        params:[
            {
                description:"category name",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Optional instance or class object - if passed                                        clear logging priority for the appropriate category\n                                        on that object.",
                optional:true,
                name:"object",
                defaultValue:null,
                type:"Class or Instance object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:ListPropertiesPane.startNumberFieldTitle":{
        ref:"attr:ListPropertiesPane.startNumberFieldTitle",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('attr:FormItem.title','title')} of the ${isc.DocUtils.linkForRef('attr:ListPropertiesPane.startNumberField','startNumberField')}.",
        name:"startNumberFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Start at\"",
        type:"attr",
        definingClass:"class:ListPropertiesPane",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Label.showDownIcon":{
        ref:"attr:Label.showDownIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the mouse goes\n down on the button.",
        name:"showDownIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:MetricSettings.showDataValues":{
        ref:"attr:MetricSettings.showDataValues",
        flags:"IR",
        description:"Should data values be shown as text labels near the shape representing the value, for example,\n above columns of a column chart, or adjacent to points in a line chart?\n <p>\n If set to false, then data values will not be shown.\n <p>\n If set to true, data values will be shown unless the data density is high enough that\n labels will potentially overlap, in which case, data values will not be shown and\n ${isc.DocUtils.linkForRef('attr:MetricSettings.showValueOnHover')} will be enabled instead.",
        name:"showDataValues",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:ListGrid.filterButtonProperties":{
        ref:"attr:ListGrid.filterButtonProperties",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is true, this attribute may be used to customize the\n filter button shown to the right of the filterEditor row.",
        name:"filterButtonProperties",
        seeAlso:[
        ],
        valueType:"Button properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.selectRecord":{
        ref:"method:ListGrid.selectRecord",
        flags:"",
        description:" Select/deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n <P>\n Note that this method selects records unconditionally, allowing multiple selected\n records, even when ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType')} is \"single\".  To enforce mutually-exclusive\n record-selection, use ${isc.DocUtils.linkForRef('method:ListGrid.selectSingleRecord')}.\n",
        name:"selectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to select",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "class:ImgTab":{
        methods:[
        ],
        ref:"class:ImgTab",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:ImgTab.capSize",
            "attr:ImgTab.skinImgDir",
            "attr:ImgTab.labelSkinImgDir",
            "attr:ImgTab.baseStyle",
            "attr:ImgTab.titleStyle",
            "attr:ImgTab.src",
            "attr:ImgTab.showRollOver",
            "attr:ImgTab.showFocus",
            "attr:ImgTab.showFocused",
            "attr:ImgTab.align"
        ],
        description:"Specialized StretchImgButton used by TabSet/TabBar for tabs",
        name:"ImgTab",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSourceField.group":{
        ref:"attr:DataSourceField.group",
        flags:"IR",
        description:"For use in ${isc.DocUtils.linkForRef('group:componentSchema')}, indicates what group to place the property in when\n editing in Visual Builder.",
        name:"group",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentSchema"
        ]
    },
    "attr:TextItem.emptyStringValue":{
        ref:"attr:TextItem.emptyStringValue",
        flags:"IRW",
        description:"How should an empty string entered by the user be stored?\n This value is typically set to <code>null</code> or <code>\"\"</code>.\n <P>\n Note that a call to ${isc.DocUtils.linkForRef('method:FormItem.setValue','setValue(null)')} or ${isc.DocUtils.linkForRef('method:FormItem.setValue','setValue(\"\")')}\n automatically updates this property to ensure that \"empty\" values are stored in a \n consistent format.",
        name:"emptyStringValue",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "formValues"
        ]
    },
    "attr:Layout.locateMembersType":{
        ref:"attr:Layout.locateMembersType",
        flags:"IRWA",
        description:"${isc.DocUtils.linkForRef('type:LocatorTypeStrategy')} to use when finding members within this layout.",
        name:"locateMembersType",
        seeAlso:[
        ],
        valueType:"LocatorTypeStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "autoTest"
        ]
    },
    "attr:Scrollbar.trackEndWidth":{
        ref:"attr:Scrollbar.trackEndWidth",
        flags:"IRA",
        description:"The minimum pixel width of the track end segments (if enabled with showTrackEnds).",
        name:"trackEndWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"12",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "track"
        ]
    },
    "method:ValuesManager.saveData":{
        ref:"method:ValuesManager.saveData",
        flags:"",
        description:"\n Validate and then save the form's current values to the ${isc.DocUtils.linkForRef('class:DataSource')} this form is\n bound to.\n <p>\n If client-side validators are defined, they are executed first, and if any errors are\n found the save is aborted and the form will show the errors.\n <p>\n If client-side validation passes, a ${isc.DocUtils.linkForRef('class:DSRequest')} will be sent, exactly as though\n ${isc.DocUtils.linkForRef('method:DataSource.addData')} or ${isc.DocUtils.linkForRef('method:DataSource.updateData')} had been called with \n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','the form\\'s values')} as data.  The\n ${isc.DocUtils.linkForRef('attr:DSRequest.operationType')} will be either \"update\" or \"add\", depending on the\n current ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOperationType')}.\n <P>\n On either a client-side or server-side validation failure, validation errors will be\n displayed in the form.  Visible items within a DynamicForm will be redrawn to display\n errors. Validation failure occurring on hidden items, or DataSource fields with no \n associated form items may be handled via ${isc.DocUtils.linkForRef('method:DynamicForm.handleHiddenValidationErrors')}\n or ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')}.\n <P>\n In the case of a validation error, the callback will <b>not</b> be called by default\n since the form has already handled the failed save by displaying the validation errors\n to the user.  If you need to do something additional in this case, you can set\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')} via the <code>requestProperties</code> parameter to\n force your callback to be invoked.  However, first consider:\n <ul>\n <li> if you are trying to customize display of validation errors, there are several\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','built-in modes')} and ${isc.DocUtils.linkForRef('method:DynamicForm.showErrors')} may be a better\n place to put customizations.\n <li> for unrecoverable general errors (eg server is down),\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError','central error handling')} in invoked, so consider placing\n customizations there unless an unrecoverable error should be handled specially by this\n specific form.\n </ul>\n\n",
        name:"saveData",
        seeAlso:[
        ],
        params:[
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('addOperation')}"
        ],
        definingClass:"class:ValuesManager",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "group:formIcons":{
        ref:"group:formIcons",
        refs:[
            "method:FormItemIcon.click",
            "method:FormItemIcon.keyPress",
            "method:FormItem.iconClick",
            "method:FormItem.iconKeyPress",
            "object:FormItemIcon",
            "attr:FormItem.disableIconsOnReadOnly",
            "attr:FormItem.icons",
            "attr:FormItem.defaultIconSrc",
            "attr:FormItem.showOverIcons",
            "attr:FormItem.showFocusedIcons",
            "attr:FormItem.iconHSpace",
            "attr:FormItem.iconVAlign",
            "attr:FormItem.iconHeight",
            "attr:FormItem.iconWidth",
            "attr:FormItem.iconPrompt",
            "attr:FormItem.showIcons",
            "attr:FormItemIcon.src",
            "attr:FormItemIcon.showOver",
            "attr:FormItemIcon.showFocused",
            "attr:FormItemIcon.showRTL",
            "attr:FormItemIcon.showFocusedWithItem",
            "attr:FormItemIcon.neverDisable",
            "attr:FormItemIcon.disableOnReadOnly",
            "attr:FormItemIcon.tabIndex",
            "attr:FormItemIcon.width",
            "attr:FormItemIcon.height",
            "attr:FormItemIcon.prompt",
            "attr:FormItemIcon.hspace",
            "attr:LinkItem.disableIconsOnReadOnly",
            "attr:LinkItem.iconVAlign",
            "attr:TextAreaItem.iconVAlign"
        ],
        name:"formIcons",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.scrollToRow":{
        ref:"method:ListGrid.scrollToRow",
        flags:"",
        description:" Scroll the grid to specified row such that the row appears near the center of the\n viewport, loading data if necessary.\n <P>\n See ${isc.DocUtils.linkForRef('method:ListGrid.scrollToCell')} for a full description of how\n this method interacts with incremental loading and rendering of data.\n\n",
        name:"scrollToRow",
        seeAlso:[
        ],
        params:[
            {
                description:"Row index of the cell to scroll into view",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Vertical position of scrolled row (optional)",
                optional:true,
                name:"yPosition",
                defaultValue:null,
                type:"VerticalAlignment"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "scrolling"
        ]
    },
    "attr:TextItem.maskPadChar":{
        ref:"attr:TextItem.maskPadChar",
        flags:"IRWA",
        description:"Character that is used to fill required empty mask positions\n to display text while control has no focus.",
        name:"maskPadChar",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\" \"",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "method:DrawCurve.moveTo":{
        ref:"method:DrawCurve.moveTo",
        flags:"",
        description:" Sets start, end and control points of this curve\n\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new x coordinate in pixels",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new y coordinate in pixels",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "type:SCClassName":{
        ref:"type:SCClassName",
        description:"Name of a SmartClient Class, that is, a Class that has been created via\n ${isc.DocUtils.linkForRef('classMethod:isc.defineClass')}, including Classes built into SmartClient, such as \"ListGrid\".",
        name:"SCClassName",
        seeAlso:[
        ],
        type:"type"
    },
    "classMethod:DrawItem.computeAngle":{
        ref:"classMethod:DrawItem.computeAngle",
        flags:"",
        description:" Computes the angle in degrees from the positive X axis to the difference vector\n <nobr><b>v</b><sub>2</sub> - <b>v</b><sub>1</sub></nobr> between the two given vectors.\n",
        name:"computeAngle",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate of <b>v</b><sub>1</sub>",
                optional:false,
                name:"px1",
                defaultValue:null,
                type:"double"
            },
            {
                description:"Y coordinate of <b>v</b><sub>1</sub>",
                optional:false,
                name:"py1",
                defaultValue:null,
                type:"double"
            },
            {
                description:"X coordinate of <b>v</b><sub>2</sub>",
                optional:false,
                name:"px2",
                defaultValue:null,
                type:"double"
            },
            {
                description:"Y coordinate of <b>v</b><sub>2</sub>",
                optional:false,
                name:"py2",
                defaultValue:null,
                type:"double"
            }
        ],
        returns:{
            description:"the angle in degrees, in the range [0, 360).",
            type:"double"
        },
        type:"classMethod",
        definingClass:"class:DrawItem"
    },
    "method:Calendar.refreshEvent":{
        ref:"method:Calendar.refreshEvent",
        flags:"",
        description:" Refreshes the event's canvas in the current view.  Has no effect in the \n ${isc.DocUtils.linkForRef('attr:Calendar.monthView','monthView')}.\n\n",
        name:"refreshEvent",
        seeAlso:[
        ],
        params:[
            {
                description:"The event object to refresh in the current view",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:DetailViewerField.type":{
        ref:"attr:DetailViewerField.type",
        flags:"IR",
        description:"Specifies the type of this DetailViewerField.  By default (value is <code>null</code>)\n the field shows a field title on the left and the field value on the right.  There are\n four special values for this attribute:\n <ul>\n <li>\"header\" - If you specify type \"header\", the field spans both the field name and\n field value columns and contains text defined in the ${isc.DocUtils.linkForRef('attr:DetailViewerField.value')}\n attribute with the style specified by ${isc.DocUtils.linkForRef('attr:DetailViewer.headerStyle')}.  You can use this\n field type as a titled separator.\n <li>\"separator\" - If you specify type \"separator\", the field spans both the field name\n and the field value columns with no text, and is styled using the style specified via\n ${isc.DocUtils.linkForRef('attr:DetailViewer.separatorStyle')}.  The height of the separator field can be controlled\n via ${isc.DocUtils.linkForRef('attr:DetailViewerField.height')}.\n <li>\"image\" For viewing, a thumbnail image is rendered in the field.  The URL of the\n image is the value of the field, and should be absolute. The size of the image is\n controlled by ${isc.DocUtils.linkForRef('attr:DetailViewerField.imageSize')},\n ${isc.DocUtils.linkForRef('attr:DetailViewerField.imageWidth')}, ${isc.DocUtils.linkForRef('attr:DetailViewerField.imageHeight')}\n <li><p>\"link\" For viewing, a clickable html link (using an HTML anchor tag: &lt;A&gt;)\n is rendered in the field.  The target URL is the value of the field, which is also the\n default display value.  You can override the display value by setting\n ${isc.DocUtils.linkForRef('attr:DetailViewerRecord.linkText')} or ${isc.DocUtils.linkForRef('attr:DetailViewerField.linkText')}.</p>\n <p>\n Clicking the link opens the URL in a new window by default.  To change this behavior,\n you can set <code>field.target</code>, which works identically to the \"target\"\n attribute on an HTML anchor (&lt;A&gt;) tag.  See ${isc.DocUtils.linkForRef('attr:DetailViewerField.target')} for\n more information.</p></li>\n </ul>",
        name:"type",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "method:TabSet.scrollBack":{
        ref:"method:TabSet.scrollBack",
        flags:"",
        description:" If there is not enough space to display all the tabs in this tabSet, this method will \n scroll the previous tab (that first tab that is clipped at the beginning of the tab-bar) \n into view.\n",
        name:"scrollBack",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "class:SplitPane":{
        methods:[
            "method:SplitPane.setAddHistoryEntries",
            "method:SplitPane.setCurrentPane",
            "method:SplitPane.setDetailToolButtons",
            "method:SplitPane.setPageOrientation",
            "method:SplitPane.setShowLeftButton",
            "method:SplitPane.setLeftButtonTitle",
            "method:SplitPane.setShowRightButton",
            "method:SplitPane.setRightButtonTitle",
            "method:SplitPane.setNavigationPane",
            "method:SplitPane.setNavigationTitle",
            "method:SplitPane.showNavigationPane",
            "method:SplitPane.setListPane",
            "method:SplitPane.showListPane",
            "method:SplitPane.setListTitle",
            "method:SplitPane.setDetailPane",
            "method:SplitPane.showDetailPane",
            "method:SplitPane.setDetailTitle",
            "method:SplitPane.setDetailNavigationControl",
            "method:SplitPane.navigationClick",
            "method:SplitPane.paneChanged"
        ],
        ref:"class:SplitPane",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:SplitPane.addHistoryEntries",
            "attr:SplitPane.deviceMode",
            "attr:SplitPane.pageOrientation",
            "attr:SplitPane.showResizeBars",
            "attr:SplitPane.navigationBar",
            "attr:SplitPane.showNavigationBar",
            "attr:SplitPane.backButton",
            "attr:SplitPane.currentPane",
            "attr:SplitPane.navigationTitle",
            "attr:SplitPane.navigationPane",
            "attr:SplitPane.listTitle",
            "attr:SplitPane.listPane",
            "attr:SplitPane.listToolStrip",
            "attr:SplitPane.showListToolStrip",
            "attr:SplitPane.detailTitle",
            "attr:SplitPane.detailPane",
            "attr:SplitPane.detailToolStrip",
            "attr:SplitPane.showDetailToolStrip",
            "attr:SplitPane.detailToolButtons",
            "attr:SplitPane.showLeftButton",
            "attr:SplitPane.showRightButton",
            "attr:SplitPane.detailNavigationControl"
        ],
        description:"A device- and orientation-sensitive layout that implements the common pattern of rendering\n two panes side-by-side on desktop devices and on tablets in landscape orientation,\n while switching to showing a single pane for handset-sized devices or tablets in portrait\n orientation (this type of behavior is sometimes called \"responsive design\").\n <p>\n A <code>SplitPane</code> can manage either two or three panes &mdash; a\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')} and the\n ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')} are required, and a\n ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')} can also be provided which appears in the same place as\n the navigation pane, with built-in navigation between the panes based on\n ${isc.DocUtils.linkForRef('class:NavigationBar')}.  An example of 3-pane usage would be an email application:\n <ul>\n <li> <code>navigationPane</code>: ${isc.DocUtils.linkForRef('class:TreeGrid')} of folders\n <li> <code>listPane</code>: ${isc.DocUtils.linkForRef('class:ListGrid')} showing messages in a folder\n <li> <code>detailPane</code>: message detail view (perhaps a ${isc.DocUtils.linkForRef('class:DetailViewer')} over an\n      ${isc.DocUtils.linkForRef('class:HTMLFlow')} or similar arrangement)\n </ul>\n <p>\n The placement of the panes is by default sensitive to whether the device is detected as a\n handset (phone), tablet or desktop device (see ${isc.DocUtils.linkForRef('type:DeviceMode')}) and to the current\n ${isc.DocUtils.linkForRef('type:PageOrientation')}.  You can also configure a <code>SplitPane</code> with a fixed\n ${isc.DocUtils.linkForRef('attr:SplitPane.pageOrientation')} or ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode')}.\n <p>\n Beyond providing the panes listed above, typical usage is simply to call\n ${isc.DocUtils.linkForRef('method:SplitPane.showListPane','showListPane()')} and ${isc.DocUtils.linkForRef('method:SplitPane.showDetailPane','showDetailPane()')} when the\n <code>SplitPane</code> should navigate to a new pane.  For example, in an email application,\n clicking on a folder in the <code>navigationPane</code> should cause the\n <code>listPane</code> to show messages from the folder, then\n <code>showListPane(<em>\"folder name\"</em>)</code> would be called to show the\n <code>listPane</code> and give it a new title reflecting the name of the folder.\n <p>\n Similarly, clicking on a message in the <code>listPane</code> should show the message\n details in the <code>detailPane</code> and call\n <code>showDetailPane(<em>\"message title\"</em>)</code> to reveal the <code>detailPane</code>\n and give it an appropriate title.\n <p>\n <h3>Automatic control placement</h3>\n <p>\n ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolButtons')} allows you to define a set of controls that are specially\n placed based on the <code>deviceMode</code> and <code>pageOrientation</code>.  See\n ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolButtons')} for details.\n <p>\n <h3>NavigationBar and ToolStrips</h3>\n <p>\n By default, a ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar')} is created in all modes, and in some modes\n additional bars are created as follows:\n <ul>\n <li> in <code>deviceMode:\"desktop\"</code> and <code>deviceMode</code> \"tablet\", the\n      ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolStrip')} is shown <em>above</em> the <code>detailPane</code>.\n <li> in <code>deviceMode:\"handset\"</code>, the ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolStrip')} is created\n      <strong>only</strong> if <code>detailToolButtons</code> are specified, and is placed\n      <em>underneath</em> the <code>detailPane</code>.\n <li> ${isc.DocUtils.linkForRef('attr:SplitPane.listToolStrip')} - separate bar for the <code>listPane</code>, only present\n      for <code>deviceMode:\"desktop\"</code> when a <code>listPane</code> is provided.\n </ul>\n All of these bars are ${isc.DocUtils.linkForRef('group:autoChildUsage','AutoChildren')} and hence completely\n optional.  You can omit them entirely, or, if you want navigation bars or tool strips but\n want to customize them more than the AutoChild system allows, you can prevent the built-in\n bars from being created and place your own ${isc.DocUtils.linkForRef('class:NavigationBar')}s either <em>inside</em> your\n navigation, list or detail panes, or <em>outside</em> the <code>SplitPane</code> as a whole.\n This allows you to completely customize your navigation but still use <code>SplitPane</code>\n to handle device- and orientation-aware layout. See ${isc.DocUtils.linkForRef('attr:SplitPane.showNavigationBar')},\n ${isc.DocUtils.linkForRef('attr:SplitPane.showListToolStrip')}, and ${isc.DocUtils.linkForRef('attr:SplitPane.showDetailToolStrip')}.\n <p>\n Note that while the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')} is named after the ${isc.DocUtils.linkForRef('class:NavigationBar')}\n class, the other automatically created bars are also instances of\n <code>NavigationBar</code> despite the \"toolStrip\" naming convention.  These controls will\n not generally contain navigation elements; the <code>NavigationBar</code> class is used for\n consistent styling, since the <code>navigationBar</code> appears adjacent to the toolstrips\n in some modes and orientations, so they should have the same height and styling.",
        name:"SplitPane",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"VLayout"
    },
    "attr:ListGrid.loadingMessage":{
        ref:"attr:ListGrid.loadingMessage",
        flags:"IR",
        description:"If you have a databound listGrid and you scroll out of the currently loaded dataset, by\n default you will see blank rows until the server returns the data for those rows.  The\n loadingMessage attribute allows you to specify arbitrary html that will be shown in each\n such \"blank\" record while the data for that record is loading.",
        name:"loadingMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "emptyMessage",
            "i18nMessages"
        ]
    },
    "method:Array.getUniqueItems":{
        ref:"method:Array.getUniqueItems",
        flags:"",
        description:" Return a list of each unique item in this list exactly once.\n <P>\n Returns in the same order they were found in the list.\n <P>\n Usage example:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;uniqueList = myArray.getProperty(\"foo\").getUniqueItems();\n\n",
        name:"getUniqueItems",
        seeAlso:[
        ],
        returns:{
            description:"list of each unique item in the list",
            type:"array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "subset"
        ]
    },
    "method:CubeGrid.facetRemoved":{
        ref:"method:CubeGrid.facetRemoved",
        flags:"",
        description:" Notification fired when a facet is removed.\n \n",
        name:"facetRemoved",
        seeAlso:[
            {
                ref:"method:CubeGrid.facetAdded",
                description:null
            }
        ],
        params:[
            {
                description:"facetId that was removed",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:RichTextEditor.toolbar":{
        ref:"attr:RichTextEditor.toolbar",
        flags:"R",
        description:"Layout used to contain each of the ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')}.",
        name:"toolbar",
        seeAlso:[
        ],
        valueType:"MultiAutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "method:FacetChart.getNumDataPoints":{
        ref:"method:FacetChart.getNumDataPoints",
        flags:"",
        description:" Count the number of data points.\n",
        name:"getNumDataPoints",
        seeAlso:[
        ],
        params:[
            {
                description:"a set of facetValues describing a slice of the data",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"the number of data values",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:FacetChart.tickMarkToValueAxisMargin":{
        ref:"attr:FacetChart.tickMarkToValueAxisMargin",
        flags:"IR",
        description:"Margin between the tick marks and the labels of the\n ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','extra value axes')}.",
        name:"tickMarkToValueAxisMargin",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:Hover.show":{
        ref:"classMethod:Hover.show",
        flags:"",
        description:" Displays a standard Hover canvas containing the specified HTML content.<br>\n This method may also be called to modify the content of the hover if it is already showing.\n Call ${isc.DocUtils.linkForRef('classMethod:Hover.hide')} to hide the canvas again.<br>\n A common use case for calling this method is to asynchronously fetch detail data from the\n server about some component, and display it in the Hover canvas when the data is returned.\n Note that in this case you will typically need to verify that the user is still hovering \n over the component in question before calling Hover.show() - if the user has moved the mouse \n off the component, the information will not apply to whatever is now under the mouse. \n Suggested approaches for handling this are to either use a ${isc.DocUtils.linkForRef('method:Canvas.mouseOut')} handler\n to track when the user moves off the component, or checking ${isc.DocUtils.linkForRef('classMethod:EventHandler.getTarget')}\n as part of the asynchronous callback\n <p>\n The default Hover canvas position will be based on the mouse pointer position, adjusted by\n ${isc.DocUtils.linkForRef('classAttr:Hover.leftOffset')} and ${isc.DocUtils.linkForRef('classAttr:Hover.topOffset')}. If this position would render the\n Hover canvas partially clipped, it will be automatically modified to ensure the Hover \n is entirely visible.\n",
        name:"show",
        seeAlso:[
        ],
        params:[
            {
                description:"contents for the hover",
                optional:false,
                name:"contents",
                defaultValue:null,
                type:"HTMLString | Canvas"
            },
            {
                description:"object containing attributes for managing the hover canvas'   appearance. Valid properties include:<ul>\n  <li>left, top, width, height\n  <li>baseStyle\n  <li>opacity\n  <li>wrap\n  <li>moveWithMouse [overrides ${isc.DocUtils.linkForRef('classAttr:Hover.moveWithMouse')}]\n </ul>",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"Label Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:Hover"
    },
    "attr:MenuButton.showMenuButtonImage":{
        ref:"attr:MenuButton.showMenuButtonImage",
        flags:"IR",
        description:"Show menu button image (up / down arrowhead) for this menu button.",
        name:"showMenuButtonImage",
        setter:[
            "setShowMenuButtonImage"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "method:Canvas.scrollByPercent":{
        ref:"method:Canvas.scrollByPercent",
        flags:"",
        description:"  Scroll this widget by some percentage of scroll size in either (or both) direction(s).\n\n",
        name:"scrollByPercent",
        seeAlso:[
        ],
        params:[
            {
                description:"Percentage to scroll horizontally. Will accept either                                      a numeric percent value, or a string like \"10%\".",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"number | string"
            },
            {
                description:"Percentage to scroll horizontally. Will accept either                                      a numeric percent value, or a string like \"10%\".",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"number | string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:FacetValue.collapsed":{
        ref:"attr:FacetValue.collapsed",
        flags:"IR",
        description:"For tree facets, initial collapse state for this node.  Defaults to ${isc.DocUtils.linkForRef('attr:Facet.collapsed')}.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"collapsed",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"facet.collapsed",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:Canvas.hoverDelay":{
        ref:"attr:Canvas.hoverDelay",
        flags:"IRW",
        description:"If <code>this.canHover</code> is true, how long should the mouse be kept over this\n widget before the hover event is fired",
        name:"hoverDelay",
        seeAlso:[
            {
                ref:"attr:Canvas.canHover",
                description:null
            },
            {
                ref:"method:Canvas.hover",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"300",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "method:CubeGrid.setEnableCharting":{
        ref:"method:CubeGrid.setEnableCharting",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:CubeGrid.enableCharting')} attribute.\n",
        name:"setEnableCharting",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"enableCharting",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:Menu.iconFieldProperties":{
        ref:"attr:Menu.iconFieldProperties",
        flags:"IR",
        description:"Custom properties for the automatically generated icon column.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Menu.showIcons')} for an overview of the icon column.",
        name:"iconFieldProperties",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "classAttr:Operators.greaterThanTitle":{
        ref:"classAttr:Operators.greaterThanTitle",
        flags:"IR",
        description:"Title for the \"greaterThan\" operator",
        name:"greaterThanTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"greater than\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.showGridSummary":{
        ref:"attr:ListGridField.showGridSummary",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true, should this field show a summary value.\n If unset, this field will show a summary value in the summary row if an\n explicit ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')} is specified or if a\n ${isc.DocUtils.linkForRef('classMethod:SimpleType.getDefaultSummaryFunction','default summary function')} is defined\n for the specified field type.",
        name:"showGridSummary",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "object:AdvancedCriteria":{
        methods:[
        ],
        ref:"object:AdvancedCriteria",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
        ],
        description:"AdvancedCriteria is a format for representing search criteria which may include\n operators on field values such as \"less than\", or may include sub-clauses such as several \n criteria applied to fields joined by an \"OR\" operator.\n <P>\n SmartClient DataSources can use AdvancedCriteria to search a list of ${isc.DocUtils.linkForRef('object:Record')}s, and\n the SmartClient Java Server can translate AdvancedCriteria to either SQL or Hibernate\n queries (<b>Note:</b> The server-side AdvancedCriteria handling feature is only available \n with the <b>Power</b> and <b>Enterprise</b> Editions of SmartClient; the Pro Edition is \n limited to ordinary criteria handling on the server side).<p>\n If the entire dataset is cached locally, SmartClient can perform AdvancedCriteria filtering \n on the client, avoiding a server call.\n <P>\n <smartclient>\n An AdvancedCriteria is an ordinary JavaScript object which can be created directly\n with JavaScript literal notation.  For example:\n <pre>\n var advancedCriteria = {\n        _constructor:\"AdvancedCriteria\",\n        operator:\"and\",\n        criteria:[\n            // this is a Criterion\n            { fieldName:\"salary\", operator:\"lessThan\", value:\"80000\" },\n            { operator:\"or\", criteria:[\n                  { fieldName:\"title\", operator:\"iContains\", value:\"Manager\" },\n                  { fieldName:\"reports\", operator:\"notNull\" }\n              ]  \n            }\n        ]\n    }\n </pre>\n An AdvancedCriteria is in effect a ${isc.DocUtils.linkForRef('object:Criterion')} that has been marked with \n _constructor:\"AdvancedCriteria\" to mark it as complete criteria.\n <P>\n This makes AdvancedCriteria very easy to store and retrieve as JSON strings, using\n ${isc.DocUtils.linkForRef('classMethod:JSON.encode','JSONEncoder')}.\n </smartclient>\n <smartgwt>\n AdvancedCriteria objects can be created directly in java. For example:\n <pre>\n AdvancedCriteria criteria = new AdvancedCriteria(OperatorId.AND, new Criterion[]{\n     new Criterion(\"salary\", OperatorId.LESS_THAN, 8000),\n     new AdvancedCriteria(OperatorId.OR, new Criterion[]{\n         new Criterion(\"title\", OperatorId.ICONTAINS, \"Manager\"),\n         new Criterion(\"reports\", OperatorId.NOT_NULL)\n     })\n });\n </pre>\n </smartgwt>\n <P>\n In addition to building a raw AdvancedCriteria object as described above, the\n ${isc.DocUtils.linkForRef('classMethod:DataSource.convertCriteria')} and ${isc.DocUtils.linkForRef('classMethod:DataSource.combineCriteria')} methods\n may be used to create and modify criteria based on simple fieldName / value mappings.\n <P>\n When passed to the SmartClient Server, a server-side AdvancedCriteria instance (in the\n package com.isomorphic.criteria) can be retrieved from a DSRequest via\n com.isomorphic.datasource.DSRequest.getAdvancedCriteria().  These same AdvancedCriteria\n objects can be directly created server side, and applied to a DSRequest via\n setAdvancedCriteria().\n <P>\n ${isc.DocUtils.linkForRef('class:RestDataSource')}, the recommended way of integration with servers that are not running\n the SmartClient Server Framework, defines a standard XML and JSON serialization of\n <code>AdvancedCriteria</code>.\n <P>\n For other servers, you can translate <code>AdvancedCriteria</code> into whatever format is\n expected by the server, typically by implementing ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}.\n <P>\n <smartgwt>\n The internal representation of AdvancedCriteria is a simple JavaScript structure, available\n via AdvancedCriteria.getJsObj():\n <pre>\n // an AdvancedCriteria\n {\n     _constructor:\"AdvancedCriteria\",\n     operator:\"and\",\n     criteria:[\n         // this is a Criterion\n         { fieldName:\"salary\", operator:\"lessThan\", value:\"80000\" },\n         { operator:\"or\", criteria:[\n             { fieldName:\"title\", operator:\"iContains\", value:\"Manager\" },\n             { fieldName:\"reports\", operator:\"notNull\" }\n           ]  \n         }\n     ]\n }\n </pre>\n And an AdvancedCriteria can also be created from a JavaScriptObject.  This makes\n AdvancedCriteria very easy to store and retrieve as JSON strings, using\n ${isc.DocUtils.linkForRef('classMethod:JSON.encode','JSONEncoder')}.\n </smartgwt>\n See ${isc.DocUtils.linkForRef('group:criteriaEditing','Criteria Editing')} for information about\n editing AdvancedCriteria in a DynamicForm.",
        name:"AdvancedCriteria",
        seeAlso:[
        ],
        type:"object",
        serverDS:"allowed",
        groups:[
            "advancedFilter"
        ],
        inheritsFrom:"Criterion"
    },
    "attr:StretchImgButton.title":{
        ref:"attr:StretchImgButton.title",
        flags:"IRW",
        getter:[
            "getTitle"
        ],
        description:"The title HTML to display in this button.",
        name:"title",
        setter:[
            "setTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "basics"
        ]
    },
    "group:dmiOverview":{
        ref:"group:dmiOverview",
        title:"Direct Method Invocation",
        treeLocation:[
            "Client Reference/RPC"
        ],
        refs:[
        ],
        description:"Direct Method Invocation (DMI) allows Ajax requests from the UI to directly\n invoke methods on server-side objects via XML configuration.  See also\n ${isc.DocUtils.linkForRef('attr:OperationBinding.script','DMI Scripts')}, which allows you to place code directly into the\n XML file instead of in a separate .java file; this is a useful approach when DMI code is\n short.\n <P>\n When using DMI, request data from the UI is translated to Java objects and passed to the\n Java method you designate with an XML declaration.  Your Java method simply declares the\n parameters it needs and they are automatically provided (see \"Method Invocation\" below).\n The return value of your method is automatically wrapped as a valid response and delivered\n to the browser.\n <P>\n DMI requires the ${isc.DocUtils.linkForRef('group:iscServer','SmartClient Server')}.  Note that SmartClient also supports\n several approaches for interacting with ${isc.DocUtils.linkForRef('group:nonJavaBackend','non-Java backends')} and/or\n Java backends not running the ISC server.\n <P>\n <u><b>DataSource DMI</b></u>\n <br>\n See also ${isc.DocUtils.linkForRef('group:serverDataIntegration','Server DataSource Integration')} overview.<br>\n To enable DMI for a given DataSource, simply include a <code>&lt;serverObject&gt;</code>\n configuration block in that DataSource's configuration either at\n ${isc.DocUtils.linkForRef('attr:DataSource.serverObject')} or on a particular operationBinding via\n ${isc.DocUtils.linkForRef('attr:OperationBinding.serverObject')}.  The ServerObject specifies the target of the method\n invocation and ${isc.DocUtils.linkForRef('attr:OperationBinding.serverMethod')} specifies the method that will be\n called.\n <P>\n For example, the following Datasource DMI declaration would route \"fetch\" operations for\n this DataSource to the method \"fetch\" on an object stored in the servlet session under the\n name \"beanFetcher\":\n <pre>\n &lt;DataSource&gt;\n   &lt;operationBindings&gt;\n       &lt;binding operationType=\"fetch\" serverMethod=\"fetch\"&gt;\n           &lt;serverObject  \n                lookupStyle=\"attribute\" \n                attributeScope=\"session\" \n                attributeName=\"beanFetcher\"/&gt;\n       &lt;/binding&gt;\n   &lt;/operationBindings&gt;\n   ...\n &lt;/DataSource&gt;\n </pre>\n Method overloading is not supported - there must be exactly one method on the target class\n with the name specified in ${isc.DocUtils.linkForRef('attr:OperationBinding.serverMethod')}.  The method must be public,\n but can be either an instance or static method.  If no operationBinding is specified or the\n operationBinding does not specify a <code>serverMethod</code> then it defaults to the name of\n the operation (eg \"fetch\").\n <p>\n By default, the DSResponse data sent back by DataSource DMIs is filtered to just the set of\n fields specified on the DataSource.  This allows you to simply return beans that potentially\n have getter methods for fields other than are defined in the DataSource without that\n (potentially private) data being sent to the client.  If you want to disable this\n functionality, you can do so on a per-operation basis by setting\n ${isc.DocUtils.linkForRef('attr:ServerObject.dropExtraFields')}, on a per-DataSource level by setting\n ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields')}, or globally by setting the config parameter\n <code>DMI.dropExtraFields</code> to <code>false</code> in\n ${isc.DocUtils.linkForRef('group:server_properties','[webroot]/WEB-INF/classes/server.properties')}.  \n Non-DMI DSResponse data is, by\n default, not filtered in this manner for backward compatibility reasons.  If you want to\n enable this type of filtering for non-DMI DSResponse data, you can do so by setting the\n config parameter <code>DSResponse.dropExtraFields</code> to <code>true</code> in\n ${isc.DocUtils.linkForRef('group:server_properties','[webroot]/WEB-INF/classes/server.properties')}.  \n <code>DMI.dropExtraFields</code>\n and <code>DSResponse.dropExtraFields</code> can be enabled/disabled independently of each\n other - that is, setting one does not side-effect the other.  ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n settings can be overridden by an explicit setting in ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields')} which\n in turn can be overridden by an explicit setting in ${isc.DocUtils.linkForRef('attr:ServerObject.dropExtraFields')} (this\n last one for DMI only since non-DMI operations don't have a serverObject context).\n <p>\n <u><b>DataSource DMI and regular RPCManager dispatch</b></u><br>\n It is possible to use DMI to incorporate your own code into what is otherwise the regular \n process flow of an ordinary, non-DMI DataSource request.  This is particularly valuable if\n you are using the built-in SQL or Hibernate DataSources, because it allows you to inject\n extra functionality (validations, processing steps, messages to other systems, anything you\n can code) into a fetch or update request that is otherwise handled for you by the SmartClient \n Server.\n <p>\n To do this, just configure an operationBinding for DMI, as described above.  Then, in your\n server-side method, invoke <code>execute()</code> on the <code>DSRequest</code> your method\n is passed.  If you create a DMI method that does nothing <b>but</b> invoke\n <code>dsRequest.execute()</code>, then you have a DMI method that behaves exactly like the\n normal RPCManager dispatch code.  Customizing \"normal RPCManager dispatch code\" is now a \n simple matter of adding logic to your DMI method.  See \n ${isc.DocUtils.linkForExampleId('userSpecificData', 'this example')} of this technique in the Feature Explorer.\n <p>\n <u><b>RPC DMI</b></u>\n <br>\n RPC DMI makes a set of methods from a server-side class available as client-side methods for\n direct invocation (via ${isc.DocUtils.linkForRef('classMethod:DMI.call')}). This provides a way to perform arbitrary\n client/server interactions outside of the DataSource subsystem.\n <P>\n RPC DMI is an alternative approach to using the ${isc.DocUtils.linkForRef('class:RPCManager')} class directly to send\n requests to some <code>actionURL</code> where your server code would receive a generalized\n ${isc.DocUtils.linkForRef('class:RPCRequest','request object')}, to be routed to appropriate\n methods yourself.  Which interface (DMI or RPCManager) you choose is largely a matter of\n preference - they provide equivalent functionality.\n <P>\n RPC DMI also uses a ${isc.DocUtils.linkForRef('class:ServerObject')} configuration block to specify\n the server-side DMI end-point, but in the case of RPCs, the ${isc.DocUtils.linkForRef('class:ServerObject')} definition\n goes into an <code>rpcBindings</code> section of an\n ${isc.DocUtils.linkForRef('group:applicationDeclaration','Application definition')} in a <code>*.app.xml</code> file. \n <smartclient>For an example, see the <code>example.app.xml</code> file \n in the /shared/app directory of the SmartClient SDK.</smartclient>\n The only difference between the RPC DMI\n ServerObject definition and the DataSource DMI version is the addition of the\n ${isc.DocUtils.linkForRef('attr:ServerObject.visibleMethods')} block that specifies which methods are callable on this\n ServerObject.  This section is not consulted for DataSource DMIs because the\n ${isc.DocUtils.linkForRef('attr:OperationBinding.serverMethod')} is used to specify the callable method in that case.\n <p>\n <u><b>Method Invocation</b></u>\n <br>\n SmartClient can pass a set of stock context variables to your DMI method and also performs\n some type adaptation logic to make this interface more flexible.  For DataSource DMI, you\n can declare your method to take any number of the following types of arguments and they will\n be passed to you:\n <ul>\n <li>HttpServletRequest\n <li>HttpServletResponse\n <li>ServletContext\n <li>HttpSession\n <li>RPCManager\n <li>DSRequest\n <li>RequestContext (from com.isomorphic.servlet)\n <li>DataSource (same as DSRequest.getDataSource())\n <li>Map (same as DSRequest.getValues())\n <li>Bean (auto-populated from DSRequest.getValues())\n </ul>\n DataSource DMI methods can return any of the following types of values:\n <ul>\n <li>DSResponse (used as the DSResponse verbatim)\n <li>List (valid response to a fetch operation - gets auto-popuplated into a DSResponse for\n you via setData())\n <li>Map or Bean (valid response to add, update, remove operations - gets auto-populated\n into a DSResponse for you via setData()).\n </ul>\n Note that to take advantage of some SmartClient features like paging and custom validation,\n you need to return a DSResponse and provide the required metadata (like\n startRow/endRow/totalRows for paging).  You can simply return a <code>List</code> instead,\n but this won't work for large datasets.\n <p>\n So, for example, all of the following DataSource DMI method signatures are valid:\n <pre>\n public List myFetch(Map criteria)\n public List myFetch(SupplyItem criteria)\n public DSResponse myAdd(HttpSession session, \n                         DataSource ds, \n                         DSRequest dsRequest)\n </pre>\n <p>\n See\n <a href='/examples/server_integration/#customDataSourceIntegrationDMI' target='_blank'>the supplyItemDMI example</a>\n for an example of DataSource DMI.\n <p>\n <p>\n RPC DMIs work slightly differently.  Unlike DataSource DMIs, RPC DMIs can have an arbitrary\n number of required arguments, and also some optional context arguments.  For example, let's\n say you call a method from the client like so \n <smartclient>(note that there's a cleaner way to invoke\n DMIs if you use the ${isc.DocUtils.linkForRef('group:loadDMIStubsTag')} JSP tag)</smartclient>:\n <br>\n <smartclient><pre>\n DMI.call(\"myApp\", \"com.sample.MyClass\", \"doSomething\",\n          1, \"zoo\", [1, 2, 3], \"clientCallback()\");\n </pre>\n </smartclient>\n <smartgwt><pre>\n\t\tList someList = new ArrayList();\n\t\tsomeList.add(1);\n\t\tsomeList.add(2);\n\t\tDMI.call(\"myApp\", \"com.sample.MyClass\", \"doSomething\", new RPCCallback() {\n\t\t\t\n\t\t\t&#64;Override\n\t\t\tpublic void execute(RPCResponse response, Object rawData, RPCRequest request) {\n\t\t\t\t\n\t\t\t\tSC.say(\"raw data from server method:\" + rawData.toString());\n\t\t\t\t\n\t\t\t\t\n\t\t\t}\n\t\t}, new Object[] {1, \"zoo\", someList});\n </pre>\n </smartgwt>\n The server-side implementation of the method invoked must have a signature that\n will accept the arguments passed in from the client. In the example above \n <code>com.sample.MyClass.doSomething</code> should accept a Number, String, \n and a List as arguments.  SmartClient will try to adapt arguments where possible - \n so for example the first argument can be a Long or an Integer, or a native type \n (<code>long</code> or <code>int</code>) instead and the\n invocation will still work. \n <smartclient>\n JavaScript objects passed from the client becomes a Map on the server and will\n be automatically applied to a bean if the method argument takes a Bean in that position.\n </smartclient>\n <smartgwt>\n If a Map is passed from the client to the server it will\n be automatically applied to a bean if the method argument takes a Bean in that position.\n </smartgwt>\n See ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} for a table of type conversions.\n <P>\n In addition to the parameters explicitly passed from the client, your method signature\n can include some additional arguments to pick up information about the request passed in.\n If your server side method is declared with arguments of the following type they will\n be passed to your DMI method.\n <ul>\n <li>HttpServletRequest\n <li>HttpServletResponse\n <li>HttpSession\n <li>RPCManager\n <li>RPCRequest\n </ul>\n <P>\n Your server side method can return a <code>RPCResponse</code> object giving you full\n control over the response sent to the server. If your method does not return a response,\n one will be created automatically and the return value from the server method will become the\n <code>data</code> value on the response. <br>\n See ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} for an overview of how server side java data types are mapped \n to client side values.\n <smartclient>\n <p>\n See\n <a href='/examples/server_integration/#genericRPCIntegrationDMI' target='_blank'>the getTimeStampDMI example</a>\n for an example of RPC DMI.\n </smartclient>",
        name:"dmiOverview",
        seeAlso:[
            {
                ref:"group:applicationDeclaration",
                description:null
            },
            {
                ref:"group:loadDMIStubsTag",
                description:null
            },
            {
                ref:"class:ServerObject",
                description:null
            },
            {
                ref:"attr:DataSource.serverObject",
                description:null
            },
            {
                ref:"attr:OperationBinding.serverObject",
                description:null
            },
            {
                ref:"group:clientServerIntegration",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:HTMLFlow.setContentsURL":{
        ref:"method:HTMLFlow.setContentsURL",
        flags:"",
        description:" Change the URL this component loads content from.  Triggers a fetch for content from the new\n URL.\n <p>\n Can also be called with no arguments to reload content from the existing ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL')}.\n <P>\n This feature relies on the XMLHttpRequest object which can be disabled by end-users in some\n supported browsers.  See ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information.\n\n",
        name:"setContentsURL",
        seeAlso:[
            {
                ref:"attr:HTMLFlow.evalScriptBlocks",
                description:null
            }
        ],
        params:[
            {
                description:"URL to retrieve contents from",
                optional:true,
                name:"url",
                defaultValue:null,
                type:"URL"
            },
            {
                description:"Parameters to send to the contentsURL.  Merged with                            <code>component.contentsURLParams</code> if both are set.",
                optional:true,
                name:"params",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('loadHtmlPages')}"
        ],
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "attr:ToolStripResizer.skinImgDir":{
        ref:"attr:ToolStripResizer.skinImgDir",
        flags:"IR",
        description:"Path to resizer image.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"images/ToolStrip/\"",
        type:"attr",
        definingClass:"class:ToolStripResizer"
    },
    "attr:Canvas.scrollbarSize":{
        ref:"attr:Canvas.scrollbarSize",
        flags:"IRWA",
        getter:[
            "getScrollbarSize"
        ],
        description:"How thick should we make the scrollbars for this canvas.<br>\n\t\t\tNOTE: has no effect if showCustomScrollbars is false.",
        name:"scrollbarSize",
        seeAlso:[
            {
                ref:"method:Canvas.getScrollbarSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "classMethod:RPCManager.sendRequest":{
        ref:"classMethod:RPCManager.sendRequest",
        flags:"",
        description:"\n Send the passed <code>RPCRequest</code> to the server.  If queuing is in effect, this queues\n the request instead.\n\n",
        name:"sendRequest",
        seeAlso:[
        ],
        params:[
            {
                description:"RPCRequest to send to the server",
                optional:false,
                name:"rpcRequest",
                defaultValue:null,
                type:"RPCRequest Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:Calendar.eventNameFieldTitle":{
        ref:"attr:Calendar.eventNameFieldTitle",
        flags:"IR",
        description:"The title for the event name field in the quick and advanced event dialogs",
        name:"eventNameFieldTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Event Name\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.inputFormat":{
        ref:"attr:ListGridField.inputFormat",
        flags:"IRWA",
        description:"For fields of type <code>\"date\"</code> or <code>\"datetime\"</code>, if this is an editable\n listGrid, this property allows you to specify the ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat','inputFormat')}\n applied to the editor for this field.",
        name:"inputFormat",
        seeAlso:[
            {
                ref:"attr:ListGridField.dateFormatter",
                description:null
            }
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:Canvas.keyPress":{
        ref:"method:Canvas.keyPress",
        flags:"A",
        description:"\n Executed when a key is pressed and released on a focusable widget (${isc.DocUtils.linkForRef('attr:Canvas.canFocus')}:\n true).\n <P>\n Use ${isc.DocUtils.linkForRef('classMethod:EventHandler.getKey')} to find out the ${isc.DocUtils.linkForRef('type:KeyName','keyName')} of the key that\n was pressed, and use ${isc.DocUtils.linkForRef('classMethod:EventHandler.shiftKeyDown')} and related functions to determine\n whether modifier keys were down.\n\n",
        name:"keyPress",
        seeAlso:[
            {
                ref:"attr:Canvas.canFocus",
                description:null
            }
        ],
        returns:{
            description:"false to suppress native behavior in response to the keyPress, and prevent                   this event from bubbling to this widget's parent, or true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('keyboardEvents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:CubeGrid.facetLabelOut":{
        ref:"method:CubeGrid.facetLabelOut",
        flags:"",
        description:" StringMethod handler fired when mouseout occurs over a facet label\n\n",
        name:"facetLabelOut",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of the appropriate facet",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events"
        ]
    },
    "method:Selection.deselect":{
        ref:"method:Selection.deselect",
        flags:"",
        description:"\t\t\tDeselect a particular item\n",
        name:"deselect",
        seeAlso:[
        ],
        params:[
            {
                description:"object to select",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "method:HiliteEditor.removeRule":{
        ref:"method:HiliteEditor.removeRule",
        flags:"",
        description:" Removes the passed ${isc.DocUtils.linkForRef('class:HiliteRule','HiliteRule')} from this editor.\n\n",
        name:"removeRule",
        seeAlso:[
        ],
        params:[
            {
                description:"the hiliteRule to remove",
                optional:false,
                name:"hiliteRule",
                defaultValue:null,
                type:"HiliteRule"
            }
        ],
        type:"method",
        definingClass:"class:HiliteEditor"
    },
    "attr:MultiGroupDialog.propertyFieldTitle":{
        ref:"attr:MultiGroupDialog.propertyFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"property\" field.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiGroupPanel for i18n.",
        name:"propertyFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DataBoundComponent.setSort":{
        ref:"method:DataBoundComponent.setSort",
        flags:"",
        description:" Sort this component by a list of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.  If the component's data is not a \n ${isc.DocUtils.linkForRef('class:ResultSet')}, only the first specifier is applied.\n \n",
        name:"setSort",
        seeAlso:[
        ],
        params:[
            {
                description:"List of ${isc.DocUtils.linkForRef('object:SortSpecifier')} objects, one    per sort-field and direction",
                optional:false,
                name:"sortSpecifiers",
                defaultValue:null,
                type:"Array of SortSpecifier"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "method:MultiGroupPanel.getGroup":{
        ref:"method:MultiGroupPanel.getGroup",
        flags:"",
        description:" Returns all configured grouping levels, as an array of ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.\n\n",
        name:"getGroup",
        seeAlso:[
        ],
        returns:{
            description:"the GroupSpecifiers for all configured grouping levels",
            type:"Array of GroupSpecifier"
        },
        type:"method",
        definingClass:"class:MultiGroupPanel"
    },
    "method:ListGrid.getRecord":{
        ref:"method:ListGrid.getRecord",
        flags:"A",
        description:" Return the pointer to a particular record by record number.\n Synonym for ${isc.DocUtils.linkForRef('method:ListGrid.getCellRecord')}.\n\n",
        name:"getRecord",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellRecord",
                description:null
            },
            {
                ref:"method:ListGrid.getEditedRecord",
                description:null
            }
        ],
        params:[
            {
                description:"row index of record to return.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Record object for the row.",
            type:"ListGridRecord"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Class.observe":{
        ref:"method:Class.observe",
        flags:"",
        description:" Take an arbitrary action whenever a method is called on an instance.<br><br>\n\n When you observe some method of another object, eg:<br>\n\t\t\t<code>thisObject.observe(thatObject, \"someMethod\", \"observer.foo()\")</code><br><br>\n\n When <code>thatObject.someMethod()</code> is called,<br>\n\t\t\t<code>thisObject.foo()</code> <br>\n will be called automatically, after the observed method completes.<br><br>\n\n Action is typically a string expression.  Available variables:\n <ul>\n    <li> observed: target of the observation, that is, object passed to observe()\n    <li> observer: object that observes, that is, object that observe() was called on\n    <li> returnVal: return value of observed function\n </ul>\n\n An unlimited number of observers can observe any message, they will all be notified\n automatically in the order that the observations were set up.<br><br>\n\n NOTES:\n - observation also works on JavaScript Array objects\n - a method may trigger an observation of itself by another object, either through code\n   within the method itself or within an observer's action.  In this case the observation\n   will be set up, but the new observation action will not fire as part of this thread.\n   When the method is called again in the future the newly added observer will be fired.\n\n\n",
        name:"observe",
        seeAlso:[
            {
                ref:"method:Class.ignore",
                description:null
            }
        ],
        params:[
            {
                description:"object to observe",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"name of the method to observe",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"String for the function to call.\t\t\t\t\t\t\t\t\t\tIn this string,\n\t\t\t\t\t\t\t\t\t\t\t<code>observer</code> is the object that is observing,\n\t\t\t\t\t\t\t\t\t\t\t<code>this</code> is the object that is being observed\n\n\t\t\t\t\t\t\t\t\t\tIf <code>action</code> is not specified,\n\t\t\t\t\t\t\t\t\t\t\t<code>observer.methodName()</code> will be called.",
                optional:true,
                name:"action",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true == observation set up, false == observation not set up",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "observation"
        ]
    },
    "attr:ListGrid.canPickFields":{
        ref:"attr:ListGrid.canPickFields",
        flags:"IRW",
        description:"Indicates whether the field picker item and submenu should be present in the header\n context menu. This menu allows the user to hide visible fields and show hidden fields.\n <p>\n By default only fields explicitly included in the ${isc.DocUtils.linkForRef('attr:ListGrid.fields')} array will\n be available in this menu, unless ${isc.DocUtils.linkForRef('attr:ListGrid.canPickOmittedFields')} is set to true for\n a databound grid.\n <p>\n A specific field can be omitted from the column picker via ${isc.DocUtils.linkForRef('attr:ListGridField.canHide')}.",
        name:"canPickFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:TabSet.showPartialEdges":{
        ref:"attr:TabSet.showPartialEdges",
        flags:"IRA",
        description:"If the paneContainer for this tab set is showing ${isc.DocUtils.linkForRef('attr:Canvas.showEdges','edges')}, setting this\n attribute to <code>true</code> will set the paneContainer to show\n ${isc.DocUtils.linkForRef('attr:Canvas.customEdges','customEdges')} for the three sides opposing the tabBarPosition.",
        name:"showPartialEdges",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:DataBoundComponent.useAllDataSourceFields":{
        ref:"attr:DataBoundComponent.useAllDataSourceFields",
        flags:"IRW",
        description:"If true, the set of fields given by the \"default binding\" (see \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')}) is used, with any fields specified in\n <code>component.fields</code> acting as overrides that can suppress or modify the\n display of individual fields, without having to list the entire set of fields that\n should be shown.\n <P>\n If <code>component.fields</code> contains fields that are not found in the DataSource,\n they will be shown after the most recently referred to DataSource field.  If the new\n fields appear first, they will be shown first.\n <P>\n ${isc.DocUtils.linkForExampleId('validationFieldBinding', 'This example')} shows a mixture of component\n fields and DataSource fields, and how they interact for validation.",
        name:"useAllDataSourceFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('validationFieldBinding')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "attr:ListGrid.alternateFieldStyles":{
        ref:"attr:ListGrid.alternateFieldStyles",
        flags:"IRW",
        description:"Whether alternating columns should be drawn in alternating styles, in order to create a \n vertical \"ledger\" effect for easier reading.  If enabled, the cell style for alternate \n columns will have \"Dark\" appended to it.",
        name:"alternateFieldStyles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "method:Canvas.setClassName":{
        ref:"method:Canvas.setClassName",
        deprecated:"As of SmartClient version 5.5, use ${isc.DocUtils.linkForRef('method:Canvas.setStyleName')} instead.",
        flags:"A",
        description:" Sets the CSS class for this widget\n",
        name:"setClassName",
        seeAlso:[
        ],
        params:[
            {
                description:"new CSS class name (must be defined previously)",
                optional:false,
                name:"newClass",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "classMethod:Offline.goOnline":{
        ref:"classMethod:Offline.goOnline",
        flags:"",
        description:" Explicitly sets this session into online mode.  This setting will override whatever \n state the browser reports.  This allows users to manually set an application into \n offline or online state.\n \n",
        name:"goOnline",
        seeAlso:[
            {
                ref:"classMethod:Offline.goOffline",
                description:null
            },
            {
                ref:"classMethod:Offline.useNativeOfflineDetection",
                description:null
            }
        ],
        type:"classMethod",
        definingClass:"class:Offline"
    },
    "attr:DynamicForm.titleOrientation":{
        flags:"IRW",
        getter:[
            "getTitleOrientation"
        ],
        type:"attr",
        ref:"attr:DynamicForm.titleOrientation",
        description:"Default orientation for titles for items in this form.  ${isc.DocUtils.linkForRef('type:TitleOrientation')}\n lists valid options.\n <P>\n Note that titles on the left or right take up a cell in tabular\n ${isc.DocUtils.linkForRef('group:formLayout','form layouts')}, but titles on top do not.",
        name:"titleOrientation",
        setter:[
            "setTitleOrientation"
        ],
        valueType:"TitleOrientation",
        seeAlso:[
        ],
        examples:[
            "${isc.DocUtils.linkForExampleId('formLayoutTitles')}"
        ],
        defaultValue:"\"left\"",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "attr:SelectItem.showHintInField":{
        ref:"attr:SelectItem.showHintInField",
        flags:"IRWA",
        description:"If showing a hint for this form item, should it be shown within the field?\n <P>CSS style for the hint is ${isc.DocUtils.linkForRef('attr:SelectItem.textBoxStyle')} with the suffix\n \"Hint\" appended to it.",
        name:"showHintInField",
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.errorIconSrc":{
        ref:"attr:ListGrid.errorIconSrc",
        flags:"IRW",
        description:"Src of the image to show as an error icon, if we're showing icons when validation\n      errors occur.",
        name:"errorIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/ListGrid/validation_error_icon.png\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "errorIcon"
        ]
    },
    "type:DragIntersectStyle":{
        ref:"type:DragIntersectStyle",
        values:[
            {
                description:"Look for drop targets that are under the current mouse cursor position.",
                value:"\"mouse\""
            },
            {
                description:"Look for drop targets by intersection of the entire rect of the drag               target with the droppable target.",
                value:"\"rect\""
            }
        ],
        description:"Different styles of determining intersection: with mouse or entire rect of target",
        name:"DragIntersectStyle",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "dragdrop"
        ]
    },
    "group:enable":{
        ref:"group:enable",
        title:"Enabling and Disabling",
        refs:[
            "method:Canvas.setEnabled",
            "method:Canvas.setDisabled",
            "method:Canvas.enable",
            "method:Canvas.disable",
            "method:Canvas.isDisabled",
            "method:Canvas.isEnabled",
            "method:StatefulCanvas.setDisabled",
            "method:Button.setDisabled",
            "method:ImgButton.setDisabled",
            "method:StretchImgButton.setDisabled",
            "method:FormItem.setDisabled",
            "method:FormItem.isDisabled",
            "method:FormItem.enable",
            "method:FormItem.disable",
            "attr:Canvas.disabled",
            "attr:Canvas.enabled"
        ],
        description:"Disabled components do not respond to mouse or keyboard events, and change appearance to\n indicate they are disabled.",
        name:"enable",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FilterBuilder.operatorPickerTitle":{
        ref:"attr:FilterBuilder.operatorPickerTitle",
        flags:"IR",
        description:"The title for the operator-picker select-item.",
        name:"operatorPickerTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Operator\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:CubeGrid.canSortFacets":{
        ref:"attr:CubeGrid.canSortFacets",
        flags:"IRW",
        description:"If true, sort controls will be shown on FacetHeaders.\n <P>\n When clicked, sort controls call ${isc.DocUtils.linkForRef('method:CubeGrid.sortByFacetId')}.",
        name:"canSortFacets",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:MultiComboBoxItem.buttonDefaults":{
        ref:"attr:MultiComboBoxItem.buttonDefaults",
        flags:"RA",
        description:"Default properties to be used in creating each ${isc.DocUtils.linkForRef('class:IButton')}.",
        name:"buttonDefaults",
        seeAlso:[
        ],
        valueType:"IButton Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "method:ComboBoxItem.getPickListFilterCriteria":{
        ref:"method:ComboBoxItem.getPickListFilterCriteria",
        flags:"A",
        description:" ${isc.DocUtils.linkForRef('group:stringMethods','StringMethod')} to return filter criteria for options displayed for\n this item.  \n <P>\n See ${isc.DocUtils.linkForRef('group:comboBoxFiltering')} for details on how pickList filter criteria\n are calculated by default for a comboBoxItem.\n    \n",
        name:"getPickListFilterCriteria",
        seeAlso:[
        ],
        returns:{
            description:"criteria to be used for databound or local filtering",
            type:"Criteria"
        },
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "method:GridRenderer.rowDoubleClick":{
        ref:"method:GridRenderer.rowDoubleClick",
        flags:"A",
        description:" Called when a row receives a double click event.\n\n",
        name:"rowDoubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:CanvasItem.canvas":{
        ref:"attr:CanvasItem.canvas",
        flags:"IRW",
        description:"The canvas that will be displayed inside this item.  You can pass an instance you've \n already created, or its global ID as a String. You can also implement \n ${isc.DocUtils.linkForRef('method:CanvasItem.createCanvas')} to dynamically create the canvas when the FormItem\n is initialized.\n <P>\n If <code>canvas</code> and <code>createCanvas()</code> are unspecified, the \n canvas for this item will be auto-created using the overrideable defaults:\n ${isc.DocUtils.linkForRef('attr:CanvasItem.canvasProperties')} and ${isc.DocUtils.linkForRef('attr:CanvasItem.canvasConstructor')}\n <P>\n Note that ${isc.DocUtils.linkForRef('attr:Canvas.canvasItem')} will be set on the canvas to point back to this\n item.",
        name:"canvas",
        setter:[
            "setCanvas"
        ],
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "method:TileLayout.setTileVMargin":{
        ref:"method:TileLayout.setTileVMargin",
        flags:"",
        description:" Sets the vertical margin of tiles.\n",
        name:"setTileVMargin",
        seeAlso:[
        ],
        params:[
            {
                description:"width",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "tileLayout"
        ]
    },
    "attr:DateChooser.applyButton":{
        ref:"attr:DateChooser.applyButton",
        flags:"IR",
        description:"When a DateChooser is configured for ${isc.DocUtils.linkForRef('attr:DateChooser.timeItem','a \"datetime\" value')},\n clicking on a date cell in the ${isc.DocUtils.linkForRef('attr:DateChooser.dateGrid','grid')} will not automatically\n dismiss the DateChooser canvas.  In this case, use the <code>Apply</code> button to\n accept the selected date and time and dismiss the chooser.",
        name:"applyButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DataSource.testData":{
        deprecated:"In favor of ${isc.DocUtils.linkForRef('attr:DataSource.cacheData')}.",
        flags:"IRW",
        type:"attr",
        ref:"attr:DataSource.testData",
        description:"For a client-only DataSource, a set of records to use as a dataset, specified as an\n Array of JavaScript Objects. \n <P>\n See ${isc.DocUtils.linkForRef('group:clientOnlyDataSources','this discussion')} for ways to populate a\n client-only DataSource with test data.",
        name:"testData",
        setter:[
            "setTestData"
        ],
        valueType:"Array of Record",
        seeAlso:[
        ],
        defaultValue:"null",
        groups:[
            "clientData"
        ],
        definingClass:"class:DataSource"
    },
    "attr:ListGrid.editOnFocus":{
        ref:"attr:ListGrid.editOnFocus",
        flags:"IRWA",
        description:"Should we start editing when this widget receives focus (if this ListGrid supports\n editing)?\n <P>\n Note that this property being set to true will cause editing to occur on a single\n click, even if ${isc.DocUtils.linkForRef('attr:ListGrid.editEvent')} is <code>\"doubleClick\"</code>, because single clicking\n the grid will place keyboard focus there automatically.\n <P>\n If this property is set together with ${isc.DocUtils.linkForRef('attr:ListGrid.listEndEditAction')} being set to \"next\", \n users can create a new edit row in an empty grid by simply tabbing into the grid.",
        name:"editOnFocus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:Canvas.canvasItem":{
        ref:"attr:Canvas.canvasItem",
        flags:"R",
        description:"If this canvas is being displayed in a ${isc.DocUtils.linkForRef('class:CanvasItem')}, this property will be set\n to point at the item. Otherwise this property will be null.",
        name:"canvasItem",
        seeAlso:[
        ],
        valueType:"CanvasItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:DataSource.transformMultipleFields":{
        ref:"attr:DataSource.transformMultipleFields",
        flags:"IR",
        description:"If set to \"false\", transformation of values for\n ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple:true')} fields, normally controlled by\n ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorage')}, is instead disabled for this entire DataSource.",
        name:"transformMultipleFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "multipleField"
        ]
    },
    "method:ListGrid.getExpansionComponent":{
        ref:"method:ListGrid.getExpansionComponent",
        flags:"",
        description:" Gets the embedded-component to show as a given record's expansionComponent.  This\n component is then housed in ${isc.DocUtils.linkForRef('attr:ListGrid.expansionLayout','a VLayout')} and embedded\n into a record's row.\n <P>\n By default, this method returns one of a set of built-in components, according to the\n value of ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')}.  You can override this method\n to return any component you wish to provide as an expansionComponent.\n <P>\n As long as the record is expanded, this component may be retrieved via a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.getCurrentExpansionComponent')}.\n <P>\n When an expanded record is collapsed, the component is disassociated from the record and\n may or may not be automatically destroyed.  By default, built-in components\n will be destroyed on unembed.  Custom expansion components, created via an override of\n getExpansionComponents(), may not be auto-destroyed, according to the\n ${isc.DocUtils.linkForRef('type:ExpansionComponentPoolingMode','pooling mode')} being used.\n\n",
        name:"getExpansionComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"record to get the expansionComponent for",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"the component to embed",
            type:"Canvas | Canvas Properties"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:DataBoundComponent.offlineMessage":{
        ref:"attr:DataBoundComponent.offlineMessage",
        flags:"IRW",
        description:"Message to display when this DataBoundComponent attempts to load data that is not available\n because the browser is currently offline.  Depending on the component, the message is either\n displayed in the component's body, or in a pop-up warning dialog.",
        name:"offlineMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"This data not available while offline\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('offlineSupport')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages",
            "offlineGroup"
        ]
    },
    "attr:Mail.to":{
        ref:"attr:Mail.to",
        flags:"IR",
        description:"Comma-separated list of recipients.  Like all other <code>String</code> \n properties of <code>Mail</code>, you can use Velocity substitution variables in this property.\n <p>\n If you specify a \"To:\" line in the body of your email, recipient addresses will be parsed \n and this property will be ignored.",
        name:"to",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "attr:Menu.autoDraw":{
        ref:"attr:Menu.autoDraw",
        flags:"IRWA",
        description:"Menus will not draw on initialization, until they're explicitly show()n",
        name:"autoDraw",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Menu"
    },
    "type:LogicalOperator":{
        ref:"type:LogicalOperator",
        values:[
            {
                description:"true if all criteria are true",
                value:"\"and\""
            },
            {
                description:"true if any criteria are true",
                value:"\"or\""
            },
            {
                description:"true if all criteria are false",
                value:"\"not\""
            }
        ],
        description:"Operators that can evaluate a set of criteria and produce a combined result.",
        name:"LogicalOperator",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:TreeGrid.data":{
        ref:"attr:TreeGrid.data",
        flags:"IRW",
        description:"A ${isc.DocUtils.linkForRef('class:Tree')} object containing of nested ${isc.DocUtils.linkForRef('object:TreeNode')}s to \n display as rows in this TreeGrid.  \n The <code>data</code> property will typically not be explicitly specified for \n databound TreeGrids, where the data is returned from the server via databound component\n methods such as <code>fetchData()</code>",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
        ],
        valueType:"Tree",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "data"
        ]
    },
    "attr:FormItem.hint":{
        ref:"attr:FormItem.hint",
        flags:"IRW",
        description:"Specifies \"hint\" string to show next to the form item to indicate something to the user.\n This string generally appears to the right of the form item.",
        name:"hint",
        setter:[
            "setHint"
        ],
        seeAlso:[
            {
                ref:"attr:FormItem.hintStyle",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formHints')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.canExport":{
        ref:"attr:ListGridField.canExport",
        flags:"IR",
        description:"Dictates whether the data in this field be exported.  Explicitly set this\n  to false to prevent exporting.  Has no effect if the underlying\n  ${isc.DocUtils.linkForRef('attr:DataSourceField.canExport','dataSourceField')} is explicitly set to\n  canExport: false.",
        name:"canExport",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:SectionStack.itemEndIndent":{
        ref:"attr:SectionStack.itemEndIndent",
        flags:"IRW",
        description:"Size, in pixels, of indentation of all member items relative to the end of\n the alignment axis. For instance, for left-aligned members, \n itemStartIndent specifies indentation for every item from the right side of the\n section stack.",
        name:"itemEndIndent",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"undefined",
        type:"attr",
        definingClass:"class:SectionStack",
        groups:[
            "layoutMember"
        ]
    },
    "method:Canvas.showNextTo":{
        ref:"method:Canvas.showNextTo",
        flags:"",
        description:" Show this widget next to another widget on the page, positioned such that it will \n not extend beyond the browser viewport.\n <P>\n Note that this method simply sets the coordinates of the widget and displays it (using\n a ${isc.DocUtils.linkForRef('method:Canvas.animateShow')} by default). It will\n not change the ${isc.DocUtils.linkForRef('attr:Canvas.parentElement')} of either component.\n <P>\n An example use case might be showing a menu next to a menu-button.\n\n",
        name:"showNextTo",
        seeAlso:[
        ],
        params:[
            {
                description:"Canvas to show next to",
                optional:false,
                name:"otherWidget",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"which side to show on, defaults to \"right\"",
                optional:true,
                name:"side",
                defaultValue:null,
                type:"String"
            },
            {
                description:"This argument controls whether this canvas can be positioned on top of the other\n  widget if there isn't room to put it next to the other widget extending out of the\n  browser viewport<br>\n  If 'canOcclude' is true, simply shift this widget over the other widget, so that\n  it ends up onscreen.  If 'canOcclude' is false, avoid extending offscreen\n  by positioning this widget on the other side of the other widget.",
                optional:true,
                name:"canOcclude",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"If <code>false</code> do not use an animation to  show the component.",
                optional:true,
                name:"skipAnimation",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:SectionStackSection.controls":{
        ref:"attr:SectionStackSection.controls",
        flags:"IR",
        description:"Custom controls to be shown on top of this section header.\n <P>\n These controls are shown in the ${isc.DocUtils.linkForRef('attr:SectionHeader.controlsLayout')}.\n <P>\n Note that this is an init-time property. If you need to dynamically change what \n controls are displayed to the user, we would recommend embedding the\n controls in a Layout or similar container. \n This will allow you to show/hide or add/remove members at runtime\n by manipulating the existing control(s) set up at init time.",
        name:"controls",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionControls')}"
        ],
        definingClass:"object:SectionStackSection"
    },
    "attr:PortalLayout.columnOverflow":{
        ref:"attr:PortalLayout.columnOverflow",
        flags:"IRWA",
        description:"Controls the ${isc.DocUtils.linkForRef('attr:Canvas.overflow','overflow')} setting for each column. If set to \"auto\" (the\n default) then each column will scroll individually (if its ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} overflow\n the column height). You can also use \"hidden\" to clip overflowing heights, or \"visible\" to\n show the overflow. The effect of \"visible\" will depend on the setting for ${isc.DocUtils.linkForRef('attr:PortalLayout.overflow')}\n -- by default, the PortalLayout as a whole will scroll when necessary.",
        name:"columnOverflow",
        setter:[
            "setColumnOverflow"
        ],
        seeAlso:[
            {
                ref:"type:Overflow",
                description:null
            },
            {
                ref:"attr:Canvas.overflow",
                description:null
            }
        ],
        valueType:"Overflow",
        defaultValue:"\"auto\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('portalLayoutColumnHeight')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "method:TreeGrid.dataArrived":{
        ref:"method:TreeGrid.dataArrived",
        flags:"",
        description:" Notification method fired whenever this TreeGrid receives new data nodes from the \n dataSource. Only applies to databound TreeGrids where ${isc.DocUtils.linkForRef('attr:TreeGrid.data')} is a \n ${isc.DocUtils.linkForRef('class:ResultTree')} - either explicitly created and applied via ${isc.DocUtils.linkForRef('method:TreeGrid.setData')} or\n automatically generated via a ${isc.DocUtils.linkForRef('method:TreeGrid.fetchData','fetchData()')} call.\n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"The parentNode for which children were just loaded",
                optional:false,
                name:"parentNode",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:GridRenderer.getCellCSSText":{
        ref:"method:GridRenderer.getCellCSSText",
        flags:"A",
        description:" Return CSS text for styling this cell, which will be applied in addition to the CSS class\n for the cell, as overrides.\n <p>\n \"CSS text\" means semicolon-separated style settings, suitable for inclusion in a CSS\n stylesheet or in a STYLE attribute of an HTML element.\n\n",
        name:"getCellCSSText",
        seeAlso:[
            {
                ref:"method:GridRenderer.getCellStyle",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS text for this cell",
            type:"string"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "type:DataLineType":{
        ref:"type:DataLineType",
        values:[
            {
                description:"simple straight lines between points that are adjacent in the dataset",
                value:"\"straight\""
            },
            {
                description:"smooth spline curve between points that are adjacent in the dataset",
                value:"\"smooth\""
            }
        ],
        description:"Algorithms for drawing lines between points.",
        name:"DataLineType",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Scrollbar.setScrollTarget":{
        ref:"method:Scrollbar.setScrollTarget",
        flags:"",
        description:"          Sets or clears the scrollbar's scrollTarget. If no argument is provided, then the\n          scrollTarget will be set to the scrollbar itself.\n\n",
        name:"setScrollTarget",
        seeAlso:[
        ],
        params:[
            {
                description:"target canvas to be scrolled",
                optional:true,
                name:"newTarget",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:Scrollbar",
        groups:[
            "scroll"
        ]
    },
    "classAttr:Canvas.neverUsePNGWorkaround":{
        ref:"classAttr:Canvas.neverUsePNGWorkaround",
        flags:"IR",
        description:"If set, the AlphaImageLoader IE filter will never be used.   Does not remove\n AlphaImageLoader usage in already-drawn components.\n <P>\n See ${isc.DocUtils.linkForRef('group:IEFilters')} for background.",
        name:"neverUsePNGWorkaround",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:Canvas",
        groups:[
            "IEFilters"
        ]
    },
    "attr:ServerObject.dropExtraFields":{
        ref:"attr:ServerObject.dropExtraFields",
        flags:"IR",
        description:"By default, for DMI DSResponses, DSResponse.data is filtered on the server to just the set\n of fields defined on the DataSource.  This behavior can be overridden in several ways - see\n the overview in ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} for details.  The value of this attribute overrides\n ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields')}.",
        name:"dropExtraFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "method:FormItemIcon.click":{
        ref:"method:FormItemIcon.click",
        flags:"",
        description:"  Called when this icon is clicked. The default action is to call ${isc.DocUtils.linkForRef('method:FormItem.showPicker')}.\n",
        name:"click",
        seeAlso:[
        ],
        params:[
            {
                description:"The Dynamic Form to which this icon's item belongs.",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"The Form Item containing this icon",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"A pointer to the form item icon clicked",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"FormItemIcon"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('formIcons')}"
        ],
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "attr:ListGrid.longTextEditorType":{
        ref:"attr:ListGrid.longTextEditorType",
        flags:"IRW",
        description:"When the length of the field specified by ${isc.DocUtils.linkForRef('attr:DataSourceField.length')} exceeds\n <code>this.longTextEditorThreshold</code> show an edit field of this type\n rather than the standard text field when the field enters inline edit mode.",
        name:"longTextEditorType",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"PopUpTextAreaItem\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:MultiComboBoxItem.comboBox":{
        ref:"attr:MultiComboBoxItem.comboBox",
        flags:"RA",
        description:"An ${isc.DocUtils.linkForRef('type:AutoChild')} attribute to create the combo box in a MultiComboBoxItem.",
        name:"comboBox",
        seeAlso:[
        ],
        valueType:"AutoChild ComboBoxItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:SectionStack.headerHeight":{
        ref:"attr:SectionStack.headerHeight",
        flags:"IR",
        description:"Height of headers for sections.",
        name:"headerHeight",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "method:ListGrid.setShowGridSummary":{
        ref:"method:ListGrid.setShowGridSummary",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} attribute\n",
        name:"setShowGridSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for this.showGridSummary",
                optional:false,
                name:"showGridSummary",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DrawLabel.setLineColor":{
        ref:"method:DrawLabel.setLineColor",
        flags:"",
        description:" Sets the text color of the label.\n",
        name:"setLineColor",
        seeAlso:[
        ],
        params:[
            {
                description:"new text color.",
                optional:false,
                name:"color",
                defaultValue:null,
                type:"CSSColor"
            }
        ],
        type:"method",
        definingClass:"class:DrawLabel"
    },
    "attr:PortalLayout.showColumnMenus":{
        ref:"attr:PortalLayout.showColumnMenus",
        flags:"IRW",
        description:"Should a menu be shown within each column with options to add / remove columns?",
        name:"showColumnMenus",
        setter:[
            "setShowColumnMenus"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('addRemovePortalColumn')}"
        ],
        definingClass:"class:PortalLayout"
    },
    "method:MultiSortPanel.getSort":{
        ref:"method:MultiSortPanel.getSort",
        flags:"",
        description:" Returns all configured sorting levels, as an array of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n\n",
        name:"getSort",
        seeAlso:[
        ],
        returns:{
            description:"the SortSpecifiers for all configured sorting levels",
            type:"Array of SortSpecifier"
        },
        type:"method",
        definingClass:"class:MultiSortPanel"
    },
    "attr:ActiveXControl.codeBase":{
        ref:"attr:ActiveXControl.codeBase",
        flags:"IR",
        description:"Specifies the URL from which to load the ActiveX control.",
        name:"codeBase",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ActiveXControl"
    },
    "attr:Menu.iconFieldDefaults":{
        ref:"attr:Menu.iconFieldDefaults",
        flags:"IR",
        description:"Default properties for the automatically generated icon column.\n Default object includes properties to set width and to show icon for this column.\n <P>\n To modify the behavior or appearance of this column, developers may set\n ${isc.DocUtils.linkForRef('attr:Menu.iconFieldProperties')} at the instance level, or override this\n object at the class level. If overriding this object, we recommend using\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} rather than replacing this object entirely.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Menu.showIcons')} for an overview of the icon column.",
        name:"iconFieldDefaults",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"object",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:Array.addAt":{
        ref:"method:Array.addAt",
        flags:"",
        description:" Add a single item to this array at a specific position in the list, sliding other items over\n to fit.\n\n",
        name:"addAt",
        seeAlso:[
        ],
        params:[
            {
                description:"object to add",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"object"
            },
            {
                description:"position in the list to add at",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"object that was added",
            type:"object"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "attr:DataBoundComponent.dataPageSize":{
        ref:"attr:DataBoundComponent.dataPageSize",
        flags:"IRW",
        description:"When using ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataFetchMode','data paging')}, how many records to fetch at a time.  The value of this\n attribute is passed on to the auto-constructed ${isc.DocUtils.linkForRef('class:ResultSet')} object for this\n component.  In effect, this gives you control over the ${isc.DocUtils.linkForRef('attr:ResultSet.resultSize')}\n attribute for this component.\n <P>\n <b>Note</b> that regardless of the <code>dataPageSize</code> setting, a component will always fetch\n all of data that it needs to draw.  Settings such as\n ${isc.DocUtils.linkForRef('attr:ListGrid.showAllRecords','showAllRecords:true')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.drawAllMaxCells','drawAllMaxCells')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio','drawAheadRatio')} can cause more rows than the configured\n <code>dataPageSize</code> to be fetched.",
        name:"dataPageSize",
        seeAlso:[
            {
                ref:"attr:ResultSet.resultSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"75",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "attr:SummaryBuilder.formulaField":{
        ref:"attr:SummaryBuilder.formulaField",
        flags:"IR",
        description:"TextItem that users type into when entering a formula.",
        name:"formulaField",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "attr:ListGrid.skinImgDir":{
        ref:"attr:ListGrid.skinImgDir",
        flags:"IRWA",
        description:"Where do 'skin' images (those provided with the class) live?",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/ListGrid/\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance",
            "images"
        ]
    },
    "attr:SummaryBuilder.showAutoHideCheckBox":{
        ref:"attr:SummaryBuilder.showAutoHideCheckBox",
        flags:"IR",
        description:"Whether to show a checkbox offering the user the ability to automatically\n hide any fields involved in the formula.",
        name:"showAutoHideCheckBox",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "attr:DrawLabel.alignment":{
        ref:"attr:DrawLabel.alignment",
        flags:"IR",
        description:"Sets the text alignment from the x position. Similar to html5 context.textAlign, eg \"start\", \"center\", \"end\"",
        name:"alignment",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"start\"",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "method:FormItem.storeValue":{
        ref:"method:FormItem.storeValue",
        flags:"",
        description:" Store (and optionally show) a value for this form item. \n <p>\n This method will fire standard ${isc.DocUtils.linkForRef('method:FormItem.change')} and\n ${isc.DocUtils.linkForRef('method:DynamicForm.itemChanged')} handlers, and store the value passed in such that\n subsequent calls to ${isc.DocUtils.linkForRef('method:FormItem.getValue')} or ${isc.DocUtils.linkForRef('method:DynamicForm.getValue')} will\n return the new value for this item.\n <P>\n This method is intended to provide a way for custom formItems - most commonly \n ${isc.DocUtils.linkForRef('class:CanvasItem','canvasItems')} - to provide a new interface to the user, allowing them\n to manipulate the item's value, for example in an embedded ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')},\n or a pop-up dialog launched from an ${isc.DocUtils.linkForRef('object:FormItemIcon','icon')}, etc.  Developers\n should call this method when the user interacts with this custom \n interface in order to store the changed value.\n <P>\n ${isc.DocUtils.linkForRef('attr:CanvasItem.shouldSaveValue','shouldSaveValue')} for CanvasItems is\n false by default. Custom CanvasItems will need to override shouldSaveValue\n to true if the values stored via this API should be included in the form's\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','getValues()')} and saved with the form when\n ${isc.DocUtils.linkForRef('method:DynamicForm.saveData','saveData()')} is called.\n <P>\n If you cannot easily detect interactions that should change the value as the \n user performs them, a workaround is to call\n <code>storeValue</code> right before the form saves.\n <P>\n Note that this method is not designed for customizing a value which is already being\n saved by a standard user interaction. For example you should not call this method\n from a ${isc.DocUtils.linkForRef('method:FormItem.change','change handler')}. Other APIs such as \n ${isc.DocUtils.linkForRef('method:FormItem.transformInput')} exist for this.\n \n",
        name:"storeValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value to save for this item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Should the formItem be updated to display the new value?",
                optional:true,
                name:"showValue",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('canvasItem')}"
        ],
        definingClass:"class:FormItem"
    },
    "attr:TreeGrid.nodeIcon":{
        ref:"attr:TreeGrid.nodeIcon",
        flags:"IRW",
        description:"The filename of the default icon for all leaf nodes in this grid. To specify a \n custom image for an individual node, set the ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconProperty')} directly on\n the node.",
        name:"nodeIcon",
        setter:[
            "setNodeIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]file.gif\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:FormItem.exportFormat":{
        ref:"attr:FormItem.exportFormat",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} used during exports for numeric or date formatting.  See\n ${isc.DocUtils.linkForRef('attr:DataSourceField.exportFormat')}.",
        name:"exportFormat",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "exportFormatting"
        ]
    },
    "attr:Facet.titleAlign":{
        ref:"attr:Facet.titleAlign",
        flags:"IR",
        description:"Alignment of facet label title.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"titleAlign",
        seeAlso:[
            {
                ref:"attr:CubeGrid.facetTitleAlign",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"cubeGrid.facetTitleAlign",
        type:"attr",
        definingClass:"class:Facet"
    },
    "method:Layout.removeMember":{
        ref:"method:Layout.removeMember",
        flags:"",
        description:" Removes the specified member from the layout.  If it has a resize bar, the bar will be\n destroyed.\n\n",
        name:"removeMember",
        seeAlso:[
        ],
        params:[
            {
                description:"the canvas to be removed from the layout",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "class:MultiFilePicker":{
        methods:[
        ],
        ref:"class:MultiFilePicker",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items/MultiFileItem"
        ],
        attrs:[
            "attr:MultiFilePicker.minUploadFields",
            "attr:MultiFilePicker.maxUploadFields"
        ],
        description:"The MultiFilePicker is a pop-up picker used by the ${isc.DocUtils.linkForRef('class:MultiFileItem')} to allow the user to\n enter several files for upload.",
        name:"MultiFilePicker",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "upload"
        ]
    },
    "classMethod:MultiSortDialog.askForSort":{
        ref:"classMethod:MultiSortDialog.askForSort",
        flags:"",
        description:" Launches a MultiSortDialog and obtains a sort-definition from the user.\n\n",
        name:"askForSort",
        seeAlso:[
        ],
        params:[
            {
                description:"A source for Fields which the user can choose to sort by",
                optional:false,
                name:"fieldSource",
                defaultValue:null,
                type:"Array of Field or DataSource or DataBoundComponent"
            },
            {
                description:"The initial sort definition.",
                optional:false,
                name:"initialSort",
                defaultValue:null,
                type:"Array of SortSpecifier"
            },
            {
                description:"Called when the user defines and accepts one or more  ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.  Single parameter <code>sortLevels</code> is an Array of \n SortSpecifier or null if the user cancelled the dialog.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"classMethod",
        definingClass:"class:MultiSortDialog"
    },
    "attr:StretchImgButton.showRollOverIcon":{
        ref:"attr:StretchImgButton.showRollOverIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image on mouse rollover.",
        name:"showRollOverIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "group:domIntegration":{
        ref:"group:domIntegration",
        title:"DOM Integration &amp; Third-party Components",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"SmartClient provides a huge variety of pre-built components and allows you to create new\n components via combining and composing the existing components.  However in rare cases, it can\n make sense to write code that works directly with raw HTML and the browser's DOM (document\n object model) APIs.  This level of coding is also involved when integrating third-party\n JavaScript components into SmartClient applications.\n <P>\n First, a warning: when you use HTML and the DOM directly, all of SmartClient's guarantees of\n cross-browser consistent behavior no longer apply.  When you use SmartClient's API, SmartClient\n is automatically compensating for many, many browser bugs - not just trivial things like\n different property names or missing utility methods, but problems where browsers fail to fire\n certain events, report sizes wrong only in certain modes with certain styling, or bugs that\n only occur with specific timing.\n <P>\n Before deciding to do direct HTML coding, consider whether you really want to expose yourself\n to all of these possible issues.  If you can achieve the same look and feel and behavior\n through SmartClient's APIs, that's usually best.\n <P>\n <h3>Adding or modifying the DOM</h3>\n <P>\n The DOM structures used by SmartClient necessarily differ by browser in order to work around\n each browser's specific bugs.  This DOM structure is intentionally undocumented because it is\n subject to change without notice - in may be necessary to modify the DOM structure to work\n around the bugs in each new browser release.\n <P>\n Instead of trying to modify the SmartClient-generated DOM, you should always <b>add new\n elements</b>.  For a new standalone component that will be based on direct use of HTML, you\n usually do this by subclassing Canvas and overriding ${isc.DocUtils.linkForRef('method:Canvas.getInnerHTML')} and returning\n an HTML string representing the components you want to create.\n <P>\n You can use a similar approach anywhere HTML is allowed in a widget property: formatting APIs\n for StaticTextItem, DetailViewer, TileGrid, and other DataBoundComponents, as well as places\n such as ${isc.DocUtils.linkForRef('attr:Tab.title')} or ${isc.DocUtils.linkForRef('attr:Button.title')}.\n <P>\n <h3>Third-party components</h3>\n <P>\n Most third-party JavaScript components have the ability to generate their HTML content into a\n DOM element specified by ID, or to replace such an element with new HTML.  This is true of\n Google Maps, <a href='http://ckeditor.com' target='_blank'>CKEditor</a> and many other libraries.\n <P>\n To use this form of integration, implement a ${isc.DocUtils.linkForRef('method:Canvas.getInnerHTML')} function that returns\n a DOM element with a known ID, then have the third-party library target that DOM element once\n the Canvas is drawn.  For example, CKEDITOR.replace() takes the ID of a &lt;textarea&gt;\n element, and the following code would create a &lt;textarea&gt; and have the CKEditor replace\n it with a CKEditor widget: \n <smartclient>\n <pre>\n isc.defineClass(\"CKEditor\", \"Canvas\");\n isc.CKEditor.addProperties({\n     // write out a textarea with a known ID\n     getInnerHTML : function () {\n         return \"&lt;textarea style=\"width:100%;height:100%\" ID='\" + \n                           this.getID() + \"_ckEditor\" + \"'>&lt;/textarea>\";\n     },\n     // call superclass method to draw, then have CKEditor replace the textarea we\n     // wrote out with the CKEditor widget\n     draw : function () {\n         if (!this.readyToDraw()) return this;\n         this.Super(\"draw\", arguments);\n         CKEDITOR.replace(this.getID() + \"_ckEditor\";\n         return this;\n     },\n     redrawOnResize:false // see next section\n });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n public class CKEditor extends Canvas {\n \n     private static native void replace(String id) &#47;*-{\n         $wnd.CKEDITOR.replace(id);\n     }-*&#47;;\n \n     public CKEditor() {\n         setRedrawOnResize(false);\n     }\n \n     &#64;Override\n     public String getInnerHTML() {\n         return \"&lt;textarea id='\" + getID() + \"_ckEditor' style='width:100%;height:100%'>&lt;/textarea>\";\n     }\n \n     &#64;Override\n     protected void onDraw() {\n         CKEditor.replace(getID() + \"_ckEditor\");\n     }\n }\n </pre>\n </smartgwt>\n <P>\n This same approach can be used when you want to insert third-party generated HTML into just a\n specific part of a SmartClient widget.  For example, you might want to insert \n <a href='https://www.google.com/search?q=jquery+sparklines' target='_blank'>JQuery 'sparklines'</a>, which are\n essentially miniature charts, into cells of a ListGrid.  You could use\n ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue','a cell formatter')} to write out &lt;div&gt; elements with\n known IDs into the cells, then target them with JQuery.\n <P>\n <h3>Resizing and Redraw</h3>\n <P>\n When implementing <code>canvas.getInnerHTML()</code>, your getInnerHTML() function will be\n called every time the component redraw()s, and the new HTML will replace the old.  This is also\n true of something like a ListGrid cell formatter.\n <P>\n Also by default, your component will redraw() if it is resized.  In the example above with\n CKEditor, we wouldn't want this because it would wipe out the CKEditor widget every time it was\n resized, so we set ${isc.DocUtils.linkForRef('attr:Canvas.redrawOnResize')} to false.  In other circumstances you may want\n to redraw on every resize in order to generate new HTML.\n <P>\n If you do not redraw HTML on resize, you either have to write the HTML in a way that makes it\n flow into available space (width/height 100% may be enough here) <b>or</b> you need to manually\n resize the DOM element when the ${isc.DocUtils.linkForRef('method:Canvas.resized','resized event')} fires.  \n <P>\n In the latter case, you should adjust the size of the DOM element to match the\n ${isc.DocUtils.linkForRef('method:Canvas.getInnerWidth','inner width')} and \n ${isc.DocUtils.linkForRef('method:Canvas.getInnerHeight','inner height')} of the containing Canvas.  The \"inner\" dimensions\n are the dimensions after border and margins have been subtracted, so this will work even if a\n border is added to your Canvas subclass via CSS or ${isc.DocUtils.linkForRef('method:Canvas.setBorder')}.\n <P>\n <h3>Other redraws</h3>\n <P>\n Once you have set ${isc.DocUtils.linkForRef('attr:Canvas.redrawOnResize')} to false you may still see redraws from other\n sources.  Generally this would be from code in your application which calls\n ${isc.DocUtils.linkForRef('method:Canvas.redraw')} or ${isc.DocUtils.linkForRef('method:Canvas.markForRedraw')} unnecessarily.  To troubleshoot, you\n can enable the \"redraws\" log category in the Developer Console - this will log the source of\n any redraws in the system.\n <P>\n <h3>Masking during drags</h3>\n <P>\n Third-party components that utilize iframes, browser plugins or other special elements will\n \"swallow\" events such that SmartClient never receives them.  This is a problem whenever a\n drag interaction goes over the component, including drag resizing of the component itself.\n To avoid this issue, set ${isc.DocUtils.linkForRef('attr:Canvas.useDragMask')} for any component that contains an iframe\n or browser plugin, or that appears to be swallowing events during drag.  The telltale sign\n is that when the mouse goes over the plugin, the visual effect of the drag (differs by\n ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')}) stops updating or stutters.\n <P>\n <h3>Overflow &amp; Auto-Sizing</h3>\n <P>\n Consider which ${isc.DocUtils.linkForRef('attr:Canvas.overflow')} setting to use for your custom component:\n <ul>\n <li> <code>overflow:\"hidden\"</code> is the most common.  In the context of third-party\n components, it means the component is prepared to render itself at any requested size (above\n a minimum). \n <li> <code>overflow:\"visible\"</code> means you want SmartClient to attempt to automatically\n determine a minimum size based on the HTML content generated by the custom component\n <li> <code>overflow:\"auto\"</code> is similar to <code>overflow:\"hidden\"</code>, but means\n your custom component needs SmartClient to create scrollbars whenever its HTML content does\n not fit in the allocated space.\n </ul>\n Note that with the automatic measurement of HTML content enabled by\n <code>overflow:\"visible\"</code> or <code>overflow:\"auto\"</code>, if you make on-the-fly\n modifications to the HTML you returned from <code>getInnerHTML()</code>, there is no\n cross-browser-reliable way for the Canvas to detect this and auto-size again.  Instead, call\n ${isc.DocUtils.linkForRef('method:Canvas.adjustForContent')} to trigger auto-sizing again.\n <P>\n <h3>zIndex</h3>\n <P>\n zIndex values control what component is rendered \"on top\" when multiple components appear in\n the same area of the page.\n <P>\n To work around various browser issues, SmartClient components use a very high range of\n zIndex values.  If a component creates pop-up widgets such as hovers or floating toolbars\n via direct HTML/DOM usage, these pop-up widgets will appear <b>behind</b> all SmartClient\n components unless they set a very high zIndex.  \n <P>\n For your own custom HTML/DOM components, the simplest strategy is to create pop-up widgets\n based on SmartClient components, even if they are triggered by interacting with\n hand-created HTML.  For example, even if you've written some kind of advanced SVG-based data\n visualization component, you can still implement pop-up configuration dialogs based on the\n SmartClient ${isc.DocUtils.linkForRef('class:Window')} class; there's no reason to implement such dialogs directly in\n low-level HTML/DOM code.\n <P>\n If a third-party widget is creating pop-ups you don't directly control, you may be able to\n configure the third-party widget to use a certain zIndex range, or you may be able to\n directly reach into the widget's DOM and modify zIndexes that way.  You can use\n ${isc.DocUtils.linkForRef('method:Canvas.getZIndex')} to discover the zIndex of any SmartClient widget you need to\n appear above, then set a higher value.\n <P>\n Finally, as a last resort and completely unsupported approach, you can modify the zIndex\n range used by SmartClient using the following JavaScript code:\n <pre>\n isc.Canvas.addClassProperties({\n    // default zIndex for the next item to be drawn\n    _nextZIndex:200000,\n\n    // zIndex of the next item to be sent to the back\n    _SMALL_Z_INDEX:199950,\n\n    // zIndex of the next item to be brought to the front\n    _BIG_Z_INDEX:800000\n });\n </pre>\n <P>\n <h3>Other issues</h3>\n <P>\n There are several other issues, listed below, for which there really is no general strategy\n for solving the issue, although some general pointers are provided.\n <P>\n Because of problems like these, it's a very very bad idea to freely intermix components from\n multiple component libraries.  While mixing components may appear to be an appealing\n strategy and you may experience apparent success with early attempts, the issues below will\n ultimately prevent you from completing an application of sufficient quality for enterprise\n use.\n <P>\n In the following discussion, \"third-party widgets\" should be understood to include\n widgets that you write using direct DOM/HTML techniques.\n <ul>\n <li> <b>tabbing order / accessibility</b>: a correct tabbing order that visits all\n components on the page is a requirement for your application to be considered accessible, as\n is ARIA markup (for more information, see ${isc.DocUtils.linkForRef('group:accessibility')}).  Third-party\n widgets may completely lack ARIA markup, such that you may be required to modify them or\n reach into their DOM to add ARIA attributes.  It may be necessary to add manual keyDown or\n keyPress event handlers to handle focus moving from SmartClient components to third-party\n widgets and back.\n\n <li> <b>modality</b>: aside from zIndex issues covered above, modality means that the tab\n order should be a closed loop that reaches only active widgets, which can create additional\n complexity in getting tabbing to work correctly.  Also, keyboard shortcuts should be\n disabled for inactive widgets; this may require calls to\n ${isc.DocUtils.linkForRef('classMethod:EventHandler.targetIsMasked')} to make third-party widgets respect SmartClient\n modality, or may require calls to ${isc.DocUtils.linkForRef('method:Canvas.showClickMask')} to cause SmartClient\n components to consider themselves inactive when a third-party widget opens a pop-up that is\n intended to be modal.  Multi-layered modality, such as a modal window that in turn pops a\n modal dialog, is yet more complex.\n\n <li> <b>bad CSS</b>: some third-party widgets introduce CSS selectors that target, for\n example, every table cell on the entire page.  This very bad practice will interfere with\n SmartClient (or any other HTML on the page).  This may require modifying the third-party\n component, or extensively modifying SmartClient CSS to reverse any changes caused by\n third-party CSS.  For example, it may be necessary to modify every SmartClient CSS style\n that may be applied to a table cell to reverse a change in padding for all table cells that\n is introduced by bad third-party CSS.\n\n <li> <b>skinning</b>: third-party widgets may lack sufficient skinning APIs to allow you to match\n look and feel to SmartGWT, which may necessitate creating a custom SmartGWT skin to match\n the look and feel of third-party widgets (see ${isc.DocUtils.linkForRef('group:skinning','Skinning Overview')})\n\n <li> <b>event interference</b>: third-party widgets may register page-wide event handling\n logic that conflicts with or destroys similar event handling logic in SmartClient.  For best\n results, load third-party JavaScript libraries <b>before</b> SmartClient since SmartClient\n makes a best effort to preserve any previously installed handlers and allows such handlers to\n cancel native browser behaviors if they do so.\n\n <li> <b>RTL / i18n</b>: third party widgets may not allow all user-visible messages to be\n replaced, a requirement for internationalization / localization, or they may not support\n RTL/BIDI (Right-To-Left / Bi-Directional) rendering\n </ul>\n\n Because of issues like the above, not all of which may be resolvable for some third-party\n widgets, we recommend the following overall approach:\n <ul>\n <li> avoid using third-party widgets if you can build equivalent functionality in\n      SmartClient\n <li> if the third-party component is completely non-interactive, either does not require\n      ARIA markup or already includes such markup, and there are no conflicting look and feel\n      issues, go ahead and use it\n <li> if you anticipate issues, consider the \n <a href='http://www.smartclient.com/services/index.jsp#features' target='_blank'>Feature Sponsorship Program</a> \n      as a means of getting new supported functionality added to SmartClient\n <li> search for existing posts and/or ask about the feasibility of integration on the\n      <a href='http://forums.smartclient.com/' target='_blank'>SmartClient Forums</a>.\n <li> finally, you could attempt to tackle the issues above on your own.  To avoid wasting\n      time on dead ends, we would recommend assessing the amount of work involved in fixing\n      <b>all</b> problems that need to be solved before attempting actual fixes for any one issue.\n </ul>",
        name:"domIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Layout.overflow":{
        ref:"attr:Layout.overflow",
        flags:"IRW",
        description:"Normal ${isc.DocUtils.linkForRef('type:Overflow')} settings can be used on layouts, for example, an\n overflow:auto Layout will scroll if members exceed its specified size, whereas an\n overflow:visible Layout will grow to accommodate members.",
        name:"overflow",
        seeAlso:[
        ],
        valueType:"Overflow",
        defaultValue:"\"visible\"",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "method:DrawItem.hover":{
        ref:"method:DrawItem.hover",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DrawItem.canHover','canHover')} is true for this DrawItem, the hover() string method will\n be fired when the user hovers over this DrawItem. If this method returns false, it will\n suppress the default behavior of showing a hover canvas if ${isc.DocUtils.linkForRef('attr:DrawItem.showHover','showHover')}\n is true.\n",
        name:"hover",
        seeAlso:[
        ],
        returns:{
            description:"false to cancel the hover event.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawItem",
        groups:[
            "hovers"
        ]
    },
    "method:Canvas.animateResize":{
        ref:"method:Canvas.animateResize",
        flags:"",
        description:" Animate a resize of this canvas from its current size to the specified size\n",
        name:"animateResize",
        seeAlso:[
        ],
        params:[
            {
                description:"new width (or null for unchanged)",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"new height (or null for unchanged)",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"When the resize completes this callback will be fired. Single                              'earlyFinish' parameter will be passed if the animation was\n                              cut short by a call to finishAnimation",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"AnimationCallback"
            },
            {
                description:"Duration in ms of the animated resize",
                optional:true,
                name:"duration",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Optional acceleration effect to apply to the resize",
                optional:true,
                name:"acceleration",
                defaultValue:null,
                type:"AnimationAcceleration"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateResize')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "method:Calendar.eventClick":{
        ref:"method:Calendar.eventClick",
        flags:"",
        description:" Called whenever an event is clicked on in the day, week or month views.\n <P>\n By default a dialog appears showing details for the event, and offering the ability to\n edit events which are editable.  Return false to cancel the default action. This is a good\n place to, for example, show a completely customized event dialog instead of the default one.\n\n",
        name:"eventClick",
        seeAlso:[
        ],
        params:[
            {
                description:"event that was clicked on",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"view where the event was clicked on: \"day\", \"week\", \"month\", \"timeline\"",
                optional:false,
                name:"viewName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"false to cancel the default action",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "attr:DynamicForm.defaultSearchOperator":{
        ref:"attr:DynamicForm.defaultSearchOperator",
        flags:"IR",
        description:"Default ${isc.DocUtils.linkForRef('type:OperatorId','search operator')} to use for fields in a form that produces\n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}.  Default is \"iContains\" unless ${isc.DocUtils.linkForRef('attr:DynamicForm.allowExpressions')} is\n enabled for the form as a whole, in which case the default is\n ${isc.DocUtils.linkForRef('attr:DataSource.translatePatternOperators','\"iContainsPattern\"')}.\n <p>\n Does not apply to special fields where exact match is obviously the right default\n setting, such as fields of type:\"enum\", or fields with a\n ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} or  ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}.\n <p>\n <code>defaultSearchOperator</code> also has no effect in a form that does not produce\n <code>AdvancedCriteria</code> - see ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} for\n settings that cause a form to produce AdvancedCriteria.",
        name:"defaultSearchOperator",
        seeAlso:[
        ],
        valueType:"OperatorId",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:DataBoundComponent.fieldEditorWindowTitle":{
        ref:"attr:DataBoundComponent.fieldEditorWindowTitle",
        flags:"IRWA",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fieldEditorWindow','Window')} used to edit calculated\n fields.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will\n be evaluated as JS code whenever the message is displayed.\n <P>\n Two dynamic variables are available - \"builderType\", either Formula or Summary, and \n \"fieldTitle\", which is the title of the calculated field being edited.",
        name:"fieldEditorWindowTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"${builderType} Editor [${fieldTitle}]\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:GridRenderer.scrollRedrawDelay":{
        ref:"attr:GridRenderer.scrollRedrawDelay",
        flags:"IRW",
        description:"While drag scrolling in an incrementally rendered grid, time in milliseconds to wait\n before redrawing, after the last mouse movement by the user. This delay may be \n separately customized for mouse-wheel scrolling via ${isc.DocUtils.linkForRef('attr:GridRenderer.scrollWheelRedrawDelay')}.\n <P>\n See also\n ${isc.DocUtils.linkForRef('attr:GridRenderer.instantScrollTrackRedraw')} for cases where this delay is skipped.",
        name:"scrollRedrawDelay",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"75",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "attr:ListGridRecord.enabled":{
        ref:"attr:ListGridRecord.enabled",
        flags:"IR",
        description:"Default property name denoting whether this record is enabled. Property name may be\n modified for some grid via ${isc.DocUtils.linkForRef('attr:ListGrid.recordEnabledProperty')}.",
        name:"enabled",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('disabledRows')}"
        ],
        definingClass:"object:ListGridRecord"
    },
    "attr:MultiGroupPanel.fields":{
        ref:"attr:MultiGroupPanel.fields",
        flags:"IR",
        description:"The list of fields which the user can choose to group by.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:Process.sequences":{
        ref:"attr:Process.sequences",
        flags:"IR",
        description:"Sequences of ProcessElements.  By defining a sequences of elements you can make the\n ${isc.DocUtils.linkForRef('attr:ProcessElement.nextElement')} implicit.\n <P>\n <smartclient>You do not have to explicitly create a ${isc.DocUtils.linkForRef('class:ProcessSequence')},\n you can instead use the shorthand:\n <pre>\n isc.Process.create({\n     startElement:\"firstSequence\", \n     sequences: [\n         { ID:\"something\", elements: [ ... ] },\n         { ID:\"somethingElse\", elements: [ ... ] },\n         ...\n     ]\n     ...\n });\n </pre>\n .. this is equivalent to ..\n <pre>\n isc.Process.create({\n     startElement:\"firstSequence\", \n     sequences: [\n         isc.ProcessSequence.create({ \n              ID:\"something\", \n              elements: [ ... ] \n         }),\n         isc.ProcessSequence.create({ \n              ID:\"somethingElement\", \n              elements: [ ... ] \n         }),\n         ...                           \n     ]\n     ...\n });\n </pre>\n </smartclient>\n <smartgwt>\n Example of using sequences:\n <pre>\n Process process = new Process();\n process.setStartElement(\"firstSequence\");\n ProcessSequence innerSequence = new ProcessSequence(incTask, add2Task, incTask);\n process.setSequences(\n     new ProcessSequence(\"firstSequence\", serviceTask, decisionGateway),\n     new ProcessSequence(\"errorFlow\", failureTask, userNotifyTask)\n );\n // standalone process elements not part of sequences\n process.setElements(new ServiceTask(){...});\n Record state = new Record();\n state.setAttribute(\"someField\", \"someValue\");\n process.setState(state);\n process.start();\n </pre>\n </smartgwt>",
        name:"sequences",
        seeAlso:[
        ],
        valueType:"Array of ProcessSequence",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Process"
    },
    "method:DrawItem.resizeBy":{
        ref:"method:DrawItem.resizeBy",
        flags:"",
        description:" Resize the shape by the specified deltas for the left and top coordinate.\n\n",
        name:"resizeBy",
        seeAlso:[
        ],
        params:[
            {
                description:"change to left coordinate in pixels",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"change to top coordinate in pixels",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:DSRequest.resultSet":{
        ref:"attr:DSRequest.resultSet",
        flags:"R",
        description:"For advanced use in integrating dataset paging with web services,\n the ResultSet that issued this \"fetch\" DSRequest is automatically made available as the\n <code>resultSet</code> property.\n <P>\n This property can only be read.  There is no meaning to setting this property\n yourself.",
        name:"resultSet",
        seeAlso:[
        ],
        valueType:"ResultSet",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:DynamicForm.validateOnExit":{
        ref:"attr:DynamicForm.validateOnExit",
        flags:"IRW",
        description:"If true, form items will be validated when each item's \"editorExit\" handler is fired\n as well as when the entire form is submitted or validated.\n <P>\n Note that this property can also be set at the item level to enable finer granularity\n validation in response to user interaction - if true at either level, validation\n will occur on editorExit.",
        name:"validateOnExit",
        seeAlso:[
            {
                ref:"attr:FormItem.validateOnExit",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:DynamicForm.fetchData":{
        ref:"method:DynamicForm.fetchData",
        flags:"",
        description:" Retrieve data that matches the provided criteria, and edit the first record returned\n \n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"search criteria",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:Calendar.saveButtonTitle":{
        ref:"attr:Calendar.saveButtonTitle",
        flags:"IR",
        description:"The title for the save button in the quick event dialog and the event editor",
        name:"saveButtonTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Save Event\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DateChooser.nextYearIconHeight":{
        ref:"attr:DateChooser.nextYearIconHeight",
        flags:"IRW",
        description:"Height of the icon for the next year button",
        name:"nextYearIconHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:GridRenderer.showClippedValuesOnHover":{
        ref:"attr:GridRenderer.showClippedValuesOnHover",
        flags:"IRWA",
        description:"If true and a cell's value is clipped, then a hover containing the full cell value is\n enabled.\n <p>\n Note that standard cell hovers override clipped value hovers. Thus, to enable clipped value\n hovers, ${isc.DocUtils.linkForRef('attr:GridRenderer.canHover','canHover')} must be unset or null and the corresponding field must have\n ${isc.DocUtils.linkForRef('attr:ListGridField.showHover','showHover')} unset or null as well.",
        name:"showClippedValuesOnHover",
        seeAlso:[
            {
                ref:"attr:GridRenderer.canHover",
                description:null
            },
            {
                ref:"method:GridRenderer.cellValueHoverHTML",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:ListGrid.headerButtonConstructor":{
        ref:"attr:ListGrid.headerButtonConstructor",
        flags:"IR",
        description:"Widget class for this ListGrid's header buttons. If unset, constructor will be\n picked up directly from the standard ${isc.DocUtils.linkForRef('class:Toolbar')} button constructor.",
        name:"headerButtonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "method:FacetChart.legendHover":{
        ref:"method:FacetChart.legendHover",
        flags:"",
        description:" Fires when the mouse hovers over a color swatch or its label in the legend area of the\n chart.\n <p>\n The ${isc.DocUtils.linkForRef('class:FacetValue')} that the user is hovering over is provided.\n If the chart is a ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis chart')}, the\n ${isc.DocUtils.linkForRef('class:FacetValue')} for the hovered-over metric will also be provided.\n\n",
        name:"legendHover",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValue that the mouse is over",
                optional:false,
                name:"facetValue",
                defaultValue:null,
                type:"FacetValue"
            },
            {
                description:"for a multi-axis chart, facetValue representing        the hovered-over metric.  Null if chart is not multi-axis",
                optional:false,
                name:"metricFacetValue",
                defaultValue:null,
                type:"FacetValue"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drillCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "type:ValidationMode":{
        ref:"type:ValidationMode",
        values:[
            {
                description:"Assume provided data is complete and run all validation rules",
                value:"\"full\""
            },
            {
                description:"Validate only the data values that are present ignoring the                  absence of required fields, validators that refer to fields\n                  that are not present, and any conditional validators dependent\n                  on fields that are not present.",
                value:"\"partial\""
            }
        ],
        description:"Mode of validation used for running validation on partially entered data.",
        name:"ValidationMode",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed"
    },
    "attr:StaticTextItem.escapeHTML":{
        ref:"attr:StaticTextItem.escapeHTML",
        flags:"IRW",
        description:"By default HTML values in a staticTextItem will be interpreted by the browser.\n Setting this flag to true causes HTML characters to be escaped, meaning the\n raw value of the field (for example <code>\"&lt;b&gt;AAA&lt;/b&gt;\"</code>) is displayed\n to the user rather than the interpreted HTML (for example <code>\"<b>AAA</b>\"</code>)",
        name:"escapeHTML",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StaticTextItem",
        groups:[
            "appearance"
        ]
    },
    "attr:SectionStack.animateSections":{
        ref:"attr:SectionStack.animateSections",
        flags:"IRW",
        description:"If true, sections are animated during expand/collapse and addition/removal of\n SectionItems is likewise animated.",
        name:"animateSections",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateSections')}"
        ],
        definingClass:"class:SectionStack",
        groups:[
            "animation"
        ]
    },
    "attr:DateChooser.baseFiscalYearStyle":{
        ref:"attr:DateChooser.baseFiscalYearStyle",
        flags:"IRW",
        description:"Base CSS style applied to cells in the ${isc.DocUtils.linkForRef('attr:DateChooser.showFiscalYearChooser','fiscal year column')}.",
        name:"baseFiscalYearStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserFiscalYearCell\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:Canvas.getScrollWidth":{
        ref:"method:Canvas.getScrollWidth",
        flags:"A",
        description:" Returns the scrollable width of the widget's contents, including children, ignoring\n clipping.\n",
        name:"getScrollWidth",
        seeAlso:[
        ],
        returns:{
            description:"the scrollable width of the widget's contents",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:ListGridField.format":{
        ref:"attr:ListGridField.format",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} for numeric or date formatting.  See ${isc.DocUtils.linkForRef('attr:DataSourceField.format')}.",
        name:"format",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "exportFormatting"
        ]
    },
    "attr:TimeItem.secondIncrement":{
        ref:"attr:TimeItem.secondIncrement",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondValues','secondValues')} is unset, this attribute specifies the increment\n to use when generating entries for the second picker.  For example, if this attribute is\n set to 5, the second picker will contain only every fifth value between the \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondMinValue','secondMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondMaxValue','secondMaxValue')}.",
        name:"secondIncrement",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:TextItem.characterCasing":{
        ref:"attr:TextItem.characterCasing",
        flags:"IRWA",
        description:"Should entered characters be converted to upper or lowercase?\n Also applies to values applied with ${isc.DocUtils.linkForRef('method:FormItem.setValue')}.\n <P>\n Note: character casing cannot be used at the same time as a ${isc.DocUtils.linkForRef('attr:TextItem.mask')}.",
        name:"characterCasing",
        seeAlso:[
        ],
        valueType:"CharacterCasing",
        defaultValue:"TextItem.DEFAULT",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formFilters')}"
        ],
        definingClass:"class:TextItem"
    },
    "method:DataSource.setClientOnly":{
        ref:"method:DataSource.setClientOnly",
        flags:"",
        description:" Switch into clientOnly mode, taking the cache from the cacheAllData ResultSet if it \n exists.\n",
        name:"setClientOnly",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:ServiceTask.fixedCriteria":{
        ref:"attr:ServiceTask.fixedCriteria",
        flags:"IR",
        description:"Criteria to be submitted as part of the DSRequest, regardless of inputs to the task.\n Will be combined with the data from the ${isc.DocUtils.linkForRef('attr:Task.inputField')} or with\n ${isc.DocUtils.linkForRef('attr:ServiceTask.criteria')} if specified, via ${isc.DocUtils.linkForRef('classMethod:DataSource.combineCriteria')}.",
        name:"fixedCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ServiceTask"
    },
    "attr:ButtonItem.autoFit":{
        ref:"attr:ButtonItem.autoFit",
        flags:"IR",
        description:"Should the button auto fit to its title. Maps to ${isc.DocUtils.linkForRef('attr:Button.autoFit')} attribute.\n Note that if an explicit width or height is specified for this item, it will be respected,\n disabling autoFit behavior",
        name:"autoFit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ButtonItem"
    },
    "method:ListGrid.getCellAlign":{
        ref:"method:ListGrid.getCellAlign",
        flags:"",
        description:" Return the horizontal alignment for cell contents. Default implementation returns\n ${isc.DocUtils.linkForRef('attr:ListGridField.cellAlign')} if specified, otherwise ${isc.DocUtils.linkForRef('attr:ListGridField.align')}.\n\n",
        name:"getCellAlign",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellStyle",
                description:null
            }
        ],
        params:[
            {
                description:"this cell's record",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"listGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Horizontal alignment of cell contents: 'right', 'center', or 'left'",
            type:"Alignment"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DataSourceField.canFilter":{
        ref:"attr:DataSourceField.canFilter",
        flags:"IR",
        description:"Should the user be able to filter data by this field?\n Affects whether this field will show up in dataBoundComponents with UI for filtering data.\n <P>",
        name:"canFilter",
        seeAlso:[
            {
                ref:"attr:SearchForm.showFilterFieldsOnly",
                description:null
            },
            {
                ref:"attr:SearchForm.canEditFieldAttribute",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "method:Canvas.parentResized":{
        ref:"method:Canvas.parentResized",
        flags:"",
        description:" Fires when the interior size of the parent changes, including parent resize and\n scrollbar introduction or removal.\n <p>\n This method allows a child to implement a layout policy that can be used within any\n parent, such as a Resizer component that always snaps to the parent's\n bottom-right corner.  The default implementation of this method applies a child's\n percent sizes, if any, or implements layout based on the ${isc.DocUtils.linkForRef('attr:Canvas.snapTo')} property\n",
        name:"parentResized",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:TreeGrid.customIconOpenProperty":{
        ref:"attr:TreeGrid.customIconOpenProperty",
        flags:"IRWA",
        description:"This property allows the developer to rename the \n ${isc.DocUtils.linkForRef('attr:TreeNode.showOpenIcon','default node.showOpenIcon')} property.",
        name:"customIconOpenProperty",
        seeAlso:[
            {
                ref:"attr:TreeGrid.customIconProperty",
                description:null
            },
            {
                ref:"attr:TreeGrid.showCustomIconOpen",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"showOpenIcon\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:DataBoundComponent.useFlatFields":{
        ref:"attr:DataBoundComponent.useFlatFields",
        flags:"IR",
        description:"The <code>useFlatFields</code> flag causes all simple type fields anywhere in a nested\n set of DataSources to be exposed as a flat list for form binding.  \n <P>\n <code>useFlatFields</code> is typically used with imported metadata, such as \n ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema','XML Schema')} from a \n ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadWSDL','WSDL-described web service')}, as a means of eliminating levels of XML\n nesting that aren't meaningful in a user interface, without the cumbersome and fragile\n process of mapping form fields to XML structures.\n <P>\n For example, having called ${isc.DocUtils.linkForRef('method:WebService.getInputDS')} to retrieve the input message\n schema for a web service operation whose input message looks like this:\n <pre>\n &lt;FindServices&gt;\n     &lt;searchFor&gt;search text&lt;/searchFor&gt;\n     &lt;Options&gt;\n         &lt;caseSensitive&gt;false&lt;/caseSensitive&gt;\n     &lt;/Options&gt;\n     &lt;IncludeInSearch&gt;\n         &lt;serviceName&gt;true&lt;/serviceName&gt;\n         &lt;documentation&gt;true&lt;/documentation&gt;\n         &lt;keywords&gt;true&lt;/keywords&gt;\n     &lt;/IncludeInSearch&gt;\n &lt;/FindServices&gt;\n </pre>\n Setting <code>useFlatFields</code> on a ${isc.DocUtils.linkForRef('class:DynamicForm')} that is bound to this input\n message schema would result in 5 ${isc.DocUtils.linkForRef('class:FormItem','FormItems')} reflecting the 5 simple type\n fields in the message.\n <P>\n For this form, the result of ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')} might look\n like:\n <P>\n <pre>{\n    searchFor: \"search text\",\n    caseSensitive: false,\n    serviceName: true,\n    documentation : true,\n    keywords : true\n }</pre>\n When contacting a ${isc.DocUtils.linkForRef('class:WebService','WSDL web service')}, these values can be automatically\n mapped to the structure of the input message for a web service operation by setting\n ${isc.DocUtils.linkForRef('attr:WSRequest.useFlatFields')} (for use with ${isc.DocUtils.linkForRef('method:WebService.callOperation')}) or by setting\n ${isc.DocUtils.linkForRef('attr:DSRequest.useFlatFields')} (for use with a ${isc.DocUtils.linkForRef('class:DataSource')} that is\n ${isc.DocUtils.linkForRef('group:wsdlBinding','bound to a WSDL web service')} via\n ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation')}).  \n <P>\n Using these two facilities in conjunction (component.useFlatFields and\n request.useFlatFields) allows gratuitous nesting to be consistently bypassed in both the user\n presentation and when providing the data for XML messages.\n <P>\n You can also set ${isc.DocUtils.linkForRef('attr:OperationBinding.useFlatFields')} to automatically enable \n \"flattened\" XML serialization (request.useFlatFields) for all DataSource requests of a\n particular operationType.\n <P>\n Note that <code>useFlatFields</code> is not generally recommended for use with structures\n where multiple simple type fields exist with the same name, however if used with such a\n structure, the first field to use a given name wins.  \"first\" means the first field\n encountered in a depth first search.  \"wins\" means only the first field will be present as a\n field when data binding.",
        name:"useFlatFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "classAttr:Page.defaultUnsupportedBrowserURL":{
        ref:"classAttr:Page.defaultUnsupportedBrowserURL",
        flags:"IRWA",
        description:"On a call to <code>Page.checkBrowserAndRedirect()</code>, if no explicit URL\n      is passed in, and the browser is not supported by ISC, redirect to this URL.",
        name:"defaultUnsupportedBrowserURL",
        seeAlso:[
            {
                ref:"classMethod:Page.checkBrowserAndRedirect",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"\"[SKIN]/unsupported_browser.html\"",
        type:"classAttr",
        definingClass:"class:Page",
        groups:[
            "files"
        ]
    },
    "attr:DrawPolygon.lineCap":{
        ref:"attr:DrawPolygon.lineCap",
        flags:"IRW",
        description:"Style of drawing the corners of the polygon.",
        name:"lineCap",
        seeAlso:[
        ],
        valueType:"LineCap",
        defaultValue:"\"butt\"",
        type:"attr",
        definingClass:"class:DrawPolygon",
        groups:[
            "line"
        ]
    },
    "classMethod:isc.clearPrompt":{
        ref:"classMethod:isc.clearPrompt",
        flags:"",
        description:"\n\tClear the modal prompt being shown to the user.\n\n",
        name:"clearPrompt",
        seeAlso:[
            {
                ref:"classAttr:Dialog.Prompt",
                description:null
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "attr:ColumnTree.column":{
        ref:"attr:ColumnTree.column",
        flags:"IR",
        getter:[
            "getColumn"
        ],
        description:"Instance of ListGrid used to display each column of the tree.",
        name:"column",
        seeAlso:[
        ],
        valueType:"MultiAutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree"
    },
    "method:TreeGrid.isExportingClientData":{
        ref:"method:TreeGrid.isExportingClientData",
        flags:"",
        description:" Returns true if this component is currently \n ${isc.DocUtils.linkForRef('method:TreeGrid.exportClientData','exporting client data')}.  This method can be called from\n custom cell formatters if you need to return a different formatted value for an export\n than for a live TreeGrid\n",
        name:"isExportingClientData",
        seeAlso:[
            {
                ref:"method:TreeGrid.exportClientData",
                description:null
            }
        ],
        returns:{
            description:"returns true if this component is currently exporting client data",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "group:clientData":{
        ref:"group:clientData",
        refs:[
            "method:DataSource.setCacheAllData",
            "method:DataSource.setCacheData",
            "method:DataSource.setTestData",
            "method:DataSource.invalidateCache",
            "method:DataSource.setClientOnly",
            "method:DataSource.hasAllData",
            "attr:DataSource.cacheAllData",
            "attr:DataSource.cacheAllOperationId",
            "attr:DataSource.cacheAcrossOperationIds",
            "attr:DataSource.cacheMaxAge",
            "attr:DataSource.cacheData",
            "attr:DataSource.testData",
            "attr:DataSource.autoCacheAllData",
            "attr:DataSource.useTestDataFetch"
        ],
        name:"clientData",
        seeAlso:[
        ],
        type:"group"
    },
    "group:compression":{
        ref:"group:compression",
        title:"Compression",
        treeLocation:[
            "Optional Modules/Network Performance"
        ],
        refs:[
        ],
        description:"Compression helps reduce the sizes of various data fetched from the server.  Most modern web\n browsers can handle compressed responses of certain content types. The time it takes to\n decompress these responses on a client system is negligible compared to the time saved\n by reducing the number of bits on the wire, especially for slow connections.\n <p>\n If you're not using the SmartClient Java back-end, there are several compression solutions\n available, depending on your server of choice.  Microsoft's IIS has built-in compression\n capability, please check the reference manual for details.  If you're using Apache, you can\n use <a href='http://sourceforge.net/projects/mod-gzip/' target='_blank'>mod_gzip</a> or \n use <a href='http://httpd.apache.org/docs/2.0/mod/mod_deflate.html' target='_blank'>mod_deflate</a>.  Some\n servlet containers also natively support dynamic compression.\n <p>\n The SmartClient Java back-end supports two types of response compression:\n <ul>\n <li>Pre-compressed static content served via the ISC FileDownload servlet.\n <li>On-the-fly compression of arbitrary content using the CompressionFilter.\n </ul>\n <u>Serving pre-compressed files</u>\n <p>\n To serve pre-compressed static content via FileDownload, register the FileDownload servlet\n in your web.xml as follows:\n <pre>\n     &lt;servlet&gt;\n       &lt;servlet-name&gt;FileDownload&lt;/servlet-name&gt;\n       &lt;servlet-class&gt;com.isomorphic.servlet.FileDownload&lt;/servlet-class&gt;\n     &lt;/servlet&gt;\n </pre>\n Then map any resource that you want to serve compressed to the FileDownload servlet in your\n web.xml.  Typically, you'll want to serve all SmartClient modules compressed.  You can do so\n by adding the following servlet-mapping directive to your web.xml:\n <pre>\n     &lt;servlet-mapping&gt;\n       &lt;servlet-name&gt;FileDownload&lt;/servlet-name&gt;\n       &lt;url-pattern&gt;/isomorphic/system/modules/*&lt;/url-pattern&gt;\n     &lt;/servlet-mapping&gt;\n </pre>\n Finally, you'll need to create pre-compressed versions of your files alongside the\n uncompressed versions.  If you're using the FileAssembler mechanism, it can create\n pre-compressed files for you automatically.  For all other files, you can use any program\n that uses the gzip encoding.  The compressed file must have exactly the same filename as the\n uncompressed version, with a '.gz' extension.  Note that it's important that both the\n compressed and uncompressed versions be present alongside each other because there are cases\n where serving compressed content is not possible (for example HTTP 1.0 requests) - for those\n situations it's important that the uncompressed files be available to be served to the\n client.  The FileDownload filter automatically detects whether or not compression is\n possible.\n <p>\n <u>Dynamic Compression</u>\n <p>\n Dynamic Compression requires the optional Network Performance module.  To use Dynamic\n Compression, register the CompressionFilter filter in your web.xml as follows:\n <pre>\n     &lt;filter&gt;\n         &lt;filter-name&gt;CompressionFilter&lt;/filter-name&gt;\n         &lt;filter-class&gt;com.isomorphic.servlet.CompressionFilter&lt;/filter-class&gt;\n     &lt;/filter&gt;\n </pre>\n Then map any resource that you want dynamically compressed to this filter.  Note that the\n CompressionFilter knows the mime types that are compressible and will automatically ignore\n any stream that sets a content-encoding header, and it automatically figures out if the\n current request is an include or forward (and doesn't compress in that case), so it's safe\n to simply map it to all resources as follows:\n <pre>\n     &lt;filter-mapping&gt;\n         &lt;filter-name&gt;CompressionFilter&lt;/filter-name&gt;\n         &lt;url-pattern&gt;/*&lt;/url-pattern&gt;\n     &lt;/filter-mapping&gt;\n </pre>\n You can register the CompressionFilter anywhere in your filter chain, but be aware that\n if any filters in front wrap and inspect the HttpServletResponse output stream, they will\n be inspecting the compressed response.  Filters are typically applied in the order in which\n they are listed in web.xml and it is advised to keep them that way, otherwise it may result \n in unexpected behavior. For example, if CompressionFilter would be listed after the \n JSSyntaxScannerFilter, the last one would stop working, since it relies on uncompressed data.\n <p>\n <u>Compressible mime types and compatibility</u>\n <p>\n The FileDownload servlet and CompressionFilter filter can serve the following mime-types\n compressed: text/html, text/xml, application/x-javascript, text/javascript, text/ecmascript,\n image/svg+xml, application/javascript, application/json.  If your files are not being compressed, make sure your \n servlet container has a mime type mapping that identifies it as one of the above file types.\n <p>\n Compression for the mime types listed above is supported on all browsers supported by\n SmartClient.  There is one exception: compression of javascript files for IE versions older\n than IE6 Service Pack 2 requires that the CompressionFilter be registered to dynamically\n compress the page that loads these javascript files.",
        name:"compression",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridRecord.canDrag":{
        ref:"attr:ListGridRecord.canDrag",
        flags:"IR",
        description:"When set to <code>false</code>, this record cannot be dragged. If canDrag is false for\n any record in the current selection, none of the records will be draggable.",
        name:"canDrag",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "attr:Canvas.animateScrollAcceleration":{
        ref:"attr:Canvas.animateScrollAcceleration",
        flags:"IRWA",
        description:"Default acceleration function for performing an animated scroll.  If unset, \n <code>this.animateAcceleration</code> will be used by default instead",
        name:"animateScrollAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:HibernateBrowser.includeSubstring":{
        ref:"attr:HibernateBrowser.includeSubstring",
        flags:"IR",
        description:"If set, specifies a substring which must exist in an entity name for it to be included in\n this HibernateBrowser.  If this property is set to a List of strings, entity names are\n included if they match any one of the strings.  The comparison is case-insensitive.\n <p>\n For example, <code>includeSubstring: [\"Order\", \"inv\"]</code> would match all the following \n entity names: \"ORDERS\", \"Inventory\", \"client_invoicing\"",
        name:"includeSubstring",
        seeAlso:[
        ],
        valueType:"String | List of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HibernateBrowser"
    },
    "attr:DataSource.dataTransport":{
        ref:"attr:DataSource.dataTransport",
        flags:"IR",
        description:"Transport to use for all operations on this DataSource. Defaults to\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTransport')}.  This would typically only be set to\n enable \"scriptInclude\" transport for contacting ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','JSON')} web\n services hosted on servers other than the origin server.\n <p>\n When using the \"scriptInclude\" transport, be sure to set ${isc.DocUtils.linkForRef('attr:DataSource.callbackParam')} or\n ${isc.DocUtils.linkForRef('attr:OperationBinding.callbackParam')} to match the name of the query parameter name expected\n by your JSON service provider.",
        name:"dataTransport",
        seeAlso:[
            {
                ref:"type:RPCTransport",
                description:null
            },
            {
                ref:"attr:DataSource.callbackParam",
                description:null
            }
        ],
        valueType:"RPCTransport",
        defaultValue:"RPCManager.defaultTransport",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:Mail.messageData":{
        ref:"attr:Mail.messageData",
        flags:"IRA",
        description:"Allows you to specify an alternative source of substitution values for the templating \n process (by default, the data record(s) returned by the DataSource operation are used).\n If set, this ${isc.DocUtils.linkForRef('type:VelocityExpression')} should evaluate to a Java <code>Map</code>\n object, or a Java <code>List</code> containing only <code>Map</code>s.\n <p>\n For example, assuming you had suitable context stored in a <code>Map</code> that is\n held in the current session as attribute \"foo\", the following would cause the mail \n templating system to look in there for values when running substitution:\n <pre>\n     messageData=\"$session.foo\"\n </pre>",
        name:"messageData",
        seeAlso:[
        ],
        valueType:"VelocityExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "class:ServerObject":{
        methods:[
        ],
        ref:"class:ServerObject",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/RPC"
        ],
        attrs:[
            "attr:ServerObject.lookupStyle",
            "attr:ServerObject.className",
            "attr:ServerObject.methodName",
            "attr:ServerObject.ID",
            "attr:ServerObject.bean",
            "attr:ServerObject.attributeName",
            "attr:ServerObject.attributeScope",
            "attr:ServerObject.visibleMethods",
            "attr:ServerObject.dropExtraFields",
            "attr:ServerObject.targetXPath",
            "attr:ServerObject.crudOnly"
        ],
        description:"The ServerObject tells the ISC server how to find or create a server-side object involved in\n ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} (Direct Method Invocation).  \n <p>\n A ServerObject declaration appears in the XML definition of a ${isc.DocUtils.linkForRef('class:DataSource')} (for\n responding to ${isc.DocUtils.linkForRef('class:DSRequest')}s) or in an Application configuration file (.app.xml) for\n responding to ${isc.DocUtils.linkForRef('class:RPCRequest')}s.\n <P>\n NOTE: Please take note of the points made in \n ${isc.DocUtils.linkForRef('group:serverDataSourceImplementation','this discussion')} of caching and thread-safety\n issues in server-side DataSources.",
        name:"ServerObject",
        seeAlso:[
            {
                ref:"class:DMI",
                description:null
            }
        ],
        type:"class",
        serverDS:"only",
        requiresModules:[
            "SCServer"
        ]
    },
    "group:jsStringTag":{
        ref:"group:jsStringTag",
        title:"&lt;isomorphic:jsString&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i>JavaScript\n <p>\n This tag takes everything in its body and outputs a correctly-escaped JavaScript string.\n This is useful for capturing HTML for display in a Canvas or Label, for example.\n <p>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>var</b><br>\n <i>value format</i>: Any legal JavaScript variable name\n <i>default value</i>: NONE\n <p>\n If specified, the escaped string is assigned to a newly created variable of the specified\n name.  e.g: var foo = \"bar\";\n <p>\n <b>filename</b><br>\n <i>value format</i>: webRoot-relative path to file\n <i>default value</i>: NONE\n <p>\n If specified, the resulting string content is loaded from the specified file instead of\n from the tag body.",
        name:"jsStringTag",
        seeAlso:[
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:Slider.setValue":{
        ref:"method:Slider.setValue",
        flags:"",
        description:" Sets the slider value to newValue and moves the slider thumb to the appropriate position for this\n value. Sends the 'sliderMove' event to the sliderTarget.\n\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new value <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"float"
            },
            {
                description:"do not animate the slider thumb to the new value",
                optional:false,
                name:"noAnimation",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:DataSource.tableCode":{
        ref:"attr:DataSource.tableCode",
        flags:"R",
        description:"<b>Only applicable to the built-in SQL DataSource</b>\n <p>\n This read-only attribute is a secure and unique hashed version of the name of the table \n underlying this dataSource.  It is used automatically by client-side framework code to \n link dataSources together by ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreign key')}, by matching \n DataSource <code>tableCode</code>s with ${isc.DocUtils.linkForRef('attr:DataSourceField.fkTableCode')}s.  This is \n necessary if we automatically discovered a foreign key relationship by inspecting the \n database schema, as a result of a DataSource specifying ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema','autoDeriveSchema')}:\n true.  We use a secure hash rather than the table name itself for security reasons - \n sending the actual table name to the client would be considered an information leakage\n that could encourage attempts at injection attacks.",
        name:"tableCode",
        seeAlso:[
            {
                ref:"attr:DataSourceField.fkTableCode",
                description:null
            },
            {
                ref:"attr:DataSourceField.fkColumnCode",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:DateItem.setSelectionRange":{
        ref:"method:DateItem.setSelectionRange",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.setSelectionRange','setSelectionRange()')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"setSelectionRange",
        seeAlso:[
        ],
        params:[
            {
                description:"character index for start of new selection",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"int"
            },
            {
                description:"character index for end of new selection",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DateItem"
    },
    "method:FacetValue.formatCellValue":{
        ref:"method:FacetValue.formatCellValue",
        flags:"",
        description:" Formatter to apply to values displayed for cells under this facetValue.\n <P>\n Can only be set on the ${isc.DocUtils.linkForRef('attr:CubeGrid.metricFacetId','metric facet')} or, if no metric facet\n is specified, on the innermost column facet.\n <P>\n If a single, grid-wide formatting style is desired, implement\n ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue','grid.formatCellValue()')} instead.\n <P>\n <b>Note:</b>  This method is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.\n\n",
        name:"formatCellValue",
        seeAlso:[
        ],
        params:[
            {
                description:"raw value for the cell being",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"record object for the cell.   Note: If this is a new cell that has not been saved, in an \n   editable grid, it has no associated record object. In this case the edit values will\n   be passed in as this parameter.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"CellRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number for the cell.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"formatted value to display in the cell.",
            type:"string"
        },
        type:"method",
        definingClass:"class:FacetValue"
    },
    "attr:FormulaBuilder.saveAddAnotherButton":{
        ref:"attr:FormulaBuilder.saveAddAnotherButton",
        flags:"IR",
        description:"Button to Save the formula, by generating it's function, testing it and firing \n formulaBuilder.fireOnClose, and then start editing another, new one.",
        name:"saveAddAnotherButton",
        seeAlso:[
        ],
        valueType:"AutoChild Button",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "class:Label":{
        methods:[
            "method:Label.setIconOrientation",
            "method:Label.setIcon",
            "method:Label.setStyleName",
            "method:Label.setContents"
        ],
        ref:"class:Label",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:Label.contents",
            "attr:Label.dynamicContents",
            "attr:Label.align",
            "attr:Label.valign",
            "attr:Label.wrap",
            "attr:Label.autoFit",
            "attr:Label.icon",
            "attr:Label.iconSize",
            "attr:Label.iconWidth",
            "attr:Label.iconHeight",
            "attr:Label.iconOrientation",
            "attr:Label.iconAlign",
            "attr:Label.iconSpacing",
            "attr:Label.showDisabledIcon",
            "attr:Label.showRollOverIcon",
            "attr:Label.showFocusedIcon",
            "attr:Label.showDownIcon",
            "attr:Label.showSelectedIcon",
            "attr:Label.styleName"
        ],
        description:"Labels display a small amount of ${isc.DocUtils.linkForRef('attr:Label.align','alignable')} ${isc.DocUtils.linkForRef('attr:Label.contents','text')}\n with optional ${isc.DocUtils.linkForRef('attr:Label.icon','icon')} and ${isc.DocUtils.linkForRef('attr:Label.autoFit','autoFit')}.\n <P>\n For a general-purpose container for HTML content, use ${isc.DocUtils.linkForRef('class:HTMLFlow')} or ${isc.DocUtils.linkForRef('class:HTMLPane')}\n instead.",
        name:"Label",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('label')}"
        ]
    },
    "attr:TileGrid.animateTileChange":{
        ref:"attr:TileGrid.animateTileChange",
        flags:"IRWA",
        description:"If set, when the dataset changes due to filtering, sorting or other actions, any tiles that\n were showing before and after the change will animate from their old positions to their new\n positions.",
        name:"animateTileChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "appearance"
        ]
    },
    "classMethod:isc.defineClass":{
        ref:"classMethod:isc.defineClass",
        flags:"",
        description:" Shortcut for <code>isc.ClassFactory.defineClass()</code>.\n",
        name:"defineClass",
        seeAlso:[
            {
                ref:"classMethod:ClassFactory.defineClass",
                description:null
            }
        ],
        params:[
            {
                description:"Name for the new class.",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Optional SuperClass Class object or name",
                optional:true,
                name:"superClass",
                defaultValue:null,
                type:"Class"
            }
        ],
        returns:{
            description:"Returns the new Class object.",
            type:"Class"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:Shadow.offset":{
        ref:"attr:Shadow.offset",
        flags:"IR",
        description:null,
        name:"offset",
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[0,0]",
        type:"attr",
        definingClass:"object:Shadow"
    },
    "attr:Calendar.timelineViewTitle":{
        ref:"attr:Calendar.timelineViewTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:Calendar.timelineView','timeline view')}.",
        name:"timelineViewTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Timeline\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "method:NavigationBar.setShowRightButton":{
        ref:"method:NavigationBar.setShowRightButton",
        flags:"",
        description:" Show or hide the ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButton','rightButton')}.\n",
        name:"setShowRightButton",
        seeAlso:[
        ],
        params:[
            {
                description:"if true, the button will be shown, otherwise hidden.",
                optional:false,
                name:"visible",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "attr:ServerObject.crudOnly":{
        ref:"attr:ServerObject.crudOnly",
        flags:"IR",
        description:"For a ServerObject defined at the ${isc.DocUtils.linkForRef('attr:DataSource.serverObject','DataSource level')}, by \n default we only allow it to intercept standard CRUD operations (ie, ordinary fetches, adds,\n updates and removes).  To allow the ServerObject to intercept other types of operation - \n custom operations, validations, etc - set this property to false.  Note that ServerObjects \n declared at the ${isc.DocUtils.linkForRef('attr:OperationBinding.serverObject','OperationBinding level')} always intercept\n that operation, whatever its type, and this property has no effect.\n <p>\n <b>NOTE:</b> If you are intercepting operations on the server because you wish to inspect\n them before deciding whether to process them with bespoke code or allow them to proceed \n with normal processing, the way to invoke normal processing without causing any interference\n is:<pre>\n    return dsRequest.execute();\n </pre>",
        name:"crudOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject",
        requiresModules:[
            "SCServer"
        ]
    },
    "type:BackgroundRepeat":{
        ref:"type:BackgroundRepeat",
        values:[
            {
                description:"Tile the background image horizontally and vertically.",
                value:"Canvas.REPEAT"
            },
            {
                description:"Don't tile the background image at all.",
                value:"Canvas.NO_REPEAT"
            },
            {
                description:"Repeat the background image horizontally but not vertically.",
                value:"Canvas.REPEAT_X"
            },
            {
                description:"Repeat the background image vertically but not horizontally.",
                value:"Canvas.REPEAT_Y"
            }
        ],
        description:"Possible values for ${isc.DocUtils.linkForRef('attr:Canvas.backgroundRepeat')}.",
        name:"BackgroundRepeat",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.getDefaultFieldWidth":{
        ref:"method:ListGrid.getDefaultFieldWidth",
        flags:"",
        description:" Method to calculate and return the default width of a field. This method is called\n to calculate the size of each field's content as part of the\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths','field auto fit')} behavior.\n <P>\n The default implementation varies by ${isc.DocUtils.linkForRef('type:ListGridFieldType','field type')}.\n For fields of type <code>\"icon\"</code>, or fields which show only a\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons','valueIcon')} as a value, and for boolean fields which\n show a checkbox value, the width will be calculated based on the icon size and\n ${isc.DocUtils.linkForRef('attr:ListGrid.iconPadding')}. For other fields the width will be calculated\n based on the rendered width of content. Note that for\n <code>\"image\"</code> type fields, this method will rely on the ${isc.DocUtils.linkForRef('attr:ListGridField.imageWidth')}\n being specified.\n <P>\n Note that this width is the default width of \"content\" - it does not take into account\n the rendered size of the field title.\n\n",
        name:"getDefaultFieldWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"Field for which the size should be determined",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"default size required for the field's content.",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Canvas.enable":{
        ref:"method:Canvas.enable",
        flags:"",
        description:" Enables this widget and any children / peers of this widget.\n",
        name:"enable",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "enable"
        ]
    },
    "class:Portlet":{
        methods:[
            "method:Portlet.setHeight",
            "method:Portlet.setRowHeight",
            "method:Portlet.getPortalLayout",
            "method:Portlet.getPortalPosition",
            "method:Portlet.closeClick",
            "method:Portlet.close"
        ],
        ref:"class:Portlet",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/PortalLayout"
        ],
        attrs:[
            "attr:Portlet.dragType",
            "attr:Portlet.canDrop",
            "attr:Portlet.minHeight",
            "attr:Portlet.minWidth",
            "attr:Portlet.height",
            "attr:Portlet.rowHeight",
            "attr:Portlet.showCloseConfirmationMessage",
            "attr:Portlet.closeConfirmationMessage",
            "attr:Portlet.closeConfirmationDialogProperties",
            "attr:Portlet.destroyOnClose"
        ],
        description:"Custom subclass of Window configured to be embedded within a PortalLayout.",
        name:"Portlet",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DynamicForm.unknownErrorMessage":{
        ref:"attr:DynamicForm.unknownErrorMessage",
        flags:"IRW",
        description:"The error message for a failed validator that does not specify its own errorMessage.",
        name:"unknownErrorMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Invalid value\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation",
            "i18nMessages"
        ]
    },
    "attr:FilterClause.validateOnChange":{
        ref:"attr:FilterClause.validateOnChange",
        flags:"IR",
        description:"If true (the default), validates the entered value when it changes, to make sure it is a \n a valid value of its type (valid string, number, and so on).  No other validation is \n carried out.  If you switch this property off, it is still possible to validate the \n <code>FilterClause</code> by calling ${isc.DocUtils.linkForRef('method:FilterClause.validate')} from your own code.",
        name:"validateOnChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:Validator.stopIfFalse":{
        ref:"attr:Validator.stopIfFalse",
        flags:"IR",
        description:"Normally, all validators defined for a field will be run even if one of the validators has\n already failed.  However, if <code>stopIfFalse</code> is set, validation will not proceed\n beyond this validator if the check fails.\n <P>\n This is useful to prevent expensive validators from being run unnecessarily, or to allow\n custom validators that don't need to be robust about handling every conceivable type of\n value.",
        name:"stopIfFalse",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "attr:DrawLinePath.endLeft":{
        ref:"attr:DrawLinePath.endLeft",
        flags:"IR",
        description:"Ending left coordinate of the line.  Overrides left coordinate of ${isc.DocUtils.linkForRef('attr:DrawLinePath.endPoint')} if\n both are set.",
        name:"endLeft",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0 , IRW",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "attr:DrawPane.translate":{
        ref:"attr:DrawPane.translate",
        flags:"IR",
        description:"Global translation. This array has two numbers. The first number is the X translation amount\n in pixels and the second number is the Y translation amount in pixels.",
        name:"translate",
        seeAlso:[
        ],
        valueType:"Array[] of int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawPane"
    },
    "group:monthViewFormatting":{
        ref:"group:monthViewFormatting",
        refs:[
            "method:Calendar.getDayBodyHTML"
        ],
        name:"monthViewFormatting",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.resort":{
        ref:"method:ListGrid.resort",
        flags:"",
        description:" If a list has become unsorted due to data modification or a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.unsort')}, this method will resort the list by the previous\n ${isc.DocUtils.linkForRef('method:ListGrid.setSort','sort-specifier')} array, if there is one, or by the previous\n sort-field and -direction.\n\n",
        name:"resort",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "attr:GridRenderer.canSelectOnRightMouse":{
        ref:"attr:GridRenderer.canSelectOnRightMouse",
        flags:"RW",
        description:"If true, rightMouseDown events will fire 'selectOnRightMouseDown()' for the appropriate cells.",
        name:"canSelectOnRightMouse",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:DataSourceField.validators":{
        ref:"attr:DataSourceField.validators",
        flags:"IR",
        description:"Validators to be applied to this field.\n <p>\n Validators are applied whenever there is an attempt to save changes to a field.\n <p>\n For the available set of built-in validators, and how to define a custom validator, see the\n ${isc.DocUtils.linkForRef('class:Validator')} class.",
        name:"validators",
        seeAlso:[
            {
                ref:"class:Validator",
                description:null
            }
        ],
        valueType:"Array of Validator",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "dataType",
            "validation"
        ]
    },
    "method:PickTreeItem.fetchData":{
        ref:"method:PickTreeItem.fetchData",
        flags:"",
        description:" Only applies to databound items (see ${isc.DocUtils.linkForRef('attr:PickTreeItem.optionDataSource')}).<br>\n Performs a fetch type operation on this item's DataSource to retrieve/refresh the tree\n of data displayed as rows in this items menu.\n",
        name:"fetchData",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:PickTreeItem"
    },
    "method:Class.ignore":{
        ref:"method:Class.ignore",
        flags:"A",
        description:"\t\tStop observing a method on some other object.\n\n",
        name:"ignore",
        seeAlso:[
            {
                ref:"method:Class.observe",
                description:null
            }
        ],
        params:[
            {
                description:"object to observe",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"name of the method to ignore",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true == observation stopped, false == no change made",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "observation"
        ]
    },
    "attr:RecordEditor.actionButton":{
        ref:"attr:RecordEditor.actionButton",
        flags:"R",
        description:"Automatically created Button auto-child shown at the edge of the recordEditor.\n For a recordEditor acting as a ${isc.DocUtils.linkForRef('attr:ListGrid.filterEditor')}, this button will\n show the ${isc.DocUtils.linkForRef('attr:RecordEditor.filterImg')} as an ${isc.DocUtils.linkForRef('attr:Button.icon')} by default.\n <P>\n Clicking this button will call ${isc.DocUtils.linkForRef('method:RecordEditor.performAction')} on the editor.\n <P>\n May be customized using the standard ${isc.DocUtils.linkForRef('type:AutoChild')} pattern, by overriding\n ${isc.DocUtils.linkForRef('attr:RecordEditor.actionButtonProperties')}.",
        name:"actionButton",
        seeAlso:[
        ],
        valueType:"Button AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RecordEditor"
    },
    "attr:CubeGrid.canResizeColumns":{
        ref:"attr:CubeGrid.canResizeColumns",
        flags:"IRW",
        description:"If true, body columns can be resized via the innermost column headers.",
        name:"canResizeColumns",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:ListGridField.sortByDisplayField":{
        ref:"attr:ListGridField.sortByDisplayField",
        flags:"IRW",
        description:"For a field with <code>displayField</code> configured, should client-side sorting\n be performed on the display field value? Unless explicitly set to <code>false</code>\n the display field value is used.",
        name:"sortByDisplayField",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "attr:TimeItem.textFieldProperties":{
        ref:"attr:TimeItem.textFieldProperties",
        flags:"IRA",
        description:"Custom properties to apply to the ${isc.DocUtils.linkForRef('attr:TimeItem.textField','text field')} generated for \n this timeItem when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is true.",
        name:"textFieldProperties",
        seeAlso:[
        ],
        valueType:"TextItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:FilterBuilder.removeButtonPrompt":{
        ref:"attr:FilterBuilder.removeButtonPrompt",
        flags:"IR",
        description:"The hover prompt text for the remove button.",
        name:"removeButtonPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Remove\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:String.contains":{
        ref:"method:String.contains",
        flags:"",
        description:"\t\t\tReturns true if this string contains the specified substring.\n",
        name:"contains",
        seeAlso:[
        ],
        params:[
            {
                description:"string to look for",
                optional:false,
                name:"substring",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"true == this string contains the substring",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:String",
        groups:[
            "stringProcessing"
        ]
    },
    "attr:OperationBinding.callbackParam":{
        ref:"attr:OperationBinding.callbackParam",
        flags:"IR",
        description:"Applies only to dataFormat: \"json\".  Specifies the name of the query parameter that\n tells your JSON service what function to call as part of the response for this operation.\n <P>\n Typically set once for the DataSource as a whole via ${isc.DocUtils.linkForRef('attr:DataSource.callbackParam')}.",
        name:"callbackParam",
        seeAlso:[
            {
                ref:"attr:DataSource.callbackParam",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"callback\"",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:CubeGrid.canMinimizeColumns":{
        ref:"attr:CubeGrid.canMinimizeColumns",
        flags:"IRW",
        description:"If true, allow columns in the grid body to be minimized (reduced to the width of the\n minimize control) by clicking on a minimize control in the innermost column headers.",
        name:"canMinimizeColumns",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:DynamicForm.valuesManager":{
        ref:"attr:DynamicForm.valuesManager",
        flags:"IA",
        description:"If set at init time, this dynamicForm will be created as a member form for the\n specified valuesManager.  To update the valuesManager to which a form belongs after init\n use <code>valuesManager.addMember(form)</code> and \n <code>valuesManager.removeMember(form)</code>",
        name:"valuesManager",
        seeAlso:[
            {
                ref:"class:ValuesManager",
                description:null
            }
        ],
        valueType:"ValuesManager instance or global ID",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formValuesManager"
        ]
    },
    "attr:Tree.defaultNodeTitle":{
        ref:"attr:Tree.defaultNodeTitle",
        flags:"IRW",
        description:"Title assigned to nodes without a ${isc.DocUtils.linkForRef('attr:Tree.titleProperty')} value or a\n ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')} value.",
        name:"defaultNodeTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Untitled\"",
        type:"attr",
        definingClass:"class:Tree"
    },
    "attr:FacetChart.dataShapeProperties":{
        ref:"attr:FacetChart.dataShapeProperties",
        flags:"IR",
        description:"Properties for data shapes (filled areas in area or radar charts).",
        name:"dataShapeProperties",
        seeAlso:[
        ],
        valueType:"DrawPath Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.getEditCol":{
        ref:"method:ListGrid.getEditCol",
        flags:"",
        description:" Returns the index of the column being edited or null if there is no edit col.\n\n",
        name:"getEditCol",
        seeAlso:[
        ],
        returns:{
            description:"index of the current edit column",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:DrawSector.radius":{
        ref:"attr:DrawSector.radius",
        flags:"IR",
        description:"Radius of the sector.",
        name:"radius",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DrawSector"
    },
    "method:Layout.drop":{
        ref:"method:Layout.drop",
        flags:"A",
        description:" Layouts have built-in handling of component drag and drop.  See the discussion in\n ${isc.DocUtils.linkForRef('class:Layout')} on how it works.  If you override this builtin implementation of drop() and\n you're using the built-in dropLine via ${isc.DocUtils.linkForRef('attr:Layout.canDropComponents')}:true, be sure to call\n ${isc.DocUtils.linkForRef('method:Layout.hideDropLine')} to hide the dropLine after doing your custom drop() handling.\n\n",
        name:"drop",
        seeAlso:[
        ],
        returns:{
            description:"Returning false will cancel the drop entirely",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:EdgedCanvas.centerBackgroundColor":{
        ref:"attr:EdgedCanvas.centerBackgroundColor",
        flags:"IR",
        description:"Background color for the center section only.  Can be used as a surrogate background\n color for the decorated Canvas, if the Canvas is set to partially overlap the edges and\n hence can't show a background color itself without occluding media.",
        name:"centerBackgroundColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:DSRequest.pendingAdd":{
        ref:"attr:DSRequest.pendingAdd",
        flags:"IR",
        description:"Indicates that a validation request is being made for a record that will ultimately be \n saved with an \"add\" request, as opposed to an \"update\" request.  This context is necessary\n for some validators because the nature of the validation depends on whether we are adding\n or updating a record.  The system sets this flag when processing interim validations, such\n as those fired when ${isc.DocUtils.linkForRef('attr:DynamicForm.validateOnChange')} is in force.",
        name:"pendingAdd",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "group:prompt":{
        ref:"group:prompt",
        refs:[
        ],
        name:"prompt",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DrawRect.getBoundingBox":{
        ref:"method:DrawRect.getBoundingBox",
        flags:"",
        description:" Returns the top, left, top+height, left+width \n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:DataSourceField.mimeType":{
        ref:"attr:DataSourceField.mimeType",
        flags:"IR",
        description:"For a ${isc.DocUtils.linkForRef('group:binaryFields','binary field')}, sets a fixed mime type for all files stored\n to this field.  Should be set to a standard mime type string, for example, \"text/plain\" for\n a .txt file.\n <P>\n This is useful if a binary field only stored one type of file and you chose not to store \n filenames, since the extension of the file name is normally used to determine the mime type.",
        name:"mimeType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:Calendar.dateFormatter":{
        ref:"attr:Calendar.dateFormatter",
        flags:"IRW",
        description:"Date formatter for displaying events.\n Default is to use the system-wide default short date format, configured via\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}.  Specify any valid ${isc.DocUtils.linkForRef('type:DateDisplayFormat')}.",
        name:"dateFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:CubeGrid.deselectAll":{
        ref:"method:CubeGrid.deselectAll",
        flags:"",
        description:" Deselect all cells and facetValues.\n\n      <br><i>methodType</i> action\n",
        name:"deselectAll",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "classAttr:Operators.orTitle":{
        ref:"classAttr:Operators.orTitle",
        flags:"IR",
        description:"Title for the \"or\" operator",
        name:"orTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Match Any\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ImgSplitbar.canCollapse":{
        ref:"attr:ImgSplitbar.canCollapse",
        flags:"IRW",
        description:"If this property is true, a click on the Splitbar will collapse its \n ${isc.DocUtils.linkForRef('attr:Splitbar.target','target')}, hiding it and shifting the Splitbar and other members\n of the layout across to fill the newly available space. If the target is already hidden\n a click will expand it again (showing it at its normal size).\n <p>\n Note that on touch devices, to enable collapsing/uncollapsing the <code>target</code>\n in response to a tap, ${isc.DocUtils.linkForRef('attr:Splitbar.canCollapseOnTap','canCollapseOnTap')} must be set to\n <code>true</code>.",
        name:"canCollapse",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgSplitbar"
    },
    "attr:TimeItem.showHintInField":{
        ref:"attr:TimeItem.showHintInField",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is true and a ${isc.DocUtils.linkForRef('attr:FormItem.hint','hint')} is\n set, should the hint be shown within the field?\n <p>\n Note that when using a native HTML5 time input (see ${isc.DocUtils.linkForRef('attr:TimeItem.browserInputType')}),\n in-field hints are currently supported, but future browser changes might not allow\n in-field hints to be supported. Therefore, it is safest to <em>not</em> use in-field\n hints in conjunction with a native HTML5 time input.\n <p>\n To change this attribute after being drawn, it is necessary to call ${isc.DocUtils.linkForRef('method:FormItem.redraw')}\n or redraw the form.",
        name:"showHintInField",
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.defaultGroupingMode":{
        ref:"attr:ListGridField.defaultGroupingMode",
        flags:"IR",
        description:"Default groupingMode used when the user does not specify a mode or grouping is triggered\n programmatically and ${isc.DocUtils.linkForRef('attr:ListGridField.groupingMode','field.groupingMode')} is unset.\n See ${isc.DocUtils.linkForRef('attr:ListGridField.groupingModes','field.groupingModes')}.",
        name:"defaultGroupingMode",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "grouping"
        ]
    },
    "group:cacheSync":{
        ref:"group:cacheSync",
        refs:[
            "attr:DSResponse.invalidateCache",
            "attr:ResultSet.initialData",
            "attr:ResultSet.initialLength",
            "attr:ResultSet.sortSpecifiers",
            "attr:ResultSet.allRows",
            "attr:ResultSet.updateCacheFromRequest",
            "attr:ResultSet.dropCacheOnUpdate",
            "attr:ResultSet.disableCacheSync",
            "attr:ResultSet.neverDropUpdatedRows",
            "attr:ResultSet.updatePartialCache",
            "attr:ResultTree.updateCacheFromRequest",
            "attr:ResultTree.disableCacheSync"
        ],
        name:"cacheSync",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:SplitPane.detailTitle":{
        ref:"attr:SplitPane.detailTitle",
        flags:"IRW",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')}.",
        name:"detailTitle",
        setter:[
            "setDetailTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:Layout.showMember":{
        ref:"method:Layout.showMember",
        flags:"",
        description:" Show the specified member, firing the specified callback when the show is complete.\n <P>\n Members can always be directly shown via <code>member.show()</code>, but if\n ${isc.DocUtils.linkForRef('attr:Layout.animateMembers','animation')} is enabled, animation will only occur if showMember() is\n called to show the member.\n\n",
        name:"showMember",
        seeAlso:[
        ],
        params:[
            {
                description:"Member to show",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"action to fire when the member has been shown",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Function"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "group:submitting":{
        ref:"group:submitting",
        refs:[
            "method:DynamicForm.cancel",
            "method:ValuesManager.cancel",
            "method:DynamicForm.submitForm",
            "method:DynamicForm.submitValues",
            "method:SearchForm.search",
            "method:ValuesManager.submitValues",
            "attr:DynamicForm.action",
            "attr:DynamicForm.target",
            "attr:DynamicForm.method",
            "attr:DynamicForm.encoding",
            "attr:DynamicForm.canSubmit",
            "attr:DynamicForm.saveOnEnter",
            "type:FormMethod",
            "type:Encoding"
        ],
        description:"Direct submission of forms to a target URL\n <P>\n <b>NOTE:</b> directly submitting forms is only done for specialized purposes, such as\n integration with certain legacy systems.  Normal form usage contacts the server via \n ${isc.DocUtils.linkForRef('group:dataBoundComponentMethods','DataBound Component Methods')}, through the RPCManager system.",
        name:"submitting",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TextItem.maskPromptChar":{
        ref:"attr:TextItem.maskPromptChar",
        flags:"IRWA",
        description:"Character that is used to fill required empty mask positions\n to display text while control has focus.",
        name:"maskPromptChar",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"_\"",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "attr:SelectOtherItem.separatorTitle":{
        ref:"attr:SelectOtherItem.separatorTitle",
        flags:"IRW",
        description:"Title for the separator between normal items and the <code>Other...</code> item in the drop\n down list.  Selecting this item will not change the FormItem's value.",
        name:"separatorTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"--------------------\"",
        type:"attr",
        definingClass:"class:SelectOtherItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSourceField.viewRequiresRole":{
        ref:"attr:DataSourceField.viewRequiresRole",
        flags:"IR",
        description:"Comma-separated list of user roles that are allowed to fetch this field. If the current user\n has any of the roles listed, values for the field will be fetched.  Please see \n ${isc.DocUtils.linkForRef('attr:OperationBinding.requiresRole')} for further details of SmartClient's declarative \n role-based security.  Please also see \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresAuthentication','viewRequiresAuthentication')} for details\n of how declarative field-level security settings can be overridden per-request.",
        name:"viewRequiresRole",
        seeAlso:[
            {
                ref:"attr:DataSourceField.viewRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.editRequiresRole",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:Selection.getLength":{
        ref:"method:Selection.getLength",
        flags:"",
        description:" Returns the number of selected records.\n\n",
        name:"getLength",
        seeAlso:[
        ],
        returns:{
            description:"number of selected records",
            type:"int"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:ColorPicker.cancelButtonTitle":{
        ref:"attr:ColorPicker.cancelButtonTitle",
        flags:"IR",
        description:"The title for the 'Cancel' button.",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:RPCRequest.promptCursor":{
        ref:"attr:RPCRequest.promptCursor",
        flags:"IRW",
        description:"Controls the cursor shown when ${isc.DocUtils.linkForRef('classAttr:RPCManager.promptStyle')} is set to\n <code>\"cursor\"</code> for this request only. Defaults to ${isc.DocUtils.linkForRef('classAttr:RPCManager.promptCursor')}.\n <p>\n In Safari, IE 5.5 and Firefox 1.0 the default value is \"wait\", on all other platforms it is\n \"progress\".  The reason for this split is that the above-mentioned browsers do not support\n CSS2.1 - which is required for the \"progress\" cursor type.",
        name:"promptCursor",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.promptCursor",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"browser-dependent",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:Task.inputField":{
        ref:"attr:Task.inputField",
        flags:"IR",
        description:"Field in the ${isc.DocUtils.linkForRef('attr:Process.state','process state')} which is provided as input data to this\n task.  \n See ${isc.DocUtils.linkForRef('group:taskIO')}.",
        name:"inputField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Task"
    },
    "method:Canvas.updateHover":{
        ref:"method:Canvas.updateHover",
        flags:"A",
        description:" If this canvas is currently showing a hover (see ${isc.DocUtils.linkForRef('method:Canvas.handleHover')}), this method\n can be called to update the contents of the hover. Has no effect if the hover canvas is not\n showing for this widget.\n",
        name:"updateHover",
        seeAlso:[
        ],
        params:[
            {
                description:"Option to specify new HTML for the hover. If not passed, the result   of ${isc.DocUtils.linkForRef('method:Canvas.getHoverHTML','this.getHoverHTML()')} will be used instead. Note that if the\n   hover HTML is empty the hover will be hidden.",
                optional:true,
                name:"hoverHTML",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "class:RibbonBar":{
        methods:[
            "method:RibbonBar.addGroup"
        ],
        ref:"class:RibbonBar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
        ],
        description:"A ${isc.DocUtils.linkForRef('class:ToolStrip','ToolStrip-based')} class for showing \n ${isc.DocUtils.linkForRef('class:RibbonGroup','groups')} of related buttons and other controls.",
        name:"RibbonBar",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.tallBaseStyle":{
        ref:"attr:ListGrid.tallBaseStyle",
        flags:"IR",
        description:"\"Tall\" baseStyle for this listGrid. Only applies if ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} is\n set to null.\n <P>\n If <code>baseStyle</code> is unset, this\n property will be used as a base cell style unless the grid is showing fixed height\n rows with a specified cellHeight that matches ${isc.DocUtils.linkForRef('attr:ListGrid.normalCellHeight')}, in\n which case ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')} will be used. Note that in Internet Explorer\n if ${isc.DocUtils.linkForRef('attr:ListGrid.fastCellUpdates')} is true, <code>tallBaseStyle</code> will also be\n used even if the cellHeight matches the specified <code>normalCellHeight</code> for the\n grid.",
        name:"tallBaseStyle",
        seeAlso:[
            {
                ref:"method:ListGrid.getBaseStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"cell\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "type:AutoFitWidthApproach":{
        ref:"type:AutoFitWidthApproach",
        values:[
            {
                description:"Size field to fit to the data value(s) contained in the field.",
                value:"\"value\""
            },
            {
                description:"Size field to fit the field title",
                value:"\"title\""
            },
            {
                description:"Size field to fit either the field title or the data values in the field  (whichever requires more space).",
                value:"\"both\""
            }
        ],
        description:"How should field width be determined when ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')} is true?",
        name:"AutoFitWidthApproach",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoFitFields"
        ]
    },
    "method:Selection.select":{
        ref:"method:Selection.select",
        flags:"",
        description:"\t\t\tSelect a particular item\n",
        name:"select",
        seeAlso:[
        ],
        params:[
            {
                description:"object to select",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "method:ListGrid.expandRecords":{
        ref:"method:ListGrid.expandRecords",
        flags:"",
        description:" Expands the passed list of ${isc.DocUtils.linkForRef('object:ListGridRecord','records')} by creating a subcomponent for\n each record and inserting them it in to the record's grid-row.  Calls\n ${isc.DocUtils.linkForRef('method:ListGrid.expandRecord','expandRecord')} for each passed record, but only marks the\n grid for redraw once, after all expansions are complete.\n\n",
        name:"expandRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records to expand",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of ListGridRecord"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:ListGrid.headerBarStyle":{
        ref:"attr:ListGrid.headerBarStyle",
        flags:"IR",
        description:"Set the CSS style used for the header as a whole.",
        name:"headerBarStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "type:ListStyleType":{
        ref:"type:ListStyleType",
        values:[
            {
                description:"A filled, black dot (&bull;)",
                value:"\"disc\""
            },
            {
                description:"An unfilled circle (&#9702;)",
                value:"\"circle\""
            },
            {
                description:"A filled, black square (&#9632;)",
                value:"\"square\""
            },
            {
                description:"Numbers (1., 2., 3., etc.)",
                value:"\"decimal\""
            },
            {
                description:"Uppercase Roman numerals (I., II., III., IV., etc.)",
                value:"\"upper-roman\""
            },
            {
                description:"Lowercase Roman numerals (i., ii., iii., iv., etc.)",
                value:"\"lower-roman\""
            },
            {
                description:"Uppercase letters (A., B., C., etc.)",
                value:"\"upper-alpha\""
            },
            {
                description:"Lowercase letters (a., b., c., etc.)",
                value:"\"lower-alpha\""
            },
            {
                description:"An image used in place of a marker.",
                value:"\"custom-image\""
            }
        ],
        description:"The style of list item marker for a list.",
        name:"ListStyleType",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:DataSourceField.showFileInline":{
        ref:"attr:DataSourceField.showFileInline",
        flags:"IR",
        description:"For a field of type:\"imageFile\", indicates whether to stream the image and display it\n inline or to display the View and Download icons.",
        name:"showFileInline",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:Canvas.percentBox":{
        ref:"attr:Canvas.percentBox",
        flags:"IRA",
        description:"Governs the model to be used when sizing canvases with percentage width or height, or\n positioning widgets with a specified ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','snapTo')}.\n <P>\n Only affects widgets with a a specified ${isc.DocUtils.linkForRef('attr:Canvas.percentSource','percentSource')}, or\n widgets that have ${isc.DocUtils.linkForRef('attr:Canvas.snapTo')} set and are peers of some\n ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','other canvas')}.\n <P>\n Determines whether the coordinates used for sizing (for percentage sized widgets) and\n positioning (if <code>snapTo</code> is set) should be relative to the visible size or the\n viewport size of the percentSource or ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master canvas')} widget.",
        name:"percentBox",
        seeAlso:[
        ],
        valueType:"PercentBoxModel",
        defaultValue:"\"visible\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:DateItem.getFiscalCalendar":{
        ref:"method:DateItem.getFiscalCalendar",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('object:FiscalCalendar')} object that will be used by this item's DateChooser.\n\n",
        name:"getFiscalCalendar",
        seeAlso:[
        ],
        returns:{
            description:"the fiscal calendar for this chooser, if set, or the global            one otherwise",
            type:"FiscalCalendar"
        },
        type:"method",
        definingClass:"class:DateItem"
    },
    "attr:DynamicForm.implicitSaveDelay":{
        ref:"attr:DynamicForm.implicitSaveDelay",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:DynamicForm.implicitSave','implicitSave')} is true, this attribute dictates the \n millisecond delay after which form items are automatically saved during editing.",
        name:"implicitSaveDelay",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2000",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:DynamicForm.handleAsyncValidationReply":{
        ref:"method:DynamicForm.handleAsyncValidationReply",
        flags:"",
        description:" Notification fired when an asynchronous validation completes.\n",
        name:"handleAsyncValidationReply",
        seeAlso:[
        ],
        params:[
            {
                description:"true if validation succeeded, false if it failed",
                optional:false,
                name:"success",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"Map of errors by fieldName. Will be null if validation succeeded.",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "method:Tree.getParents":{
        ref:"method:Tree.getParents",
        flags:"",
        description:"\n Given a node, return an array of the node's parents with the immediate parent first.  The\n node itself is not included in the result.  For example, for the following tree:\n <pre>\n root\n   foo\n     bar\n </pre>\n Calling <code>tree.getParents(bar)</code> would return: <code>[foo, root]</code>.  Note that\n the returned array will contain references to the nodes, not the names.\n\n",
        name:"getParents",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"array of node's parents",
            type:"Array"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:DetailViewerField.linkText":{
        ref:"attr:DetailViewerField.linkText",
        flags:"IRW",
        description:"The HTML to display for values of this field if the field type is set to \"link\". \n <P>\n This property sets linkText that will be the same for all records.  You can set linkText\n on a per-record basis via ${isc.DocUtils.linkForRef('attr:DetailViewerRecord.linkText')}.",
        name:"linkText",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.type",
                description:null
            },
            {
                ref:"attr:DetailViewerRecord.linkText",
                description:null
            },
            {
                ref:"attr:DetailViewer.linkTextProperty",
                description:null
            },
            {
                ref:"attr:DetailViewerField.linkTextProperty",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:ListGrid.validateByCell":{
        ref:"attr:ListGrid.validateByCell",
        flags:"IRW",
        description:"Whether client-side validation checks should be performed when the user moves between\n cells in the current edit row.  If unset, defaults to ${isc.DocUtils.linkForRef('attr:ListGrid.editByCell')}.\n <P>\n Note that validation always occurs when a row is to be saved, so setting\n ${isc.DocUtils.linkForRef('attr:ListGrid.saveByCell')}:true forces validation on cell transitions.  To completely disable\n automatic validation, set ${isc.DocUtils.linkForRef('attr:ListGrid.neverValidate')}:true.",
        name:"validateByCell",
        seeAlso:[
            {
                ref:"group:editing",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "method:GridRenderer.getEventColumn":{
        ref:"method:GridRenderer.getEventColumn",
        flags:"",
        description:" Returns the column number of the most recent mouse event.\n",
        name:"getEventColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"optional x-coordinate to obtain column number for, in lieu of the x                        coordinate of the last mouse event",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"column number, or -2 if beyond last drawn column",
            type:"int"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events",
            "selection"
        ]
    },
    "attr:Canvas.snapHGap":{
        ref:"attr:Canvas.snapHGap",
        flags:"IRW",
        description:"The horizontal grid size to use, in pixels, when snap-to-grid is enabled.",
        name:"snapHGap",
        seeAlso:[
            {
                ref:"attr:Canvas.snapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.snapResizeToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapResizeToGrid",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "type:RelativeDateShortcut":{
        ref:"type:RelativeDateShortcut",
        description:"A RelativeDateShortcut is a special string that represents a shortcut to a date phrase that can \n be automatically mapped to a ${isc.DocUtils.linkForRef('type:RelativeDateString')} for use in widgets that \n leverage relative-dates, such as the ${isc.DocUtils.linkForRef('class:RelativeDateItem')}.\n <P>\n Note that some shortcuts indicate a time period but do not directly indicate whether the value\n refers to the start or end of the time period in question. This ambiguity\n can be resolved by specifying an explicit ${isc.DocUtils.linkForRef('type:RelativeDateRangePosition')} when calling APIs that \n convert from RelativeDates to absolute date values. This is the case for <i>$today</i>, \n <i>$tomorrow</i>, <i>$yesterday</i>, <i>$weekAgo</i>, <i>$weekFromNow</i>, <i>$monthAgo</i>\n and <i>$monthFromNow</i>. If a range position is not explicitly passed, these will all default\n to the start of the day in question.\n <P>\n Builtin options include\n <ul>\n <li> $now - this moment </li>\n <li> $today - the current day. By default this resolves to the start of the current day though\n   an explicit ${isc.DocUtils.linkForRef('type:RelativeDateRangePosition')} may be used to specify the end of the current day.</li>\n <li> $startOfToday - the start of today</li>\n <li> $endOfToday - the end of today (one millisecond before the $startOfTomorrow) </li>\n <li> $yesterday - the previous day.</li>\n <li> $startOfYesterday - the start of yesterday</li>\n <li> $endOfYesterday - the end of yesterday (one millisecond before the $startOfToday) </li>\n <li> $tomorrow - the following day</li>\n <li> $startOfTomorrow - the start of tomorrow </li>\n <li> $endOfTomorrow - the end of tomorrow </li>\n <li> $weekAgo - the current day of the previous week </li>\n <li> $weekFromNow - the current day of the next week </li>\n <li> $startOfWeek - the start of the current week </li>\n <li> $endOfWeek - the end of the current week </li>\n <li> $monthAgo - the current day of the previous month </li>\n <li> $monthFromNow - the current day of the following month </li>\n <li> $startOfMonth - the start of the current month </li>\n <li> $endOfMonth - the end of the current month </li>\n <li> $startOfYear - the start of the current year </li>\n <li> $endOfYear - the end of the current year </li>\n </ul>\n \n <P>",
        name:"RelativeDateShortcut",
        seeAlso:[
            {
                ref:"type:RelativeDateString",
                description:null
            }
        ],
        type:"type"
    },
    "method:Gauge.setMinValue":{
        ref:"method:Gauge.setMinValue",
        flags:"",
        description:" Sets the minimum dial value, rescaling all sectors and the dial value.\n\n",
        name:"setMinValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new minimum dial value. Must be at least 1 less than the maximum dial value. If <code>minValue</code> is not at least 1 less than the maximum value,\n then it is set to <code>maxValue - 1</code>.",
                optional:false,
                name:"minValue",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:UserTask.targetView":{
        ref:"attr:UserTask.targetView",
        flags:"IR",
        description:"Optional widget that should be shown to allow user input.  If this widget is a DynamicForm,\n it will also be automatically used as the ${isc.DocUtils.linkForRef('attr:UserTask.targetForm')} unless either\n <code>targetForm</code> or ${isc.DocUtils.linkForRef('attr:UserTask.targetVM')} is set.\n <P>\n <code>UserTask</code> will automatically handle various scenarios of the\n <code>targetView</code> being not currently visible or draw()n, according to the following\n rules:\n <ul>\n <li> if the view itself is marked hidden, it will be show()n\n <li> if the view is inside a hidden parent, the parent will be show()n\n <li> if the view is the ${isc.DocUtils.linkForRef('attr:Tab.pane')} of a tab in a TabSet, the tab will be selected\n <li> if the view is listed in ${isc.DocUtils.linkForRef('attr:SectionStackSection.items')} for a which is either\n      collapsed or hidden section, the section will be shown and expanded\n <li> if the view is listed in ${isc.DocUtils.linkForRef('attr:Window.items')} for a Window, the Window will be shown\n <li> if any of these conditions apply to any parent of the targetView, the rules will be\n      applied to that parent as well.  For example, the targetView is in a collapsed section\n      inside a tab which is not selected, the section will be expanded <b>and</b> the tab\n      selected\n </ul>",
        name:"targetView",
        seeAlso:[
        ],
        valueType:"Canvas or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "attr:Canvas.snapTo":{
        ref:"attr:Canvas.snapTo",
        flags:"IRW",
        getter:[
            "getSnapTo"
        ],
        description:"Position this widget such that it is aligned with (\"snapped to\") an edge of its\n ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master')} (if specified), or its\n ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas','parent canvas')}.\n <P>\n Note that this property also impacts the sizing of this widget. If this widgets size\n is specified as a percent value, and has no explicit\n ${isc.DocUtils.linkForRef('attr:Canvas.percentSource')}, sizing will be calculated based on the size of the\n ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master canvas')} when snapTo is set.\n <P>\n Possible values: BR, BL, TR, TL, R, L, B, T, C where B=Bottom, T=Top, L=Left, R=right\n and C=center\n <P>\n Standard snapTo behavior will attach the outer edge of the widget to the parent or master\n element - for example setting <code>snapTo</code> to <code>\"B\"</code> would align the\n bottom edge of this component with the bottom edge of the master or parent element\n (and center this component horizontally over its master or parent element).\n ${isc.DocUtils.linkForRef('attr:Canvas.snapEdge')} can be specified to change this behavior allowing the developer\n to, for example, align the top edge of this component with the bottom edge of its\n ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master canvas')}.\n <P>\n ${isc.DocUtils.linkForRef('attr:Canvas.snapOffsetLeft')} and ${isc.DocUtils.linkForRef('attr:Canvas.snapOffsetTop')} may also be specified to\n offset the element from exact snapTo alignment.",
        name:"snapTo",
        setter:[
            "setSnapTo"
        ],
        seeAlso:[
            {
                ref:"attr:Canvas.snapEdge",
                description:null
            },
            {
                ref:"attr:Canvas.percentBox",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:Slider.hTrackStyle":{
        ref:"attr:Slider.hTrackStyle",
        flags:"IR",
        description:"Optional CSS style for the track for a horizontally oriented slider.\n <P>\n Will have the suffix \"Disabled\" added when the slider is disabled.",
        name:"hTrackStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Slider"
    },
    "method:MultiSortDialog.getSortLevel":{
        ref:"method:MultiSortDialog.getSortLevel",
        flags:"",
        description:" Return a ${isc.DocUtils.linkForRef('object:SortSpecifier')} object for the requested levelNum.\n\n",
        name:"getSortLevel",
        seeAlso:[
        ],
        params:[
            {
                description:"The index of the level to return a SortSpecifier for",
                optional:false,
                name:"levelNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"A SortSpecifier representing the requested levelNum",
            type:"SortSpecifier"
        },
        type:"method",
        definingClass:"class:MultiSortDialog"
    },
    "attr:TileLayout.tileHMargin":{
        ref:"attr:TileLayout.tileHMargin",
        flags:"IR",
        description:"Horizontal margin in between tiles.  See ${isc.DocUtils.linkForRef('attr:TileLayout.tileMargin')}.",
        name:"tileHMargin",
        setter:[
            "setTileHMargin"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:ImgButton.titleHover":{
        ref:"method:ImgButton.titleHover",
        flags:"",
        description:" Optional stringMethod to fire when the user hovers over this button and the title is\n clipped. If ${isc.DocUtils.linkForRef('attr:ImgButton.showClippedTitleOnHover')} is true, the default behavior is to\n show a hover canvas containing the HTML returned by ${isc.DocUtils.linkForRef('method:ImgButton.titleHoverHTML')}.\n Return false to suppress this default behavior.\n",
        name:"titleHover",
        seeAlso:[
            {
                ref:"method:ImgButton.titleClipped",
                description:null
            }
        ],
        returns:{
            description:"false to suppress the standard hover",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "hovers"
        ]
    },
    "method:IconButton.click":{
        ref:"method:IconButton.click",
        flags:"",
        description:" Notification method fired when a user clicks anywhere on this button.  If the click occurred\n directly on the ${isc.DocUtils.linkForRef('attr:IconButton.icon','icon')} or the ${isc.DocUtils.linkForRef('iconButton.menuIcon','menuIcon')}, \n the related notifications ${isc.DocUtils.linkForRef('method:IconButton.iconClick','iconClick')} and \n ${isc.DocUtils.linkForRef('method:IconButton.menuIconClick','menuIconClick')} are fired first and must return false to \n prevent this notification from firing.\n <P>\n If a ${isc.DocUtils.linkForRef('iconButton.menu','menu')} is installed then, by default, it is only displayed when a \n user clicks on the ${isc.DocUtils.linkForRef('iconButton.menuIcon','menuIcon')}.  This can be altered via \n ${isc.DocUtils.linkForRef('attr:IconButton.showMenuOnClick','showMenuOnClick')}.\n\n",
        name:"click",
        seeAlso:[
        ],
        returns:{
            description:"return false to cancel event-bubbling",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:IconButton"
    },
    "attr:DateRangeDialog.okButtonTitle":{
        ref:"attr:DateRangeDialog.okButtonTitle",
        flags:"IR",
        description:"The title for the \"OK\" button on this dialog.",
        name:"okButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"OK\"",
        type:"attr",
        definingClass:"class:DateRangeDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DateChooser.cancelButton":{
        ref:"attr:DateChooser.cancelButton",
        flags:"IR",
        description:"A button shown below the ${isc.DocUtils.linkForRef('class:DateGrid','calendar grid')} which, when clicked, \n closes the DateChooser without selecting a value.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:MultiSortPanel.addLevelButton":{
        ref:"attr:MultiSortPanel.addLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for adding new levels\n to the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.addLevelButtonProperties</code> and \n <code>multiSortPanel.addLevelButtonDefaults</code>.",
        name:"addLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "attr:TimeItem.ampmItemTitle":{
        ref:"attr:TimeItem.ampmItemTitle",
        flags:"IRW",
        description:"Title to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.ampmItem','AM/PM picker')}.",
        name:"ampmItemTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"AM/PM\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Canvas.edgeCursorMap":{
        ref:"attr:Canvas.edgeCursorMap",
        flags:"IRWA",
        description:"Cursor to use when over each edge of a Canvas that is drag resizable.\n <P>\n To disable drag resize cursors, set the edgeCursorMap property to null.",
        name:"edgeCursorMap",
        seeAlso:[
            {
                ref:"attr:Canvas.resizeFrom",
                description:null
            }
        ],
        valueType:"object",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:Canvas.hoverWidth":{
        ref:"attr:Canvas.hoverWidth",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.showHover','this.showHover')} is true, this property can be used to customize the\n width of the hover canvas shown.",
        name:"hoverWidth",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customHovers')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "attr:ListGrid.printCheckboxFieldFalseImage":{
        ref:"attr:ListGrid.printCheckboxFieldFalseImage",
        flags:"IRWA",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldFalseImage')} to use when ${isc.DocUtils.linkForRef('groupDef:printing','printing')}.",
        name:"printCheckboxFieldFalseImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.checkboxFieldFalseImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField",
            "printing"
        ]
    },
    "attr:FormItem.iconWidth":{
        ref:"attr:FormItem.iconWidth",
        flags:"IRWA",
        getter:[
            "getIconWidth"
        ],
        description:"Default width for form item icons",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:DrawGroup.left":{
        ref:"attr:DrawGroup.left",
        flags:"IRW",
        description:"Left coordinate of the ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} in pixels relative to the DrawPane.",
        name:"left",
        setter:[
            "setLeft"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawGroup"
    },
    "attr:DSRequest.resultTree":{
        ref:"attr:DSRequest.resultTree",
        flags:"R",
        description:"For advanced use in integrating trees that \n ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand','load data on demand')} with web services,\n the ResultTree that issued this \"fetch\" DSRequest is automatically made available as the\n <code>resultTree</code> property.\n <P>\n This property can only be read.  There is no meaning to setting this property\n yourself.",
        name:"resultTree",
        seeAlso:[
        ],
        valueType:"ResultTree",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:ValuesManager.members":{
        ref:"attr:ValuesManager.members",
        flags:"IRW",
        getter:[
            "getMembers"
        ],
        description:"The set of member components for this valuesManager.  These can be specified at init time\n via the <code>members</code> property, or updated at runtime via <code>addMember()</code>\n and <code>removeMember()</code>.<br>\n Note: Alternatively a DataBoundComponent can be initialized as a member of a valuesManager\n by setting the <code>valuesManager</code> property of the component to a pre-defined \n valuesManager instance, or by calling <code>setValuesManager</code> on the component.",
        name:"members",
        seeAlso:[
            {
                ref:"method:ValuesManager.addMember",
                description:null
            },
            {
                ref:"method:ValuesManager.removeMember",
                description:null
            },
            {
                ref:"method:Canvas.setValuesManager",
                description:null
            }
        ],
        valueType:"Array of DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager"
    },
    "attr:CancelItem.title":{
        ref:"attr:CancelItem.title",
        flags:"IRW",
        description:"CancelItems show a title of <code>\"Cancel\"</code> by default. May be overridden.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:CancelItem"
    },
    "attr:ListGrid.exportFieldAlignments":{
        ref:"attr:ListGrid.exportFieldAlignments",
        flags:"IRW",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}, whether field\n ${isc.DocUtils.linkForRef('attr:ListGridField.align','horizontal header alignments')} and \n ${isc.DocUtils.linkForRef('attr:ListGridField.cellAlign','data value alignments')} should be replicated in the resulting \n spreadsheet. \n <p>\n If this attribute is not set, cells will be assigned a default alignment by the spreadsheet,\n which is typically right-aligned for numeric and date values, and left-aligned for \n everything else (including dates and numbers that have been exported as strings, as would\n be the case, for example, if ${isc.DocUtils.linkForRef('attr:DSRequest.exportDatesAsFormattedString')} is set)",
        name:"exportFieldAlignments",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ResultSet.getSort":{
        ref:"method:ResultSet.getSort",
        flags:"",
        description:" Return the current sort-specification for this ResultSet as an Array of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n \n",
        name:"getSort",
        seeAlso:[
        ],
        returns:{
            description:"the list of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s currently applied to   this ResultSet",
            type:"Array of SortSpecifier"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:TimeItem.maskOverwriteMode":{
        ref:"attr:TimeItem.maskOverwriteMode",
        flags:"IRWA",
        description:"Internal-use only for a TimeItem.",
        name:"maskOverwriteMode",
        seeAlso:[
            {
                ref:"attr:TimeItem.useMask",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:StatefulCanvas.select":{
        ref:"method:StatefulCanvas.select",
        flags:"",
        description:" Select this object.\n",
        name:"select",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "attr:DrawShape.commands":{
        ref:"attr:DrawShape.commands",
        flags:"IRW",
        description:"The drawing commands that will be executed to render the shape.",
        name:"commands",
        setter:[
            "setCommands"
        ],
        seeAlso:[
        ],
        valueType:"Array of DrawShapeCommand",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawShape"
    },
    "attr:FormItem.allowExpressions":{
        ref:"attr:FormItem.allowExpressions",
        flags:"IRW",
        description:"For a form that produces filter criteria\n (see ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria','form.getValuesAsCriteria()')}), allows the user\n to type in simple expressions to cause filtering with that operator.  For\n example, entering \"&gt;5\" means values greater than 5, and \"&gt;0 and &lt;5\" means values between\n 0 and 5.\n <P>\n The following table lists character sequences that can be entered as a prefix to a value, \n and the corresponding ${isc.DocUtils.linkForRef('type:OperatorId','operator')} that will be used. \n <P>\n <table style='font-size:14;'>\n <tr><td><b>Prefix</b></td><td><b>Operator</b></td></tr>\n <tr><td>&lt;</td><td>lessThan</td></tr>\n <tr><td>&gt;</td><td>greaterThan</td></tr>\n <tr><td>&lt;=</td><td>lessThanOrEqual</td></tr>\n <tr><td>&gt;=</td><td>greaterThanOrEqual</td></tr>\n <tr><td>someValue...someValue</td><td>betweenInclusive</td></tr>\n <tr><td>!</td><td>notEqual</td></tr>\n <tr><td>^</td><td>startsWith</td></tr>\n <tr><td>|</td><td>endsWith</td></tr>\n <tr><td>!^</td><td>notStartsWith plus logical not</td></tr>\n <tr><td>!@</td><td>notEndsWith plus logical not</td></tr>\n <tr><td>~</td><td>contains</td></tr>\n <tr><td>!~</td><td>notContains</td></tr>\n <tr><td>#</td><td>isNull</td></tr>\n <tr><td>!#</td><td>isNotNull</td></tr>\n <tr><td>==</td><td>exact match (for fields where 'contains' is the default)</td></tr>\n </table>\n <P>\n Two further special notations are allowed:\n <ul>\n <li> /<i>regex</i>/ means the value is taken as a regular expression and applied via the\n \"regexp\" operator\n <li> =.<i>fieldName</i> means the value should match the value of another field.  Either the\n user-visible title of the field (field.title) or the field's name (field.name) may be used.\n </ul>\n <P>\n In all cases, if an operator is disallowed for the field (via\n ${isc.DocUtils.linkForRef('attr:DataSourceField.validOperators','field.validOperators')} at either the dataSource or field\n level), the operator character is ignored (treated as part of a literal value).\n <P>\n By default, the case-insensitive version of the operator is used (eg, startsWith will\n actually use \"iStartsWith\").  To avoid this, explicitly set item.operator (the default\n operator) to any case sensitive operator (eg \"equals\" or \"contains\") and case sensitive\n operators will be used for user-entered expressions.\n <P>\n Compound expressions (including \"and\" and \"or\") are allowed only for numeric or date/time\n types.\n <P>\n Note that if the user does not type a prefix or use other special notation as described\n above, the operator specified via ${isc.DocUtils.linkForRef('attr:FormItem.operator')} is used, or if\n <code>formItem.operator</code> is unspecified, a default operator chosen as described\n under ${isc.DocUtils.linkForRef('attr:FormItem.operator')}.  \n <p>\n Also note that whatever you enter will be used literally, including any whitespace\n characters. For example if you input '== China ' then ' China ' will be the value.\n <p>\n The <code>allowExpression</code> behavior can be enabled for every field in a form via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.allowExpressions')}.\n <P>\n Finally, note that, like ${isc.DocUtils.linkForRef('attr:FormItem.operator')}, enabling\n <code>allowExpressions:true</code> causes\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria','form.getValuesAsCriteria()')}) to return\n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}.",
        name:"allowExpressions",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:DataBoundComponent.progressiveLoading":{
        ref:"attr:DataBoundComponent.progressiveLoading",
        flags:"IRW",
        description:"Indicates whether or not this component will load its data \n ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressively')}.",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            },
            {
                ref:"attr:ResultSet.progressiveLoading",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "progressiveLoading"
        ]
    },
    "type:TreeGridViewState":{
        ref:"type:TreeGridViewState",
        description:"An object containing the \"view state\" information for a treeGrid. In addition to the \n state data contained by a ${isc.DocUtils.linkForRef('type:ListGridViewState')} object, this will also contain the \n current open state of the treeGrid in question.<br>\n Note that this object is not intended to be interrogated directly, but may be stored \n (for example) as a blob on the server for view state persistence across sessions.",
        name:"TreeGridViewState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "classMethod:DrawSector.getArcMidpoint":{
        ref:"classMethod:DrawSector.getArcMidpoint",
        flags:"",
        description:" Calculates the midpoint coordinates of the circular arc of the sector defined by the\n given centerPoint, startAngle, endAngle, and radius. The formula for this point is:\n <blockquote>\n <pre>var averageAngle = (startAngle + endAngle) / 2; // in degrees\n[centerX + radius * cosdeg(averageAngle), centerY + radius * sindeg(averageAngle)]</pre>\n </blockquote>\n",
        name:"getArcMidpoint",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate of the center point of the sector.",
                optional:false,
                name:"centerX",
                defaultValue:null,
                type:"double"
            },
            {
                description:"Y coordinate of the center point of the sector.",
                optional:false,
                name:"centerY",
                defaultValue:null,
                type:"double"
            },
            {
                description:"start angle of the sector in degrees.",
                optional:false,
                name:"startAngle",
                defaultValue:null,
                type:"double"
            },
            {
                description:"end angle of the sector in degrees.",
                optional:false,
                name:"endAngle",
                defaultValue:null,
                type:"double"
            },
            {
                description:"radius of the sector.",
                optional:false,
                name:"radius",
                defaultValue:null,
                type:"double"
            }
        ],
        returns:{
            description:"the coordinates of the midpoint of the arc.",
            type:"Point"
        },
        type:"classMethod",
        definingClass:"class:DrawSector"
    },
    "attr:MetricSettings.dataLineProperties":{
        ref:"attr:MetricSettings.dataLineProperties",
        flags:"IR",
        description:"Properties for lines that show data (as opposed to gradations or borders around the data\n area).",
        name:"dataLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:TileGrid.showAllRecords":{
        ref:"attr:TileGrid.showAllRecords",
        flags:"IR",
        description:"Whether tiles are created and drawn for all records, or only for those currently visible.",
        name:"showAllRecords",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "basics"
        ]
    },
    "method:TreeGrid.openLeaf":{
        ref:"method:TreeGrid.openLeaf",
        flags:"A",
        description:" Executed when a leaf node receives a 'doubleClick' event. This handler must be\n specified as a function, whose single parameter is a reference to the relevant leaf node in\n the tree's data.<br>\n See the ListGrid Widget Class for inherited recordClick and recordDoubleClick events.\n\n",
        name:"openLeaf",
        seeAlso:[
            {
                ref:"class:ListGrid",
                description:null
            }
        ],
        params:[
            {
                description:"node to open",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:ListGrid.canExpandRecord":{
        ref:"method:ListGrid.canExpandRecord",
        flags:"",
        description:" Indicates whether a given record or rowNum can be expanded.  The default implementation\n checks the value of ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} and\n <code>record[${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecordProperty')}]</code>.\n <P>\n Override this method for more specific control over individual record expansion.\n <P>\n <b>Note:</b> Rows with no underlying record in the data array - for example newly\n added edit rows that have not yet been saved - cannot be expanded.\n\n",
        name:"canExpandRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record to work with",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"rowNum of the record to work with",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"true if the record can be expanded",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "classMethod:XMLTools.selectObjects":{
        ref:"classMethod:XMLTools.selectObjects",
        flags:"A",
        description:" Applies an XPath expression to JavaScript objects, returning matching objects.\n <P>\n Both child and attribute names are interpreted as property names, and array access notation\n can be used to select elements from Arrays.  For example:<pre>\n     var results = {\n        searchResults:[\n            { title:\"Page One\", relevance:6.3 },\n            { title:\"Page Two\", relevance:5.2, \n              summary: \"Summary of Page One\" }\n        ]\n     };\n\n     // returns the \"searchResults\" two-item Array\n     isc.XMLTools.selectObjects(results, \"/searchResults\");\n\n     // returns the first item under \"searchResults\", in an Array (NOTE: in XPath, Array\n     // index starts at 1, not 0)\n     isc.XMLTools.selectObjects(results, \"/searchResults[1]\");\n\n     // returns [\"Page One\"]\n     isc.XMLTools.selectObjects(results, \"/searchResults[1]/title\");\n\n     // also returns [\"Page One\"]\n     isc.XMLTools.selectObjects(results, \"/searchResults[1]@title\");\n </pre>\n A limited form of XPath \"predicates\", that is, expressions with brackets that filter\n returned objects, is allowed.  A predicate can be either:\n <ul>\n <li> a number only, eg [5], for Array access\n <li> the XPath function call \"last()\", eg [last()], to retrieve the last item\n <li> a property name (*without* any leading \"@\"), meaning that the property contains a value\n      that is considered \"true\" in JavaScript.  For example: [summary]\n <li> a property name, comparison operator, and either a number or String literal, for\n      example, [name = \"bob\"].  In this case the property can also be the XPath function\n      position(), for example, [position() > 5]\n </ul>\n Some examples of using simple predicates with the sample data above:\n <pre>\n     // returns an Array with only the first result\n     isc.XMLTools.selectObjects(results, \"/searchResults[relevance > 5.5]\");\n \n     // return an Array with only the second result, since the first has no summary\n     isc.XMLTools.selectObjects(results, \"/searchResults[summary]\");\n </pre>\n Details of the XPath -> Objects mapping:\n <ul> \n <li> JavaScript Object properties are considered element children, and text children do not\n      exist (in the XML model, text children exist *between* element children, but nothing\n      exists between JavaScript properties)\n <li> The contents of Array-valued properties are considered immediate element children (this\n      is consistent with the predicate \"[5]\" acting like Array access)\n <li> \"*\" in XML selects all element children, so \"*\" in Object XPath selects the values of\n      all properties, that is, ${isc.DocUtils.linkForRef('classMethod:isc.getValues','isc.getValues(object)')}, except\n      that Array-valued properties are \"flattened\" into the returned list.\n </ul>\n\n",
        name:"selectObjects",
        seeAlso:[
        ],
        params:[
            {
                description:"Object to select results from",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"XPath expression",
                optional:false,
                name:"xPath",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"Array of matching objects, or null for no match",
            type:"Array"
        },
        type:"classMethod",
        definingClass:"class:XMLTools"
    },
    "attr:FieldPicker.dataSource":{
        ref:"attr:FieldPicker.dataSource",
        flags:"IR",
        description:"An optional DataSource that is used to create a disposable\n ${isc.DocUtils.linkForRef('attr:FieldPicker.dataBoundComponent')} if none is provided.\n Has no effect if a ${isc.DocUtils.linkForRef('attr:FieldPicker.dataBoundComponent')} is specified.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FieldPicker"
    },
    "attr:PortalLayout.row":{
        ref:"attr:PortalLayout.row",
        flags:"A",
        description:"Automatically generated horizontal ${isc.DocUtils.linkForRef('class:Layout')} used to create rows of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} via\n ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')}. Since this is an ${isc.DocUtils.linkForRef('type:AutoChild')}, you can use \n rowDefaults and rowProperties to customize the rows.\n <p>\n Rows are created inside ${isc.DocUtils.linkForRef('attr:PortalLayout.rowLayout','rowLayouts')}, which in turn are inside ${isc.DocUtils.linkForRef('attr:PortalLayout.column','columns')}.",
        name:"row",
        seeAlso:[
            {
                ref:"attr:PortalLayout.column",
                description:null
            },
            {
                ref:"attr:PortalLayout.rowLayout",
                description:null
            }
        ],
        valueType:"MultiAutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PortalLayout"
    },
    "attr:Splitbar.canCollapse":{
        ref:"attr:Splitbar.canCollapse",
        flags:"IRW",
        description:"If this property is true, a click on the Splitbar will collapse its \n ${isc.DocUtils.linkForRef('attr:Splitbar.target','target')}, hiding it and shifting the Splitbar and other members\n of the layout across to fill the newly available space. If the target is already hidden\n a click will expand it again (showing it at its normal size).\n <p>\n Note that on touch devices, to enable collapsing/uncollapsing the <code>target</code>\n in response to a tap, ${isc.DocUtils.linkForRef('attr:Splitbar.canCollapseOnTap','canCollapseOnTap')} must be set to\n <code>true</code>.",
        name:"canCollapse",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Splitbar"
    },
    "attr:TabSet.pickerButtonSize":{
        ref:"attr:TabSet.pickerButtonSize",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker')} is true, this property governs the size of tab-picker\n button. Applied as the width of buttons if the tabBar is horizontal, or the height\n if tabBar is vertical. Note that the other dimension is determined by\n ${isc.DocUtils.linkForRef('attr:TabSet.tabBarThickness','this.tabBarThickness')}",
        name:"pickerButtonSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "group:event":{
        ref:"group:event",
        refs:[
        ],
        name:"event",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Canvas.useOpacityFilter":{
        ref:"attr:Canvas.useOpacityFilter",
        flags:"IR",
        description:"Configures where the Opacity filter is used for IE6-8.\n <P>\n With the default of null, opacity filters are used unless\n ${isc.DocUtils.linkForRef('classAttr:Canvas.neverUseFilters')} has been set.  When set explicitly to true,\n opacity filters are used even if <code>neverUseFilters</code> is true.\n <P>\n See ${isc.DocUtils.linkForRef('group:IEFilters')} for background.",
        name:"useOpacityFilter",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "IEFilters"
        ]
    },
    "group:dateFormatting":{
        ref:"group:dateFormatting",
        refs:[
            "method:Date.getShortDayName",
            "method:Date.getDayName",
            "method:Date.getShortMonthName",
            "method:Date.getMonthName",
            "method:Date.getShortYear",
            "method:Date.getWeek",
            "method:Date.toDateStamp",
            "method:Date.toNormalDate",
            "method:Date.toNormalDatetime",
            "method:Date.toShortDate",
            "method:Date.toShortDateTime",
            "method:Date.setDefaultDateSeparator",
            "method:Date.getDefaultDateSeparator",
            "method:Date.toUSShortDate",
            "method:Date.toUSShortDateTime",
            "method:Date.toEuropeanShortDate",
            "method:Date.toEuropeanShortDateTime",
            "method:Date.toJapanShortDate",
            "method:Date.toJapanShortDateTime",
            "method:Date.toSerializeableDate",
            "method:Date.setFormatter",
            "method:Date.toPrettyString",
            "classMethod:DateUtil.format",
            "classMethod:Date.parseInput",
            "classMethod:Date.setNormalDisplayFormat",
            "classMethod:Date.setNormalDatetimeDisplayFormat",
            "classMethod:Date.setShortDisplayFormat",
            "classMethod:Date.setDefaultDateSeparator",
            "classMethod:Date.getDefaultDateSeparator",
            "classMethod:Date.setShortDatetimeDisplayFormat",
            "classMethod:Date.getWeekendDays"
        ],
        name:"dateFormatting",
        seeAlso:[
        ],
        type:"group"
    },
    "group:grouping":{
        ref:"group:grouping",
        refs:[
            "method:ListGridField.getGroupValue",
            "method:ListGridField.getGroupTitle",
            "method:ListGrid.groupBy",
            "method:ListGrid.getOriginalData",
            "object:groupNode",
            "attr:groupNode.groupMembers",
            "attr:groupNode.groupTitle",
            "attr:groupNode.groupValue",
            "attr:ListGrid.originalData",
            "attr:ListGrid.groupTree",
            "attr:ListGrid.groupStartOpen",
            "attr:ListGrid.canCollapseGroup",
            "attr:ListGrid.groupTitleField",
            "attr:ListGrid.showGroupSummaryInHeader",
            "attr:ListGrid.showCollapsedGroupSummary",
            "attr:ListGridField.groupingModes",
            "attr:ListGridField.groupingMode",
            "attr:ListGridField.defaultGroupingMode",
            "attr:ListGridField.groupPrecision",
            "attr:ListGridField.groupGranularity",
            "attr:ListGrid.groupNodeStyle",
            "attr:ListGrid.groupNodeBaseStyle",
            "attr:ListGrid.groupIcon",
            "attr:ListGrid.groupIconSize",
            "attr:ListGrid.groupIndentSize",
            "attr:ListGrid.groupLeadingIndent",
            "attr:ListGrid.canGroupBy",
            "attr:ListGrid.groupByMaxRecords",
            "attr:ListGrid.isGrouped",
            "attr:ListGrid.nullGroupTitle",
            "attr:ListGrid.groupByField"
        ],
        name:"grouping",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.setEditValue":{
        ref:"method:ListGrid.setEditValue",
        flags:"A",
        description:"\n  Modifies a field value being tracked as an unsaved user edit.<P>\n  Use for suggested or reformatted values for edits that remain unsaved.\n\n",
        name:"setEditValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Row number (or edit values ID)",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Column number of cell, or name of field                                           having editValue updated",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number | string"
            },
            {
                description:"New value for the appropriate field.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:TileGrid.selectionType":{
        ref:"attr:TileGrid.selectionType",
        flags:"IRW",
        description:"Defines a tileGrid's clickable-selection behavior.",
        name:"selectionType",
        seeAlso:[
            {
                ref:"type:SelectionStyle",
                description:null
            }
        ],
        valueType:"SelectionStyle",
        defaultValue:"Selection.MULTIPLE",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('tilingEditing')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "selection",
            "appearance"
        ]
    },
    "attr:DataSourceField.escapeHTML":{
        ref:"attr:DataSourceField.escapeHTML",
        flags:"IR",
        description:"When data values are displayed in DataBound components, by default strings will be interpreted\n as HTML by the browser in most cases.\n <P>\n If set, this property will be picked up by components bound to this dataSource, notifying them\n that any HTML characters should be escaped when displaying values for this field.",
        name:"escapeHTML",
        seeAlso:[
            {
                ref:"attr:ListGridField.escapeHTML",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:Splitbar.src":{
        ref:"attr:Splitbar.src",
        flags:"IR",
        description:"The base URL for the image. \n <P>\n The ${isc.DocUtils.linkForRef('type:State')} for the component will be combined with this URL using the\n same approach as described in ${isc.DocUtils.linkForRef('attr:Img.src')}.\n Then the image segment ${isc.DocUtils.linkForRef('attr:StretchItem.name','name')} as specified by each ${isc.DocUtils.linkForRef('object:StretchItem')}\n is added.\n <P>\n For example, for a stretchImg in \"Over\" state with a <code>src</code> of \"button.png\"\n and a segment name of \"stretch\", the resulting URL would be \"button_Over_stretch.png\".",
        name:"src",
        seeAlso:[
            {
                ref:"attr:StretchImg.hSrc",
                description:null
            },
            {
                ref:"attr:StretchImg.vSrc",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "appearance"
        ]
    },
    "group:dataSourceRelations":{
        ref:"group:dataSourceRelations",
        title:"Relations",
        refs:[
            "attr:DataSourceField.primaryKey",
            "attr:DataSourceField.foreignKey",
            "attr:DataSourceField.childrenProperty",
            "attr:DataSourceField.rootValue",
            "attr:DataSourceField.includeFrom",
            "attr:DataSourceField.displayField",
            "attr:DataSourceField.joinType",
            "attr:DataSource.childrenField",
            "type:JoinType"
        ],
        description:"Properties for declaring relations between DataSources and within DataSources, such as\n master-detail relationships (a SalesOrder contains 0 or more OrderItems) and tree\n relationships (records can be linked by a parentId field).",
        name:"dataSourceRelations",
        seeAlso:[
            {
                ref:"attr:DataSourceField.foreignKey",
                description:null
            }
        ],
        type:"group"
    },
    "attr:FormItem.validateOnExit":{
        ref:"attr:FormItem.validateOnExit",
        flags:"IRW",
        description:"If true, form items will be validated when each item's \"editorExit\" handler is fired\n as well as when the entire form is submitted or validated.\n <p>\n Note that this property can also be set at the form level.\n If true at either level the validator will be fired on editorExit.",
        name:"validateOnExit",
        seeAlso:[
            {
                ref:"attr:DynamicForm.validateOnExit",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "classMethod:Log.show":{
        ref:"classMethod:Log.show",
        flags:"",
        description:" Open the Developer Console.\n <P>\n The Developer Console should <b>always</b> be open while developing any ISC-enabled\n application, because ISC logs many important errors and warnings to the Developer Console.\n <P>\n In Internet Explorer, the Developer Console is able to log a stack trace for every JS error,\n including errors that occur in non-ISC code.\n <P>\n NOTE: if you have the Microsoft JavaScript Debugger installed, ISC will be unable to log\n stack traces on JS errors until you go to Tools->Internet Options->Advanced Tab and check\n \"Disable script debugging\".  The ability to see stack traces in the Developer Console is\n generally much more useful for debugging ISC-based applications than the generic Javascript\n Debugging facilities.\n \n",
        name:"show",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "attr:SliderItem.changeOnDrag":{
        ref:"attr:SliderItem.changeOnDrag",
        flags:"IRW",
        description:"Should this sliderItem update its value and fire change handlers while the user is\n actively dragging the slider.\n Setting this attribute value to <code>false</code> will suppress any change notifications\n from the user dragging the slider thumb until the user releases the mouse at the final\n position.\n This can be useful to avoid repeatedly firing expensive operations such as server fetches\n while the user drags through a range of values.",
        name:"changeOnDrag",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SliderItem"
    },
    "method:ListGridField.showIf":{
        ref:"method:ListGridField.showIf",
        flags:"",
        description:" An optional ${isc.DocUtils.linkForRef('group:stringMethods','stringMethod')} which if provided, is evaluated to\n conditionally determine whether this field should be displayed.\n Evaluated on initial draw, then reevaluated on explicit\n calls to <code>listGrid.refreshFields()</code> or <code>listGrid.setFields()</code>.\n <P>\n Use <code>${isc.DocUtils.linkForRef('attr:ListGridField.hidden','hidden')}:true</code> or <code>showIf:\"false\"</code>\n to set a ListGrid field to initially hidden.<br>\n The user will still be able to show the field via a context menu.\n This may be suppressed by setting ${isc.DocUtils.linkForRef('attr:ListGridField.canHide')} to false, or by\n setting ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields')} to false to suppress the\n field-picker entirely.\n <P>\n Note that explicit calls to ${isc.DocUtils.linkForRef('method:ListGrid.showField','grid.showField()')} or hideField()\n will wipe out the <code>showIf</code> expression, as will the end user showing and\n hiding columns via the ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','header contextMenu')}.\n <P>\n Also note that fields marked as ${isc.DocUtils.linkForRef('attr:DataSourceField.detail','detail:true')} will be hidden by\n default even if ${isc.DocUtils.linkForRef('attr:ListGrid.showDetailFields')} is <code>true</code>. To show detail fields\n inherited from a DataSource, include an explicit field definition for the field and\n set this property to return <code>true</code>.\n\n",
        name:"showIf",
        seeAlso:[
            {
                ref:"method:ListGrid.refreshFields",
                description:null
            }
        ],
        params:[
            {
                description:"A pointer to the listGrid containing the field",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"ListGrid"
            },
            {
                description:"the ListGridField object",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"the index of the field",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"integer"
            }
        ],
        returns:{
            description:"whether the field should be shown",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:HiliteEditor.saveButtonTitle":{
        ref:"attr:HiliteEditor.saveButtonTitle",
        flags:"IR",
        description:"The title text for the ${isc.DocUtils.linkForRef('attr:HiliteEditor.saveButton','saveButton')}.",
        name:"saveButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Save\"",
        type:"attr",
        definingClass:"class:HiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DSRequest.exportData":{
        ref:"attr:DSRequest.exportData",
        flags:"IR",
        description:"Only applies to request properties passed to ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}.\n If specified this property contains an arbitrary set of data to be exported.",
        name:"exportData",
        seeAlso:[
        ],
        valueType:"Array of Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:ToolStripGroup.titleAlign":{
        ref:"attr:ToolStripGroup.titleAlign",
        flags:"IRW",
        description:"Controls the horizontal alignment of the group-title in its label.  Setting this\n attribute overrides the default specified by \n ${isc.DocUtils.linkForRef('attr:ToolStrip.groupTitleAlign','groupTitleAlign')} on the containing \n ${isc.DocUtils.linkForRef('class:ToolStrip','ToolStrip')}.",
        name:"titleAlign",
        setter:[
            "setTitleAlign"
        ],
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "attr:Toolbar.canResizeItems":{
        ref:"attr:Toolbar.canResizeItems",
        flags:"IRWA",
        description:"If true, items (buttons) can be resized by dragging on them.",
        name:"canResizeItems",
        setter:[
            "setCanResizeItems"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Toolbar",
        groups:[
            "dragndrop"
        ]
    },
    "method:Canvas.intersects":{
        ref:"method:Canvas.intersects",
        flags:"",
        description:"\t\t\tReturns true if the rectangles of this widget and the specified widget overlap.\n",
        name:"intersects",
        seeAlso:[
        ],
        params:[
            {
                description:"other canvas to test for intersection",
                optional:false,
                name:"other",
                defaultValue:null,
                type:"canvas"
            }
        ],
        returns:{
            description:"true if this canvas intersects other; false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:Gauge.fontSize":{
        ref:"attr:Gauge.fontSize",
        flags:"IR",
        description:"Font size of sector labels. Must be at least 3.",
        name:"fontSize",
        seeAlso:[
            {
                ref:"attr:DrawLabel.fontSize",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"11",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:Progressbar.vertical":{
        ref:"attr:Progressbar.vertical",
        flags:"IRW",
        description:"Indicates whether this is a vertical or horizontal progressbar.",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Progressbar",
        groups:[
            "appearance"
        ]
    },
    "attr:MultiFileItem.pickerUploadButtonTitle":{
        ref:"attr:MultiFileItem.pickerUploadButtonTitle",
        flags:"IR",
        description:"The title of the upload button in the picker lauched by the\n ${isc.DocUtils.linkForRef('attr:MultiFileItem.editButton','edit button')} that is used after the form is saved.",
        name:"pickerUploadButtonTitle",
        seeAlso:[
            {
                ref:"attr:MultiFileItem.pickerUploadButtonInitialTitle",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"Save\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TreeGrid.openerImage":{
        ref:"attr:TreeGrid.openerImage",
        flags:"IR",
        description:"The base filename of the opener icon for the folder node when 'showConnectors' is false\n for this TreeGrid.<br>\n The opener icon is displayed beside the folder icon in the Tree column for folder nodes.\n Clicking on this icon will toggle the open state of the folder.<br>\n The filenames for these icons are assembled from this base filename and the state of the\n node, as follows:<br>\n If the openerImage is set to <code>{baseName}.{extension}</code>, \n <code>{baseName}_opened.{extension}</code> will be displayed next to opened folders, and\n <code>{baseName}_closed.{extension}</code> will be displayed next to closed folders, or\n if this page is in RTL mode, <code>{baseName}_opened_rtl.{extension}</code> and\n <code>{baseName}_closed_rtl.{extension}</code> will be used.",
        name:"openerImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]opener.gif\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:DataSourceField.allowClientRequestedSummaries":{
        ref:"attr:DataSourceField.allowClientRequestedSummaries",
        flags:"IR",
        description:"Affects whether client dsRequests can request summaries for this field.\n <p>\n Default setting of null means that the DataSource-wide default setting\n ${isc.DocUtils.linkForRef('attr:DataSource.allowClientRequestedSummaries')} is used for this field.",
        name:"allowClientRequestedSummaries",
        seeAlso:[
            {
                ref:"attr:DataSource.allowClientRequestedSummaries",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "serverSummaries"
        ]
    },
    "attr:DataSourceField.initRequiresAuthentication":{
        ref:"attr:DataSourceField.initRequiresAuthentication",
        flags:"IR",
        description:"Whether a user must be authenticated in order to initialize to this field.  If this property is \n set and the user is not authenticated, the SmartClient Server will not allow this field to\n be initialized.",
        name:"initRequiresAuthentication",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "classAttr:Operators.andTitle":{
        ref:"classAttr:Operators.andTitle",
        flags:"IR",
        description:"Title for the \"and\" operator",
        name:"andTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Match All\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "group:hiliting":{
        ref:"group:hiliting",
        title:"Hiliting Overview",
        refs:[
            "method:CubeGrid.hiliteCell",
            "method:CubeGrid.hiliteCellList",
            "method:CubeGrid.hiliteFacetValue",
            "method:DataBoundComponent.getHilites",
            "method:DataBoundComponent.setHilites",
            "method:DataBoundComponent.enableHilite",
            "method:DataBoundComponent.disableHilite",
            "method:DataBoundComponent.enableHiliting",
            "method:DataBoundComponent.disableHiliting",
            "method:DataBoundComponent.editHilites",
            "method:ListGrid.hilitesChanged",
            "object:Hilite",
            "attr:CubeGrid.hilites",
            "attr:Hilite.id",
            "attr:Hilite.cssText",
            "attr:Hilite.fieldName",
            "attr:Hilite.criteria",
            "attr:Hilite.htmlBefore",
            "attr:Hilite.htmlAfter",
            "attr:Hilite.htmlValue",
            "attr:Hilite.disabled",
            "attr:Hilite.title",
            "attr:Hilite.textColor",
            "attr:Hilite.backgroundColor",
            "attr:Hilite.icon",
            "attr:Hilite.replacementValue",
            "attr:DataBoundComponent.canEditHilites",
            "attr:DataBoundComponent.hilites",
            "attr:DataBoundComponent.hiliteIcons",
            "attr:DataBoundComponent.hiliteIconPosition",
            "attr:DataBoundComponent.hiliteIconSize",
            "attr:DataBoundComponent.hiliteIconWidth",
            "attr:DataBoundComponent.hiliteIconHeight",
            "attr:DataBoundComponent.hiliteIconLeftPadding",
            "attr:DataBoundComponent.hiliteIconRightPadding",
            "attr:DataBoundComponent.hiliteEditor",
            "attr:DetailViewer.hiliteIcons",
            "attr:DetailViewer.hiliteIconPosition",
            "attr:DetailViewer.hiliteIconSize",
            "attr:DetailViewer.hiliteIconWidth",
            "attr:DetailViewer.hiliteIconHeight",
            "attr:DetailViewer.hiliteIconLeftPadding",
            "attr:DetailViewer.hiliteIconRightPadding",
            "attr:DetailViewerField.canHilite",
            "attr:DetailViewerField.hiliteIconPosition",
            "attr:DetailViewerField.hiliteIconSize",
            "attr:DetailViewerField.hiliteIconWidth",
            "attr:DetailViewerField.hiliteIconHeight",
            "attr:DetailViewerField.hiliteIconLeftPadding",
            "attr:DetailViewerField.hiliteIconRightPadding",
            "attr:ListGrid.hiliteIcons",
            "attr:ListGrid.hiliteIconPosition",
            "attr:ListGrid.hiliteIconSize",
            "attr:ListGrid.hiliteIconWidth",
            "attr:ListGrid.hiliteIconHeight",
            "attr:ListGrid.hiliteIconLeftPadding",
            "attr:ListGrid.hiliteIconRightPadding",
            "attr:ListGridField.hiliteIconPosition",
            "attr:ListGridField.hiliteIconSize",
            "attr:ListGridField.hiliteIconWidth",
            "attr:ListGridField.hiliteIconHeight",
            "attr:ListGridField.hiliteIconLeftPadding",
            "attr:ListGridField.hiliteIconRightPadding",
            "attr:ListGrid.hiliteCanReplaceValue",
            "attr:ListGrid.canEditHilites",
            "type:HiliteIconPosition"
        ],
        description:"Hiliting means special visual styling which is applied to specific data values that meet\n certain criteria.\n <P>\n A ${isc.DocUtils.linkForRef('object:Hilite')} definition contains styling information such as ${isc.DocUtils.linkForRef('attr:Hilite.cssText')} and\n ${isc.DocUtils.linkForRef('attr:Hilite.htmlBefore')} that define what the hilite looks like, as well as properties\n defining where the hilite is applied.  If you create hilites manually, they should ideally\n specify ${isc.DocUtils.linkForRef('attr:Hilite.textColor','textColor')} and/or \n ${isc.DocUtils.linkForRef('attr:Hilite.backgroundColor','backgroundColor')} in order to be editable in a \n ${isc.DocUtils.linkForRef('class:HiliteEditor')}.  If these are not provided, however, note that they will be \n manufactured automatically from the ${isc.DocUtils.linkForRef('attr:Hilite.cssText','cssText')} attribute if it is present.\n <P>\n A hilite can be applied to data <b>either</b> by defining ${isc.DocUtils.linkForRef('attr:Hilite.criteria','criteria')}\n or by explicitly including markers on the data itself.  \n <P>\n Hiliting rules such as hiliting different ranges of values with different colors can be\n accomplished entirely client-side by defining ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} in hilite definitions\n that pick out values to be highlighted.\n <P>\n Hiliting rules that require server-side calculations can be achieved by assigning a\n ${isc.DocUtils.linkForRef('attr:Hilite.id')} to a hilite definition, and setting the\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteProperty')} on the records that should show that highlight.\n This can be used, for example, to hilite the record with the maximum value for a dataset\n that the application will load incrementally.",
        name:"hiliting",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ImgButton.selected":{
        ref:"attr:ImgButton.selected",
        flags:"IRW",
        description:"Whether this component is selected.  For some components, selection affects appearance.",
        name:"selected",
        setter:[
            "setSelected"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "attr:ValuesManager.disableValidation":{
        ref:"attr:ValuesManager.disableValidation",
        flags:"IRWA",
        description:"If set to true, client-side validators will not run on the form when validate() is\n called.  Server-side validators (if any) will still run on attempted save.",
        name:"disableValidation",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            },
            {
                ref:"method:DynamicForm.submit",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager",
        groups:[
            "validation"
        ]
    },
    "interface:List":{
        methods:[
            "method:List.get",
            "method:List.getLength",
            "method:List.isEmpty",
            "method:List.first",
            "method:List.last",
            "method:List.indexOf",
            "method:List.lastIndexOf",
            "method:List.findIndex",
            "method:List.findNextIndex",
            "method:List.find",
            "method:List.findAll",
            "method:List.contains",
            "method:List.containsAll",
            "method:List.intersect",
            "method:List.equals",
            "method:List.getItems",
            "method:List.getRange",
            "method:List.duplicate",
            "method:List.set",
            "method:List.addAt",
            "method:List.removeAt",
            "method:List.add",
            "method:List.addList",
            "method:List.setLength",
            "method:List.addListAt",
            "method:List.remove",
            "method:List.removeList",
            "method:List.sort",
            "method:List.getProperty",
            "method:List.sortByProperty",
            "method:List.getValueMap",
            "method:List.dataChanged"
        ],
        ref:"interface:List",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"An interface for an ordered collection of items.\n <P>\n This is the interface that is expected by list-oriented display components such as the\n ListGrid.  The JavaScript native Array object is retrofitted to support the List interface.\n Also, a valid List can be created by mixing the List interface into any class that supports:\n <ul>\n <li> for read-only support: get(position), getLength()\n <li> for modifiable support: set(position), addAt(object, position), removeAt(position)\n </ul>\n <P>\n NOTE: this interface is compatible with the java.util.List interface, except that:\n <ul>\n <li> for removal by index, removeAt() must be called instead of remove().  In Java, remove()\n is an overloaded method that takes either an int or Object, whereas in JavaScript, a\n Number is an Object.\n <li> Iterators don't exist.\n </ul> \n Some methods from the Java List interface have been omitted from the documentation to avoid\n redundancy.",
        name:"List",
        seeAlso:[
        ],
        type:"interface"
    },
    "classMethod:EventHandler.leftButtonDown":{
        ref:"classMethod:EventHandler.leftButtonDown",
        flags:"",
        description:"\t\t\tReturns true if the left mouse button is being pressed.\n\n",
        name:"leftButtonDown",
        seeAlso:[
            {
                ref:"classMethod:EventHandler.middleButtonDown",
                description:null
            },
            {
                ref:"classMethod:EventHandler.rightButtonDown",
                description:null
            }
        ],
        returns:{
            description:"true == left button is down, false == up",
            type:"Boolean"
        },
        type:"classMethod",
        platformNotes:"Mac:\t\tMacintosh platform generally has only one mouse button - ISC considers it to be the \"left\"\n\t\tmouse button, so this method will return true if the mouse is down on a single-button mouse Mac.",
        definingClass:"class:EventHandler",
        groups:[
            "mouseEvents"
        ]
    },
    "method:Canvas.dropOver":{
        ref:"method:Canvas.dropOver",
        flags:"A",
        description:"\n Executed when the compatible dragged object is first moved over this drop target. Your\n implementation can use this to show a custom visual indication that the object can be\n dropped here.\n\n",
        name:"dropOver",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customDrag')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:DetailViewer.printHeaderStyle":{
        ref:"attr:DetailViewer.printHeaderStyle",
        flags:"IRW",
        description:"Optional CSS style for a header in printable HTML for this component. If unset\n ${isc.DocUtils.linkForRef('attr:DetailViewer.headerStyle')} will be used for printing as well as normal presentation.",
        name:"printHeaderStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "printing"
        ]
    },
    "method:CubeGrid.getEditValues":{
        ref:"method:CubeGrid.getEditValues",
        flags:"",
        description:" Returns the current set of unsaved edits for a given row being edited.\n\n",
        name:"getEditValues",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum of the record being edited, or an Object                                      containing values for all the record's primary keys",
                optional:false,
                name:"valuesID",
                defaultValue:null,
                type:"number | Object"
            },
            {
                description:"colNum of the record being edited. Only required if valuesID                         is passed in as a rowNum.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Current editValues object for the row.  This contains the current                     edit values in {fieldName1:value1, fieldName2:value2} format.",
            type:"object"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "method:Selection.selectRange":{
        ref:"method:Selection.selectRange",
        flags:"",
        description:"\t\t\tSelect range of records from <code>start</code> to <code>end</code>, non-inclusive.\n",
        name:"selectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start index to select",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end index (non-inclusive)",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional new selection state to set.  True means                                      selected, false means unselected.  Defaults to true.",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "classMethod:Page.setAppImgDir":{
        ref:"classMethod:Page.setAppImgDir",
        flags:"",
        description:" Specify the directory for app-specific images.\n <P>\n This becomes the default location where any SmartClient component will load images from\n unless the special \"[SKIN]\" prefix is used to indicate that an image is part of a skin.\n <P>\n Default is \"[APP]images/\"\n\n",
        name:"setAppImgDir",
        seeAlso:[
        ],
        params:[
            {
                description:"New imgDir URL.",
                optional:true,
                name:"URL",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "attr:XORGateway.failureElement":{
        ref:"attr:XORGateway.failureElement",
        flags:"IR",
        description:"ID of the next sequence or element to proceed to if the criteria do not match.",
        name:"failureElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:XORGateway"
    },
    "method:ListGrid.hasChanges":{
        ref:"method:ListGrid.hasChanges",
        flags:"",
        description:" Whether the grid as a whole has any unsaved edits, in any row. Note that this method will return\n true if any rows are ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved','marked as removed')} in addition to any rows that have\n pending unsaved edits.\n",
        name:"hasChanges",
        seeAlso:[
        ],
        returns:{
            description:"returns true of any unsaved edits are present",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:OperationBinding.invalidateCache":{
        ref:"attr:OperationBinding.invalidateCache",
        flags:"IR",
        description:"If set, every invocation of this operationBinding will invalidate the local cache, forcing\n a server visit to refresh the data.",
        name:"invalidateCache",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "attr:DataSourceField.summaryValueTitle":{
        ref:"attr:DataSourceField.summaryValueTitle",
        flags:"IR",
        description:"Title to show in a ${isc.DocUtils.linkForRef('type:SummaryFunction','Summary of type \"title\"')} for this field. If unspecified\n <code>title</code> summaries will show the ${isc.DocUtils.linkForRef('attr:DataSourceField.title')} for the field.",
        name:"summaryValueTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSourceField"
    },
    "attr:ListGrid.canResizeFields":{
        ref:"attr:ListGrid.canResizeFields",
        flags:"IRW",
        description:"Indicates whether fields in this listGrid can be resized by dragging header\n fields.",
        name:"canResizeFields",
        setter:[
            "setCanResizeFields"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('columnSize')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dragging"
        ]
    },
    "method:DrawGroup.dragStart":{
        ref:"method:DrawGroup.dragStart",
        flags:"",
        description:" Notification fired when the user starts to drag this DrawGroup. Will only fire if ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag','canDrag')}\n is true for this group.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n <P>\n Default drag behavior will be to reposition all items in the group (and update the group\n rectangle).\n",
        name:"dragStart",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag action.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragPan')}"
        ],
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:ColorPicker.greenFieldPrompt":{
        ref:"attr:ColorPicker.greenFieldPrompt",
        flags:"IR",
        description:"The text to show when the mouse hovers over the 'Green' field in the complex chooser.",
        name:"greenFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The Green component of the selected color\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.rightTitlePrefix":{
        ref:"attr:DynamicForm.rightTitlePrefix",
        flags:"IRW",
        description:"The string prepended to the title of an item in this form if its\n titleOrientation property is set to \"right\".",
        name:"rightTitlePrefix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\":&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "method:SectionStack.getVisibleSections":{
        ref:"method:SectionStack.getVisibleSections",
        flags:"",
        description:"\n Returns the list of currently visible sections.  The list items are section names.\n\n",
        name:"getVisibleSections",
        seeAlso:[
        ],
        returns:{
            description:"list of hidden sections",
            type:"List"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "classMethod:EventHandler.getKey":{
        ref:"classMethod:EventHandler.getKey",
        flags:"",
        description:"\t\t\tReturn the name of the key for the event passed in.\n\t\t\tNote that this is only set reliably for keyboard events.\n\n",
        name:"getKey",
        seeAlso:[
        ],
        returns:{
            description:"Key Name",
            type:"KeyName"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "keyboardEvents"
        ]
    },
    "method:UserTask.goToPrevious":{
        ref:"method:UserTask.goToPrevious",
        flags:"",
        description:" Set ${isc.DocUtils.linkForRef('attr:UserTask.previousElement')} as next element of workflow. This method could be used to \n create wizard-like UI behavior.  \n",
        name:"goToPrevious",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:UserTask"
    },
    "attr:ListGridField.baseStyle":{
        ref:"attr:ListGridField.baseStyle",
        flags:"IRW",
        description:"Custom base style to apply to all cells in this field instead of ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')}\n  To override the baseStyle at the row level, use\n  ${isc.DocUtils.linkForRef('attr:ListGrid.recordBaseStyleProperty','record[listGrid.recordBaseStyleProperty]')}\n  instead.",
        name:"baseStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.recordBaseStyleProperty",
                description:null
            }
        ],
        valueType:"CSSClass",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridCells')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.wrapHeaderTitles":{
        ref:"attr:ListGrid.wrapHeaderTitles",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.wrap')} is not explicitly set, should fields wrap?",
        name:"wrapHeaderTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.expansionFieldFalseImage":{
        ref:"attr:ListGrid.expansionFieldFalseImage",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is set to <code>true</code>, this property\n determines the image to display in the expansion field for collapsed rows.\n If unset, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')} will be used.",
        name:"expansionFieldFalseImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.expansionFieldTrueImage",
                description:null
            },
            {
                ref:"attr:ListGrid.expansionFieldImageWidth",
                description:null
            },
            {
                ref:"attr:ListGrid.expansionFieldImageHeight",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "object:RelativeDate":{
        methods:[
        ],
        ref:"object:RelativeDate",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:RelativeDate.value",
            "attr:RelativeDate.rangePosition"
        ],
        description:"An object representing a relative date, useful for representing date ranges etc in criteria.\n RelativeDate objects may be created directly by SmartClient components such as the\n ${isc.DocUtils.linkForRef('class:RelativeDateItem')}.\n <P>\n RelativeDate objects will have <code>\"_constructor\"</code> set to <code>\"RelativeDate\"</code>\n and must have a specified ${isc.DocUtils.linkForRef('attr:RelativeDate.value')}. Any other attributes are optional.",
        name:"RelativeDate",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:DetailViewer.canPickFields":{
        ref:"attr:DetailViewer.canPickFields",
        flags:"IR",
        description:"If set, right-clicking on the DetailViewer will show a context menu that offers to bring up a\n ${isc.DocUtils.linkForRef('class:FieldPicker')} for configuring which fields are displayed and their order.",
        name:"canPickFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DetailViewer"
    },
    "attr:Canvas.animateAcceleration":{
        ref:"attr:Canvas.animateAcceleration",
        flags:"IRWA",
        description:"Default acceleration effect to apply to all animations on this Canvas.\n Can be overridden by setting animationAcceleration for specific animations or by passing\n an acceleration function directly into the appropriate method.",
        name:"animateAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"\"smoothEnd\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "method:TileGrid.selectRecords":{
        ref:"method:TileGrid.selectRecords",
        flags:"",
        description:"\n Select/deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n <P>\n Note that developers may wish to use ${isc.DocUtils.linkForRef('method:TileGrid.selectRange')} to select a single\n contiguous range.\n\n",
        name:"selectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to select",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "method:CubeGrid.cellSelectionChanged":{
        ref:"method:CubeGrid.cellSelectionChanged",
        flags:"",
        description:"\n      Handler/Notification function for cell selection change\n      May update header button styles.\n\n      <br><i>methodType</i> handler\n",
        name:"cellSelectionChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"array of cells with new selection state",
                optional:false,
                name:"cellList",
                defaultValue:null,
                type:"Array of cells"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:ListGridField.imageURLSuffix":{
        ref:"attr:ListGridField.imageURLSuffix",
        flags:"IRWA",
        description:"If any cells in this field are showing a value icon (see: ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons')})\n or this is has ${isc.DocUtils.linkForRef('type:ListGridFieldType')} set to <code>\"image\"</code>, this the value\n of this property will be appended to the end of the URL for the icon displayed.<br>\n Typical usage might be to append a file type such as <code>\".gif\"</code> to the\n filename of the image.<br>\n For editable fields, this property will also be passed through to any editors as\n ${isc.DocUtils.linkForRef('attr:FormItem.imageURLSuffix')}.",
        name:"imageURLSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('imageType')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:StretchImgButton.labelVPad":{
        ref:"attr:StretchImgButton.labelVPad",
        flags:"IRW",
        description:"The padding for a StretchImgButton's label is determined as follows.\n <P>\n If <code>labelHPad</code> is set it will specify the horizontal padding applied to the\n label. Similarly if <code>labelVPad</code> is set it will specify the vertical padding\n for the label, regardless of the button's ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical','vertical')} setting.\n <P>\n Otherwise <code>labelLengthPad</code> can be set to specify the label padding along the\n length axis (ie: horizontal padding if ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical')} is false,\n otherwise vertical padding), and \n <code>labelBreadthPad</code> can be set to specify the label padding along the other axis.\n <P>\n Otherwise the padding on the length axis will match the ${isc.DocUtils.linkForRef('attr:StretchImgButton.capSize')} and\n will be set to zero on the breadth axis.\n <P>\n So by default the label will be sized to match the center image of the StretchImgButton, but\n these settings allow the label to partially or wholly overlap the caps.",
        name:"labelVPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "method:DrawItem.mouseOver":{
        ref:"method:DrawItem.mouseOver",
        flags:"",
        description:" Notification fired when the mouse enters this DrawItem.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"mouseOver",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:StretchImgButton.labelLengthPad":{
        ref:"attr:StretchImgButton.labelLengthPad",
        flags:"IRW",
        description:"The padding for a StretchImgButton's label is determined as follows.\n <P>\n If <code>labelHPad</code> is set it will specify the horizontal padding applied to the\n label. Similarly if <code>labelVPad</code> is set it will specify the vertical padding\n for the label, regardless of the button's ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical','vertical')} setting.\n <P>\n Otherwise <code>labelLengthPad</code> can be set to specify the label padding along the\n length axis (ie: horizontal padding if ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical')} is false,\n otherwise vertical padding), and \n <code>labelBreadthPad</code> can be set to specify the label padding along the other axis.\n <P>\n Otherwise the padding on the length axis will match the ${isc.DocUtils.linkForRef('attr:StretchImgButton.capSize')} and\n will be set to zero on the breadth axis.\n <P>\n So by default the label will be sized to match the center image of the StretchImgButton, but\n these settings allow the label to partially or wholly overlap the caps.",
        name:"labelLengthPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "method:Array.remove":{
        ref:"method:Array.remove",
        flags:"",
        description:" Remove first instance of the passed object from this array, sliding other items around to\n fill gaps.\n\n",
        name:"remove",
        seeAlso:[
        ],
        params:[
            {
                description:"item to remove",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"true if a matching object was found and removed, false if no matching object was found and the list remains unchanged.",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "method:ImgButton.select":{
        ref:"method:ImgButton.select",
        flags:"",
        description:" Select this object.\n",
        name:"select",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "attr:FacetChart.valueLineProperties":{
        ref:"attr:FacetChart.valueLineProperties",
        flags:"IR",
        description:"Properties for a \"value line\" - a line shows where a particular discrete value is\n placed, eg, vertical lines connecting points of a line chart to the X axis, or radial\n lines in a Radar chart.",
        name:"valueLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Chart.title":{
        ref:"attr:Chart.title",
        flags:"IR",
        description:"Title for the chart as a whole.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "method:PortalLayout.setCanResizePortlets":{
        ref:"method:PortalLayout.setCanResizePortlets",
        flags:"",
        description:" Set whether the height and width of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} should be drag-resizable, and\n update any drawn Portlets to reflect this.\n",
        name:"setCanResizePortlets",
        seeAlso:[
            {
                ref:"attr:PortalLayout.canResizePortlets",
                description:null
            }
        ],
        params:[
            {
                description:"Whether drag-resizing the height and width of portlets is allowed",
                optional:false,
                name:"canResize",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "method:GridRenderer.refreshCellStyle":{
        ref:"method:GridRenderer.refreshCellStyle",
        flags:"",
        description:" Refresh the styling of an individual cell without redrawing the grid.\n <P>\n The cell's CSS class and CSS text will be refreshed, to the current values returned by\n getCellStyle() and getCellCSSText() respectively.\n <P>\n The cell's contents (as returned by getCellValue()) will <b>not</b> be refreshed.  To\n refresh both styling and contents, call refreshCell() instead.\n\n",
        name:"refreshCellStyle",
        seeAlso:[
            {
                ref:"method:GridRenderer.refreshCell",
                description:"to update cell contents too"
            }
        ],
        params:[
            {
                description:"row number of cell to refresh",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of cell to refresh",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "appearance"
        ]
    },
    "attr:TabSet.moreTabPaneProperties":{
        ref:"attr:TabSet.moreTabPaneProperties",
        flags:"IR",
        description:"Properties to apply to the \"more\" tab's pane created by this TabSet.",
        name:"moreTabPaneProperties",
        seeAlso:[
        ],
        valueType:"Canvas Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "type:RelativeDateString":{
        ref:"type:RelativeDateString",
        description:"A string of known format used to specify a datetime offset.  For example, a \n RelativeDateString that represents \"one year from today\" is written as <code>\"+1y\"</code>.\n <P>\n RelativeDateStrings are comprised of the following parts:\n <ul>\n <li>direction: the direction in which the quantity applies - one of + or - </li>\n <li>quantity: the number of units of time to apply - a number </li>\n <li>timeUnit: an abbreviated timeUnit to use - one of ms/MS (millisecond), s/S (second), \n      mn/MN (minute), h/H (hour), d/D (day), w/W (week), m/M (month), q/Q (quarter, 3-months), \n      y/Y (year), dc/DC (decade) or c/C (century). <br>\n      The timeUnit is case sensitive. A lowercase timeUnit implies an exact offset, so <code>+1d</code>\n      refers to the current date / time increased by exactly 24 hours. If the timeUnit is \n      uppercase, it refers to the start or end boundary of the period of time in question, so\n      <code>+1D</code> would refer to the end of the day (23:39:59:999) tomorrow, and\n      <code>-1D</code> would refer to the start of the day (00:00:00:000) yesterday.</li>\n <li>[qualifier]: an optional timeUnit encapsulated in square-brackets and used to offset \n      the calculation - eg. if +1d is \"plus one day\", +1d[W] is \"plus one day from the \n      end of the current week\".  You may also specify another complete RelativeDateString as the\n      [qualifier], which offers more control - eg, +1d[+1W] indicates \"plus one day from \n      the end of NEXT week\".</li>\n </ul>\n <P>\n This format is very flexible. Here are a few example relative date strings:<br>\n <code>+0D</code>: End of today. There are often multiple ways to represent the same time\n  using this system - for example this could also be written as <code>-1ms[+1D]</code><br>\n <code>-0D</code>: Beginning of today.<br>\n <code>+1W</code>: End of next week.<br>\n <code>+1w[-0W]</code>: Beginning of next week.<br>\n <code>+1w[-0D]</code>: Beginning of the current day of next week.",
        name:"RelativeDateString",
        seeAlso:[
            {
                ref:"type:RelativeDateShortcut",
                description:null
            }
        ],
        type:"type"
    },
    "group:subset":{
        ref:"group:subset",
        refs:[
            "method:Array.getUniqueItems"
        ],
        name:"subset",
        seeAlso:[
        ],
        type:"group"
    },
    "method:SectionStack.addItem":{
        ref:"method:SectionStack.addItem",
        flags:"",
        description:" Add a canvas as an item to a section.\n",
        name:"addItem",
        seeAlso:[
        ],
        params:[
            {
                description:"ID or index of the section to add item to",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"String or Number"
            },
            {
                description:"Item to insert into the section",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"Index into section to insert item",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:SectionStack"
    },
    "attr:FacetChart.gradationZeroLineProperties":{
        ref:"attr:FacetChart.gradationZeroLineProperties",
        flags:"IR",
        description:"Properties for the gradation line drawn for zero (slightly thicker by default).",
        name:"gradationZeroLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Calendar.bringEventsToFront":{
        ref:"attr:Calendar.bringEventsToFront",
        flags:"IR",
        description:"If set to true, clicking an event will bring it to the front of the zorder.",
        name:"bringEventsToFront",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:Canvas.animateScrollTime":{
        ref:"attr:Canvas.animateScrollTime",
        flags:"IRWA",
        description:"Default time for performing an animated scroll.  If unset, <code>this.animateTime</code>\n will be used by default instead",
        name:"animateScrollTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:ListGrid.checkboxFieldTrueImage":{
        ref:"attr:ListGrid.checkboxFieldTrueImage",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is set to <code>\"checkbox\"</code> this property\n determines the image to display in the checkbox field for a selected row.\n If unset, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} will be used. Note that the special\n value \"blank\" means that no image will be shown.",
        name:"checkboxFieldTrueImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.checkboxFieldFalseImage",
                description:null
            },
            {
                ref:"attr:ListGrid.checkboxFieldImageWidth",
                description:null
            },
            {
                ref:"attr:ListGrid.checkboxFieldImageHeight",
                description:null
            },
            {
                ref:"attr:ListGrid.printCheckboxFieldTrueImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "group:buttonIcon":{
        ref:"group:buttonIcon",
        title:"Button Icon",
        refs:[
            "method:StatefulCanvas.setIconOrientation",
            "method:StatefulCanvas.setIcon",
            "method:Button.setIconOrientation",
            "method:Button.setIcon",
            "method:Button.iconClick",
            "method:Label.setIconOrientation",
            "method:Label.setIcon",
            "method:ImgButton.setIconOrientation",
            "method:ImgButton.setIcon",
            "method:StretchImgButton.setIconOrientation",
            "method:StretchImgButton.setIcon",
            "method:StretchImgButton.iconClick",
            "method:PanelHeader.iconClick",
            "attr:ListGridField.iconSpacing",
            "attr:ListGridField.showDisabledIcon",
            "attr:ListGridField.showRollOverIcon",
            "attr:ListGridField.showFocusedIcon",
            "attr:ListGridField.showDownIcon",
            "attr:ListGridField.showSelectedIcon",
            "attr:StatefulCanvas.icon",
            "attr:StatefulCanvas.iconSize",
            "attr:StatefulCanvas.iconWidth",
            "attr:StatefulCanvas.iconHeight",
            "attr:StatefulCanvas.iconStyle",
            "attr:StatefulCanvas.iconOrientation",
            "attr:StatefulCanvas.iconSpacing",
            "attr:StatefulCanvas.showDisabledIcon",
            "attr:StatefulCanvas.showRollOverIcon",
            "attr:StatefulCanvas.showDownIcon",
            "attr:StatefulCanvas.showSelectedIcon",
            "attr:StatefulCanvas.showFocusedIcon",
            "attr:Button.icon",
            "attr:Button.iconSize",
            "attr:Button.iconWidth",
            "attr:Button.iconHeight",
            "attr:Button.iconStyle",
            "attr:Button.iconOrientation",
            "attr:Button.iconAlign",
            "attr:Button.iconSpacing",
            "attr:Button.showDisabledIcon",
            "attr:Button.showRollOverIcon",
            "attr:Button.showFocusedIcon",
            "attr:Button.showDownIcon",
            "attr:Button.showSelectedIcon",
            "attr:Label.icon",
            "attr:Label.iconSize",
            "attr:Label.iconWidth",
            "attr:Label.iconHeight",
            "attr:Label.iconOrientation",
            "attr:Label.iconAlign",
            "attr:Label.iconSpacing",
            "attr:Label.showDisabledIcon",
            "attr:Label.showRollOverIcon",
            "attr:Label.showFocusedIcon",
            "attr:Label.showDownIcon",
            "attr:Label.showSelectedIcon",
            "attr:ImgButton.icon",
            "attr:ImgButton.iconSize",
            "attr:ImgButton.iconWidth",
            "attr:ImgButton.iconHeight",
            "attr:ImgButton.iconOrientation",
            "attr:ImgButton.iconAlign",
            "attr:ImgButton.iconSpacing",
            "attr:ImgButton.showDisabledIcon",
            "attr:ImgButton.showRollOverIcon",
            "attr:ImgButton.showFocusedIcon",
            "attr:ImgButton.showDownIcon",
            "attr:ImgButton.showSelectedIcon",
            "attr:StretchImgButton.icon",
            "attr:StretchImgButton.iconSize",
            "attr:StretchImgButton.iconWidth",
            "attr:StretchImgButton.iconHeight",
            "attr:StretchImgButton.iconOrientation",
            "attr:StretchImgButton.iconAlign",
            "attr:StretchImgButton.iconSpacing",
            "attr:StretchImgButton.showDisabledIcon",
            "attr:StretchImgButton.showRollOverIcon",
            "attr:StretchImgButton.showFocusedIcon",
            "attr:StretchImgButton.showDownIcon",
            "attr:StretchImgButton.showSelectedIcon",
            "attr:ImgSectionHeader.icon",
            "attr:ImgSectionHeader.iconAlign",
            "attr:ImgSectionHeader.iconSize",
            "attr:ImgSectionHeader.iconHeight",
            "attr:ImgSectionHeader.iconWidth",
            "attr:ImgSectionHeader.iconOrientation"
        ],
        description:"Control over optional icons shown in Buttons, Labels and other contexts",
        name:"buttonIcon",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Tree.nameProperty":{
        ref:"attr:Tree.nameProperty",
        flags:"IRW",
        description:"Name of the property on a ${isc.DocUtils.linkForRef('object:TreeNode')} that holds a name for the node that is unique\n among its immediate siblings, thus allowing a unique path to be used to identify the node,\n similar to a file system.  Default value is \"name\".  See ${isc.DocUtils.linkForRef('attr:TreeNode.name')} for usage.",
        name:"nameProperty",
        seeAlso:[
            {
                ref:"attr:TreeNode.name",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"name\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:Tree"
    },
    "attr:LinearGradient.x2":{
        ref:"attr:LinearGradient.x2",
        flags:"IR",
        description:"X coordinate of the end point. This can be a number or a percentage of the width of the\n bounding box of the DrawItem to which it is applied.",
        name:"x2",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:LinearGradient"
    },
    "attr:Validator.serverOnly":{
        ref:"attr:Validator.serverOnly",
        flags:"IR",
        description:"Indicates this validator runs on the server only.",
        name:"serverOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Validator"
    },
    "attr:LinearGradient.x1":{
        ref:"attr:LinearGradient.x1",
        flags:"IR",
        description:"X coordinate of the start point. This can be a number or a percentage of the width of the\n bounding box of the DrawItem to which it is applied.",
        name:"x1",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:LinearGradient"
    },
    "attr:ListGrid.canFocusInEmptyGrid":{
        ref:"attr:ListGrid.canFocusInEmptyGrid",
        flags:"IRA",
        description:"If the listGrid is empty, should the user be able to put focus into the grid body by tabbing\n to it?\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:ListGrid.editOnFocus')} is true for this grid and ${isc.DocUtils.linkForRef('attr:ListGrid.listEndEditAction')} is set to next,\n having this property set to true will allow users to automatically create a new edit row by\n simply tabbing into the grid.",
        name:"canFocusInEmptyGrid",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classMethod:Log.setLogPriority":{
        ref:"classMethod:Log.setLogPriority",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.setLogPriority')} is to call the method\n directly on the Log class.\n",
        name:"setLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category for which the log priority will be updated. If not                          all logs on this canvas will be logged at the priority passed in.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"string"
            },
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "method:ListGrid.selectionChanged":{
        ref:"method:ListGrid.selectionChanged",
        flags:"",
        description:" Called when (row-based) selection changes within this grid. Note this method fires for\n each record for which selection is modified - so when a user clicks inside a grid this\n method will typically fire twice (once for the old record being deselected, and once for\n the new record being selected).\n <P>\n NOTE: For updating other components based on selections or triggering selection-oriented\n events within an application, see the\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectionUpdated','selectionUpdated()')} event\n which is likely more suitable.  Calls to ${isc.DocUtils.linkForRef('method:ListGrid.getSelection','getSelection()')}\n from within this event may not return a valid set of selected records if the event has\n been triggered by a call to ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectAllRecords','selectAllRecords()')}\n or ${isc.DocUtils.linkForRef('method:DataBoundComponent.deselectAllRecords','deselectAllRecords()')} - in this case\n use the ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectionUpdated','selectionUpdated()')} event instead.\n\n",
        name:"selectionChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"record for which selection changed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"New selection state (true for selected, false for unselected)",
                optional:false,
                name:"state",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('multipleSelect')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Canvas.dragRepositionCursor":{
        ref:"attr:Canvas.dragRepositionCursor",
        flags:"IRWA",
        description:"Cursor to switch to if the mouse is over a widget that is drag repositionable.",
        name:"dragRepositionCursor",
        seeAlso:[
        ],
        valueType:"Cursor",
        defaultValue:"Canvas.MOVE",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "group:clientOnlyDataSources":{
        ref:"group:clientOnlyDataSources",
        title:"Client Only DataSources",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        refs:[
            "attr:DataSource.clientOnly"
        ],
        description:"For prototyping purposes, a \"client-only\" DataSource can be created that has no permanent\n storage and never contacts the server, instead using a set of test data to respond to\n requests in the same manner as a server-based DataSource might.\n <P>\n The client-side interface to a client-only DataSource is identical to a server-based\n DataSource, including asynchronous responses, so that a client-only DataSource can be\n replaced by a server-based DataSource without code changes.  The only difference is that\n changes to records belonging to the DataSource persist only until the page is reloaded.\n <p>\n Client-only DataSources allow you to create a complete prototype application in an .html\n file that does not require a server.\n <p>\n <smartclient>\n The <code>clientOnly</code> property is specified to create a client-only DataSource, and\n the <code>testData</code> property should contain the test dataset, as an Array of Objects,\n one per DataSource record.  For example:\n <pre>\n   isc.DataSource.create({\n       ID:\"supplyItem\",\n       fields: ...,\n       clientOnly:true,\n       testData:[\n          {itemName:\"Pencil\", cost:5.50},\n          ...\n       ]\n   });\n </pre>\n If you have existing test data in XML (see the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')} for\n expected format),\n you can use the XML->JS translation engine to load it into a client-only DataSource, like so:\n <pre>\n   isc.DataSource.create({\n     ID:\"solutions\",\n     fields: ...,\n     clientOnly : true,\n     testData : \n         &lt;isomorphic:XML filename=\"shared/ds/test_data/solutions.data.xml\"/&gt;\n   });\n </pre>\n Another useful practice is to specify both the clientOnly DataSource and its test data in\n XML, so that the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')} can later be used to import the\n DataSource and its test data into a SQL Database.  An idiom for accomplishing this is:\n <pre>\n   &lt;isomorphic:loadDS name=\"solutions\"/&gt;\n   isc.DataSource.getDataSource(\"solutions\").addProperties({\n     clientOnly : true,\n     testData : \n        &lt;isomorphic:XML filename=\"shared/ds/test_data/solutions.data.xml\"/&gt;\n   });\n </pre>\n If you specify your DataSource as <code>clientOnly: true</code>, omit testData\n entirely, and provide either a ${isc.DocUtils.linkForRef('attr:DataSource.dataURL')} or a <code>testFileName</code>, the\n </smartclient>\n <smartgwt>\n The setClientOnly method is specified to create a client-only DataSource. For example:\n <pre>\n  DataSource dataSource = new DataSource();\n  dataSource.setID(\"stockQuotesDS\");\n  DataSourceField idField = new DataSourceField(\"id\", FieldType.INTEGER, \"Id\");\n  ........\n  dataSource.setFields(idField,.....);\n  dataSource.setClientOnly(true);\n </pre>\n If you have existing test data in XML (see the Admin Console for expected format), \n you can load it into a client-only DataSource using setDataURL method, like so:\n <pre>\n  DataSource dataSource = new DataSource();\n  dataSource.setID(\"stockQuotesDS\");\n  dataSource.setRecordXPath(\"/List/stockQuotes\");\n  DataSourceField idField = new DataSourceField(\"id\", FieldType.INTEGER, \"Id\");\n  ........\n  dataSource.setFields(idField,.....);\n  dataSource.setDataURL(\"ds/test_data/stockQuotes.data.xml\");\n  dataSource.setClientOnly(true);\n </pre>\n The\n </smartgwt>\n DataSource will lazily make a one-time fetch against the specified data file the first time\n an operation is called on it.  From then on, the DataSource will work against the local\n cache created from this initial request.  This is a quick way to prototype against some test\n data that may eventually be returned from an arbitrary back-end.\n <P>\n Finally, it is possible to have a DataSource which initially fetches the entire dataset and\n performs all subsequent fetching locally, while still visiting the server to perform all \n other operations.  See ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')}.",
        name:"clientOnlyDataSources",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ScriptTask.isAsync":{
        ref:"attr:ScriptTask.isAsync",
        flags:"IR",
        description:"Whether the script task is asynchronous.  A synchronous task is expected to return data\n directly from execute() and is considered complete once the execute() method exits.\n <P>\n An asnychronous task is expected to start processing in execute(), and will not be\n considered complete until either ${isc.DocUtils.linkForRef('method:ScriptTask.setOutputData')} or ${isc.DocUtils.linkForRef('method:ScriptTask.setOutputRecord')} is\n called.",
        name:"isAsync",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ScriptTask"
    },
    "method:Canvas.doubleClick":{
        ref:"method:Canvas.doubleClick",
        flags:"A",
        description:"\n Executed when the left mouse button is clicked twice in rapid succession (within\n ${isc.DocUtils.linkForRef('attr:Canvas.doubleClickDelay')} by default) in this object.\n\n",
        name:"doubleClick",
        seeAlso:[
            {
                ref:"attr:Canvas.doubleClickDelay",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "group:sizing":{
        ref:"group:sizing",
        refs:[
            "method:Portlet.setHeight",
            "method:Portlet.setRowHeight",
            "method:PortalLayout.setCanStretchColumnWidths",
            "method:PortalLayout.setCanShrinkColumnWidths",
            "method:PortalLayout.setStretchColumnWidthsProportionally",
            "method:PortalLayout.setPreventUnderflow",
            "method:PortalLayout.setColumnPreventUnderflow",
            "method:PortalLayout.setPreventRowUnderflow",
            "method:PortalLayout.setCanResizeColumns",
            "method:PortalLayout.setCanResizePortlets",
            "method:Canvas.setRect",
            "method:Canvas.getWidth",
            "method:Canvas.setWidth",
            "method:Canvas.getHeight",
            "method:Canvas.setHeight",
            "method:Canvas.getRight",
            "method:Canvas.setRight",
            "method:Canvas.getBottom",
            "method:Canvas.setBottom",
            "method:Canvas.getScrollWidth",
            "method:Canvas.getScrollHeight",
            "method:Canvas.getViewportWidth",
            "method:Canvas.getViewportHeight",
            "method:Canvas.getInnerHeight",
            "method:Canvas.getInnerWidth",
            "method:Canvas.getInnerContentHeight",
            "method:Canvas.getInnerContentWidth",
            "method:Canvas.getVisibleWidth",
            "method:Canvas.getVisibleHeight",
            "method:Canvas.resizeBy",
            "method:Canvas.setPercentSource",
            "method:Canvas.layoutChildren",
            "method:Canvas.resizeTo",
            "method:Canvas.parentResized",
            "method:Canvas.setOverflow",
            "method:Canvas.adjustForContent",
            "method:GridRenderer.getCellPageRect",
            "method:GridRenderer.getColumnLeft",
            "method:GridRenderer.getColumnPageLeft",
            "method:GridRenderer.getColumnWidth",
            "method:ListGrid.getColumnLeft",
            "method:ListGrid.getColumnPageLeft",
            "method:ListGrid.getColumnWidth",
            "method:ListGrid.getCellPageRect",
            "method:ListGrid.getDrawnRowHeight",
            "method:ListGrid.setHeaderHeight",
            "method:FormItem.getRect",
            "method:FormItem.getPageRect",
            "method:FormItem.getVisibleHeight",
            "method:FormItem.getIconHeight",
            "method:FormItem.getWidth",
            "method:FormItem.getVisibleWidth",
            "method:FormItem.getIconWidth",
            "method:FormItem.getLeft",
            "method:FormItem.getTop",
            "classMethod:Page.resizeTo",
            "classMethod:Page.getWidth",
            "classMethod:Page.getHeight",
            "classMethod:Page.getScrollWidth",
            "classMethod:Page.getScrollHeight",
            "classMethod:Page.getScrollLeft",
            "classMethod:Page.getScrollTop",
            "attr:Portlet.rowHeight",
            "attr:PortalLayout.overflow",
            "attr:PortalLayout.columnOverflow",
            "attr:PortalLayout.canStretchColumnWidths",
            "attr:PortalLayout.canShrinkColumnWidths",
            "attr:PortalLayout.stretchColumnWidthsProportionally",
            "attr:PortalLayout.preventUnderflow",
            "attr:PortalLayout.preventColumnUnderflow",
            "attr:PortalLayout.preventRowUnderflow",
            "attr:PortalLayout.canResizeColumns",
            "attr:PortalLayout.canResizePortlets",
            "attr:Canvas.width",
            "attr:Canvas.height",
            "attr:Canvas.defaultWidth",
            "attr:Canvas.defaultHeight",
            "attr:Canvas.minWidth",
            "attr:Canvas.maxWidth",
            "attr:Canvas.minHeight",
            "attr:Canvas.maxHeight",
            "attr:Canvas.overflow",
            "attr:Canvas.percentSource",
            "attr:Canvas.percentBox",
            "attr:Canvas.snapTo",
            "attr:Canvas.snapEdge",
            "attr:Canvas.snapOffsetLeft",
            "attr:Canvas.snapOffsetTop",
            "attr:GridRenderer.fixedColumnWidths",
            "attr:GridRenderer.autoFit",
            "attr:ListGrid.bodyOverflow",
            "attr:ListGrid.headerHeight",
            "attr:Menu.defaultWidth",
            "attr:Menu.cellHeight",
            "attr:TileLayout.tileSize",
            "attr:TileLayout.tileWidth",
            "attr:TileLayout.tileHeight",
            "attr:TileLayout.overflow",
            "attr:StatefulCanvas.autoFit",
            "attr:Button.autoFit",
            "attr:Img.size",
            "attr:Label.wrap",
            "attr:Label.autoFit",
            "attr:ImgButton.autoFit",
            "attr:StretchImgButton.autoFit",
            "attr:ToolStrip.height",
            "type:Overflow"
        ],
        description:"Width and height of an object",
        name:"sizing",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Slider.setLabelHeight":{
        ref:"method:Slider.setLabelHeight",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.labelHeight')} property of the slider\n\n",
        name:"setLabelHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"new label height",
                optional:false,
                name:"newHeight",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "group:labels":{
        ref:"group:labels",
        refs:[
            "attr:DetailViewer.labelPrefix",
            "attr:DetailViewer.labelSuffix",
            "attr:DetailViewer.wrapLabel",
            "attr:DetailViewer.wrapValues"
        ],
        name:"labels",
        seeAlso:[
        ],
        type:"group"
    },
    "method:FormItem.clearValue":{
        ref:"method:FormItem.clearValue",
        flags:"",
        description:" Clear the value for this form item.\n <P>\n Note that if a default value is specified, value will be set to that default value,\n otherwise value will be cleared, (and removed from the containing form's values).\n",
        name:"clearValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:Canvas.position":{
        ref:"attr:Canvas.position",
        flags:"IRWA",
        description:"Absolute or relative, corresponding to the \"absolute\" (with respect to parent) or\n \"relative\" (with respect to document flow) values for the CSS position attribute.\n <P>\n Setting <code>position:\"relative\"</code> enables SmartClient components to be embedded\n directly into the native HTML flow of a page, causing the component to be rendered\n within an existing DOM structure.\n This attribute should only be set to <code>\"relative\"</code> on a top level component\n (a component with no ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas')}).\n <P>\n There are 2 ways to embed relatively positioned canvases in the DOM - by default the\n component will be written out inline when it gets ${isc.DocUtils.linkForRef('method:Canvas.draw','drawn()n')}. For example\n to embed a canvas in an HTML table you could use this code:\n <pre>\n &lt;table&gt;\n   &lt;tr&gt;\n     &lt;td&gt;\n       &lt;script&gt;\n         isc.Canvas.create({autoDraw:true, backgroundColor:\"red\", position:\"relative\"});\n       &lt;/script&gt;\n     &lt;td&gt;\n   &lt;/tr&gt;\n &lt;/table&gt;\n </pre>\n Alternatively you can make use of the ${isc.DocUtils.linkForRef('attr:Canvas.htmlElement')} attribute.\n <P>\n Relative positioning is intended as a short-term integration scenario while incrementally\n upgrading existing applications.\n Note that relative positioning is not used to manage layout within SmartClient components -\n instead the ${isc.DocUtils.linkForRef('class:Layout')} class would typically be used.\n For best consistency and flexibility across browsers, all SmartClient layout managers\n use absolute positioning.\n <P>\n For canvases with a specified ${isc.DocUtils.linkForRef('attr:Canvas.htmlElement')}, this attribute defaults to\n <code>\"relative\"</code>. In all other cases the default value will be\n <code>\"absolute\"</code>.",
        name:"position",
        seeAlso:[
        ],
        valueType:"Positioning",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('inlineComponents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:TreeGrid.createDefaultTreeField":{
        ref:"attr:TreeGrid.createDefaultTreeField",
        flags:"IR",
        description:"If no fields are specified, create a single field with \n ${isc.DocUtils.linkForRef('attr:TreeGridField.treeField')} set to <code>true</code> to show the tree.\n <P>\n This automatically generated field will display values derived by calling\n ${isc.DocUtils.linkForRef('method:TreeGrid.getNodeTitle')}, and have the column title set to the specified\n ${isc.DocUtils.linkForRef('attr:TreeGrid.treeFieldTitle')}.\n <P>\n Has no effect if fields are explicitly specified.\n <P>\n This is a convenience setting to allow a TreeGrid to be created without specifying a\n field list.  If fields are specified, refer to the documentation on property\n ${isc.DocUtils.linkForRef('attr:TreeGrid.autoAssignTreeField')} for a way to automatically have one of the fields be\n use as the tree field if no fields have ${isc.DocUtils.linkForRef('attr:TreeGridField.treeField')} set.\n <P>\n For databound treeGrids, if there is no explicit fields array specified, developers\n who wish to pick up all fields from the DataSource definition rather than displaying\n this single automatically generated tree field may \n either set this property to false, or set ${isc.DocUtils.linkForRef('attr:TreeGrid.useAllDataSourceFields')}\n to <code>true</code>.",
        name:"createDefaultTreeField",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "method:DrawItem.resizeTo":{
        ref:"method:DrawItem.resizeTo",
        flags:"",
        description:" Resize to the specified size\n",
        name:"resizeTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:FilterClause.criterion":{
        ref:"attr:FilterClause.criterion",
        flags:"IRW",
        getter:[
            "getCriterion"
        ],
        description:"Initial criterion for this FilterClause.\n <P>\n When initialized with a criterion, the clause will be automatically set up for editing\n the supplied criterion.\n <P>\n Note that an empty or partial criterion is allowed, for example, it may specify\n ${isc.DocUtils.linkForRef('attr:Criterion.fieldName')} only and will generate an expression with the operator not chosen.",
        name:"criterion",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:FiscalYear.fiscalYear":{
        ref:"attr:FiscalYear.fiscalYear",
        flags:"IRW",
        description:"The actual fiscal year that this date relates to.\n <P>\n A fiscal year ends when the next one begins. A fiscal year may span the boundary\n between two calendar years in which case the ${isc.DocUtils.linkForRef('attr:FiscalYear.fiscalYear')} value may\n not match the ${isc.DocUtils.linkForRef('attr:FiscalYear.year')} value.\n <P>\n For example fiscalYear 2020 may start in July of 2019 and end in July of 2020. In this\n case the <code>fiscalYear</code> would be set to <code>2020</code> and the\n ${isc.DocUtils.linkForRef('attr:FiscalYear.year')} would be set to <code>2019</code>",
        name:"fiscalYear",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FiscalYear"
    },
    "attr:FormItem.requiredMessage":{
        ref:"attr:FormItem.requiredMessage",
        flags:"IRW",
        description:"The required message for required field errors.",
        name:"requiredMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "validation"
        ]
    },
    "attr:MultiSortDialog.optionsGrid":{
        ref:"attr:MultiSortDialog.optionsGrid",
        flags:"IR",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ListGrid')} allowing the user to configure a set of \n ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.optionsGridProperties</code> and \n <code>multiSortPanel.optionsGridDefaults</code>.",
        name:"optionsGrid",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "attr:DataBoundComponent.fieldEditorWindow":{
        ref:"attr:DataBoundComponent.fieldEditorWindow",
        flags:"R",
        description:"The ${isc.DocUtils.linkForRef('class:Window')} used to edit calculated fields for this component.",
        name:"fieldEditorWindow",
        seeAlso:[
        ],
        valueType:"AutoChild Window",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "method:MenuButton.setShowMenuBelow":{
        ref:"method:MenuButton.setShowMenuBelow",
        flags:"",
        description:" Setter for the 'showMenuButtonBelow' property - determines whether the menu will be\n shown above or below the menubutton.\n",
        name:"setShowMenuBelow",
        seeAlso:[
        ],
        params:[
            {
                description:"True if the menu should be shown below the menubutton.",
                optional:false,
                name:"below",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:MenuButton"
    },
    "attr:DrawItem.lineCap":{
        ref:"attr:DrawItem.lineCap",
        flags:"IRW",
        description:"Style of drawing the endpoints of a line.\n <P>\n Note that for dashed and dotted lines, the lineCap style affects each dash or dot.",
        name:"lineCap",
        setter:[
            "setLineCap"
        ],
        seeAlso:[
        ],
        valueType:"LineCap",
        defaultValue:"\"round\"",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "line"
        ]
    },
    "attr:FacetChart.probabilityMetric":{
        ref:"attr:FacetChart.probabilityMetric",
        flags:"IR",
        description:"The \"id\" of the metric facet value that assigns a probability to each combination\n of facets and their values.  Each probability must be a non-negative number.\n These probabilities are used by all methods of FacetChart that calculate statistical\n values (e.g. ${isc.DocUtils.linkForRef('method:FacetChart.getMean')} and ${isc.DocUtils.linkForRef('method:FacetChart.getStdDev')}).  The default value of\n this property is null which causes the FacetChart to assign probabilities to the\n data records according to a uniform probability distribution.\n <p>\n Note that the FacetChart handles cases where the sum total of all probabilities\n in the ${isc.DocUtils.linkForRef('attr:FacetChart.data')} is not exactly one by scaling the assigned probabilities.",
        name:"probabilityMetric",
        seeAlso:[
            {
                ref:"method:FacetChart.getMean",
                description:null
            },
            {
                ref:"method:FacetChart.getMedian",
                description:null
            },
            {
                ref:"method:FacetChart.getStdDev",
                description:null
            },
            {
                ref:"method:FacetChart.getVariance",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:MetricSettings.matchGradations":{
        ref:"attr:MetricSettings.matchGradations",
        flags:"IR",
        description:"When this property is set to the metric of another MetricSettings object, the extra\n value axis and chart corresponding to these settings will use the same scale for the\n gradations as the extra value axis and chart of the other MetricSettings object.  The\n value of <code>matchGradations</code> can only be one of the metrics of the metric\n facet whose values will be displayed by the chart.",
        name:"matchGradations",
        seeAlso:[
            {
                ref:"attr:FacetChart.extraAxisMetrics",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:ValuesManager.cancel":{
        ref:"method:ValuesManager.cancel",
        flags:"",
        description:"\n This method exists for clean integration with existing server frameworks that have a 'cancel'\n feature which typically clears session state associated with the form.  When this method is\n called, an RPC is sent to the server with a parameter named\n ${isc.DocUtils.linkForRef('attr:DynamicForm.cancelParamName')} with the value\n ${isc.DocUtils.linkForRef('attr:DynamicForm.cancelParamValue')}.<p>\n\n Note that no other form data is sent.  By default the current top-level page is replaced with the\n reply.  If you wish to ignore the server reply instead, call this method like this:\n <pre>\n dynamicFormInstance.cancel({ignoreTimeout: true, target: null});\n </pre>\n",
        name:"cancel",
        seeAlso:[
            {
                ref:"method:DynamicForm.cancelEditing",
                description:null
            }
        ],
        params:[
            {
                description:"additional properties to set on the RPCRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "submitting"
        ]
    },
    "method:Label.setIconOrientation":{
        ref:"method:Label.setIconOrientation",
        flags:"",
        description:" Changes the orientation of the icon relative to the text of the button.\n\n",
        name:"setIconOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"The new orientation of the icon relative to the text of the button.",
                optional:false,
                name:"orientation",
                defaultValue:null,
                type:"\"left\" or \"right\""
            }
        ],
        type:"method",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "method:CubeGrid.getEditedRecord":{
        ref:"method:CubeGrid.getEditedRecord",
        flags:"",
        description:" Returns the combination of unsaved edits (if any) and original values (if any) for a given\n cell being edited.\n <P>\n The returned value is never null, and can be freely modified.\n\n",
        name:"getEditedRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum of the record being edited, or an Object                                      containing values for all the record's primary keys",
                optional:false,
                name:"valuesID",
                defaultValue:null,
                type:"number | Object"
            },
            {
                description:"colNum of the record being edited. Only required if the records                          rowNum is passed in as the first parameter",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"A copy of the record with unsaved edits included",
            type:"Object"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "method:ListGridField.getFieldTitle":{
        ref:"method:ListGridField.getFieldTitle",
        flags:"",
        description:" If your derivation of the field title is more complex than specifying a static string,\n you can specify a getFieldTitle() method on your field to return the title string.\n Otherwise you can use the ${isc.DocUtils.linkForRef('attr:ListGridField.title')} attribute on the field to specify the title.\n <P>\n You can use ${isc.DocUtils.linkForRef('method:ListGrid.setFieldProperties','setFieldProperties()')} to dynamically\n update the title.\n\n",
        name:"getFieldTitle",
        seeAlso:[
            {
                ref:"attr:ListGridField.title",
                description:null
            }
        ],
        params:[
            {
                description:"pointer back to the ListGrid",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"ListGrid"
            },
            {
                description:"index of this field in the grid's fields array.",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Field title.",
            type:"string"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:Splitbar.canCollapseOnTap":{
        ref:"attr:Splitbar.canCollapseOnTap",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Splitbar.canCollapse','canCollapse')} is <code>true</code>, should a tap result in\n collapsing/uncollapsing the ${isc.DocUtils.linkForRef('attr:Splitbar.target','target')}? By default this is <code>false</code>\n because it can be difficult to tap a thin <code>Splitbar</code>.\n <p>\n If this property is set to <code>true</code>, it is recommended to increase the width/height\n of the <code>Splitbar</code> on touch devices (see, e.g., ${isc.DocUtils.linkForRef('attr:Layout.resizeBarSize')}).",
        name:"canCollapseOnTap",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Splitbar"
    },
    "classMethod:EventHandler.getNativeMouseTarget":{
        ref:"classMethod:EventHandler.getNativeMouseTarget",
        flags:"A",
        description:" Returns the natively reported target (or source) DOM element for the current mouse event.\n <b>NOTE:</b> SmartClient cannot guarantee that the same element will\n be reported in all browser/platform configurations for all event types.\n If you wish to make use of this value, we recommend testing your use case \n in all target browser configurations.\n\n",
        name:"getNativeMouseTarget",
        seeAlso:[
        ],
        returns:{
            description:"native DOM element over which the mouse event occurred",
            type:"HTML Element"
        },
        type:"classMethod",
        definingClass:"class:EventHandler"
    },
    "method:Tree.addList":{
        ref:"method:Tree.addList",
        flags:"",
        description:"\n Add a list of nodes to some parent.\n\n",
        name:"addList",
        seeAlso:[
            {
                ref:"group:sharingNodes",
                description:null
            }
        ],
        params:[
            {
                description:"The list of nodes to add",
                optional:false,
                name:"nodeList",
                defaultValue:null,
                type:"List of TreeNode"
            },
            {
                description:"Parent of the nodes being added.  You can pass                                          in either the ${isc.DocUtils.linkForRef('object:TreeNode')} itself, or a path to\n\t                                        the node (as a String), in which case a\n\t                                        ${isc.DocUtils.linkForRef('method:Tree.find')} is performed to find\n\t                                        the node.",
                optional:false,
                name:"parent",
                defaultValue:null,
                type:"String or TreeNode"
            },
            {
                description:"Position of the new nodes in the children list. If not\t                                specified, the nodes will be added at the end of the list.",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"List of added nodes.",
            type:"List"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:CubeGrid.sortedFacetValues":{
        ref:"attr:CubeGrid.sortedFacetValues",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('object:FacetValueMap')} of facet values representing a set of facetValues by which the\n cubeGrid data is sorted.",
        name:"sortedFacetValues",
        seeAlso:[
        ],
        valueType:"FacetValueMap",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "method:DynamicForm.setValuesAsCriteria":{
        ref:"method:DynamicForm.setValuesAsCriteria",
        flags:"",
        description:" This method will display the specified criteria in this form for editing. The criteria\n parameter may be a simple ${isc.DocUtils.linkForRef('object:Criterion')} object or an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object.\n <P>\n For simple criteria, the specified fieldName will be used to apply criteria to form items,\n as with a standard setValues() call.\n <P>\n For AdvancedCriteria, behavior is as follows:\n <ul>\n <li>If the top level operator doesn't match the ${isc.DocUtils.linkForRef('attr:DynamicForm.operator','operator')} for\n  this form, the entire criteria will be nested in an outer advanced criteria object with\n  the appropriate operator.</li>\n <li>Each criterion within AdvancedCriteria will be applied to a form item if\n  ${isc.DocUtils.linkForRef('attr:FormItem.shouldSaveValue')} is true for the item and \n  ${isc.DocUtils.linkForRef('method:FormItem.canEditCriterion')} returns true for the criterion in question. By default\n  this method checks for a match with both the <code>fieldName</code> and <code>operator</code>\n  of the criterion. The criterion is actually passed to the item for editing via\n  <smartclient>${isc.DocUtils.linkForRef('method:FormItem.setCriterion')}</smartclient>\n  <smartgwt>the <code>FormItemCriterionSetter</code>'s <code>setCriterion()</code> method</smartgwt>.\n  Note that these methods may be overridden for custom\n  handling. Also note that the default <smartclient>${isc.DocUtils.linkForRef('method:CanvasItem.setCriterion')} implementation</smartclient>\n  <smartgwt><code>FormItemCriterionSetter.setCriterion()</code> implementation\n  used by ${isc.DocUtils.linkForRef('class:CanvasItem')}</smartgwt> handles editing nested criteria via embedded dynamicForms.</li>\n <li>Criteria which don't map to any form item will be stored directly on the form and\n  recombined with the edited values from each item when ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} is\n  called.</li>\n </ul>\n",
        name:"setValuesAsCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria to edit.",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:DrawPane.removeGradient":{
        ref:"method:DrawPane.removeGradient",
        flags:"",
        description:" Removes gradient for gradientID.\n\n",
        name:"removeGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of gradient to remove",
                optional:false,
                name:"gradientID",
                defaultValue:null,
                type:"identifier"
            }
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "method:TimeItem.getEnteredValue":{
        ref:"method:TimeItem.getEnteredValue",
        flags:"",
        description:" Returns the raw text value typed into this items text field if ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} \n is true (otherwise returns the result of this.getValue()).\n",
        name:"getEnteredValue",
        seeAlso:[
        ],
        returns:{
            description:"value the user entered",
            type:"String"
        },
        type:"method",
        definingClass:"class:TimeItem"
    },
    "classMethod:EventHandler.rightButtonDown":{
        ref:"classMethod:EventHandler.rightButtonDown",
        flags:"",
        description:"\t\t\tReturns true if the right mouse button is being pressed.\n\n",
        name:"rightButtonDown",
        seeAlso:[
            {
                ref:"classMethod:EventHandler.leftButtonDown",
                description:null
            },
            {
                ref:"classMethod:EventHandler.middleButtonDown",
                description:null
            }
        ],
        returns:{
            description:"true == right button is down, false == up",
            type:"Boolean"
        },
        type:"classMethod",
        platformNotes:"Mac:\t\tMacintosh platform generally has only one mouse button, and the\n\t\tcontrol key being held down serves the same purpose of the \n\t\tright mouse button on Windows.  This is taken into account automatically.<br>\n      Opera: \n      The Opera browser does not pass right mouse button events to JavaScript code by default\n      (the user must explicitly enable this behavior via a menu item). Therefore we \n      treat <b>Shift+Ctrl+Click</b> as a context click in Opera.",
        definingClass:"class:EventHandler",
        groups:[
            "mouseEvents"
        ]
    },
    "type:MultiAutoChild":{
        ref:"type:MultiAutoChild",
        description:null,
        name:"MultiAutoChild",
        seeAlso:[
            {
                ref:"group:multiAutoChildren",
                description:null
            }
        ],
        type:"type"
    },
    "method:ListGrid.setRowErrors":{
        ref:"method:ListGrid.setRowErrors",
        flags:"",
        description:" Set the validation errors for some row (replacing any pre-existent validation errors)\n",
        name:"setRowErrors",
        seeAlso:[
            {
                ref:"method:ListGrid.getRowErrors",
                description:null
            },
            {
                ref:"method:ListGrid.setFieldError",
                description:null
            }
        ],
        params:[
            {
                description:"row to add validation error for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"validation errors for the row in the format                          <code>{fieldName:errorMessage, ...}</code> <br>or <br>\n                          <code>{fieldName:[errorMessage1, errorMessage2], ...}</code>",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "attr:ListGrid.valueIconLeftPadding":{
        ref:"attr:ListGrid.valueIconLeftPadding",
        flags:"IRW",
        description:"How much padding should there be on the left of valueIcons by default\n Can be overridden at the field level",
        name:"valueIconLeftPadding",
        seeAlso:[
            {
                ref:"attr:ListGridField.valueIcons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:Toolbar.buttons":{
        ref:"attr:Toolbar.buttons",
        flags:"IRW",
        description:"An array of button object initializers. See the Button Widget Class for standard\n button properties. The following additional properties can also be specified for\n button sizing and positioning on the toolbar itself:<br><br>\n <ul><li>width--Specifies the width of this button as an absolute number of pixels, a\n named property of the toolbar that specifies an absolute number of pixels, a\n percentage of the remaining space (e.g. '60%'), or \"*\" (default) to allocate an\n equal portion of the remaining space.\n <li>height--Specifies the height of this button.\n <li>extraSpace--Specifies an optional amount of extra space, in pixels, to separate\n this button from the next button in the toolbar.</ul>",
        name:"buttons",
        setter:[
            "setButtons"
        ],
        seeAlso:[
            {
                ref:"method:Toolbar.addButtons",
                description:null
            },
            {
                ref:"method:Toolbar.removeButtons",
                description:null
            },
            {
                ref:"class:Button",
                description:null
            }
        ],
        valueType:"array",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Toolbar"
    },
    "attr:DSRequest.useFlatHeaderFields":{
        ref:"attr:DSRequest.useFlatHeaderFields",
        flags:"IRW",
        description:"Cause the ${isc.DocUtils.linkForRef('attr:DSRequest.useFlatFields','useFlatFields')} XML serialization behavior to be used\n for <b>all</b> soap headers in the request.  See also ${isc.DocUtils.linkForRef('attr:DSRequest.headerData')}.",
        name:"useFlatHeaderFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "flatFields"
        ]
    },
    "attr:FilterBuilder.operatorPickerProperties":{
        ref:"attr:FilterBuilder.operatorPickerProperties",
        flags:"IR",
        description:"Properties to combine with the ${isc.DocUtils.linkForRef('attr:FilterBuilder.operatorPicker')} autoChild FormItem.",
        name:"operatorPickerProperties",
        seeAlso:[
        ],
        valueType:"FormItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "method:Calendar.setChosenDate":{
        ref:"method:Calendar.setChosenDate",
        flags:"",
        description:" Set the current date for which the calendar will display events.\n\n",
        name:"setChosenDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the new date to set as the current date",
                optional:false,
                name:"newDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:Calendar.getWorkdayStart":{
        ref:"method:Calendar.getWorkdayStart",
        flags:"",
        description:" Returns the start of the working day on the passed date.  By default, this method returns\n the value of ${isc.DocUtils.linkForRef('attr:Calendar.workdayStart','workdayStart')}.\n",
        name:"getWorkdayStart",
        seeAlso:[
        ],
        params:[
            {
                description:"a Date instance",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"(String) the name of the relevant lane - only passed for dayView with                             showDayLanes: true",
                optional:false,
                name:"",
                defaultValue:null,
                type:"laneName"
            }
        ],
        returns:{
            description:"any parsable time-string",
            type:"String"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:Canvas.className":{
        deprecated:"In favor or ${isc.DocUtils.linkForRef('attr:Canvas.styleName')} as of SmartClient release 5.5",
        flags:"IRW",
        type:"attr",
        ref:"attr:Canvas.className",
        description:"The CSS class applied to this widget as a whole.",
        name:"className",
        setter:[
            "setClassName"
        ],
        valueType:"CSSStyleName",
        seeAlso:[
        ],
        defaultValue:"\"normal\"",
        groups:[
            "appearance"
        ],
        definingClass:"class:Canvas"
    },
    "attr:DataSource.resultSetClass":{
        ref:"attr:DataSource.resultSetClass",
        flags:"IRA",
        description:"Class for ResultSets used by this datasource.  If null, defaults to using\n ${isc.DocUtils.linkForRef('class:ResultSet')}.\n <P>\n This can be set to a custom subclass of ResultSet that, for example, hangs onto to extra\n information necessary for integration with web services.",
        name:"resultSetClass",
        seeAlso:[
        ],
        valueType:"Class Object",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:FileItem.shouldSaveValue":{
        ref:"attr:FileItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "formValues"
        ]
    },
    "type:NavigationMode":{
        ref:"type:NavigationMode",
        values:[
            {
                description:"Clicking anywhere on the record navigates",
                value:"TableView.WHOLE_RECORD"
            },
            {
                description:"Only clicking directly on the navigation icon                                triggers navigation",
                value:"TableView.NAVICON_ONLY"
            }
        ],
        description:"Controls the navigation mode of records.",
        name:"NavigationMode",
        seeAlso:[
        ],
        type:"type"
    },
    "classAttr:GroupingMessages.upcomingNextMonthTitle":{
        ref:"classAttr:GroupingMessages.upcomingNextMonthTitle",
        flags:"IRW",
        description:"When a ${isc.DocUtils.linkForRef('class:ListGrid')} is grouped by a date field in 'Upcoming' mode, \n this is the group title for all records in which the grouped date field occurs next month,\n relative to the current date.",
        name:"upcomingNextMonthTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Next Month\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DSRequest.streamResults":{
        ref:"attr:DSRequest.streamResults",
        flags:"IR",
        description:"If true, results will be streamed on the server, rather than all records being read into \n server memory at once; this approach is appropriate for retrieving or exporting large\n datasets without swamping the server.  \n <p>\n Although this property can be set without any particular concerns (small datasets can be \n streamed just as readily as large ones), bear in mind that although streaming enables the\n processing of very large datasets, processing and downloading very large datasets in a \n normal client/server flow will very rarely give an acceptable user experience.  Streaming\n is of more practical use in a batch setting - for example, a disconnected \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportToFilesystem','export')}.\n <p>\n Note that streaming requires specific server support; of SmartClient's built-in DataSource\n types, only <code>SQLDataSource</code> is able to stream results.  This property is ignored\n by other DataSource types.\n <p>\n See also the server-side documentation for <code>DSResponse</code>, \n <code>SQLDataSource</code> and <code>StreamingResponseIterator</code>.",
        name:"streamResults",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:ValuesManager.editSelectedData":{
        ref:"method:ValuesManager.editSelectedData",
        flags:"",
        description:"\n Edit the record selected in the specified selection component (typically a\n ${isc.DocUtils.linkForRef('class:ListGrid')}).\n <P>\n Updates the values of this editor to match the selected record's values.\n <P>\n If this form has a dataSource, then saving via ${isc.DocUtils.linkForRef('method:ValuesManager.saveData')} will use the \n \"update\" operation type.\n\n",
        name:"editSelectedData",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            }
        ],
        params:[
            {
                description:"the ListGrid or ID of a ${isc.DocUtils.linkForRef('class:ListGrid')} whose currently selected\n     record(s) is/are to be edited",
                optional:false,
                name:"selectionComponent",
                defaultValue:null,
                type:"ListGrid or ID"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('updateOperation')}"
        ],
        definingClass:"class:ValuesManager",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:Canvas.containsFocus":{
        ref:"method:Canvas.containsFocus",
        flags:"",
        description:" Returns true if the keyboard focus is in this Canvas or any child of this Canvas.\n",
        name:"containsFocus",
        seeAlso:[
        ],
        returns:{
            description:"whether this Canvas contains the keyboard focus",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:TextItem.width":{
        ref:"attr:TextItem.width",
        flags:"IRW",
        description:"Default width for fields.",
        name:"width",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "appearance"
        ]
    },
    "method:Calendar.eventRemoved":{
        ref:"method:Calendar.eventRemoved",
        flags:"",
        description:" Notification fired whenever a user removes an event\n <P>\n In a calendar with a DataSource, eventRemoved() fires <b>after</b> the event has\n been successfully removed from the server\n\n",
        name:"eventRemoved",
        seeAlso:[
        ],
        params:[
            {
                description:"the event that was removed",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "method:MultiGroupDialog.validate":{
        ref:"method:MultiGroupDialog.validate",
        flags:"",
        description:" Validate that no two ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s group on the same \n ${isc.DocUtils.linkForRef('attr:GroupSpecifier.property','property')}.\n\n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"True if validation succeeds, false if any property is used twice",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:MultiGroupDialog"
    },
    "classMethod:EventHandler.getY":{
        ref:"classMethod:EventHandler.getY",
        flags:"",
        description:"\t\t\tReturn the page-relative Y (vertical) coordinate of an event.\n\n",
        name:"getY",
        seeAlso:[
        ],
        returns:{
            description:"y-coordinate in page coordinate space",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "mouseEvents"
        ]
    },
    "attr:ListGridField.groupGranularity":{
        ref:"attr:ListGridField.groupGranularity",
        flags:"IR",
        description:"Granularity of grouping for numeric fields.\n <P>\n Groups will be formed based on ranges of values of size <code>groupGranularity</code>.  For\n example, if groupGranularity were 1000, groups would be 0-1000, 1000-2000, etc.",
        name:"groupGranularity",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "grouping"
        ]
    },
    "attr:PresetCriteriaItem.valueMap":{
        ref:"attr:PresetCriteriaItem.valueMap",
        flags:"IR",
        description:"This attribute is not applicable to the PresetCriteriaItem.  See \n ${isc.DocUtils.linkForRef('attr:PresetCriteriaItem.options')} instead.",
        name:"valueMap",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PresetCriteriaItem"
    },
    "method:MenuItem.click":{
        ref:"method:MenuItem.click",
        flags:"",
        description:" Executed when this menu item is clicked by the user. The click handler must be specified\n as a function or string of script.  Return false to suppress the ${isc.DocUtils.linkForRef('method:Menu.itemClick')}\n handler if specified.\n\n",
        name:"click",
        seeAlso:[
        ],
        params:[
            {
                description:"for a menu shown as a context menu, the Canvas the menu was shown                        on.  Otherwise the ${isc.DocUtils.linkForRef('class:Menu')} instance of which this\n                        ${isc.DocUtils.linkForRef('object:MenuItem')} is a member.",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"The ${isc.DocUtils.linkForRef('object:MenuItem')} that was clicked on.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem"
            },
            {
                description:"The ${isc.DocUtils.linkForRef('class:Menu')} instance of which this ${isc.DocUtils.linkForRef('object:MenuItem')} is a                          member.",
                optional:false,
                name:"menu",
                defaultValue:null,
                type:"Menu"
            },
            {
                description:"Index of the column the user clicked. May be null if the                          user activated the menu via a keyboard event.",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"object:MenuItem",
        groups:[
            "menuItemEvents"
        ]
    },
    "classMethod:Time.setNormalDisplayFormat":{
        ref:"classMethod:Time.setNormalDisplayFormat",
        flags:"",
        description:" Sets the default format for strings returned by ${isc.DocUtils.linkForRef('classMethod:Time.toTime')}.\n",
        name:"setNormalDisplayFormat",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional custom formatter to use. Will accept  a function (which will be passed a pointer to the date to perform the conversion), or\n  a string designating a standard formatter",
                optional:false,
                name:"formatter",
                defaultValue:null,
                type:"TimeDisplayFormat | function"
            }
        ],
        type:"classMethod",
        definingClass:"class:Time"
    },
    "attr:TimeItem.mask":{
        ref:"attr:TimeItem.mask",
        flags:"IRWA",
        description:"Internal-use only for a TimeItem.",
        name:"mask",
        setter:[
            "setMask"
        ],
        seeAlso:[
            {
                ref:"attr:TimeItem.useMask",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "class:PortalLayout":{
        methods:[
            "method:PortalLayout.setColumnOverflow",
            "method:PortalLayout.setCanStretchColumnWidths",
            "method:PortalLayout.setCanShrinkColumnWidths",
            "method:PortalLayout.setStretchColumnWidthsProportionally",
            "method:PortalLayout.setPreventUnderflow",
            "method:PortalLayout.setColumnPreventUnderflow",
            "method:PortalLayout.setPreventRowUnderflow",
            "method:PortalLayout.getNumColumns",
            "method:PortalLayout.setShowColumnMenus",
            "method:PortalLayout.setColumnBorder",
            "method:PortalLayout.setCanResizeColumns",
            "method:PortalLayout.setCanResizeRows",
            "method:PortalLayout.setCanResizePortlets",
            "method:PortalLayout.setPortletDropTypes",
            "method:PortalLayout.willAcceptPortletDrop",
            "method:PortalLayout.getDropPortlet",
            "method:PortalLayout.addColumn",
            "method:PortalLayout.removeColumn",
            "method:PortalLayout.getPortlets",
            "method:PortalLayout.getPortletArray",
            "method:PortalLayout.getPortalPosition",
            "method:PortalLayout.addPortlet",
            "method:PortalLayout.setColumnWidth",
            "method:PortalLayout.getColumnWidth",
            "method:PortalLayout.removePortlet",
            "method:PortalLayout.willMaximizePortlet",
            "method:PortalLayout.portletMaximized",
            "method:PortalLayout.willMinimizePortlet",
            "method:PortalLayout.portletMinimized",
            "method:PortalLayout.willRestorePortlet",
            "method:PortalLayout.portletRestored",
            "method:PortalLayout.willClosePortlet",
            "method:PortalLayout.portletsChanged",
            "method:PortalLayout.portletsResized"
        ],
        ref:"class:PortalLayout",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:PortalLayout.overflow",
            "attr:PortalLayout.columnOverflow",
            "attr:PortalLayout.canStretchColumnWidths",
            "attr:PortalLayout.canShrinkColumnWidths",
            "attr:PortalLayout.stretchColumnWidthsProportionally",
            "attr:PortalLayout.preventUnderflow",
            "attr:PortalLayout.preventColumnUnderflow",
            "attr:PortalLayout.preventRowUnderflow",
            "attr:PortalLayout.portlets",
            "attr:PortalLayout.numColumns",
            "attr:PortalLayout.showColumnMenus",
            "attr:PortalLayout.columnBorder",
            "attr:PortalLayout.canResizeColumns",
            "attr:PortalLayout.canResizeRows",
            "attr:PortalLayout.canResizePortlets",
            "attr:PortalLayout.portletDropTypes",
            "attr:PortalLayout.dropTypes",
            "attr:PortalLayout.row",
            "attr:PortalLayout.rowLayout",
            "attr:PortalLayout.column"
        ],
        description:"A PortalLayout is a special subclass of Layout designed to display ${isc.DocUtils.linkForRef('class:Portlet')} windows.\n A PortalLayout displays Portlets in columns and supports drag-drop interaction for moving \n Portlets around within the PortalLayout. Portlets may be drag-reordered within columns, dragged\n into other columns, or dragged next to other Portlets to sit next to them horizontally\n within a column.",
        name:"PortalLayout",
        seeAlso:[
        ],
        type:"class"
    },
    "method:StatefulCanvas.setIconOrientation":{
        ref:"method:StatefulCanvas.setIconOrientation",
        flags:"",
        description:" Changes the orientation of the icon relative to the text of the button.\n\n",
        name:"setIconOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"The new orientation of the icon relative to the text of the button.",
                optional:false,
                name:"orientation",
                defaultValue:null,
                type:"\"left\" or \"right\""
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:CubeGrid.getFacet":{
        ref:"method:CubeGrid.getFacet",
        flags:"",
        description:" Get a facet definition by facetId.  Constant time.\n\n",
        name:"getFacet",
        seeAlso:[
            {
                ref:"class:Facet",
                description:null
            }
        ],
        params:[
            {
                description:"the id of the facet to retrieve",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the Facet if found, or null",
            type:"Facet"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:TileGrid.dataSource":{
        ref:"attr:TileGrid.dataSource",
        flags:"IRW",
        description:"The DataSource that this component should bind to for default fields and for performing\n ${isc.DocUtils.linkForRef('class:DSRequest','DataSource requests')}.\n <P>\n Can be specified as either a DataSource instance or the String ID of a DataSource.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataSourceFields')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "databinding"
        ]
    },
    "method:DateItem.setEndDate":{
        ref:"method:DateItem.setEndDate",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:DateItem.endDate')}.\n",
        name:"setEndDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the new endDate.",
                optional:false,
                name:"endDate",
                defaultValue:null,
                type:"LogicalDate | String"
            }
        ],
        type:"method",
        definingClass:"class:DateItem"
    },
    "method:List.find":{
        ref:"method:List.find",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:List.findIndex')}, but returns the object itself instead of its index.\n\n",
        name:"find",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"first matching object or null if not found",
            type:"Object"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access",
            "find"
        ]
    },
    "attr:ListGrid.dragTrackerMode":{
        ref:"attr:ListGrid.dragTrackerMode",
        flags:"IRA",
        description:"When records are being dragged from within a ListGrid, what sort of drag-tracker\n should be displayed?<br>\n Note that if multiple records are being dragged the displayed tracker will be\n based on the first selected record.",
        name:"dragTrackerMode",
        seeAlso:[
        ],
        valueType:"DragTrackerMode",
        defaultValue:"\"icon\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "dragTracker"
        ]
    },
    "method:StretchImgButton.setBaseStyle":{
        ref:"method:StretchImgButton.setBaseStyle",
        flags:"",
        description:" Sets the base CSS style.  As the component changes state and/or is selected, suffixes will be\n added to the base style.\n",
        name:"setBaseStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"new base style",
                optional:false,
                name:"style",
                defaultValue:null,
                type:"className"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "method:ColumnTree.setData":{
        ref:"method:ColumnTree.setData",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('class:Tree')} object this ColumnTree will view\n\n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"Tree to show",
                optional:false,
                name:"newData",
                defaultValue:null,
                type:"Tree"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "attr:ComboBoxItem.valueField":{
        ref:"attr:ComboBoxItem.valueField",
        flags:"IRW",
        getter:[
            "getValueFieldName"
        ],
        description:"If this form item maps data values to display values by retrieving the \n ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} values from an \n ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}, this property \n denotes the the field to use as the underlying data value in records from the \n optionDataSource.<br>\n If unset, assumed to be the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this form item.",
        name:"valueField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "display_values"
        ]
    },
    "attr:DateChooser.startYear":{
        ref:"attr:DateChooser.startYear",
        flags:"IR",
        description:"Earliest year that may be selected.",
        name:"startYear",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1995",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:FormulaBuilder.warnDuplicateTitlesMessage":{
        ref:"attr:FormulaBuilder.warnDuplicateTitlesMessage",
        flags:"IRWA",
        description:"The message to display when warnDuplicateTitles is true \n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed.",
        name:"warnDuplicateTitlesMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Another field already has the title '${fieldTitle}'.  Continue anyway?\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:isc.clone":{
        ref:"classMethod:isc.clone",
        flags:"",
        description:" Create a deep clone of an object that can be edited without affecting the original\n <P>\n All mutable types, including Objects, Arrays and Dates, are copied.  All immutable types\n (Number, String, etc) are just preserved by reference.\n <P>\n Only JavaScript built-in types may be cloned.  SmartClient UI widgets do not support\n cloning, instead, use ${isc.DocUtils.linkForRef('classMethod:Class.create')} to make a new component with similar\n configuration.\n <P>\n Does not handle looping references (will infinite loop).\n\n",
        name:"clone",
        seeAlso:[
        ],
        params:[
            {
                description:"object to clone",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"cloned object",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "serialization"
        ]
    },
    "attr:DateItem.daySelectorProperties":{
        ref:"attr:DateItem.daySelectorProperties",
        flags:"IRA",
        description:"Custom properties to apply to this dateItem's generated ${isc.DocUtils.linkForRef('attr:DateItem.daySelector')}.",
        name:"daySelectorProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "classMethod:Class.getDefaultLogPriority":{
        ref:"classMethod:Class.getDefaultLogPriority",
        flags:"",
        description:" Retrieves the default priority of messages for this class or instance.\n",
        name:"getDefaultLogPriority",
        seeAlso:[
        ],
        returns:{
            description:"default priority for logging messages on this object.",
            type:"LogPriority"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:Canvas.customEdges":{
        ref:"attr:Canvas.customEdges",
        flags:"IR",
        description:"Array of side names (\"T\", \"B\", \"L\", \"R\") specifying which sides of the decorated\n component should show edges.  For example: <pre>\n      customEdges : [\"T\", \"B\"]\n </pre>\n .. would show edges only on the top and bottom of a component.\n <P>\n The default of <code>null</code> means edges will be shown on all sides.",
        name:"customEdges",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:FilterBuilder.allowEmpty":{
        ref:"attr:FilterBuilder.allowEmpty",
        flags:"IR",
        description:"If set to false, the last clause cannot be removed.",
        name:"allowEmpty",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:IconButton.align":{
        ref:"attr:IconButton.align",
        flags:"IRW",
        description:"Horizontal alignment of this button's content.  If unset, \n ${isc.DocUtils.linkForRef('attr:IconButton.orientation','vertical buttons')} are center-aligned and horizontal\n buttons left-aligned by default.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton",
        groups:[
            "appearance"
        ]
    },
    "class:DataSource":{
        methods:[
            "method:DataSource.setCacheAllData",
            "method:DataSource.setCacheData",
            "method:DataSource.setTestData",
            "method:DataSource.invalidateCache",
            "method:DataSource.setClientOnly",
            "method:DataSource.hasAllData",
            "method:DataSource.convertRelativeDates",
            "method:DataSource.updateCaches",
            "method:DataSource.getLegalChildTags",
            "method:DataSource.copyRecord",
            "method:DataSource.copyRecords",
            "method:DataSource.transformRequest",
            "method:DataSource.getUpdatedData",
            "method:DataSource.getDataProtocol",
            "method:DataSource.processResponse",
            "method:DataSource.getXMLRequestBody",
            "method:DataSource.xmlSerialize",
            "method:DataSource.recordsFromXML",
            "method:DataSource.transformResponse",
            "method:DataSource.fetchRecord",
            "method:DataSource.fetchData",
            "method:DataSource.filterData",
            "method:DataSource.exportClientData",
            "method:DataSource.exportData",
            "method:DataSource.getClientOnlyDataSource",
            "method:DataSource.addData",
            "method:DataSource.updateData",
            "method:DataSource.removeData",
            "method:DataSource.validateData",
            "method:DataSource.performCustomOperation",
            "method:DataSource.downloadFile",
            "method:DataSource.viewFile",
            "method:DataSource.getFileURL",
            "method:DataSource.getFetchDataURL",
            "method:DataSource.useOfflineResponse",
            "method:DataSource.handleError",
            "method:DataSource.getField",
            "method:DataSource.getFieldForDataPath",
            "method:DataSource.getDisplayValue",
            "method:DataSource.getFieldNames",
            "method:DataSource.getPrimaryKeyFields",
            "method:DataSource.getPrimaryKeyFieldNames",
            "method:DataSource.getPrimaryKeyField",
            "method:DataSource.getPrimaryKeyFieldName",
            "method:DataSource.getAutoTitle",
            "method:DataSource.getCacheData",
            "method:DataSource.getClientOnlyResponse",
            "method:DataSource.applyFilter",
            "method:DataSource.fieldMatchesFilter",
            "method:DataSource.supportsTextMatchStyle",
            "method:DataSource.compareCriteria",
            "method:DataSource.getFieldCriterion",
            "method:DataSource.compareDates",
            "method:DataSource.recordsAreEqual",
            "method:DataSource.convertDataSourceCriteria",
            "method:DataSource.supportsAdvancedCriteria",
            "method:DataSource.addSearchOperator",
            "method:DataSource.getSearchOperator",
            "method:DataSource.getTypeOperators",
            "method:DataSource.setTypeOperators",
            "method:DataSource.getFieldOperators",
            "method:DataSource.getFieldOperatorMap",
            "method:DataSource.getTypeOperatorMap",
            "method:DataSource.recordsAsText",
            "method:DataSource.recordsFromText",
            "method:DataSource.evaluateCriterion",
            "method:DataSource.splitCriteria"
        ],
        ref:"class:DataSource",
        classAttrs:[
            "classAttr:DataSource.loaderURL",
            "classAttr:DataSource.serializeTimeAsDatetime",
            "classAttr:DataSource.offlineMessage",
            "classAttr:DataSource.maxFileSizeExceededMessage"
        ],
        classMethods:[
            "classMethod:DataSource.getDataSource",
            "classMethod:DataSource.get",
            "classMethod:DataSource.getFieldValue",
            "classMethod:DataSource.load",
            "classMethod:DataSource.loadWithParents",
            "classMethod:DataSource.getSortBy",
            "classMethod:DataSource.getSortSpecifiers",
            "classMethod:DataSource.copyCriteria",
            "classMethod:DataSource.isFlatCriteria",
            "classMethod:DataSource.flattenCriteria",
            "classMethod:DataSource.canFlattenCriteria",
            "classMethod:DataSource.getAdvancedCriteriaDescription",
            "classMethod:DataSource.getLoaderURL",
            "classMethod:DataSource.setLoaderURL",
            "classMethod:DataSource.addSearchOperator",
            "classMethod:DataSource.setTypeOperators",
            "classMethod:DataSource.getAutoTitle",
            "classMethod:DataSource.convertCriteria",
            "classMethod:DataSource.combineCriteria",
            "classMethod:DataSource.applyRecordSummaryFunction",
            "classMethod:DataSource.registerRecordSummaryFunction",
            "classMethod:DataSource.exportClientData",
            "classMethod:DataSource.getSimpleErrors"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:DataSource.ID",
            "attr:DataSource.addGlobalId",
            "attr:DataSource.dataFormat",
            "attr:DataSource.useStrictJSON",
            "attr:DataSource.dataProtocol",
            "attr:DataSource.useHttpProxy",
            "attr:DataSource.callbackParam",
            "attr:DataSource.requestProperties",
            "attr:DataSource.dataTransport",
            "attr:DataSource.preventHTTPCaching",
            "attr:DataSource.serverType",
            "attr:DataSource.tableName",
            "attr:DataSource.schema",
            "attr:DataSource.quoteTableName",
            "attr:DataSource.dbName",
            "attr:DataSource.configBean",
            "attr:DataSource.quoteColumnNames",
            "attr:DataSource.jsonPrefix",
            "attr:DataSource.jsonSuffix",
            "attr:DataSource.fields",
            "attr:DataSource.inheritsFrom",
            "attr:DataSource.inheritanceMode",
            "attr:DataSource.sequenceMode",
            "attr:DataSource.useFlatFields",
            "attr:DataSource.showLocalFieldsOnly",
            "attr:DataSource.useParentFieldOrder",
            "attr:DataSource.dropExtraFields",
            "attr:DataSource.sendExtraFields",
            "attr:DataSource.autoDeriveSchema",
            "attr:DataSource.schemaBean",
            "attr:DataSource.idClassName",
            "attr:DataSource.patternSingleWildcard",
            "attr:DataSource.patternMultiWildcard",
            "attr:DataSource.patternEscapeChar",
            "attr:DataSource.translatePatternOperators",
            "attr:DataSource.xmlNamespaces",
            "attr:DataSource.serviceNamespace",
            "attr:DataSource.schemaNamespace",
            "attr:DataSource.recordXPath",
            "attr:DataSource.dataURL",
            "attr:DataSource.tagName",
            "attr:DataSource.useOfflineStorage",
            "attr:DataSource.clientOnly",
            "attr:DataSource.criteriaPolicy",
            "attr:DataSource.defaultTextMatchStyle",
            "attr:DataSource.ignoreTextMatchStyleCaseSensitive",
            "attr:DataSource.resultTreeClass",
            "attr:DataSource.resultSetClass",
            "attr:DataSource.useLocalValidators",
            "attr:DataSource.requiredMessage",
            "attr:DataSource.showPrompt",
            "attr:DataSource.enumTranslateStrategy",
            "attr:DataSource.enumConstantProperty",
            "attr:DataSource.enumOrdinalProperty",
            "attr:DataSource.autoDeriveTitles",
            "attr:DataSource.canMultiSort",
            "attr:DataSource.sparseUpdates",
            "attr:DataSource.noNullUpdates",
            "attr:DataSource.omitNullDefaultsOnAdd",
            "attr:DataSource.nullStringValue",
            "attr:DataSource.nullIntegerValue",
            "attr:DataSource.nullFloatValue",
            "attr:DataSource.nullBooleanValue",
            "attr:DataSource.nullDateValue",
            "attr:DataSource.requiresAuthentication",
            "attr:DataSource.requiresRole",
            "attr:DataSource.requires",
            "attr:DataSource.creatorOverrides",
            "attr:DataSource.sqlPaging",
            "attr:DataSource.sqlUsePagingHint",
            "attr:DataSource.useSubselectForRowCount",
            "attr:DataSource.tableCode",
            "attr:DataSource.progressiveLoading",
            "attr:DataSource.progressiveLoadingThreshold",
            "attr:DataSource.lookAhead",
            "attr:DataSource.endGap",
            "attr:DataSource.cacheAllData",
            "attr:DataSource.cacheAllOperationId",
            "attr:DataSource.cacheAcrossOperationIds",
            "attr:DataSource.cacheMaxAge",
            "attr:DataSource.cacheData",
            "attr:DataSource.testData",
            "attr:DataSource.sendParentNode",
            "attr:DataSource.autoCacheAllData",
            "attr:DataSource.useTestDataFetch",
            "attr:DataSource.autoConvertRelativeDates",
            "attr:DataSource.useAnsiJoins",
            "attr:DataSource.trimMilliseconds",
            "attr:DataSource.transformMultipleFields",
            "attr:DataSource.audit",
            "attr:DataSource.auditDataSourceID",
            "attr:DataSource.auditUserFieldName",
            "attr:DataSource.auditTimeStampFieldName",
            "attr:DataSource.auditRevisionFieldName",
            "attr:DataSource.auditTypeFieldName",
            "attr:DataSource.auditDSConstructor",
            "attr:DataSource.autoCreateAuditTable",
            "attr:DataSource.title",
            "attr:DataSource.pluralTitle",
            "attr:DataSource.titleField",
            "attr:DataSource.iconField",
            "attr:DataSource.infoField",
            "attr:DataSource.dataField",
            "attr:DataSource.descriptionField",
            "attr:DataSource.childrenField",
            "attr:DataSource.serverConstructor",
            "attr:DataSource.qualifyColumnNames",
            "attr:DataSource.validateRelatedRecords",
            "attr:DataSource.beanClassName",
            "attr:DataSource.globalNamespaces",
            "attr:DataSource.resultBatchSize",
            "attr:DataSource.serverObject",
            "attr:DataSource.operationBindings",
            "attr:DataSource.allowClientRequestedSummaries",
            "attr:DataSource.dropUnknownCriteria",
            "attr:DataSource.strictSQLFiltering",
            "attr:DataSource.allowAdvancedCriteria"
        ],
        description:"A DataSource is data-provider-independent description of a set of objects\n that will be loaded, edited and saved within the user interface of your application.\n <P>\n Each DataSource consists of a list of ${isc.DocUtils.linkForRef('attr:DataSource.fields','fields')} that make up a\n DataSource <code>record</code>, along with ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field types')}, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.validators','validation rules')}, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','relationships')} to other DataSources, and other\n metadata.\n <P>\n The abstract object description provided by a DataSource is easily mapped to a variety of\n backend object models and storage schemes.  The following table shows analogous terminology\n across systems.\n <table border=1 class=\"normal\">\n <tr>\n   <td>Isomorphic SmartClient</td>\n   <td>Relational Database</td>\n   <td>Enterprise Java Beans (EJB)</td>\n   <td>Entity/Relationship Modeling</td>\n   <td>OO/UML</td>\n   <td>XML Schema/WSDL</td>\n   <td>LDAP</td>\n </tr><tr>\n   <td>DataSource</td>\n   <td>Table</td>\n   <td>EJB class</td>\n   <td>Entity</td>\n   <td>Class</td>\n   <td>Element Schema (ComplexType)</td>\n   <td>Objectclass</td>\n </tr><tr>\n   <td>Record</td>\n   <td>Row</td>\n   <td>EJB instance</td>\n   <td>Entity instance</td>\n   <td>Class instance/Object</td>\n   <td>Element instance (ComplexType)</td>\n   <td>Entry</td>\n </tr><tr>\n   <td>Field</td>\n   <td>Column</td>\n   <td>Property</td>\n   <td>Attribute</td>\n   <td>Property/Attribute</td>\n   <td>Attribute or Element (SimpleType)</td>\n   <td>Attribute</td>\n </tr></table>\n <P>\n DataSources can be ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','declared')} in either JavaScript or XML\n format, and can also be ${isc.DocUtils.linkForRef('group:metadataImport','imported')} from existing metadata formats,\n including XML Schema.\n <P>\n <i>Data Binding</i> is the process by which\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','Data Binding-capable UI components')} can automatically configure\n themselves for viewing, editing and saving data described by DataSources.  DataBinding is\n covered in the ${isc.DocUtils.linkForDocNode('QuickStartGuide', 'QuickStart Guide')}, Chapter 6, <i>Data\n Binding</i>.\n <P>\n ${isc.DocUtils.linkForRef('group:clientServerIntegration','Data Integration')} is the process by which a DataSource\n can be connected to server systems such as SQL DataBases, Java Object models, WSDL web\n services and other data providers.  Data Integration comes in two variants: client-side and\n server-side.  ${isc.DocUtils.linkForRef('group:serverDataIntegration','Server-side integration')} uses the\n SmartClient Java-based server to connect to data represented by Java Objects or\n JDBC-accessible databases.  ${isc.DocUtils.linkForRef('group:clientDataIntegration','Client-side integration')}\n connects SmartClient DataSources to XML, JSON or other formats accessible via HTTP.\n <P>\n DataSources have a concept of ${isc.DocUtils.linkForRef('group:dataSourceOperations','4 core operations')} (\"fetch\",\n \"add\", \"update\" and \"remove\") that can be performed on the set of objects represented by a\n DataSource.  Once a DataSource has been integrated with your data store, databinding-capable \n UI components can leverage the 4 core DataSource operations to provide many complete user\n interactions without the need to configure how each individual component loads and saves\n data.\n <P>\n These interactions include ${isc.DocUtils.linkForRef('class:ListGrid','grid views')}, ${isc.DocUtils.linkForRef('class:TreeGrid','tree views')}, \n ${isc.DocUtils.linkForRef('class:DetailViewer','detail views')}, ${isc.DocUtils.linkForRef('class:DynamicForm','form')}-based \n ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord','editing')} and ${isc.DocUtils.linkForRef('method:DynamicForm.saveData','saving')},\n grid-based ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','editing')} and ${isc.DocUtils.linkForRef('attr:ListGrid.saveByCell','saving')},\n and custom interactions provided by ${isc.DocUtils.linkForExampleId('patternReuse')} custom\n databinding-capable components.",
        name:"DataSource",
        seeAlso:[
            {
                ref:"interface:DataBoundComponent",
                description:"for information on DataBound Components"
            },
            {
                ref:"group:dataSourceDeclaration",
                description:"for how to create DataSources"
            }
        ],
        type:"class",
        serverDS:"allowed"
    },
    "attr:SummaryBuilder.helpIcon":{
        ref:"attr:SummaryBuilder.helpIcon",
        flags:"IRA",
        description:"Icon that appears after the ${isc.DocUtils.linkForRef('attr:SummaryBuilder.formulaField')}, showing help on hover.",
        name:"helpIcon",
        seeAlso:[
        ],
        valueType:"AutoChild FormItemIcon",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "class:Operators":{
        methods:[
        ],
        ref:"class:Operators",
        classAttrs:[
            "classAttr:Operators.equalsTitle",
            "classAttr:Operators.notEqualTitle",
            "classAttr:Operators.iEqualsTitle",
            "classAttr:Operators.iNotEqualTitle",
            "classAttr:Operators.greaterThanTitle",
            "classAttr:Operators.lessThanTitle",
            "classAttr:Operators.greaterOrEqualTitle",
            "classAttr:Operators.lessOrEqualTitle",
            "classAttr:Operators.betweenTitle",
            "classAttr:Operators.iBetweenTitle",
            "classAttr:Operators.betweenInclusiveTitle",
            "classAttr:Operators.iBetweenInclusiveTitle",
            "classAttr:Operators.iContainsTitle",
            "classAttr:Operators.iStartsWithTitle",
            "classAttr:Operators.iEndsWithTitle",
            "classAttr:Operators.containsTitle",
            "classAttr:Operators.startsWithTitle",
            "classAttr:Operators.endsWithTitle",
            "classAttr:Operators.iNotContainsTitle",
            "classAttr:Operators.iNotStartsWithTitle",
            "classAttr:Operators.iNotEndsWithTitle",
            "classAttr:Operators.notContainsTitle",
            "classAttr:Operators.notStartsWithTitle",
            "classAttr:Operators.notEndsWithTitle",
            "classAttr:Operators.isNullTitle",
            "classAttr:Operators.notNullTitle",
            "classAttr:Operators.regexpTitle",
            "classAttr:Operators.iregexpTitle",
            "classAttr:Operators.matchesPatternTitle",
            "classAttr:Operators.iMatchesPatternTitle",
            "classAttr:Operators.containsPatternTitle",
            "classAttr:Operators.iContainsPatternTitle",
            "classAttr:Operators.inSetTitle",
            "classAttr:Operators.notInSetTitle",
            "classAttr:Operators.equalsFieldTitle",
            "classAttr:Operators.notEqualFieldTitle",
            "classAttr:Operators.iEqualsFieldTitle",
            "classAttr:Operators.iNotEqualFieldTitle",
            "classAttr:Operators.greaterThanFieldTitle",
            "classAttr:Operators.lessThanFieldTitle",
            "classAttr:Operators.greaterOrEqualFieldTitle",
            "classAttr:Operators.lessOrEqualFieldTitle",
            "classAttr:Operators.containsFieldTitle",
            "classAttr:Operators.startsWithFieldTitle",
            "classAttr:Operators.endsWithFieldTitle",
            "classAttr:Operators.iContainsFieldTitle",
            "classAttr:Operators.iStartsWithFieldTitle",
            "classAttr:Operators.iEndsWithFieldTitle",
            "classAttr:Operators.notContainsFieldTitle",
            "classAttr:Operators.notStartsWithFieldTitle",
            "classAttr:Operators.notEndsWithFieldTitle",
            "classAttr:Operators.iNotContainsFieldTitle",
            "classAttr:Operators.iNotStartsWithFieldTitle",
            "classAttr:Operators.iNotEndsWithFieldTitle",
            "classAttr:Operators.andTitle",
            "classAttr:Operators.notTitle",
            "classAttr:Operators.orTitle"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
        ],
        description:"The Operators class provides a collection of class-level properties that can be used to\n modify the descriptions associated with the logical ${isc.DocUtils.linkForRef('object:Operator')}s used in \n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}. This is primarily intended for internationalization.\n <p>\n To add or override an operator's description, use\n Operators.${isc.DocUtils.linkForRef('classMethod:Class.addClassProperties','addClassProperties()')}.  For example:\n <p>\n <code>Operators.addClassProperties({lessOrEqualTitle: \"Less than or equal to\"});</code>",
        name:"Operators",
        seeAlso:[
        ],
        type:"class"
    },
    "class:MultiSortPanel":{
        methods:[
            "method:MultiSortPanel.getNumLevels",
            "method:MultiSortPanel.getSortLevel",
            "method:MultiSortPanel.getSort",
            "method:MultiSortPanel.validate",
            "method:MultiSortPanel.sortChanged"
        ],
        ref:"class:MultiSortPanel",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:MultiSortPanel.fields",
            "attr:MultiSortPanel.addLevelButtonTitle",
            "attr:MultiSortPanel.deleteLevelButtonTitle",
            "attr:MultiSortPanel.copyLevelButtonTitle",
            "attr:MultiSortPanel.invalidListPrompt",
            "attr:MultiSortPanel.propertyFieldTitle",
            "attr:MultiSortPanel.directionFieldTitle",
            "attr:MultiSortPanel.ascendingTitle",
            "attr:MultiSortPanel.descendingTitle",
            "attr:MultiSortPanel.firstSortLevelTitle",
            "attr:MultiSortPanel.otherSortLevelTitle",
            "attr:MultiSortPanel.addLevelButton",
            "attr:MultiSortPanel.deleteLevelButton",
            "attr:MultiSortPanel.copyLevelButton",
            "attr:MultiSortPanel.levelUpButtonTitle",
            "attr:MultiSortPanel.levelUpButton",
            "attr:MultiSortPanel.levelDownButtonTitle",
            "attr:MultiSortPanel.levelDownButton",
            "attr:MultiSortPanel.optionsGrid",
            "attr:MultiSortPanel.initialSort",
            "attr:MultiSortPanel.maxLevels"
        ],
        description:"A widget that allows the user to set up complex sorting arrangements by defining a group of\n ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n <P>\n Each ${isc.DocUtils.linkForRef('object:SortSpecifier')} applies to a single property and direction - so, for instance, in \n a grid with two columns, <code>year</code> and <code>monthNumber</code>, you could sort first \n by <code>year</code> in descending order and then by <code>monthNumber</code> in ascending \n order.  This would producing a grid sorted by year from largest (most \n recent) to smallest (least recent) and, within each year, by monthNumber from smallest \n (January) to largest (December).",
        name:"MultiSortPanel",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Slider.maxValueLabel":{
        ref:"attr:Slider.maxValueLabel",
        flags:"IRW",
        description:"The text displayed in the label for the maximum value of the slider. If left as null, then\n slider.maxValue will be displayed.",
        name:"maxValueLabel",
        setter:[
            "setMaxValueLabel"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.showRange",
                description:null
            },
            {
                ref:"attr:Slider.maxValue",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:DrawLinePath.endTop":{
        ref:"attr:DrawLinePath.endTop",
        flags:"IR",
        description:"Ending top coordinate of the line.  Overrides top coordinate of ${isc.DocUtils.linkForRef('attr:DrawLinePath.endPoint')} if\n both are set.",
        name:"endTop",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0 , IRW",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "attr:RestDataSource.dataProtocol":{
        ref:"attr:RestDataSource.dataProtocol",
        flags:"IR",
        description:"Rather than setting ${isc.DocUtils.linkForRef('attr:DataSource.dataProtocol')}, to control the format in which \n inputs are sent to the dataURL, you must specify a replacement ${isc.DocUtils.linkForRef('class:OperationBinding')} \n and specify ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')} on that <code>operationBinding</code>.\n <P>\n This is because <code>RestDataSource</code> specifies default\n <code>operationBindings</code> for all operationTypes - see\n ${isc.DocUtils.linkForRef('attr:RestDataSource.operationBindings')}.",
        name:"dataProtocol",
        seeAlso:[
        ],
        valueType:"DSProtocol",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:RestDataSource",
        groups:[
            "clientDataIntegration",
            "serverDataIntegration"
        ]
    },
    "attr:ComboBoxItem.pickerIconHeight":{
        ref:"attr:ComboBoxItem.pickerIconHeight",
        flags:"IRWA",
        description:"Don't specify an explicit height for the picker icon - instead have it size to match the\n height of the combo box item.",
        name:"pickerIconHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:MultiSortDialog.copyLevelButton":{
        ref:"attr:MultiSortDialog.copyLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for duplicating levels\n in the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.copyLevelButtonProperties</code> and \n <code>multiSortPanel.copyLevelButtonDefaults</code>.",
        name:"copyLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "method:ListGrid.setHeaderSpanHeaderTitle":{
        ref:"method:ListGrid.setHeaderSpanHeaderTitle",
        flags:"",
        description:" Update the headerTitle of a ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpan')} dynamically.\n\n",
        name:"setHeaderSpanHeaderTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the headerSpan, as specified via ${isc.DocUtils.linkForRef('attr:HeaderSpan.name')}.",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new headerTitle for the headerSpan",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "classMethod:Log.getCallTrace":{
        ref:"classMethod:Log.getCallTrace",
        flags:"",
        description:" Returns a one-line summary of the current method call, showing method name and passed\n arguments. \n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.getCallTrace()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"getCallTrace",
        seeAlso:[
        ],
        params:[
            {
                description:"arguments object from the call to trace.  On IE, defaults to the                             calling function's arguments",
                optional:true,
                name:"args",
                defaultValue:null,
                type:"Arguments"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "attr:Calendar.sizeEventsToGrid":{
        ref:"attr:Calendar.sizeEventsToGrid",
        flags:"IR",
        description:"If true, events will be sized to the grid, even if they start and/or end at times\n between grid cells.",
        name:"sizeEventsToGrid",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:Gauge.pivotPoint":{
        ref:"attr:Gauge.pivotPoint",
        flags:"R",
        description:"The pivot point of the needle.",
        name:"pivotPoint",
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:Process.elements":{
        ref:"attr:Process.elements",
        flags:"IR",
        description:"Elements involved in this Process.  You can also group elements into ${isc.DocUtils.linkForRef('attr:Process.sequences')}\n to reduce the need to explicitly define IDs for elements and interlink them.",
        name:"elements",
        seeAlso:[
        ],
        valueType:"Array of ProcessElement",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Process"
    },
    "method:Canvas.setTop":{
        ref:"method:Canvas.setTop",
        flags:"",
        description:" Set the top coordinate of this object, relative to its enclosing context, in pixels.\n <P>\n NOTE: if you're setting multiple coordinates, use setRect() or moveTo() instead\n\n",
        name:"setTop",
        seeAlso:[
        ],
        params:[
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "method:ListGrid.setSort":{
        ref:"method:ListGrid.setSort",
        flags:"A",
        description:" Sort the grid on one or more fields.\n <P>\n Pass in an array of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s to have the grid's data sorted by the fields in\n each ${isc.DocUtils.linkForRef('attr:SortSpecifier.property','specifier.property')} and in the directions specified.  The\n grid can be sorted by any combination of fields, including fields specified in the fields\n array, whether visible or hidden, and ${isc.DocUtils.linkForRef('attr:DataSource.fields','unused fields from the\\n underlying dataSource')}, if there is one.\n <P>\n If multiple fields are sorted, those that are visible show a directional icon and a small\n ${isc.DocUtils.linkForRef('attr:ListGrid.sortNumeralStyle','sort-numeral')}\n indicating that field's index in the sort configuration.\n <P>\n See ${isc.DocUtils.linkForRef('method:ListGrid.addSort','addSort()')} and ${isc.DocUtils.linkForRef('method:ListGrid.toggleSort','toggleSort()')} APIs\n for information on making changes to the current sort configuration.\n\n",
        name:"setSort",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of ${isc.DocUtils.linkForRef('object:SortSpecifier')} objects",
                optional:false,
                name:"sortSpecifiers",
                defaultValue:null,
                type:"Array of SortSpecifier"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:FormItem.stopOnError":{
        ref:"attr:FormItem.stopOnError",
        flags:"IR",
        description:"Indicates that if validation fails, the user should not be allowed to exit\n the field - focus will be forced back into the field until the error is corrected.\n <p>\n This property defaults to ${isc.DocUtils.linkForRef('attr:DynamicForm.stopOnError')} if unset.\n <p>\n Enabling this property also implies ${isc.DocUtils.linkForRef('attr:FormItem.validateOnExit')} is automatically\n enabled. If there are server-based validators on this item, setting this property\n also implies that ${isc.DocUtils.linkForRef('attr:FormItem.synchronousValidation')} is forced on.",
        name:"stopOnError",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:DateRangeItem.hasAdvancedCriteria":{
        ref:"method:DateRangeItem.hasAdvancedCriteria",
        flags:"",
        description:" Overridden to return true: dateRangeItems always generate AdvancedCriteria.\n",
        name:"hasAdvancedCriteria",
        seeAlso:[
        ],
        returns:{
            description:"true",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:DataBoundComponent.disableHilite":{
        ref:"method:DataBoundComponent.disableHilite",
        flags:"",
        description:" Disable a hilite\n\n",
        name:"disableHilite",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of hilite to disable",
                optional:false,
                name:"hiliteID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:Layout.vertical":{
        ref:"attr:Layout.vertical",
        flags:"IRW",
        description:"Should this layout appear with members stacked vertically or horizontally. Defaults to \n <code>false</code> if unspecified.",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "classMethod:Offline.goOffline":{
        ref:"classMethod:Offline.goOffline",
        flags:"",
        description:" Explicitly sets this session into offline mode.  This setting will override whatever \n state the browser reports.  This allows users to manually set an application into \n offline or online state.\n \n",
        name:"goOffline",
        seeAlso:[
            {
                ref:"classMethod:Offline.goOnline",
                description:null
            },
            {
                ref:"classMethod:Offline.useNativeOfflineDetection",
                description:null
            }
        ],
        type:"classMethod",
        definingClass:"class:Offline"
    },
    "attr:FormulaBuilder.editMode":{
        ref:"attr:FormulaBuilder.editMode",
        flags:"IR",
        description:"Are we editing an existing field?",
        name:"editMode",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:StretchImgButton.setDisabled":{
        ref:"method:StretchImgButton.setDisabled",
        flags:"",
        description:" Enable or disable this object\n",
        name:"setDisabled",
        seeAlso:[
        ],
        params:[
            {
                description:"true if this widget is to be disabled",
                optional:false,
                name:"disabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "enable",
            "state"
        ]
    },
    "attr:ResultTree.autoPreserveOpenState":{
        ref:"attr:ResultTree.autoPreserveOpenState",
        flags:"IRW",
        description:"Controls what happens to the ${isc.DocUtils.linkForRef('method:ResultTree.getOpenState','\"open state\"')} - the set of \n nodes opened or closed by the end user after tree data is loaded - when an entirely\n new tree of nodes is loaded from the server, as a consequence of calling \n ${isc.DocUtils.linkForRef('method:ResultTree.invalidateCache')} or of changing criteria such that the current cache of\n nodes is dropped.",
        name:"autoPreserveOpenState",
        seeAlso:[
        ],
        valueType:"PreserveOpenState",
        defaultValue:"\"whenUnique\"",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "method:DataBoundComponent.transferSelectedData":{
        ref:"method:DataBoundComponent.transferSelectedData",
        flags:"",
        description:" Simulates a drag / drop type transfer of the selected records in some other component to this\n component, without requiring any user interaction.  This method acts on the dropped records \n exactly as if they had been dropped in an actual drag / drop interaction, including any \n special databound behavior invoked by calling\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.getDropValues','getDropValues')} for each dropped record.\n <P>\n To transfer <b>all</b> data in, for example, a ${isc.DocUtils.linkForRef('class:ListGrid')}, call grid.selection.selectAll() first.\n <P>\n Note that drag/drop type transfers of records between components are asynchronous operations:\n SmartClient may need to perform server turnarounds to establish whether dropped records \n already exist in the target component.  Therefore, it is possible to issue a call to \n transferSelectedData() and/or the ${isc.DocUtils.linkForRef('method:ListGrid.drop','drop()')} method of a databound \n component whilst a transfer is still active.  When this happens, SmartClient adds the \n second and subsequent transfer requests to a queue and runs them one after the other.  If \n you want to be notified when a transfer process has actually completed, either provide a \n callback to this method or implement ${isc.DocUtils.linkForRef('method:DataBoundComponent.dropComplete')}.\n <P>\n See the ${isc.DocUtils.linkForRef('group:dragging')} documentation for an overview of list grid drag/drop data\n transfer.\n \n",
        name:"transferSelectedData",
        seeAlso:[
        ],
        params:[
            {
                description:"source component from which the records will be transferred",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"DataBoundComponent"
            },
            {
                description:"target index (drop position) of the rows within this grid.",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"optional callback to be fired when the transfer process has                        completed.  The callback will be passed a single parameter \"records\",\n                       the list of records actually transferred to this component.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListMove')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragdrop"
        ]
    },
    "method:ResultSet.findAll":{
        ref:"method:ResultSet.findAll",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:List.findAll')}.  Checks only loaded rows and will not trigger a fetch.\n",
        name:"findAll",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"all matching Objects or null if none found",
            type:"Array"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access",
            "find"
        ]
    },
    "method:Canvas.drop":{
        ref:"method:Canvas.drop",
        flags:"A",
        description:"\n Executed when the mouse button is released over a compatible drop target at the end of\n a drag sequence. Your widget should implement whatever it wants to do when receiving a\n drop here. For example, in a file moving interface, a drop might mean that you should\n move or copy the dragged file into the folder it was dropped on, or dropping something in\n a trash can might mean to clear it from the screen.\n\n",
        name:"drop",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            },
            {
                ref:"classMethod:EventHandler.getDragTarget",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragCreate')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "classMethod:SchemaSet.get":{
        ref:"classMethod:SchemaSet.get",
        flags:"A",
        description:" Retrieve a SchemaSet object by it's schemaNamespace.\n\n",
        name:"get",
        seeAlso:[
        ],
        params:[
            {
                description:"uri from the \"targetNamespace\" attribute of the &lt;xsd:schema&gt; element from the XML Schema or WSDL file this SchemaSet was derived\n from.",
                optional:false,
                name:"schemaNamespace",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the requested SchemaSet, or null if not loaded",
            type:"SchemaSet"
        },
        type:"classMethod",
        definingClass:"class:SchemaSet"
    },
    "classMethod:Log.setDefaultLogPriority":{
        ref:"classMethod:Log.setDefaultLogPriority",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.setDefaultLogPriority')} is to call the\n method directly on the Log class.\n",
        name:"setDefaultLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category for which the log priority will be updated. If not                          all logs on this canvas will be logged at the priority passed in.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"string"
            },
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:StretchImg.hSrc":{
        ref:"attr:StretchImg.hSrc",
        flags:"IRW",
        description:"Base URL for the image if ${isc.DocUtils.linkForRef('attr:StretchImg.vertical')} is false and \n ${isc.DocUtils.linkForRef('attr:StretchImg.src')} is unset.",
        name:"hSrc",
        seeAlso:[
            {
                ref:"attr:StretchImg.src",
                description:null
            },
            {
                ref:"attr:StretchImg.vSrc",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "method:DrawLine.setStartPoint":{
        ref:"method:DrawLine.setStartPoint",
        flags:"",
        description:" Update the startPoint\n\n",
        name:"setStartPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for start point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for start point, in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLine"
    },
    "method:GridRenderer.cellOver":{
        ref:"method:GridRenderer.cellOver",
        flags:"A",
        description:" Called when the mouse pointer enters a cell\n\n",
        name:"cellOver",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:Flashlet.params":{
        ref:"attr:Flashlet.params",
        flags:"IR",
        description:"A map of key/value pairs to pass to the flashlet as parameters.  Note that these will be set\n  on the outer &lt;object&gt; element as well as the inner &lt;embed&gt; element.",
        name:"params",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Flashlet"
    },
    "attr:DateItem.monthSelectorProperties":{
        ref:"attr:DateItem.monthSelectorProperties",
        flags:"IRA",
        description:"Custom properties to apply to this dateItem's generated ${isc.DocUtils.linkForRef('attr:DateItem.monthSelector')}.",
        name:"monthSelectorProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "attr:IconButton.showMenuOnClick":{
        ref:"attr:IconButton.showMenuOnClick",
        flags:"IRW",
        description:"If set to true, shows this button's ${isc.DocUtils.linkForRef('iconButton.menu','menu')} when a user clicks anywhere \n in the button, rather than specifically on the ${isc.DocUtils.linkForRef('iconButton.menuIcon','menuIcon')}.",
        name:"showMenuOnClick",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "method:CubeGrid.clearEditValue":{
        ref:"method:CubeGrid.clearEditValue",
        flags:"A",
        description:"\n  Clear a field value being tracked as an unsaved user edit for some cell.<P>\n  The saved record value will be displayed in the the appropriate cell instead.\n\n",
        name:"clearEditValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Row number, primary keys object for the record,                                              or editValues object",
                optional:false,
                name:"editValuesID",
                defaultValue:null,
                type:"number | object"
            },
            {
                description:"Column number for the cell in question. Only required if the                              first parameter is a row number.",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "attr:Calendar.showDayHeaders":{
        ref:"attr:Calendar.showDayHeaders",
        flags:"IR",
        description:"If true, the default, show a header cell for each day cell in the \n ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month view')}, with both cells having a minimum combined height of \n ${isc.DocUtils.linkForRef('attr:Calendar.minimumDayHeight')}.  If false, the header cells will not be shown, and the value \n of ${isc.DocUtils.linkForRef('attr:Calendar.minimumDayHeight')} is ignored.  This causes the available vertical space in month\n views to be shared equally between day cells, such that no vertical scrollbar is required\n unless the HTML in the cells renders them taller than will fit.",
        name:"showDayHeaders",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "visibility"
        ]
    },
    "attr:Menu.submenuDisabledImage":{
        ref:"attr:Menu.submenuDisabledImage",
        flags:"IR",
        description:"Default image to use for the submenu indicator when item is disabled. Valid src, width and\n height must be specified. See ${isc.DocUtils.linkForRef('object:ImgProperties')} for format.<br>\n If ${isc.DocUtils.linkForRef('attr:Menu.submenuDirection')} is set to <code>\"left\"</code>, the image src will have\n the suffix <code>\"_left\"</code> appended to it.",
        name:"submenuDisabledImage",
        seeAlso:[
        ],
        valueType:"Img Properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:AdvancedHiliteEditor.cancelEditing":{
        ref:"method:AdvancedHiliteEditor.cancelEditing",
        flags:"",
        description:" Discard changes and fire the ${isc.DocUtils.linkForRef('attr:AdvancedHiliteEditor.callback','callback')} with a null \n parameter.\n\n",
        name:"cancelEditing",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "attr:DrawItem.canDrag":{
        ref:"attr:DrawItem.canDrag",
        flags:"IRWA",
        description:"Is this DrawItem draggable? If true, then the DrawItem can be drag-repositioned by the user.",
        name:"canDrag",
        setter:[
            "setCanDrag"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:MultiGroupPanel.groupingFieldTitle":{
        ref:"attr:MultiGroupPanel.groupingFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"grouping\" field.",
        name:"groupingFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Grouping\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.setViewState":{
        ref:"method:ListGrid.setViewState",
        flags:"",
        description:" Reset this grid's view state to match the ${isc.DocUtils.linkForRef('type:ListGridViewState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.getViewState')}.\n\n",
        name:"setViewState",
        seeAlso:[
            {
                ref:"method:ListGrid.getViewState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired view state for the grid",
                optional:false,
                name:"viewState",
                defaultValue:null,
                type:"ListGridViewState"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:ListGridField.hoverWrap":{
        ref:"attr:ListGridField.hoverWrap",
        flags:"IRW",
        description:"This property may be set to customize the <code>wrap</code> attribute for the\n canvas shown when the mouse hovers over cells in this field. Note that this causes a \n soft-wrap - if set, the hover text will wrap at word boundaries.\n <P>\n If unset, default behavior is derived from ${isc.DocUtils.linkForRef('attr:ListGrid.headerHoverWrap')}.",
        name:"hoverWrap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ListGridField.valueIconOrientation":{
        ref:"attr:ListGridField.valueIconOrientation",
        flags:"IRW",
        description:"If we're showing a valueIcon for this field should it appear to the left or the right\n of the text?  By default the icon will appear to the left of the textual value -\n set this to \"right\" to show the icon on the right of the text.\n Has no effect if ${isc.DocUtils.linkForRef('attr:ListGridField.showValueIconOnly')} is true",
        name:"valueIconOrientation",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:SplitPane.backButton":{
        ref:"attr:SplitPane.backButton",
        flags:"IR",
        description:"The back button shown in the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')} depending on\n the current UI configuration. The back button's ${isc.DocUtils.linkForRef('attr:Button.title','title')} is determined\n by the <code>SplitPane</code>.",
        name:"backButton",
        seeAlso:[
        ],
        valueType:"AutoChild NavigationButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:ListGrid.viewStateChanged":{
        ref:"method:ListGrid.viewStateChanged",
        flags:"",
        description:" Notification method executed whenever the viewState of this grid changes.\n View state is accessible via ${isc.DocUtils.linkForRef('method:ListGrid.getViewState')}, and contains field state\n information, sort information, selection information, hiliting information and\n grouping information.\n\n",
        name:"viewStateChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:SelectItem.addUnknownValues":{
        ref:"attr:SelectItem.addUnknownValues",
        flags:"IRWA",
        description:"If this item's value is set (via ${isc.DocUtils.linkForRef('method:SelectItem.setValue')} or similar) to a value which\n is not present in the ${isc.DocUtils.linkForRef('type:ValueMap')}, should the value be rejected.\n <P>\n If set to <code>false</code> the setValue() call will have no effect if the value\n is not a valid option.\n <P>\n If set to <code>true</code> the item's value will be update to the new value, and\n the value will be added to the set of options displayed in the pick-list until the\n next call to ${isc.DocUtils.linkForRef('method:SelectItem.setValueMap')} or ${isc.DocUtils.linkForRef('method:SelectItem.setValue')}.\n <P>\n Exception: If the value is set to <code>null</code> but there is no null entry in the\n valueMap for this item, setting <code>addUnknownValues</code> to true will not cause\n a null option to show up at the top of the select item pickList. Whether an empty\n option is shown in the pickList is governed by ${isc.DocUtils.linkForRef('attr:SelectItem.allowEmptyValue')}\n instead.\n <P>\n Note that this property has no effect if the selectItem has a specified\n ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource')}. If ${isc.DocUtils.linkForRef('method:SelectItem.setValue')} is called on a databound SelectItem\n and the new value does not match any loaded options, the value will be accepted,\n but not added to the options displayed in the pickList. Also note that if a\n ${isc.DocUtils.linkForRef('attr:SelectItem.displayField')} exists, a fetch will be performed in an attempt to retrieve\n a valid display value, as described under ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues')}.  \n If specified the ${isc.DocUtils.linkForRef('attr:FormItem.loadingDisplayValue')} will be displayed while the \n fetch is in progress, and then the real value (mapped to a display field value if\n a matching record was found) will be displayed when the fetch completes.",
        name:"addUnknownValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formDependentSelectsLocal')}"
        ],
        definingClass:"class:SelectItem"
    },
    "attr:OperationBinding.summaryFunctions":{
        ref:"attr:OperationBinding.summaryFunctions",
        flags:"IR",
        description:"A mapping from field names to ${isc.DocUtils.linkForRef('type:SummaryFunction','summary functions')} to be applied\n to each field.\n <p>\n Valid only for an operation of type \"fetch\".  See the \n ${isc.DocUtils.linkForRef('group:serverSummaries','Server Summaries overview')} for examples of usage.",
        name:"summaryFunctions",
        seeAlso:[
            {
                ref:"attr:OperationBinding.groupBy",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "serverSummaries"
        ]
    },
    "attr:DataBoundComponent.addSummaryFieldText":{
        ref:"attr:DataBoundComponent.addSummaryFieldText",
        flags:"IRW",
        description:"Text for a menu item allowing users to add a formula field",
        name:"addSummaryFieldText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add summary column...\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "class:Splitbar":{
        methods:[
        ],
        ref:"class:Splitbar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:Splitbar.target",
            "attr:Splitbar.vertical",
            "attr:Splitbar.src",
            "attr:Splitbar.hSrc",
            "attr:Splitbar.vSrc",
            "attr:Splitbar.capSize",
            "attr:Splitbar.skinImgDir",
            "attr:Splitbar.showGrip",
            "attr:Splitbar.gripImgSuffix",
            "attr:Splitbar.showDownGrip",
            "attr:Splitbar.showRollOverGrip",
            "attr:Splitbar.showClosedGrip",
            "attr:Splitbar.targetAfter",
            "attr:Splitbar.invertClosedGripIfTargetAfter",
            "attr:Splitbar.canDrag",
            "attr:Splitbar.canCollapse",
            "attr:Splitbar.canCollapseOnTap",
            "attr:Splitbar.cursor",
            "attr:Splitbar.vResizeCursor",
            "attr:Splitbar.hResizeCursor"
        ],
        description:"Resize bar for use in ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass','Layouts')}, based on the\n ${isc.DocUtils.linkForRef('class:StretchImg')} class.  As with the ${isc.DocUtils.linkForRef('class:ImgSplitbar')} class, \n widgets of this class can be displayed as a resize-bar for widgets \n in Layouts where showResizeBar is set to true. Provides a different appearance from\n the <code>ImgSplitbar</code> class.\n <p>\n To specify the resizeBar class for some layout, use the ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass')}\n property.",
        name:"Splitbar",
        seeAlso:[
            {
                ref:"class:Layout",
                description:null
            },
            {
                ref:"class:ImgSplitbar",
                description:null
            }
        ],
        type:"class"
    },
    "attr:DrawCurve.startPoint":{
        ref:"attr:DrawCurve.startPoint",
        flags:"IRW",
        description:"Start point of the curve",
        name:"startPoint",
        setter:[
            "setStartPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[0,0]",
        type:"attr",
        definingClass:"class:DrawCurve"
    },
    "type:SequenceMode":{
        ref:"type:SequenceMode",
        values:[
            {
                description:"Use the JDBC 3.0 API \"getGeneratedKeys()\" to get the most recent                      sequence value.  Obviously, this is only an option for JDBC 3.0+ drivers",
                value:"\"jdbcDriver\""
            },
            {
                description:"Use a database-specific native technique to obtain the most recent                     sequence value.  The actual technique used varies widely depending on\n                     the vagaries of the underlying database (and sometimes the vagaries of\n                     particular releases of a database product)",
                value:"\"native\""
            },
            {
                description:"No automatic attempt is made to retrieve the most recent sequence value.                     You are expected to handle this by providing a  \n                     ${isc.DocUtils.linkForRef('attr:OperationBinding.cacheSyncOperation','cacheSyncOperation')} that is \n                     able to return the entire row without needing generated PK values for\n                     context. For example, a query that uses <code>MAX(pk)</code> would be\n                     capable of this.  To give a more complex example, say you have a \n                     sequence value that is retrieved from a legacy system: you could store \n                     that sequence value in the HTTP session and then have your custom \n                     <code>cacheSyncOperation</code> reference that session attribute in \n                     its <code>WHERE</code> clause.  Also note that cacheSyncOperations, \n                     like any other ${isc.DocUtils.linkForRef('class:OperationBinding','DataSource operation')}, \n                     can be ${isc.DocUtils.linkForRef('attr:OperationBinding.serverObject','written in Java')} or any \n                     ${isc.DocUtils.linkForRef('attr:OperationBinding.script','JSR223-compliant scripting language')} -\n                     you do not have to use SQL",
                value:"\"none\""
            }
        ],
        description:"The possible types of sequence handling SmartClient Server can apply.  This refers to the\n technique used to obtain the primary keys of the most recent insert, which the product \n uses to enable automatic cache synchronization (updating client-side components bound to a \n dataSource to reflect updates to that dataSource).  Only applicable to\n ${isc.DocUtils.linkForRef('class:DataSourceField','fields')} of ${isc.DocUtils.linkForRef('type:FieldType','type')} \"sequence\".\n <P>",
        name:"SequenceMode",
        seeAlso:[
        ],
        type:"type",
        serverDS:"only"
    },
    "attr:LinearGradient.y2":{
        ref:"attr:LinearGradient.y2",
        flags:"IR",
        description:"Y coordinate of the end point. This can be a number or a percentage of the height of the\n bounding box of the DrawItem to which it is applied.",
        name:"y2",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:LinearGradient"
    },
    "attr:BlurbItem.wrap":{
        ref:"attr:BlurbItem.wrap",
        flags:"IRW",
        description:"If true, item contents can wrap. If false, all the contents should appear on a single line.",
        name:"wrap",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:BlurbItem",
        groups:[
            "appearance"
        ]
    },
    "method:Button.setState":{
        ref:"method:Button.setState",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')} of this object, changing its appearance.\n Note: <code>newState</code> cannot be\n <smartclient><code>\"Disabled\"</code></smartclient>\n <smartgwt>{@link com.smartgwt.client.types.State#STATE_DISABLED}</smartgwt>\n if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled','this.showDisabled')} is <code>false</code>.\n\n",
        name:"setState",
        seeAlso:[
        ],
        params:[
            {
                description:"the new state.",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"State"
            }
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state",
            "appearance"
        ]
    },
    "attr:LinearGradient.y1":{
        ref:"attr:LinearGradient.y1",
        flags:"IR",
        description:"Y coordinate of the start point. This can be a number or a percentage of the height of the\n bounding box of the DrawItem to which it is applied.",
        name:"y1",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:LinearGradient"
    },
    "attr:Facet.inlinedValues":{
        ref:"attr:Facet.inlinedValues",
        flags:"IRW",
        description:"When applied to a ${isc.DocUtils.linkForRef('interface:Chart')}, does the chart's data contain multiple values per record\n for this facet. See ${isc.DocUtils.linkForRef('attr:Chart.data')} for a full overview of <code>inlinedValues</code>\n behavior.",
        name:"inlinedValues",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "method:DrawItem.getPageTop":{
        ref:"method:DrawItem.getPageTop",
        flags:"A",
        description:" Returns the page-relative top coordinate of the widget on the page, in pixels\n",
        name:"getPageTop",
        seeAlso:[
        ],
        returns:{
            description:"GLOBAL top coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:DrawItem",
        groups:[
            "positioning"
        ]
    },
    "method:ImgButton.getTitle":{
        ref:"method:ImgButton.getTitle",
        flags:"A",
        description:" Return the title - HTML drawn inside the component.\n <p>\n Default is to simply return this.title.\n",
        name:"getTitle",
        seeAlso:[
        ],
        returns:{
            description:"HTML for the title.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ImgButton"
    },
    "attr:Label.icon":{
        ref:"attr:Label.icon",
        flags:"IRW",
        description:"Optional icon to be shown with the button title text.  \n <P>\n Specify as the partial URL to an image, relative to the imgDir of this component.",
        name:"icon",
        setter:[
            "setIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "classMethod:EventHandler.getX":{
        ref:"classMethod:EventHandler.getX",
        flags:"",
        description:"\t\t\tReturn the page-relative X (horizontal) coordinate of an event.\n\n",
        name:"getX",
        seeAlso:[
        ],
        returns:{
            description:"x-coordinate in page coordinate space",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "mouseEvents"
        ]
    },
    "method:FormItemIcon.showIf":{
        ref:"method:FormItemIcon.showIf",
        flags:"",
        description:" If specified, <code>icon.showIf</code> will be evaluated when the form item is\n drawn or redrawn. Return true if the icon should be visible, or false if it\n should be hidden. Note that if ${isc.DocUtils.linkForRef('method:FormItem.showIcon')} or ${isc.DocUtils.linkForRef('method:FormItem.hideIcon')}\n is called, this method will be overridden.\n",
        name:"showIf",
        seeAlso:[
        ],
        params:[
            {
                description:"the DynamicForm in which the icon is embedded",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the item to which this icon is attached.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Return true if the icon should be visible, false otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:FormItemIcon"
    },
    "method:Canvas.getPageRight":{
        ref:"method:Canvas.getPageRight",
        flags:"",
        description:" Return the page-relative right coordinate of this object, in pixels.\n\n",
        name:"getPageRight",
        seeAlso:[
        ],
        returns:{
            description:"GLOBAL right coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "method:ImgButton.setTitle":{
        ref:"method:ImgButton.setTitle",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.title','title')}.\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"the new title HTML.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "appearance"
        ]
    },
    "attr:CubeGrid.rowHeaderGridMode":{
        ref:"attr:CubeGrid.rowHeaderGridMode",
        flags:"IRA",
        description:"If enabled row headers for this cubeGrid will be rendered using a ${isc.DocUtils.linkForRef('class:GridRenderer')}\n component. This improves performance for very large cubeGrids.",
        name:"rowHeaderGridMode",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:SectionStackSection.ID":{
        ref:"attr:SectionStackSection.ID",
        flags:"IR",
        description:"Optional ID for the section. If ${isc.DocUtils.linkForRef('attr:SectionStack.useGlobalSectionIDs')} is true, this property will\n be applied to the generated SectionStackHeader widget as a standard widget ID, meaning\n it should be unique within a page.\n <P>\n <b>Backcompat Note</b>: Section stack sections may be uniquely identified within a stack\n via the ${isc.DocUtils.linkForRef('attr:SectionStackSection.name')} attribute (introduced in Jan 2010). Prior to this,\n the section ID attribute was used in this way (and would not be applied to the section header \n as a widget ID). For backwards compatibility this is still supported: If \n <code>section.name</code> is unspecified for a section but <code>section.ID</code> is set,\n the ID will be used as a default name attribute for the section. For backwards compatibility\n we also disable the standard behavior of having the <code>section.ID</code> being applied to the generated\n section header (thereby avoiding the page-level uniqueness requirement) by defaulting \n ${isc.DocUtils.linkForRef('attr:SectionStack.useGlobalSectionIDs')} to false.",
        name:"ID",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "group:clientServerIntegration":{
        ref:"group:clientServerIntegration",
        title:"Client-Server Integration",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"Like client-server desktop applications, SmartClient browser-based applications interact\n with remote data and services via background communication channels. Background requests\n retrieve chunks of data rather than new HTML pages, and update your visual components in\n place rather than rebuilding the entire user interface.\n <P>\n <b>DataSources</b>\n <p>\n First you must create ${isc.DocUtils.linkForRef('class:DataSource','DataSources')} that describe the objects from\n your object model that will be loaded or manipulated within your application.  All of \n SmartClient's most powerful functionality builds on the concept of a DataSource, and because \n of SmartClient's databinding framework (see ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}), it's as easy to \n create a DataSource that can configure an unlimited number of components as it is to \n configure a single component.\n <P>\n For background information on how to create DataSources, ${isc.DocUtils.linkForRef('interface:DataBoundComponent','bind')}\n components to DataSources and initiate ${isc.DocUtils.linkForRef('class:DSRequest')}s, please see the <em>Data \n Binding</em> chapter of the <em>SmartClient Quickstart Guide</em>.\n <P>\n <b>Data Integration</b>\n <P>\n DataSources provide a data-provider agnostic API to SmartClient Visual Components that \n allow them to perform the 4 CRUD operations (<b>C</b>reate, <b>R</b>etrieve, \n <b>U</b>pdate, <b>D</b>elete).  By \"agnostic\" we mean that the implementation details - \n the nuts and bolts of how a given DataSource actually retrieves or updates data - are \n unknown to bound SmartClient components.  One effect of this is that DataSources are \n \"pluggable\": they can be replaced without affecting the User Interface.\n <p>\n When a visual component, or your own custom code, performs a CRUD operation on a DataSource,\n the DataSource creates a ${isc.DocUtils.linkForRef('class:DSRequest')} (DataSource Request) representing the operation.\n \"Data Integration\" is the process of fulfilling that DSRequest by creating a corresponding\n ${isc.DocUtils.linkForRef('class:DSResponse')} (DataSource Response), by using a variety of possible approaches to \n connect to the ultimate data provider.  \n <p>\n There are two main approaches to integrating DataSources with your server technology: \n <ul>\n <li><b>Server-side integration</b>: DataSource requests from the browser arrive as Java \n Objects on the server. You deliver responses to the browser by returning Java Objects. The\n various server-side integration possibilities are discussed later in this article.</li>\n <li>${isc.DocUtils.linkForRef('group:clientDataIntegration','Client-side integration')}: DataSource requests arrive as \n simple HTTP requests which your server code receives directly (in Java, you use the \n Servlet API or .jsps to handle the requests). Responses are sent as XML or JSON which you \n directly generate.</li>\n </ul>\n The possible approaches are summarized in the diagram below. Paths 2, 3 and 4 are \n client-side integration approaches, and path 1 includes all server-side integration \n approaches. \n <p>\n <img src=\"skin/ClientServerIntegration.png\" width=\"866px\" height=\"495px\">\n <p>\n SmartClient supports, out of the box, codeless connectivity to various kinds of common data\n providers, including SQL and Hibernate.  SmartClient also provides functionality and tools\n for accelerated integration with broad categories of data providers, such as Java\n Object-based persistence mechanisms (JPA, EJB, Ibatis, in-house written systems), and REST \n and WSDL web services in XML or JSON formats.  Ultimately, a DataSource can be connected to \n anything that is accessible via HTTP or HTTPS, and also to in-browser persistence engines \n such as <a href='http://gears.google.com' target='_blank'>Google Gears</a>.\n <p>\n <b>Choosing a Data Integration Approach</b><p>\n This section aims to help you decide which of the many possible data integration approaches\n is best for your particular circumstances.  The recommendations given here will guide you\n to the approach that involves the least effort.<p>\n <img src=\"skin/dataIntegrationFlowchart.png\" width=\"640px\" height=\"300px\">\n <p>\n <ul>\n <li>If you have a Java server:</li>\n <ul>\n   <li>If your ultimate storage is a SQL database:</li>\n     <ul>\n       <li>Use the SQLDataSource unless you have a very large amount of pre-existing\n           JPA or Hibernate code - small amounts of business logic can be easily migrated.\n           Be sure to read the overview of ${isc.DocUtils.linkForRef('group:sqlVsJPA','SQLDataSource vs JPA/Hibernate')} \n           in order to understand the large benefits the SQLDataSource provides</li>\n       <li>Derive DataSource definitions from existing tables or Hibernate mappings using the\n           ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema','autoDeriveSchema')} feature, or from Java Beans\n           via the ${isc.DocUtils.linkForRef('attr:DataSource.schemaBean','schemaBean')} feature.\n           Or, use the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')} to generate tables from DataSource\n           definitions you create by hand</li>\n     </ul>\n   <li>If your ultimate storage is not a SQL database:</li>\n     <ul>\n       <li>If your persistence is based on Java Beans, use the\n           ${isc.DocUtils.linkForRef('attr:DataSource.schemaBean','schemaBean')} feature to derive DataSource definitions from\n            any Java bean</li>\n       <li>write a ${isc.DocUtils.linkForRef('group:writeCustomDataSource','custom DataSource')} that provides the\n           CRUD operations you want to support.</li>\n     </ul>\n   <li>Whether or not your storage is SQL, add business logic either declaratively in the \n       DataSource definition, via ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')}, or any combination of the two:\n     <ul>\n       <li>The &lt;criteria&gt; and &lt;values&gt; properties of an ${isc.DocUtils.linkForRef('class:OperationBinding')}\n           allow you to dynamically set data values at transaction-processing time, using \n           built-in ${isc.DocUtils.linkForRef('group:velocitySupport','Velocity support')}</li>\n       <li>Override the <code>validate()</code> method of the DataSource to provide extra\n           custom validations - just call <code>super</code> to obtain the list of errors \n           derived from SmartClient validations, then add to that list as required with your\n           own custom code</li>\n       <li>Override the <code>execute()</code> method of the DataSource to add extra processing\n           either before or after the SmartClient processing</li>\n       <li>Use ${isc.DocUtils.linkForRef('attr:DSRequestModifier.value','Transaction Chaining')} to dynamically set\n           data values according to the results of earlier transactions</li>\n       <li>For SQL DataSources, use ${isc.DocUtils.linkForRef('group:customQuerying','SQL Templating')} to change, \n           add to or even completely replace the SQL sent to the database, and to implement\n           special query requirements</li>\n       <li>For JPA DataSources, use ${isc.DocUtils.linkForRef('attr:OperationBinding.customJQL','custom JQL queries')}\n           to implement special query requirements</li>\n       <li>For Hibernate DataSources, use ${isc.DocUtils.linkForRef('attr:OperationBinding.customHQL','custom HQL queries')}\n           to implement special query requirements</li>\n      </ul>\n      Read more about the server-side request processing flow and how to customize it in\n      ${isc.DocUtils.linkForRef('group:serverDataIntegration','the server integration overview')}.\n </ul>\n </ul>\n <ul>\n <li>If you do not have a Java server:</li>\n   <ul><li>If you are not obliged to use a pre-existing network protocol, use the \n           ${isc.DocUtils.linkForRef('class:RestDataSource')}</li>\n       <li>Otherwise, use ${isc.DocUtils.linkForRef('group:clientDataIntegration','client-side data integration')} features\n           to create a custom client-side DataSource that adapts the DataSource protocol to \n           your existing services</li>\n   </ul>\n </ul>\n <p><br>\n <b>RPCs: Unstructured Server Communication</b>\n <P>\n SmartClient also supports \"unstructured\" client-server operations.  These \n ${isc.DocUtils.linkForRef('class:RPCRequest')}s (Remote Procedure Call Requests) are a low-level, very flexible \n mechanism for custom client-server communications.  In an nutshell, RPCRequests:\n <ul>\n <li> may contain arbitrary data\n <li> are always initiated by custom code (a call to ${isc.DocUtils.linkForRef('classMethod:RPCManager.send')}), and have\n their responses handled by custom code (the callback passed to <code>send()</code>)\n </ul>\n <P>\n RPCRequests are relatively rare.  Most client-server communications are better done in a \n structured fashion using a ${isc.DocUtils.linkForRef('class:DSRequest')} (DataSource Request).  Note that <em>any</em>\n RPCRequest can alternatively be framed as a ${isc.DocUtils.linkForRef('method:DataSource.fetchData','DataSource fetch')}; \n depending on the circumstances, this may be more convenient.\n <P>\n See the ${isc.DocUtils.linkForRef('class:RPCManager')} documentation for further information on RPCRequests.",
        name:"clientServerIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FieldPickerWindow.title":{
        ref:"attr:FieldPickerWindow.title",
        flags:"IR",
        description:null,
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Field Picker\"",
        type:"attr",
        definingClass:"class:FieldPickerWindow",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TabSet.addTabs":{
        ref:"method:TabSet.addTabs",
        flags:"A",
        description:" Add one or more tabs\n",
        name:"addTabs",
        seeAlso:[
            {
                ref:"method:TabSet.addTab",
                description:null
            }
        ],
        params:[
            {
                description:"new tab or tabs",
                optional:false,
                name:"tabs",
                defaultValue:null,
                type:"Tab or Array of Tab"
            },
            {
                description:"position where tab should be added (or array of positions)",
                optional:false,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:DateChooser.prevMonthIcon":{
        ref:"attr:DateChooser.prevMonthIcon",
        flags:"IR",
        description:"Icon for the previous month button",
        name:"prevMonthIcon",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"[SKIN]arrow_left.gif\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "object:GroupSpecifier":{
        methods:[
        ],
        ref:"object:GroupSpecifier",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:GroupSpecifier.property",
            "attr:GroupSpecifier.grouping",
            "attr:GroupSpecifier.normalizer",
            "attr:GroupSpecifier.context"
        ],
        description:"A Javascript object defining the details of a single group operation.",
        name:"GroupSpecifier",
        seeAlso:[
        ],
        type:"object"
    },
    "group:EventRegistry":{
        ref:"group:EventRegistry",
        refs:[
            "classMethod:Page.setEvent",
            "classMethod:Page.clearEvent",
            "type:FireStyle"
        ],
        name:"EventRegistry",
        seeAlso:[
        ],
        type:"group"
    },
    "class:ToolbarItem":{
        methods:[
        ],
        exampleConfig:"ToolbarItem.xml",
        ref:"class:ToolbarItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:ToolbarItem.buttons",
            "attr:ToolbarItem.showTitle",
            "attr:ToolbarItem.startRow",
            "attr:ToolbarItem.endRow",
            "attr:ToolbarItem.colSpan",
            "attr:ToolbarItem.canvas",
            "attr:ToolbarItem.vertical",
            "attr:ToolbarItem.buttonConstructor",
            "attr:ToolbarItem.buttonProperties",
            "attr:ToolbarItem.buttonBaseStyle"
        ],
        description:"Set of horizontally arranged buttons.",
        name:"ToolbarItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.setFastCellUpdates":{
        ref:"method:ListGrid.setFastCellUpdates",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:GridRenderer.fastCellUpdates')}. Has no effect in browsers other than\n Internet Explorer.\n",
        name:"setFastCellUpdates",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to enable fastCellUpdates.",
                optional:false,
                name:"fastCellUpdates",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:CubeGrid.autoSelectValues":{
        ref:"attr:CubeGrid.autoSelectValues",
        flags:"IR",
        description:"Whether to select cells in the body when row or column headers are selected.",
        name:"autoSelectValues",
        seeAlso:[
        ],
        valueType:"AutoSelectionModel",
        defaultValue:"\"both\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "method:Canvas.moveAbove":{
        ref:"method:Canvas.moveAbove",
        flags:"",
        description:" Puts this widget just above the specified widget in the stacking order, so it appears in\n front of the specified widget if both widgets have the same parent.\n",
        name:"moveAbove",
        seeAlso:[
        ],
        params:[
            {
                description:"canvas to move above",
                optional:false,
                name:"canvas",
                defaultValue:null,
                type:"Canvas or subclass"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('layer')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "zIndex"
        ]
    },
    "attr:Window.dismissOnOutsideClick":{
        ref:"attr:Window.dismissOnOutsideClick",
        flags:"IRW",
        description:"If true, a click outside the bounds of the Window will have the same effect as\n      pressing its cancel button.<br>\n      <b>Note:</b> Applies only to modal windows.",
        name:"dismissOnOutsideClick",
        seeAlso:[
            {
                ref:"attr:Window.isModal",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "modal"
        ]
    },
    "attr:Canvas.animateResizeAcceleration":{
        ref:"attr:Canvas.animateResizeAcceleration",
        flags:"IRWA",
        description:"Default acceleration function for performing an animated resize.  If unset, \n <code>this.animateAcceleration</code> will be used by default instead",
        name:"animateResizeAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:SelectItem.valueField":{
        ref:"attr:SelectItem.valueField",
        flags:"IRW",
        getter:[
            "getValueFieldName"
        ],
        description:"If this form item maps data values to display values by retrieving the \n ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} values from an \n ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}, this property \n denotes the the field to use as the underlying data value in records from the \n optionDataSource.<br>\n If unset, assumed to be the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this form item.",
        name:"valueField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('relatedRecords')}"
        ],
        definingClass:"class:SelectItem",
        groups:[
            "display_values"
        ]
    },
    "attr:Layout.animateMembers":{
        ref:"attr:Layout.animateMembers",
        flags:"IRW",
        description:"If true when members are added / removed, they should be animated as they are shown\n or hidden in position",
        name:"animateMembers",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateLayout')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "animation"
        ]
    },
    "classAttr:Validator.mustBeLaterThanTime":{
        ref:"classAttr:Validator.mustBeLaterThanTime",
        flags:"IRA",
        description:"Default error message to display when standard <code>timeRange</code> type validator\n returns false because the time-portion of the date-value passed in is less than the \n specified minimum time.\n <p> This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeLaterThanTime",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be later than ${isc.Time.toShortTime(min)}\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ImgButton.setBaseStyle":{
        ref:"method:ImgButton.setBaseStyle",
        flags:"",
        description:" Sets the base CSS style.  As the component changes state and/or is selected, suffixes will be\n added to the base style.\n",
        name:"setBaseStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"new base style",
                optional:false,
                name:"style",
                defaultValue:null,
                type:"className"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton"
    },
    "attr:OperationBinding.serverMethod":{
        ref:"attr:OperationBinding.serverMethod",
        flags:"IR",
        description:"The name of the method to invoke on the ${isc.DocUtils.linkForRef('class:ServerObject')} for this operationBinding.\n <p>\n <b>NOTE:</b> If you have a ${isc.DocUtils.linkForRef('attr:DataSource.serverObject','DataSource-level ServerObject')} and\n wish to override this operation so that it simply calls a different method on the same \n server object, it is sufficient to specify just this property on the operationBinding:\n there is no need to redefine the serverObject at the operationBinding level.",
        name:"serverMethod",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ListGrid.groupTree":{
        ref:"attr:ListGrid.groupTree",
        flags:"R",
        description:"The data tree that results from a call to  ${isc.DocUtils.linkForRef('method:ListGrid.groupBy')}.\n This will be a ${isc.DocUtils.linkForRef('class:ResultTree')} if ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')} is\n present, otherwise it will be a ${isc.DocUtils.linkForRef('class:Tree')}.",
        name:"groupTree",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"AutoChild Tree",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "classAttr:RPCManager.saveDataPrompt":{
        ref:"classAttr:RPCManager.saveDataPrompt",
        flags:"IRW",
        description:"Default prompt displayed to the user while an operation is running to save data to\n the server.<br>\n Displayed as a result of the ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} code path.",
        name:"saveDataPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Saving form...\"",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Scrollbar.showTrackEnds":{
        ref:"attr:Scrollbar.showTrackEnds",
        flags:"IRA",
        description:"If true, the scrollbar uses a 5-segment rather than 3-segment image representation,\n where the 3 interior image segments have the same state (Down, Over, etc), independent\n of the two outermost image segments.  \n <P>\n This allows certain advanced skinning designs where the track-as-such (space in which\n the thumb may be dragged) has curved endcaps, and is also visually stateful (that is,\n changes when the mouse goes down, without affecting the appearance of the outermost\n segments).",
        name:"showTrackEnds",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "track"
        ]
    },
    "attr:ListGrid.selectionCanvas":{
        ref:"attr:ListGrid.selectionCanvas",
        flags:"RA",
        description:"AutoChild created and embedded in the grid if ${isc.DocUtils.linkForRef('attr:ListGrid.showSelectionCanvas','showSelectionCanvas')}\n is <code>true</code> and the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType','selectionType')} is\n <smartclient>\"single\".</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.SelectionStyle#SINGLE}.</smartgwt>\n This component will be created and displayed above the selected record whenever the\n selection changes.\n <p>\n NOTE: It is recommended to use the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionUnderCanvas','selectionUnderCanvas')}\n rather than the <code>selectionCanvas</code> if possible because the <code>selectionCanvas</code>\n is stacked on top of the selected record and this may interfere with event handling in rare\n cases. If no interactive components are shown in the <code>selectionCanvas</code> and it\n simply provides custom styling, then the <code>selectionUnderCanvas</code> should be used\n instead.\n <p>\n The <code>selectionCanvas</code> has the following read-only attributes set:<br>\n - <code>this.grid</code> - a pointer to the grid<br>\n - <code>this.record</code> - a pointer to the currently selected record in the grid",
        name:"selectionCanvas",
        seeAlso:[
            {
                ref:"attr:ListGrid.selectionUnderCanvas",
                description:null
            }
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "attr:SliderItem.shouldSaveValue":{
        ref:"attr:SliderItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SliderItem",
        groups:[
            "formValues"
        ]
    },
    "attr:SelectItem.showFocused":{
        ref:"attr:SelectItem.showFocused",
        flags:"IRWA",
        description:"When this item receives focus, should it be re-styled to indicate it has focus?",
        name:"showFocused",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true, [IRWA]",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "appearance"
        ]
    },
    "classAttr:Operators.notContainsFieldTitle":{
        ref:"classAttr:Operators.notContainsFieldTitle",
        flags:"IR",
        description:"Title for the \"notContainsField\" operator",
        name:"notContainsFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not contain (match case) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TreeGrid.animateFolders":{
        ref:"attr:TreeGrid.animateFolders",
        flags:"IRW",
        description:"If true, when folders are opened / closed children will be animated into view.",
        name:"animateFolders",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateTree')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "animation"
        ]
    },
    "method:Callbacks.LoadScreenCallback":{
        ref:"method:Callbacks.LoadScreenCallback",
        flags:"",
        description:" A ${isc.DocUtils.linkForRef('type:Callback')} to evaluate when a screen is loaded via ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')}.\n\n",
        name:"LoadScreenCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"The last top-level component loaded",
                optional:true,
                name:"screen",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:null,
                optional:true,
                name:"rpcResponse",
                defaultValue:null,
                type:"RPCResponse"
            },
            {
                description:"A collection of suppressed globals.",
                optional:true,
                name:"suppressedGlobals",
                defaultValue:null,
                type:"Map"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "classAttr:Time.shortDisplayFormat":{
        ref:"classAttr:Time.shortDisplayFormat",
        flags:"RWA",
        description:"Standard formatter to be used when converting a date to a time-string via ${isc.DocUtils.linkForRef('classMethod:Time.toShortTime')}",
        name:"shortDisplayFormat",
        setter:[
            "setShortDisplayFormat"
        ],
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat | function",
        defaultValue:"\"toShortTime\"",
        type:"classAttr",
        definingClass:"class:Time"
    },
    "attr:ListGridField.applyAfterSummary":{
        ref:"attr:ListGridField.applyAfterSummary",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.userFormula')} is set for this field, and this grid is showing\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary','group summaries')} or a\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','grid summary')}, this property determines what field value\n should be present in those summary rows. Should the field apply the user-formula to the\n calculated summary row, or should it apply a standard grid or group summary to the\n user-formula values displayed in the grid?\n <P>\n Default behavior may be specified at the grid level via ${isc.DocUtils.linkForRef('attr:ListGrid.applyFormulaAfterSummary')}",
        name:"applyAfterSummary",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:TimeItem.hourIncrement":{
        ref:"attr:TimeItem.hourIncrement",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourValues','hourValues')} is unset, this attribute specifies the increment\n to use when generating entries for the hour picker.  For example, if this attribute is\n set to 5, the hour picker will contain only every fifth value between the \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourMinValue','hourMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourMaxValue','hourMaxValue')}.",
        name:"hourIncrement",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:Canvas.showComponentMask":{
        ref:"method:Canvas.showComponentMask",
        flags:"",
        description:" Temporariy block all user interaction with children of this widget, with the exception of those\n passed in in the <code>unmaskedChildren</code> parameter. Children will remain blocked until\n ${isc.DocUtils.linkForRef('method:Canvas.hideComponentMask')} is called.\n <P>\n This method will show the ${isc.DocUtils.linkForRef('attr:Canvas.componentMask')} canvas to block mouse interaction with\n children, and temporarily remove masked children from the page's tab-order.\n <P>\n This behavior differs from the standard ${isc.DocUtils.linkForRef('method:Canvas.showClickMask','click mask')} in that the\n modal mask shown by ${isc.DocUtils.linkForRef('method:Canvas.showClickMask')} will cover the entire screen and typically only \n allow \"unmasking\" of top level components.\n <P>\n Use ${isc.DocUtils.linkForRef('method:Canvas.hideComponentMask')} to hide the component level mask.\n\n",
        name:"showComponentMask",
        seeAlso:[
        ],
        params:[
            {
                description:"Children passed into this parameter will continue to       be interactive while other children are blocked. They will be moved above the componentMask in\n      the page's z-order and remain accessible via keyboard navigation.  Note that this array should\n      contain direct children of this widget only.",
                optional:true,
                name:"unmaskedChildren",
                defaultValue:null,
                type:"Array of Canvas"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:DSResponse.clientContext":{
        ref:"attr:DSResponse.clientContext",
        flags:"R",
        description:"The ${isc.DocUtils.linkForRef('attr:DSRequest.clientContext')} object as set on the ${isc.DocUtils.linkForRef('class:DSRequest')}.",
        name:"clientContext",
        seeAlso:[
            {
                ref:"attr:DSRequest.clientContext",
                description:null
            },
            {
                ref:"attr:RPCResponse.clientContext",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse"
    },
    "attr:RPCRequest.omitNullMapValuesInResponse":{
        ref:"attr:RPCRequest.omitNullMapValuesInResponse",
        flags:"IRWA",
        description:"If enabled, the server omits any key/value pairs in map that have null values from the\n response.  This can reduce the size of the response when many fields have null values.\n <p>\n To enable this globally for all responses you can set RPCManager.omitNullMapValuesInResponse\n in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.",
        name:"omitNullMapValuesInResponse",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "method:ListGridField.formatEditorValue":{
        ref:"method:ListGridField.formatEditorValue",
        flags:"",
        description:" Return the value to display in cells of this field which are being edited.\n <P>\n <i>Example usage</i>: converting a stored value in cents (100) to a dollar-and-cents\n value in the editor (1.00)\n <P>\n The value passed to this method is the raw value for the cell.\n <P>\n <code>formatEditorValue</code> takes precedence over ${isc.DocUtils.linkForRef('method:ListGrid.formatEditorValue')}\n defined at the grid level for cells in this field.\n <P>\n To convert the formatted value displayed within an editor back to a raw value, implement\n ${isc.DocUtils.linkForRef('method:ListGridField.parseEditorValue')} as well.\n\n",
        name:"formatEditorValue",
        seeAlso:[
            {
                ref:"method:ListGridField.formatCellValue",
                description:null
            },
            {
                ref:"method:ListGrid.formatEditorValue",
                description:null
            },
            {
                ref:"method:ListGridField.parseEditorValue",
                description:null
            }
        ],
        params:[
            {
                description:"raw value for the cell being edited",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Record object for the cell. Note: If this is a new row that has not been saved, in an\n   editable grid, it has no associated record object. In this case the edit values will\n   be passed in as this parameter.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number for the cell.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"A pointer to the ListGrid displaying the cell",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid instance"
            }
        ],
        returns:{
            description:"formatted value to display in the editor",
            type:"any"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:Label.iconSize":{
        ref:"attr:Label.iconSize",
        flags:"IR",
        description:"Size in pixels of the icon image.\n <P>\n The <code>iconWidth</code> and <code>iconHeight</code> properties can be used to\n configure width and height separately.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:DataBoundComponent.initialCriteria":{
        ref:"attr:DataBoundComponent.initialCriteria",
        flags:"IR",
        description:"Criteria to be used when ${isc.DocUtils.linkForRef('attr:DataBoundComponent.autoFetchData')} is set.",
        name:"initialCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "method:Canvas.moveBelow":{
        ref:"method:Canvas.moveBelow",
        flags:"",
        description:" Puts this widget just below the specified widget in the stacking order, so it appears\n behind the specified widget if both widgets have the same parent.\n",
        name:"moveBelow",
        seeAlso:[
        ],
        params:[
            {
                description:"canvas to move below",
                optional:false,
                name:"canvas",
                defaultValue:null,
                type:"Canvas or subclass"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('layer')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "zIndex"
        ]
    },
    "method:Menu.getItemNum":{
        ref:"method:Menu.getItemNum",
        flags:"",
        description:" Given a MenuItem, return it's index in the items array.\n\n",
        name:"getItemNum",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the item or MenuItem itself",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem | int"
            }
        ],
        returns:{
            description:"index of the item, or -1 if not defined.",
            type:"int"
        },
        type:"method",
        definingClass:"class:Menu",
        groups:[
            "menuItems"
        ]
    },
    "method:UploadItem.deselectValue":{
        ref:"method:UploadItem.deselectValue",
        flags:"",
        description:" <strong>This method is not supported</strong> by <code>UploadItem</code>.\n",
        name:"deselectValue",
        seeAlso:[
        ],
        params:[
            {
                description:"By default the text insertion cursor will be moved to the end of the   current value - pass in this parameter to move to the start instead",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:UploadItem"
    },
    "method:GridRenderer.getCellRowSpan":{
        ref:"method:GridRenderer.getCellRowSpan",
        flags:"",
        description:" When using ${isc.DocUtils.linkForRef('method:GridRenderer.getRowSpan','row spanning')}, returns the number of cells spanned by the cell\n at the given coordinates.\n <P>\n If the passed coordinates are in the middle of a series of spanned cells, the row span of\n the spanning cell is returned.  For example, if row 2 col 0 spans 3 cells, calls to\n <code>getCellRowSpan()</code> for row 2 col 0, row 3 col 0, row 4 col 0 will all return 3.\n <P>\n This method returns row span information for the current rendered cells.  In contrast, if\n the grid is about to be redrawn, a call to <code>getRowSpan()</code> may return row span\n values for how the grid is about to be drawn.  Also, user-provided getRowSpan() functions\n are not required to operate properly when called outside of the grid rendering loop.\n <P>\n <b>Note:</b> This method is a utility method for developers - it is not called\n directly by the grid rendering path and therefore is not intended for override. To\n set up custom row-spanning behavior, override ${isc.DocUtils.linkForRef('method:GridRenderer.getRowSpan')} instead.\n\n",
        name:"getCellRowSpan",
        seeAlso:[
        ],
        params:[
            {
                description:"row number of cell to return the row span for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of cell to return the row span for",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"number of cells spanned by the cell that spans through these coordinates",
            type:"int"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:RichTextEditor.setValue":{
        ref:"method:RichTextEditor.setValue",
        flags:"",
        description:" Updates the current value of the edit area.\n",
        name:"setValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RichTextEditor"
    },
    "group:dragTracker":{
        ref:"group:dragTracker",
        refs:[
            "method:DataBoundComponent.setDragTracker",
            "method:ListGrid.setDragTracker",
            "method:ListGrid.getDragTrackerIcon",
            "method:ListGrid.getDragTrackerTitle",
            "method:TreeGrid.getDragTrackerIcon",
            "method:TileGrid.setDragTracker",
            "method:TileGrid.getDragTrackerTitle",
            "classMethod:EventHandler.setDragTracker",
            "attr:ListGrid.dragTrackerMode",
            "attr:ListGrid.trackerImage",
            "type:DragTrackerMode"
        ],
        name:"dragTracker",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Calendar.datePickerHoverText":{
        ref:"attr:Calendar.datePickerHoverText",
        flags:"IR",
        description:"The text to be displayed when a user hovers over the ${isc.DocUtils.linkForRef('attr:Calendar.datePickerButton','date picker')}\n toolbar button",
        name:"datePickerHoverText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Choose a date\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Layout.enforcePolicy":{
        ref:"attr:Layout.enforcePolicy",
        flags:"IRWA",
        description:"Whether the layout policy is continuously enforced as new members are added or removed\n and as members are resized.\n <p>\n This setting implies that any member that resizes larger, or any added member, will take\n space from other members in order to allow the overall layout to stay the same size.",
        name:"enforcePolicy",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "method:DataSource.removeData":{
        ref:"method:DataSource.removeData",
        flags:"",
        description:" Perform a \"remove\" DataSource operation against this DataSource, to delete an existing\n DataSource record.\n\n",
        name:"removeData",
        seeAlso:[
        ],
        params:[
            {
                description:"primary key values of record to delete, (or complete record)",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Record | PrimaryKeys"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "attr:FormItem.cellStyle":{
        ref:"attr:FormItem.cellStyle",
        flags:"IRW",
        description:"CSS style applied to the form item as a whole, including the text element, any icons, and\n any hint text for the item. Applied to the cell containing the form item.\n <P>\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special skinning considerations.",
        name:"cellStyle",
        setter:[
            "setCellStyle"
        ],
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"formCell\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:TileGrid.wrapValues":{
        ref:"attr:TileGrid.wrapValues",
        flags:"IR",
        description:"Whether values should be allowed to wrap by default, or should be shown on one line\n regardless of length.",
        name:"wrapValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:Dialog.styleName":{
        ref:"attr:Dialog.styleName",
        flags:"IRW",
        description:"Style of the Dialog background",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dialogBackground\"",
        type:"attr",
        definingClass:"class:Dialog",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.asynchGroupingPrompt":{
        ref:"attr:ListGrid.asynchGroupingPrompt",
        flags:"IR",
        description:"The prompt to display while interactivity is blocked during ${isc.DocUtils.linkForRef('attr:ListGrid.groupByAsyncThreshold','asynchronous grouping')}.",
        name:"asynchGroupingPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"${loadingImage}&amp;nbsp;Grouping data...\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Tab.icon":{
        ref:"attr:Tab.icon",
        flags:"IRW",
        description:"If specified, this tab will show an icon next to the tab title.  \n <p>\n <b>NOTE:</b> if you enable ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs','closeable tabs')},\n <code>tab.icon</code> is used for the close icon.  ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')} describes\n a workaround to enable both a <code>closeIcon</code> and a second icon to be shown.\n <p>\n Use ${isc.DocUtils.linkForRef('method:TabSet.tabIconClick')} to add an event handler specifically for clicks on the icon.\n <p>\n If a tab ${isc.DocUtils.linkForRef('attr:Tab.disabled','becomes disabled')}, a different icon will be loaded by adding\n a suffix to the image name (see ${isc.DocUtils.linkForRef('attr:Button.icon')}).\n <p>\n You should specify a size for the icon via ${isc.DocUtils.linkForRef('attr:Tab.iconSize')} or ${isc.DocUtils.linkForRef('attr:Tab.iconWidth')}\n and ${isc.DocUtils.linkForRef('attr:Tab.iconHeight')}. Without an explicitly specified size, tabs may be drawn\n overlapping or with gaps the first time a page is loaded, because the icon is not cached\n and therefore its size isn't known.",
        name:"icon",
        seeAlso:[
            {
                ref:"method:TabSet.tabIconClick",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('tabsOrientation')}"
        ],
        definingClass:"object:Tab"
    },
    "attr:DynamicForm.requiredMessage":{
        ref:"attr:DynamicForm.requiredMessage",
        flags:"IRW",
        description:"The required message for required field errors.",
        name:"requiredMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "method:HiliteEditor.setHilites":{
        ref:"method:HiliteEditor.setHilites",
        flags:"",
        description:" Initialize this editor with a set of Hilites.\n\n",
        name:"setHilites",
        seeAlso:[
        ],
        params:[
            {
                description:"the array of hilite objects to apply",
                optional:false,
                name:"hilites",
                defaultValue:null,
                type:"Array of Hilite"
            }
        ],
        type:"method",
        definingClass:"class:HiliteEditor"
    },
    "class:DateTimeItem":{
        methods:[
        ],
        ref:"class:DateTimeItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:DateTimeItem.useTextField",
            "attr:DateTimeItem.browserInputType",
            "attr:DateTimeItem.displayFormat",
            "attr:DateTimeItem.inputFormat"
        ],
        description:"Subclass of DateItem for manipulating ${isc.DocUtils.linkForRef('type:FieldType','datetimes')}.",
        name:"DateTimeItem",
        seeAlso:[
        ],
        type:"class"
    },
    "classAttr:Array.DATE_VALUES":{
        ref:"classAttr:Array.DATE_VALUES",
        flags:null,
        description:"This is a built-in comparator for the ${isc.DocUtils.linkForRef('method:Array.find','find')} and ${isc.DocUtils.linkForRef('method:Array.findIndex','findIndex')}\n methods of Array.  Passing this comparator to those methods will find instances where Dates  \n in the search criteria match Dates in the array members (ordinarily, Javascript only regards\n Dates as equal if they refer to the exact same object).  This comparator compares <i>logical</i>\n dates; the time elements of the values being compared are ignored, so two Dates representing\n different times on the same day will be considered equal.",
        name:"DATE_VALUES",
        seeAlso:[
            {
                ref:"classAttr:Array.DATETIME_VALUES",
                description:null
            }
        ],
        valueType:"Function",
        defaultValue:"See below",
        type:"classAttr",
        definingClass:"object:Array"
    },
    "attr:DSRequest.exportDelimiter":{
        ref:"attr:DSRequest.exportDelimiter",
        flags:"IR",
        description:"The character to use as a field-separator in CSV exports.  The default delimiter is comma.",
        name:"exportDelimiter",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\",\"",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:Calendar.showWorkday":{
        ref:"attr:Calendar.showWorkday",
        flags:"IR",
        description:"If set, causes the calendar to use ${isc.DocUtils.linkForRef('attr:Calendar.workdayBaseStyle')}\n for cells falling within the workday as defined by ${isc.DocUtils.linkForRef('attr:Calendar.workdayStart')} and ${isc.DocUtils.linkForRef('attr:Calendar.workdayEnd')},\n in both the ${isc.DocUtils.linkForRef('attr:Calendar.weekView')} and ${isc.DocUtils.linkForRef('attr:Calendar.dayView','dayView')}.\n <P>\n The hours of the workday can be customized for particular dates by providing implementations\n of ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayStart')} and ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayEnd')}.",
        name:"showWorkday",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "workday"
        ]
    },
    "attr:DSRequest.exportToClient":{
        ref:"attr:DSRequest.exportToClient",
        flags:"IR",
        description:"If set, SmartClient Server will export data back to the client, either as a file download \n or as content in a new browser window, depending on the setting of\n ${isc.DocUtils.linkForRef('attr:DSRequest.exportDisplay','exportDisplay')}.\n <p>\n Note that it is perfectly valid to specify both this property and \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportToFilesystem','exportToFilesystem')}; in this case the data is both \n exported to a file on the server filesystem, and downloaded to the client.  If you specify \n <em>neither</em> property, the export no-ops.",
        name:"exportToClient",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:TileGrid.setCanReorderTiles":{
        ref:"method:TileGrid.setCanReorderTiles",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:TileGrid.canReorderTiles')}.\n",
        name:"setCanReorderTiles",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dragging"
        ]
    },
    "attr:FormItem.selectOnClick":{
        ref:"attr:FormItem.selectOnClick",
        flags:"IRW",
        description:"Allows the ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnClick','selectOnClick')} behavior to be configured on a\n per-FormItem basis.  Normally all items in a form default to the value of\n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnClick')}.",
        name:"selectOnClick",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "focus"
        ]
    },
    "method:TreeGrid.recordDrop":{
        ref:"method:TreeGrid.recordDrop",
        flags:"",
        description:" The superclass event ${isc.DocUtils.linkForRef('method:ListGrid.recordDrop')} does not fire on a TreeGrid, use\n ${isc.DocUtils.linkForRef('method:TreeGrid.folderDrop')} instead.\n\n",
        name:"recordDrop",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:Canvas.backgroundPosition":{
        ref:"attr:Canvas.backgroundPosition",
        flags:"IR",
        description:"Specifies how the background image should be positioned on the widget.\n      It corresponds to the CSS background-position attribute. If unset,\n      no background-position attribute is specified if a background image is\n      specified.",
        name:"backgroundPosition",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.clipTitle":{
        ref:"attr:FormItem.clipTitle",
        flags:"IRW",
        description:"If the title for this form item is showing, and is too large for the available space\n should the title be clipped?\n <p>\n Null by default - if set to true or false, overrides ${isc.DocUtils.linkForRef('attr:DynamicForm.clipItemTitles')}.",
        name:"clipTitle",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "method:TileGrid.invalidateCache":{
        ref:"method:TileGrid.invalidateCache",
        flags:"",
        description:" Invalidate the current data cache for this databound component via a call to\n the dataset's <code>invalidateCache()</code> method, for example,\n ${isc.DocUtils.linkForRef('method:ResultSet.invalidateCache')}.\n <P>\n <b>NOTE:</b> there is no need to call <code>invalidateCache()</code> when a save operation\n is performed on a DataSource.  Automatic cache synchronization features will automatically\n update caches - see ${isc.DocUtils.linkForRef('class:ResultSet')} for details.  If automatic cache synchronization isn't\n working, troubleshoot the problem using the steps suggested \n <a href='http://forums.smartclient.com/showthread.php?t=8159#aGrid' target='_blank'>in the FAQ</a> rather\n than just calling invalidateCache().  Calling <code>invalidateCache()</code> unnecessarily\n causes extra server load and added code complexity.\n <P>\n Calling <code>invalidateCache()</code> will automatically cause a new fetch to \n be performed with the current set of criteria if data had been previously fetched and the\n component is currently drawn with data visible - there is no need to manually call\n fetchData() after invalidateCache() and this could result in duplicate fetches.  \n <P>\n While data is being re-loaded after a call to <code>invalidateCache()</code>, the widget is\n in a state similar to initial data load - it doesn't know the total length of the dataset\n and any APIs that act on records or row indices will necessarily fail and should not be\n called.  To detect that the widget is in this state, call ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown')}.\n <P>\n <code>invalidateCache()</code> only has an effect is this components dataset is a data\n manager class that manages a cache (eg ResultSet or ResultTree).  If data was provided as a\n simple Array or List, invalidateCache() does nothing.\n \n",
        name:"invalidateCache",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:Slider.setMaxValueLabel":{
        ref:"method:Slider.setMaxValueLabel",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.maxValueLabel')} property of the slider\n\n",
        name:"setMaxValueLabel",
        seeAlso:[
        ],
        params:[
            {
                description:"new label text",
                optional:false,
                name:"labelText",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:TimeItem.secondMaxValue":{
        ref:"attr:TimeItem.secondMaxValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondValues','secondValues')} is unset, this attribute specifies the maximum\n value present in the second picker.\n <P>Used for specifying a limited set of valid Second values, or when using the \n TimeItem to record duration, rather than time per-se.  The default is 59.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.secondMinValue','secondMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondIncrement','secondIncrement')}.",
        name:"secondMaxValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:PortalLayout.setCanResizeRows":{
        ref:"method:PortalLayout.setCanResizeRows",
        deprecated:"Use ${isc.DocUtils.linkForRef('method:PortalLayout.setCanResizePortlets','setCanResizePortlets()')} instead.",
        flags:"",
        description:" Set whether vertical drag-resize of portlets within columns is allowed, and\n update any drawn columns to reflect this.\n",
        name:"setCanResizeRows",
        seeAlso:[
        ],
        params:[
            {
                description:"Whether drag-resize of portlets within columns is allowed",
                optional:false,
                name:"canResize",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "class:DoubleItem":{
        methods:[
            "method:DoubleItem.getValueAsDouble"
        ],
        ref:"class:DoubleItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"TextForm item for managing a text field that displays a decimal value.",
        name:"DoubleItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ColumnTree.getIcon":{
        ref:"method:ColumnTree.getIcon",
        flags:"",
        description:" Get the appropriate icon for a node.\n <P>\n By default icons are derived from ${isc.DocUtils.linkForRef('attr:ColumnTree.folderIcon')} and ${isc.DocUtils.linkForRef('attr:ColumnTree.nodeIcon')}.\n Custom icons for individual nodes can be overridden by setting the ${isc.DocUtils.linkForRef('attr:ColumnTree.customIconProperty')}\n on a node.\n <p>\n If you want to suppress icons altogether, provide an override of this method that simply\n returns null.\n <p> \n Note that the full icon URL will be derived by applying ${isc.DocUtils.linkForRef('method:Canvas.getImgURL')} to the\n value returned from this method.\n\n",
        name:"getIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"tree node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"URL for the icon to show for this node",
            type:"URL"
        },
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "attr:HiddenItem.rowSpan":{
        ref:"attr:HiddenItem.rowSpan",
        flags:"IRW",
        description:"hidden fields don't take up any rows",
        name:"rowSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:HiddenItem",
        groups:[
            "appearance"
        ]
    },
    "method:DataSource.recordsAsText":{
        ref:"method:DataSource.recordsAsText",
        flags:"",
        description:" Converts a list of Records to simple text formats with a Record per line and values separated\n by a configurable separator, including both tab-separated-values and comma-separated-values\n (aka CSV).\n <P>\n In addition to the <code>settings</code> parameter for this method,\n ${isc.DocUtils.linkForRef('method:DataSourceField.exportForceText')} can be set.  \n <P>\n If two or more different text exports are needed for the same DataSource creating a conflict\n for any DataSourceField setting, ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')} can be used to create a\n child DataSource where these settings can be changed without recapitulating all field\n definitions.\n\n",
        name:"recordsAsText",
        seeAlso:[
        ],
        params:[
            {
                description:"records to convert",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record"
            },
            {
                description:"settings for the export",
                optional:true,
                name:"settings",
                defaultValue:null,
                type:"TextExportSettings Properties"
            }
        ],
        returns:{
            description:"records as CSV/TSV (separator can be specified)",
            type:"String"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:Tree.hasChildren":{
        ref:"method:Tree.hasChildren",
        flags:"",
        description:"\n Returns true if this node has any children.\n\n",
        name:"hasChildren",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the node has children",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:TreeGrid.setOpenState":{
        ref:"method:TreeGrid.setOpenState",
        flags:"",
        description:" Reset this set of open folders within this grid's data to match the \n ${isc.DocUtils.linkForRef('type:TreeGridOpenState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to \n ${isc.DocUtils.linkForRef('method:TreeGrid.getOpenState')}.\n\n",
        name:"setOpenState",
        seeAlso:[
            {
                ref:"method:TreeGrid.getOpenState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired set of open folders.",
                optional:false,
                name:"openState",
                defaultValue:null,
                type:"TreeGridOpenState"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "viewState"
        ]
    },
    "method:DetailViewer.isExportingClientData":{
        ref:"method:DetailViewer.isExportingClientData",
        flags:"",
        description:" Returns true if this component is currently \n ${isc.DocUtils.linkForRef('method:DetailViewer.exportClientData','exporting client data')}.  This method can be called from\n custom cell formatters if you need to return a different formatted value for an export\n than for a live detailViewer\n",
        name:"isExportingClientData",
        seeAlso:[
            {
                ref:"method:ListGrid.exportClientData",
                description:null
            }
        ],
        returns:{
            description:"returns true if this component is currently exporting client data",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DetailViewer"
    },
    "attr:ListGrid.canPickOmittedFields":{
        ref:"attr:ListGrid.canPickOmittedFields",
        flags:"IR",
        description:"If this grid has a specified ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')}, and\n ${isc.DocUtils.linkForRef('attr:ListGrid.useAllDataSourceFields')} is false, setting this property to true\n will cause all dataSource fields not included in the specified set of fields to\n show up in the ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields','field picker menu item')}.\n <P>\n Has no effect if ${isc.DocUtils.linkForRef('attr:ListGrid.fields')} is unset (as in this case all dataSource fields\n will be displayed by default), or if ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields')} is false.",
        name:"canPickOmittedFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DSRequest.summaryFunctions":{
        ref:"attr:DSRequest.summaryFunctions",
        flags:"IR",
        description:"A mapping from field names to ${isc.DocUtils.linkForRef('type:SummaryFunction','summary functions')} to be applied\n to each field.\n <p>\n Valid only for an operation of type \"fetch\".  See the \n ${isc.DocUtils.linkForRef('group:serverSummaries','Server Summaries overview')} for examples of usage.",
        name:"summaryFunctions",
        seeAlso:[
            {
                ref:"attr:DSRequest.groupBy",
                description:null
            }
        ],
        valueType:"Object<String,SummaryFunction>",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "serverSummaries"
        ]
    },
    "attr:ListGrid.bodyOverflow":{
        ref:"attr:ListGrid.bodyOverflow",
        flags:"IRWA",
        description:"Overflow setting for the \"body\", that is, the area of the grid where data values are\n rendered.\n <P>\n By setting both the grid itself and the body to overflow:visible, it is possible to\n \"auto-fit\" to the rendered height or width of the rows.  Note that in this case\n <code>grid.width</code> and <code>grid.height</code> act as minimums.",
        name:"bodyOverflow",
        setter:[
            "setBodyOverflow"
        ],
        seeAlso:[
        ],
        valueType:"Overflow",
        defaultValue:"Canvas.AUTO",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('autofitRows')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "sizing"
        ]
    },
    "attr:Scrollbar.showTrackButtons":{
        ref:"attr:Scrollbar.showTrackButtons",
        flags:"IRA",
        description:"Should the track buttons that allow page scrolling be shown?\n <P>",
        name:"showTrackButtons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "track"
        ]
    },
    "method:DrawGroup.moveTo":{
        ref:"method:DrawGroup.moveTo",
        flags:"",
        description:" Sets both the left and top coordinates of this <code>DrawGroup</code>'s ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')}.\n Note that this does not move or resize the items in this <code>DrawGroup</code>.\n\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new top coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "method:DrawGroup.dragMove":{
        ref:"method:DrawGroup.dragMove",
        flags:"",
        description:" Notification fired for every mouseMove event triggered while the user is dragging this\n DrawGroup. Will only fire if ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag','canDrag')} is true for this group.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n <P>\n Default drag behavior will be to reposition all items in the group (and update the group rectangle).\n",
        name:"dragMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag interaction.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragPan')}"
        ],
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "method:DrawItem.setFillColor":{
        ref:"method:DrawItem.setFillColor",
        flags:"",
        description:" Update fillColor for this drawItem.\n",
        name:"setFillColor",
        seeAlso:[
        ],
        params:[
            {
                description:"new fillColor to use.  Pass null for transparent.",
                optional:false,
                name:"color",
                defaultValue:null,
                type:"CSSColor"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:Operator.symbol":{
        ref:"attr:Operator.symbol",
        flags:"IR",
        description:"The text use when using this operator as an \n ${isc.DocUtils.linkForRef('attr:FormItem.allowExpressions','expression')} in a FormItem.",
        name:"symbol",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:ImgButton.showFocusedIcon":{
        ref:"attr:ImgButton.showFocusedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n receives focus.\n <P>\n If ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true, the <code>\"Over\"</code> icon will be\n displayed when the canvas has focus, otherwise a separate <code>\"Focused\"</code> icon\n will be displayed",
        name:"showFocusedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "type:TopOperatorAppearance":{
        ref:"type:TopOperatorAppearance",
        values:[
            {
                description:"radio buttons appear at the top of the form",
                value:"\"radio\""
            },
            {
                description:"a SelectItem appears with a \"bracket\" spanning all top-level clauses, exactly the same appearance used for showing\n ${isc.DocUtils.linkForRef('attr:FilterBuilder.showSubClauseButton','subClauses')}, if enabled.",
                value:"\"bracket\""
            },
            {
                description:"each line in the FilterBuilder is a top-level item, with a SelectItem shown on the left that allows the user to choose between the main operator in force (either \"and\"\n or \"or\", depending on the setting of topOperator) and \"and not\".",
                value:"\"inline\""
            },
            {
                description:"no interface is shown.  The top-level operator is expected to be shown to the user outside the FilterBuilder, and, if editable, ${isc.DocUtils.linkForRef('method:FilterBuilder.setTopOperator')}\n should be called to update it",
                value:"\"none\""
            }
        ],
        description:"Interface to use for showing and editing the ${isc.DocUtils.linkForRef('attr:FilterBuilder.topOperator','top-level operator')} \n of a FilterBuilder.",
        name:"TopOperatorAppearance",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DataSource.setCacheData":{
        ref:"method:DataSource.setCacheData",
        flags:"",
        description:" Call this method to set the data in the client-side cache after initialization.\n",
        name:"setCacheData",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of records to apply as the client-side cache",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Array of Record"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "method:DynamicForm.getFields":{
        ref:"method:DynamicForm.getFields",
        flags:"",
        description:" Method to retrieve the ${isc.DocUtils.linkForRef('attr:DynamicForm.fields','items')} for this DynamicForm. \n\n",
        name:"getFields",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array of FormItem"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "elements"
        ]
    },
    "method:Tree.getPath":{
        ref:"method:Tree.getPath",
        flags:"",
        description:"\n Returns the path of a node - a path has the following format:\n <code>([name][pathDelim]?)*</code>\n <br><br>\n For example, in this tree:\n <pre>\n root\n   foo\n     bar\n </pre>\n Assuming that ${isc.DocUtils.linkForRef('attr:Tree.pathDelim')} is the default <code>/</code>, the <code>bar</code>\n node would have the path <code>root/foo/bar</code> and the path for the <code>foo</code>\n node would be <code>root/foo</code>.\n <br><br>\n Once you have a path to a node, you can call find(path) to retrieve a reference to the node\n later.\n\n",
        name:"getPath",
        seeAlso:[
            {
                ref:"method:Tree.getParentPath",
                description:null
            }
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"path to the node",
            type:"string"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:FieldPicker.setAvailableFields":{
        ref:"method:FieldPicker.setAvailableFields",
        flags:"",
        description:" Provides a new set of available fields.\n",
        name:"setAvailableFields",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"newFields",
                defaultValue:null,
                type:"Array of DataSourceField"
            }
        ],
        type:"method",
        definingClass:"class:FieldPicker"
    },
    "class:Process":{
        methods:[
            "method:Process.getElement",
            "method:Process.start",
            "method:Process.reset",
            "method:Process.setState",
            "method:Process.finished"
        ],
        ref:"class:Process",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:Process.loadProcess",
            "classMethod:Process.getProcess"
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:Process.sequences",
            "attr:Process.elements",
            "attr:Process.startElement",
            "attr:Process.wizard",
            "attr:Process.containerId",
            "attr:Process.setState",
            "attr:Process.state",
            "attr:Process.autoStart"
        ],
        description:"A instance of Process represents a stateful process executing a series of Tasks, \n which may be:\n <ul>\n <li> user interactions\n <li> calls to DataSources (hence: any database or web service)\n <li> arbitrary code\n <li> other Processes\n </ul>\n A Process is <i>stateful</i> in the sense that it maintains ${isc.DocUtils.linkForRef('attr:Process.state','state')}\n across the different tasks that are executed.  This allows you to maintain context as you\n walk a user through a multi-step business process in your application, which may involve\n multiple operations on multiple entities.  Each Task that executes can use the Process state\n as inputs, and can output a result which is stored in the Process state - see\n ${isc.DocUtils.linkForRef('group:taskIO')}.\n <P>\n A Process can have multiple branches, choosing the next Task to execute based on\n ${isc.DocUtils.linkForRef('type:Criteria')} - see ${isc.DocUtils.linkForRef('class:XORGateway')} and ${isc.DocUtils.linkForRef('class:DecisionGateway')}.\n <P>\n Because a Process may return to a previous Task in various situations, the data model of a\n Process is strictly speaking a <i>graph</i> (a set of nodes connected by arbitary\n interlinks). However, most processes have sequences of several tasks in a row, and the\n definition format allows these to be represented as simple Arrays called \"sequences\",\n specified via ${isc.DocUtils.linkForRef('attr:Process.sequences')}.  This reduces the need to manually specify IDs and\n interlinks for Tasks that simply proceed to the next task in a sequence.\n <P>\n <b>NOTE:</b> you must load the Workflow module\n ${isc.DocUtils.linkForRef('group:loadingOptionalModules','Optional Modules')} before you can use Process.\n <P>",
        name:"Process",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:AnimateShowEffect.effect":{
        ref:"attr:AnimateShowEffect.effect",
        flags:"IR",
        description:"Effect to apply",
        name:"effect",
        seeAlso:[
        ],
        valueType:"animateShowEffectId",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:AnimateShowEffect"
    },
    "attr:CubeGrid.hideEmptyFacetValues":{
        ref:"attr:CubeGrid.hideEmptyFacetValues",
        flags:"IR",
        description:"This causes the headers for any combination of facetValues for which there are no \n cellRecords to be suppressed.\n <P>\n To use this feature, either:\n <ul>\n <li> all must be provided via ${isc.DocUtils.linkForRef('method:ListGrid.setData','setData()')} before the CubeGrid is first drawn, OR\n <li> all data must be returned by the first DataSource fetch, OR\n <li> ${isc.DocUtils.linkForRef('attr:CubeGrid.hideEmptyAxis')} must be set to either \"row\" or \"column\" so that empty values\n are only automatically hidden for one axis\n </ul>\n This last point is required because there is no way to determine whether a row is empty\n unless data for all columns of the row has been loaded (and vice-versa).  For this\n reason if you set hideEmptyFacetValues but do not set hideEmptyAxis, the default\n behavior of ${isc.DocUtils.linkForRef('class:DataSource','loading only visible data')} is automatically disabled and\n only ${isc.DocUtils.linkForRef('attr:CubeGrid.fixedFacetValues')} will be sent as criteria.",
        name:"hideEmptyFacetValues",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:ColumnTree.nodeIcon":{
        ref:"attr:ColumnTree.nodeIcon",
        flags:"IRW",
        description:"The filename of the default icon for all leaf nodes in this grid. To specify a \n custom image for an individual node, set the ${isc.DocUtils.linkForRef('attr:ColumnTree.customIconProperty')} directly on\n the node.",
        name:"nodeIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]file.gif\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('millerColumns')}"
        ],
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "attr:RelativeDateItem.yearsFromNowTitle":{
        ref:"attr:RelativeDateItem.yearsFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"year\".",
        name:"yearsFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N years from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Menu.itemClick":{
        ref:"method:Menu.itemClick",
        flags:"A",
        description:"          Executed when a menu item with no click handler is clicked by the user. This\n          itemClick handler must be specified as a function. It is passed an item parameter that\n          is a reference to the clicked menu item.\n\n",
        name:"itemClick",
        seeAlso:[
        ],
        params:[
            {
                description:"pointer to the item in question",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"object"
            },
            {
                description:"Index of the column clicked by the user. May be null if                                  this menu item was activated in response to a keyboard event.",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"false if event processing should be stopped, true to continue",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('menuColumns')}"
        ],
        definingClass:"class:Menu"
    },
    "class:SchemaSet":{
        methods:[
            "method:SchemaSet.getSchema"
        ],
        ref:"class:SchemaSet",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:SchemaSet.get"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:SchemaSet.schemaNamespace"
        ],
        description:"A set of schema derived from the &lt;xsd:schema&gt; element in a WSDL or XML schema file\n loaded by ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadWSDL')} or ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')}.",
        name:"SchemaSet",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Canvas.locatePeersType":{
        ref:"attr:Canvas.locatePeersType",
        flags:"IRWA",
        description:"${isc.DocUtils.linkForRef('type:LocatorTypeStrategy')} to use when finding peers of this canvas.",
        name:"locatePeersType",
        seeAlso:[
        ],
        valueType:"LocatorTypeStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "autoTest"
        ]
    },
    "method:DataBoundComponent.addFormulaField":{
        ref:"method:DataBoundComponent.addFormulaField",
        flags:"",
        description:" Convenience method to display a ${isc.DocUtils.linkForRef('class:FormulaBuilder')} to create a new Formula Field.  This \n is equivalent to calling ${isc.DocUtils.linkForRef('method:DataBoundComponent.editFormulaField','editFormulaField()')} with \n no parameter.\n\n",
        name:"addFormulaField",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "formulaFields"
        ]
    },
    "attr:XORGateway.nextElement":{
        ref:"attr:XORGateway.nextElement",
        flags:"IR",
        description:"ID of the next ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} or {process.elements,element} to\n procede to if the criteria match the process state.  If this gateway is part of a\n ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} and has a next element in the sequence,\n <code>nextElement</code> does not need to be specified.",
        name:"nextElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:XORGateway"
    },
    "method:CubeGrid.saveAllEdits":{
        ref:"method:CubeGrid.saveAllEdits",
        flags:"",
        description:" Save a number of outstanding edits for this CubeGrid. If no cells are specified, all \n outstanding edits will be saved\n",
        name:"saveAllEdits",
        seeAlso:[
        ],
        params:[
            {
                description:"optionally specify which cells to save. Each cell  should be specified as a 2 element array in the format <code>[rowNum,colNum]</code>.",
                optional:true,
                name:"cells",
                defaultValue:null,
                type:"array of 2-element arrays"
            },
            {
                description:"If specified this callback will be fired on a successful save  of the specified rows. Note that if there are no pending edits to be saved this callback will\n  not fire - you can check for this condition using ${isc.DocUtils.linkForRef('method:CubeGrid.hasChanges')} or \n  ${isc.DocUtils.linkForRef('method:CubeGrid.recordHasChanges')}.",
                optional:true,
                name:"saveCallback",
                defaultValue:null,
                type:"callback"
            }
        ],
        returns:{
            description:"true if a save has been initiated (at least one row had changes, passed                   client-side validation, and a save has been attempted).  False otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "method:ScriptTask.setOutputData":{
        ref:"method:ScriptTask.setOutputData",
        flags:"",
        description:" Set the task output as specified by ${isc.DocUtils.linkForRef('attr:Task.outputField')}.\n <P>\n NOTE: for an ${isc.DocUtils.linkForRef('attr:ScriptTask.isAsync','asychronous task')}, calling\n <code>setOutputData()</code> indicates the task is complete.  For a task with\n ${isc.DocUtils.linkForRef('attr:Task.outputFieldList','multiple outputs')}, call ${isc.DocUtils.linkForRef('method:ScriptTask.setOutputRecord')} instead.\n",
        name:"setOutputData",
        seeAlso:[
        ],
        params:[
            {
                description:"task output",
                optional:false,
                name:"taskOutput",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:ScriptTask",
        groups:[
            "taskIO"
        ]
    },
    "method:Canvas.dropOut":{
        ref:"method:Canvas.dropOut",
        flags:"A",
        description:"\n Executed when the dragged object is no longer over this drop target, including when the drag\n interaction is ending with a drop on this drop target. If you have set a visual indication \n in dropOver or dropMove, you should reset it to its normal state in dropOut.\n\n",
        name:"dropOut",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customDrag')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:ListGridField.showFileInline":{
        ref:"attr:ListGridField.showFileInline",
        flags:"IR",
        description:"For a field of type:\"imageFile\", indicates whether to stream the image and display it\n inline or to display the View and Download icons.",
        name:"showFileInline",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ListGrid.rowNumberStart":{
        ref:"attr:ListGrid.rowNumberStart",
        flags:"IRWA",
        description:"The number to start the row-count from - default value is 1.",
        name:"rowNumberStart",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowNumberField"
        ]
    },
    "method:TreeGrid.setData":{
        ref:"method:TreeGrid.setData",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('class:Tree')} object this TreeGrid will view and manipulate.\n\n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"Tree to show",
                optional:false,
                name:"newData",
                defaultValue:null,
                type:"Tree"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "group:sqlConnectionPooling":{
        ref:"group:sqlConnectionPooling",
        title:"SQL Connection Pooling",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"Many databases will automatically close inactive connections, which can interfere with\n connection pooling: if an application is not constantly using all of the connections in its\n pool, it may retrieve a closed connection from the pool.\n <P>\n In some cases you can disable the behavior of closing inactive connections.  For MySQL it's\n controlled by the\n <a href='http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_wait_timeout' target='_blank'>wait_timeout</a>\n setting in your my.cnf file).  However, this could potentially cause leaked connections if\n applications terminate without cleaning up their database connections.\n <P>\n Intelligent connection pools compensate for unexpectedly closed connections automatically:\n <ul>\n <li>J2EE containers generally implement internal keepalives or staleness checks - this is\n the preferred solution if available.  If using SQLDataSource, use JNDI-based\n configuration as described ${isc.DocUtils.linkForRef('group:adminConsole','here')}.\n <li>SQLDataSource uses DBCP (Apache Commons) pooling, which also compensates for connection\n closure automatically.  This is enabled by default with appropriate settings, but can be\n disabled system wide via setting <b>sql.pool.enabled</b> to false in\n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}, or\n disabled for a specific database configuration via <b>sql.<i>dbName</i>.pool.enabled</b>.\n The following properties can also be set on sql.pool / sql.<i>dbName</i>.pool and control\n same-named DBCP properties, however, it is not recommended to set these properties unless\n you have experience with DBCP and are troubleshooting a specific pool-related performance\n problem: testOnBorrow, testOnReturn, testWhileIdle, timeBetweenEvictionRunsMillis,\n minEvictableIdleTimeMillis, numTestsPerEvictionRun.\n <p>\n If you are trying to diagnose an issue related to SQL connection pooling, you can enable\n DEBUG logging for the following classes in <code>log4j.isc.config.xml</code> (see\n installation instructions for details about this file).  All of these classes are in package\n <code>com.isomorphic.sql</code>:\n <ul>\n <li> PoolableSQLConnectionFactory: logs connection creation, and whether or not the\n      connections are pooled\n <li> SQLConnectionManager: logs when connections are borrowed\n <li> SQLDriver: logs the hashCode of the connection when SQL statements are executed\n <li> SQLTransaction: logs transactional open, commit, rollback and close.\n </ul>\n <li>JPA/Hibernate: Hibernate's built-in connection pool is <b>not</b> intended for\n production use according to Hibernate's own documentation.  This includes using JPA with\n Hibernate as the provider. If you get dead connections during development you can disable\n Hibernate's built-in connection pool by setting \"hibernate.connection.pool_size\" to 0. For\n production use you must use production-ready connection pool libraries for example\n C3P0. Here are recommended settings for C3P0 properties:\n <ul>\n <li>c3p0.acquireRetryDelay=1000</li>\n <li>c3p0.acquireRetryAttempts=60</li>\n <li>c3p0.breakAfterAcquireFailure=false</li>\n </ul>\n </li>\n </ul>",
        name:"sqlConnectionPooling",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Canvas.hideComponentMask":{
        ref:"method:Canvas.hideComponentMask",
        flags:"",
        description:" Hide the ${isc.DocUtils.linkForRef('method:Canvas.showComponentMask','component level clickMask')} for this widget\n",
        name:"hideComponentMask",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:ListGridField.leaveHeaderMenuButtonSpace":{
        ref:"attr:ListGridField.leaveHeaderMenuButtonSpace",
        flags:"IWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, when auto-fitting fields to\n the title width via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} or ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')},\n should the button be sized such that there is enough space for the heeader menu button to\n show without covering the field title?\n <P>\n May be explicitly specified at the ${isc.DocUtils.linkForRef('attr:ListGridField.leaveHeaderMenuButtonSpace','field level')}\n or at the ${isc.DocUtils.linkForRef('attr:ListGrid.leaveHeaderMenuButtonSpace','grid level')}. If not explicitly\n specified space will be left for fields with\n ${isc.DocUtils.linkForRef('attr:ListGridField.align')} set to <code>\"left\"</code> or <code>\"right\"</code>, but not for\n fields with align set to <code>\"center\"</code>.",
        name:"leaveHeaderMenuButtonSpace",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "headerMenuButton"
        ]
    },
    "attr:ListGrid.detailDS":{
        ref:"attr:ListGrid.detailDS",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is true and ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')}\n is <code>\"related\"</code>, this property specifies the dataSource for the\n related records grid to be shown embedded in expanded records.\n <P>\n This property may also be specified on a per-record basis - see\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordDetailDSProperty')}",
        name:"detailDS",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DateChooser.showFiscalYearChooser":{
        ref:"attr:DateChooser.showFiscalYearChooser",
        flags:"IRW",
        description:"When set to true, show a button that allows the calendar to be navigated by fiscal year.",
        name:"showFiscalYearChooser",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DataSourceField.valueMapEnum":{
        ref:"attr:DataSourceField.valueMapEnum",
        flags:"IR",
        description:"Fully qualified Java className of an Enum that should be used to derive this field's\n ${isc.DocUtils.linkForRef('type:ValueMap')}.\n <P>\n This has the same behavior of auto-deriving a <code>valueMap</code> from a Java Enum as\n ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema')} except it applies only to one field.\n <P>\n If you enable <code>autoDeriveSchema</code> there is no need to set\n <code>valueMapEnum</code> for Enum fields unless you want to actually <i>override</i> the\n behavior to use a different Enum for the field (eg, a superclass Enum that is more\n restrictive).",
        name:"valueMapEnum",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:ListGrid.dragDataAction":{
        ref:"attr:ListGrid.dragDataAction",
        flags:"IRW",
        description:"Indicates what to do with data dragged into another DataBoundComponent. See\n          DragDataAction type for details.",
        name:"dragDataAction",
        seeAlso:[
        ],
        valueType:"DragDataAction",
        defaultValue:"Canvas.MOVE",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridsDragMove')}",
            "${isc.DocUtils.linkForExampleId('gridsDragCopy')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dragging"
        ]
    },
    "class:EdgedCanvas":{
        methods:[
        ],
        ref:"class:EdgedCanvas",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:EdgedCanvas.skinImgDir",
            "attr:EdgedCanvas.edgeImage",
            "attr:EdgedCanvas.edgeColor",
            "attr:EdgedCanvas.customEdges",
            "attr:EdgedCanvas.showCenter",
            "attr:EdgedCanvas.edgeSize",
            "attr:EdgedCanvas.edgeLeft",
            "attr:EdgedCanvas.edgeRight",
            "attr:EdgedCanvas.edgeTop",
            "attr:EdgedCanvas.edgeBottom",
            "attr:EdgedCanvas.edgeOffset",
            "attr:EdgedCanvas.edgeOffsetTop",
            "attr:EdgedCanvas.edgeOffsetBottom",
            "attr:EdgedCanvas.edgeOffsetLeft",
            "attr:EdgedCanvas.edgeOffsetRight",
            "attr:EdgedCanvas.centerBackgroundColor",
            "attr:EdgedCanvas.edgeStyleName",
            "attr:EdgedCanvas.addEdgeStyleSuffix"
        ],
        description:"EdgedCanvas acts as a decorative, image-based frame around another single Canvas.",
        name:"EdgedCanvas",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "imageEdges"
        ]
    },
    "attr:StateTask.failureElement":{
        ref:"attr:StateTask.failureElement",
        flags:"IR",
        description:"ID of the next sequence or element to proceed to if a failure condition arises, such as\n the output data not being convertible to the target ${isc.DocUtils.linkForRef('attr:StateTask.type')}.",
        name:"failureElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StateTask"
    },
    "attr:Window.canDragReposition":{
        ref:"attr:Window.canDragReposition",
        flags:"IRW",
        description:"If true, this Window may be moved around by the user by dragging on the Window header.  \n Note that if the header is not showing, the Window can't be drag-repositioned regardless\n of this setting.",
        name:"canDragReposition",
        seeAlso:[
            {
                ref:"attr:Window.showHeader",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "dragging"
        ]
    },
    "attr:ListGrid.hoverMode":{
        ref:"attr:ListGrid.hoverMode",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.showHoverComponents','showHoverComponents')} is true, the builtin mode\n to use when automatically creating a hover component for rows in this grid.\n <P>\n A number of builtin modes are provided - see ${isc.DocUtils.linkForRef('type:HoverMode')}.  You can also override\n ${isc.DocUtils.linkForRef('method:ListGrid.getCellHoverComponent','getCellHoverComponent()')} to provide a custom hover\n widget - in that case, this attribute is ignored.",
        name:"hoverMode",
        seeAlso:[
        ],
        valueType:"HoverMode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hoverComponents"
        ]
    },
    "attr:Scrollbar.autoEnable":{
        ref:"attr:Scrollbar.autoEnable",
        flags:"IRWA",
        description:"If true, this scrollbar will automatically enable when the scrollTarget is\n scrollable (i.e., when the contents of the scrollTarget exceed its clip size in the\n direction relevant to this scrollbar), and automatically disable when the\n scrollTarget is not scrollable. Set this property to false for full manual control\n over a scrollbar's enabled state.",
        name:"autoEnable",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "method:Button.setAutoFit":{
        ref:"method:Button.setAutoFit",
        flags:"",
        description:" Setter method for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.autoFit')} property. Pass in true or false to turn\n autoFit on or off. When autoFit is set to <code>false</code>, canvas will be resized to\n it's previously specified size.\n",
        name:"setAutoFit",
        seeAlso:[
        ],
        params:[
            {
                description:"New autoFit setting.",
                optional:false,
                name:"autoFit",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Button"
    },
    "method:ListGrid.clearSort":{
        ref:"method:ListGrid.clearSort",
        flags:"A",
        description:"  This method clears any existing sort on this grid by calling ${isc.DocUtils.linkForRef('method:ListGrid.setSort')} with\n a null parameter.  The internal list of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s is removed and the grid is\n unsorted.\n",
        name:"clearSort",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Canvas.resizeTo":{
        ref:"method:Canvas.resizeTo",
        flags:"",
        description:"\t\t\tResizes the widget to the specified width and height (moves the right and/ or bottom\n          sides of the widget). The width and height parameters can be expressed as a percentage\n          of viewport size or as the number of pixels.\n",
        name:"resizeTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new width for canvas.",
                optional:true,
                name:"width",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new height for canvas",
                optional:true,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether the size actually changed",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('resize')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:ListGrid.headerMenuButtonHeight":{
        ref:"attr:ListGrid.headerMenuButtonHeight",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, this property governs the height of the\n auto-generated <code>headerMenuButton</code>",
        name:"headerMenuButtonHeight",
        seeAlso:[
        ],
        valueType:"measure",
        defaultValue:"\"100%\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "attr:DateChooser.prevMonthIconHeight":{
        ref:"attr:DateChooser.prevMonthIconHeight",
        flags:"IR",
        description:"Height of the icon for the previous month button",
        name:"prevMonthIconHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:Canvas.getInnerHTML":{
        ref:"method:Canvas.getInnerHTML",
        flags:"A",
        description:" Return the inner HTML for this canvas. Called when the canvas is drawn or redrawn;\n override to customize.\n\n",
        name:"getInnerHTML",
        seeAlso:[
        ],
        returns:{
            description:"HTML contents of this canvas",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "method:Gauge.setLabelSuffix":{
        ref:"method:Gauge.setLabelSuffix",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Gauge.labelSuffix','labelSuffix')} property and re-creates all sector labels.\n\n",
        name:"setLabelSuffix",
        seeAlso:[
        ],
        params:[
            {
                description:"the new label suffix.",
                optional:false,
                name:"labelSuffix",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:DateChooser.nextMonthIconRTL":{
        ref:"attr:DateChooser.nextMonthIconRTL",
        flags:"IRW",
        description:"Icon for the next month button",
        name:"nextMonthIconRTL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:SplitPane.pageOrientation":{
        ref:"attr:SplitPane.pageOrientation",
        flags:"IRW",
        description:"Current ${isc.DocUtils.linkForRef('type:PageOrientation')}.  The default behavior of the <code>SplitPane</code> is to\n register for orientation change notifications from the device (see\n ${isc.DocUtils.linkForRef('classMethod:Page.getOrientation')}) and automatically change orientation based on the\n ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','type of device')}.\n <p>\n You can instead set a specific value for <code>pageOrientation</code> if you only want to\n use a specific layout, and not respond to orientation information from the device.",
        name:"pageOrientation",
        setter:[
            "setPageOrientation"
        ],
        seeAlso:[
        ],
        valueType:"PageOrientation",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:DetailViewer.exportClientData":{
        ref:"method:DetailViewer.exportClientData",
        flags:"",
        description:" Exports this component's data with client-side formatters applied, so is suitable for direct\n display to users.  See ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')} for details of the general \n requirements and restrictions when exporting client data.\n <p>\n The following notes apply when exporting client data from DetailViewers:<ul>\n <li>Data is exported in \"grid\" format, with each record shown in a single row and each \n     column representing a single field. This is quite different from the way DetailViewers\n     display records in the browser</li>\n </ul>\n <P>\n If your detailViewer has custom formatters, formatted values will be exported by default, with\n HTML normalized to text where possible.  Since some levels of HTML normalizing aren't \n possible, this may result in missing or incorrect export values.  In this case, you have \n two possible approaches:<ul>\n <li>Set ${isc.DocUtils.linkForRef('attr:DetailViewerField.exportRawValues','exportRawValues')} on the field.  This will export\n     the raw underlying value of the field; your formatter will not be called</li>\n <li>Have your formatter call ${isc.DocUtils.linkForRef('method:DetailViewer.isExportingClientData','isExportingClientData()')}\n     and perform whatever alternative formatting you require if that method returns true</li>\n </ul>\n",
        name:"exportClientData",
        seeAlso:[
            {
                ref:"method:ListGrid.exportClientData",
                description:null
            }
        ],
        params:[
            {
                description:"Request properties for the export.  Note that specifying ${isc.DocUtils.linkForRef('attr:DSRequest.exportData','exportData')} on the request properties\n  allows the developer to pass in an explicit data set to export.",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"Optional callback.  If  you specify ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient','exportToClient')}: false in the request\n  properties, this callback will fire after export completes.  Otherwise the callback will\n  fire right before the download request is made to the server.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"RPCCallback"
            }
        ],
        type:"method",
        definingClass:"class:DetailViewer"
    },
    "attr:Toolbar.buttonDefaults":{
        ref:"attr:Toolbar.buttonDefaults",
        flags:"IRWA",
        description:"Settings to apply to all buttons of a toolbar. Properties that can be applied to\n button objects can be applied to all buttons of a toolbar by specifying them in\n buttonDefaults using the following syntax:<br>\n <code>buttonDefaults:{property1:value1, property2:value2, ...}</code><br>\n See the Button Widget Class for standard button properties.",
        name:"buttonDefaults",
        seeAlso:[
            {
                ref:"class:Button",
                description:null
            }
        ],
        valueType:"object",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:Toolbar",
        groups:[
            "appearance"
        ]
    },
    "attr:FilterBuilder.matchAnyTitle":{
        ref:"attr:FilterBuilder.matchAnyTitle",
        flags:"IR",
        description:"Title for the \"Match Any\" (or) operator\n when using ${isc.DocUtils.linkForRef('type:TopOperatorAppearance','topOperatorAppearance')}:\"radio\".",
        name:"matchAnyTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Match Any\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "type:DrawPosition":{
        ref:"type:DrawPosition",
        values:[
            {
                description:"insert before the target element",
                value:"\"beforeBegin\""
            },
            {
                description:"insert as the target element's first child",
                value:"\"afterBegin\""
            },
            {
                description:"insert as the target element's last child",
                value:"\"beforeEnd\""
            },
            {
                description:"insert after the target element",
                value:"\"afterEnd\""
            },
            {
                description:"replace the target element",
                value:"\"replace\""
            }
        ],
        description:null,
        name:"DrawPosition",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ListGrid.animateFolderEffect":{
        ref:"attr:ListGrid.animateFolderEffect",
        flags:"IRW",
        description:"When animating folder opening / closing, this property can be set to apply an\n animated acceleration effect. This allows the animation speed to be \"weighted\", for\n example expanding or collapsing at a faster rate toward the beginning of the animation\n than at the end.\n <P>\n For a ListGrid, this property applies when ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grouping')} is enabled.",
        name:"animateFolderEffect",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "animation"
        ]
    },
    "attr:FormItem.showFocusedIcons":{
        ref:"attr:FormItem.showFocusedIcons",
        flags:"IRWA",
        description:"If we're showing icons, should we change their image source to the appropriate\n  <i>focused</i>  source when this item has focus?  Can be overridden on a per\n  icon basis by the formItemIcon <code>showFocused</code> property.",
        name:"showFocusedIcons",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:Menu.showIcons":{
        ref:"attr:Menu.showIcons",
        flags:"IRW",
        description:"A boolean, indicating whether the checkmark/custom icon column should be displayed.",
        name:"showIcons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:Slider.setThumbSrc":{
        ref:"method:Slider.setThumbSrc",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.thumbSrc')} property of the slider\n\n",
        name:"setThumbSrc",
        seeAlso:[
        ],
        params:[
            {
                description:"new thumbSrc",
                optional:false,
                name:"newSrc",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:PortalLayout.rowLayout":{
        ref:"attr:PortalLayout.rowLayout",
        flags:"A",
        description:"Automatically generated vertical ${isc.DocUtils.linkForRef('class:Layout')} used to create columns of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} via\n ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')}. Since this is an ${isc.DocUtils.linkForRef('type:AutoChild')}, you can use \n rowLayoutDefaults and rowLayoutProperties to customize the layout used to contain the rows.\n <p>\n The rowLayout is the actual container for ${isc.DocUtils.linkForRef('attr:PortalLayout.row','rows')} of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}. See ${isc.DocUtils.linkForRef('attr:PortalLayout.column','column')} for\n the column as a whole, which may include a menu as well (depending on ${isc.DocUtils.linkForRef('attr:PortalLayout.showColumnMenus','showColumnMenus')}).\n If you want to style the columns as a whole,\n use columnDefaults or columnProperties, but if you want to style the layout that actually contains the\n rows, use rowLayoutDefaults or rowLayoutProperties.",
        name:"rowLayout",
        seeAlso:[
            {
                ref:"attr:PortalLayout.rowLayout",
                description:null
            },
            {
                ref:"attr:PortalLayout.row",
                description:null
            }
        ],
        valueType:"MultiAutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PortalLayout"
    },
    "attr:RelativeDateItem.rangePosition":{
        ref:"attr:RelativeDateItem.rangePosition",
        flags:"IRWA",
        description:"Does this items relative date value refer to the start or end of the chosen date? Useful\n when using this item to generate filter criteria, such as the from or to value for an\n inclusive range.\n <P>\n If unset \"start\" is assumed.",
        name:"rangePosition",
        seeAlso:[
            {
                ref:"attr:RelativeDateItem.operator",
                description:null
            },
            {
                ref:"attr:RelativeDateItem.rangeRoundingGranularity",
                description:null
            }
        ],
        valueType:"RelativeDateRangePosition",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:CubeGrid.getEditedCell":{
        ref:"method:CubeGrid.getEditedCell",
        flags:"",
        description:" Returns the current value of a cell. If the cell has an outstanding edit value, this will\n be returned, otherwise the underlying value of the record will be returned.\n\n",
        name:"getEditedCell",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum of the record being edited, or an Object                                      containing values for all the record's primary keys",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"number | Object"
            },
            {
                description:"colNum of the cell. Only required if the first parameter is                              a rowNum",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Current edit value, or underlying value for the cell.",
            type:"any"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "method:TreeGrid.exportClientData":{
        ref:"method:TreeGrid.exportClientData",
        flags:"",
        description:" Exports this component's data with client-side formatters applied, so is suitable for direct\n display to users.  See ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')} for details of the general \n requirements and restrictions when exporting client data.\n <p>\n The following notes apply when exporting client data from TreeGrids:<ul>\n <li>Export only works correctly if you specify ${isc.DocUtils.linkForRef('attr:TreeGrid.fields','fields')}; if you allow it to\n     generate a ${isc.DocUtils.linkForRef('attr:TreeGrid.createDefaultTreeField','default field')}, nothing will be exported</li>\n <li>Only visible nodes are exported; if you close a node, its children are not exported \n     even if they are loaded and known to the client</li>\n <li>Tree nodes are exported as a flat list, in the same order they are displayed in the \n     TreeGrid</li>\n </ul>\n <P>\n If your TreeGrid has custom formatters, formatted values will be exported by default, with\n HTML normalized to text where possible.  Since some levels of HTML normalizing aren't \n possible, this may result in missing or incorrect export values.  In this case, you have \n two possible approaches:<ul>\n <li>Set ${isc.DocUtils.linkForRef('attr:ListGridField.exportRawValues','exportRawValues')} on the field.  This will export\n     the raw underlying value of the field; your formatter will not be called</li>\n <li>Have your formatter call ${isc.DocUtils.linkForRef('method:TreeGrid.isExportingClientData','isExportingClientData()')}\n     and perform whatever alternative formatting you require if that method returns true</li>\n </ul>\n",
        name:"exportClientData",
        seeAlso:[
            {
                ref:"method:ListGrid.exportClientData",
                description:null
            }
        ],
        params:[
            {
                description:"Request properties for the export.  Note that specifying ${isc.DocUtils.linkForRef('attr:DSRequest.exportData','exportData')} on the request properties\n  allows the developer to pass in an explicit data set to export.",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"Optional callback.  If  you specify ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient','exportToClient')}: false in the request\n  properties, this callback will fire after export completes.  Otherwise the callback will\n  fire right before the download request is made to the server.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"RPCCallback"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:FilterBuilder.radioOptions":{
        ref:"attr:FilterBuilder.radioOptions",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:FilterBuilder.topOperatorOptions')}.",
        flags:"IR",
        description:"Logical operators to allow if we have a ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')} of \"radio\".",
        name:"radioOptions",
        seeAlso:[
        ],
        valueType:"Array of OperatorId",
        defaultValue:"[\"and\", \"or\", \"not\"]",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "object:FormItemEventInfo":{
        methods:[
        ],
        ref:"object:FormItemEventInfo",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/DynamicForm"
        ],
        attrs:[
            "attr:FormItemEventInfo.item",
            "attr:FormItemEventInfo.overItem",
            "attr:FormItemEventInfo.overTitle",
            "attr:FormItemEventInfo.icon"
        ],
        description:"An object containing details for mouse events occurring over a FormItem.",
        name:"FormItemEventInfo",
        seeAlso:[
        ],
        type:"object"
    },
    "method:TimeItem.setMilliseconds":{
        ref:"method:TimeItem.setMilliseconds",
        flags:"A",
        description:" Set the milliseconds value of this TimeItem.\n",
        name:"setMilliseconds",
        seeAlso:[
        ],
        params:[
            {
                description:"new milliseconds value for this TimeItem.",
                optional:false,
                name:"milliseconds",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:FormItem.filterLocally":{
        ref:"attr:FormItem.filterLocally",
        flags:"IRA",
        description:"If this form item is mapping data values to a display value by fetching records from a \n dataSource (see ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}, ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} \n and ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues')}), setting this property to true ensures that when\n the form item value is set, entire data-set from the dataSource is loaded at once and \n used as a valueMap, rather than just loading the display value for the current value.\n This avoids the need to perform fetches each time setValue() is called with a new value.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:PickList.filterLocally')} for behavior on form items such as SelectItems\n that show pick-lists.",
        name:"filterLocally",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "method:CubeGrid.getSelectedCellIds":{
        ref:"method:CubeGrid.getSelectedCellIds",
        flags:"",
        description:"  Returns an array of the IDs of all selected cell records.\n\n  <br><i>methodType</i> getter\n",
        name:"getSelectedCellIds",
        seeAlso:[
        ],
        returns:{
            description:"array of the selected cell IDs",
            type:"Array of String"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Canvas.matchElement":{
        ref:"attr:Canvas.matchElement",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.htmlElement')} is specified, should this canvas initially be drawn\n at the same dimensions as the htmlElement?<br>\n Note: setting this property will not force the canvas to resize if the element\n subsequently resizes (for example due to page reflow).",
        name:"matchElement",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:DSRequest.exportFooter":{
        ref:"attr:DSRequest.exportFooter",
        flags:"IR",
        description:"Optional text to appear at the end of the file.",
        name:"exportFooter",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:ListGrid.filterLocalData":{
        ref:"attr:ListGrid.filterLocalData",
        flags:"IRW",
        description:"If this grid has its ${isc.DocUtils.linkForRef('method:ListGrid.setData','data property')} set to a static array\n of records, should ${isc.DocUtils.linkForRef('method:ListGrid.filterData')} filter this array?\n If this property is set to true, the local data array will be filtered according to\n the specified criteria, and the results displayed. If false, a normal databound\n fetch will occur, retriving records that match the specified criteria from this\n component's ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')}.\n <P>\n If this property is not explicitly set, default behavior will filter against the\n dataSource unless the grid has a specified ${isc.DocUtils.linkForRef('type:DataPath','dataPath')}, in which case\n filtering will occur locally.\n <P>\n Note that a specified ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')} is required for filtering to occur\n even when filtering a local data array.",
        name:"filterLocalData",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:List.getValueMap":{
        ref:"method:List.getValueMap",
        flags:"",
        description:" Get a map of the form <code>{ item[idField] -&gt; item[displayField] }</code>, for all \n items in the list.  Note that if more than one item has the same <code>idProperty</code>, \n the value for the later item in the list will clobber the value for the earlier item.\n\n",
        name:"getValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"Property to use as ID (data value) in the valueMap",
                optional:false,
                name:"idField",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Property to use a display value in the valueMap",
                optional:false,
                name:"displayField",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"valueMap object",
            type:"object"
        },
        type:"method",
        definingClass:"interface:List"
    },
    "attr:RelativeDateItem.endDate":{
        ref:"attr:RelativeDateItem.endDate",
        flags:"IRW",
        description:"Maximum date the selectors will allow the user to pick.\n <P>\n See ${isc.DocUtils.linkForRef('attr:DateItem.startDate')} for details on how this restriction works.",
        name:"endDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"12/31/2020",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.recordClick":{
        ref:"method:ListGrid.recordClick",
        flags:"",
        description:" Executed when the listGrid receives a 'click' event on an enabled, non-separator\n record. The default implementation does nothing -- override to perform some action\n when any record or field is clicked.<br>\n A record event handler can be specified either as\n a function to execute, or as a string of script to evaluate. If the handler is defined\n as a string of script, all the parameters below will be available as variables for use\n in the script.<br>\n To do something specific if a particular field is clicked, add a recordClick\n method or string of script to that field (same parameters) when you're setting up\n the list.<br>\n <b>Notes:</b><ul>\n <li>This will not be called if the click is below the last item of the list.</li>\n <li>This method is called from the default implementation of\n ${isc.DocUtils.linkForRef('method:ListGrid.rowClick')}, so if that method is overridden\n this method may not be fired.</li></ul>\n\n",
        name:"recordClick",
        seeAlso:[
            {
                ref:"method:ListGrid.rowClick",
                description:null
            }
        ],
        params:[
            {
                description:"the listGrid that contains the click event",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"ListGrid"
            },
            {
                description:"the record that was clicked on",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"number of the record clicked on in the current set of                                  displayed records (starts with 0)",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the field that was clicked on (field definition)",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"number of the field clicked on in the listGrid.fields                                  array",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"value of the cell (after valueMap, etc. applied)",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"raw value of the cell (before valueMap, etc applied)",
                optional:false,
                name:"rawValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"return false to cancel default behavior",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:Menu.setItemTitle":{
        ref:"method:Menu.setItemTitle",
        flags:"",
        description:" Sets the title of a particular menu item to the string specified by newTitle and\n redraws the menu if necessary.\n\n",
        name:"setItemTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"MenuItem in question, or it's index",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem or number"
            },
            {
                description:"new title",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if the title was changed, and false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Menu"
    },
    "attr:ServerObject.attributeScope":{
        ref:"attr:ServerObject.attributeScope",
        flags:"IR",
        description:"Specifies the scope in which the DMI instance is to be looked up.  Valid values are: \n <code>\"request\"</code>, <code>\"session\"</code>, and <code>\"application\"</code>.  If\n <code>attributeScope</code> is left out of the <code>ServerObject</code> definition, then\n all scopes are searched in the order in which they are listed above.\n <p>\n This attribute is consulted only when the value of ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')} is\n <code>\"attribute\"</code>.",
        name:"attributeScope",
        seeAlso:[
            {
                ref:"attr:ServerObject.attributeName",
                description:null
            },
            {
                ref:"attr:ServerObject.lookupStyle",
                description:null
            }
        ],
        valueType:"\"request\"|\"session\"|\"application\"",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "classAttr:RPCRequest.useCursorTracker":{
        ref:"classAttr:RPCRequest.useCursorTracker",
        flags:"IRW",
        description:"If true, an image is shown to the right of the cursor when ${isc.DocUtils.linkForRef('attr:RPCRequest.promptStyle')} is\n set to \"cursor\", otherwise the cursor itself is modified via css to the value of\n ${isc.DocUtils.linkForRef('attr:RPCRequest.promptCursor')}.  The default is platform-dependent.  In Safari, IE 5.5 and\n Firefox 1.0 the default is true, on all other platforms it is false.  The reason for this\n split is that the above browsers require that the cursor move before CSS settings are\n re-evaluated - this means the progress cursor can stick until the user moves the mouse.\n <p>\n If left unspecified, the default value is set by ${isc.DocUtils.linkForRef('classAttr:RPCManager.useCursorTracker')}.",
        name:"useCursorTracker",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.useCursorTracker",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"platform-dependent",
        type:"classAttr",
        definingClass:"class:RPCRequest",
        groups:[
            "rpcPrompt"
        ]
    },
    "type:XPathExpression":{
        ref:"type:XPathExpression",
        description:"A standard XPath expression as a string. To learn about XPath, try the following search:\n <a href=\"http://www.google.com/search?q=xpath+tutorial\" target=\"_blank\"\n >http://www.google.com/search?q=xpath+tutorial</a>",
        name:"XPathExpression",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Applet.getPluginHandle":{
        ref:"method:Applet.getPluginHandle",
        flags:"A",
        description:" \n",
        name:"getPluginHandle",
        seeAlso:[
        ],
        returns:{
            description:"Returns a handle to the applet DOM element (valid only after the component has been drawn).",
            type:"DOMElement"
        },
        type:"method",
        definingClass:"class:Applet"
    },
    "method:StretchImgButton.getState":{
        ref:"method:StretchImgButton.getState",
        flags:"",
        description:" Return the state of this StatefulCanvas\n",
        name:"getState",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"State"
        },
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "method:DataSource.fetchData":{
        ref:"method:DataSource.fetchData",
        flags:"",
        description:" Perform a \"fetch\" DataSource operation against this DataSource, sending search criteria\n and retrieving matching records.\n <P>\n <b>NOTE:</b> do not attempt to override this method to create a custom DataSource.  For\n a server-side custom DataSource, use the ${isc.DocUtils.linkForRef('attr:DataSource.serverConstructor')} attribute,\n and the ${isc.DocUtils.linkForExampleId('customDataSource', 'Custom DataSource samples')}.  For a\n client-side custom DataSource, see ${isc.DocUtils.linkForRef('attr:DataSource.dataProtocol','dataProtocol:\"custom\"')}.\n <P>\n In contrast to ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}, which creates a ${isc.DocUtils.linkForRef('class:ResultSet')} to manage\n the returned data, calling <code>dataSource.fetchData()</code> provides the returned\n data in the callback as a \n <smartclient>simple JavaScript Array of JavaScript Objects.</smartclient>\n <smartgwt>RecordList or simple Array of Record objects.</smartgwt>  Calling\n <code>dataSource.fetchData()</code> does not automatically update any visual components or\n caches: code in the callback passed to <code>fetchData()</code> decides what to do with\n the returned data. \n <P>\n For example, given a ListGrid \"myGrid\" and a DataSource \"employees\", the following code\n would populate \"myGrid\" with data fetched from the DataSource:\n <pre>\n    <smartclient>isc.DataSource.get(\"employees\").fetchData(null, \"myGrid.setData(data)\");</smartclient>\n    <smartgwt>DataSource.get(\"employees\").fetchData(null, new DSCallback() {\n        public void execute(DSResponse response, Object rawData, DSRequest request) {\n            myGrid.setData(response.getData());\n        }\n    });</smartgwt>\n </pre>\n Unlike calling <code>myGrid.fetchData()</code>, which creates a ${isc.DocUtils.linkForRef('class:ResultSet')}, the\n data provided to the grid is \"disconnected\" data, unmanaged by SmartClient's databinding\n facilities and safe to directly modify.  This is useful when, for example, a ListGrid is\n being used as a more sophisticated version of HTML's multi-select component.\n <P>\n Disconnected datasets may be used to populate various visual components.  For example,\n while an individual FormItem can be configured to fetch\n ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} options from a DataSource via the\n ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')} property, the following code shows\n storing a dataset to derive valueMaps from later:\n <pre>\n    <smartclient>\n    isc.DataSource.get(\"countries\").fetchData(null, \"window.countries = data\");\n\n    ... later, a form is created dynamically ...\n\n    function showForm() {\n       isc.DynamicForm.create({\n           items : [\n              { name:\"country\", title:\"Pick Country\",\n                valueMap: window.countries.getValueMap(\"countryId\", \"countryName\")\n              },\n       ...\n    </smartclient>\n    <smartgwt>\n      // Assume GlobalStore.allCountries is a public static variable of type RecordList \n      DataSource.get(\"countries\").fetchData(null, new DSCallback(){\n         public void execute(DSResponse response, Object rawData, DSRequest request) {\n            GlobalStore.allCountries = response.getDataAsRecordList();\n         }\n      });\n      ... later, while a DynamicForm is being created ...    \n      SelectItem select = new SelectItem(\"country\", \"Pick Country\");\n      Map valueMap = GlobalStore.countries.getValueMap(\"countryId\", \"countryName\");\n      myItem.setValueMap(new LinkedHashMap(valueMap));\n    </smartgwt>\n </pre>\n <P>\n You can also create a ResultSet from the data retrieved from <code>fetchData()</code>,\n like so:\n <pre>\n    <smartclient>\n    isc.DataSource.get(\"countries\").fetchData(null,\n        function (dsResponse, data) {\n            isc.ResultSet.create({\n                dataSource:\"countries\",\n                allRows:data\n            })\n        }\n    )\n    </smartclient>\n    <smartgwt>\n    DataSource.get(\"countries\").fetchData(null, new DSCallback() {\n        public void execute(DSResponse response, Object rawData, DSRequest request) {\n            ResultSet rs = new ResultSet(DataSource.get(\"countries\"));\n            rs.setAllRows(response.getData());\n        }\n    });\n    </smartgwt>\n </pre>\n <P>\n This gives you a dataset that supports client-side filtering (via\n ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria','setCriteria()')}), can provide \n ${isc.DocUtils.linkForRef('method:ResultSet.getValueMap','filtered valueMaps')}, will \n ${isc.DocUtils.linkForRef('attr:ResultSet.disableCacheSync','automatically reflect updates')} to the DataSource made via\n other components, and can be re-used with multiple visual components.\n <P>\n See also ${isc.DocUtils.linkForRef('method:DataSource.getClientOnlyDataSource')} and ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} for\n similar capabilities for dealing with smaller datasets entirely within the browser, or working\n with modifiable caches representing subsets of the data available from a DataSource.\n <P>\n See also the server-side com.isomorphic.js.JSTranslater class in the\n ${isc.DocUtils.linkForDocNode('javaServerReference', 'Java Server Reference')} for other, similar approaches\n involving dumping data into the page during initial page load.  <b>Note:</b> care should\n be taken when using this approach.  Large datasets degrade the basic performance of some\n browsers, so use ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource','optionDataSource')} and similar\n facilities to manage datasets that may become very large.\n <P>\n <b>Data-Driven Visual Component Creation</b>\n <P>\n <smartclient>\n <code>DataSource.fetchData()</code> can also be used to create SmartClient components in\n a data-driven way.  Many properties on SmartClient visual components are configured via\n an Array of Objects - the same data format that <code>dataSource.fetchData()</code>\n returns.  These include ${isc.DocUtils.linkForRef('attr:ListGrid.fields')}, ${isc.DocUtils.linkForRef('attr:TabSet.tabs')},\n ${isc.DocUtils.linkForRef('attr:DynamicForm.items')}, ${isc.DocUtils.linkForRef('attr:Facet.values')} and even ${isc.DocUtils.linkForRef('attr:DataSource.fields')}.\n <P>\n For example, if you had a DataSource \"myFormFields\" whose fields included the\n basic properties of ${isc.DocUtils.linkForRef('class:FormItem','FormItems')} (name, title, type, etc), this example\n code would create a form based on stored field definitions, loaded from the\n \"myFormFields\" DataSource on the fly:\n <pre>\n    isc.DataSource.get(\"myFormFields\").fetchData(null, \n        \"isc.DynamicForm.create({ items:data })\"\n    )\n </pre>\n </smartclient>\n <smartgwt>\n <code>DataSource.fetchData()</code> can also be used to create Smart GWT components in a\n data-driven way.  For example, if you had a DataSource \"myGridFields\" whose fields included the\n basic properties of {@link com.smartgwt.client.widgets.grid.ListGridField} (name, title, type,\n etc), this example code would create a form based on stored field definitions, loaded from the\n \"myFormFields\" DataSource on the fly: \n <pre>    \n   DataSource.get(\"myFormFields\").fetchData(null, new DSCallback(){\n       public void execute(DSResponse response, Object rawData, DSRequest request) {\n          Record[] records = response.getData();\n          ListGridField[] fields = new ListGridField[records.length];\n          for (Record record in records) {\n              ListGridField field = new ListGridField();\n              field.setName(record.getAttribute(\"name\"));\n              field.setTitle(record.getAttribute(\"title\"));\n              field.setType(ListGridFieldType.valueOf(record.getAttribute(\"type\")));\n          }\n          ListGrid grid = new ListGrid();\n          grid.setFields(fields);\n       }\n   });\n </pre>  \n </smartgwt>\n This capability to dynamically create visual components from dynamically fetched data\n provides a foundation for creating interfaces that can be customized by end users.\n See also the server-side API com.isomorphic.datasource.DataSource.addDynamicDSGenerator() for\n dynamically creating DataSources supporting all server-side DataSource features, and\n ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')} for sharing field definitions across multiple DataSources.\n\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"search criteria",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "classAttr:Log.defaultPriority":{
        ref:"classAttr:Log.defaultPriority",
        flags:"IRWA",
        getter:[
            "getDefaultPriority"
        ],
        description:"Any logs below this priority will be suppressed, unless a more specific setting exists for\n the category.",
        name:"defaultPriority",
        setter:[
            "setDefaultPriority"
        ],
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        valueType:"LogPriority",
        defaultValue:"Log.WARN",
        type:"classAttr",
        definingClass:"class:Log"
    },
    "classAttr:Operators.notEqualTitle":{
        ref:"classAttr:Operators.notEqualTitle",
        flags:"IR",
        description:"Title for the \"notEqual\" operator",
        name:"notEqualTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"not equal\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ScriptTask.getInputData":{
        ref:"method:ScriptTask.getInputData",
        flags:"",
        description:" Get the inputs to this task as specified by ${isc.DocUtils.linkForRef('attr:Task.inputField')}.\n <P>\n For a task with a ${isc.DocUtils.linkForRef('attr:Task.inputFieldList','inputFieldList')}, use ${isc.DocUtils.linkForRef('method:ScriptTask.getInputRecord')}\n to get access to other inputs.\n",
        name:"getInputData",
        seeAlso:[
        ],
        returns:{
            description:"input data",
            type:"any"
        },
        type:"method",
        definingClass:"class:ScriptTask",
        groups:[
            "taskIO"
        ]
    },
    "attr:DateChooser.todayButtonTitle":{
        ref:"attr:DateChooser.todayButtonTitle",
        flags:"IRW",
        description:"Title for \"Today\" button.",
        name:"todayButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Today\"",
        type:"attr",
        definingClass:"class:DateChooser",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:CubeGrid.facetValueHoverWidth":{
        ref:"attr:CubeGrid.facetValueHoverWidth",
        flags:"IRWA",
        description:"If specified and <code>this.showHover</code> is true, this is the default width to apply\n to hover tips shown for facetValues. If unset, the hover canvas will be sized to \n <code>this.hoverWidth</code> if specified instead.",
        name:"facetValueHoverWidth",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverWidth",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "attr:Canvas.skinImgDir":{
        ref:"attr:Canvas.skinImgDir",
        flags:"IRWA",
        description:"Default directory for skin images (those defined by the class), relative to the\n Page-wide ${isc.DocUtils.linkForRef('classMethod:Page.getSkinDir','skinDir')}.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "images"
        ]
    },
    "attr:DetailViewerField.hiliteIconRightPadding":{
        ref:"attr:DetailViewerField.hiliteIconRightPadding",
        flags:"IRW",
        description:"How much padding should there be on the right of ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons','hilite icons')} \n for this field?\n Overrides ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconRightPadding')}",
        name:"hiliteIconRightPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "hiliting"
        ]
    },
    "classAttr:Dialog.NO_BUTTON_TITLE":{
        ref:"classAttr:Dialog.NO_BUTTON_TITLE",
        flags:"IRW",
        description:"Title for the <code>\"No\"</code> button.",
        name:"NO_BUTTON_TITLE",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"\"No\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.autoFitMaxHeight":{
        ref:"attr:ListGrid.autoFitMaxHeight",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData')} is set to <code>\"vertical\"</code> or <code>\"both\"</code> this\n property provides an upper limit on how far the ListGrid will expand vertically to accommodate\n its content. If content exceeds this height, scrollbars will be introduced as usual.\n In addition to this property, ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxRecords')} allows you to limit vertical\n expansion based on the number of rows to be rendered.",
        name:"autoFitMaxHeight",
        setter:[
            "setAutoFitMaxHeight"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "method:ImgButton.deselect":{
        ref:"method:ImgButton.deselect",
        flags:"",
        description:" Select this object.\n",
        name:"deselect",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "attr:RelativeDateItem.showPastOptions":{
        ref:"attr:RelativeDateItem.showPastOptions",
        flags:"IR",
        description:"Should we show time-unit options in the past? If set to false, for each \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.timeUnitOptions','timeUnitOption')} we will show only future options [for example\n \"N weeks from now\"].\n <P>\n Note: this does not change the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.presetOptions')}, which show up in \n addition to the time-unit options (<i>\"N days from now\"</i>, etc). The default\n preset options include both past and future presets so developers may wish to modify the\n presets to ensure only past options are available.",
        name:"showPastOptions",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:TimeItem.ampmItemProperties":{
        ref:"attr:TimeItem.ampmItemProperties",
        flags:"IRA",
        description:"Custom properties to apply to this timeItem's generated \n ${isc.DocUtils.linkForRef('attr:TimeItem.ampmItem','AM/PM picker')}.",
        name:"ampmItemProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:Calendar.getVisibleStartDate":{
        ref:"method:Calendar.getVisibleStartDate",
        flags:"",
        description:" Returns the first visible date in the currently selected calendar view.\n",
        name:"getVisibleStartDate",
        seeAlso:[
        ],
        returns:{
            description:"first visible date",
            type:"Date"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "group:sorting":{
        ref:"group:sorting",
        refs:[
            "method:ResultSet.sortByProperty",
            "method:Array.sortByProperty",
            "method:Array.unsort",
            "method:List.sortByProperty",
            "method:ListGridField.sortNormalizer",
            "method:ListGrid.headerClick",
            "method:ListGrid.sorterContextClick",
            "method:ListGrid.sorterClick",
            "method:ListGrid.unsort",
            "method:ListGrid.resort",
            "method:ListGrid.sort",
            "method:ListGrid.getSortField",
            "method:ListGrid.toggleSort",
            "method:ListGrid.getSort",
            "classMethod:Array.compareAscending",
            "classMethod:Array.compareDescending",
            "attr:ListGridField.canSort",
            "attr:ListGridField.sortDirection",
            "attr:ListGrid.canSort",
            "attr:ListGrid.selectHeaderOnSort",
            "attr:ListGrid.sortFieldNum",
            "attr:ListGrid.sortField",
            "attr:ListGrid.sortDirection",
            "attr:ListGrid.showSortArrow",
            "attr:ListGrid.initialSort",
            "attr:PickList.sortField",
            "attr:SelectItem.sortField",
            "attr:ComboBoxItem.sortField",
            "type:SortDirection",
            "type:SortArrow"
        ],
        description:null,
        name:"sorting",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.errorBarWidth":{
        ref:"attr:FacetChart.errorBarWidth",
        flags:"IR",
        description:"Width of the horizontal line of the \"T\"-shape portion of the error bar).",
        name:"errorBarWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:TileGrid.dragDataAction":{
        ref:"attr:TileGrid.dragDataAction",
        flags:"IRW",
        description:"Indicates what to do with data dragged into another DataBoundComponent. See\n          DragDataAction type for details.",
        name:"dragDataAction",
        seeAlso:[
        ],
        valueType:"DragDataAction",
        defaultValue:"Canvas.MOVE",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridsDragMove')}",
            "${isc.DocUtils.linkForExampleId('gridsDragCopy')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "dragging"
        ]
    },
    "attr:ListGrid.fieldPickerWindow":{
        ref:"attr:ListGrid.fieldPickerWindow",
        flags:"IR",
        description:"Instance of ${isc.DocUtils.linkForRef('class:FieldPickerWindow')} used if ${isc.DocUtils.linkForRef('attr:ListGrid.useAdvancedFieldPicker')} is set.",
        name:"fieldPickerWindow",
        seeAlso:[
        ],
        valueType:"AutoChild FieldPickerWindow",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.animateMoveAcceleration":{
        ref:"attr:Canvas.animateMoveAcceleration",
        flags:"IRWA",
        description:"Default acceleration effect for performing an animated move.  If unset, \n <code>this.animateAcceleration</code> will be used by default instead",
        name:"animateMoveAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "method:DateItem.parseEditorValue":{
        ref:"method:DateItem.parseEditorValue",
        flags:"A",
        description:" Convert a text value entered in this item's text field to a final data value \n for storage.\n <P>\n If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true, entirely custom date formatting and\n parsing logic may be applied via overrides to ${isc.DocUtils.linkForRef('method:DateItem.parseEditorValue')} and\n ${isc.DocUtils.linkForRef('method:DateItem.formatEditorValue')}. These methods apply to this FormItem only - \n system-wide Date and Datetime formatting and parsing may also be customized via\n the APIs on the ${isc.DocUtils.linkForRef('class:Date')} class. See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more\n on this.\n <P>\n Note: custom parsing for this item may also be achieved by modifying the\n ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat')}. This mechanism provides support many common date formats\n without the need for an entirely custom parser function.\n\n",
        name:"parseEditorValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value as entered by the user",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"string"
            },
            {
                description:"pointer to the dynamicForm containing this item",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Data value to store for this item.",
            type:"any"
        },
        type:"method",
        definingClass:"class:DateItem"
    },
    "method:ListGrid.hideField":{
        ref:"method:ListGrid.hideField",
        flags:"",
        description:" Force a field to be hidden.<br><br>\n\n NOTE: If a field.showIf expression exists, it will be destroyed.\n <P>\n Note also that if multiple fields are to be hidden it is more efficient to\n call ${isc.DocUtils.linkForRef('method:ListGrid.hideFields')} passing in the array of fields to hide rather than to call\n this method repeatedly.\n <P>\n See ${isc.DocUtils.linkForRef('attr:ListGrid.discardEditsOnHideField')} and ${isc.DocUtils.linkForRef('attr:ListGrid.dropCriteriaOnHideField')}\n for behavior when hiding fields while ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','editing')}.\n \n\n",
        name:"hideField",
        seeAlso:[
        ],
        params:[
            {
                description:"field to hide",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"String | ListGridField"
            },
            {
                description:"if passed, don't relayout non-explicit sized fields                                      to fit the available space",
                optional:true,
                name:"suppressRelayout",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('columnOrder')}"
        ],
        definingClass:"class:ListGrid"
    },
    "method:CubeGrid.resizeFacetValue":{
        ref:"method:CubeGrid.resizeFacetValue",
        flags:"",
        description:" Resizes all columns for the provided facetValueId, which must be a facetValueId from the\n innermost column facet.\n\n",
        name:"resizeFacetValue",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValueId of columns to be resized",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"column's new width",
                optional:false,
                name:"newWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:Canvas.hideUsingDisplayNone":{
        ref:"attr:Canvas.hideUsingDisplayNone",
        flags:"IRA",
        description:"When this widget is hidden (see ${isc.DocUtils.linkForRef('attr:Canvas.visibility')} and ${isc.DocUtils.linkForRef('method:Canvas.hide')}),\n should display:none be applied to the ${isc.DocUtils.linkForRef('method:Canvas.getOuterElement','outer element')}?\n <p>\n This setting is not supported for general use, but in certain cases, it has been shown\n that display:none is a work-around for browser bugs involving burn-through of iframes or\n plugins, where the content of the iframe or plugin may still be visible despite the\n containing widget being hidden.",
        name:"hideUsingDisplayNone",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "group:orientation":{
        ref:"group:orientation",
        refs:[
            "type:Orientation"
        ],
        name:"orientation",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:AdvancedHiliteEditor.filterBuilder":{
        ref:"attr:AdvancedHiliteEditor.filterBuilder",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:FilterBuilder')} for configuring the criteria for this Hilite.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>advancedHiliteEditor.filterBuilderProperties</code>.",
        name:"filterBuilder",
        seeAlso:[
        ],
        valueType:"AutoChild FilterBuilder",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "attr:GaugeSector.value":{
        ref:"attr:GaugeSector.value",
        flags:"IR",
        description:null,
        name:"value",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:GaugeSector"
    },
    "classAttr:Array.CASE_INSENSITIVE":{
        ref:"classAttr:Array.CASE_INSENSITIVE",
        flags:null,
        description:"This is a built-in comparator for the ${isc.DocUtils.linkForRef('method:Array.find','find')} and ${isc.DocUtils.linkForRef('method:Array.findIndex','findIndex')}\n methods of Array.  Passing this comparator to those methods will find case-insensitively,\n so, eg, <code>find(\"foo\", \"bar\")</code> would find objects with a \"foo\" property set to \n \"Bar\", \"BAR\" or \"bar\"",
        name:"CASE_INSENSITIVE",
        seeAlso:[
        ],
        valueType:"Function",
        defaultValue:"See below",
        type:"classAttr",
        definingClass:"object:Array"
    },
    "method:DynamicForm.editNewRecord":{
        ref:"method:DynamicForm.editNewRecord",
        flags:"",
        description:"\n Prepare to edit a new record by clearing the current set of values (or replacing them \n with initialValues if specified).\n <br>\n This method will also call ${isc.DocUtils.linkForRef('method:DynamicForm.setSaveOperationType')} to ensure\n subsequent calls to <code>saveData()</code> will use an <code>add</code> rather than\n an <code>update</code> operation.\n\n",
        name:"editNewRecord",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            }
        ],
        params:[
            {
                description:"initial set of values for the editor as a map of field names to their corresponding\n     values",
                optional:true,
                name:"initialValues",
                defaultValue:null,
                type:"Object | Record"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "classMethod:Page.getScrollLeft":{
        ref:"classMethod:Page.getScrollLeft",
        flags:"",
        description:"\t\tGet the amount that the browser window has been scrolled horizontally.\n",
        name:"getScrollLeft",
        seeAlso:[
        ],
        returns:{
            description:"horizontal scroll amount",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "sizing"
        ]
    },
    "class:SectionItem":{
        methods:[
            "method:SectionItem.isExpanded",
            "method:SectionItem.expandSection",
            "method:SectionItem.collapseSection"
        ],
        exampleConfig:"SectionItem.xml",
        ref:"class:SectionItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:SectionItem.defaultValue",
            "attr:SectionItem.itemIds",
            "attr:SectionItem.sectionVisible",
            "attr:SectionItem.sectionExpanded",
            "attr:SectionItem.sectionHeaderClass",
            "attr:SectionItem.canCollapse",
            "attr:SectionItem.canTabToHeader"
        ],
        description:"Header item for a collapsible section in a ${isc.DocUtils.linkForRef('class:DynamicForm')}.  Each <code>SectionItem</code>\n is associated with a number of other <code>item</code>s in the form, which will be shown or\n hidden as a group when the section is expanded or collapsed.  Clicking on a\n <code>SectionItem</code> will expand or collapse the section.\n <P>\n To make a form where only one section is expanded at a time, set\n ${isc.DocUtils.linkForRef('attr:DynamicForm.sectionVisibilityMode')} to \"mutex\".",
        name:"SectionItem",
        seeAlso:[
            {
                ref:"attr:DynamicForm.sectionVisibilityMode",
                description:null
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('formSections')}"
        ]
    },
    "attr:TabSet.canEditTabTitles":{
        ref:"attr:TabSet.canEditTabTitles",
        flags:"IRW",
        description:"If true, users can edit the titles of tabs in this TabSet when the \n ${isc.DocUtils.linkForRef('attr:TabSet.titleEditEvent','titleEditEvent')} fires.  You can override this behavior per tab \n with the ${isc.DocUtils.linkForRef('attr:Tab.canEditTitle')} property.\n <p>\n Note that this TabSet's ${isc.DocUtils.linkForRef('attr:TabSet.titleEditEvent','titleEditEvent')} must be set to a\n supported ${isc.DocUtils.linkForRef('type:TabTitleEditEvent')} in order for users to be able to edit the titles of\n tabs.",
        name:"canEditTabTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('userEditableTitles')}"
        ],
        definingClass:"class:TabSet"
    },
    "method:Layout.reflow":{
        ref:"method:Layout.reflow",
        flags:"A",
        description:" Layout members according to current settings.\n <P>\n Members will reflow automatically when the layout is resized, members resize, the list of\n members changes or members change visibility.  It is only necessary to manually call\n <code>reflow()</code> after changing settings on the layout, for example,\n <code>layout.reverseOrder</code>.\n\n",
        name:"reflow",
        seeAlso:[
        ],
        params:[
            {
                description:"reason reflow() had to be called (appear in logs if enabled)",
                optional:true,
                name:"reason",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:DateChooser.nextMonthButton":{
        ref:"attr:DateChooser.nextMonthButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} that shifts\n the calendar view forward by a month.",
        name:"nextMonthButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:TabSet.closeClick":{
        ref:"method:TabSet.closeClick",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')} is set, method fired when the user clicks the \"close\" icon for a\n tab.\n <P>\n Default implementation will remove the tab from the tabSet via ${isc.DocUtils.linkForRef('method:TabSet.removeTab')}.\n\n",
        name:"closeClick",
        seeAlso:[
        ],
        params:[
            {
                description:"tab to close",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:DetailViewer.timeFormatter":{
        ref:"attr:DetailViewer.timeFormatter",
        flags:"IRW",
        description:"Display format to use for fields specified as type 'time'.  May also be specified at \n the field level via ${isc.DocUtils.linkForRef('attr:DetailViewerField.timeFormatter')}.<br>\n If unset, time fields will be formatted based on the system wide \n ${isc.DocUtils.linkForRef('classMethod:Time.setNormalDisplayFormat')}",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "method:DataSourceField.getFieldValue":{
        ref:"method:DataSourceField.getFieldValue",
        flags:"A",
        description:" Function or JavaScript expression used to retrieve the field's value from the XML element or\n JSON record returned from a web service.\n <P>\n This is an advanced API for use when a ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath','valueXPath')} setting\n is insufficient to derive a field's value, yet an implementation of\n ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')} is overkill.\n\n",
        name:"getFieldValue",
        seeAlso:[
        ],
        params:[
            {
                description:"record object selected from web service response data                                      by ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','recordXPath')}",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Object or XMLElement"
            },
            {
                description:"default value derived by the method described in                    ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath')}",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"DataSourceField definition",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DataSourceField"
            },
            {
                description:"name of the DataSource field",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "clientDataIntegration"
        ]
    },
    "type:ArrowStyle":{
        ref:"type:ArrowStyle",
        values:[
            {
                description:"Solid triangle",
                value:"\"block\""
            },
            {
                description:"arrow rendered as an open triangle. Only applies to  ${isc.DocUtils.linkForRef('class:DrawLinePath','DrawLinePaths')} - for other items this will be treated as\n  <code>\"block\"</code>",
                value:"\"open\""
            },
            {
                description:"Don't render an arrowhead at all",
                value:"null"
            }
        ],
        description:"Supported styles for arrowheads",
        name:"ArrowStyle",
        seeAlso:[
        ],
        type:"type"
    },
    "class:ServiceTask":{
        methods:[
        ],
        ref:"class:ServiceTask",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:ServiceTask.dataSource",
            "attr:ServiceTask.operationType",
            "attr:ServiceTask.criteria",
            "attr:ServiceTask.values",
            "attr:ServiceTask.fixedCriteria",
            "attr:ServiceTask.fixedValues"
        ],
        description:"A ServiceTask is an element of a ${isc.DocUtils.linkForRef('class:Process')} which calls a DataSource operation, \n optionally using part of the ${isc.DocUtils.linkForRef('attr:Process.state','process state')} as inputs or storing outputs\n in the process state.\n <P>\n By default a ServiceTask takes the data indicated by ${isc.DocUtils.linkForRef('attr:Task.inputField')} and uses it as\n ${isc.DocUtils.linkForRef('attr:DSRequest.data')}.  This means the input data becomes ${isc.DocUtils.linkForRef('type:Criteria')} for a \"fetch\"\n operation, new record values for an \"add\" operation, etc.\n <P>\n Alternatively, you can set ${isc.DocUtils.linkForRef('attr:ServiceTask.criteria')} for a \"fetch\" operation, or\n ${isc.DocUtils.linkForRef('attr:ServiceTask.values')} for other operationTypes.  In both cases, you have the ability to\n use simple expressions like $input.<i>fieldName</i> to take portions of the input data and\n use it as part of the criteria or values.\n <P>\n As a special case, if the <code>inputField</code> is an atomic value (just a String or\n Number rather than a Record) and operationType is \"fetch\", it will be assumed to be value\n for the primary key field of the target DataSource if ${isc.DocUtils.linkForRef('attr:ServiceTask.criteria','criteria')}\n is not explicitly specified\n <P>\n OutputData and outputFieldList work as filters. You should determine which properties should\n be fetched into the process state. If you want to load all data without defining every\n property manually you can pass a name started with '$' and fetched record or records will be \n placed as a record or an array of records by the name without this specific symbol.\n <P>\n For example if you specify 'id' and 'name' in outputFieldList, only these properties will be\n fetched in the process state. If you pass '$record' in outputField a whole record will be \n stored in process state under the 'record' key. Also you can use javascript syntax there.\n For example '$record.item[0]'.",
        name:"ServiceTask",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:MultiComboBoxItem.autoFetchData":{
        ref:"attr:MultiComboBoxItem.autoFetchData",
        flags:"IR",
        description:"Should the MultiComboBoxItem fetch data from the ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.optionDataSource','data source')}\n immediately or wait until the user first opens the pickList.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"attr:ComboBoxItem.autoFetchData",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "method:ListGrid.rowEditorEnter":{
        ref:"method:ListGrid.rowEditorEnter",
        flags:"",
        description:" Callback fired when the user starts editing a new row.\n\n",
        name:"rowEditorEnter",
        seeAlso:[
            {
                ref:"method:ListGrid.editorEnter",
                description:null
            }
        ],
        params:[
            {
                description:"record for the cell being edited",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"edit values for the current row",
                optional:false,
                name:"editValues",
                defaultValue:null,
                type:"object"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:Class.setLogPriority":{
        ref:"method:Class.setLogPriority",
        flags:"",
        description:" Set the priority of messages that will be visible for some log category, when logged on\n this Class or Instance object.<br>\n If called with no category, this priority will be applied to every logged message on this\n object<br>\n To set the visible log priority for some category across the entire page, use\n <code>isc.Log.setPriority()</code> instead.\n",
        name:"setLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category for which the log priority will be updated. If not                          all logs on this canvas will be logged at the priority passed in.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"string"
            },
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:Calendar.canRemoveField":{
        ref:"attr:Calendar.canRemoveField",
        flags:"IR",
        description:"Name of the field on each ${isc.DocUtils.linkForRef('object:CalendarEvent')} that determines whether an event shows a\n remove button.",
        name:"canRemoveField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"canRemove\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:FormItem.dataPath":{
        ref:"attr:FormItem.dataPath",
        flags:"IR",
        getter:[
            "getDataPath"
        ],
        description:"dataPath for this item. Allows the user to edit details nested data structures in a\n flat set of form fields",
        name:"dataPath",
        seeAlso:[
        ],
        valueType:"DataPath",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:Canvas.mouseUp":{
        ref:"method:Canvas.mouseUp",
        flags:"A",
        description:"\n Executed when the left mouse is released on this widget.  No default implementation.\n\n",
        name:"mouseUp",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:Slider.setTrackWidth":{
        ref:"method:Slider.setTrackWidth",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.trackWidth')} property of the slider\n\n",
        name:"setTrackWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new trackWidth",
                optional:false,
                name:"newWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "method:WebService.getOutputHeaderSchema":{
        ref:"method:WebService.getOutputHeaderSchema",
        flags:"",
        description:" Get the schema for each part of the SOAP header for the output message of a given\n operation, as a mapping from part name to schema.  For example, given WSDL like:\n <pre>\n     &lt;soap:header part=\"SessionHeader\"/&gt;\n     &lt;soap:header part=\"CallOptions\"/&gt;\n </pre>\n The following schema would be returned:\n <pre>\n     { SessionHeader : <i>sessionHeaderPartSchema</i>,\n       CallOptions : <i>callOptionsPartSchema</i> }\n </pre>\n The schema are instances of ${isc.DocUtils.linkForRef('class:DataSource')} that can be inspected to discover the\n elements and types that are legal in that header part, and can construct a valid SOAP\n header part if ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')} is invoked.\n\n",
        name:"getOutputHeaderSchema",
        seeAlso:[
        ],
        params:[
            {
                description:"name of an operation from this web service",
                optional:false,
                name:"operationName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"mapping from partName to schema",
            type:"Object"
        },
        type:"method",
        definingClass:"class:WebService"
    },
    "attr:ListGrid.booleanImageWidth":{
        ref:"attr:ListGrid.booleanImageWidth",
        flags:"IRWA",
        description:"Width for the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')}, ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')}\n and ${isc.DocUtils.linkForRef('attr:ListGrid.booleanPartialImage')}.\n Note: If ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} is unset, the ${isc.DocUtils.linkForRef('attr:CheckboxItem.checkedImage')}\n will be used to indicate a true value in a boolean field. In this case this property is\n ignored in favor of ${isc.DocUtils.linkForRef('attr:CheckboxItem.valueIconWidth')}.",
        name:"booleanImageWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "object:FormItemIcon":{
        methods:[
            "method:FormItemIcon.click",
            "method:FormItemIcon.keyPress",
            "method:FormItemIcon.showIf"
        ],
        ref:"object:FormItemIcon",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items/FormItem"
        ],
        attrs:[
            "attr:FormItemIcon.baseStyle",
            "attr:FormItemIcon.name",
            "attr:FormItemIcon.src",
            "attr:FormItemIcon.showOver",
            "attr:FormItemIcon.showFocused",
            "attr:FormItemIcon.showRTL",
            "attr:FormItemIcon.showFocusedWithItem",
            "attr:FormItemIcon.neverDisable",
            "attr:FormItemIcon.disableOnReadOnly",
            "attr:FormItemIcon.tabIndex",
            "attr:FormItemIcon.width",
            "attr:FormItemIcon.height",
            "attr:FormItemIcon.prompt",
            "attr:FormItemIcon.hspace"
        ],
        description:"Form item icon descriptor objects used by Form Items to specify the appearance and\n  behavior of icons displayed after the item in the page flow.",
        name:"FormItemIcon",
        seeAlso:[
            {
                ref:"attr:FormItem.icons",
                description:null
            }
        ],
        type:"object",
        examples:[
            "${isc.DocUtils.linkForExampleId('formIcons')}"
        ],
        groups:[
            "formIcons"
        ]
    },
    "class:HiddenItem":{
        methods:[
        ],
        ref:"class:HiddenItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:HiddenItem.showTitle",
            "attr:HiddenItem.colSpan",
            "attr:HiddenItem.rowSpan"
        ],
        description:"HiddenItems track a value but have no visible appearance and do not take up space in the form\n layout.\n <P>\n When using SmartClient databinding it is usually not necessary to use a HiddenItem, since\n the DynamicForm will track values for which no actual form control exists, and will submit\n these 'extra' values when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is called.  HiddenItems only apply\n to forms that are submitted like ordinary HTML forms, via the\n ${isc.DocUtils.linkForRef('method:DynamicForm.submitForm')} method.",
        name:"HiddenItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.applyFormulaAfterSummary":{
        ref:"attr:ListGrid.applyFormulaAfterSummary",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.userFormula')} is set for some field, and this grid is showing\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary','group summaries')} or a\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','grid summary')}, this property determines what field value\n should be present in those summary rows. Should the field apply the user-formula to the\n calculated summary row, or should it apply a standard grid or group summary to the\n user-formula values displayed in the grid?\n <P>\n May be overridden at the field level via ${isc.DocUtils.linkForRef('attr:ListGridField.applyAfterSummary')}",
        name:"applyFormulaAfterSummary",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:CubeGrid.deselectFacetValues":{
        ref:"method:CubeGrid.deselectFacetValues",
        flags:"",
        description:" Deselect the header showing a given set of facet values.\n\n  <br><i>methodType</i> action\n",
        name:"deselectFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValues to deselect",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:Canvas.layoutChildren":{
        ref:"method:Canvas.layoutChildren",
        flags:"A",
        description:"\n <code>layoutChildren()</code> is where a Canvas should implement a sizing policy for it's\n Canvas children.  Since <code>layoutChildren</code> calls parentResized() on its children,\n ${isc.DocUtils.linkForRef('method:Canvas.parentResized')} is a good place for a child to implement a layout policy that\n can be used within any parent.\n <P>\n Recommended practice for a Canvas that manages Canvas children is to create those children\n without any initial coordinate or size settings and do all sizing when layoutChildren() is\n called.\n <P>\n layoutChildren() is always called at least once before children are drawn, and is called\n automatically whenever the viewport size changes (which includes both resizing and\n introduction/removal of scrolling).  layoutChildren() can also be manually invoked in any\n other component-specific situation which changes the layout.\n <P>\n NOTE: layoutChildren() may be called before draw() if a widget is resized before draw(), so\n be sure to avoid errors such as assuming that any children you automatically create have\n already been created.\n <P>\n NOTE: auto-sizing: layoutChildren() is also called once during the initial draw(), before\n children are drawn, with a \"reason\" of \"initial draw\".  During this invocation of\n layoutChildren() it is legal to directly draw children (call child.draw()), which is\n otherwise never allowed.  This allows a Canvas to implement an auto-sizing layout policy by\n drawing some children before deciding on the sizes of remaining children, which is far more\n efficient than drawing all children and resizing some of them after they are drawn.\n",
        name:"layoutChildren",
        seeAlso:[
        ],
        params:[
            {
                description:"reason why layoutChildren() is being called, passed when framework                        code invokes layoutChildren()",
                optional:false,
                name:"reason",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:Selection.selectList":{
        ref:"method:Selection.selectList",
        flags:"",
        description:" Select an array of items (subset of the entire list)\n",
        name:"selectList",
        seeAlso:[
        ],
        params:[
            {
                description:"array of objects to select",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"object[]"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "method:IMenuButton.setShowMenuBelow":{
        ref:"method:IMenuButton.setShowMenuBelow",
        flags:"",
        description:" Setter for the 'showMenuButtonBelow' property - determines whether the menu will be\n shown above or below the menubutton.\n",
        name:"setShowMenuBelow",
        seeAlso:[
        ],
        params:[
            {
                description:"True if the menu should be shown below the menubutton.",
                optional:false,
                name:"below",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:IMenuButton"
    },
    "method:PortalLayout.portletMinimized":{
        ref:"method:PortalLayout.portletMinimized",
        flags:"",
        description:" Notification method called after a portlet has been minimized (whether by\n user action or programmatically).\n\n",
        name:"portletMinimized",
        seeAlso:[
            {
                ref:"method:PortalLayout.willMinimizePortlet",
                description:null
            }
        ],
        params:[
            {
                description:"the Portlet which was minimized",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:FormItem.getIconWidth":{
        ref:"method:FormItem.getIconWidth",
        flags:"A",
        description:"\tTakes an icon definition object, and returns the width for that icon in px.\n",
        name:"getIconWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"icon definition object for this item.",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"width of the form item icon in px",
            type:"number"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "sizing"
        ]
    },
    "classMethod:Log.getLogPriorities":{
        ref:"classMethod:Log.getLogPriorities",
        flags:"",
        description:" Get all priority settings as an object mapping category names to priority levels.\n\n",
        name:"getLogPriorities",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional param to get priorities specific to                                            some ISC class or instance.",
                optional:true,
                name:"object",
                defaultValue:null,
                type:"Class or Instance object"
            },
            {
                description:"If this method is retrieving the priorities specific                                   to logging for some class or instance, this parameter\n                                  can be used to view only the overrides to the default\n                                  log priorities on this object.",
                optional:true,
                name:"overridesOnly",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"priority settings",
            type:"Object"
        },
        type:"classMethod",
        definingClass:"class:Log"
    },
    "method:StatefulCanvas.setBaseStyle":{
        ref:"method:StatefulCanvas.setBaseStyle",
        flags:"",
        description:" Sets the base CSS style.  As the component changes state and/or is selected, suffixes will be\n added to the base style.\n",
        name:"setBaseStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"new base style",
                optional:false,
                name:"style",
                defaultValue:null,
                type:"className"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas"
    },
    "attr:RecordEditor.baseStyle":{
        ref:"attr:RecordEditor.baseStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:GridRenderer.baseStyle','base cell style')} for this listGrid.\n If this property is unset, base style may be derived from ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')}\n or ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')} as described in\n ${isc.DocUtils.linkForRef('method:ListGrid.getBaseStyle')}.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"recordEditorCell\"",
        type:"attr",
        definingClass:"class:RecordEditor",
        groups:[
            "appearance"
        ]
    },
    "attr:TreeMenuButton.pathSeparatorString":{
        ref:"attr:TreeMenuButton.pathSeparatorString",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeMenuButton.showPath','showPath')} is true, this property specifies what will \n appear between the folders in the selected value's path.",
        name:"pathSeparatorString",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"&amp;nbsp;&amp;gt;&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:TreeMenuButton"
    },
    "classAttr:Canvas.loadingImageSize":{
        ref:"classAttr:Canvas.loadingImageSize",
        flags:"RWA",
        description:"Specifies the width and height of ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSrc')}.",
        name:"loadingImageSize",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"16",
        type:"classAttr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "classAttr:Operators.matchesPatternTitle":{
        ref:"classAttr:Operators.matchesPatternTitle",
        flags:"IR",
        description:"Title for the \"matchesPattern\" operator",
        name:"matchesPatternTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"matches pattern (exact case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FormItem.shouldStopKeyPressBubbling":{
        ref:"method:FormItem.shouldStopKeyPressBubbling",
        flags:"A",
        description:" Should some keypress event on this item be prevented from bubbling (such that\n the containing form and ancestors do not receive the event).\n <P>\n This method is called after standard item keypress handlers when the user presses\n a key while focused in this item. Returning true will suppress bubbling of the event\n to the containing form. This is useful to avoid having the form react to key\n events which \"have meaning\" to the focused item.\n <P>\n Default implementation varies by item type. In short character keys \n are suppressed for all editable fields, as are keys which will modify the \n current state of the field\n (\"Arrow\" keys for moving around free form text editors, etc).\n <P>\n <smartclient>\n Developers may override this method to allow the form to react to certain keypresses,\n for example allowing scrolling of the form when the user presses the arrow keys, \n but they should be aware that doing so could lead to confusing user experience\n if the keypress will also move the position of the caret within a text box (say).\n </smartclient>\n Note that when this method returns true, no ${isc.DocUtils.linkForRef('method:Canvas.keyPress','keyPress')} event\n will fire on the form for the key pressed. However developers will still receive the\n separate ${isc.DocUtils.linkForRef('method:DynamicForm.itemKeyPress')} event.\n",
        name:"shouldStopKeyPressBubbling",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the key pressed",
                optional:false,
                name:"keyName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"If this was a character key, this is the numeric value        for the character",
                optional:false,
                name:"characterValue",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"return true to prevent bubbling of the pressed key.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "group:servletDetails":{
        ref:"group:servletDetails",
        title:"The Core and Optional SmartClient servlets",
        treeLocation:[
            "Concepts/Deploying SmartClient"
        ],
        refs:[
        ],
        description:"The following is a description of the servlets and filters you'll find in the web.xml file\n contained in the smartclientRuntime and what they do:\n <p>\n <i>Core Functionality</i>\n <ul>\n <li>Init servlet - see the article on ${isc.DocUtils.linkForRef('group:serverInit','SmartClient Server Initialization</li>\\n <li>IDACall servlet - <b>required</b> for ${isc.DocUtils.linkForRef('group:dmiOverview','DMI\\')')}, built-in RPC operations and built-in DataSource\n operations to work.  All databound examples in the SDK use this servlet.  If you're planning on\n using a custom actionURL for all your RPC requests, then you don't need this servlet.\n <li>FileDownload servlet - required for serving the Isomorphic framework code compressed and with\n caching headers as well as for serving skin images with caching headers.  It is highly\n recommended that you use this for production but is not required. \n <li>PreCache servlet - loads resources into memory on container startup.  Not required, but if you\n exclude this servlet there may be a slow response to the very first request.\n <li>jsp-config section - the iscTaglib registration block is required to use\n &lt;isomorphic&gt; tags, and the *.isc and *.rpc mappings.  These are optional, if you want\n to use these as handy development tools.\n </ul>\n <p>\n <i>Optional Functionality</i>\n <ul>\n <li>RESTHandler servlet - handles SmartClient Server DataSource operations issued by \n REST clients: it's like IDACall, but for the REST protocol.  Typically,  the clients\n of this servlet would not be ordinary SmartClient/SmartGWT applications (though they \n could be), but other client technologies that need to access SmartClient DataSource \n operations as reusable services.  If you do not plan to connect to the server using the\n REST protocol, then you don't need this servlet.\n <li>AxisServlet - exposes all DataSource operations via a WSDL service described by \n SmartClientOperations.wsdl.  This is effectively the same as the RESTHandler servlet, but \n for SOAP clients.  If you do not plan to connect to the server using webservice protocols,\n then you don't need this servlet.\n <li>HttpProxy - used by the RPCManager when sending AJAX RPCs to a server other than the\n server that serves the main application page.  You need to install this servlet if, for\n example, your application will be querying web services exposed by servers other than the\n server that is serving the rest of the application.  See the javadoc for this servlet for\n various configuration options, such as how to restrict the URLs that are allowed to be\n proxied. \n <li>MessagingServlet - used by the realtime messaging system.  If you're planning\n on using this subsystem, you'll need this servlet.\n <li>CompressionFilter - required if you want to use dynamic compression of html and js\n files.\n <li>JSSyntaxScannerFilter - development tool that looks for trailing commas in JS\n source (scans html files for &lt;script&gt; tags and scans .js files in their entirety).\n This is a useful development tool, but should not be included in production.\n <li>NoCacheFilter - development tool that makes any content it intercepts non-cacheable in\n order to ensure developers are looking at the latest version of a file when modifying\n examples.  Not for production use.\n <li>DataSourceLoader - a servlet that returns the definition of one or more DataSources in\n JavaScript notation.  This servlet is provided as an alternative to using the \n <code>&lt;isomorphic:loadDS&gt;</code> JSP tag, and is particularly suitable in environments\n where JSP tags can't be used for some reason (such as with SmartGWT).  See \n ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','Creating DataSources')} for more details.\n <li>ScreenLoaderServlet - a servlet that returns the definition of one or more screens in\n JavaScript notation.</li>\n </ul>\n Note that not all of the servlets and filters listed under <i>Optional Functionality</i>\n above are present in the web.xml that ships with the smartclientRuntime - if you need to use\n any of these, copy their configuration from the web.xml available under the WEB-INF\n directory of smartclientSDK.  Other servlets, filters and configuration files from the\n smartclientSDK should not be copied to your deployment, simply because the SDK includes many\n developer tools that are not extensively audited from a security standpoint.",
        name:"servletDetails",
        seeAlso:[
        ],
        type:"group"
    },
    "class:ListGrid":{
        methods:[
            "method:ListGrid.fetchData",
            "method:ListGrid.exportData",
            "method:ListGrid.filterData",
            "method:ListGrid.fetchRelatedData",
            "method:ListGrid.clearCriteria",
            "method:ListGrid.getCriteria",
            "method:ListGrid.setCriteria",
            "method:ListGrid.invalidateCache",
            "method:ListGrid.willFetchData",
            "method:ListGrid.addData",
            "method:ListGrid.updateData",
            "method:ListGrid.removeSelectedData",
            "method:ListGrid.getSelection",
            "method:ListGrid.getSelectedRecord",
            "method:ListGrid.getSelectedRecords",
            "method:ListGrid.isSelected",
            "method:ListGrid.isPartiallySelected",
            "method:ListGrid.getExportBGColor",
            "method:ListGrid.getExportRowBGColor",
            "method:ListGrid.getExportColumnBGColor",
            "method:ListGrid.exportClientData",
            "method:ListGrid.isExportingClientData",
            "method:ListGrid.markForRedraw",
            "method:ListGrid.getVisibleRows",
            "method:ListGrid.getDrawnRows",
            "method:ListGrid.getCellStyle",
            "method:ListGrid.getCellCSSText",
            "method:ListGrid.refreshCellStyle",
            "method:ListGrid.cellOver",
            "method:ListGrid.rowOver",
            "method:ListGrid.cellOut",
            "method:ListGrid.rowOut",
            "method:ListGrid.cellHover",
            "method:ListGrid.cellValueHover",
            "method:ListGrid.rowHover",
            "method:ListGrid.cellHoverHTML",
            "method:ListGrid.cellValueHoverHTML",
            "method:ListGrid.cellContextClick",
            "method:ListGrid.rowContextClick",
            "method:ListGrid.cellMouseDown",
            "method:ListGrid.rowMouseDown",
            "method:ListGrid.cellMouseUp",
            "method:ListGrid.rowMouseUp",
            "method:ListGrid.cellClick",
            "method:ListGrid.cellDoubleClick",
            "method:ListGrid.getRowTop",
            "method:ListGrid.getRowPageTop",
            "method:ListGrid.setFastCellUpdates",
            "method:ListGrid.shouldIncludeHiliteInSummaryField",
            "method:ListGrid.markRecordRemoved",
            "method:ListGrid.markRecordsRemoved",
            "method:ListGrid.recordMarkedAsRemoved",
            "method:ListGrid.unmarkRecordRemoved",
            "method:ListGrid.markSelectionRemoved",
            "method:ListGrid.getFormulaFieldValue",
            "method:ListGrid.getSummaryFieldValue",
            "method:ListGrid.isRowNumberField",
            "method:ListGrid.getExpansionField",
            "method:ListGrid.isExpansionField",
            "method:ListGrid.canExpandRecord",
            "method:ListGrid.setCanExpandRecords",
            "method:ListGrid.expandRecord",
            "method:ListGrid.expandRecords",
            "method:ListGrid.collapseRecord",
            "method:ListGrid.collapseRecords",
            "method:ListGrid.isExpanded",
            "method:ListGrid.getCurrentExpansionComponent",
            "method:ListGrid.getExpansionComponent",
            "method:ListGrid.getRelatedDataSource",
            "method:ListGrid.setCanReorderRecords",
            "method:ListGrid.setData",
            "method:ListGrid.setSelectionType",
            "method:ListGrid.setSelectionAppearance",
            "method:ListGrid.setBodyOverflow",
            "method:ListGrid.setBodyStyleName",
            "method:ListGrid.setAlternateBodyStyleName",
            "method:ListGrid.setAlternateRecordStyles",
            "method:ListGrid.setAutoFitData",
            "method:ListGrid.setAutoFitExtraRecords",
            "method:ListGrid.setAutoFitMaxRecords",
            "method:ListGrid.setAutoFitMaxHeight",
            "method:ListGrid.setAutoFitMaxColumns",
            "method:ListGrid.setAutoFitMaxWidth",
            "method:ListGrid.autoFitField",
            "method:ListGrid.autoFitFields",
            "method:ListGrid.setAutoFitWidth",
            "method:ListGrid.setAutoFitFieldWidths",
            "method:ListGrid.setAutoFitWidthApproach",
            "method:ListGrid.setFieldProperties",
            "method:ListGrid.setFieldTitle",
            "method:ListGrid.setFieldHeaderBaseStyle",
            "method:ListGrid.setFieldHeaderTitleStyle",
            "method:ListGrid.setFieldIcon",
            "method:ListGrid.setFieldCellIcon",
            "method:ListGrid.showFields",
            "method:ListGrid.showField",
            "method:ListGrid.hideFields",
            "method:ListGrid.hideField",
            "method:ListGrid.fieldIsVisible",
            "method:ListGrid.getTitleField",
            "method:ListGrid.setFields",
            "method:ListGrid.focusInFilterEditor",
            "method:ListGrid.filterByEditor",
            "method:ListGrid.getFieldState",
            "method:ListGrid.setFieldState",
            "method:ListGrid.getCheckboxField",
            "method:ListGrid.isCheckboxField",
            "method:ListGrid.getSelectedState",
            "method:ListGrid.getCellSelection",
            "method:ListGrid.setSelectedState",
            "method:ListGrid.getSortState",
            "method:ListGrid.setSortState",
            "method:ListGrid.getViewState",
            "method:ListGrid.getGroupState",
            "method:ListGrid.setGroupState",
            "method:ListGrid.setViewState",
            "method:ListGrid.setDataSource",
            "method:ListGrid.refreshFields",
            "method:ListGrid.getFieldWidth",
            "method:ListGrid.getDefaultFieldWidth",
            "method:ListGrid.getGroupByFields",
            "method:ListGrid.getBaseStyle",
            "method:ListGrid.getCellValue",
            "method:ListGrid.cellValueIsClipped",
            "method:ListGrid.getCellAlign",
            "method:ListGrid.getCellVAlign",
            "method:ListGrid.getRowSpan",
            "method:ListGrid.getCellRowSpan",
            "method:ListGrid.getCellStartRow",
            "method:ListGrid.getValueIcon",
            "method:ListGrid.getDefaultFormattedValue",
            "method:ListGrid.getDefaultFormattedFieldValue",
            "method:ListGrid.setShowRecordComponents",
            "method:ListGrid.getDrawArea",
            "method:ListGrid.setDontAutoDestroyComponent",
            "method:ListGrid.invalidateRecordComponents",
            "method:ListGrid.refreshRecordComponent",
            "method:ListGrid.setRecordComponentHeight",
            "method:ListGrid.rowClick",
            "method:ListGrid.rowDoubleClick",
            "method:ListGrid.getCellHoverComponent",
            "method:ListGrid.selectRecord",
            "method:ListGrid.deselectRecord",
            "method:ListGrid.selectRecords",
            "method:ListGrid.deselectRecords",
            "method:ListGrid.selectAllRecords",
            "method:ListGrid.deselectAllRecords",
            "method:ListGrid.selectRange",
            "method:ListGrid.deselectRange",
            "method:ListGrid.userSelectAllRecords",
            "method:ListGrid.anySelected",
            "method:ListGrid.selectSingleRecord",
            "method:ListGrid.canSelectCell",
            "method:ListGrid.canSelectRecord",
            "method:ListGrid.keyPress",
            "method:ListGrid.bodyKeyPress",
            "method:ListGrid.focusInCell",
            "method:ListGrid.focusInRow",
            "method:ListGrid.getFocusRow",
            "method:ListGrid.scrollToColumn",
            "method:ListGrid.scrollToRow",
            "method:ListGrid.scrollToCell",
            "method:ListGrid.recordClick",
            "method:ListGrid.recordDoubleClick",
            "method:ListGrid.setShowGridSummary",
            "method:ListGrid.recalculateSummaries",
            "method:ListGrid.recalculateGridSummary",
            "method:ListGrid.getGridSummaryFunction",
            "method:ListGrid.getGridSummary",
            "method:ListGrid.getGridSummaryData",
            "method:ListGrid.getGroupSummaryData",
            "method:ListGrid.setShowFilterEditor",
            "method:ListGrid.getFilterEditorValueMap",
            "method:ListGrid.getFilterEditorType",
            "method:ListGrid.setFilterEditorCriteria",
            "method:ListGrid.getFilterEditorCriteria",
            "method:ListGrid.canEditCell",
            "method:ListGrid.startEditing",
            "method:ListGrid.stopHover",
            "method:ListGrid.getEditFormItem",
            "method:ListGrid.getEditorValueMap",
            "method:ListGrid.getEditorValueIcons",
            "method:ListGrid.setEditorValueMap",
            "method:ListGrid.getEditorType",
            "method:ListGrid.refreshCell",
            "method:ListGrid.refreshRow",
            "method:ListGrid.startEditingNew",
            "method:ListGrid.getAllEditRows",
            "method:ListGrid.getEditValues",
            "method:ListGrid.getEditedRecord",
            "method:ListGrid.getEditedCell",
            "method:ListGrid.setEditValues",
            "method:ListGrid.setEditValue",
            "method:ListGrid.getEditValue",
            "method:ListGrid.clearEditValue",
            "method:ListGrid.getEditRow",
            "method:ListGrid.getEditCol",
            "method:ListGrid.getEditField",
            "method:ListGrid.cancelEditing",
            "method:ListGrid.endEditing",
            "method:ListGrid.discardAllEdits",
            "method:ListGrid.discardEdits",
            "method:ListGrid.saveEdits",
            "method:ListGrid.rowHasChanges",
            "method:ListGrid.hasChanges",
            "method:ListGrid.cellHasChanges",
            "method:ListGrid.saveAllEdits",
            "method:ListGrid.validateRow",
            "method:ListGrid.validateCell",
            "method:ListGrid.getRequiredFieldMessage",
            "method:ListGrid.hasErrors",
            "method:ListGrid.rowHasErrors",
            "method:ListGrid.cellHasErrors",
            "method:ListGrid.getRowErrors",
            "method:ListGrid.getCellErrors",
            "method:ListGrid.setFieldError",
            "method:ListGrid.setRowErrors",
            "method:ListGrid.clearFieldError",
            "method:ListGrid.clearRowErrors",
            "method:ListGrid.removeData",
            "method:ListGrid.removeRecordClick",
            "method:ListGrid.setDragTracker",
            "method:ListGrid.getDragTrackerIcon",
            "method:ListGrid.getDragTrackerTitle",
            "method:ListGrid.willAcceptDrop",
            "method:ListGrid.transferSelectedData",
            "method:ListGrid.recordDrop",
            "method:ListGrid.transferDragData",
            "method:ListGrid.getDragData",
            "method:ListGrid.getRecord",
            "method:ListGrid.getCellRecord",
            "method:ListGrid.getTotalRows",
            "method:ListGrid.getAllFields",
            "method:ListGrid.getFieldName",
            "method:ListGrid.getField",
            "method:ListGrid.getFieldNum",
            "method:ListGrid.getSummaryTitle",
            "method:ListGrid.setValueMap",
            "method:ListGrid.getDisplayValue",
            "method:ListGrid.getRecordIndex",
            "method:ListGrid.getEventRow",
            "method:ListGrid.getEventColumn",
            "method:ListGrid.getRecordDropPosition",
            "method:ListGrid.getDropIndex",
            "method:ListGrid.cellSelectionChanged",
            "method:ListGrid.selectionChanged",
            "method:ListGrid.selectionUpdated",
            "method:ListGrid.setCanFreezeFields",
            "method:ListGrid.getColumnLeft",
            "method:ListGrid.getColumnPageLeft",
            "method:ListGrid.getColumnWidth",
            "method:ListGrid.getCellPageRect",
            "method:ListGrid.freezeField",
            "method:ListGrid.unfreezeField",
            "method:ListGrid.toggleFrozen",
            "method:ListGrid.getBody",
            "method:ListGrid.getDrawnRowHeight",
            "method:ListGrid.getRowHeight",
            "method:ListGrid.getRollOverCanvas",
            "method:ListGrid.getRollUnderCanvas",
            "method:ListGrid.setFieldButtonProperties",
            "method:ListGrid.setHeaderSpanButtonProperties",
            "method:ListGrid.setHeaderHeight",
            "method:ListGrid.setShowHeader",
            "method:ListGrid.headerTitleClipped",
            "method:ListGrid.headerHoverHTML",
            "method:ListGrid.headerClick",
            "method:ListGrid.headerDoubleClick",
            "method:ListGrid.reorderField",
            "method:ListGrid.reorderFields",
            "method:ListGrid.setCanResizeFields",
            "method:ListGrid.resizeField",
            "method:ListGrid.sorterContextClick",
            "method:ListGrid.displayHeaderContextMenu",
            "method:ListGrid.getToggleFreezeText",
            "method:ListGrid.getGroupByText",
            "method:ListGrid.getHeaderSpanContextMenuItems",
            "method:ListGrid.getHeaderContextMenuItems",
            "method:ListGrid.sorterClick",
            "method:ListGrid.unsort",
            "method:ListGrid.resort",
            "method:ListGrid.sort",
            "method:ListGrid.getSortField",
            "method:ListGrid.toggleSort",
            "method:ListGrid.addSort",
            "method:ListGrid.getSort",
            "method:ListGrid.getSortSpecifier",
            "method:ListGrid.getSortFieldCount",
            "method:ListGrid.isSortField",
            "method:ListGrid.getSortNumeralHTML",
            "method:ListGrid.clearSort",
            "method:ListGrid.setSort",
            "method:ListGrid.addEmbeddedComponent",
            "method:ListGrid.removeEmbeddedComponent",
            "method:ListGrid.getRecordComponent",
            "method:ListGrid.chartData",
            "method:ListGrid.chartRow",
            "method:ListGrid.chartColumn",
            "method:ListGrid.groupBy",
            "method:ListGrid.getGroupNodeHTML",
            "method:ListGrid.isGroupNode",
            "method:ListGrid.setShowGroupSummaryInHeader",
            "method:ListGrid.setShowCollapsedGroupSummary",
            "method:ListGrid.ungroup",
            "method:ListGrid.setHeaderSpans",
            "method:ListGrid.setHeaderSpanTitle",
            "method:ListGrid.setHeaderSpanHeaderTitle",
            "method:ListGrid.setHeaderSpanBaseStyle",
            "method:ListGrid.setHeaderSpanTitleStyle",
            "method:ListGrid.setShowGroupSummary",
            "method:ListGrid.setGroupByFieldSummaries",
            "method:ListGrid.configureGrouping",
            "method:ListGrid.getOriginalData",
            "method:ListGrid.getSelectedCellData",
            "method:ListGrid.applyCellData",
            "method:ListGrid.applyRecordData",
            "method:ListGrid.cellChanged",
            "method:ListGrid.editComplete",
            "method:ListGrid.editFailed",
            "method:ListGrid.editorEnter",
            "method:ListGrid.rowEditorEnter",
            "method:ListGrid.editorExit",
            "method:ListGrid.rowEditorExit",
            "method:ListGrid.formatCellValue",
            "method:ListGrid.formatEditorValue",
            "method:ListGrid.parseEditorValue",
            "method:ListGrid.sortChanged",
            "method:ListGrid.fieldStateChanged",
            "method:ListGrid.groupStateChanged",
            "method:ListGrid.viewStateChanged",
            "method:ListGrid.dataArrived",
            "method:ListGrid.headerHover",
            "method:ListGrid.drawAreaChanged",
            "method:ListGrid.showRecordComponent",
            "method:ListGrid.createRecordComponent",
            "method:ListGrid.updateRecordComponent",
            "method:ListGrid.filterEditorSubmit",
            "method:ListGrid.handleGroupBy",
            "method:ListGrid.groupByComplete",
            "method:ListGrid.hilitesChanged",
            "method:ListGrid.formulaUpdated",
            "method:ListGrid.summaryUpdated"
        ],
        exampleConfig:"ListGrid.xml",
        ref:"class:ListGrid",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:ListGrid.offlineMessageStyle",
            "attr:ListGrid.autoFetchData",
            "attr:ListGrid.initialCriteria",
            "attr:ListGrid.exportDefaultBGColor",
            "attr:ListGrid.exportAlternateRowBGColor",
            "attr:ListGrid.exportHeaderHeights",
            "attr:ListGrid.exportFieldWidths",
            "attr:ListGrid.exportWidthScale",
            "attr:ListGrid.exportWrapHeaderTitles",
            "attr:ListGrid.exportFieldAlignments",
            "attr:ListGrid.styleName",
            "attr:ListGrid.data",
            "attr:ListGrid.recordEnabledProperty",
            "attr:ListGrid.canExpandRecordProperty",
            "attr:ListGrid.recordCanRemoveProperty",
            "attr:ListGrid.animateFolders",
            "attr:ListGrid.animateFolderMaxRows",
            "attr:ListGrid.animateFolderTime",
            "attr:ListGrid.animateFolderSpeed",
            "attr:ListGrid.animateFolderEffect",
            "attr:ListGrid.fields",
            "attr:ListGrid.defaultFields",
            "attr:ListGrid.dataSource",
            "attr:ListGrid.autoFetchDisplayMap",
            "attr:ListGrid.warnOnUnmappedValueFieldChange",
            "attr:ListGrid.saveLocally",
            "attr:ListGrid.saveRequestProperties",
            "attr:ListGrid.useRemoteValidators",
            "attr:ListGrid.useAllDataSourceFields",
            "attr:ListGrid.showDetailFields",
            "attr:ListGrid.titleField",
            "attr:ListGrid.dataProperties",
            "attr:ListGrid.originalData",
            "attr:ListGrid.groupTree",
            "attr:ListGrid.groupStartOpen",
            "attr:ListGrid.canCollapseGroup",
            "attr:ListGrid.groupTitleField",
            "attr:ListGrid.showGroupTitleColumn",
            "attr:ListGrid.groupTitleColumnProperties",
            "attr:ListGrid.groupTitleColumnDefaults",
            "attr:ListGrid.showGroupSummaryInHeader",
            "attr:ListGrid.showCollapsedGroupSummary",
            "attr:ListGrid.groupNodeStyle",
            "attr:ListGrid.groupNodeBaseStyle",
            "attr:ListGrid.groupIcon",
            "attr:ListGrid.groupIconSize",
            "attr:ListGrid.groupIndentSize",
            "attr:ListGrid.groupLeadingIndent",
            "attr:ListGrid.canGroupBy",
            "attr:ListGrid.groupByMaxRecords",
            "attr:ListGrid.groupByAsyncThreshold",
            "attr:ListGrid.showAsynchGroupingPrompt",
            "attr:ListGrid.asynchGroupingPrompt",
            "attr:ListGrid.isGrouped",
            "attr:ListGrid.nullGroupTitle",
            "attr:ListGrid.groupByField",
            "attr:ListGrid.valueIconSize",
            "attr:ListGrid.valueIconWidth",
            "attr:ListGrid.valueIconHeight",
            "attr:ListGrid.valueIconLeftPadding",
            "attr:ListGrid.valueIconRightPadding",
            "attr:ListGrid.hiliteIcons",
            "attr:ListGrid.hiliteIconPosition",
            "attr:ListGrid.hiliteIconSize",
            "attr:ListGrid.hiliteIconWidth",
            "attr:ListGrid.hiliteIconHeight",
            "attr:ListGrid.hiliteIconLeftPadding",
            "attr:ListGrid.hiliteIconRightPadding",
            "attr:ListGrid.imageSize",
            "attr:ListGrid.headerSpans",
            "attr:ListGrid.headerSpanHeight",
            "attr:ListGrid.headerSpanVAlign",
            "attr:ListGrid.unspannedHeaderVAlign",
            "attr:ListGrid.headerSpanConstructor",
            "attr:ListGrid.headerSpan",
            "attr:ListGrid.showTreeColumnPicker",
            "attr:ListGrid.reverseRTLAlign",
            "attr:ListGrid.modalEditing",
            "attr:ListGrid.fetchDelay",
            "attr:ListGrid.showAllRecords",
            "attr:ListGrid.showAllColumns",
            "attr:ListGrid.drawAllMaxCells",
            "attr:ListGrid.drawAheadRatio",
            "attr:ListGrid.quickDrawAheadRatio",
            "attr:ListGrid.instantScrollTrackRedraw",
            "attr:ListGrid.scrollRedrawDelay",
            "attr:ListGrid.scrollWheelRedrawDelay",
            "attr:ListGrid.virtualScrolling",
            "attr:ListGrid.dataPageSize",
            "attr:ListGrid.dataFetchMode",
            "attr:ListGrid.body",
            "attr:ListGrid.bodyOverflow",
            "attr:ListGrid.bodyBackgroundColor",
            "attr:ListGrid.bodyStyleName",
            "attr:ListGrid.emptyCellValue",
            "attr:ListGrid.cellHeight",
            "attr:ListGrid.normalCellHeight",
            "attr:ListGrid.fixedRecordHeights",
            "attr:ListGrid.enforceVClipping",
            "attr:ListGrid.fixedFieldWidths",
            "attr:ListGrid.autoFitData",
            "attr:ListGrid.autoFitMaxHeight",
            "attr:ListGrid.autoFitMaxRecords",
            "attr:ListGrid.autoFitExtraRecords",
            "attr:ListGrid.autoFitMaxWidth",
            "attr:ListGrid.autoFitMaxColumns",
            "attr:ListGrid.canAutoFitFields",
            "attr:ListGrid.headerAutoFitEvent",
            "attr:ListGrid.autoFitFieldWidths",
            "attr:ListGrid.autoSizeHeaderSpans",
            "attr:ListGrid.autoFitClipFields",
            "attr:ListGrid.autoFitFieldsFillViewport",
            "attr:ListGrid.autoFitExpandField",
            "attr:ListGrid.autoFitWidthApproach",
            "attr:ListGrid.autoFitIconFields",
            "attr:ListGrid.leaveScrollbarGap",
            "attr:ListGrid.wrapCells",
            "attr:ListGrid.showClippedValuesOnHover",
            "attr:ListGrid.cellPadding",
            "attr:ListGrid.dateFormatter",
            "attr:ListGrid.datetimeFormatter",
            "attr:ListGrid.dateInputFormat",
            "attr:ListGrid.timeFormatter",
            "attr:ListGrid.linkTextProperty",
            "attr:ListGrid.fastCellUpdates",
            "attr:ListGrid.baseStyle",
            "attr:ListGrid.normalBaseStyle",
            "attr:ListGrid.tallBaseStyle",
            "attr:ListGrid.editFailedBaseStyle",
            "attr:ListGrid.editFailedCSSText",
            "attr:ListGrid.editPendingBaseStyle",
            "attr:ListGrid.editPendingCSSText",
            "attr:ListGrid.recordCustomStyleProperty",
            "attr:ListGrid.recordBaseStyleProperty",
            "attr:ListGrid.frozenBaseStyle",
            "attr:ListGrid.shrinkForFreeze",
            "attr:ListGrid.alternateRecordStyles",
            "attr:ListGrid.alternateFieldStyles",
            "attr:ListGrid.alternateFieldFrequency",
            "attr:ListGrid.alternateBodyStyleName",
            "attr:ListGrid.alternateRecordFrequency",
            "attr:ListGrid.includeHilitesInSummaryFields",
            "attr:ListGrid.showHilitesInGroupSummary",
            "attr:ListGrid.hiliteCanReplaceValue",
            "attr:ListGrid.hiliteReplaceValueFieldTitle",
            "attr:ListGrid.hiliteHTMLAfterFormat",
            "attr:ListGrid.showSelectedStyle",
            "attr:ListGrid.generateClickOnSpace",
            "attr:ListGrid.generateClickOnEnter",
            "attr:ListGrid.generateDoubleClickOnSpace",
            "attr:ListGrid.generateDoubleClickOnEnter",
            "attr:ListGrid.arrowKeyAction",
            "attr:ListGrid.hiliteRowOnFocus",
            "attr:ListGrid.showRecordComponents",
            "attr:ListGrid.recordComponentPosition",
            "attr:ListGrid.showRecordComponentsByCell",
            "attr:ListGrid.recordComponentPoolingMode",
            "attr:ListGrid.poolComponentsPerColumn",
            "attr:ListGrid.showRollOver",
            "attr:ListGrid.useCellRollOvers",
            "attr:ListGrid.showRollOverCanvas",
            "attr:ListGrid.rollOverCanvas",
            "attr:ListGrid.showRollUnderCanvas",
            "attr:ListGrid.rollUnderCanvas",
            "attr:ListGrid.animateRollOver",
            "attr:ListGrid.animateRollUnder",
            "attr:ListGrid.showBackgroundComponents",
            "attr:ListGrid.backgroundComponent",
            "attr:ListGrid.canHover",
            "attr:ListGrid.showHover",
            "attr:ListGrid.showClippedHeaderTitlesOnHover",
            "attr:ListGrid.hoverStyle",
            "attr:ListGrid.selection",
            "attr:ListGrid.selectionAppearance",
            "attr:ListGrid.canSelectAll",
            "attr:ListGrid.selectionType",
            "attr:ListGrid.selectionProperty",
            "attr:ListGrid.reselectOnUpdate",
            "attr:ListGrid.reselectOnUpdateNotifications",
            "attr:ListGrid.recordCanSelectProperty",
            "attr:ListGrid.canSelectCells",
            "attr:ListGrid.navigateOnTab",
            "attr:ListGrid.useCopyPasteShortcuts",
            "attr:ListGrid.originBaseStyle",
            "attr:ListGrid.canDragSelect",
            "attr:ListGrid.canDragSelectText",
            "attr:ListGrid.canDropInEmptyArea",
            "attr:ListGrid.showSelectionCanvas",
            "attr:ListGrid.selectionCanvas",
            "attr:ListGrid.showSelectionUnderCanvas",
            "attr:ListGrid.selectionUnderCanvas",
            "attr:ListGrid.animateSelection",
            "attr:ListGrid.animateSelectionUnder",
            "attr:ListGrid.checkboxField",
            "attr:ListGrid.checkboxFieldTrueImage",
            "attr:ListGrid.checkboxFieldFalseImage",
            "attr:ListGrid.checkboxFieldPartialImage",
            "attr:ListGrid.printCheckboxFieldTrueImage",
            "attr:ListGrid.printCheckboxFieldFalseImage",
            "attr:ListGrid.printCheckboxFieldPartialImage",
            "attr:ListGrid.checkboxFieldImageWidth",
            "attr:ListGrid.checkboxFieldImageHeight",
            "attr:ListGrid.showEmptyMessage",
            "attr:ListGrid.emptyMessage",
            "attr:ListGrid.emptyMessageStyle",
            "attr:ListGrid.filterButtonPrompt",
            "attr:ListGrid.loadingDataMessage",
            "attr:ListGrid.loadingDataMessageStyle",
            "attr:ListGrid.loadingMessage",
            "attr:ListGrid.singleCellValueProperty",
            "attr:ListGrid.isSeparatorProperty",
            "attr:ListGrid.showFilterEditor",
            "attr:ListGrid.filterEditor",
            "attr:ListGrid.filterEditorProperties",
            "attr:ListGrid.filterButtonProperties",
            "attr:ListGrid.filterEditorHeight",
            "attr:ListGrid.autoFetchTextMatchStyle",
            "attr:ListGrid.canEdit",
            "attr:ListGrid.recordEditProperty",
            "attr:ListGrid.alwaysShowEditors",
            "attr:ListGrid.editByCell",
            "attr:ListGrid.saveByCell",
            "attr:ListGrid.validateByCell",
            "attr:ListGrid.validateOnChange",
            "attr:ListGrid.neverValidate",
            "attr:ListGrid.canRemoveRecords",
            "attr:ListGrid.warnOnRemoval",
            "attr:ListGrid.warnOnRemovalMessage",
            "attr:ListGrid.removedCSSText",
            "attr:ListGrid.deferRemoval",
            "attr:ListGrid.removeIcon",
            "attr:ListGrid.unremoveIcon",
            "attr:ListGrid.removeIconSize",
            "attr:ListGrid.animateRemoveRecord",
            "attr:ListGrid.animateRemoveTime",
            "attr:ListGrid.animateRemoveSpeed",
            "attr:ListGrid.removeFieldTitle",
            "attr:ListGrid.removeFieldDefaults",
            "attr:ListGrid.removeFieldProperties",
            "attr:ListGrid.filterByCell",
            "attr:ListGrid.filterOnKeypress",
            "attr:ListGrid.waitForSave",
            "attr:ListGrid.stopOnErrors",
            "attr:ListGrid.autoSaveEdits",
            "attr:ListGrid.showErrorIcons",
            "attr:ListGrid.errorIconHeight",
            "attr:ListGrid.errorIconWidth",
            "attr:ListGrid.errorIconSrc",
            "attr:ListGrid.confirmCancelEditing",
            "attr:ListGrid.cancelEditingConfirmationMessage",
            "attr:ListGrid.confirmDiscardEdits",
            "attr:ListGrid.confirmDiscardEditsMessage",
            "attr:ListGrid.discardEditsSaveButtonTitle",
            "attr:ListGrid.rowEndEditAction",
            "attr:ListGrid.listEndEditAction",
            "attr:ListGrid.enterKeyEditAction",
            "attr:ListGrid.escapeKeyEditAction",
            "attr:ListGrid.editEvent",
            "attr:ListGrid.editOnFocus",
            "attr:ListGrid.editOnF2Keypress",
            "attr:ListGrid.selectOnEdit",
            "attr:ListGrid.enumCriteriaAsInitialValues",
            "attr:ListGrid.longTextEditorThreshold",
            "attr:ListGrid.longTextEditorType",
            "attr:ListGrid.header",
            "attr:ListGrid.headerContextMenu",
            "attr:ListGrid.cellContextMenu",
            "attr:ListGrid.spanContextMenu",
            "attr:ListGrid.canTabToHeader",
            "attr:ListGrid.headerHeight",
            "attr:ListGrid.minFieldWidth",
            "attr:ListGrid.showHeader",
            "attr:ListGrid.headerBarStyle",
            "attr:ListGrid.headerBackgroundColor",
            "attr:ListGrid.headerButtonConstructor",
            "attr:ListGrid.headerBaseStyle",
            "attr:ListGrid.headerTitleStyle",
            "attr:ListGrid.frozenHeaderBaseStyle",
            "attr:ListGrid.frozenHeaderTitleStyle",
            "attr:ListGrid.headerButtonDefaults",
            "attr:ListGrid.headerButtonProperties",
            "attr:ListGrid.clipHeaderTitles",
            "attr:ListGrid.wrapHeaderTitles",
            "attr:ListGrid.sorterConstructor",
            "attr:ListGrid.sorterButtonTitle",
            "attr:ListGrid.sorterDefaults",
            "attr:ListGrid.sorterProperties",
            "attr:ListGrid.canSort",
            "attr:ListGrid.selectHeaderOnSort",
            "attr:ListGrid.sortFieldNum",
            "attr:ListGrid.sortField",
            "attr:ListGrid.sortDirection",
            "attr:ListGrid.showSortArrow",
            "attr:ListGrid.canPickFields",
            "attr:ListGrid.canPickOmittedFields",
            "attr:ListGrid.canFreezeFields",
            "attr:ListGrid.badFormulaResultValue",
            "attr:ListGrid.missingSummaryFieldValue",
            "attr:ListGrid.canAddFormulaFields",
            "attr:ListGrid.canAddSummaryFields",
            "attr:ListGrid.canEditHilites",
            "attr:ListGrid.showCellContextMenus",
            "attr:ListGrid.showHeaderContextMenu",
            "attr:ListGrid.showHeaderMenuButton",
            "attr:ListGrid.leaveHeaderMenuButtonSpace",
            "attr:ListGrid.headerMenuButtonConstructor",
            "attr:ListGrid.headerMenuButton",
            "attr:ListGrid.headerMenuButtonIcon",
            "attr:ListGrid.headerMenuButtonIconWidth",
            "attr:ListGrid.headerMenuButtonIconHeight",
            "attr:ListGrid.headerMenuButtonWidth",
            "attr:ListGrid.headerMenuButtonHeight",
            "attr:ListGrid.canDragRecordsOut",
            "attr:ListGrid.canAcceptDroppedRecords",
            "attr:ListGrid.canReorderRecords",
            "attr:ListGrid.canReorderFields",
            "attr:ListGrid.canResizeFields",
            "attr:ListGrid.dragTrackerMode",
            "attr:ListGrid.resizeFieldsInRealTime",
            "attr:ListGrid.dragDataAction",
            "attr:ListGrid.skinImgDir",
            "attr:ListGrid.sortAscendingImage",
            "attr:ListGrid.sortDescendingImage",
            "attr:ListGrid.trackerImage",
            "attr:ListGrid.booleanBaseStyle",
            "attr:ListGrid.printBooleanBaseStyle",
            "attr:ListGrid.booleanTrueImage",
            "attr:ListGrid.booleanFalseImage",
            "attr:ListGrid.booleanPartialImage",
            "attr:ListGrid.printBooleanTrueImage",
            "attr:ListGrid.printBooleanFalseImage",
            "attr:ListGrid.printBooleanPartialImage",
            "attr:ListGrid.booleanImageWidth",
            "attr:ListGrid.booleanImageHeight",
            "attr:ListGrid.showRowNumbers",
            "attr:ListGrid.applyRowNumberStyle",
            "attr:ListGrid.rowNumberStyle",
            "attr:ListGrid.rowNumberStart",
            "attr:ListGrid.rowNumberField",
            "attr:ListGrid.exportRawValues",
            "attr:ListGrid.expansionComponentPoolingMode",
            "attr:ListGrid.canExpandRecords",
            "attr:ListGrid.canExpandMultipleRecords",
            "attr:ListGrid.maxExpandedRecords",
            "attr:ListGrid.maxExpandedRecordsPrompt",
            "attr:ListGrid.detailField",
            "attr:ListGrid.expansionMode",
            "attr:ListGrid.expansionField",
            "attr:ListGrid.expansionFieldTrueImage",
            "attr:ListGrid.expansionFieldFalseImage",
            "attr:ListGrid.expansionFieldImageWidth",
            "attr:ListGrid.expansionFieldImageHeight",
            "attr:ListGrid.expansionDetailField",
            "attr:ListGrid.expansionDetails",
            "attr:ListGrid.expansionRelated",
            "attr:ListGrid.expansionEditor",
            "attr:ListGrid.expansionEditorShowSaveDialog",
            "attr:ListGrid.expansionEditorSaveDialogPrompt",
            "attr:ListGrid.expansionEditorCollapseOnSave",
            "attr:ListGrid.showExpansionEditorSaveButton",
            "attr:ListGrid.expansionEditorSaveButton",
            "attr:ListGrid.expansionEditorSaveButtonTitle",
            "attr:ListGrid.expansionDetailRelated",
            "attr:ListGrid.expansionLayout",
            "attr:ListGrid.detailDS",
            "attr:ListGrid.recordDetailDSProperty",
            "attr:ListGrid.childExpansionMode",
            "attr:ListGrid.expansionCanEdit",
            "attr:ListGrid.filterLocalData",
            "attr:ListGrid.recordDropAppearance",
            "attr:ListGrid.discardEditsOnHideField",
            "attr:ListGrid.dropCriteriaOnHideField",
            "attr:ListGrid.fieldState",
            "attr:ListGrid.checkboxFieldHSpace",
            "attr:ListGrid.sortState",
            "attr:ListGrid.groupState",
            "attr:ListGrid.viewState",
            "attr:ListGrid.gridComponents",
            "attr:ListGrid.autoFitHeaderHeights",
            "attr:ListGrid.iconPadding",
            "attr:ListGrid.applyFormulaAfterSummary",
            "attr:ListGrid.allowRowSpanning",
            "attr:ListGrid.useRowSpanStyling",
            "attr:ListGrid.rowSpanSelectionMode",
            "attr:ListGrid.rowSpanEditMode",
            "attr:ListGrid.recordComponentHeight",
            "attr:ListGrid.printAutoFit",
            "attr:ListGrid.printWrapCells",
            "attr:ListGrid.printHeaderStyle",
            "attr:ListGrid.printBaseStyle",
            "attr:ListGrid.printMaxRows",
            "attr:ListGrid.showHoverComponents",
            "attr:ListGrid.hoverMode",
            "attr:ListGrid.scrollToCellXPosition",
            "attr:ListGrid.scrollToCellYPosition",
            "attr:ListGrid.canFocusInEmptyGrid",
            "attr:ListGrid.showGridSummary",
            "attr:ListGrid.invalidSummaryValue",
            "attr:ListGrid.includeInSummaryProperty",
            "attr:ListGrid.gridSummaryRecordProperty",
            "attr:ListGrid.groupSummaryRecordProperty",
            "attr:ListGrid.summaryRowDataSource",
            "attr:ListGrid.summaryRowCriteria",
            "attr:ListGrid.summaryRowFetchRequestProperties",
            "attr:ListGrid.recordSummaryBaseStyle",
            "attr:ListGrid.summaryRow",
            "attr:ListGrid.summaryRowHeight",
            "attr:ListGrid.summaryRowStyle",
            "attr:ListGrid.allowFilterExpressions",
            "attr:ListGrid.canEditFieldAttribute",
            "attr:ListGrid.dragTrackerStyle",
            "attr:ListGrid.screenReaderCellSeparator",
            "attr:ListGrid.screenReaderRowSeparator",
            "attr:ListGrid.showHeaderSpanTitlesInFormulaBuilder",
            "attr:ListGrid.formulaBuilderSpanTitleSeparator",
            "attr:ListGrid.showHeaderSpanTitlesInSortEditor",
            "attr:ListGrid.sortEditorSpanTitleSeparator",
            "attr:ListGrid.showHeaderSpanTitlesInHiliteEditor",
            "attr:ListGrid.hiliteEditorSpanTitleSeparator",
            "attr:ListGrid.headerHoverStyle",
            "attr:ListGrid.headerHoverAlign",
            "attr:ListGrid.headerHoverVAlign",
            "attr:ListGrid.headerHoverOpacity",
            "attr:ListGrid.headerHoverHeight",
            "attr:ListGrid.headerHoverWidth",
            "attr:ListGrid.headerHoverWrap",
            "attr:ListGrid.freezeOnRightText",
            "attr:ListGrid.freezeOnLeftText",
            "attr:ListGrid.sortFieldAscendingText",
            "attr:ListGrid.sortFieldDescendingText",
            "attr:ListGrid.clearSortFieldText",
            "attr:ListGrid.clearAllSortingText",
            "attr:ListGrid.clearFilterText",
            "attr:ListGrid.configureSortText",
            "attr:ListGrid.configureGroupingText",
            "attr:ListGrid.autoFitFieldText",
            "attr:ListGrid.autoFitAllText",
            "attr:ListGrid.fieldVisibilitySubmenuTitle",
            "attr:ListGrid.freezeFieldText",
            "attr:ListGrid.unfreezeFieldText",
            "attr:ListGrid.groupByText",
            "attr:ListGrid.ungroupText",
            "attr:ListGrid.canMultiSort",
            "attr:ListGrid.canMultiGroup",
            "attr:ListGrid.initialSort",
            "attr:ListGrid.sortNumeralStyle",
            "attr:ListGrid.showSortNumerals",
            "attr:ListGrid.chartConstructor",
            "attr:ListGrid.chartType",
            "attr:ListGrid.showGroupSummary",
            "attr:ListGrid.groupByFieldSummaries",
            "attr:ListGrid.groupSummaryStyle",
            "attr:ListGrid.useAdvancedFieldPicker",
            "attr:ListGrid.canEditTitles",
            "attr:ListGrid.fieldPickerWindow",
            "attr:ListGrid.fieldPickerFieldProperties",
            "attr:ListGrid.advancedFieldPickerThreshold",
            "attr:ListGrid.fieldPickerShowSampleValues",
            "attr:ListGrid.locateRowsBy",
            "attr:ListGrid.locateColumnsBy"
        ],
        description:"A ListGrid is a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} that displays a list of objects in a grid, where\n each row represents one object and each cell in the row represents one property.",
        name:"ListGrid",
        implementsInterfaces:[
            "DataBoundComponent"
        ],
        seeAlso:[
        ],
        type:"class"
    },
    "attr:RelativeDateItem.pickerIconPrompt":{
        ref:"attr:RelativeDateItem.pickerIconPrompt",
        flags:"IR",
        description:"Prompt to show when the user hovers the mouse over the picker icon for this \n RelativeDateItem. May be overridden for localization of your application.",
        name:"pickerIconPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Show Date Chooser\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColumnTree.dataFetchMode":{
        ref:"attr:ColumnTree.dataFetchMode",
        flags:"IRW",
        description:"How to fetch and manage records retrieve from the server.  See ${isc.DocUtils.linkForRef('type:FetchMode')}.\n <P>\n This setting only applies to the ${isc.DocUtils.linkForRef('class:ResultSet')} automatically created by calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')}.  If a pre-existing ResultSet is passed to setData() instead, it's\n existing setting for ${isc.DocUtils.linkForRef('attr:ResultSet.fetchMode')} applies.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"paged\"",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "attr:Calendar.cancelButtonTitle":{
        ref:"attr:Calendar.cancelButtonTitle",
        flags:"IR",
        description:"The title for the cancel button in the event editor",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Class.logIsWarnEnabled":{
        ref:"classMethod:Class.logIsWarnEnabled",
        flags:"",
        description:" Check whether a message logged at \"warn\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsWarnEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:Menu.showSubmenus":{
        ref:"attr:Menu.showSubmenus",
        flags:"IRW",
        description:"A boolean, indicating whether the submenu indicator column should be displayed. If\n showSubmenus is not set, the menu will show the indicator column only if one of its\n items specifies a submenu property. If showSubmenus is false, the submenu arrows\n will not be displayed, but submenus will still appear on rollover.",
        name:"showSubmenus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:SimpleType.editorType":{
        ref:"attr:SimpleType.editorType",
        flags:"IR",
        description:"Classname of the FormItem that should be the default for editing values of this type (eg\n \"SelectItem\").\n <P>\n You can create a simple custom FormItem by adding default ${isc.DocUtils.linkForRef('attr:FormItem.icons')} that\n launch custom value picking dialogs (an example is in the <i>QuickStart\n Guide</i>, Chapter 9, <i>Extending SmartClient</i>).  By setting simpleType.editorType\n to the name of your custom FormItem, forms will automatically use the custom FormItem,\n as will grids performing ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','inline editing')}.",
        name:"editorType",
        seeAlso:[
        ],
        valueType:"FormItem ClassName",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:SimpleType"
    },
    "attr:Canvas.snapEdge":{
        ref:"attr:Canvas.snapEdge",
        flags:"IRW",
        getter:[
            "getSnapEdge"
        ],
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','snapTo')} is defined to this widget, this property can be used to\n define which edge of this widget should be snapped to an edge of the master or parent\n element.\n <P>\n If unspecified the, default snapTo behavior is set up to align the \"snapTo\" edge of this\n widget with the snapTo edge of the master or parent.",
        name:"snapEdge",
        setter:[
            "setSnapEdge"
        ],
        seeAlso:[
            {
                ref:"attr:Canvas.snapTo",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "classAttr:FacetChart.hideRegressionLinesContextMenuItemTitle":{
        ref:"classAttr:FacetChart.hideRegressionLinesContextMenuItemTitle",
        flags:"IRW",
        description:"Title for the <code>\"None\"</code> option of the <code>\"Regression Lines\"</code> option\n in the context menu for scatter plots.",
        name:"hideRegressionLinesContextMenuItemTitle",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"None\"",
        type:"classAttr",
        definingClass:"class:FacetChart",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Tree.indexOf":{
        ref:"method:Tree.indexOf",
        flags:"",
        description:" Return the position in the list of the first instance of the specified object.\n <p>\n If pos is specified, starts looking after that position.\n <p>\n Returns -1 if not found.\n\n",
        name:"indexOf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"earliest index to consider",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endPos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"position of the item, if found, -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "access"
        ]
    },
    "attr:PortalLayout.preventColumnUnderflow":{
        ref:"attr:PortalLayout.preventColumnUnderflow",
        flags:"IRW",
        description:"Controls whether the last ${isc.DocUtils.linkForRef('class:Portlet')} in a column will be stretched to fill the column's height,\n or left at its specified height.",
        name:"preventColumnUnderflow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('portletHeight')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:TreeGrid.folderIcon":{
        ref:"attr:TreeGrid.folderIcon",
        flags:"IRW",
        description:"The URL of the base icon for all folder nodes in this treeGrid. Note that this URL will\n have ${isc.DocUtils.linkForRef('attr:TreeGrid.openIconSuffix')}, ${isc.DocUtils.linkForRef('attr:TreeGrid.closedIconSuffix')} or \n ${isc.DocUtils.linkForRef('attr:TreeGrid.dropIconSuffix')} appended to indicate state changes if appropriate - \n see documentation on  ${isc.DocUtils.linkForRef('attr:TreeGrid.showOpenIcons')} and ${isc.DocUtils.linkForRef('attr:TreeGrid.showDropIcons')}.",
        name:"folderIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]folder.gif\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:ListGrid.editPendingCSSText":{
        ref:"attr:ListGrid.editPendingCSSText",
        flags:"IRWA",
        description:"Custom CSS text to be applied to cells with pending edits that have not yet been\n submitted.<br>\n For further customization of styling for cells with pending edits use\n <code>this.editPendingBaseStyle</code> instead.",
        name:"editPendingCSSText",
        seeAlso:[
            {
                ref:"attr:ListGrid.editFailedBaseStyle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"color:#0066CC;\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:CubeGrid.canMoveFacets":{
        ref:"attr:CubeGrid.canMoveFacets",
        flags:"IRW",
        description:"Whether row and column facets can be rearranged by the user, by dragging and dropping the\n facet labels.",
        name:"canMoveFacets",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:Calendar.weekPrefix":{
        ref:"attr:Calendar.weekPrefix",
        flags:"IR",
        description:"The text to appear before the week number in the title of ${isc.DocUtils.linkForRef('type:TimeUnit','week-based')} \n ${isc.DocUtils.linkForRef('object:HeaderLevel')}s when this calendar is showing a timeline.",
        name:"weekPrefix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Week\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Button.showDown":{
        ref:"attr:Button.showDown",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes down in this object?",
        name:"showDown",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonStates')}"
        ],
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "attr:LoginDialog.usernameItemTitle":{
        ref:"attr:LoginDialog.usernameItemTitle",
        flags:"IR",
        description:"Specifies the title of the \"usernameItem\" field of the ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"usernameItemTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"Dialog.USERNAME_TITLE",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:ListGrid.endEditing":{
        ref:"method:ListGrid.endEditing",
        flags:"",
        description:"\n Complete the current edit by storing the value and hiding the inline editor. Note that\n if ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')} is true, the value will be saved to the server.\n\n",
        name:"endEditing",
        seeAlso:[
            {
                ref:"method:ListGrid.startEditing",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:GridRenderer.snapInsideBorder":{
        ref:"attr:GridRenderer.snapInsideBorder",
        flags:"IRW",
        description:"If true, snap-to-cell drops will snap the dropped object inside the selected cell's border.\n If false, snap-to-cell drops will snap the dropped object to the edge of the selected cell, \n regardless of borders",
        name:"snapInsideBorder",
        seeAlso:[
            {
                ref:"attr:GridRenderer.snapToCells",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "dragdrop"
        ]
    },
    "attr:CubeGrid.bodyMinWidth":{
        ref:"attr:CubeGrid.bodyMinWidth",
        flags:"IRWA",
        description:"Minimum width for the body of this cubeGrid.",
        name:"bodyMinWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "method:Tree.linkNodes":{
        ref:"method:Tree.linkNodes",
        flags:"",
        description:" Adds an array of tree nodes into a Tree of ${isc.DocUtils.linkForRef('attr:Tree.modelType')} \"parent\".   \n <P>\n The provided TreeNodes must contain, at a minimum, a field containing a unique ID for the\n node (specified by ${isc.DocUtils.linkForRef('attr:Tree.idField')}) and a field containing the ID of the node's \n parent node (specified by ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}).\n <P>\n This method handles receiving a mixture of leaf nodes and parent nodes, even out of order and\n with any tree depth.\n <P>\n Nodes may be passed with the ${isc.DocUtils.linkForRef('attr:Tree.childrenProperty')} already populated with an Array of\n children that should also be added to the Tree, and this is automatically handled.\n\n",
        name:"linkNodes",
        seeAlso:[
            {
                ref:"attr:Tree.data",
                description:null
            },
            {
                ref:"attr:Tree.modelType",
                description:null
            }
        ],
        params:[
            {
                description:"list of nodes to link into the tree.",
                optional:false,
                name:"nodes",
                defaultValue:null,
                type:"Array of TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "group:dragResize":{
        ref:"group:dragResize",
        refs:[
            "classMethod:Canvas.getEventEdge"
        ],
        name:"dragResize",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.stacked":{
        ref:"attr:FacetChart.stacked",
        flags:"IRW",
        description:"Whether to use stacking for charts where this makes sense (column, area, pie, line and\n radar charts).  If stacked is not set and two facets are supplied, clustering is assumed.\n If null (the default), line charts will be unstacked, and others will be stacked.",
        name:"stacked",
        setter:[
            "setStacked"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DataBoundComponent.willFetchData":{
        ref:"method:DataBoundComponent.willFetchData",
        flags:"",
        description:" Compares the specified criteria with the current criteria applied to this component's\n data object and determines whether the new criteria could be satisfied from the currently cached\n set of data, or if a new filter/fetch operation will be required.\n <P>\n This is equivalent to calling <code>this.data.willFetchData(...)</code>.\n Always returns true if this component is not showing a set of data from the dataSource. \n \n",
        name:"willFetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"new criteria to test.",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"New text match style. If not passed assumes       textMatchStyle will not be modified.",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"true if server fetch would be required to satisfy new criteria.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:FormItem.updateState":{
        ref:"method:FormItem.updateState",
        flags:"A",
        description:" Update the visual state of a FormItem to reflect any changes in state or any changes in\n style settings (eg ${isc.DocUtils.linkForRef('attr:FormItem.textBoxStyle')}). \n <P>\n Calls to <code>updateState()</code> normally occur automatically as a consequence of\n focus changes, items becoming disabled, etc.  This method is advanced and intended only\n for use in workarounds.\n\n",
        name:"updateState",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:ListGrid.sortFieldNum":{
        deprecated:"as of version 7.0 in favor of ${isc.DocUtils.linkForRef('attr:ListGrid.sortField')}",
        flags:"IRW",
        type:"attr",
        ref:"attr:ListGrid.sortFieldNum",
        description:"Specifies the number of the field by which to sort this listGrid. Column numbers\n start at 0 for the left-most column.",
        name:"sortFieldNum",
        valueType:"number",
        seeAlso:[
        ],
        examples:[
            "${isc.DocUtils.linkForExampleId('sort')}"
        ],
        defaultValue:"null",
        groups:[
            "sorting"
        ],
        definingClass:"class:ListGrid"
    },
    "attr:DatabaseBrowser.includeSubstring":{
        ref:"attr:DatabaseBrowser.includeSubstring",
        flags:"IR",
        description:"If set, specifies a substring which must exist in a table name for it to be included in\n this DatabaseBrowser.  If this property is set to a List of strings, table names are\n included if they match any one of the strings.  The comparison is case-insensitive.\n <p>\n For example, <code>includeSubstring: [\"E\", \"qry\"]</code> would match all the following \n table names: \"table\", \"QryTbl\", \"QRY\", \"ORDERS\"",
        name:"includeSubstring",
        seeAlso:[
        ],
        valueType:"String | List of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "method:Calendar.showEventEditor":{
        ref:"method:Calendar.showEventEditor",
        flags:"",
        description:" Show an Event Editor for the passed event.  Event Editor's fill the Calendar and allow \n for editing of the built-in Event fields, like ${isc.DocUtils.linkForRef('attr:Calendar.nameField','name')} and \n ${isc.DocUtils.linkForRef('attr:Calendar.descriptionField','description')}, as well as any \n custom fields supplied via ${isc.DocUtils.linkForRef('attr:Calendar.eventDialogFields')}.\n <P>\n If no event is passed, a new Event with no default values is created via \n ${isc.DocUtils.linkForRef('method:Calendar.showNewEventEditor')}.\n \n",
        name:"showEventEditor",
        seeAlso:[
        ],
        params:[
            {
                description:"an existing event to show in the Editor",
                optional:true,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:DataBoundComponent.getField":{
        ref:"method:DataBoundComponent.getField",
        flags:"",
        description:" Return a field by a field index or field name.\n\n",
        name:"getField",
        seeAlso:[
        ],
        params:[
            {
                description:"field index or field.name",
                optional:false,
                name:"fieldID",
                defaultValue:null,
                type:"String || Number"
            }
        ],
        returns:{
            description:"Field description",
            type:"object"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:NavigationBar.rightButton":{
        ref:"attr:NavigationBar.rightButton",
        flags:"IR",
        description:"The button displayed to the right of the title in this NavigationBar. By default this\n will be a ${isc.DocUtils.linkForRef('class:NavigationButton')} with ${isc.DocUtils.linkForRef('attr:NavigationButton.direction','direction')} set\n to <code>\"forward\"</code>.",
        name:"rightButton",
        seeAlso:[
        ],
        valueType:"AutoChild NavigationButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "class:FusionChart":{
        methods:[
            "method:FusionChart.getDataColor"
        ],
        ref:"class:FusionChart",
        classAttrs:[
            "classAttr:FusionChart.allChartTypes"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Charts"
        ],
        attrs:[
            "attr:FusionChart.chartsBaseURL",
            "attr:FusionChart.chartURL",
            "attr:FusionChart.fusionVersion",
            "attr:FusionChart.chartProperties",
            "attr:FusionChart.dataColors"
        ],
        description:"Component that wraps the FusionCharts charting engine.\n <P>\n Provides multiple-series (area, bar, column, line, radar) and single-series (doughnut, pie)\n chart types. These charts all depict a single continuous dimension (eg revenue), broken down\n by one or two discrete dimensions (eg product, region).\n <P>\n <b>NOTE:</b> you must load the PluginBridges and Charts\n ${isc.DocUtils.linkForRef('group:loadingOptionalModules','Optional Modules')} before you can use FusionChart.",
        name:"FusionChart",
        implementsInterfaces:[
            "Chart"
        ],
        seeAlso:[
            {
                ref:"group:loadingOptionalModules",
                description:null
            }
        ],
        type:"class",
        requiresModules:[
            "Charts"
        ]
    },
    "attr:MultiFilePicker.maxUploadFields":{
        ref:"attr:MultiFilePicker.maxUploadFields",
        flags:"IRW",
        description:"The maximum number of upload fields to show.  If not specified, user can add as many\n upload fields as he wishes.",
        name:"maxUploadFields",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiFilePicker"
    },
    "attr:ResultSet.progressiveLoading":{
        ref:"attr:ResultSet.progressiveLoading",
        flags:"IRW",
        description:"Sets ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressive loading mode')} for this ResultSet.\n Any ${isc.DocUtils.linkForRef('class:DSRequest')}s issued by this ResultSet will copy this setting onto the request,\n overriding the OperationBinding- and DataSource-level settings.\n <p>\n This setting is applied automatically by ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s that have their \n own explicit setting for ${isc.DocUtils.linkForRef('attr:DataBoundComponent.progressiveLoading','progressiveLoading')}",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            },
            {
                ref:"attr:OperationBinding.progressiveLoading",
                description:null
            },
            {
                ref:"attr:DSRequest.progressiveLoading",
                description:null
            },
            {
                ref:"attr:DataBoundComponent.progressiveLoading",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "progressiveLoading"
        ]
    },
    "attr:RelativeDateItem.defaultQuantity":{
        ref:"attr:RelativeDateItem.defaultQuantity",
        flags:"IR",
        description:"Default quantity to show in the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.quantityField')}.",
        name:"defaultQuantity",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:ImgButton.align":{
        ref:"attr:ImgButton.align",
        flags:"IRW",
        description:"Horizontal alignment of this component's title.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "appearance"
        ]
    },
    "attr:CubeGrid.canReorderColumns":{
        ref:"attr:CubeGrid.canReorderColumns",
        flags:"IRW",
        description:"If true, body columns can be reordered via the innermost column headers.",
        name:"canReorderColumns",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "classMethod:Class.addMethods":{
        ref:"classMethod:Class.addMethods",
        flags:"",
        description:"\n Helper method for adding method definitions to all instances of this class.<P>\n\n The added methods can be called as myInstance.method().<P>\n\n Functionally equivalent to ${isc.DocUtils.linkForRef('method:Class.addProperties')}, which works with both properties\n and methods.\n\n",
        name:"addMethods",
        seeAlso:[
        ],
        params:[
            {
                description:"objects with methods to add (think named parameters).                                  all the methods of each argument will be applied\n                                  as instance-level methods.",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"the class after methods have been added to it",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:Calendar.eventMoved":{
        ref:"method:Calendar.eventMoved",
        flags:"",
        description:" Called when an event is moved via dragging by a user.  Return false to disallow the move.\n",
        name:"eventMoved",
        seeAlso:[
        ],
        params:[
            {
                description:"new start date and time that the event is being moved to",
                optional:false,
                name:"newDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the event as it will be after this movement",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"the lane into which the event was moved",
                optional:false,
                name:"newLane",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"return false to disallow the move.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "attr:DateChooser.closeOnDateClick":{
        ref:"attr:DateChooser.closeOnDateClick",
        flags:"IRW",
        description:"When editing a \"date\" value, with no time portion, clicking on a date-cell selects the \n date and closes the DateChooser.  When a ${isc.DocUtils.linkForRef('attr:DateChooser.showTimeItem','time portion')} \n is required, however, the ${isc.DocUtils.linkForRef('attr:DateChooser.applyButton','apply button')} must be clicked\n to close the chooser, by default.\n <P>\n Set this attribute to true to have the DateChooser close when a user clicks in a \n date-cell, even if the ${isc.DocUtils.linkForRef('attr:DateChooser.timeItem','timeItem')} is showing.",
        name:"closeOnDateClick",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:Img.altText":{
        ref:"attr:Img.altText",
        flags:"IRW",
        description:"If specified this property will be included as the <code>alt</code> text for the image HMTL\n element. This is useful for improving application accessibility.\n <P>\n <b><code>altText</code> and hover prompt / tooltip behavior:</b> Note that some\n browsers, including Internet Explorer 9, show a native hover tooltip containing the \n img tag's <code>alt</code> attribute. Developers should not rely on this behavior to show\n the user a hover prompt - instead the ${isc.DocUtils.linkForRef('attr:Img.prompt')} attribute should be used.<br>\n To set alt text <i>and</i> ensure a hover prompt shows up in all browsers, developers may\n set ${isc.DocUtils.linkForRef('attr:Img.prompt')} and <code>altText</code> to the same value. If both \n these attributes are set, the standard SmartClient prompt behavior will show a hover\n prompt in most browsers, but will be suppressed for browsers where a native tooltip \n is shown for altText. Note that setting <code>altText</code> and <code>prompt</code> to\n different values is not recommended - the prompt value will be ignored in favor of the\n altText in this case.",
        name:"altText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Img",
        groups:[
            "accessibility"
        ]
    },
    "class:FacetValue":{
        methods:[
            "method:FacetValue.getCellValue",
            "method:FacetValue.formatCellValue"
        ],
        ref:"class:FacetValue",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Analytics/CubeGrid"
        ],
        attrs:[
            "attr:FacetValue.id",
            "attr:FacetValue.title",
            "attr:FacetValue.parentId",
            "attr:FacetValue.canEdit",
            "attr:FacetValue.collapsed",
            "attr:FacetValue.canCollapse",
            "attr:FacetValue.isMinimizeValue",
            "attr:FacetValue.width",
            "attr:FacetValue.align",
            "attr:FacetValue.cellAlign",
            "attr:FacetValue.borderBefore",
            "attr:FacetValue.borderAfter",
            "attr:FacetValue.selectionBoundary",
            "attr:FacetValue.titleHilite"
        ],
        description:"Facet value definition object made use of by the ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrid')} and\n ${isc.DocUtils.linkForRef('class:FacetChart','FacetChart')} classes (contained by facets).",
        name:"FacetValue",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "Analytics"
        ]
    },
    "method:ListGrid.clearFieldError":{
        ref:"method:ListGrid.clearFieldError",
        flags:"",
        description:" Clears any validation errors for some cell.\n",
        name:"clearFieldError",
        seeAlso:[
            {
                ref:"method:ListGrid.setFieldError",
                description:null
            }
        ],
        params:[
            {
                description:"row index of cell to add validation error for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"col index or field name of cell to add validation error for",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"number | string"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "attr:TextExportSettings.dateFormat":{
        ref:"attr:TextExportSettings.dateFormat",
        flags:"IR",
        description:"Format to use when outputting date values.  Default is to use the format expected by\n Microsoft Excel (eg 1-2-2011), which Excel will turn into a real date value (see\n ${isc.DocUtils.linkForRef('group:excelPasting')}).  The current month-day-year order as set by\n ${isc.DocUtils.linkForRef('classMethod:Date.setInputFormat')} will be used.",
        name:"dateFormat",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "attr:ListGrid.stopOnErrors":{
        ref:"attr:ListGrid.stopOnErrors",
        flags:"IRWA",
        description:"If this is an editable listGrid, this property determines how failure to save due to\n validation errors should be displayed to the user.\n <P>\n If this property is true, when validation errors occur the errors will be displayed\n to the user in an alert, and focus will be returned to the first cell to fail validation.\n <P>\n If false, the cells that failed validation will be silently styled with the\n editFailedBaseStyle.\n <p>\n <b>Note:</b> stopOnErrors being set to true implies that 'waitForSave' is also true.\n We will not dismiss the editor until save has completed if stopOnErrors is true.",
        name:"stopOnErrors",
        seeAlso:[
            {
                ref:"attr:ListGrid.waitForSave",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:List.dataChanged":{
        ref:"method:List.dataChanged",
        flags:"A",
        description:" Method called when this array changes in some way.  Observe the method to react to changes in\n this list.\n <P>\n Note: dataChanged() will only fire when items are added, removed or rearranged.  If a list\n contains objects, dataChanged() will not fire if changes are made to objects within the list\n without changing their position within the list.  If an observer of dataChanged() needs to react\n to such a change, you can manually fire dataChanged() by simply calling it.\n <P>\n Note: may be called multiple times as the result of a multi-item add or remove, etc.\n\n",
        name:"dataChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "method:FacetChart.getMax":{
        ref:"method:FacetChart.getMax",
        flags:"",
        description:" Calculate the maximum of the data from a single metric.\n <p>\n The first argument, criteria, determines which metric is used to calculate the maximum.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n",
        name:"getMax",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            }
        ],
        returns:{
            description:"the maximum of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:DrawItem.setCanDrag":{
        ref:"method:DrawItem.setCanDrag",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag','canDrag')}.\n\n",
        name:"setCanDrag",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for <code>this.canDrag</code>.",
                optional:false,
                name:"canDrag",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:DSRequest.requestId":{
        ref:"attr:DSRequest.requestId",
        flags:"RA",
        description:"Automatically generated unique ID for this request. This ID will be required by developers \n making use of the ${isc.DocUtils.linkForRef('type:DSProtocol','\"clientCustom\" dataProtocol')}.",
        name:"requestId",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:FormItem.ID":{
        ref:"attr:FormItem.ID",
        flags:"IRW",
        description:"Global identifier for referring to the formItem in JavaScript.  The ID property is\n optional if you do not need to refer to the widget from JavaScript, or can refer to it\n indirectly (for example, via <code>form.getItem(\"<i>itemName</i>\")</code>).\n <P>\n An internal, unique ID will automatically be created upon instantiation for any formItem\n where one is not provided.",
        name:"ID",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "basics"
        ]
    },
    "attr:FormItemIcon.baseStyle":{
        ref:"attr:FormItemIcon.baseStyle",
        flags:"IRWA",
        description:"Base CSS style. If set, as the component changes state and/or is focused, suffixes\n will be added to the base style. Possible suffixes include \"Over\" if the user mouses\n over the icon and ${isc.DocUtils.linkForRef('attr:FormItemIcon.showOver','this.showOver')} is true, \"Disabled\" if\n the icon is disabled, and \"Focused\". In addition, if ${isc.DocUtils.linkForRef('attr:FormItemIcon.showRTL','showRTL')}\n is enabled, then an \"RTL\" suffix will be added.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon"
    },
    "attr:TreeGrid.selectionProperty":{
        ref:"attr:TreeGrid.selectionProperty",
        flags:"IRA",
        description:"If specified, the selection object for this list will use this property to mark records\n as selected.  In other words, if this attribute were set to <code>\"isSelected\"</code>\n any records in the listGrid data where <code>\"isSelected\"</code> is <code>true</code>\n will show up as selected in the grid. Similarly if records are selected within the grid\n after the grid has been created, this property will be set to true on the selected\n records.",
        name:"selectionProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "selection",
            "appearance"
        ]
    },
    "classMethod:RPCResponse.create":{
        ref:"classMethod:RPCResponse.create",
        flags:"",
        description:" RPCResponses shouldn't be created directly. Instances of this class are automatically\n created and optionally passed to you in the callback you specify as part of your \n ${isc.DocUtils.linkForRef('class:RPCRequest')}.\n \n",
        name:"create",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:RPCResponse"
    },
    "attr:ListGrid.valueIconHeight":{
        ref:"attr:ListGrid.valueIconHeight",
        flags:"IRW",
        description:"Height for value icons for this listGrid.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconSize')}.\n Can be overridden at the field level",
        name:"valueIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "type:SortArrow":{
        ref:"type:SortArrow",
        values:[
            {
                description:"Don't show a sort arrow at all.",
                value:"\"none\""
            },
            {
                description:"Display sort arrow in the upper-right corner (above the scrollbar) only.",
                value:"\"corner\""
            },
            {
                description:"Display sort arrow above each field header only.",
                value:"\"field\""
            },
            {
                description:"Display sort arrow above each field header AND in corner above scrollbar.BOTH:\"both\", // NOTE: Canvas establishes this constant",
                value:"\"both\""
            }
        ],
        description:"Do we display an arrow for the sorted field ?",
        name:"SortArrow",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "sorting",
            "appearance"
        ]
    },
    "attr:PickList.emptyPickListHeight":{
        ref:"attr:PickList.emptyPickListHeight",
        flags:"IRW",
        description:"Height for an empty pick list (showing the empty message), if the pick list has no\n records and ${isc.DocUtils.linkForRef('attr:PickList.hideEmptyPickList')} is <code>false</code>.",
        name:"emptyPickListHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "method:ListGrid.invalidateRecordComponents":{
        ref:"method:ListGrid.invalidateRecordComponents",
        flags:"",
        description:" Invalidates the currently visible set of ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponents')}\n and gets fresh ones for the visible rows in the grid according to the\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentPoolingMode')}\n <P>\n See also ${isc.DocUtils.linkForRef('method:ListGrid.refreshRecordComponent')} which allows you to refresh a specific\n recordComponent\n\n",
        name:"invalidateRecordComponents",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Menu.keyFieldProperties":{
        ref:"attr:Menu.keyFieldProperties",
        flags:"IR",
        description:"Custom properties for the automatically generated key column.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Menu.showKeys')} for an overview of the key column.",
        name:"keyFieldProperties",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:Window.addMember":{
        ref:"method:Window.addMember",
        flags:"A",
        description:" Same as ${isc.DocUtils.linkForRef('method:Layout.addMember')}.  Note that in order to add items to ${isc.DocUtils.linkForRef('attr:Window.body')},\n you use ${isc.DocUtils.linkForRef('method:Window.addItem')} rather than <code>addMember</code>.  Adding a member to \n a Window adds the member as a sibling to the header, body and other built-in Window\n subcomponents.\n",
        name:"addMember",
        seeAlso:[
            {
                ref:"method:Window.addMembers",
                description:null
            }
        ],
        params:[
            {
                description:"the canvas object to be added to the layout",
                optional:false,
                name:"newMember",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"the position in the layout to place newMember (starts with 0);                            if omitted, it will be added at the last position",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "type:TimeDisplayFormat":{
        ref:"type:TimeDisplayFormat",
        values:[
            {
                description:"String will display with seconds and am/pm indicator:<code>[H]H:MM:SS am|pm</code>. <br>\n  Example: <code>3:25:15 pm</code>",
                value:"toTime"
            },
            {
                description:"String will display with seconds in 24 hour time: <code>[H]H:MM:SS</code>. <br>\n  Example: <code>15:25:15</code>",
                value:"to24HourTime"
            },
            {
                description:"String will display with seconds, with a 2 digit hour and am/pm indicator: \n  <code>HH:MM:SS am|pm</code> <br>\n  Example: <code>03:25:15 pm</code>",
                value:"toPaddedTime"
            },
            {
                description:"String will display with seconds, with a 2 digit hour in 24 hour format: \n  <code>HH:MM:SS</code> <br>\n  Examples: <code>15:25:15</code>, <code>03:16:45</code>",
                value:"toPadded24HourTime"
            },
            {
                description:"String will have no seconds and be in 12 hour format:<code>[H]H:MM am|pm</code><br>\n  Example: <code>3:25 pm</code>",
                value:"toShortTime"
            },
            {
                description:"String will have no seconds and be in 24 hour format: <code>[H]H:MM</code><br>\n  Example:<code>15:25</code>",
                value:"toShort24HourTime"
            },
            {
                description:"String will have no seconds and will display a 2 digit hour, in 12 hour clock format:\n  <code>HH:MM am|pm</code><br>\n  Example: <code>03:25 pm</code>",
                value:"toShortPaddedTime"
            },
            {
                description:"String will have no seconds and will display with a 2 digit hour in 24 hour clock format:\n <code>HH:MM</code><br>\n Examples: <code>15:25</code>, <code>03:16</code>",
                value:"toShortPadded24HourTime"
            }
        ],
        description:"String designating a standard time format for displaying the times associated with \n dates strings.",
        name:"TimeDisplayFormat",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Canvas.animateFade":{
        ref:"method:Canvas.animateFade",
        flags:"",
        description:" Animate a change in opacity from the widget's current opacity to the specified opacity.\n",
        name:"animateFade",
        seeAlso:[
        ],
        params:[
            {
                description:"desired final opacity",
                optional:false,
                name:"opacity",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"When the fade completes this callback will be fired. Single                              'earlyFinish' parameter will be passed if the animation was\n                              cut short by a call to finishAnimation",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"AnimationCallback"
            },
            {
                description:"Duration in ms of the animated fade",
                optional:true,
                name:"duration",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Optional animation acceleration to bias the ratios",
                optional:true,
                name:"acceleration",
                defaultValue:null,
                type:"AnimationAcceleration"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateFade')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "method:DataSource.exportClientData":{
        ref:"method:DataSource.exportClientData",
        flags:"",
        description:" Exports arbitrary client-side data, with client-side formatters applied, so is suitable \n for direct display to users.  This method can be used to export data formatted outside\n of any kind of visual component.\n <P>\n If you do not specify an ${isc.DocUtils.linkForRef('attr:OperationBinding.operationId','operationId')} in the \n <code>requestProperties</code> you pass to this method, it behaves exactly the same as\n the ${isc.DocUtils.linkForRef('classMethod:DataSource.exportClientData','static classMethod')} of the same name.\n If you do specify an <code>operationId</code>, the framework expects your DataSource to\n configure an ${isc.DocUtils.linkForRef('class:OperationBinding')} of ${isc.DocUtils.linkForRef('attr:OperationBinding.operationType','operationType')}\n \"clientExport\" with the same <code>operationId</code>.  The framework will then send the\n <code>exportClientData</code> request via the ordinary ${isc.DocUtils.linkForRef('class:DSRequest')} mechanism,\n which allows you to use normal framework features in the client data export.  \n <p>\n For example, you could add a ${isc.DocUtils.linkForRef('group:dmiOverview','DMI declaration')} to your\n <code>operationBinding</code>, which would allow you to write server-side code that\n intervenes in the export process - for instance, by calling the\n <code>getExportObject()</code> API to do something special with the export document,\n like saving it to a database table or sending it to an email list.\n <p>\n When you use the specific <code>operationId</code> version of this API, both the \n SmartClient Server and server-side DataSources are required.\n <P>\n To export unformatted data, see ${isc.DocUtils.linkForRef('method:DataSource.exportData','exportData')} which does\n not include client-side formatters, but requires both the SmartClient server and the \n presence of server-side DataSources.\n <P>\n Note that field ${isc.DocUtils.linkForRef('attr:DataSourceField.displayFormat','displayFormat')} is honored for \n \"date\" and \"datetime\" fields when exporting direct to Excel; see the displayFormat\n docs for details.\n\n",
        name:"exportClientData",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of Records to export",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Array of Record"
            },
            {
                description:"Request properties for the export",
                optional:false,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest properties"
            },
            {
                description:"Optional callback.  Note that this is only applicable  if you also specify ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient','exportToClient')}: false in the \n request properties",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:Canvas.getScrollRight":{
        ref:"method:Canvas.getScrollRight",
        flags:"",
        description:" Returns the scrollLeft required to scroll horizontally to the end of this widget's content.\n",
        name:"getScrollRight",
        seeAlso:[
        ],
        returns:{
            description:"scroll bottom coordinate",
            type:"int"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "method:ValuesManager.validate":{
        ref:"method:ValuesManager.validate",
        flags:"",
        description:" Validate the current set of values for this values manager against validators defined\n in the member forms. For databound valuesManagers, also perform validation against any\n validators defined on datasource fields.\n <P>\n Note that if validation errors occur for a value that is not shown in any member forms,\n those errors will cause a warning and ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')} will be\n called.  This can occur if:<br>\n - A datasource field has no corresponding item in any member form<br>\n - The item in question is hidden<br>\n - The member form containing the item is hidden.\n\n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"true if all validation passed",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('formSplitting')}"
        ],
        definingClass:"class:ValuesManager"
    },
    "attr:DetailViewerField.format":{
        ref:"attr:DetailViewerField.format",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} for numeric or date formatting.  See ${isc.DocUtils.linkForRef('attr:DataSourceField.format')}.",
        name:"format",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "exportFormatting"
        ]
    },
    "attr:Canvas.dragOpacity":{
        ref:"attr:Canvas.dragOpacity",
        flags:"IRWA",
        description:"If this widget has dragAppearance <code>\"target\"</code>, this value specifies the\n opacity to render the target while it is being dragged. A null value implies we do\n not modify the opacity.",
        name:"dragOpacity",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragEffects')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "classMethod:XMLTools.parseXML":{
        ref:"classMethod:XMLTools.parseXML",
        flags:"",
        description:" Parse XML text into an ${isc.DocUtils.linkForRef('type:XMLDocument')}.  Parse errors, if any, are reported to the log.\n\n",
        name:"parseXML",
        seeAlso:[
        ],
        params:[
            {
                description:"XML text to be parsed",
                optional:false,
                name:"xmlText",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"resulting XMLDocument",
            type:"XMLDocument"
        },
        type:"classMethod",
        definingClass:"class:XMLTools"
    },
    "method:SplitPane.setShowLeftButton":{
        ref:"method:SplitPane.setShowLeftButton",
        flags:"",
        description:" Show or hide the ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButton','leftButton')} of the\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')}.\n\n",
        name:"setShowLeftButton",
        seeAlso:[
        ],
        params:[
            {
                description:"if <code>true</code>, the button will be shown, otherwise hidden.",
                optional:false,
                name:"visible",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "type:ProcessValueType":{
        ref:"type:ProcessValueType",
        values:[
            {
                description:"values that are not already strings are converted via toString()",
                value:"\"string\""
            },
            {
                description:"the strings \"true\" and \"false\" become boolean true and false.  All other                 Strings non-empty String values are true, all numbers are true except 0, and\n                 all other non-null values are true",
                value:"\"boolean\""
            },
            {
                description:"values are converted via toString() and parsing as a decimal number.                 Invalid values trigger a transition to the ${isc.DocUtils.linkForRef('attr:StateTask.failureElement')}",
                value:"\"decimal\""
            },
            {
                description:"values are converted via toString(), parsing as a number, and rounding to                 nearest integer.  Invalid values trigger a transition to the\n                 ${isc.DocUtils.linkForRef('attr:StateTask.failureElement')}",
                value:"\"integer\""
            },
            {
                description:"any input which is not already a Record or Map becomes null",
                value:"\"record\""
            },
            {
                description:"generic array type - will convert value to an array of the same type as the               existing value",
                value:"\"array\""
            }
        ],
        description:null,
        name:"ProcessValueType",
        seeAlso:[
        ],
        type:"type"
    },
    "method:ColorPicker.colorSelected":{
        ref:"method:ColorPicker.colorSelected",
        flags:"",
        description:" Override this method to be notified when the user selects a color\n either by clicking a basic color box in simple mode, or by clicking \n the OK button in complex mode. It is not intended that client code \n call this method.\n",
        name:"colorSelected",
        seeAlso:[
            {
                ref:"method:ColorPicker.colorChanged",
                description:null
            }
        ],
        params:[
            {
                description:"The color selected, in HTML format",
                optional:false,
                name:"color",
                defaultValue:null,
                type:"String"
            },
            {
                description:"The opacity selected, from 0-100.",
                optional:false,
                name:"opacity",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "method:Canvas.parentMoved":{
        ref:"method:Canvas.parentMoved",
        flags:"",
        description:" Notification method fire when an ancestor of this component's position changes.\n",
        name:"parentMoved",
        seeAlso:[
            {
                ref:"method:Canvas.moved",
                description:null
            }
        ],
        params:[
            {
                description:"the ancestor that moved",
                optional:false,
                name:"parent",
                defaultValue:null,
                type:"canvas"
            },
            {
                description:"horizontal difference between current and previous position",
                optional:false,
                name:"deltaX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"vertical difference between current and previous position",
                optional:false,
                name:"deltaY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:DataSourceField.detail":{
        ref:"attr:DataSourceField.detail",
        flags:"IR",
        description:"Whether this field should be considered a \"detail\" field by a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}.\n <P>\n Detail fields won't be shown by default in a DataBoundComponent where \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.showDetailFields')} is false.  This allows for some DataBound\n components, like a ${isc.DocUtils.linkForRef('class:ListGrid')}, to show a summary view of records which displays only \n the most commonly viewed fields by default, while other DataBoundComponents, like a\n ${isc.DocUtils.linkForRef('class:DetailViewer')}, show all fields by default.\n <P>\n In addition, the ${isc.DocUtils.linkForRef('method:FormItem.showIf','formItem.showIf')} property is supported in multiple\n components for conditional visibility - see for example ${isc.DocUtils.linkForRef('method:ListGridField.showIf')} and\n ${isc.DocUtils.linkForRef('method:FormItem.showIf')}).",
        name:"detail",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "method:ColorPicker.getHtmlColor":{
        ref:"method:ColorPicker.getHtmlColor",
        flags:"",
        description:" Returns the currently-selected color, in HTML color representation form, as a string.\n HTML color representation is a hash sign, followed by the red, green and blue elements\n of the color in 2-digit hex form - for example \"#F17F1D\"\n",
        name:"getHtmlColor",
        seeAlso:[
            {
                ref:"method:ColorPicker.setHtmlColor",
                description:null
            }
        ],
        returns:{
            description:"HTML color value",
            type:"String"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:Calendar.scrollToWorkday":{
        ref:"attr:Calendar.scrollToWorkday",
        flags:"IR",
        description:"If set, causes the ${isc.DocUtils.linkForRef('attr:Calendar.workdayStart','workday hours')} to be sized to fill the available space\n in the day view and week view, and automatically scrolls these views to the start of the\n workday when the calendar is first displayed and whenever the user switches to a new day or\n week.",
        name:"scrollToWorkday",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "workday"
        ]
    },
    "method:PortalLayout.willRestorePortlet":{
        ref:"method:PortalLayout.willRestorePortlet",
        flags:"",
        description:" Method called when a ${isc.DocUtils.linkForRef('class:Portlet')} in this PortalLayout is about to be\n restored to its normal place (after having been\n ${isc.DocUtils.linkForRef('method:PortalLayout.portletMaximized','maximized')}. Note that this method is only\n called when the user explicitly clicks on the portlet's\n ${isc.DocUtils.linkForRef('attr:Window.restoreButton','restore button')} -- it is not called when\n programmatically restoring a portlet via ${isc.DocUtils.linkForRef('method:Window.restore','restore()')}.\n <p>\n Return false to cancel the action.\n \n",
        name:"willRestorePortlet",
        seeAlso:[
            {
                ref:"method:PortalLayout.portletRestored",
                description:null
            }
        ],
        params:[
            {
                description:"the Portlet which will be restored",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        returns:{
            description:"whether the action should proceed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:ListGrid.animateSelectionUnder":{
        ref:"attr:ListGrid.animateSelectionUnder",
        flags:"IRWA",
        description:"If the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionUnderCanvas','selectionUnderCanvas')} is enabled, setting\n this property to <code>true</code> ensures that when the <code>selectionUnderCanvas</code>\n is displayed it is animated into view via ${isc.DocUtils.linkForRef('method:Canvas.animateShow')}. Note that the\n animation effect may be customized via ${isc.DocUtils.linkForRef('attr:Canvas.animateShowEffect')},\n ${isc.DocUtils.linkForRef('attr:Canvas.animateShowTime')} and ${isc.DocUtils.linkForRef('attr:Canvas.animateShowAcceleration')} set in\n <code>selectionUnderCanvasProperties</code>.",
        name:"animateSelectionUnder",
        seeAlso:[
            {
                ref:"attr:ListGrid.animateSelection",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridAnimatedSelection')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "method:ResultSet.rowIsLoaded":{
        ref:"method:ResultSet.rowIsLoaded",
        flags:"A",
        description:" Whether the given row has been loaded.\n <p>\n Unlike get(), will not trigger a server fetch.  \n\n",
        name:"rowIsLoaded",
        seeAlso:[
        ],
        params:[
            {
                description:"row to check",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true if the given row has been loaded, false if it has not been                   loaded or is still in the process of being loaded",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:FacetChart.hoverRectProperties":{
        ref:"attr:FacetChart.hoverRectProperties",
        flags:"IR",
        description:"Properties for rectangle that draws behind of a floating hover label that represents\n the data value. See ${isc.DocUtils.linkForRef('attr:FacetChart.showValueOnHover')} for more details.",
        name:"hoverRectProperties",
        seeAlso:[
        ],
        valueType:"DrawRect Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:CubeGrid.facetValueContextClick":{
        ref:"method:CubeGrid.facetValueContextClick",
        flags:"",
        description:" StringMethod handler fired when context click occurs over a facetValue button in a header.\n\n",
        name:"facetValueContextClick",
        seeAlso:[
        ],
        params:[
            {
                description:"FacetValueMap describing the appropriate header button",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events"
        ]
    },
    "method:DataBoundComponent.editSummaryField":{
        ref:"method:DataBoundComponent.editSummaryField",
        flags:"",
        description:" Method to display a ${isc.DocUtils.linkForRef('class:SummaryBuilder')} to edit a Summary Field.  If the function is called\n without a parameter, a new field will be created when the summary is saved.\n\n",
        name:"editSummaryField",
        seeAlso:[
        ],
        params:[
            {
                description:"Field to edit or null to add a new summary column",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Field"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "summaryFields"
        ]
    },
    "attr:StretchImg.showGrip":{
        ref:"attr:StretchImg.showGrip",
        flags:"IRA",
        description:"Should we show a \"grip\" image floating above the center of this widget?",
        name:"showGrip",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "grip"
        ]
    },
    "method:TimeItem.setSelectionRange":{
        ref:"method:TimeItem.setSelectionRange",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.setSelectionRange','setSelectionRange')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"setSelectionRange",
        seeAlso:[
        ],
        params:[
            {
                description:"character index for start of new selection",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"int"
            },
            {
                description:"character index for end of new selection",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:PrintProperties.omitControls":{
        ref:"attr:PrintProperties.omitControls",
        flags:"IR",
        description:"An array of Strings indicating the classNames of controls that should be omitted from\n printing.  By default, <code>omitControls</code> includes all button-based controls, menus\n and similar interactive controls that are typically useless in printed output.\n <P>\n All subclasses of the specified classes are also omitted.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:PrintProperties.includeControls')}.",
        name:"omitControls",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PrintProperties",
        groups:[
            "printing"
        ]
    },
    "attr:DetailViewerField.canHilite":{
        ref:"attr:DetailViewerField.canHilite",
        flags:"IRW",
        description:"Determines whether this field can be hilited.  Set to false to prevent this\n field from appearing in HiliteEditor.",
        name:"canHilite",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "hiliting"
        ]
    },
    "attr:FormulaBuilder.cancelButtonTitle":{
        ref:"attr:FormulaBuilder.cancelButtonTitle",
        flags:"IRWA",
        description:"The default title for the \"Cancel\" button.",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.isModal":{
        ref:"attr:Window.isModal",
        flags:"IRW",
        description:"If true, when shown this Window will intercept and block events to all other existing\n components on the page.\n <P>\n Use ${isc.DocUtils.linkForRef('attr:Window.showModalMask')} to darken all other elements on the screen when a modal dialog\n is showing.\n <P>\n Chained modal windows - that is, modal windows that launch other modal windows - are\n allowed.  You can accomplish this by simply creating a second modal Window while a modal\n Window is showing.\n <P>\n Note only top-level Windows (Windows without parents) can be modal.",
        name:"isModal",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('modality')}"
        ],
        definingClass:"class:Window",
        groups:[
            "modal"
        ]
    },
    "type:LineBreakStyle":{
        ref:"type:LineBreakStyle",
        values:[
            {
                description:"Use the default line-break style of the server OS",
                value:"\"default\""
            },
            {
                description:"Use UNIX-style line-breaks (LF only)",
                value:"\"unix\""
            },
            {
                description:"Use MAC-style line-breaks (CR only)",
                value:"\"mac\""
            },
            {
                description:"Use DOS-style line-breaks (both CR & LF)",
                value:"\"dos\""
            }
        ],
        description:"The style of line-breaks to use when exporting data",
        name:"LineBreakStyle",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed"
    },
    "class:CubeGrid":{
        methods:[
            "method:CubeGrid.getEventRow",
            "method:CubeGrid.getEventColumn",
            "method:CubeGrid.getCellStyle",
            "method:CubeGrid.getBaseStyle",
            "method:CubeGrid.setEditValues",
            "method:CubeGrid.setEditValue",
            "method:CubeGrid.getEditValue",
            "method:CubeGrid.getEditedRecord",
            "method:CubeGrid.getEditedCell",
            "method:CubeGrid.getEditValues",
            "method:CubeGrid.clearEditValue",
            "method:CubeGrid.saveEdits",
            "method:CubeGrid.getAllEditCells",
            "method:CubeGrid.discardAllEdits",
            "method:CubeGrid.recordHasChanges",
            "method:CubeGrid.hasChanges",
            "method:CubeGrid.saveAllEdits",
            "method:CubeGrid.getFacet",
            "method:CubeGrid.getFacetValue",
            "method:CubeGrid.getRollupValue",
            "method:CubeGrid.getCellFacetValues",
            "method:CubeGrid.getFacetValuesColumn",
            "method:CubeGrid.getFacetValuesRow",
            "method:CubeGrid.getRowFacetValues",
            "method:CubeGrid.getColumnFacetValues",
            "method:CubeGrid.getCellRecord",
            "method:CubeGrid.getCellRow",
            "method:CubeGrid.getCellColumn",
            "method:CubeGrid.getCellCoordinates",
            "method:CubeGrid.dataArrived",
            "method:CubeGrid.facetLabelHoverHTML",
            "method:CubeGrid.facetValueHoverHTML",
            "method:CubeGrid.toggleFieldOpenState",
            "method:CubeGrid.expandField",
            "method:CubeGrid.collapseField",
            "method:CubeGrid.closeFacet",
            "method:CubeGrid.closeColumn",
            "method:CubeGrid.facetValueSelectionChanged",
            "method:CubeGrid.getSelectedCells",
            "method:CubeGrid.getSelectedCellIds",
            "method:CubeGrid.anyCellSelected",
            "method:CubeGrid.cellIsSelected",
            "method:CubeGrid.selectCell",
            "method:CubeGrid.deselectCell",
            "method:CubeGrid.selectCells",
            "method:CubeGrid.deselectCells",
            "method:CubeGrid.selectAllCells",
            "method:CubeGrid.deselectAllCells",
            "method:CubeGrid.getSelectedFacetValues",
            "method:CubeGrid.facetValuesSelected",
            "method:CubeGrid.facetHasSelection",
            "method:CubeGrid.getFacetsHavingSelection",
            "method:CubeGrid.selectFacetValues",
            "method:CubeGrid.deselectFacetValues",
            "method:CubeGrid.selectFacetValue",
            "method:CubeGrid.deselectFacetValue",
            "method:CubeGrid.selectAllFacetValues",
            "method:CubeGrid.deselectAllFacetValues",
            "method:CubeGrid.deselectAll",
            "method:CubeGrid.resizeFacetValue",
            "method:CubeGrid.hiliteCell",
            "method:CubeGrid.hiliteCellList",
            "method:CubeGrid.hiliteFacetValue",
            "method:CubeGrid.setFacetTitle",
            "method:CubeGrid.setFacetTitleAlign",
            "method:CubeGrid.setFacetValueTitle",
            "method:CubeGrid.setFacetValueTitleAlign",
            "method:CubeGrid.getFacetValueLayout",
            "method:CubeGrid.getRowFacetLayout",
            "method:CubeGrid.getColumnFacetLayout",
            "method:CubeGrid.setEnableCharting",
            "method:CubeGrid.makeChart",
            "method:CubeGrid.addRowFacet",
            "method:CubeGrid.addColumnFacet",
            "method:CubeGrid.addFacet",
            "method:CubeGrid.removeFacet",
            "method:CubeGrid.setFixedFacetValue",
            "method:CubeGrid.facetValueOver",
            "method:CubeGrid.facetValueOut",
            "method:CubeGrid.facetValueHover",
            "method:CubeGrid.facetValueContextClick",
            "method:CubeGrid.facetValueReordered",
            "method:CubeGrid.facetAdded",
            "method:CubeGrid.facetRemoved",
            "method:CubeGrid.facetMoved",
            "method:CubeGrid.fixedFacetValueChanged",
            "method:CubeGrid.sortByFacetValues",
            "method:CubeGrid.sortByFacetId",
            "method:CubeGrid.facetLabelOver",
            "method:CubeGrid.facetLabelOut",
            "method:CubeGrid.facetLabelHover",
            "method:CubeGrid.cellSelectionChanged"
        ],
        exampleConfig:"CubeGrid.xml",
        ref:"class:CubeGrid",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Analytics"
        ],
        attrs:[
            "attr:CubeGrid.styleName",
            "attr:CubeGrid.bodyStyleName",
            "attr:CubeGrid.baseStyle",
            "attr:CubeGrid.alternateRecordStyles",
            "attr:CubeGrid.skinImgDir",
            "attr:CubeGrid.innerHeaderBaseStyle",
            "attr:CubeGrid.colHeaderBaseStyle",
            "attr:CubeGrid.rowHeaderBaseStyle",
            "attr:CubeGrid.facetValueHoverWidth",
            "attr:CubeGrid.facetLabelHoverWidth",
            "attr:CubeGrid.facetValueHoverHeight",
            "attr:CubeGrid.facetLabelHoverHeight",
            "attr:CubeGrid.facetValueHoverAlign",
            "attr:CubeGrid.facetLabelHoverAlign",
            "attr:CubeGrid.facetValueHoverVAlign",
            "attr:CubeGrid.facetLabelHoverVAlign",
            "attr:CubeGrid.facetValueHoverStyle",
            "attr:CubeGrid.facetLabelHoverStyle",
            "attr:CubeGrid.fixedFacetValues",
            "attr:CubeGrid.hilites",
            "attr:CubeGrid.dataSource",
            "attr:CubeGrid.autoFetchData",
            "attr:CubeGrid.initialCriteria",
            "attr:CubeGrid.facets",
            "attr:CubeGrid.showFacetValueContextMenus",
            "attr:CubeGrid.canSelectValues",
            "attr:CubeGrid.canSelectHeaders",
            "attr:CubeGrid.autoSelectHeaders",
            "attr:CubeGrid.autoSelectValues",
            "attr:CubeGrid.simpleDeselect",
            "attr:CubeGrid.columnFacets",
            "attr:CubeGrid.rowFacets",
            "attr:CubeGrid.hideEmptyFacetValues",
            "attr:CubeGrid.hideEmptyAxis",
            "attr:CubeGrid.data",
            "attr:CubeGrid.valueProperty",
            "attr:CubeGrid.cellIdProperty",
            "attr:CubeGrid.canEdit",
            "attr:CubeGrid.editByCell",
            "attr:CubeGrid.saveByCell",
            "attr:CubeGrid.canReorderColumns",
            "attr:CubeGrid.canResizeColumns",
            "attr:CubeGrid.canCollapseFacets",
            "attr:CubeGrid.canMinimizeFacets",
            "attr:CubeGrid.sortedFacetValues",
            "attr:CubeGrid.sortDirection",
            "attr:CubeGrid.canSortFacets",
            "attr:CubeGrid.canSortData",
            "attr:CubeGrid.canMinimizeColumns",
            "attr:CubeGrid.canMoveFacets",
            "attr:CubeGrid.rowHeaderGridMode",
            "attr:CubeGrid.autoSizeHeaders",
            "attr:CubeGrid.facetTitleAlign",
            "attr:CubeGrid.facetValueAlign",
            "attr:CubeGrid.cellAlign",
            "attr:CubeGrid.wrapFacetTitles",
            "attr:CubeGrid.wrapFacetValueTitles",
            "attr:CubeGrid.padTitles",
            "attr:CubeGrid.defaultFacetWidth",
            "attr:CubeGrid.rollupValue",
            "attr:CubeGrid.metricFacetId",
            "attr:CubeGrid.valueTitle",
            "attr:CubeGrid.bodyMinWidth",
            "attr:CubeGrid.bodyMinHeight",
            "attr:CubeGrid.enableCharting",
            "attr:CubeGrid.chartConstructor",
            "attr:CubeGrid.chartType",
            "attr:CubeGrid.chartConfirmThreshold"
        ],
        description:"The CubeGrid is an interactive grid component that presents very large, multi-dimensional\n data sets (also known as data cubes) for reporting or analytic applications.\n <P>\n CubeGrids are often called crosstabs, for their cross-tabular display of data dimensions in\n stacked/nested rows and columns, or pivot tables, for their ability to \"pivot\" dimensions\n between rows and columns to view a data cube from different perspectives. They are typically\n used in the querying and reporting front-ends of data warehousing, decision support, OLAP,\n and business intelligence systems.\n <P>\n For example, CubeGrids can be connected to Pentaho Mondrian, Jasper Reports, Microsoft\n Analysis Services and any other OLAP technology that supports the XMLA standard - the\n Isomorphic public wiki has \n <a href='http://wiki.smartclient.com/pages/viewpage.action?pageId=1441839' target='_blank'>examples</a>.\n of such integration.\n <P>\n <b>NOTE:</b> you must load the Analytics \n ${isc.DocUtils.linkForRef('group:loadingOptionalModules','Optional Module')} before you can use CubeGrid.\n <P>\n <B>Multi-Dimensional Data Terminology</B>\n <P>\n The CubeGrid refers to the dimensions of a data cube as facets, to the possible values in\n each facet as facet values, and to the values within the data cube as data values or cell\n values. Equivalent terms that are commonly used in data warehousing or business intelligence\n systems include:<br>\n <b>facet:</b> dimension, attribute, feature<br>\n <b>facet value:</b> dimension member, attribute value, feature value<br>\n <b>cell value:</b> data value, metric value, measure\n <P>\n <B>Visual Structure</B>\n <P>\n Like the ListGrid and TreeGrid components, the CubeGrid displays data values in a tabular\n \"body\" with adjacent \"headers\".  While the ListGrid and TreeGrid display rows of records\n with field values, the CubeGrid displays a body of individual cell values, each associated\n with a combination of facet values. The facet values for a cell are displayed in the column\n headers above the cell and row headers to the left of the cell. CubeGrids can display an\n arbitrary number of facets, by stacking multiple levels of row and/or column headers.\n <P>\n Except for the innermost column facet, each facet in a CubeGrid has a facet label adjacent\n to its row or column headers. The facet labels serve two main purposes: they display the\n titles of the facets, and they provide drag-and-drop reordering or pivoting of facets within\n the CubeGrid. The row facet labels also provide interactive selection, resizing, and other\n operations on the columns of row facet values.\n <P>\n The innermost column headers provide special behaviors and controls for manipulating the\n columns of data in a CubeGrid. End users may select, resize, reorder, minimize, maximize, or\n auto-fit the columns of data via mouse interactions with these headers. Customizable\n indicators and controls may be included at the top of each innermost column header.\n <P>\n If a CubeGrid is not large enough to display all of its cell values, horizontal and/or\n vertical scrollbars will appear below and to the right of the body. The body of the CubeGrid\n may be scrolled on either axis. The headers are \"frozen\" from scrolling on one axis - row\n headers only scroll vertically, while column headers only scroll horizontally - so the facet\n values for the visible cells are always displayed.\n <P>\n <B>Data Loading</B>\n <P>\n Data can be provided to the Cube via ${isc.DocUtils.linkForRef('attr:CubeGrid.data')} as an Array of\n ${isc.DocUtils.linkForRef('object:CellRecord','CellRecords')}, each representing the data for one cell.\n <P>\n For large datasets, ${isc.DocUtils.linkForRef('attr:CubeGrid.dataSource','provide a DataSource')} with one field per\n facetId, and the CubeGrid will load data on demand to fill the visible area, including\n lazily loading data for expanding/collapsing tree facets and when facetValues are made\n visible programmatically or via menus.\n <P>\n <B>Picking Facets</B>\n <P>\n By \"facet\" we mean an aspect of the data which is orthogonal to other aspects of the data,\n that is, combining values from any two \"facets\" should make sense.\n <P>\n For example, in sales data, two facets might be \"quarter\" and \"region\" - it makes sense to\n combine any quarter and region, although for some combinations, there may not be data\n available.\n <P> \n An example of two aspects that would <b>not</b> be independent facets are \"state\" and \"city\"\n - it's senseless to combine arbitrary states with arbitrary cities - most combinations are\n invalid.  Consider instead a ${isc.DocUtils.linkForRef('attr:Facet.isTree','tree facet')} that combines \"city\" and \"state\"\n values.  \n <P>\n Note that if \"city\" and \"state\" are represented as facets, they may look correct if they are\n both on the same axis of the grid and\n ${isc.DocUtils.linkForRef('attr:CubeGrid.hideEmptyFacetValues','hideEmptyFacetValues')} is used to trim nonsense\n combinations, but if the data is ${isc.DocUtils.linkForRef('attr:CubeGrid.canMoveFacets','pivoted')} such that \"state\" and\n \"city\" are on opposing axes, there will be a roughly diagonal \"stripe\" of data for\n combinations of \"state\" and \"city\" that make sense, and all other space will be blank.  This\n is a strong indication that two facets should be represented as a single tree facet instead.",
        name:"CubeGrid",
        seeAlso:[
            {
                ref:"class:Facet",
                description:null
            },
            {
                ref:"class:FacetValue",
                description:null
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('analytics')}"
        ],
        requiresModules:[
            "Analytics"
        ]
    },
    "method:Canvas.focusChanged":{
        ref:"method:Canvas.focusChanged",
        flags:"",
        description:" Notification function fired when this widget receives or loses keyboard focus.\n",
        name:"focusChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"If true this widget now has keyboard focus",
                optional:false,
                name:"hasFocus",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:RelativeDateItem.monthsFromNowTitle":{
        ref:"attr:RelativeDateItem.monthsFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"month\".",
        name:"monthsFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N months from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TextItem.maskSaveLiterals":{
        ref:"attr:TextItem.maskSaveLiterals",
        flags:"IRWA",
        description:"Should entered mask value be saved with embedded literals?",
        name:"maskSaveLiterals",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "attr:DateChooser.disabledWeekdayStyle":{
        ref:"attr:DateChooser.disabledWeekdayStyle",
        flags:"IRW",
        description:"Base CSS style applied to weekday dates which have been ${isc.DocUtils.linkForRef('attr:DateChooser.disabledDates','disabled')}.",
        name:"disabledWeekdayStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserDisabledWeekday\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classAttr:Operators.iBetweenTitle":{
        ref:"classAttr:Operators.iBetweenTitle",
        flags:"IR",
        description:"Title for the \"iBetween\" operator",
        name:"iBetweenTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"between\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormulaBuilder.testButton":{
        ref:"attr:FormulaBuilder.testButton",
        flags:"IR",
        description:"Button to Test the formula by generating it's function and executing it",
        name:"testButton",
        seeAlso:[
        ],
        valueType:"AutoChild Button",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:MultiGroupPanel.levelDownButtonTitle":{
        ref:"attr:MultiGroupPanel.levelDownButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Down button.",
        name:"levelDownButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Down\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.setHeaderSpanButtonProperties":{
        ref:"method:ListGrid.setHeaderSpanButtonProperties",
        flags:"",
        description:" Method to update properties on a headerSpan's header button at runtime.\n This property allows customization of any settable properties on the HeaderSpan's\n header button after it has been generated.\n",
        name:"setHeaderSpanButtonProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"${isc.DocUtils.linkForRef('attr:HeaderSpan.name','name')} of span to update",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new properties to apply to the header button",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"Canvas properties"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ImgTab.src":{
        ref:"attr:ImgTab.src",
        flags:"IRW",
        description:"Base URL for tab images",
        name:"src",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"tab.gif\"",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "type:RecordLayout":{
        ref:"type:RecordLayout",
        values:[
            {
                description:"Show ${isc.DocUtils.linkForRef('attr:TableView.titleField','title field')} only",
                value:"TableView.TITLE_ONLY"
            },
            {
                description:"Show ${isc.DocUtils.linkForRef('attr:TableView.titleField','title')} and                                       ${isc.DocUtils.linkForRef('attr:TableView.descriptionField','description')} fields only",
                value:"TableView.TITLE_DESCRIPTION"
            },
            {
                description:"Show ${isc.DocUtils.linkForRef('attr:TableView.titleField','title')},                                       ${isc.DocUtils.linkForRef('attr:TableView.descriptionField','description')} and\n                                      ${isc.DocUtils.linkForRef('attr:TableView.infoField','info')} fields only",
                value:"TableView.SUMMARY_INFO"
            },
            {
                description:"Show ${isc.DocUtils.linkForRef('attr:TableView.titleField','title')},                                       ${isc.DocUtils.linkForRef('attr:TableView.descriptionField','description')} and\n                                      ${isc.DocUtils.linkForRef('attr:TableView.dataField','data')} fields only",
                value:"TableView.SUMMARY_DATA"
            },
            {
                description:"Show ${isc.DocUtils.linkForRef('attr:TableView.titleField','title')},                                       ${isc.DocUtils.linkForRef('attr:TableView.descriptionField','description')},\n                                      ${isc.DocUtils.linkForRef('attr:TableView.infoField','info')} and\n                                      ${isc.DocUtils.linkForRef('attr:TableView.dataField','data')} fields similar to the\n                                      iPhoneOS Mail application",
                value:"TableView.SUMMARY_FULL"
            }
        ],
        description:"Controls the style of TableView record display",
        name:"RecordLayout",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:Calendar.showOtherDays":{
        ref:"attr:Calendar.showOtherDays",
        flags:"IR",
        description:"If set to true, in the ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month view')}, days that fall in an adjacent month are\n still shown with a header and body area, and are interactive.  Otherwise days from other \n months are rendered in the ${isc.DocUtils.linkForRef('attr:Calendar.otherDayBlankStyle')} and are non-interactive.",
        name:"showOtherDays",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "visibility"
        ]
    },
    "attr:Scrollbar.cornerSize":{
        ref:"attr:Scrollbar.cornerSize",
        flags:"IR",
        description:"Allows the size of the corner segment to be set independently of the ${isc.DocUtils.linkForRef('attr:Scrollbar.btnSize')}.",
        name:"cornerSize",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "corner"
        ]
    },
    "attr:EdgedCanvas.edgeRight":{
        ref:"attr:EdgedCanvas.edgeRight",
        flags:"IR",
        description:"Height in pixels for right corners and edges.  Defaults to edgeSize when unset.",
        name:"edgeRight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:ListGrid.animateFolderSpeed":{
        ref:"attr:ListGrid.animateFolderSpeed",
        flags:"IRW",
        description:"When animating folder opening / closing, this property designates the speed of the\n animation in pixels shown (or hidden) per second. Takes precedence over the\n ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolderTime')} property, which allows the developer to specify a\n duration for the animation rather than a speed.\n <P>\n For a ListGrid, this property applies when ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grouping')} is enabled.",
        name:"animateFolderSpeed",
        seeAlso:[
            {
                ref:"attr:ListGrid.animateFolderTime",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"3000",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "animation"
        ]
    },
    "attr:SummaryBuilder.helpTextIntro":{
        ref:"attr:SummaryBuilder.helpTextIntro",
        flags:"IR",
        description:"Text that appears in the hover from the ${isc.DocUtils.linkForRef('attr:SummaryBuilder.helpIcon')}, as a pre-amble to the list of\n available format-tokens.",
        name:"helpTextIntro",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The following functions are available:\"",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.autoCenter":{
        ref:"attr:Window.autoCenter",
        flags:"IRW",
        description:"If true, this Window widget will automatically be centered on the page when shown.\n      If false, it will show up in the last position it was placed (either programmatically,\n      or by user interaction).\n      <P>\n      <b>Note:</b> If an auto-centering Window is either programmatically moved or dragged \n      by an end user, auto-centering behavior is automatically turned off. To manually center \n      a Window, you can use ${isc.DocUtils.linkForRef('method:Window.centerInPage')}.",
        name:"autoCenter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "location"
        ]
    },
    "group:image":{
        ref:"group:image",
        refs:[
        ],
        description:"Utilities to render images",
        name:"image",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TabBar.moreTabCount":{
        ref:"attr:TabBar.moreTabCount",
        flags:"IR",
        description:"This property defines the number tab buttons that should be shown before\n automatically adding a \"more\" button to handle the remaining tabs. This\n property is only used when ${isc.DocUtils.linkForRef('attr:TabBar.showMoreTab')} is enabled.",
        name:"moreTabCount",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:TabBar"
    },
    "attr:ListGrid.fieldPickerFieldProperties":{
        ref:"attr:ListGrid.fieldPickerFieldProperties",
        flags:"IR",
        description:"Names of properties on ${isc.DocUtils.linkForRef('object:ListGridField')} for which the ${isc.DocUtils.linkForRef('class:FieldPicker')} should\n show an editing interface, for convenience.\n <P>\n For example, specify [\"frozen\", \"decimalPrecision\"] to allow end users to modify\n ${isc.DocUtils.linkForRef('attr:ListGridField.frozen')} and ${isc.DocUtils.linkForRef('attr:ListGridField.decimalPrecision')} respectively.",
        name:"fieldPickerFieldProperties",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:StatefulCanvas.showSelectedIcon":{
        ref:"attr:StatefulCanvas.showSelectedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n becomes selected.",
        name:"showSelectedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ResultSet.fetchOperation":{
        ref:"attr:ResultSet.fetchOperation",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} this component should use when performing fetch operations.",
        name:"fetchOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "operations"
        ]
    },
    "attr:Dialog.showToolbar":{
        ref:"attr:Dialog.showToolbar",
        flags:"IR",
        description:"Whether to show a toolbar of buttons at the bottom of the Dialog.\n Default of null will cause the value to be resolved automatically to true or\n false when the Dialog is first drawn according as ${isc.DocUtils.linkForRef('attr:Dialog.toolbarButtons')}\n contains buttons or not.",
        name:"showToolbar",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog",
        groups:[
            "appearance",
            "toolbar"
        ]
    },
    "attr:DetailViewer.emptyMessage":{
        ref:"attr:DetailViewer.emptyMessage",
        flags:"IRW",
        description:"The string to display in the body of a detailViewer with no records.",
        name:"emptyMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"No items to display.\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "emptyMessage"
        ]
    },
    "group:clipping":{
        ref:"group:clipping",
        refs:[
        ],
        name:"clipping",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.showInlineLabels":{
        ref:"attr:FacetChart.showInlineLabels",
        flags:"IR",
        description:"Causes labels for the X axis to be shown above the axis and to the right of the gradation line\n they label, making for a vertically more compact chart at the risk of gradation labels being\n partially obscured by data values.  Also causes the last label to be skipped (no where to place\n it).",
        name:"showInlineLabels",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Window.showMaximizeButton":{
        ref:"attr:Window.showMaximizeButton",
        flags:"IRW",
        description:"If true, show a maximize button in the header - clicking it maximizes the Window",
        name:"showMaximizeButton",
        setter:[
            "setShowMaximizeButton"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "method:ImgSectionHeader.getSectionStack":{
        ref:"method:ImgSectionHeader.getSectionStack",
        flags:"",
        description:" For a SectionHeader embedded in a SectionStack, this method will return \n a pointer to the ${isc.DocUtils.linkForRef('class:SectionStack')} in which this section header is\n embedded.\n",
        name:"getSectionStack",
        seeAlso:[
        ],
        returns:{
            description:"Section Stack containing this section header",
            type:"SectionStack"
        },
        type:"method",
        definingClass:"class:ImgSectionHeader"
    },
    "method:ValuesManager.setSaveOperationType":{
        ref:"method:ValuesManager.setSaveOperationType",
        flags:"",
        description:" Setter for the default ${isc.DocUtils.linkForRef('type:DSOperationType')} when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is called.\n Note that this property can also be set by calling ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')} or \n ${isc.DocUtils.linkForRef('method:DynamicForm.editNewRecord')}\n\n",
        name:"setSaveOperationType",
        seeAlso:[
        ],
        params:[
            {
                description:"Operation type to use as a default. Valid values are  <code>\"add\"</code> or <code>\"update\"</code>.",
                optional:false,
                name:"operationType",
                defaultValue:null,
                type:"DSOperationType"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "group:cellEditing":{
        ref:"group:cellEditing",
        refs:[
            "attr:CubeGrid.canEdit",
            "attr:CubeGrid.editByCell",
            "attr:CubeGrid.saveByCell"
        ],
        name:"cellEditing",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:SummaryBuilder.editMode":{
        ref:"attr:SummaryBuilder.editMode",
        flags:"IR",
        description:"Are we editing an existing field?",
        name:"editMode",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "attr:ListGrid.canDragSelectText":{
        ref:"attr:ListGrid.canDragSelectText",
        flags:"IRW",
        description:"If this property is true, users can drag the mouse to select text within grid rows.\n This is mutually exclusive with\n ${isc.DocUtils.linkForRef('attr:ListGrid.canReorderRecords','rearranging rows or cells by dragging')}, and with\n ${isc.DocUtils.linkForRef('attr:ListGrid.canDragSelect','drag selection of rows')}.",
        name:"canDragSelectText",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "method:StatefulCanvas.removeFromRadioGroup":{
        ref:"method:StatefulCanvas.removeFromRadioGroup",
        flags:"A",
        description:" Remove this widget from the specified mutually exclusive selection group with the ID\n passed in.\n No-op's if this widget is not a member of the groupID passed in.\n If no groupID is passed in, defaults to removing from whatever radioGroup this widget\n is a member of.\n",
        name:"removeFromRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- optional radio group ID (to ensure the widget is removed                                        from the appropriate group.",
                optional:true,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:ListGrid.setAutoFitMaxHeight":{
        ref:"method:ListGrid.setAutoFitMaxHeight",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxHeight')}.\n",
        name:"setAutoFitMaxHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"Maximum height in px we'll expand to accommodate if ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData','auto fit')} is enabled vertically.",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "attr:DataBoundComponent.hiliteIconHeight":{
        ref:"attr:DataBoundComponent.hiliteIconHeight",
        flags:"IRW",
        description:"Height for hilite icons for this listGrid.\n Overrides ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconSize','hiliteIconSize')}.\n Can be overridden at the field level",
        name:"hiliteIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:MenuItem.canSelectParent":{
        ref:"attr:MenuItem.canSelectParent",
        flags:"IR",
        description:"A MenuItem that has a submenu normally cannot be selected, instead clicking or hitting Enter\n while keyboard focus is on the item shows the submenu.  Setting canSelectParent:true allows\n a menu item with a submenu to be selected directly.",
        name:"canSelectParent",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MenuItem"
    },
    "classMethod:RPCManager.exportImage":{
        ref:"classMethod:RPCManager.exportImage",
        flags:"",
        description:" Converts an ${isc.DocUtils.linkForRef('method:DrawPane.getSvgString','SVG string')} to one of several possible image formats,\n and can either initiate a download or return the base64-encoded image data.\n <p>\n Control the image format via ${isc.DocUtils.linkForRef('attr:DSRequest.exportImageFormat')}.\n <p>\n Default is to download the image (triggering the browser's save dialog).\n ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename')} can be used to control the default filename provided in the\n save dialog.\n <p>\n To instead return the data as a normal DSResponse, set ${isc.DocUtils.linkForRef('attr:DSRequest.exportDisplay')} to\n \"return\".  In this case the data is always base64 encoded.\n <p>\n Requires the SmartClient server framework, with the same set of\n ${isc.DocUtils.linkForRef('group:javaModuleDependencies','required .jars')} as are required for PDF export of charts in\n legacy IE.  \n <p>\n See also ${isc.DocUtils.linkForRef('method:DrawPane.getSvgString')} and ${isc.DocUtils.linkForRef('method:DrawPane.getDataURL')}. \n\n",
        name:"exportImage",
        seeAlso:[
        ],
        params:[
            {
                description:"XML string containing SVG data",
                optional:false,
                name:"svgString",
                defaultValue:null,
                type:"String"
            },
            {
                description:"request properties controlling options for export",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"optional callback when using                                          <code>exportDisplay</code>:\"return\".  <b>Does not\n                                         fire</b> for other <code>exportDisplay</code> modes",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"ExportImageCallback"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('chartImageExport')}"
        ],
        definingClass:"class:RPCManager"
    },
    "attr:ListGridField.showRollOverIcon":{
        ref:"attr:ListGridField.showRollOverIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image on mouse rollover.",
        name:"showRollOverIcon",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:OperationBinding.serverObject":{
        ref:"attr:OperationBinding.serverObject",
        flags:"IR",
        description:"Optional ServerObject declaration that specifies the ServerObject configuration for this\n operationBinding.  In the absence of a serverObject specification here, the one specified on\n the DataSource itself is used by default, if present (${isc.DocUtils.linkForRef('attr:DataSource.serverObject')}).  If\n neither is present, then Direct Method Invocation will not be enabled for this operationBinding.",
        name:"serverObject",
        seeAlso:[
            {
                ref:"attr:DataSource.serverObject",
                description:null
            }
        ],
        valueType:"ServerObject",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:TimeItem.secondItem":{
        ref:"attr:TimeItem.secondItem",
        flags:"R",
        description:"Select item to hold the seconds portion of the time or \n ${isc.DocUtils.linkForRef('method:TimeItem.getDuration','duration')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} \n is false.",
        name:"secondItem",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "class:IntegerItem":{
        methods:[
            "method:IntegerItem.getValueAsInteger"
        ],
        ref:"class:IntegerItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"FormItem intended for input integer numbers.",
        name:"IntegerItem",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:NumberUtil.toCurrencyString":{
        ref:"classMethod:NumberUtil.toCurrencyString",
        flags:"",
        description:" Return the passed number as a currency-formatted string, or an empty string if not passed a \n number.\n\n",
        name:"toCurrencyString",
        seeAlso:[
        ],
        params:[
            {
                description:"the number to convert",
                optional:false,
                name:"number",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"Currency symbol, default taken from the locale and can be                                 set to an empty string. If not passed and missing from the\n                                locale, defaults to <code>\"$\"</code>.",
                optional:true,
                name:"currencyChar",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Decimal separator symbol, default taken from the locale. If                                 if not passed and missing from the locale, defaults to \n                                <code>\".\"</code>.",
                optional:true,
                name:"decimalChar",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Should decimal portion be padded out to two digits? True                               by default.",
                optional:true,
                name:"padDecimal",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"Should the currency symbol be shown at the end of the                                       string?  If unspecified, it will prefix the number.",
                optional:true,
                name:"currencyCharLast",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"Currency-formatted string version of the number",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil",
        groups:[
            "stringProcessing"
        ]
    },
    "attr:Tree.separateFolders":{
        ref:"attr:Tree.separateFolders",
        flags:"IRW",
        description:"Should folders be sorted separately from leaves or should nodes be ordered according to\n their sort field value regardless of whether the node is a leaf or folder?",
        name:"separateFolders",
        setter:[
            "setSeparateFolders"
        ],
        seeAlso:[
            {
                ref:"attr:Tree.sortFoldersBeforeLeaves",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Tree"
    },
    "method:Canvas.hoverHidden":{
        ref:"method:Canvas.hoverHidden",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:Canvas.showHover','showHover')} is true for this canvas, this notification method will be\n fired whenever the hover shown in response to ${isc.DocUtils.linkForRef('method:Canvas.handleHover','handleHover()')} is\n hidden. This method may be observed or overridden.\n",
        name:"hoverHidden",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "attr:FacetChart.showDoughnut":{
        ref:"attr:FacetChart.showDoughnut",
        flags:"IR",
        description:"Whether to show a \"doughnut hole\" in the middle of pie charts.  Defaults to whether\n chartType is set to \"Doughnut\" (shown) vs \"Pie\" (not shown) but can be forced on or off\n via <code>showDoughnut</code>.",
        name:"showDoughnut",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DrawGroup.setLeft":{
        ref:"method:DrawGroup.setLeft",
        flags:"",
        description:" Sets the left coordinate of this <code>DrawGroup</code>'s ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')}.\n Note that setting the left coordinate will not move the items in this <code>DrawGroup</code>.\n\n",
        name:"setLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:NavigationBar.rightButtonIcon":{
        ref:"attr:NavigationBar.rightButtonIcon",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:Button.icon','Icon')} for the ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButton','rightButton')}.",
        name:"rightButtonIcon",
        setter:[
            "setRightButtonIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "method:TileGrid.recordContextClick":{
        ref:"method:TileGrid.recordContextClick",
        flags:"",
        description:" Executed when the tileGrid receives a context-click (right mouse button) event on a\n tile. The default implementation does nothing -- override to perform some action\n when any record is right-clicked.<br>\n <smartclient>Return <code>false</code> to cancel the native behavior (suppressing\n the browser context menu).</smartclient>\n <smartgwt>Cancel the event to suppress the native browser context menu.</smartgwt>\n <P>\n A record event handler can be specified either as\n a function to execute, or as a string of script to evaluate. If the handler is defined\n as a string of script, all the parameters below will be available as variables for use\n in the script.<br>\n If you want to cancel the click based on the parameters, return false. Otherwise, return \n true so that the click event be registered with the tile.\n\n",
        name:"recordContextClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the TileGrid itself",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TileGrid"
            },
            {
                description:"the tile that was clicked on",
                optional:false,
                name:"tile",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"the record that was clicked on",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"TileRecord"
            }
        ],
        returns:{
            description:"return false to suppress the native browser context menu.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "events"
        ]
    },
    "attr:CubeGrid.canCollapseFacets":{
        ref:"attr:CubeGrid.canCollapseFacets",
        flags:"IRW",
        description:"If true, hierarchical facets will show expand/collapse controls to allow the user to\n expand and collapse the tree of facetValues for that facet.",
        name:"canCollapseFacets",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetExpansion"
        ]
    },
    "type:RecordDropAppearance":{
        ref:"type:RecordDropAppearance",
        values:[
            {
                description:"When the user drops onto a record, dropPosition will always be \"over\"",
                value:"ListGrid.OVER"
            },
            {
                description:"When the user drops onto a record, dropPosition will be either   \"before\" or \"after\" depending on whether the mouse was over the top or bottom of\n   the target record",
                value:"ListGrid.BETWEEN"
            },
            {
                description:"When the user drops onto a record, if the drop occurs centered over the   record, the dropPosition will be reported as \"over\", otherwise it will be\n   \"before\" or \"after\" depending on whether the mouse was over the top or bottom of the\n   target record.",
                value:"ListGrid.BOTH"
            },
            {
                description:"No dropPosition will be reported",
                value:"ListGrid.BODY"
            }
        ],
        description:"Controls how ListGrid record drop events report their\n ${isc.DocUtils.linkForRef('method:ListGrid.getRecordDropPosition','dropPosition')}, and where the drop indicator will be displayed\n if appropriate.",
        name:"RecordDropAppearance",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DrawItem.setCursor":{
        ref:"method:DrawItem.setCursor",
        flags:"",
        description:"\n",
        name:"setCursor",
        seeAlso:[
        ],
        params:[
            {
                description:"new cursor.",
                optional:false,
                name:"newCursor",
                defaultValue:null,
                type:"Cursor"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:CubeGrid.getAllEditCells":{
        ref:"method:CubeGrid.getAllEditCells",
        flags:"",
        description:" Method to determine which records currently have pending (unsubmitted) edits.\n Returns an array of 2 element arrays indicating the <code>[rowNum,colNum]</code> of the\n cells in question.\n",
        name:"getAllEditCells",
        seeAlso:[
        ],
        returns:{
            description:"Array of <code>[rowNum,colNum]</code> arrays for cells with edit               values pending submission.",
            type:"array"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "method:Canvas.setRect":{
        ref:"method:Canvas.setRect",
        flags:"",
        description:" Set all four coordinates, relative to the enclosing context, at once.\n <P>\n Moves the widget so that its top-left corner is at the specified top-left coordinates,\n then resizes it to the specified width and height.\n\n",
        name:"setRect",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate, Array of coordinates                                                  in parameter order, or Object with left,\n                                                  top, width, height properties.  If an Array\n                                                  or Object is passed, the remaining\n                                                  parameters are ignored",
                optional:true,
                name:"left",
                defaultValue:null,
                type:"number, Array, Object"
            },
            {
                description:"new top coordinate",
                optional:true,
                name:"top",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new width",
                optional:true,
                name:"width",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new height",
                optional:true,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether the component's size actually changed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning",
            "sizing"
        ]
    },
    "attr:DataSourceField.validOperators":{
        ref:"attr:DataSourceField.validOperators",
        flags:"IR",
        description:"List of operators valid on this field.  \n <P>\n If not specified, all operators that are valid for the field type are allowed.",
        name:"validOperators",
        seeAlso:[
        ],
        valueType:"Array of OperatorId",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "advancedFilter"
        ]
    },
    "object:FacetValueMap":{
        methods:[
        ],
        ref:"object:FacetValueMap",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Analytics/CubeGrid"
        ],
        attrs:[
        ],
        description:"<smartclient>\n A JavaScript Object where each property name is a facetId and each property value is a\n facetValueId for that facet.\n </smartclient>\n <smartgwt>\n An object mapping ${isc.DocUtils.linkForRef('attr:Facet.id','facet ids')} to ${isc.DocUtils.linkForRef('attr:FacetValue.id','facetValue ids')} within\n a facet\n </smartgwt>\n <P>\n The facetId -> facetValueId mappings in a FacetValueMap describe a specific slice of the\n dataset.  If mappings are included for all facets, a FacetValueMap describes a unique\n cell.  If some facets are omitted, it describes a row, column, or set of rectangular\n areas, or equivalently, a particular row or column header (if all facetIds in the map are\n displayed on the same axis)\n <P>\n FacetValueMaps are used in various contexts to describe headers, datasets to be loaded,\n screen regions, etc.",
        name:"FacetValueMap",
        seeAlso:[
        ],
        type:"object"
    },
    "classMethod:Class.changeDefaults":{
        ref:"classMethod:Class.changeDefaults",
        flags:"A",
        description:"\n Changes a set of defaults defined as a JavaScript Object.  For these kind of properties,\n simply calling ${isc.DocUtils.linkForRef('method:Class.addProperties')} would replace the original Object\n with yours, wiping out settings required for the basic functionality of the component.\n This method instead applies your overrides over the existing properties, without\n destroying non-overridden properties.\n <p>\n For example let's say you have a component that's defined as follows\n <pre>\n isc.defineClass(\"MyComponent\");\n isc.MyComponent.addProperties({\n     simpleProperty: \"some value\",\n     propertyBlock : {\n       foo: \"bar\",\n       zoo: \"moo\"\n     }\n }\n </pre>\n If you wanted to override simpleProperty, you can just call ${isc.DocUtils.linkForRef('method:Class.addProperties')}\n like this:\n <pre>\n isc.MyComponent.addProperties({\n     simpleProperty: \"my override\"\n });\n </pre>\n If you want to override the value of <code>propertyBlock.moo</code> above,\n but you don't want to clobber the value of <code>propertyBlock.zoo</code>.  If you use\n the above pattern like so:\n <pre>\n isc.MyComponent.addProperties({\n     propertyBlock: {\n         foo: \"new value\",\n         zoo: \"moo\"\n     }\n });\n </pre>\n You need to re-specify the value of <code>propertyBlock.zoo</code> which you didn't want\n to override.  Failing to re-specify it would destroy the value.\n <p>\n Instead of re-specifying the value, you can use this method to modify the value of\n <code>foo</code> - like this:\n <pre>\n isc.MyComponent.changeDefaults(\"propertyBlock\", {\n     foo: \"new value\"\n });\n </pre>\n <p>\n See also the ${isc.DocUtils.linkForRef('type:AutoChild')} system for information about standard sets of defaults\n that are available for customization.\n\n",
        name:"changeDefaults",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to change",
                optional:false,
                name:"defaultsName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"overrides for defaults",
                optional:false,
                name:"newDefaults",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "group:dynamicMenuItem":{
        ref:"group:dynamicMenuItem",
        refs:[
            "method:MenuItem.enableIf",
            "method:MenuItem.checkIf",
            "method:MenuItem.dynamicTitle",
            "method:MenuItem.dynamicIcon"
        ],
        name:"dynamicMenuItem",
        seeAlso:[
        ],
        type:"group"
    },
    "type:DSCallback":{
        ref:"type:DSCallback",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        description:"A ${isc.DocUtils.linkForRef('type:Callback')} to evaluate when a DataSource request completes.\n <P>\n The parameters available in the DSCallback expression are:\n <ul>\n <li>dsResponse: a ${isc.DocUtils.linkForRef('class:DSResponse')} instance with metadata about the returned data\n <li>data: data returned to satisfy the DataSource request.  See the\n     ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource operations')} topic for expected results\n     for each type of DataSource operation\n <li>dsRequest: the ${isc.DocUtils.linkForRef('class:DSRequest')} that was sent.  You can use\n     ${isc.DocUtils.linkForRef('attr:DSRequest.clientContext')} to track state during the server turnaround.\n </ul>\n For example, if you had a DynamicForm with ID \"myForm\" and you wanted to retrieve a \n record from a DataSource \"myUsers\", where each record has a \"userId\" field:\n <pre>\n     myUsers.fetchData({ userId : \"fred\" }, \"myForm.setValues(data)\");\n </pre>\n or\n <pre>\n     myUsers.fetchData({ userId : \"fred\" }, function (dsResponse, data, dsRequest) {\n                                              myForm.setValues(data);\n                                            });\n </pre>\n <P>\n Note that if the request encounters a low-level error (such as 500 server error), by\n default the callback will <b>not</b> be fired, instead, ${isc.DocUtils.linkForRef('method:DataSource.handleError')}\n is called to invoke the default system-wide error handling.  Set\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError','willHandleError')}:true to have your callback invoked\n regardless of whether there are errors, however, make sure your callback properly\n handles malformed responses when ${isc.DocUtils.linkForRef('attr:DSResponse.status')} is non-zero.",
        name:"DSCallback",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Process.reset":{
        ref:"method:Process.reset",
        flags:"",
        description:" Reset process to it's initial state, so process can be started again.\n",
        name:"reset",
        seeAlso:[
        ],
        params:[
            {
                description:"new state of the process",
                optional:false,
                name:"state",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"class:Process"
    },
    "attr:SchemaSet.schemaNamespace":{
        ref:"attr:SchemaSet.schemaNamespace",
        flags:"R",
        description:"Namespace of this SchemaSet, derived from the <code>targetNamespace</code>\n attribute of the <code>&lt;schema&gt;</code> element.",
        name:"schemaNamespace",
        seeAlso:[
        ],
        valueType:"URI",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SchemaSet",
        groups:[
            "webService"
        ]
    },
    "attr:FormItem.displayFormat":{
        ref:"attr:FormItem.displayFormat",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:FormItem.format')}, ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} and  ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')}",
        flags:"IRWA",
        description:"Fields of type <code>\"date\"</code> or <code>\"time\"</code> will be edited using\n a ${isc.DocUtils.linkForRef('class:DateItem')} or ${isc.DocUtils.linkForRef('class:TimeItem')} by default.\n <P>\n However this can be overridden - for <code>canEdit:false</code> fields, a\n ${isc.DocUtils.linkForRef('class:StaticTextItem')} is used by default, and the developer can always specify \n a custom ${isc.DocUtils.linkForRef('attr:FormItem.editorType')} as well as ${isc.DocUtils.linkForRef('attr:FormItem.type','data type')}.\n <P>\n For fields of type <code>\"date\"</code>, set this property to a valid\n ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to specify how the date should be formatted.\n <br>\n For fields of type <code>\"time\"</code>, set this property to a valid \n ${isc.DocUtils.linkForRef('type:TimeDisplayFormat','TimeDisplayFormat')} to specify how the time should be formatted.\n <br>\n Note that if ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} or ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')} are specified\n they will take precedence over this setting.\n <P>\n If this field is of type <code>\"date\"</code> and is editable, the \n ${isc.DocUtils.linkForRef('attr:FormItem.inputFormat')} may be used to specify how user-edited date strings will\n be parsed.",
        name:"displayFormat",
        seeAlso:[
            {
                ref:"attr:FormItem.format",
                description:null
            },
            {
                ref:"attr:FormItem.inputFormat",
                description:null
            },
            {
                ref:"attr:FormItem.dateFormatter",
                description:null
            },
            {
                ref:"attr:FormItem.timeFormatter",
                description:null
            }
        ],
        valueType:"varies",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:DynamicForm.itemChange":{
        ref:"method:DynamicForm.itemChange",
        flags:"",
        description:" Handler fired when there is a change() event fired on a FormItem within this form.\n <P>\n Fires after the change() handler on the FormItem itself, and only if the item did not\n cancel the change event and chooses to allow it to propagate to the form as a whole. \n\n",
        name:"itemChange",
        seeAlso:[
        ],
        params:[
            {
                description:"the FormItem where the change event occurred",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"new value for the FormItem",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"value the FormItem had previous to this change() event",
                optional:false,
                name:"oldValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"return false to cancel the change, or true to allow it",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "method:Window.setShowMinimizeButton":{
        ref:"method:Window.setShowMinimizeButton",
        flags:"",
        description:" Dynamically update ${isc.DocUtils.linkForRef('attr:Window.showMinimizeButton')} to show / hide the minimizeButton\n",
        name:"setShowMinimizeButton",
        seeAlso:[
            {
                ref:"attr:Window.headerControls",
                description:null
            },
            {
                ref:"attr:Window.showMinimizeButton",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "classMethod:Date.getLogicalTimeOnly":{
        ref:"classMethod:Date.getLogicalTimeOnly",
        flags:"",
        description:" Get a logical time - a value appropriate for a DataSourceField of type \"time\" - from a\n datetime value (a value from a DataSourceField of type \"datetime\").\n <P>\n This method correctly takes into account the current\n ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone','display timezone')}, specifically, the returned Date will\n reflect the hour, minute and second that appears when the datetime is rendered by a SmartClient\n component rather than the time values that would be returned by Date.getHours() et al (which\n can differ, since getHours() uses the browser's local timezone).\n <P>\n For further background on date, time and datetime types, storage and transmission, see\n ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','this overview')}.\n\n",
        name:"getLogicalTimeOnly",
        seeAlso:[
        ],
        params:[
            {
                description:"a Date instance representing a datetime value",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"a Date instance representing just the time portion of the datetime value, as                a logical time",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "method:MetricSettings.getGradations":{
        ref:"method:MetricSettings.getGradations",
        flags:"",
        description:" Return an array of the gradation values used in the current chart.  Pass these values\n to ${isc.DocUtils.linkForRef('method:MetricSettings.getXCoord')} / ${isc.DocUtils.linkForRef('method:MetricSettings.getYCoord')} (depending on the orientation of the chart)\n to discover the coordinates where gradations are drawn.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getGradations",
        seeAlso:[
        ],
        returns:{
            description:"an array of gradation values used in the current chart.",
            type:"Array of float"
        },
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "method:StretchImg.setItems":{
        ref:"method:StretchImg.setItems",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:StretchImg.items')}.\n",
        name:"setItems",
        seeAlso:[
        ],
        params:[
            {
                description:"the new array of items.",
                optional:false,
                name:"items",
                defaultValue:null,
                type:"Array of StretchItem"
            }
        ],
        type:"method",
        definingClass:"class:StretchImg"
    },
    "attr:ListGrid.summaryRow":{
        ref:"attr:ListGrid.summaryRow",
        flags:"RA",
        description:"Automatically generated ListGrid for displaying grid summary information (see\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')}).\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.summaryRowProperties</code> and <code>listGrid.summaryRowDefaults</code>",
        name:"summaryRow",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classAttr:RPCManager.defaultTimeout":{
        ref:"classAttr:RPCManager.defaultTimeout",
        flags:"RW",
        description:"In milliseconds, how long the RPCManager waits for an RPC request to complete before\n returning an error.  \n <p>\n Default of 240000 milliseconds is four minutes.  If set to zero, the RPCManager will not\n enforce a timeout, however, see ${isc.DocUtils.linkForRef('attr:RPCRequest.timeout')} for a discussion of default\n timeouts that are built into browsers.",
        name:"defaultTimeout",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"240000",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "classMethod:DataSource.loadWithParents":{
        ref:"classMethod:DataSource.loadWithParents",
        flags:"",
        description:" Variation of ${isc.DocUtils.linkForRef('classMethod:DataSource.load')} that will also automatically load any DataSources that\n the requested DataSources inherit from (via ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')}).\n <P>\n If the parent DataSource is already loaded, calling <code>loadWithParents</code> will not\n automatically reload them unless the forceReload parameter is passed.\n \n",
        name:"loadWithParents",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource ID or Array of DataSource IDs",
                optional:false,
                name:"dsID",
                defaultValue:null,
                type:"String | Array of String"
            },
            {
                description:"Callback to fire after DataSource loading completes",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Function"
            },
            {
                description:"Forcibly reload a dataSource if it's already loaded",
                optional:true,
                name:"forceReload",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:FormItemEventInfo.overItem":{
        ref:"attr:FormItemEventInfo.overItem",
        flags:"R",
        description:"True if the event occurred over the main body of the item (for example the text-box), rather\n than over the title or within the form item's cell in the DynamicForm but outside the\n text box area.",
        name:"overItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemEventInfo"
    },
    "method:Dialog.cancelClick":{
        ref:"method:Dialog.cancelClick",
        flags:"",
        description:" Handle a click on the 'cancel' button of this Dialog.\n Default implementation is to return null and hide the Dialog.\n Override to do something else.\n",
        name:"cancelClick",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "method:MultiGroupPanel.getNumLevels":{
        ref:"method:MultiGroupPanel.getNumLevels",
        flags:"",
        description:" Return the number of levels of grouping that have been configured.\n\n",
        name:"getNumLevels",
        seeAlso:[
        ],
        returns:{
            description:"The number of levels of grouping that have been configured",
            type:"number"
        },
        type:"method",
        definingClass:"class:MultiGroupPanel"
    },
    "method:FacetChart.setDataLineType":{
        ref:"method:FacetChart.setDataLineType",
        flags:"",
        description:" Method to change the current ${isc.DocUtils.linkForRef('type:ChartType','dataLineType')}.\n Will redraw the chart if drawn. \n\n",
        name:"setDataLineType",
        seeAlso:[
        ],
        params:[
            {
                description:"ow to draw lines between adjacent data points in Line and Scatter charts",
                optional:false,
                name:"dataLineType",
                defaultValue:null,
                type:"DataLineType"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('scatterPlotCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.getGroupByText":{
        ref:"method:ListGrid.getGroupByText",
        flags:"",
        description:" If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','this.canGroupBy')} is true, this string will be shown as the\n title for the menu item to toggle the group by setting for a field.<br>\n Default implementation evaluates and returns the dynamic ${isc.DocUtils.linkForRef('attr:ListGrid.groupByText')}\n string.\n",
        name:"getGroupByText",
        seeAlso:[
        ],
        params:[
            {
                description:"field to get the menu item title for",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"Title to show in the menu item",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.type":{
        ref:"attr:FormItem.type",
        flags:"IR",
        description:"The DynamicForm picks a field renderer based on the type of the field (and sometimes other\n attributes of the field).",
        name:"type",
        seeAlso:[
            {
                ref:"type:FormItemType",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            }
        ],
        valueType:"FormItemType",
        defaultValue:"\"text\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DetailViewer.loadingMessageStyle":{
        ref:"attr:DetailViewer.loadingMessageStyle",
        flags:"IRWA",
        description:"CSS style to use for the ${isc.DocUtils.linkForRef('attr:DetailViewer.loadingMessage')}.",
        name:"loadingMessageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "emptyMessage"
        ]
    },
    "attr:FilterBuilder.fieldPickerWidth":{
        ref:"attr:FilterBuilder.fieldPickerWidth",
        flags:"IR",
        description:"Width for the field picker formItem displayed in clauses within this FilterBuilder.",
        name:"fieldPickerWidth",
        seeAlso:[
        ],
        valueType:"Integer | String",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:DateRangeDialog.cancelButtonTitle":{
        ref:"attr:DateRangeDialog.cancelButtonTitle",
        flags:"IR",
        description:"The title for the \"Cancel\" button on this dialog.",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:DateRangeDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.dateFormatter":{
        ref:"attr:ListGridField.dateFormatter",
        flags:"IRW",
        description:"Display format to use for date type values within this field.\n <P>\n The ${isc.DocUtils.linkForRef('attr:ListGridField.timeFormatter')} may also be used to format underlying Date values as\n times (ommitting the date part entirely). If both <code>dateFormatter</code> and\n <code>timeFormatter</code> are specified on a field, for\n fields specified as ${isc.DocUtils.linkForRef('attr:ListGridField.type','type \"time\"')} the\n <code>timeFormatter</code> will be used, otherwise the <code>dateFormatter</code>\n <P>\n If <code>field.dateFormatter</code> and <code>field.timeFormatter</code> is unspecified,\n date display format may be defined at the component level via\n ${isc.DocUtils.linkForRef('attr:ListGrid.dateFormatter','ListGrid.dateFormatter')}, or for fields of type <code>\"datetime\"</code>\n ${isc.DocUtils.linkForRef('attr:ListGrid.datetimeFormatter','ListGrid.datetimeFormatter')}. Otherwise the\n default is to use the system-wide default short date format, configured via\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}.  Specify any valid ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to\n change the format used by this item.\n <P>\n If this field is editable the dateFormatter will also be passed to the editor created\n to edit this field. Note that you can also specify an explicit ${isc.DocUtils.linkForRef('attr:ListGridField.inputFormat')}\n which will be passed through to the editor as well, though this is not typically required\n as the input format should be automatically derived by the SmartClient system\n for standard DateDisplayFormats.",
        name:"dateFormatter",
        seeAlso:[
            {
                ref:"attr:ListGrid.dateFormatter",
                description:null
            },
            {
                ref:"attr:ListGrid.datetimeFormatter",
                description:null
            },
            {
                ref:"attr:ListGridField.timeFormatter",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:FormItem.imageURLSuffix":{
        ref:"attr:FormItem.imageURLSuffix",
        flags:"IRWA",
        description:"Suffix to apply to the end of any ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} when determining the URL for\n the image. A common usage would be to specify a suffix of <code>\".gif\"</code> in which\n case the <code>valueIcons</code> property would map values to the names of images without\n the <code>\".gif\"</code> extension.",
        name:"imageURLSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "attr:SimpleType.validators":{
        ref:"attr:SimpleType.validators",
        flags:"IR",
        description:"Validators to apply to value of this type.",
        name:"validators",
        seeAlso:[
        ],
        valueType:"Array of Validator",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:SimpleType",
        groups:[
            "validation"
        ]
    },
    "attr:MultiGroupDialog.levelDownButton":{
        ref:"attr:MultiGroupDialog.levelDownButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n group-levels down in the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.levelDownButtonProperties</code> and \n <code>multiGroupPanel.levelDownButtonDefaults</code>.",
        name:"levelDownButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "method:Canvas.setAccessKey":{
        ref:"method:Canvas.setAccessKey",
        flags:"A",
        description:" Set the accessKey for this canvas.\n <P>\n The accessKey can be set to any alphanumeric character (symbols not supported)\n Having set an accessKey, the canvas will be given focus when the user hits\n Alt+[accessKey], or in Mozilla Firefox 2.0 and above, Shift+Alt+[accessKey].\n\n",
        name:"setAccessKey",
        seeAlso:[
        ],
        params:[
            {
                description:"Character to use as an accessKey for this widget.  Case Insensitive.",
                optional:false,
                name:"accessKey",
                defaultValue:null,
                type:null
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:ListGrid.headerHoverAlign":{
        ref:"attr:ListGrid.headerHoverAlign",
        flags:"IRW",
        description:"This property may be set to customize the alignment for the\n hover shown on ${isc.DocUtils.linkForRef('method:ListGrid.headerHover')}.",
        name:"headerHoverAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:FloatItem":{
        methods:[
            "method:FloatItem.getValueAsFloat"
        ],
        ref:"class:FloatItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"<p>\n A TextItem for managing a text field that displays a floating point value.  FloatItem is the\n default FormItem if the ${isc.DocUtils.linkForRef('attr:FormItem.type')} is \"float\".\n <p>\n FloatItem displays its value according to the ${isc.DocUtils.linkForRef('attr:FormItem.decimalPrecision')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.decimalPad')} properties of the FormItem.  While the value is being edited,\n the item will display the value with its original precision and without extra zero-padding.\n </p>",
        name:"FloatItem",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "gwtFloatVsDouble"
        ]
    },
    "attr:ListPropertiesPane.sampleTile":{
        ref:"attr:ListPropertiesPane.sampleTile",
        flags:"R",
        description:"Tile used to demonstrate each bullet style.",
        name:"sampleTile",
        seeAlso:[
        ],
        valueType:"MultiAutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesPane"
    },
    "attr:IconButton.orientation":{
        ref:"attr:IconButton.orientation",
        flags:"IRW",
        description:"The orientation of this IconButton.  The default value, \"horizontal\", renders icon, title\n and potentially menuIcon from left to right: \"vertical\" does the same from top to bottom.",
        name:"orientation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"horizontal\"",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:CubeGrid.facetLabelHoverAlign":{
        ref:"attr:CubeGrid.facetLabelHoverAlign",
        flags:"IRWA",
        description:"Allows the developer to override the horizontal text alignment of hover tips shown for\n facetLabels.  If unspecified the hover canvas content alignment will be set by\n <code>this.hoverAlign</code> if specified.",
        name:"facetLabelHoverAlign",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverAlign",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "classMethod:SimpleType.registerSummaryFunction":{
        ref:"classMethod:SimpleType.registerSummaryFunction",
        flags:"",
        description:" Registers a new ${isc.DocUtils.linkForRef('type:SummaryFunction')} by name. After calling this method,\n developers may specify the name passed in as a standard summaryFunction\n (for example in ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')}).\n",
        name:"registerSummaryFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"name for the newly registered summaryFunction",
                optional:false,
                name:"functionName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"New summary function. This function should take 2 parameters <ul>\n  <li><code>records</code>: an array of records for which a summary must be generated</li>\n  <li><code>field</code>: a field definition - and return a summary value for the field</li>\n </ul>",
                optional:false,
                name:"method",
                defaultValue:null,
                type:"function"
            }
        ],
        type:"classMethod",
        definingClass:"class:SimpleType"
    },
    "attr:MetricSettings.dataColors":{
        ref:"attr:MetricSettings.dataColors",
        flags:"IRW",
        description:"An array of colors to use for a series of visual elements representing data (eg columns,\n bars, pie slices), any of which may be adjacent to any other.\n <P>\n Colors must be in the format of a leading hash (#) plus 6 hexadecimal digits, for example, \n \"#FFFFFF\" is white, \"#FF0000\" is pure red.",
        name:"dataColors",
        setter:[
            "setDataColors"
        ],
        seeAlso:[
        ],
        valueType:"Array of CSSColor",
        defaultValue:"see below",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "classMethod:FormItem.create":{
        ref:"classMethod:FormItem.create",
        flags:"",
        description:" FormItem.create() should never be called directly, instead, create a ${isc.DocUtils.linkForRef('class:DynamicForm')}\n and specify form items via ${isc.DocUtils.linkForRef('attr:DynamicForm.items','form.items')}.\n\n",
        name:"create",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:FormItem"
    },
    "method:Canvas.setCanFocus":{
        ref:"method:Canvas.setCanFocus",
        flags:"A",
        description:" Change whether a widget can accept keyboard focus.\n",
        name:"setCanFocus",
        seeAlso:[
            {
                ref:"attr:Canvas.canFocus",
                description:null
            }
        ],
        params:[
            {
                description:"whether the widget should now accept focus",
                optional:false,
                name:"canFocus",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:DSResponse.fromOfflineCache":{
        ref:"attr:DSResponse.fromOfflineCache",
        flags:"R",
        description:"If set, indicates that this response came from the offline cache, not the server.  This \n flag is the only reliable way for application code to determine the source of a response.",
        name:"fromOfflineCache",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "offlineGroup"
        ]
    },
    "attr:ListGrid.expansionField":{
        ref:"attr:ListGrid.expansionField",
        flags:"IRWA",
        getter:[
            "getExpansionField"
        ],
        description:"The field providing the facility to expand and collapse rows.",
        name:"expansionField",
        seeAlso:[
        ],
        valueType:"AutoChild ListGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "classAttr:RPCManager.validateDataPrompt":{
        ref:"classAttr:RPCManager.validateDataPrompt",
        flags:"IRW",
        description:"Default prompt displayed to the user while a server validation is pending.",
        name:"validateDataPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Validating...\"",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.parseEditorValue":{
        ref:"method:ListGrid.parseEditorValue",
        flags:"",
        description:" Method used to convert the value displayed in an editor for some cell being edited into\n a raw value for saving.<br>\n If <code>parseEditorValue</code> is defined at the field level for some cell being edited,\n the field level method will be used to parse the edit value and this method will not\n be called for that cell.<br>\n\n",
        name:"parseEditorValue",
        seeAlso:[
            {
                ref:"method:ListGridField.parseEditorValue",
                description:null
            },
            {
                ref:"method:ListGrid.formatEditorValue",
                description:null
            }
        ],
        params:[
            {
                description:"value displayed in the editor for the cell",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"record object for the row being edited. May be null if this                          is a new row being added to the end of the list.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number for the cell.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"value in raw format",
            type:"any"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:Array.sum":{
        ref:"method:Array.sum",
        flags:"",
        description:" \t\t\tReturns the sum of the numbers in the array, skipping non-numeric values.\n\n\t\t\tIf the start and/or end are given, uses only the specified subset of the list.\n\n",
        name:"sum",
        seeAlso:[
        ],
        params:[
            {
                description:"optional start index (default is 0)",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional end index (default is list.length)",
                optional:true,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"sum of all items in the list",
            type:"number"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "arrayMath"
        ]
    },
    "attr:ListPropertiesPane.startNumberForm":{
        ref:"attr:ListPropertiesPane.startNumberForm",
        flags:"R",
        description:"Form used to show the ${isc.DocUtils.linkForRef('attr:ListPropertiesPane.startNumberField','startNumberField')} for\n configuring the starting value of a list.",
        name:"startNumberForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesPane"
    },
    "method:Canvas.setGroupTitle":{
        ref:"method:Canvas.setGroupTitle",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:Canvas.groupTitle')}.\n",
        name:"setGroupTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"The new title for the grouping.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:LoginDialog.registrationItemTitle":{
        ref:"attr:LoginDialog.registrationItemTitle",
        flags:"IR",
        description:"Specifies the contents of the registration link (if configured) on\n the ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"registrationItemTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"LoginDialog.registrationItemTitle",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:PickList.pickListCellHeight":{
        ref:"attr:PickList.pickListCellHeight",
        flags:"IRW",
        description:"Cell Height for this item's pickList.",
        name:"pickListCellHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "method:StretchImgButton.setState":{
        ref:"method:StretchImgButton.setState",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')} of this object, changing its appearance.\n Note: <code>newState</code> cannot be\n <smartclient><code>\"Disabled\"</code></smartclient>\n <smartgwt>{@link com.smartgwt.client.types.State#STATE_DISABLED}</smartgwt>\n if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled','this.showDisabled')} is <code>false</code>.\n\n",
        name:"setState",
        seeAlso:[
        ],
        params:[
            {
                description:"the new state.",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"State"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state",
            "appearance"
        ]
    },
    "attr:FiscalYear.month":{
        ref:"attr:FiscalYear.month",
        flags:"IRW",
        description:"The zero-based month-number when this fiscal year starts.",
        name:"month",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FiscalYear"
    },
    "method:Canvas.setOpacity":{
        ref:"method:Canvas.setOpacity",
        flags:"",
        description:" Sets the opacity for the widget to the newOpacity value. This newOpacity\n value must be within the range of 0 (transparent) to 100 (opaque).\n Null means don't specify opacity directly.\n Note that heavy use of opacity may have a performance impact on some older\n browsers.\n <P>\n In older versions of Internet Explorer (Pre IE9 / HTML5), opacity is achieved\n through proprietary filters. If\n ${isc.DocUtils.linkForRef('classAttr:Canvas.neverUseFilters','filters have been disabled')} within this application\n developers must set ${isc.DocUtils.linkForRef('attr:Canvas.useOpacityFilter')} to true for specific components\n on which opacity support is required.\n <P>\n Also note that opacity is incompatible\n with ${isc.DocUtils.linkForRef('attr:Canvas.useBackMask','backMasks')}.\n",
        name:"setOpacity",
        seeAlso:[
        ],
        params:[
            {
                description:"new opacity level",
                optional:false,
                name:"newOpacity",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('translucency')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "cues"
        ]
    },
    "attr:WSRequest.useFlatFields":{
        ref:"attr:WSRequest.useFlatFields",
        flags:"IR",
        description:"When <code>useFlatFields</code> is set for a request to be sent to a WSDL web service, when\n creating the input XML message to send to the web service, properties in\n ${isc.DocUtils.linkForRef('attr:WSRequest.data','request.data')} will be used as the values for XML elements of the same name, at\n any level of nesting.\n <P>\n <code>useFlatFields</code> allows you to ignore gratuitous XML message structure, such as\n extra levels of nested elements, and provides some insulation against changes in the\n required structure of the input message.\n <P>\n For example, given this input message:\n <pre>\n &lt;FindServices&gt;\n     &lt;searchFor&gt;search text&lt;/searchFor&gt;\n     &lt;Options&gt;\n         &lt;caseSensitive&gt;false&lt;/caseSensitive&gt;\n     &lt;/Options&gt;\n     &lt;IncludeInSearch&gt;\n         &lt;serviceName&gt;true&lt;/serviceName&gt;\n         &lt;documentation&gt;true&lt;/documentation&gt;\n         &lt;keywords&gt;true&lt;/keywords&gt;\n     &lt;/IncludeInSearch&gt;\n &lt;/FindServices&gt;\n </pre>\n If <code>useFlatFields</code> were <b>not</b> set, in order to fill out this message\n correctly, <code>request.data</code> would need to be:\n <pre>{\n    searchFor: \"search text\",\n    Options : {\n        caseSensitive: false,\n    },\n    IncludeInSearch : {\n        serviceName: true,\n        documentation : true,\n        keywords : true\n    }\n }</pre>\n However if useFlatFields were set, <code>request.data</code> could be just:\n <pre>{\n    searchFor: \"search text\",\n    caseSensitive: false,\n    serviceName: true,\n    documentation : true,\n    keywords : true\n }</pre>\n <code>useFlatFields</code> is often set when the input data comes from a ${isc.DocUtils.linkForRef('class:DynamicForm')}\n to avoid the cumbersome and fragile process of mapping input fields to an XML structure.\n <P>\n ${isc.DocUtils.linkForRef('attr:OperationBinding.useFlatFields')} can also be set to cause <b>all</b> dsRequests of a\n particular type to <code>useFlatFields</code> automatically.\n <P>\n For ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')}, \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.useFlatFields','component.useFlatFields')} can be set use \"flattened\"\n binding to fields of a WSDL message or XML Schema.\n <P>\n Note that <code>useFlatFields</code> is not generally recommended for use with XML input\n messages where multiple simple type fields exist with the same name, however if used in this\n way, the first field to use a given name wins.  \"first\" means the first field encountered in a\n depth first search.  \"wins\" means only the first field will be populated in the generated\n XML message.",
        name:"useFlatFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:WSRequest",
        groups:[
            "flatFields"
        ]
    },
    "attr:TreeGrid.showConnectors":{
        ref:"attr:TreeGrid.showConnectors",
        flags:"IRW",
        description:"Should this treeGrid show connector lines illustrating the tree's hierarchy?\n <P>\n For the set of images used to show connectors, see ${isc.DocUtils.linkForRef('attr:TreeGrid.connectorImage')}.\n <P>\n <b>Note</b>: in order for connector images to be perfectly connected, all styles for\n cells must have no top or bottom border or padding.  If you see small gaps in connector\n lines, check your CSS files.  See the example below for an example of correct\n configuration, including example CSS.",
        name:"showConnectors",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('connectors')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:DetailViewer.viewSelectedData":{
        ref:"method:DetailViewer.viewSelectedData",
        flags:"",
        description:"\n Displays the currently selected record(s) of the selectionComponent widget (typically a\n listGrid) in the detailViewer.\n\n",
        name:"viewSelectedData",
        seeAlso:[
        ],
        params:[
            {
                description:"the ListGrid or ID of a ${isc.DocUtils.linkForRef('class:ListGrid')} whose currently selected\n     record(s) is/are to be edited",
                optional:false,
                name:"selectionComponent",
                defaultValue:null,
                type:"ListGrid or ID"
            }
        ],
        type:"method",
        definingClass:"class:DetailViewer",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:FilterBuilder.showFieldTitles":{
        ref:"attr:FilterBuilder.showFieldTitles",
        flags:"IR",
        description:"If true (the default), show field titles in the drop-down box used to select a field for querying.\n If false, show actual field names instead.",
        name:"showFieldTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "group:xmlSchema":{
        ref:"group:xmlSchema",
        refs:[
            "method:DataSource.getLegalChildTags",
            "classMethod:XMLTools.loadXMLSchema",
            "classMethod:XMLTools.loadWSDL"
        ],
        name:"xmlSchema",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DataSource.progressiveLoading":{
        ref:"attr:DataSource.progressiveLoading",
        flags:"IRW",
        description:"If true, causes SmartClient Server to use the \"progressive loading\" pattern for \n fetches on this dataSource, as described in the <b>Paging and total dataset length</b>\n section of the ${isc.DocUtils.linkForRef('class:ResultSet','ResultSet documentation')}.  Essentially, this means that\n we avoid issuing a row count query and instead advertise total rows as being slightly \n more than the number of rows we have already read (see ${isc.DocUtils.linkForRef('attr:DataSource.endGap','endGap')}).  This \n allows users to load more of\n a dataset by scrolling past the end of the currently-loaded rows, but it prevents them\n from scrolling directly to the end of the dataset.\n <p>\n Generally, progressive loading is appropriate when you have to deal with very large \n datasets. Note that by default, a dataSource will switch into progressive loading mode \n automatically when it detects that it is dealing with a dataset beyond a certain size - \n see ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoadingThreshold')}.\n <p>\n This setting can be overridden for individual fetch operations with the \n ${isc.DocUtils.linkForRef('attr:OperationBinding.progressiveLoading')} property, and also at the level of the\n individual ${isc.DocUtils.linkForRef('attr:DSRequest.progressiveLoading','DSRequest')}.  You can also specify \n <code>progressiveLoading</code> on \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.progressiveLoading','DataBoundComponents')} and certain types of \n <code>FormItem</code> - ${isc.DocUtils.linkForRef('attr:SelectItem.progressiveLoading','SelectItem')} and \n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.progressiveLoading','ComboBoxItem')}.\n <p>\n Currently, this property only applies to users of the built-in SQLDataSource, but you \n could use it in custom DataSource implementations to trigger the server behavior \n described in the <code>ResultSet</code> documentation linked to above.",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:OperationBinding.progressiveLoading",
                description:null
            },
            {
                ref:"attr:DataSource.progressiveLoadingThreshold",
                description:null
            },
            {
                ref:"attr:DataSource.lookAhead",
                description:null
            },
            {
                ref:"attr:DataSource.endGap",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "progressiveLoading"
        ]
    },
    "attr:ListGridField.prompt":{
        ref:"attr:ListGridField.prompt",
        flags:"IR",
        description:"Causes a tooltip hover to appear on the header generated for this field (effectively\n sets ${isc.DocUtils.linkForRef('attr:Canvas.prompt')} for the header).",
        name:"prompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "type:NavigationDirection":{
        ref:"type:NavigationDirection",
        values:[
            {
                description:"Back",
                value:"\"back\""
            },
            {
                description:"Forward",
                value:"\"forward\""
            },
            {
                description:"none",
                value:"\"none\""
            }
        ],
        description:"Navigation direction.",
        name:"NavigationDirection",
        seeAlso:[
        ],
        type:"type"
    },
    "method:TabSet.getTab":{
        ref:"method:TabSet.getTab",
        flags:"",
        description:" Get the live Canvas representing a tab by index, ID, reference, or name.  \n If passed a tab Canvas, just returns it.\n <P>\n Note that live Tab instances are not available until ${isc.DocUtils.linkForRef('method:Canvas.draw','draw()')}.\n <P>\n The returned Tab is considered an internal component of the TabSet.  In order to maximize\n forward compatibility, manipulate tabs through APIs such as a ${isc.DocUtils.linkForRef('method:TabSet.setTabTitle')} instead.\n Also note that a super-lightweight TabSet implementation may not use a separate Canvas per\n Tab, and code that accesses an manipulates Tabs as Canvases won't be compatible with that\n implementation.\n\n",
        name:"getTab",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"int | ID | name | Canvas"
            }
        ],
        returns:{
            description:"the tab Canvas, or null if not found or TabSet not drawn yet",
            type:"Tab"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:DataSource.schema":{
        ref:"attr:DataSource.schema",
        flags:"IR",
        description:"<b>This property only applies to the built-in SQL DataSource provided in Pro and better \n editions of SmartClient</b>\n <p>\n Defines the name of the schema we use to qualify the ${isc.DocUtils.linkForRef('attr:DataSource.tableName','tableName')} in generated\n SQL.  If you do not provide this property, table names will not be qualified in generated \n SQL, and thus the default schema will be used.  Support for multiple schemas (or schemata)\n varies quite significantly across the supported databases, as does the meaning of the \n phrase \"default schema\".  In addition, some databases allow you to override the default \n schema in the JDBC connection URL, which is a preferable approach if all your tables are \n in the same (non-default) schema.\n <p>\n The following table provides information by product:\n <p>\n <table border=\"1\" class=\"normal\" width=\"90%\">\n <tr><td> Product</td><td width=\"90%\"> Notes</td></tr>\n <tr><td> DB2</td><td>\n Arbitrarily named schemas are supported.  The default schema is named after the connecting\n user, though this can be overridden by specifying the \"currentSchema\" property on the JDBC\n connection URL</td></tr>\n <tr><td> DB2 for iSeries</td><td>\n Arbitrarily named schemas are supported.  \"Schema\" is synonymous with \"library\".  The \n default schema depends on the setting of the \"naming\" connection property.  When this is \n set to \"sql\", behavior is similar to other DB2 editions: the default schema is named after\n the connecting user, unless overridden by specifying a library name in the JDBC connection \n URL.  When \"naming\" is set to \"system\", the schema of an unqualified table is resolved \n using a traditional search of the library list; the library list can be provided in the \n \"libraries\" property</td></tr>\n <tr><td> Firebird</td><td>\n Firebird does not support the concept of schema at all - all \"schema objects\" like tables \n and indexes belong directly to the database.  In addition, Firebird actively rejects \n qualified table names in queries as syntax errors; therefore, you should <b>not</b> set\n the <code>schema</code> property for a DataSource that will be backed by a Firebird database\n </td></tr>\n <tr><td> HSQLDB</td><td>\n Arbitrarily named schemas are supported.  The default schema is auto-created when the\n database is created; by default it is called \"PUBLIC\", but can be renamed.  It is not \n possible to set the default schema in the JDBC connection URL</td></tr>\n <tr><td> Informix</td><td>\n Informix databases can be flagged as \"ANSI mode\" at creation time.  ANSI-mode databases \n behave similarly to DB2 for schema support: arbitrarily named schemas are supported, and\n the default schema is the one named after the connected user.  Non-ANSI databases have no\n real schema support at all. It is not possible to set the default schema in the JDBC \n connection URL with either type of database</td></tr>\n <tr><td> Microsoft SQL Server</td><td>\n Prior to SQL Server 2005, schema support is similar to Oracle: \"schema\" is synonymous with \n \"owner\".  As of SQL Server 2005, schema is supported as a separate concept, and a user's \n default schema can be configured (though it still defaults to a schema with the same name\n as the user).  It is not possible to set the default schema in the JDBC connection URL</td></tr>\n <tr><td> MySQL</td><td>\n MySQL does not have a separate concept of \"schema\"; it treats the terms \"schema\" and \n \"database\" interchangeably.  In fact MySQL databases actually behave more like schemas, in \n that a connection to database X can refer to a table in database Y simply by qualifying \n the name in the query.  Also, because schema and database are the same concept in MySQL, \n overriding the \"default schema\" is done implicitly when you specify which database to \n connect to in your JDBC connection URL</td></tr>\n <tr><td> Oracle</td><td>\n Arbitrarily named schemas are not supported; in Oracle, \"schema\" is synonymous with \"user\",\n so each valid user in the database is associated implicitly with a schema of the same name,\n and there are no other schemas possible.  It is possible to refer to tables in another\n user's schema (assuming you have the privileges to do so) by simply qualifying the table name.\n The default schema is always implied by the connecting user and cannot be overridden.</td></tr>\n <tr><td> Postgres</td><td>\n Arbitrarily named schemas are supported.\n Rather than the concept of a \"default schema\", Postgres supports the idea of a search path \n of schemas, whereby unqualified table references cause a search of the list of schemas in \n order, and the first schema in the path is the \"current\" one for creation purposes.  \n Unfortunately, there is no way to specify this search path on the JDBC connection URL, so\n the default schema comes from the user definition, ultimately defaulting to the default \n \"public\" schema</td></tr>\n </table>",
        name:"schema",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "method:StatefulCanvas.getState":{
        ref:"method:StatefulCanvas.getState",
        flags:"A",
        description:" Return the state of this StatefulCanvas\n",
        name:"getState",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"State"
        },
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "classAttr:Dialog.OK_BUTTON_TITLE":{
        ref:"classAttr:Dialog.OK_BUTTON_TITLE",
        flags:"IRW",
        description:"Title for the <code>\"OK\"</code> button.",
        name:"OK_BUTTON_TITLE",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"\"OK\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Menu.data":{
        ref:"attr:Menu.data",
        flags:"IRW",
        description:"An array of menuItem objects, specifying the menu items this menu should show.\n\n Data may also be set to a ${isc.DocUtils.linkForRef('class:Tree')} in which case a hierarchy of menus and\n submenus will automatically be generated to match the tree structure.  See also\n ${isc.DocUtils.linkForRef('attr:Menu.dataSource')} for dynamically fetching menuItems and submenus from a\n hierachical DataSource.",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
        ],
        valueType:"Array of MenuItem | Array[] of Record | Tree | RecordList",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ],
        definingClass:"class:Menu",
        groups:[
            "data"
        ]
    },
    "method:Tree.isRoot":{
        ref:"method:Tree.isRoot",
        flags:"",
        description:"\n Return true if the passed node is the root node.\n\n",
        name:"isRoot",
        seeAlso:[
        ],
        params:[
            {
                description:"node to test",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the node is the root node",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:DateItem.useTextField":{
        ref:"attr:DateItem.useTextField",
        flags:"IRW",
        description:"Should we show the date in a text field, or as 3 select boxes?",
        name:"useTextField",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dateItem')}"
        ],
        definingClass:"class:DateItem",
        groups:[
            "basics"
        ]
    },
    "attr:Layout.animateMemberTime":{
        ref:"attr:Layout.animateMemberTime",
        flags:"IRWA",
        description:"If specified this is the duration of show/hide animations when members are being shown\n or hidden due to being added / removed from this layout.",
        name:"animateMemberTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "animation"
        ]
    },
    "attr:RibbonGroup.newControlConstructor":{
        ref:"attr:RibbonGroup.newControlConstructor",
        flags:"IR",
        description:"Widget class for controls ${isc.DocUtils.linkForRef('method:RibbonGroup.createControl','created automatically')} by this \n RibbonGroup.  Since ${isc.DocUtils.linkForRef('attr:RibbonGroup.newControlConstructor','such controls')} are created via the autoChild \n system, they can be further customized via the newControlProperties property.",
        name:"newControlConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"\"IconButton\"",
        type:"attr",
        definingClass:"class:RibbonGroup"
    },
    "attr:DataSourceField.xmlAttribute":{
        ref:"attr:DataSourceField.xmlAttribute",
        flags:"IR",
        description:"Indicates that ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')} should serialize this value as an XML\n attribute.\n <P>\n Note this does not need to be declared in order for DataSource records to be derived from\n XML data: a field will be populated with either an attribute or subelement with matching\n name.",
        name:"xmlAttribute",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "xmlSerialize",
            "componentSchema"
        ]
    },
    "attr:ListGrid.selectOnEdit":{
        ref:"attr:ListGrid.selectOnEdit",
        flags:"IRWA",
        description:"When the user starts editing a row, should the row also be selected?\n  <P>\n  Note that  when this attribute is set to <code>true</code>, other all other rows in the grid\n  will be deselected when a record is selected due to editing.",
        name:"selectOnEdit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:FieldPicker.saveAndExitButtonTitle":{
        ref:"attr:FieldPicker.saveAndExitButtonTitle",
        flags:"IR",
        description:"The title shown on the Save and Exit button",
        name:"saveAndExitButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Apply\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "class:Hover":{
        methods:[
        ],
        ref:"class:Hover",
        classAttrs:[
            "classAttr:Hover.moveWithMouse",
            "classAttr:Hover.leftOffset",
            "classAttr:Hover.topOffset",
            "classAttr:Hover.hoverCanvasDefaults"
        ],
        classMethods:[
            "classMethod:Hover.show",
            "classMethod:Hover.hide"
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
        ],
        description:"The Hover class handles showing a simple SmartClient canvas containing arbitrary HTML, or\n triggering some other action in response to a user holding the mouse-pointer (or hovering)\n over a specific widget.",
        name:"Hover",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:XMLTools.selectString":{
        ref:"classMethod:XMLTools.selectString",
        flags:"A",
        description:" Retrieve a string value from an XML element or document based on an XPath expression.\n <P>\n If more than one node matches, only the first node's value will be returned.\n <P>\n Namespacing works as described under ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectNodes')}\n <P>\n <b>NOTE:</b> this API cannot be supported on the Safari web browser for versions prior to\n 3.0.3.\n\n",
        name:"selectString",
        seeAlso:[
        ],
        params:[
            {
                description:"Native XMLElement,document, or xml string                                                        to select from",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"XMLElement or XMLDocument or String"
            },
            {
                description:"XPath expression to use to select nodes",
                optional:false,
                name:"expression",
                defaultValue:null,
                type:"XPath"
            },
            {
                description:"namespace mapping used by the expression",
                optional:true,
                name:"namespaces",
                defaultValue:null,
                type:"prefix -> URI mapping"
            }
        ],
        returns:{
            description:"result of the XPath, in String form",
            type:"String"
        },
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlServerValidationErrors')}"
        ],
        definingClass:"class:XMLTools",
        groups:[
            "xmlTransform"
        ]
    },
    "attr:Slider.trackWidth":{
        ref:"attr:Slider.trackWidth",
        flags:"IRW",
        description:"The thickness of the track. This is the width, for a vertical slider, or the height, for\n a horizontal slider.",
        name:"trackWidth",
        setter:[
            "setTrackWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:Calendar.timeFormatter":{
        ref:"attr:Calendar.timeFormatter",
        flags:"IRW",
        description:"Display format to use for the time portion of events' date information.",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"\"toShortPaddedTime\"",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:FacetChart.showDataAxisLabel":{
        ref:"attr:FacetChart.showDataAxisLabel",
        flags:"IR",
        description:"Whether to show a label for the data axis as a whole (the data axis is where labels for\n each data point appear).  If true, ${isc.DocUtils.linkForRef('attr:Facet.title')} for the data label facet will be\n shown as the label.\n <P>\n Automatically disabled for non-rectangular charts (eg Pie, Radar).",
        name:"showDataAxisLabel",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:EBay.setSandboxToken":{
        ref:"method:EBay.setSandboxToken",
        flags:"",
        description:"\n Sets the token to be used by queries to the eBay sandbox environment.\n \n",
        name:"setSandboxToken",
        seeAlso:[
        ],
        params:[
            {
                description:"Your sandbox authToken, provided to you by eBay.",
                optional:false,
                name:"authToken",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:EBay"
    },
    "method:ListGrid.addData":{
        ref:"method:ListGrid.addData",
        flags:"",
        description:" Perform a DataSource \"add\" operation to add new records to this component's DataSource.\n\n",
        name:"addData",
        seeAlso:[
        ],
        params:[
            {
                description:"new record",
                optional:false,
                name:"newRecord",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"method to call on operation completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundAdd')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "classMethod:isc.getIconRect":{
        ref:"classMethod:isc.getIconRect",
        flags:"A",
        description:"  Returns the size / position of an icon with respect to the widget rendering out the\n  form item as an array of coordinates.\n",
        name:"getIconRect",
        seeAlso:[
        ],
        params:[
            {
                description:"icon definition for the icon you want to determine the                               position of (defaults to first icon in this.icons).",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"four element array representing the Left, Top, Width, and Height of                      the icon in px.",
            type:"array"
        },
        type:"method",
        definingClass:"class:isc"
    },
    "method:ListGrid.cellOver":{
        ref:"method:ListGrid.cellOver",
        flags:"",
        description:" Called when the mouse pointer enters a cell\n\n",
        name:"cellOver",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:FacetChart.pieRingBorderProperties":{
        ref:"attr:FacetChart.pieRingBorderProperties",
        flags:"IR",
        description:"Properties for pie ring border",
        name:"pieRingBorderProperties",
        seeAlso:[
        ],
        valueType:"DrawOval Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:TileGrid.setDragTracker":{
        ref:"method:TileGrid.setDragTracker",
        flags:"",
        description:" Sets the custom tracker HTML to display next to the mouse when the user initiates a drag\n operation on this component. Default implementation will examine ${isc.DocUtils.linkForRef('attr:ListGrid.dragTrackerMode')}\n and set the custom drag tracker to display the appropriate HTML based on the selected record.\n <br>\n To display custom drag tracker HTML, this method may be overridden - call \n ${isc.DocUtils.linkForRef('classMethod:EventHandler.setDragTracker')} to actually update the drag tracker HTML.\n",
        name:"setDragTracker",
        seeAlso:[
        ],
        returns:{
            description:"returns false by default to suppress 'setDragTracker' on any ancestors                   of this component.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dragTracker"
        ]
    },
    "group:iscInstall":{
        ref:"group:iscInstall",
        title:"Deploying SmartClient",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"This overview serves as a how-to for installing SmartClient into your web application.\n Evaluators are urged to use the SmartClient SDK with the embedded tomcat servlet engine\n during evaluation rather than pursue installation into an existing web application up front,\n however, reading this document and the related ${isc.DocUtils.linkForRef('group:clientServerIntegration','server\\n integration')} materials is recommended to get an overview.\n <P>\n SmartClient has two pieces - the client components that run in the browser and the server\n components that run in a J2SE-compatible container.  You don't need to use a Java back-end\n to use SmartClient, but the SDK comes with some examples that assume the presence of the\n Java back-end and, for some examples, a SQL Database.  If you will be using SmartClient with\n a Java back-end, see below for the list of J2SE application servers supported by the Java\n implementation of the SmartClient server.\n <p>\n The SDK contains two top-level directories: <code>smartclientSDK</code> and\n <code>smartclientRuntime</code>.  The <code>smartclientSDK</code> directory contains the\n embedded servlet engine, embedded database, examples, and documentation.  The\n <code>smartclientRuntime</code> directory contains just the client and server components of\n the SmartClient product - use the contents of this directory when deploying SmartClient into\n your application environment.\n <p>\n <u><b>Client integration</b></u>\n <p>\n To install the client-side portion of SmartClient, simply copy the <code>isomorphic</code>\n directory from the smartclientRuntime webroot to the webroot of your application.  Having\n done this you can use SmartClient components on your pages regardless of the technologies\n used on your back-end and you can bind to server-side componentry backed by arbitrary\n technology - see the <i>Data Integration</i> section of the\n ${isc.DocUtils.linkForRef('group:clientServerIntegration')} section for more information.\n <p>\n <u><b>Server integration</b></u>\n <p>\n <span style='color:red'>Note:</span> Some of the instructions below ask you to copy files\n into the WEB-INF/classes folder.  If you're using an IDE such as Eclipse that attempts to\n manage the WEB-INF/classes folder, we recommend that you copy these files to the src/\n directory of your project (next to the top-level folder for your java namespace) such that\n your IDE auto-deploys them to the WEB-INF/classes folder.  We have seen cases of tools like\n Eclipse periodically deleting files that are checked into to WEB-INF/classes directly.\n <p>\n <ul>\n <li> Copy all files from the WEB-INF/lib directory of the smartclientRuntime to your\n WEB-INF/lib.  The set of libs in the smartclientRuntime/WEB-INF/lib folder is a minimal set;\n smartclient<b>SDK</b>/WEB-INF/lib contains all other .jars you might need, including third-party\n libraries bundled for convenience.  See\n ${isc.DocUtils.linkForRef('group:javaModuleDependencies','Java Module Dependencies')} for details of the .JAR files that\n comprise the SmartClient Server, and their dependencies on various third-party libraries.\n Generally, if there are conflicts with the versions of third-party libraries you want to\n use, you can use the versions you want - SmartClient has minimal dependencies on these\n libraries. \n <li> Copy the WEB-INF/classes/log4j.isc.config.xml from the smartclientRuntime to your\n WEB-INF/classes\n directory.  This file contains the SmartClient server log configuration.\n <li> Copy the ${isc.DocUtils.linkForRef('group:server_properties','WEB-INF/classes/server.properties')}\n from the smartclientRuntime to your WEB-INF/classes\n directory.  This file contains settings for basic file locations such the location of\n webroot, the SmartClient SQL engine and DMI.  The version under smartclientRuntime has a\n basic, secure configuration.  See the version of ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n under the smartclientSDK directory for sample SQL and other settings.\n <li> Copy the WEB-INF/iscTaglib.xml from the smartclientRuntime to your WEB-INF directory.\n This file enables the use of custom SmartClient tags in your JSPs.  \n <li> Merge portions of the WEB-INF/web.xml into your application's web.xml.  To use\n SmartClient JSP tags like &lt;loadISC&gt;, you'll need to merge the &lt;jsp-config&gt;\n section from web.xml.  Also there are some mandatory and optional servlets and filters to\n merge - see below.\n <li> <b>Power and Enterprise Editions only</b>.  Copy the shared/ds/batchUpload.ds.xml file\n to the same location in your target webapp directory.  This file is a utility DataSource\n that is used to provide the initial upload functionality of the ${isc.DocUtils.linkForRef('class:BatchUploader')} \n component - strictly speaking, you only need to perform this step if you intend to use that \n component.\n </ul>\n <p>\n See ${isc.DocUtils.linkForRef('group:servletDetails','Core and Optional SmartClient servlets')} for details of additional \n changes you may need to make to your applications <code>web.xml</code> file.  See \n ${isc.DocUtils.linkForRef('group:javaModuleDependencies','Java Module Dependencies')} for details of the .JAR files that\n comprise the SmartClient Server, and their dependencies on various third-party libraries.\n <p>\n <u><b>Multiple Applications / WARs</b></u>\n <p>\n To integrate the server portion of SmartClient, you need to follow the steps below for each\n application (WAR) that uses SmartClient.  Note that, if installing into an environment that\n uses multiple WARs, installation of SmartClient JARs into a directory shared by multiple\n applications is not supported.  Installation of a separate WAR with client-side SmartClient\n modules for maintaining cache coherence across applications using the same version of ISC is\n supported - contact Isomorphic support for more details on how to set that up.\n <p>\n <u><b>Troubleshooting</b></u>\n <p>\n This section covers some common problems with possible solutions.  You may also need to refer to the\n documentation for your specific application server, web server, or database. If you experience any problems\n installing and configuring SmartClient in your environment, please post on the \n <a href=\"http://forums.smartclient.com/\" target='_blank'>SmartClient forums</a> for\n assistance.\n <p>\n <table width=\"90%\" class=\"normal\" align=\"center\" border=\"1\" cellpadding=\"5\">\n <tr bgcolor=\"#808080\">\n \t<td width=\"30%\"><b>Problem</b></td>\n \t<td width=\"30%\"><b>Possible Causes</b></td>\n \t<td width=\"40%\"><b>Solution</b></td>\n </tr><tr>\n \t<td rowspan='3'>Browser displays a generic \"page cannot be displayed\" or \"unable to locate the server\" message.</td>\n \t<td>Servlet engine not started.</td>\n \t<td>Start your application server.</td>\n </tr><tr>\n \t<td>Missing/incorrect port for servlet engine in URL.</td>\n \t<td>Check the startup messages, logs, or documentation for the servlet engine to determine what port it is using.</td>\n </tr><tr>\n \t<td>Host name is incorrect.</td>\n \t<td>Check whether other pages on the host can be accessed.\n \t\tTry the base URL http://[host name]:[port number] to see whether the servlet engine or webserver is functioning.</td>\n </tr><tr>\n \t<td>Browser displays a 404 or other page/file not found error.</td>\n \t<td>Incorrect URL.</td>\n \t<td>Check for errors in the URL, including capitalization.</td>\n </tr><tr>\n \t<td>Server error: taglib not defined</td>\n \t<td>Missing iscTaglib.xml or iscTaglib.xml not referenced in web.xml</td>\n \t<td>Copy WEB-INF/iscTaglib.xml from smartclientRuntime to your deployment WEB-INF directory\n \tand make sure that you have merged the &lt;jsp-config&gt; section from the\n \tsmartclientRuntime web.xml</td>\n </tr><tr>\n  <td>ClassNotFound or other Java Exceptions in the server log.</td>\n  <td>Missing JAR files</td>\n  <td>Verify every required .jar has been copied into the WEB-INF/lib directory of your\n  deployment.  Use ${isc.DocUtils.linkForRef('group:javaModuleDependencies','these docs')} to double-check.  If in\n  doubt, copy every available .jar, verify this is working, then trim off .jars you are\n  definitely not using.</td>\n </tr><tr>\n  <td>\"isc\" is not defined JS error</td>\n  <td>Incorrect URLs to SmartClient modules</td>\n  <td>Use View Source to look at SCRIPT includes (e.g. for ISC_Core.js), try those URLs\n  directly in the browser to verify the files are correctly deployed</td>\n </tr>\n </table>\n <P>\n <u><b>Caching Considerations</b></u>\n <p>\n When upgrading from one SmartClient release to the next, you want to make sure that the user\n picks up the new version on next access, but you also want to keep the ISC modules cacheable\n so they're not refetched on every access.\n <p>\n SmartClient deals with this problem by appending a version string as a query parameter to\n each module load directive.  This is done by the &lt;isomorphic:loadISC&gt; and\n &lt;isomorphic:loadModules&gt; tags automatically.  As long as you make sure that the file\n that contains these tags is non-cacheable, you will get the desired behavior.\n <p>\n <u><b>Supported J2SE Containers</b></u>\n <p>\n Below is the list of J2SE containers that have been tested to be compatible with this\n version of SmartClient.  Installation in these containers is supported for deployment by\n Isomorphic.  If your application server is not on this list, please contact us at the\n <a href=\"http://forums.smartclient.com\" target='_blank'>SmartClient forums</a> to see if we can support\n your deployment.  In general, the Java portion of ISC should work on servlet containers that\n comply with servlet specification version 2.3 and up and utilize a JVM no older than version\n 1.4.\n <p>\n Supported J2SE Containers:\n <p>\n <table class='normal'>\n <tr><td width=40></td><td width=400><i>Apache Tomcat 4.0.x, 4.1.x, 5.0.x, 5.5x, 6.0.x, 7.0.x, 8.0x</i></td><td></td></tr>\n <tr><td></td><td><i>Apache Geronimo 1.x, 2.x, 3.x</i></td><td></td></tr>\n <tr><td></td><td><i>Oracle WebLogic 6.x, 7x, 8.x, 9.x, 10.x, 11gR1 PSx, 12c Release x</i></td><td></td></tr>\n <tr><td></td><td><i>Caucho Resin 2.1.x, 3.0.x, 3.1.x, 4.x</i></td><td></td></tr>\n <tr><td></td><td><i>IBM WebSphere 5.x, 6.x, 7.x, 8.x</i></td><td></td></tr>\n <tr><td></td><td><i>IBM WebSphere Community Edition 1.x, 2.x, 3.x</i></td><td></td></tr>\n <tr><td></td><td><i>JBoss 3.2.x, 4.0.x, 4.2.x, 5.x, 7.x, 8.x</i></td><td></td></tr>\n <tr><td></td><td><i>Mortbay Jetty 4.x, 5.x, 6.x, 7.x, 8.x, 9.0.x</i></td><td></td></tr>\n <tr><td></td><td><i>Oracle Containers for J2EE (OC4J) 9.x, 10.x, 11.x</i></td><td></td></tr>\n <tr><td></td><td><i>Oracle Application Server 10g 9.x, 10.x; 11g</i></td><td></td></tr>\n <tr><td></td><td><i>Sun Application Server 8.x, 9.x</i></td><td></td></tr>\n </table>",
        name:"iscInstall",
        seeAlso:[
        ],
        type:"group"
    },
    "method:PortalLayout.setStretchColumnWidthsProportionally":{
        ref:"method:PortalLayout.setStretchColumnWidthsProportionally",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.stretchColumnWidthsProportionally')} and reflows to reflect the new setting.\n",
        name:"setStretchColumnWidthsProportionally",
        seeAlso:[
            {
                ref:"attr:PortalLayout.stretchColumnWidthsProportionally",
                description:null
            }
        ],
        params:[
            {
                description:"Whether to stretch column widths proportionally",
                optional:false,
                name:"stretchProportionally",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "method:TileGrid.getSelectedRecord":{
        ref:"method:TileGrid.getSelectedRecord",
        flags:"",
        description:" Returns the first selected record in this component.\n <p>\n <strong>NOTE:</strong> If a record is returned, it should be treated as read-only and not\n modified.\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"first selected record, or null if nothing selected",
            type:"TileRecord"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundRemove')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:FieldPicker.availableFieldsTitle":{
        ref:"attr:FieldPicker.availableFieldsTitle",
        flags:"IR",
        description:null,
        name:"availableFieldsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Available Fields\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "class:ToolStripResizer":{
        methods:[
        ],
        ref:"class:ToolStripResizer",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/ToolStrip"
        ],
        attrs:[
            "attr:ToolStripResizer.skinImgDir",
            "attr:ToolStripResizer.vSrc",
            "attr:ToolStripResizer.hSrc"
        ],
        description:"Simple subclass of ImgSplitbar with appearance appropriate for a ToolStrip resizer.",
        name:"ToolStripResizer",
        seeAlso:[
        ],
        type:"class"
    },
    "method:DrawPane.addGradient":{
        ref:"method:DrawPane.addGradient",
        flags:"",
        description:" Add a new gradient to the drawPane shared gradient list (${isc.DocUtils.linkForRef('attr:DrawPane.gradients')}). If the\n gradient does not have an ID a new one will be assigned.\n\n",
        name:"addGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"gradient to add",
                optional:false,
                name:"gradient",
                defaultValue:null,
                type:"Gradient"
            }
        ],
        returns:{
            description:"the ID of the gradient (either provided or auto-assigned)",
            type:"identifier"
        },
        type:"method",
        definingClass:"class:DrawPane"
    },
    "method:StatefulCanvas.setActionType":{
        ref:"method:StatefulCanvas.setActionType",
        flags:"A",
        description:" Update the 'actionType' for this canvas (radio / checkbox / button)\n If the canvas is currently selected, and the passed in actionType is 'button'\n this method will deselect the canvas.\n",
        name:"setActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:Splitbar.cursor":{
        ref:"attr:Splitbar.cursor",
        flags:"IRW",
        description:"Splitbars' cursors are set at init time based on whether they are to be used for vertical or\n horizontal resize.  To customize the cursor for this class, modify \n ${isc.DocUtils.linkForRef('attr:Splitbar.vResizeCursor')} or ${isc.DocUtils.linkForRef('attr:Splitbar.hResizeCursor')} rather than this property.",
        name:"cursor",
        seeAlso:[
        ],
        valueType:"Cursor",
        defaultValue:"\"hand\"",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "cursor"
        ]
    },
    "method:DataSource.exportData":{
        ref:"method:DataSource.exportData",
        flags:"",
        description:" Perform a \"fetch\" DataSource operation against this DataSource, sending search criteria,\n retrieving matching records and exporting the results.  See \n ${isc.DocUtils.linkForRef('attr:OperationBinding.exportResults')} or ${isc.DocUtils.linkForRef('attr:DSRequest.exportResults')} and for more\n information.\n\n",
        name:"exportData",
        seeAlso:[
        ],
        params:[
            {
                description:"search criteria",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"callback to invoke on completion.  Note that this parameter                                  only applies where ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient')} is \n                                  explicitly set to false, because  file downloads do not \n                                  provide ordinary SmartClient callbacks",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "attr:ListGrid.drawAllMaxCells":{
        ref:"attr:ListGrid.drawAllMaxCells",
        flags:"IRWA",
        description:"If drawing all rows would cause less than <code>drawAllMaxCells</code> cells to be rendered,\n the full dataset will instead be drawn even if ${isc.DocUtils.linkForRef('attr:ListGrid.showAllRecords','showAllRecords')}\n is false and the viewport size and ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio')} setting would normally have caused\n incremental rendering to be used.\n <P>\n The <code>drawAllMaxCells</code> setting prevents incremental rendering from being used in\n situations where it's really unnecessary, such as a 40 row, 5 column dataset (only 200\n cells) which happens to be in a grid with a viewport showing only 20 or so rows.\n Incremental rendering causes a brief \"flash\" during scrolling as the visible portion of the\n dataset is redrawn, and a better scrolling experience can be obtained in this situation by\n drawing the entire dataset up front, which in this example would have negligible effect on\n initial draw time.\n <P>\n <code>drawAllMaxCells:0</code> disables this features.  You may want to disable this feature\n if performance is an issue and:\n <ul>\n <li> you are very frequently redraw a grid\n <li> you do a lot of computation when rendering each cell (eg formulas)\n <li> you are showing many grids on one screen and the user won't scroll most of them\n </ul>",
        name:"drawAllMaxCells",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"250",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "attr:Menu.titleFieldDefaults":{
        ref:"attr:Menu.titleFieldDefaults",
        flags:"IR",
        description:"Default properties for the automatically generated title column.\n Default object includes properties to set width and to show title for this column.\n <P>\n To modify the behavior or appearance of this column, developers may set\n ${isc.DocUtils.linkForRef('attr:Menu.titleFieldProperties')} at the instance level, or override this\n object at the class level. If overriding this object, we recommend using\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} rather than replacing this object entirely.",
        name:"titleFieldDefaults",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"object",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:MetricSettings.showShadows":{
        ref:"attr:MetricSettings.showShadows",
        flags:"IR",
        description:"Whether to automatically show shadows for various charts.",
        name:"showShadows",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:DrawGroup.width":{
        ref:"attr:DrawGroup.width",
        flags:"IRW",
        description:"Width of the ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} in pixels relative to the DrawPane.",
        name:"width",
        setter:[
            "setWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:DrawGroup"
    },
    "group:editing":{
        ref:"group:editing",
        title:"Grid Editing",
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        refs:[
            "method:CubeGrid.setEditValue",
            "method:CubeGrid.getEditValue",
            "method:CubeGrid.getEditedRecord",
            "method:CubeGrid.getEditedCell",
            "method:CubeGrid.getEditValues",
            "method:CubeGrid.clearEditValue",
            "method:CubeGrid.saveEdits",
            "method:CubeGrid.getAllEditCells",
            "method:CubeGrid.discardAllEdits",
            "method:CubeGrid.recordHasChanges",
            "method:CubeGrid.hasChanges",
            "method:CubeGrid.saveAllEdits",
            "method:ListGridField.defaultDynamicValue",
            "method:ListGridField.editorEnter",
            "method:ListGridField.editorExit",
            "method:ListGridField.cellChanged",
            "method:ListGridField.formatEditorValue",
            "method:ListGridField.parseEditorValue",
            "method:ListGridField.change",
            "method:ListGridField.changed",
            "method:ListGrid.markRecordRemoved",
            "method:ListGrid.markRecordsRemoved",
            "method:ListGrid.recordMarkedAsRemoved",
            "method:ListGrid.unmarkRecordRemoved",
            "method:ListGrid.markSelectionRemoved",
            "method:ListGrid.canEditCell",
            "method:ListGrid.startEditing",
            "method:ListGrid.getEditorValueMap",
            "method:ListGrid.setEditorValueMap",
            "method:ListGrid.getEditorType",
            "method:ListGrid.startEditingNew",
            "method:ListGrid.getAllEditRows",
            "method:ListGrid.getEditValues",
            "method:ListGrid.getEditedRecord",
            "method:ListGrid.getEditedCell",
            "method:ListGrid.setEditValue",
            "method:ListGrid.getEditValue",
            "method:ListGrid.clearEditValue",
            "method:ListGrid.getEditRow",
            "method:ListGrid.getEditCol",
            "method:ListGrid.getEditField",
            "method:ListGrid.cancelEditing",
            "method:ListGrid.endEditing",
            "method:ListGrid.discardAllEdits",
            "method:ListGrid.discardEdits",
            "method:ListGrid.saveEdits",
            "method:ListGrid.rowHasChanges",
            "method:ListGrid.hasChanges",
            "method:ListGrid.cellHasChanges",
            "method:ListGrid.saveAllEdits",
            "method:ListGrid.cellChanged",
            "method:ListGrid.editComplete",
            "method:ListGrid.editFailed",
            "method:ListGrid.editorEnter",
            "method:ListGrid.rowEditorEnter",
            "method:ListGrid.editorExit",
            "method:ListGrid.rowEditorExit",
            "method:ListGrid.formatEditorValue",
            "method:ListGrid.parseEditorValue",
            "method:TreeGrid.startEditingNew",
            "method:DynamicForm.getEditorType",
            "attr:Calendar.eventSnapGap",
            "attr:Calendar.showQuickEventDialog",
            "attr:Calendar.eventEditorFields",
            "attr:Calendar.eventDialogFields",
            "attr:ListGrid.recordCanRemoveProperty",
            "attr:ListGridRecord._canRemove",
            "attr:ListGrid.saveRequestProperties",
            "attr:ListGridField.editorImageURLPrefix",
            "attr:ListGridField.editorImageURLSuffix",
            "attr:ListGridField.icons",
            "attr:ListGridField.editorIconWidth",
            "attr:ListGridField.editorIconHeight",
            "attr:ListGridField.defaultIconSrc",
            "attr:ListGridField.iconVAlign",
            "attr:ListGridField.canEdit",
            "attr:ListGridField.defaultValue",
            "attr:ListGridField.enterKeyEditAction",
            "attr:ListGridField.escapeKeyEditAction",
            "attr:ListGridField.editorType",
            "attr:ListGridField.editorProperties",
            "attr:ListGrid.modalEditing",
            "attr:ListGridField.multiple",
            "attr:ListGridField.editorValueMap",
            "attr:ListGrid.canEdit",
            "attr:ListGrid.recordEditProperty",
            "attr:ListGridRecord._canEdit",
            "attr:ListGrid.alwaysShowEditors",
            "attr:ListGrid.editByCell",
            "attr:ListGrid.saveByCell",
            "attr:ListGrid.deferRemoval",
            "attr:ListGrid.waitForSave",
            "attr:ListGrid.stopOnErrors",
            "attr:ListGrid.autoSaveEdits",
            "attr:ListGrid.confirmCancelEditing",
            "attr:ListGrid.cancelEditingConfirmationMessage",
            "attr:ListGrid.confirmDiscardEdits",
            "attr:ListGrid.confirmDiscardEditsMessage",
            "attr:ListGrid.discardEditsSaveButtonTitle",
            "attr:ListGrid.rowEndEditAction",
            "attr:ListGrid.listEndEditAction",
            "attr:ListGrid.enterKeyEditAction",
            "attr:ListGrid.escapeKeyEditAction",
            "attr:ListGrid.editEvent",
            "attr:ListGrid.editOnFocus",
            "attr:ListGrid.editOnF2Keypress",
            "attr:ListGrid.selectOnEdit",
            "attr:ListGridField.canToggle",
            "attr:ListGrid.enumCriteriaAsInitialValues",
            "attr:ListGrid.longTextEditorThreshold",
            "attr:ListGrid.longTextEditorType",
            "type:RowEndEditAction",
            "type:EnterKeyEditAction",
            "type:EscapeKeyEditAction",
            "type:EditCompletionEvent",
            "type:ListGridEditEvent"
        ],
        description:"Data being displayed by a grid may be edited within the grid, by showing editing\n interfaces embedded inside the cells of the grid.\n <P>\n <b>Enabling editing</b>\n <P>\n Editing is enabled when ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','canEdit')} is <code>true</code>.  When enabled,\n the user can begin editing via the\n ${isc.DocUtils.linkForRef('attr:ListGrid.editEvent','editEvent')}, typically click or double-click.  Editing can also be triggered\n programmatically by a call to ${isc.DocUtils.linkForRef('method:ListGrid.startEditing','startEditing()')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.startEditingNew','startEditingNew()')}.\n <P>\n <b>New record creation</b>\n <P>\n By default, editing is restricted to existing records.  Setting ${isc.DocUtils.linkForRef('attr:ListGrid.listEndEditAction')} to\n \"next\" allows the user to create new records by simply navigating off the end of the dataset\n with the keyboard.  Editing of new records can also be initiated with\n ${isc.DocUtils.linkForRef('method:ListGrid.startEditingNew')}, for example, from a button outside the grid.  See the\n ${isc.DocUtils.linkForRef('group:unsavedRecords','Unsaved Records Overview')} for special concerns when dealing\n with unsaved records.\n <P>\n <b>Saving changes</b>\n <P>\n Saving of changes is triggered automatically when the user navigates out of the row or cell\n being edited (based on ${isc.DocUtils.linkForRef('attr:ListGrid.saveByCell')}) or when the user ends editing.   For\n a \"mass update\" interface, automatic saving of changes can be disabled entirely via\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits','autoSaveEdits:false')}, in which case a manual call to\n ${isc.DocUtils.linkForRef('method:ListGrid.saveEdits','saveEdits()')} or ${isc.DocUtils.linkForRef('method:ListGrid.saveAllEdits','saveAllEdits()')} is required\n to trigger saving.\n <P>\n If a grid has no DataSource, saving means that the properties of the ${isc.DocUtils.linkForRef('object:ListGridRecord')}s\n in ${isc.DocUtils.linkForRef('attr:ListGrid.data','grid.data')} are directly changed.\n <P>\n For a grid with a DataSource, saving will be accomplished by using DataSource \"update\"\n operations for existing records, and DataSource \"add\" operations for new records.  If multiple\n records have been edited and ${isc.DocUtils.linkForRef('method:ListGrid.saveAllEdits','saveAllEdits()')} is called,\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','request queuing')} will be automatically used to enable all\n edits to be saved in one HTTP turnaround (if using the SmartClient Server).\n <P>\n By default, a grid will send only updated fields and primaryKey fields as part of\n ${isc.DocUtils.linkForRef('attr:DSRequest.data')} so that the server can discern which fields the user actually changed.\n However, the grid always includes the original field values in the\n dsRequest as ${isc.DocUtils.linkForRef('attr:DSRequest.oldValues')}.\n <P>\n Note that although it is possible to load DataSource data without actually declaring a\n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey field')}, a primaryKey must be declared for\n editing and saving.  The values of primaryKey fields is how SmartClient identifies the\n changed record to the server.\n <P>\n <b>Validation</b>\n <P>\n Any time saving is attempted, validation is automatically triggered.  Values entered by the\n user will be checked against the ${isc.DocUtils.linkForRef('attr:ListGridField.validators')} and the\n ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')}. Any invalid values abort an attempted save.\n <P>\n Similar to editing and saving, validation can be done on row transitions or on cell\n transitions by setting ${isc.DocUtils.linkForRef('attr:ListGrid.validateByCell','validateByCell')}, or can be disabled entirely\n via ${isc.DocUtils.linkForRef('attr:ListGrid.neverValidate','neverValidate:true')}.\n <P>\n <b>Editability of cells</b>\n <P>\n Editors will either be shown for the complete row or for a single cell based on\n ${isc.DocUtils.linkForRef('class:ListGrid','editByCell,editByCell')}.  Whether a cell can be edited can be controlled on a\n per field basis by setting ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit','field.canEdit')}, or on a per-record basis\n by setting ${isc.DocUtils.linkForRef('attr:ListGrid.recordEditProperty','recordEditProperty')} on a\n ${isc.DocUtils.linkForRef('object:ListGridRecord','record')}, or can be controlled on an arbitrary, programmatic basis via\n an override of ${isc.DocUtils.linkForRef('method:ListGrid.canEditCell')}.\n <P>\n Cells which are not editable just display the cell's current value.\n <P>\n <b>Keyboard Navigation</b>\n <P>\n Full keyboard navigation is supported by default, including Tab and Shift-Tab to navigate\n between cells in a row, and Up Arrow and Down Arrow to traverse rows.  Several properties\n on both grids and fields, all named *EditAction, control navigation behavior of certain keys\n (eg Enter).\n <P>\n You can use ${isc.DocUtils.linkForRef('method:ListGrid.startEditing','startEditing(<i>rowNum</i>, <i>colNum</i>)')} to\n programmatically move editing to a particular cell, for example, during a\n ${isc.DocUtils.linkForRef('method:ListGridField.changed','field.changed()')} event.\n <P>\n <b>editValues (unsaved changes)</b>\n <P>\n The term \"editValues\" means changes that the user has made to the dataset which have not\n been saved.  The grid manages and stores editValues separately from the data itself in order\n to allow the user to revert to original values, and in order to enable to grid to send only\n updated fields to the server.\n <P>\n Because editValues are stored separately, if you directly access the dataset (eg via\n <code>grid.getData().get()</code>) you will see the records without the user's unsaved changes.\n Many APIs exist for retrieving and managing editValues (search for editValue).\n For the common case of needing to access the record-as-edited, you can call\n ${isc.DocUtils.linkForRef('method:ListGrid.getEditedRecord','grid.getEditedRecord(rowNum)')}.\n <P>\n When accessing and manipulating edited data, you should think carefully about whether\n you want to be working with the original data or with the edited version.  Values entered\n by the user may not have been validated yet, or may have failed validation, hence you may\n find a String value in a field of type \"date\" or \"int\", which could cause naive formatters or\n totaling functions to crash.\n <P>\n Setting editValues via APIs such as ${isc.DocUtils.linkForRef('method:ListGrid.setEditValue')} is fully equivalent\n to the user making changes to data via the editing UI.  If you <i>also</i> allow editing\n external to the grid, setting editValues is one way to combine changes from external\n editors into the grid's edits, so that you can do a single save.\n <P>\n <b>Customizing Cell Editors</b>\n <P>\n When a cell is being edited, the editor displayed in the cell will be a ${isc.DocUtils.linkForRef('class:FormItem')}.\n The editor type for the cell will be determined by ${isc.DocUtils.linkForRef('method:ListGrid.getEditorType')} based on the\n specified ${isc.DocUtils.linkForRef('attr:ListGridField.editorType')} or ${isc.DocUtils.linkForRef('attr:ListGridField.type','data type')} for the field in\n question.\n <P>\n You can customize the editor by setting ${isc.DocUtils.linkForRef('attr:ListGridField.editorProperties')} to a set of\n properties that is valid for that FormItem type.  Custom FormItem classes are also allowed,\n for example, you may use ${isc.DocUtils.linkForRef('attr:FormItem.icons')} to create an icon that launches a separate\n ${isc.DocUtils.linkForRef('class:Dialog')} in order to provide an arbitrary interface that allows the user to select the\n value for a field.\n <P>\n <b>Events</b>\n <P>\n Editing triggers several events which you can provide handlers for in order to customize\n editing behavior.  Some of the most popular are ${isc.DocUtils.linkForRef('method:ListGridField.change','field.change()')},\n ${isc.DocUtils.linkForRef('method:ListGridField.changed','field.changed()')} for detecting changes made by the user,\n ${isc.DocUtils.linkForRef('method:ListGrid.cellChanged')} for detecting changes that have been successfully saved,\n and ${isc.DocUtils.linkForRef('method:ListGrid.editorEnter','editorEnter')} and ${isc.DocUtils.linkForRef('method:ListGrid.editorExit','editorExit()')}\n for detecting user navigation during editing.\n <P>\n <smartclient>\n You can also install event handlers directly on the FormItem-based editors used in the grid\n via ${isc.DocUtils.linkForRef('attr:ListGridField.editorProperties','editorProperties')} as mentioned above.  When handling\n events on items, or which involve items, be aware that in addition to standard\n ${isc.DocUtils.linkForRef('class:FormItem')} APIs, editors have the following properties:\n <P>\n - <code>rowNum</code>: The rowNum of the record being edited.<br>\n - <code>colNum</code>: The colNum of the cell being edited.<br>\n - <code>grid</code>: A pointer back to the listGrid containing the record.\n </smartclient>\n <smartgwt>\n <code>ListGridField.setEditorType()</code> can be used to customize the editors shown\n for each field, including providing FormItem-specific event handlers.  However,\n ListGrid-provided event APIs should be used wherever possible (for example, use\n <code>EditorEnterEvent</code> rather than <code>FocusEvent</code>).  If, in a FormItem\n event handler, you need access to the ListGrid, you can either declare the event handler\n as a Java \"inner class\" in a scope where the ListGrid is available as a final variable,\n or you can use <code>event.getItem().getContainerWidget()</code>.  Note the ListGrid APIs\n ${isc.DocUtils.linkForRef('method:ListGrid.getEditRow','getEditRow()')} and ${isc.DocUtils.linkForRef('method:ListGrid.getEditCol','getEditCol()')}\n indicate what cell is being edited.\n <P>\n For more dynamic editor customization, include changing the type of editor used on a\n per-row basis, use ${isc.DocUtils.linkForRef('listGrid.setEditorCustomizer')}.\n <P>\n <b>NOTE:</b> with both APIs, in effect several FormItems are generated from the\n customized FormItem you provide - see the docs for\n ${isc.DocUtils.linkForRef('attr:DataSourceField.editorType')} for special coding patterns that apply in this\n case.\n </smartgwt>\n <P>\n <b>Binary Fields</b>\n <P>\n The ListGrid will automatically show \"view\" and \"download\" icon buttons for binary field\n types (see ${isc.DocUtils.linkForRef('type:ListGridFieldType')}).  However, you cannot use an upload control\n embedded within a ListGrid row to upload files (regardless of whether you use FileItem or\n UploadItem).  This is because, in the browser's security model, native HTML upload\n controls cannot be re-created and populated with a chosen file, and the ListGrid needs\n to be able to re-create editors at any time in order to handle loading data on scroll,\n scrolling editors in and out of view, adding new rows, changing sort direction, and\n other use cases.\n <P>\n However you <i>can</i> create an editor with a ${isc.DocUtils.linkForRef('attr:FormItem.icons','FormItem icon')} that\n pops up a separate Window containing a FileItem in a DynamicForm, so long as the form in\n the Window saves the uploaded file immediately rather than trying to have the grid\n perform the save.",
        name:"editing",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DataSource.fieldMatchesFilter":{
        ref:"method:DataSource.fieldMatchesFilter",
        flags:"",
        description:" Compares a criteria value to a field value and returns whether they match, as follows:\n <ul>\n <li> any non-String filter value is directly compared (==) to the field value\n <li> any String filter value is compared according to\n      ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')} in the passed <code>requestProperties</code>,\n      regardless of the actual field type\n <li> if the filter value is an Array, the comparison is a logical OR.  If textMatchStyle\n      is \"exact\", it matches if fieldValue (or any of it's entries, if it's also an array) \n      is contained in the filterValue Array.  If textMatchStyle if substring, it matches \n      if any of the entries in filterValue appear as a case-insensitive substring of any\n      of the entries in fieldValue.\n <li>Dates are compared as logical dates if either the field value or the filter value is a logical date.\n     Only if none of them is a logical date they will be compared as standard Dates\n </ul>\n",
        name:"fieldMatchesFilter",
        seeAlso:[
        ],
        params:[
            {
                description:"field value to be compared",
                optional:false,
                name:"fieldValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"filter value to be compared",
                optional:false,
                name:"filterValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"optional dataSource request properties",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"true if the filter and field values match, false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:FormItem.disable":{
        ref:"method:FormItem.disable",
        flags:"",
        description:" Set this item to be disabled at runtime.\n",
        name:"disable",
        seeAlso:[
            {
                ref:"attr:FormItem.disabled",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "enable"
        ]
    },
    "method:GridRenderer.refreshCell":{
        ref:"method:GridRenderer.refreshCell",
        flags:"A",
        description:" Refresh an individual cell without redrawing the grid.\n <P>\n The cell's value, CSS class, and CSS text will be refreshed, to the current values returned\n by getCellValue(), getCellStyle() and getCellCSSText() respectively.\n\n",
        name:"refreshCell",
        seeAlso:[
            {
                ref:"method:GridRenderer.refreshCellStyle",
                description:"to update just styling"
            }
        ],
        params:[
            {
                description:"row number of cell to refresh",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of cell to refresh",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.snapVGap":{
        ref:"attr:Canvas.snapVGap",
        flags:"IRW",
        description:"The vertical grid size to use, in pixels, when snap-to-grid is enabled.",
        name:"snapVGap",
        seeAlso:[
            {
                ref:"attr:Canvas.snapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.snapResizeToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapResizeToGrid",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:SimpleType.shortDisplayFormatter":{
        ref:"method:SimpleType.shortDisplayFormatter",
        flags:"",
        description:" Formatter for values of this type when compact display is required, for example, in a\n ${isc.DocUtils.linkForRef('class:ListGrid')} or ${isc.DocUtils.linkForRef('class:TreeGrid')}.\n <P>\n When this formatter is called, the SimpleType object is available as \"this\".  \n <P>\n A formatter can make itself configurable on a per-component or per-field basis by\n checking properties on the component or field.  For example, a formatter for account IDs\n may want to omit a prefix in views where it is redundant, and could check a flag\n listGridField.omitAccountIdPrefix for this purpose.\n\n",
        name:"shortDisplayFormatter",
        seeAlso:[
        ],
        params:[
            {
                description:"value to be formatted",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"field descriptor from the component calling the formatter, if                      applicable.  Depending on the calling component, this could be a\n                      ${isc.DocUtils.linkForRef('object:ListGridField')}, ${isc.DocUtils.linkForRef('object:TreeGridField')}, etc",
                optional:true,
                name:"field",
                defaultValue:null,
                type:"Field"
            },
            {
                description:"component calling this formatter, if applicable",
                optional:true,
                name:"component",
                defaultValue:null,
                type:"DataBoundComponent"
            },
            {
                description:"Full record, if applicable",
                optional:true,
                name:"record",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        serverDS:"allowed",
        definingClass:"class:SimpleType"
    },
    "method:Canvas.getVSnapPosition":{
        ref:"method:Canvas.getVSnapPosition",
        flags:"A",
        description:" Override this method to provide a custom snap-to grid.  Note that you do not need to do\n this if your grid is regular (ie, grid points are every x pixels) - regular grids should be\n defined using ${isc.DocUtils.linkForRef('attr:Canvas.snapHGap')} and ${isc.DocUtils.linkForRef('attr:Canvas.snapVGap')}.\n You should only override this method if you want to provide support for a grid of\n irregularly-placed points\n\n",
        name:"getVSnapPosition",
        seeAlso:[
        ],
        params:[
            {
                description:"y-coordinate of the drag event relative to the inside of this widget",
                optional:false,
                name:"coordinate",
                defaultValue:null,
                type:"int"
            },
            {
                description:"\"before\" or \"after\" denoting whether the returned coordinate should   match the top or bottom edge of the current square. If unset ${isc.DocUtils.linkForRef('attr:Canvas.snapHDirection')} will\n   be used by default",
                optional:true,
                name:"direction",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"The vertical coordinate to snap to",
            type:"int"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:Canvas.hover":{
        ref:"method:Canvas.hover",
        flags:"",
        description:" If <code>canHover</code> is true for this widget, the <code>hover</code> string method will\n be fired when the user hovers over this canvas. If this method returns false, it will\n suppress the default behavior of showing a hover canvas if <code>this.showHover</code>\n is true.\n",
        name:"hover",
        seeAlso:[
            {
                ref:"attr:Canvas.canHover",
                description:null
            }
        ],
        returns:{
            description:"false to cancel the hover event.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "attr:ColorPicker.swatchWidth":{
        ref:"attr:ColorPicker.swatchWidth",
        flags:"IR",
        description:"Displayed width of the color swatch image. The default width is approximately\n that used by the Windows&#174; XP color picking window",
        name:"swatchWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"170",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "type:EditCompletionEvent":{
        ref:"type:EditCompletionEvent",
        values:[
            {
                description:"User clicked outside editor during edit.",
                value:"ListGrid.CLICK_OUTSIDE"
            },
            {
                description:"User started editing another row by clicking on it",
                value:"ListGrid.CLICK"
            },
            {
                description:"User started editing another row by double                               clicking",
                value:"ListGrid.DOUBLE_CLICK"
            },
            {
                description:"Enter pressed.",
                value:"ListGrid.ENTER_KEYPRESS"
            },
            {
                description:"User pressed Escape.",
                value:"ListGrid.ESCAPE_KEYPRESS"
            },
            {
                description:"Up arrow key pressed.",
                value:"ListGrid.UP_ARROW_KEYPRESS"
            },
            {
                description:"down arrow key.",
                value:"ListGrid.DOWN_ARROW_KEYPRESS"
            },
            {
                description:"User pressed Tab.",
                value:"ListGrid.TAB_KEYPRESS"
            },
            {
                description:"User pressed Shift+Tab.",
                value:"ListGrid.SHIFT_TAB_KEYPRESS"
            },
            {
                description:"Edit moved to a different field (same row)",
                value:"ListGrid.EDIT_FIELD_CHANGE"
            },
            {
                description:"Edit completed via explicit function call",
                value:"ListGrid.PROGRAMMATIC"
            }
        ],
        description:"What event / user interaction type caused cell editing to complete.",
        name:"EditCompletionEvent",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "editing"
        ]
    },
    "classAttr:RPCResponse.STATUS_FAILURE":{
        ref:"classAttr:RPCResponse.STATUS_FAILURE",
        flags:"R",
        description:"Indicates a generic failure on the server.  \n See the error handling section in ${isc.DocUtils.linkForRef('class:RPCManager','RPCManager documentation')}\n for more information.",
        name:"STATUS_FAILURE",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-1",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "method:Window.setShowHeaderIcon":{
        ref:"method:Window.setShowHeaderIcon",
        flags:"",
        description:" Dynamically update ${isc.DocUtils.linkForRef('attr:Window.showHeaderIcon')} to show / hide the headerIcon\n",
        name:"setShowHeaderIcon",
        seeAlso:[
            {
                ref:"attr:Window.headerControls",
                description:null
            },
            {
                ref:"attr:Window.showHeaderIcon",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "attr:PortalLayout.canStretchColumnWidths":{
        ref:"attr:PortalLayout.canStretchColumnWidths",
        flags:"IRWA",
        description:"Controls whether the PortalLayout will stretch column widths, if needed to accommodate the\n width of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}. If set, columns will overflow their widths in order to accomodate \n the widths of their Portlets.\n <p>\n With the default setting of ${isc.DocUtils.linkForRef('type:Overflow')}: auto, the PortalLayout as a whole will scroll \n horizontally if needed. Depending on the setting of ${isc.DocUtils.linkForRef('attr:PortalLayout.canShrinkColumnWidths','canShrinkColumnWidths')}, \n other columns may shrink to avoid overflow on the PortalLayout as a whole.\n <p>\n If <code>canStretchColumnWidths</code> is turned off, then individual rows will scroll\n horizontally in order to accommodate Portlets that are wider than their column width allows.",
        name:"canStretchColumnWidths",
        setter:[
            "setCanStretchColumnWidths"
        ],
        seeAlso:[
            {
                ref:"attr:PortalLayout.canShrinkColumnWidths",
                description:null
            },
            {
                ref:"attr:PortalLayout.canResizePortlets",
                description:null
            },
            {
                ref:"type:Overflow",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:DateRangeItem.fromDate":{
        ref:"attr:DateRangeItem.fromDate",
        flags:"IRW",
        description:"Initial value for the \"from\" date.",
        name:"fromDate",
        setter:[
            "setFromDate"
        ],
        seeAlso:[
        ],
        valueType:"Date or RelativeDateString or TimeUnit",
        defaultValue:"today",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:Scrollbar.endThumbOverlap":{
        ref:"attr:Scrollbar.endThumbOverlap",
        flags:"IRA",
        description:"Number of pixels the thumb is allowed to overlap the buttons at the end of the track.\n Default prevents doubling of 1px borders.  Set higher to allow media that shows curved\n joins between the track button and ScrollThumb.",
        name:"endThumbOverlap",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "thumb"
        ]
    },
    "method:ValuesManager.getItem":{
        ref:"method:ValuesManager.getItem",
        flags:"",
        description:" Retrieve a ${isc.DocUtils.linkForRef('class:FormItem')} from this ValuesManager.\n <P>\n Takes a field ${isc.DocUtils.linkForRef('attr:FormItem.name','name')} or ${isc.DocUtils.linkForRef('type:DataPath')}, and searches through the\n members of this valuesManager for an editor for that field. If found the appropriate\n formItem will be returned. If the \"retrieveAll\" parameter is true, this method will return \n all FormItems that are bound to the supplied name or dataPath (a dataPath can be bound\n to more than one FormItem, as long as those FormItems are on different forms); if \n \"retrieveAll\" is false or unset, and there is more than one binding for the dataPath, \n this method just returns the first one it finds.<p>\n Note that if a dataPath is passed in, it should be the full data path for the item, \n including any canvas level ${isc.DocUtils.linkForRef('attr:Canvas.dataPath','dataPath')} specified on the member \n form containing this form item.\n <br>Note: Unlike the <code>DynamicForm</code> class, this method will not return an \n item by index\n",
        name:"getItem",
        seeAlso:[
        ],
        params:[
            {
                description:"item fieldName or dataPath identifier",
                optional:false,
                name:"itemID",
                defaultValue:null,
                type:"fieldName | dataPath"
            },
            {
                description:"If true, return the list of all FormItems that                                      are bound to this name or dataPath on a member \n                                      form of this ValuesManager",
                optional:true,
                name:"retrieveAll",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"form item for editing/displaying the appropriate field, or null if   no formItem can be found for the field.",
            type:"formItem"
        },
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "attr:ListGrid.showRowNumbers":{
        ref:"attr:ListGrid.showRowNumbers",
        flags:"IRWA",
        description:"When set to true, shows an additional field at the beginning of the field-list\n (respecting RTL) that displays the current rowNum for each record.",
        name:"showRowNumbers",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowNumberField"
        ]
    },
    "attr:TabSet.scroller":{
        ref:"attr:TabSet.scroller",
        flags:"R",
        description:"A component containing back and forward buttons for scrolling through all of the tabs\n of the TabSet. The scroller is created automatically when needed and when <code>\"tabScroller\"</code>\n is specified in the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarControls')}.\n <p>\n By default, the scroller constructor is ${isc.DocUtils.linkForRef('class:StretchImgButton')}. Note that the scroller\n ${isc.DocUtils.linkForRef('attr:StretchImg.items','items')} are determined automatically, so any items set in\n scrollerProperties will be ignored.",
        name:"scroller",
        seeAlso:[
        ],
        valueType:"AutoChild StretchImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "attr:CubeGrid.facetLabelHoverVAlign":{
        ref:"attr:CubeGrid.facetLabelHoverVAlign",
        flags:"IRWA",
        description:"Allows the developer to override the vertical text alignment of hover tips shown for\n facetLabels.  If unspecified the hover canvas content alignment will be set by\n <code>this.hoverVAlign</code> if specified.",
        name:"facetLabelHoverVAlign",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverVAlign",
                description:null
            }
        ],
        valueType:"VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "method:Canvas.visibleAtPoint":{
        ref:"method:Canvas.visibleAtPoint",
        flags:"A",
        description:" Does this widget contain the specified global (x,y) coordinates, and have no other widgets\n also at the specified position, obscuring this one?  This is commonly used for (for example)\n drag and drop interactions.\n\n",
        name:"visibleAtPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"GLOBAL x-coordinate",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"number"
            },
            {
                description:"GLOBAL y-coordinate",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"number"
            },
            {
                description:"point lies within our viewport rather than                                              just our drawn area",
                optional:true,
                name:"withinViewport",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"If passed ignore widget(s), do not check whether                                          those widgets occludes this one.",
                optional:true,
                name:"ignoreWidgets",
                defaultValue:null,
                type:"canvas"
            },
            {
                description:"If passed, only check for siblings occluding the              component up as far as the specified parent widget.",
                optional:true,
                name:"upToParent",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"true if this object contains the specified point; false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "classAttr:LoginDialog.PASSWORD_TITLE":{
        ref:"classAttr:LoginDialog.PASSWORD_TITLE",
        flags:"IRW",
        description:"Default title for the ${isc.DocUtils.linkForRef('attr:LoginDialog.passwordItem','\"passwordItem\"')} field in the\n dialog displayed by ${isc.DocUtils.linkForRef('classMethod:isc.showLoginDialog')}.",
        name:"PASSWORD_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Password\"",
        type:"classAttr",
        definingClass:"class:LoginDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:PortalLayout.setPreventUnderflow":{
        ref:"method:PortalLayout.setPreventUnderflow",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.preventUnderflow','preventUnderflow')} and reflows the layout to implement it.\n",
        name:"setPreventUnderflow",
        seeAlso:[
        ],
        params:[
            {
                description:"Whether to stretch the last column to fill the PortalLayout's width.",
                optional:false,
                name:"preventUnderflow",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('portalColumnWidth')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:CubeGrid.canSelectValues":{
        ref:"attr:CubeGrid.canSelectValues",
        flags:"IRW",
        description:"Determines whether cell values in the body can be selected.",
        name:"canSelectValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "classAttr:GroupingMessages.byQuarterTitle":{
        ref:"classAttr:GroupingMessages.byQuarterTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a date field by quarter.",
        name:"byQuarterTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Quarter\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:Operators.betweenTitle":{
        ref:"classAttr:Operators.betweenTitle",
        flags:"IR",
        description:"Title for the \"between\" operator",
        name:"betweenTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"between (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "group:flatFields":{
        ref:"group:flatFields",
        refs:[
            "attr:DSRequest.useFlatFields",
            "attr:DSRequest.useFlatHeaderFields",
            "attr:WSRequest.useFlatFields"
        ],
        name:"flatFields",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DataSource.title":{
        ref:"attr:DataSource.title",
        flags:"IRW",
        description:"User-visible name for this DataSource.\n <P>\n For example, for the supplyItem DataSource, \"Supply Item\".\n <P>\n If is unset, <code>getAutoTitle()</code> method will be used with <code>dataSource.ID</code>.\n value in order to derive a default value for the title.\n <P>\n For example \"employee\" ID will be derived to \"Employee\", \"team_member\" ID will be \n derived to \"Team Member\".",
        name:"title",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"dataSource.ID",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "titles"
        ]
    },
    "attr:ListGrid.printBooleanPartialImage":{
        ref:"attr:ListGrid.printBooleanPartialImage",
        flags:"IRWA",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanPartialImage')} to use when ${isc.DocUtils.linkForRef('groupDef:printing','printing')}.",
        name:"printBooleanPartialImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.booleanPartialImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns",
            "printing"
        ]
    },
    "method:Operator.condition":{
        ref:"method:Operator.condition",
        flags:"",
        description:" Method which actually evaluates whether a given record meets a ${isc.DocUtils.linkForRef('object:Criterion')}.\n <P>\n For operators that act on ${isc.DocUtils.linkForRef('attr:Criterion.criteria','sub-criteria')}, call\n ${isc.DocUtils.linkForRef('method:DataSource.evaluateCriterion')} to evaluate sub-criteria.\n <P>\n Because criteria are sometimes applied to user-entered data that has not been validated, a\n robust <code>condition()</code> function should expect that data found in a ${isc.DocUtils.linkForRef('object:Record')}\n may be null, NaN, not the correct type (eg \"NA\" for a type:\"date\" field) or otherwise out of\n the expected range.\n <P>\n Note that an Operator has access both to the ${isc.DocUtils.linkForRef('object:Criterion')} object, allowing operators\n that act on more than one field or perform calculations, and access to the ${isc.DocUtils.linkForRef('object:Operator')}\n object itself, allowing a <code>condition()</code> function to be shared across a range of\n related operators with different ${isc.DocUtils.linkForRef('type:OperatorId')}s.\n \n",
        name:"condition",
        seeAlso:[
        ],
        params:[
            {
                description:"value from the field supplied as ${isc.DocUtils.linkForRef('attr:Criterion.fieldName')}, if   applicable",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"record being evaluated",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"fieldName supplied as ${isc.DocUtils.linkForRef('attr:Criterion.fieldName')}, if applicable",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"any"
            },
            {
                description:"criterion definition",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            },
            {
                description:"operator definition",
                optional:false,
                name:"operator",
                defaultValue:null,
                type:"Operator"
            }
        ],
        returns:{
            description:"whether the field passes this criteria",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:TreeGrid.customIconDropProperty":{
        ref:"attr:TreeGrid.customIconDropProperty",
        flags:"IRWA",
        description:"This property allows the developer to rename the \n ${isc.DocUtils.linkForRef('attr:TreeNode.showDropIcon','default node.showDropIcon')} property.",
        name:"customIconDropProperty",
        seeAlso:[
            {
                ref:"attr:TreeGrid.customIconProperty",
                description:null
            },
            {
                ref:"attr:TreeGrid.showCustomIconDrop",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"showDropIcon\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:SpinnerItem.step":{
        ref:"attr:SpinnerItem.step",
        flags:"IRW",
        description:"How much should the value be incremented / decremented when the user hits the icons\n to increase / decrease the value?\n <p>\n <smartclient>\n When overriding ${isc.DocUtils.linkForRef('method:SpinnerItem.getNextValue')} and/or ${isc.DocUtils.linkForRef('method:SpinnerItem.getPreviousValue')},\n the sign of the step value determines whether these methods\n </smartclient><smartgwt>\n When providing a {@link com.smartgwt.client.widgets.form.fields.SpinnerItem#setNextValueHandler(NextValueHandler)\n nextValueHandler} and/or {@link com.smartgwt.client.widgets.form.fields.SpinnerItem#setPreviousValueHandler(PreviousValueHandler)\n previousValueHandler}, the sign of the step value determines whether these handlers\n </smartgwt>\n are expected to induce monotonically increasing or decreasing functions.",
        name:"step",
        seeAlso:[
        ],
        valueType:"double",
        defaultValue:"1",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('spinnerItem')}"
        ],
        definingClass:"class:SpinnerItem"
    },
    "attr:ImgTab.skinImgDir":{
        ref:"attr:ImgTab.skinImgDir",
        flags:"IRW",
        description:"Base path for the images.   <B>Note</B> that when used within a TabSet, the\n ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')} is appended as an additional path segment, yielding\n \"images/Tab/top/\" et al.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/Tab/\"",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "class:Window":{
        methods:[
            "method:Window.setShowCloseButton",
            "method:Window.setShowMinimizeButton",
            "method:Window.setShowMaximizeButton",
            "method:Window.setShowHeaderIcon",
            "method:Window.setTitle",
            "method:Window.setStatus",
            "method:Window.setSrc",
            "method:Window.addItem",
            "method:Window.removeItem",
            "method:Window.addItems",
            "method:Window.removeItems",
            "method:Window.addMember",
            "method:Window.addMembers",
            "method:Window.setAutoSize",
            "method:Window.shouldDismissOnEscape",
            "method:Window.centerInPage",
            "method:Window.flash",
            "method:Window.minimize",
            "method:Window.restore",
            "method:Window.maximize",
            "method:Window.closeClick",
            "method:Window.close"
        ],
        exampleConfig:"Window.xml",
        ref:"class:Window",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:Window.canDragReposition",
            "attr:Window.keepInParentRect",
            "attr:Window.canDragResize",
            "attr:Window.useBackMask",
            "attr:Window.opacity",
            "attr:Window.isModal",
            "attr:Window.modalMask",
            "attr:Window.showModalMask",
            "attr:Window.modalMaskOpacity",
            "attr:Window.modalMaskStyle",
            "attr:Window.autoCenter",
            "attr:Window.dismissOnOutsideClick",
            "attr:Window.dismissOnEscape",
            "attr:Window.body",
            "attr:Window.showBody",
            "attr:Window.bodyStyle",
            "attr:Window.printBodyStyle",
            "attr:Window.bodyColor",
            "attr:Window.hiliteBodyColor",
            "attr:Window.items",
            "attr:Window.src",
            "attr:Window.contentsType",
            "attr:Window.bodyConstructor",
            "attr:Window.bodyDefaults",
            "attr:Window.contentLayout",
            "attr:Window.autoSize",
            "attr:Window.header",
            "attr:Window.showHeader",
            "attr:Window.headerBackground",
            "attr:Window.showHeaderBackground",
            "attr:Window.headerStyle",
            "attr:Window.printHeaderStyle",
            "attr:Window.headerSrc",
            "attr:Window.headerControls",
            "attr:Window.hiliteHeaderStyle",
            "attr:Window.hiliteHeaderSrc",
            "attr:Window.headerLabel",
            "attr:Window.showTitle",
            "attr:Window.title",
            "attr:Window.headerLabelDefaults",
            "attr:Window.headerIcon",
            "attr:Window.showHeaderIcon",
            "attr:Window.headerIconDefaults",
            "attr:Window.canFocusInHeaderButtons",
            "attr:Window.closeButton",
            "attr:Window.showCloseButton",
            "attr:Window.minimizeButton",
            "attr:Window.showMinimizeButton",
            "attr:Window.minimized",
            "attr:Window.defaultMinimizeHeight",
            "attr:Window.minimizeHeight",
            "attr:Window.animateMinimize",
            "attr:Window.minimizeTime",
            "attr:Window.minimizeAcceleration",
            "attr:Window.restoreButton",
            "attr:Window.maximized",
            "attr:Window.maximizeButton",
            "attr:Window.showMaximizeButton",
            "attr:Window.footer",
            "attr:Window.showFooter",
            "attr:Window.footerHeight",
            "attr:Window.footerControls",
            "attr:Window.statusBar",
            "attr:Window.showStatusBar",
            "attr:Window.resizer",
            "attr:Window.showResizer",
            "attr:Window.status"
        ],
        description:"A general purpose Window class for implementing dialogs, portlets, alerts, prompts, wizards\n and desktop-like windowing interfaces.\n <P>\n Windows can contain arbitrary SmartClient components, configured via the ${isc.DocUtils.linkForRef('attr:Window.items')}\n property.  Windows may be ${isc.DocUtils.linkForRef('attr:Window.isModal','modal')} or non-modal.\n <P>\n Windows provide a series of highly configurable and skinnable ${isc.DocUtils.linkForRef('type:AutoChild','autoChildren')}\n including a header, various header controls, footer, and corner resizer.\n <P>\n The more specialized ${isc.DocUtils.linkForRef('class:Dialog')} subclass of Window has additional functionality targetted\n at simple prompts and confirmations, such as buttons with default actions, and single-method\n ${isc.DocUtils.linkForRef('classMethod:isc.warn','shortcuts')} for common application dialogs.",
        name:"Window",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ColumnTree.anySelected":{
        ref:"method:ColumnTree.anySelected",
        flags:"",
        description:" Whether at least one item is selected in the supplied column (the first column if none is passed)\n\n",
        name:"anySelected",
        seeAlso:[
        ],
        params:[
            {
                description:"Column number",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true == at least one item is selected in the supplied column,  false == nothing at all is selected in the supplied column (note that there may be selections\n in other columns in this columnTree)",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "selection"
        ]
    },
    "attr:ListGrid.recordSummaryBaseStyle":{
        ref:"attr:ListGrid.recordSummaryBaseStyle",
        flags:"IRWA",
        description:"If showing any record summary fields (IE: fields of ${isc.DocUtils.linkForRef('type:ListGridFieldType','type:\"summary\"')}),\n this attribute specifies a custom base style to apply to cells in the summary field",
        name:"recordSummaryBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"recordSummaryCell\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classAttr:Validator.notAString":{
        ref:"classAttr:Validator.notAString",
        flags:"IRA",
        description:"Default error message to display when standard <code>isString</code> type validator\n  returns false.",
        name:"notAString",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be a string.\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FieldPicker.currentTitleTitle":{
        ref:"attr:FieldPicker.currentTitleTitle",
        flags:"IR",
        description:"The title displayed for the title property of the current fields",
        name:"currentTitleTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Field Title\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.colSpan":{
        ref:"attr:FormItem.colSpan",
        flags:"IRW",
        description:"Number of columns that this item spans.  \n <P>\n The <code>colSpan</code> setting does not include the title shown for items with\n ${isc.DocUtils.linkForRef('attr:FormItem.showTitle')}:true, so the effective <code>colSpan</code> is one higher than this\n setting for items that are showing a title and whose ${isc.DocUtils.linkForRef('type:TitleOrientation')} is either\n \"left\" or \"right\".",
        name:"colSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formLayout"
        ]
    },
    "method:TableView.formatRecord":{
        ref:"method:TableView.formatRecord",
        flags:"",
        description:" Formatter to apply to record display.\n\n",
        name:"formatRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record to format",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"formatted record contents",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:TableView"
    },
    "class:BlurbItem":{
        methods:[
        ],
        ref:"class:BlurbItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:BlurbItem.showTitle",
            "attr:BlurbItem.colSpan",
            "attr:BlurbItem.textBoxStyle",
            "attr:BlurbItem.canSelectText",
            "attr:BlurbItem.wrap",
            "attr:BlurbItem.clipValue"
        ],
        description:"FormItem intended for inserting blurbs of instructional HTML into DynamicForms.\n <p>\n Set the <code>defaultValue</code> of this item to the HTML you want to embed in the form.",
        name:"BlurbItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.header":{
        ref:"attr:ListGrid.header",
        flags:"R",
        description:"A Toolbar used to manager the headers shown for each column of the grid.",
        name:"header",
        seeAlso:[
        ],
        valueType:"AutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "attr:Flashlet.pluginsPage":{
        ref:"attr:Flashlet.pluginsPage",
        flags:"IR",
        description:"This attribute specifies the page the user should go to to get the plugin required to view\n  this flashlet.\n  <p>\n  The default pluginsPage is: \"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\"\n  <p>",
        name:"pluginsPage",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Flashlet"
    },
    "attr:RestDataSource.sendMetaData":{
        ref:"attr:RestDataSource.sendMetaData",
        flags:"IR",
        description:"Should operation meta data be included when assembling parameters to send \n to the server? If true, meta data parameters will be prefixed with the \n ${isc.DocUtils.linkForRef('attr:RestDataSource.metaDataPrefix')}.<br>\n Applies to operations where OperationBinding.dataProtocol is set to \n <code>\"getParams\"</code> or <code>\"postParams\"</code> only.",
        name:"sendMetaData",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "classMethod:XMLTools.selectNodes":{
        ref:"classMethod:XMLTools.selectNodes",
        flags:"",
        description:" Retrieve a set of nodes from an XML element or document based on an XPath expression.\n <P>\n If the target document is namespaced, namespace prefixes declared in the document element of\n the target document will be available, as well as the default namespace, if declared, under\n the prefix \"default\".\n <P>\n To declare your own namespace prefixes, provide a prefix to URI mapping as a simple JS\n Object, for example:\n <pre>\n   {\n      az : \"http://webservices.amazon.com/AWSECommerceService/2005-03-23\",\n      xsd : \"http://www.w3.org/2001/XMLSchema\"\n   }\n </pre>\n <P>\n <b>NOTE:</b> this API cannot be supported on the Safari web browser for versions earlier\n than 3.0.3.\n\n",
        name:"selectNodes",
        seeAlso:[
        ],
        params:[
            {
                description:"Native XMLElement,document, or xml string                                                        to select from",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"XMLElement or XMLDocument or String"
            },
            {
                description:"XPath expression to use to select nodes",
                optional:false,
                name:"expression",
                defaultValue:null,
                type:"XPath"
            },
            {
                description:"namespace mapping used by the expression",
                optional:true,
                name:"namespaces",
                defaultValue:null,
                type:"prefix -> URI mapping"
            }
        ],
        returns:{
            description:"list of nodes matching XPath",
            type:"Array"
        },
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlServerValidationErrors')}"
        ],
        definingClass:"class:XMLTools",
        groups:[
            "xmlTransform"
        ]
    },
    "method:ColorPicker.setGreen":{
        ref:"method:ColorPicker.setGreen",
        flags:"",
        description:" Sets the Green element of the selected color\n",
        name:"setGreen",
        seeAlso:[
            {
                ref:"method:ColorPicker.getGreen",
                description:null
            }
        ],
        params:[
            {
                description:"An integer between 0 and 255",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "group:jpaIntegration":{
        ref:"group:jpaIntegration",
        title:"Integration with JPA",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"To use JPA, set serverType=\"jpa\" in your .ds.xml file, then set\n ${isc.DocUtils.linkForRef('attr:DataSource.beanClassName','beanClassName')} to the fully qualified class name of the\n JPA entity.  For example:\n <pre>\n &lt;DataSource\n     ID=\"countryDS\"\n     serverType=\"jpa\"\n     beanClassName=\"com.smartgwt.sample.showcase.server.jpa.Country\"\n &gt;\n     &lt;fields&gt;\n &lt;!-- ... Fields definition ... --&gt;\n     &lt;/fields&gt;\n &lt;/DataSource&gt;\n </pre>\n ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema')} is supported for deriving DataSource fields from JPA\n entities automatically (except with JPA 1.0; see below).\n <p>\n Full support is provided for executing simple ${isc.DocUtils.linkForRef('type:Criteria')}, with ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}\n supported if you have Power Edition or above.  However, note that there are limitations with case\n sensitive search in MySQL since MySQL automatically uses the 'like' operator in a\n case-insensitive manner and JPA does not correct this.  See <a\n href=\"http://dev.mysql.com/doc/refman/5.5/en/case-sensitivity.html\">MySQL Reference Manual\n :: C.5.5.1 Case Sensitivity in String Searches</a> for more information.<p/>\n <p>\n If create a custom DataSource based on the built-in JPA functionality, subclass\n <code>com.isomorphic.jpa.JPA2DataSource</code>.\n <p>\n <h3>JPA configuration</h3>\n <p>\n JPA configuration should be specified in the <code>persistence.xml</code> file as usual, and placed\n in the <code>/WEB-INF/classes/META-INF</code> directory.  For JPA 2.0 make sure you correctly\n declare its usage in <code>persistence.xml</code>:<pre>\n &lt;persistence\n     version=\"2.0\"\n     xmlns=\"http://java.sun.com/xml/ns/persistence\"\n     xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n     xsi:schemaLocation=\"http://java.sun.com/xml/ns/persistence \n                         http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd\"\n &gt;\n ...\n &lt;/persistence&gt;</pre><br/>\n <P>\n JPADataSource supports operations with composite primary keys. Setting data source level property\n ${isc.DocUtils.linkForRef('attr:DataSource.idClassName','idClassName')} to fully qualified class name indicates,\n that entity uses composite primary key.\n <P>\n JPADataSource supports automatic handling of JPA relations that don't declare a concrete\n field to hold ID values - see ${isc.DocUtils.linkForRef('group:jpaHibernateRelations')}.\n <P>\n <h3>JPA 1.0 compatibility</h3>\n <P>\n To use JPA 1.0, set serverType=\"jpa1\" instead.  JPA 1.0 does not support\n ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema')}.  For JPA 1.0, the concrete implementation class (for subclassing to\n create a custom DataSource) is <code>com.isomorphic.jpa.JPADataSource</code>.\n <p>\n <h3>JPA transactions</h3>\n <p>\n JPA provides three mechanisms for transactions: for JEE applications JPA provides integration\n with JTA (Bean Managed Transactions and Container Managed Transactions); for JSE applications JPA has a native\n <code>EntityTransaction</code> implementation (Locally Managed Transactions). Spring framework is another popular\n way for declaring transactions in application.\n The transaction mechanism should be configured in the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n file by setting\n property <b><code>jpa.emfProvider</code></b> to the fully qualified class name of the provider\n (implementation of <code>com.isomorphic.jpa.EMFProviderInterface</code>). SmartClient comes\n with five implementations:<ul>\n <li><b><code>com.isomorphic.jpa.EMFProviderLMT</code></b> - for Locally Managed Transactions.\n      Every fetch or DML operation starts a new transaction and commits after successful\n      execution.<br/>\n      This implementation reads the <b><code>jpa.persistenceUnitName</code></b> property from\n      the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file.  The value of this property needs\n      to be set to\n      the name of the persistence unit configured in <code>persistence.xml</code> file. For example:<pre>\n jpa.persistenceUnitName: PERSISTENCE_UNIT_NAME\n      </pre></li>\n <li><b><code>com.isomorphic.jpa.EMFProviderBMT</code></b> - for Bean Managed Transactions.\n      Every fetch or DML operation acquires the transaction object from the container and starts it.<br/>\n      This implementation reads two properties from the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n      file:\n      <b><code>jpa.entityManager</code></b> and <b><code>jpa.entityManagerFactory</code></b>\n      containing appropriate resource name references configured in\n      <code>/WEB-INF/web.xml</code>. Configuration example:<pre>\n &lt;!-- EntityManager resource reference name declaration --&gt;\n &lt;persistence-context-ref&gt;\n    &lt;persistence-context-ref-name&gt;persistence/em&lt;/persistence-context-ref-name&gt;\n    &lt;persistence-unit-name&gt;PERSISTENCE_UNIT_NAME&lt;/persistence-unit-name&gt;\n &lt;/persistence-context-ref&gt;\n\n &lt;!-- EntityManagerFactory resource reference name declaration --&gt;\n  &lt;persistence-unit-ref&gt;\n      &lt;persistence-unit-ref-name&gt;persistence/emf&lt;/persistence-unit-ref-name&gt;\n      &lt;persistence-unit-name&gt;PERSISTENCE_UNIT_NAME&lt;/persistence-unit-name&gt;\n  &lt;/persistence-unit-ref&gt;\n\n #Property values for sample references:\n jpa.entityManager: persistence/em\n jpa.entityManagerFactory: persistence/emf\n      </pre></li>\n <li><b><code>com.isomorphic.jpa.EMFProviderCMT</code></b> - for Container Managed Transactions.\n      Every fetch or DML operation acquires the transaction object from the JEE container.\n      After successful method execution the container commits the transaction. In case of execution\n      failure <code>tx.setRollbackOnly()</code> is used to notify container to rollback the\n      transaction.<br/>\n      This implementation reads two properties from the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n      file:\n      <b><code>jpa.entityManager</code></b> and <b><code>jpa.entityManagerFactory</code></b>\n      containing appropriate resource name references configured in\n      <code>/META-INF/ejb-jar.xml</code>. Configuration example:<pre>\n &lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n &lt;ejb-jar\n      version = \"3.0\"\n      xmlns = \"http://java.sun.com/xml/ns/javaee\"\n      xmlns:xsi = \"http://www.w3.org/2001/XMLSchema-instance\"\n      xsi:schemaLocation = \"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd\"&gt;\n      &lt;enterprise-beans&gt;\n          &lt;session&gt;\n              &lt;ejb-name&gt;TestEJB&lt;/ejb-name&gt;\n              &lt;persistence-context-ref&gt;\n                  &lt;persistence-context-ref-name&gt;persistence/em&lt;/persistence-context-ref-name&gt;\n                  &lt;persistence-unit-name&gt;PERSISTENCE_UNIT_NAME&lt;/persistence-unit-name&gt;\n              &lt;/persistence-context-ref&gt;\n              &lt;persistence-unit-ref&gt;\n                  &lt;persistence-unit-ref-name&gt;persistence/emf&lt;/persistence-unit-ref-name&gt;\n                  &lt;persistence-unit-name&gt;PERSISTENCE_UNIT_NAME&lt;/persistence-unit-name&gt;\n              &lt;/persistence-unit-ref&gt;\n         &lt;/session&gt;\n     &lt;/enterprise-beans&gt;\n &lt;/ejb-jar&gt;\n\n #Property values for sample references:\n jpa.entityManager: persistence/em\n jpa.entityManagerFactory: persistence/emf\n      </pre></li>\n <li><b><code>com.isomorphic.jpa.EMFProviderNoTransactions</code></b> - transactions are\n      not used.<br/>\n      From the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file this implementation reads the\n      <b><code>jpa.persistenceUnitName</code></b> property which must containt the name of persistence unit\n      configured in <code>persistence.xml</code> file. For example:<pre>\n jpa.persistenceUnitName: PERSISTENCE_UNIT_NAME\n      </pre></li>\n <li><b><code>com.isomorphic.jpa.EMFProviderSpring</code></b> - for Spring Framework managed Transactions.\n      Every fetch or DML operation acquires the transaction object from the Spring Application Context.<br/>\n      This implementation reads two properties from the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n      file:\n      <b><code>jpa.entityManagerFactory</code></b> and <b><code>jpa.transaction</code></b>\n      containing appropriate bean names configured in Spring Application Context.\n      You have to declare additional bean in your Spring Application Context to allow SmartClient\n      to acquire reference to context.\n      Configuration example:<pre>\n &lt;!-- SpringApplicationContextProvider bean definition required to get access to application context. --&gt;\n &lt;bean id=\"springApplicationContextProvider\" class=\"com.isomorphic.spring.SpringApplicationContextProvider\" /&gt;\n\n &lt;!-- Connection to data base --&gt;\n &lt;bean id=\"dataSource\"\n      class=\"org.springframework.jdbc.datasource.DriverManagerDataSource\"\n      p:driverClassName=\"DRIVER_CLASS\"\n      p:url=\"CONNECTION_URL\"\n      p:username=\"DB_USER_NAME\"\n      p:password=\"DB_USER_PASSWORD\" /&gt;\n\n &lt;!-- Reference to JPA EntityManagerFactory --&gt;\n &lt;bean id=\"entityManagerFactory\" class=\"org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean\"&gt;\n     &lt;property name=\"dataSource\" ref=\"dataSource\" /&gt;\n     &lt;property name=\"jpaVendorAdapter\"&gt;\n        &lt;bean class=\"org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter\"&gt;\n            &lt;property name=\"database\" value=\"DB_TYPE\" /&gt;\n        &lt;/bean&gt;\n     &lt;/property&gt;\n     &lt;property name=\"persistenceUnitName\" value=\"PERSISTENCE_UNIT_NAME\" /&gt;\n &lt;/bean&gt;\n\n &lt;!-- Reference to JpaTransactionManager --&gt;\n &lt;bean id=\"transactionManager\" class=\"org.springframework.orm.jpa.JpaTransactionManager\"&gt;\n     &lt;property name=\"entityManagerFactory\" ref=\"entityManagerFactory\" /&gt;\n &lt;/bean&gt;\n\n #Property values for sample bean names:\n jpa.entityManagerFactory: entityManagerFactory\n jpa.transaction: transactionManager\n      </pre></li>\n </ul>\n You can set <b><code>jpa.emfProvider</code></b> to your own implementation of\n <code>com.isomorphic.jpa.EMFProviderInterface</code> if you have specific requirements for\n transaction handling. <code>EMF</code> will instantiate provided implementation on initialization (static) and\n will use same instance every time. By using own implementation you can have complete control over creating/using\n <code>EntityManagerFactory</code> and <code>EntityManager</code> instances.<p/>\n <b>Additional configurations:</b><p/>\n In case you have several persistence units defined in your <code>persistence.xml</code> you can have additional\n configurations in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file. Additional configurations\n (prefixed with <b><code>jpa.</code></b>) should have name, <b><code>emfProvider</code></b> property and other\n properties required by specified EMF provider implementation.\n For example:<pre>\n jpa.configName.emfProvider: com.isomorphic.jpa.EMFProviderLMT\n jpa.configName.persistenceUnitName: ANOTHER_PERSISTENCE_UNIT_NAME</pre>\n To use additional JPA configuration you have to set <b><code>jpaConfig</code></b> property in data source\n definition:<pre>\n &lt;DataSource\n     ID=\"countryDS\"\n     serverType=\"jpa\"\n     beanClassName=\"com.smartgwt.sample.showcase.server.jpa.Country\"\n     jpaConfig=\"configName\"\n &gt;</pre>\n <b>Transaction management:</b>\n <p/><ul>\n <li>Operating under ${isc.DocUtils.linkForRef('class:RPCManager')} (<code>${isc.DocUtils.linkForRef('class:DSRequest')}</code> has reference to\n   <code>${isc.DocUtils.linkForRef('class:RPCManager')}</code>):<ul>\n      <li>If participating in automatic transactions:<ul>\n          <li>retrieves existing transaction from <code>${isc.DocUtils.linkForRef('class:RPCManager')}</code> (if available);</li>\n          <li>starts new transaction (if not found in <code>${isc.DocUtils.linkForRef('class:RPCManager')}</code>);</li></ul></li>\n      <li>If one transaction per operation is used - starts new transaction;</li>\n      <li>Registers itself to <code>DSRequest.registerCallback()</code> for <code>onSuccess()</code>/\n      <code>onFailure()</code> execution to commit/roll back transaction;</li>\n      <li>Sets <code>DSRequest.setFreeOnExecute()</code> to <code>false</code> to postpone releasing\n          of <code>EntityManager</code> avoiding lazy loading exceptions when creating JS response and\n          traversing through persistent object tree;</li>\n      <li>Registers itself to <code>RPCManager.registerFreeResourcesHandler()</code> for <code>freeResources()</code>\n      execution to release <code>EntityManager</code>.</li></ul><br/>\n If you want to use same <code>EntityManager</code> and transaction in your custom data source implementation you can\n acquire it by <pre>JPAConnectionHolder holder = DataSource.getTransactionObject(req, EMF.TRANSACTION_ATTR);</pre>\n <code>JPAConnectionHolder</code> instance contains references to entity manager and transaction object\n used by <code>JPADataSource</code>. You should never commit/rollback automatic transaction.\n Overall commit/rollback will be issued by <code>RPCManager</code> and will be handled by <code>JPADataSource</code>\n object which started transaction.\n </li>\n <li>Operating without ${isc.DocUtils.linkForRef('class:RPCManager')}:<ul>\n      <li>starts new transaction;</li>\n      <li>commits/rolls back transaction and releases <code>EntityManager</code> if\n          <code>DSRequest.setFreeOnExecute()</code> is set to <code>true</code> (defalut);</li>\n      <li>relies on calling code to call <code>onSuccess()</code>/<code>onFailure()</code> to commit/roll back\n          transaction and to call <code>freeResources()</code> to release <code>EntityManager</code>.<br/>\n          Example code for data source operation execution with manual transaction handling:\n          <pre>\n              DSRequest req = new DSRequest(\"myDS\", \"fetch\");\n              req.setFreeOnExecute(false);\n              DSResponse resp = req.execute();\n              List dataList = resp.getDataList();\n              //... traverse through persistent object tree\n              // Commit current transaction.\n              ((JPADataSource) r.getDataSource()).onSuccess();\n              // Release entity manager.\n              ((JPADataSource) r.getDataSource()).freeResources(req);\n          </pre></li></ul>\n </li></ul>\n <p>\n <h3>Manual JPA Integration</h3>\n <p>\n In some cases you may not be able to immediately use the built-in JPADataSource - in\n this case take a look at ${isc.DocUtils.linkForRef('group:manualJpaHibernate','manual Hibernate integration')}.",
        name:"jpaIntegration",
        seeAlso:[
            {
                ref:"group:sqlConnectionPooling",
                description:null
            }
        ],
        type:"group"
    },
    "attr:FormItemEventInfo.overTitle":{
        ref:"attr:FormItemEventInfo.overTitle",
        flags:"R",
        description:"True if the event occurred over the items title.",
        name:"overTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemEventInfo"
    },
    "attr:ComboBoxItem.formatOnBlur":{
        ref:"attr:ComboBoxItem.formatOnBlur",
        flags:"IRW",
        description:"With <code>formatOnBlur</code> enabled, this item will format its value\n according to any specified static ${isc.DocUtils.linkForRef('method:FormItem.formatValue','static formatter')}\n as long as the item does not have focus. Once the user puts focus into the item\n the formatter will be removed. This provides a simply way for developers to\n show a nicely formatted display value in a freeform text field, without the need\n for an explicit ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} \n and ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} pair.\n <P>\n Note that this attribute is not compatible with ${isc.DocUtils.linkForRef('attr:ComboBoxItem.completeOnTab')}",
        name:"formatOnBlur",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:ImgSectionHeader.iconAlign":{
        ref:"attr:ImgSectionHeader.iconAlign",
        flags:"IR",
        description:"If this button is showing an icon should it be right or left aligned?",
        name:"iconAlign",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ListGrid.headerButtonDefaults":{
        ref:"attr:ListGrid.headerButtonDefaults",
        flags:"IRA",
        description:"Defaults to apply to all header buttons. To modify this object,\n use ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults','ListGrid.changeDefaults()')}\n rather than replacing with an entirely new object.",
        name:"headerButtonDefaults",
        seeAlso:[
        ],
        valueType:"Button Properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "attr:HeaderSpan.headerBaseStyle":{
        ref:"attr:HeaderSpan.headerBaseStyle",
        flags:"IRW",
        description:"Custom base style to apply to the header button created for this span instead\n of ${isc.DocUtils.linkForRef('attr:ListGrid.headerBaseStyle')}.\n <P>\n Note that depending on the header button constructor, you may have to specify\n ${isc.DocUtils.linkForRef('attr:HeaderSpan.headerTitleStyle')} as well.",
        name:"headerBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSClass",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.menuConstructor":{
        ref:"attr:Canvas.menuConstructor",
        flags:"IR",
        description:"Default class used to construct menus created by this component, including context menus.",
        name:"menuConstructor",
        seeAlso:[
            {
                ref:"method:Canvas.showContextMenu",
                description:null
            }
        ],
        valueType:"SCClassName",
        defaultValue:"\"Menu\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "cues"
        ]
    },
    "attr:ImgProperties.height":{
        ref:"attr:ImgProperties.height",
        flags:"IRW",
        description:"Specifies the height of the image.",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ImgProperties"
    },
    "attr:FormItem.pickerIconDefaults":{
        ref:"attr:FormItem.pickerIconDefaults",
        flags:"IRWA",
        description:"Block of default properties to apply to the pickerIcon for this widget.\n Intended for class-level customization: To modify this value we recommend using\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} rather than directly assigning a value to the property.",
        name:"pickerIconDefaults",
        seeAlso:[
        ],
        valueType:"FormItemIcon Properties",
        defaultValue:null,
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:DetailViewer.styleName":{
        ref:"attr:DetailViewer.styleName",
        flags:"IRW",
        description:"CSS style for the component as a whole.",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"detailViewer\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "attr:EditContext.extraPalettes":{
        ref:"attr:EditContext.extraPalettes",
        flags:"IRW",
        description:"Additional ${isc.DocUtils.linkForRef('interface:Palette','Palettes')} to consult for metadata when\n deserializing ${isc.DocUtils.linkForRef('object:EditNode','Edit Nodes')}. Note that the\n ${isc.DocUtils.linkForRef('attr:EditContext.defaultPalette','defaultPalette')} is always consulted and need not be\n provided again here.",
        name:"extraPalettes",
        seeAlso:[
        ],
        valueType:"Array of Palette",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:EditContext"
    },
    "method:ImgSectionHeader.setIcon":{
        ref:"method:ImgSectionHeader.setIcon",
        flags:"",
        description:" Change the icon being shown for the header.\n",
        name:"setIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"URL of new icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:ImgSectionHeader"
    },
    "attr:ColorItem.pickerIconWidth":{
        ref:"attr:ColorItem.pickerIconWidth",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ColorItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n size of the picker icon. If unset, the picker icon will be sized as a square to fit in the\n available height for the icon.\n <p>\n It is not recommended to change the pickerIconWidth from the default value if ${isc.DocUtils.linkForRef('group:skinning','spriting')}\n is enabled because the image sprites are set up assuming specific, fixed dimensions of the picker\n icon. If the pickerIconWidth must be changed, then the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')}\n should be changed to a custom CSS style name.",
        name:"pickerIconWidth",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"18",
        type:"attr",
        definingClass:"class:ColorItem",
        groups:[
            "pickerIcon"
        ]
    },
    "method:ListGrid.getFilterEditorType":{
        ref:"method:ListGrid.getFilterEditorType",
        flags:"A",
        description:" If we're showing the filter (query-by-example) row for this ListGrid, this method is\n used to determine the type of form item to display in the filter edit row for this field.\n Default implementation will return the field.filterEditorType if specified, or\n the result of ${isc.DocUtils.linkForRef('method:DynamicForm.getEditorType','form.getEditorType()')} otherwise.\n\n",
        name:"getFilterEditorType",
        seeAlso:[
        ],
        params:[
            {
                description:"field definition to get the editorType for",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"the editorType to use in the filterEditor for the passed field",
            type:"String"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:DSRequest.dataSource":{
        ref:"attr:DSRequest.dataSource",
        flags:"IR",
        description:"DataSource this DSRequest will act on.\n <P>\n This property is generally automatically populated, for example when calling\n ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} the dataSource property is set to the target\n DataSource.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:Canvas.getPrintHTML":{
        ref:"method:Canvas.getPrintHTML",
        flags:"A",
        description:" Retrieves printable HTML for this component and all printable subcomponents.\n <P>\n By default any Canvas with children will simply collect the printable HTML of its children\n by calling getPrintHTML() on each child that is considered ${isc.DocUtils.linkForRef('attr:Canvas.shouldPrint','printable')}.\n If a callback is provided, then null is always returned and the callback is fired asynchronously.\n <P>\n If overriding this method for a custom component, you should <b>either</b> return a String\n of printable HTML directly <b>or</b> return null and fire the provided callback using\n ${isc.DocUtils.linkForRef('method:Class.fireCallback')}.\n <P>\n To return an empty print representation, return an empty string (\"\") rather than null.\n <P>\n The <code>printProperties</code> argument, if passed, must be passed to any subcomponents on\n which <code>getPrintHTML()</code> is called.\n <P>\n <B>NOTE:</B> Expecting a direct return value from the default implementation is deprecated usage.\n This is because small changes to an application (such as adding a few more data points to a chart\n or adding another button) or using certain browsers can make it necessary to generate the HTML\n asynchronously. Thus, application code should not rely on the return value and always pass\n a callback.\n\n",
        name:"getPrintHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"properties to configure printing behavior - may be null.",
                optional:true,
                name:"printProperties",
                defaultValue:null,
                type:"PrintProperties"
            },
            {
                description:"optional callback. This is required to handle cases where HTML                  generation is asynchronous - if a method generates HTML asynchronously, it should return\n                  null, and fire the specified callback on completion of HTML generation. The\n                  first parameter <code>HTML</code> should contain the generated print HTML.\n                  The callback is only called if null is returned. Furthermore, the default\n                  getPrintHTML() implementation always returns null and fires the callback\n                  when a callback is provided.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        returns:{
            description:"null if the print HTML is being generated asynchronously and/or a callback is provided; otherwise, the direct print HTML for this component (but note that returning\n direct print HTML is a deprecated feature).",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "printing"
        ]
    },
    "class:DecisionGateway":{
        methods:[
        ],
        ref:"class:DecisionGateway",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:DecisionGateway.criteriaMap",
            "attr:DecisionGateway.defaultElement"
        ],
        description:"Chooses a next element in a ${isc.DocUtils.linkForRef('class:Process')} by evaluating a series of criteria against the\n ${isc.DocUtils.linkForRef('attr:Process.state')} and choosing the element associated with the criteria that matched, or\n a ${isc.DocUtils.linkForRef('attr:DecisionGateway.defaultElement','defaultElement')} if none of the criteria match.",
        name:"DecisionGateway",
        seeAlso:[
        ],
        type:"class"
    },
    "method:List.findIndex":{
        ref:"method:List.findIndex",
        flags:"",
        description:" Find the index of the first Object where property == value in the object.\n <P>\n Pass an Object instead to match multiple properties.\n <P>\n Note: for string values, matches are case sensitive.\n\n",
        name:"findIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access",
            "find"
        ]
    },
    "attr:IconButton.baseStyle":{
        ref:"attr:IconButton.baseStyle",
        flags:"IRW",
        description:"Default CSS class.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"\"iconButton\"",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "method:EditContext.removeAll":{
        ref:"method:EditContext.removeAll",
        flags:"",
        description:" Removes all ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} from the EditContext, but does not destroy \n the ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObjects')}.\n",
        name:"removeAll",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:Canvas.dynamicContentsVars":{
        ref:"attr:Canvas.dynamicContentsVars",
        flags:"IRWA",
        description:"An optional map of name:value parameters that will be available within the scope of the\n dynamicContents evaluation.  For example - if you have e.g:\n <pre>\n Canvas.create({\n   dynamicContents: true,\n   dynamicContentsVars: {\n       name: \"Bob\"\n   },\n   contents: \"hello &#36;{name}\"\n });\n </pre>\n The above will create a canvas with contents <code>hello Bob</code>.  You can add, remove, and\n change values in the dynamicContentsVars object literal, just call\n <code>markForRedraw()</code> on the canvas to have the dynamicContents template re-evaluated.\n <p>\n Note that <code>this</code> is always available inside a dynamic contents string and points to\n the canvas instance containing the dynamic contents.\n <p>\n Used only if ${isc.DocUtils.linkForRef('attr:Canvas.dynamicContents')} : true has been set.",
        name:"dynamicContentsVars",
        seeAlso:[
            {
                ref:"attr:Canvas.dynamicContents",
                description:null
            }
        ],
        valueType:"ValueMap",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "method:CubeGrid.facetLabelHover":{
        ref:"method:CubeGrid.facetLabelHover",
        flags:"",
        description:" StringMethod handler fired from hover over a facet label\n\n",
        name:"facetLabelHover",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of the appropriate facet",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events"
        ]
    },
    "group:autoFitData":{
        ref:"group:autoFitData",
        refs:[
            "method:ListGrid.setAutoFitData",
            "method:ListGrid.setAutoFitExtraRecords",
            "method:ListGrid.setAutoFitMaxRecords",
            "method:ListGrid.setAutoFitMaxHeight",
            "method:ListGrid.setAutoFitMaxColumns",
            "method:ListGrid.setAutoFitMaxWidth",
            "attr:ListGrid.autoFitData",
            "attr:ListGrid.autoFitMaxHeight",
            "attr:ListGrid.autoFitMaxRecords",
            "attr:ListGrid.autoFitExtraRecords",
            "attr:ListGrid.autoFitMaxWidth",
            "attr:ListGrid.autoFitMaxColumns",
            "type:Autofit"
        ],
        name:"autoFitData",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:EdgedCanvas.addEdgeStyleSuffix":{
        ref:"attr:EdgedCanvas.addEdgeStyleSuffix",
        flags:"IRW",
        description:"If specified, the ${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeStyleName')} will be treated as a base style name and\n appended with following suffixes to support separate styling per cell:\n <P>\n <code>_TL</code> (top left cell)<br>\n <code>_T</code> (top center cell)<br>\n <code>_TR</code> (top right cell)<br>\n <code>_L</code> (middle left cell)<br>\n <code>_C</code> (center cell)<br>\n <code>_R</code> (middle right cell)<br>\n <code>_BL</code> (bottom left cell)<br>\n <code>_B</code> (bottom center cell)<br>\n <code>_BR</code> (bottom right cell)",
        name:"addEdgeStyleSuffix",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdgeStyles",
            "imageEdges"
        ]
    },
    "attr:ComboBoxItem.showOptionsFromDataSource":{
        ref:"attr:ComboBoxItem.showOptionsFromDataSource",
        flags:"IRWA",
        description:"If this item is part of a databound form, and has a specified <code>valueMap</code>,\n by default we show the valueMap options in the pickList for the item.\n Setting this property to true will ensure that the options displayed in our pickList\n are derived from the form's <code>dataSource</code>.",
        name:"showOptionsFromDataSource",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "databinding"
        ]
    },
    "attr:ListGrid.expansionCanEdit":{
        ref:"attr:ListGrid.expansionCanEdit",
        flags:"IRWA",
        description:"For ${isc.DocUtils.linkForRef('type:ExpansionMode','expansionModes')} that show another grid or tree, is that\n component editable?\n <P>The default value for this property is <code>false</code>.",
        name:"expansionCanEdit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:FacetChart.setZoomStartValue":{
        ref:"method:FacetChart.setZoomStartValue",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FacetChart.zoomStartValue')}.\n <p>\n Note that the ${isc.DocUtils.linkForRef('attr:FacetChart.zoomStartValue')} and ${isc.DocUtils.linkForRef('attr:FacetChart.zoomEndValue')} may be set simultaneously using\n ${isc.DocUtils.linkForRef('method:FacetChart.zoomTo')}.\n",
        name:"setZoomStartValue",
        seeAlso:[
        ],
        params:[
            {
                description:"New start value for the data range shown in the main chart",
                optional:false,
                name:"zoomStartValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "classMethod:AutoTest.isGridDone":{
        ref:"classMethod:AutoTest.isGridDone",
        flags:"",
        description:" Given a DOM element corresponding to or contained in a ListGrid, returns whether the \n associated ListGrid is in a consistent state with no pending operations.  Returns null if\n the locator is not valid or isn't associated with an element inside a valid ListGrid.\n Otherwise, returns true or false according as the conditions below are all satisfied:\n <ul>\n     <li> page has finished loading\n     <li> no pending filter editor operations\n     <li> no unsaved edits to the grid records\n     <li> no outstanding fetch/filter operations are present for the ResultSet\n     <li> no outstanding sort operations are present that will update the ListGrid\n </ul>\n",
        name:"isGridDone",
        seeAlso:[
        ],
        params:[
            {
                description:"DOM element to test or SmartClient locator",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"DOMElement | AutoTestLocator"
            }
        ],
        returns:{
            description:"whether element is 'done' as described above",
            type:"boolean or null"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "attr:DataSourceField.fkTableCode":{
        ref:"attr:DataSourceField.fkTableCode",
        flags:"R",
        description:"<b>Only applicable to the built-in SQL DataSource</b>\n <p>\n This read-only attribute is a secure and unique hashed version of the name of the table \n underlying a dataSource that this dataSourceField is a \n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreign key')} to.  It is used automatically by client-side \n framework code to link dataSources together by foreign key, by matching \n <code>fkTableCode</code>s with ${isc.DocUtils.linkForRef('attr:DataSource.tableCode')}s.  This is necessary if we \n automatically discovered a foreign key relationship by inspecting the database schema, as \n a result of a DataSource specifying ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema','autoDeriveSchema')}:\n true.  We use a secure hash rather than the table name itself for security reasons - \n sending the actual table name to the client would be considered an information leakage \n that could encourage attempts at injection attacks.",
        name:"fkTableCode",
        seeAlso:[
            {
                ref:"attr:DataSource.tableCode",
                description:null
            },
            {
                ref:"attr:DataSourceField.fkColumnCode",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:ListGrid.startEditing":{
        ref:"method:ListGrid.startEditing",
        flags:"A",
        description:" Start inline editing at the provided coordinates.\n <p>\n Invoked when a cell is editable and the <code>editEvent</code> occurs on that cell.  Can\n also be invoked explicitly.\n <P>\n If this method is called while editing is already in progress, the value from the current\n editCell will either be stored locally as a temporary edit value, or saved via 'saveEdits()'\n depending on <code>this.saveByCell</code>, and the position of the new edit cell.<br>\n Will update the UI to show the editor for the new cell, and put focus in it unless\n explicitly suppressed by the optional <code>suppressFocus</code> parameter.\n\n",
        name:"startEditing",
        seeAlso:[
            {
                ref:"method:ListGrid.canEditCell",
                description:null
            },
            {
                ref:"attr:ListGrid.editEvent",
                description:null
            }
        ],
        params:[
            {
                description:"Row number of the cell to edit.  Defaults to first                                  editable row",
                optional:true,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Column number of the cell to edit.  Defaults to first                                  editable column",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"If passed this parameter suppresses the default                                  behavior of focusing in the edit form item when\n                                  the editor is shown.",
                optional:true,
                name:"suppressFocus",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"true if we are editing the cell, false if not editing for some reason",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:DataSource.cacheAllOperationId":{
        ref:"attr:DataSource.cacheAllOperationId",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} to use for fetching data in case ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData','cacheAllData')} is\n true.  By default a standard fetch operation is used (with no <code>operationId</code>\n specified).",
        name:"cacheAllOperationId",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:MultiSortPanel.levelDownButton":{
        ref:"attr:MultiSortPanel.levelDownButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n sort-levels down in the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.levelDownButtonProperties</code> and \n <code>multiSortPanel.levelDownButtonDefaults</code>.",
        name:"levelDownButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "attr:FacetChart.legendMargin":{
        ref:"attr:FacetChart.legendMargin",
        flags:"IR",
        description:"Space between the legend and the chart rect or axis labels (whatever the legend is\n adjacent to.",
        name:"legendMargin",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:TileLayout.setTileSize":{
        ref:"method:TileLayout.setTileSize",
        flags:"",
        description:" Sets the height and width of tiles.\n",
        name:"setTileSize",
        seeAlso:[
        ],
        params:[
            {
                description:"size",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "tileLayout"
        ]
    },
    "method:DynamicForm.formSubmitFailed":{
        ref:"method:DynamicForm.formSubmitFailed",
        flags:"A",
        description:" Method called when an attempt to ${isc.DocUtils.linkForRef('method:DynamicForm.submitForm','natively submit')} a\n form is unable to submit to the server. Default behavior is to display the\n ${isc.DocUtils.linkForRef('attr:DynamicForm.formSubmitFailedWarning')} in a warning dialog.\n The most common cause for this failure is that the user\n has typed an invalid file-path into an upload type field.\n",
        name:"formSubmitFailed",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "i18nMessages"
        ]
    },
    "method:StatefulCanvas.setIgnoreRTL":{
        ref:"method:StatefulCanvas.setIgnoreRTL",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:StatefulCanvas.ignoreRTL','ignoreRTL')}.\n",
        name:"setIgnoreRTL",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for ignoreRTL.",
                optional:false,
                name:"ignoreRTL",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas"
    },
    "group:serverScript":{
        ref:"group:serverScript",
        title:"Server Scripting",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"SmartClient allows you to embed \"scriptlets\" directly in your .ds.xml file to take care of\n simple business logic without having to create a separate file or class to hold the logic.\n <P>\n These scriptlets can be written in any language supported by the Java \"JSR 223\" standard,\n including Java itself, as well as languages such as Groovy, JavaScript, Velocity, Python, Ruby,\n Scala and Clojure.\n <P>\n Scriptlets are automatically recompiled when you change the .ds.xml file - just reload the page\n and the SmartClient Server Framework automatically notices the modified DataSource file and\n uses the new scriptlets.\n <P>\n <b>Declaring Scriptlet Language</b>\n <P>\n You can set the default system-wide language in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n by setting\n <code>script.defaultLanguage</code>:\n <pre>\n     script.defaultLangauge: \"groovy\"\n </pre>\n Alternatively, anywhere a scriptlet is allowed, you can use the \"language\" attribute to declare\n the language.  For example:\n <pre>\n    &lt;operationBindings&gt;\n       &lt;operationBinding operationType=\"add\"&gt;\n           &lt;script language=\"groovy\"&gt;\n              ... Groovy code ...\n           &lt;/script&gt;\n       &lt;/operationBinding&gt;\n    &lt;/operationBindings&gt;\n </pre>\n <h3>Error Reporting</h3>\n <P>\n If your scriptlet crashes, this is reported in the server-side log along with the line number\n of the crash.  \n <pre>\n      &lt;!-- crash will be reported at line 1 --&gt;\n      &lt;script&gt;crash()&lt;/script&gt;\n\n      &lt;!-- crash will be reported at line 2 --&gt;\n      &lt;script&gt;\n          crash()\n      &lt;/script&gt;\n </pre>\n It's common practice to use a CDATA tag so that XML-special characters such as &lt; do not have to be\n quoted as &amp;lt;.  When doing this, be aware that the line numbering will still start <b>from the\n &lt;script&gt; tag</b>, not the CDATA tag.  For example:\n <pre>\n      &lt;!-- crash will be reported at line 3 --&gt;\n      &lt;script&gt;\n          &lt;![CDATA[ \n             5 < crash()\n          ]]&gt;\n      &lt;/script&gt;\n\n      &lt;!-- crash will be reported at line 2 --&gt;\n      &lt;script&gt;&lt;![CDATA[ \n           5 < crash()\n      ]]&gt;&lt;/script&gt;\n </pre>\n <P>\n <h3>Java Imports</h3>\n <P>\n You can import Java libraries by placing a &lt;scriptImport&gt; tag immediately before a\n &lt;script&gt; or &lt;serverCondition&gt; tag, like so:\n <pre>\n     &lt;scriptImport&gt;javax.servlet.http.*&lt;/scriptImport&gt;\n     &lt;script language=\"groovy\"&gt;\n         String sessionId = session.getId();\n         ...\n </pre>\n There is also a system-wide set of default imports:\n <pre>\n java.util.*\n javax.servlet.http.*\n com.isomorphic.base.Config\n com.isomorphic.util.*\n com.isomorphic.datasource.*\n com.isomorphic.rpc.RPCManager\n </pre>\n You can override these in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} via the property\n <code>script.defaultImports</code>, which takes a comma- or space-separated list of packages or\n classes (like the above).\n <P>\n Dynamic languages such as Groovy or JavaScript allow you to place an import inside the script\n itself as well.\n <P>\n <h3>Available Languages</h3>\n <P>\n The Oracle JDK and JRE include support for JavaScript scripting via the Rhino engine.\n Alternatively, you may wish to consider <a href='http://code.google.com/p/jav8/' target='_blank'>jav8</a>,\n which is a Javascript JSR223 scripting implementation based on the V8 engine, giving \n Javascript execution speeds comparable to Google Chrome.\n <p>\n For convenience, SmartClient also bundles a .jar providing Groovy support from \n <a href='http://www.groovy-lang.org/' target='_blank'>http://www.groovy-lang.org/</a>, which uses the Apache license.  We also include\n a .jar file providing Java language support (however see below for limitations).  This\n implementation is based on the BSD-licensed\n <a href='http://java.net/projects/scripting/' target='_blank'>Java.net</a> implementation, but enhanced by\n Isomorphic to work around container-specific classloader issues that arise when running Java\n language scripting inside a servlet container and trying to reference common objects of the\n servlet API itself.  See ${isc.DocUtils.linkForRef('group:sunNotice')} for licensing information.\n <P>\n There are <b>many</b> other languages available, sometimes with multiple implementations, and\n they are best found via web search.\n <P>\n <h3>Standard Headers &amp; Footers</h3>\n <P>\n You can define system-wide headers and footers for each language - code that is added before\n and after scriptlets wherever it is defined, and can set up variables or functions you use\n often.  To define the location of header and footer files, set\n <code>script.<i>languageName</i>.header</code> and <code>script.<i>languageName</i>.footer</code>\n in server.properties.  For example, these settings:\n <pre>\n   script.groovy.header: $webRoot/shared/header.groovy\n   script.groovy.footer: $webRoot/shared/footer.groovy\n </pre>\n would add the Groovy fragments found in header.groovy and footer.groovy to beginning and end of every\n scriptlet that declares language=\"groovy\" (or declares no language if the default engine is\n \"groovy\").\n <P>\n <b>NOTE</b>: most scripting engines are available under several language names.  For example,\n the Rhino JavaScript engine registers both \"javascript\" and \"ecmascript\" as well as a few\n variations on letter case.  When using the \"language\" attribute on script tags, the exact value\n supplied is used to look up header and footer files via server.properties.  This means a\n language setting of \"javascript\" will find different header and footer files from a language of\n \"JavaScript\" even though both will execute via Rhino.\n <P>\n <h3>Java scriptlets and the default script wrapper</h3>\n <P>\n Although it's not usually considered a \"scripting language\", using the Java language for\n scriplets has the advantage that developers do not need to understand two languages in order to\n modify server-side code.  However, using Java for scripting presents special challenges,\n because unlike true scripting languages, in Java a piece of code cannot be compiled unless it\n forms a valid class definition.  \n <P>\n For this reason, by default every Java scriplet has an implicit wrapper added around it which\n makes it into a class definition of a trivial class with one method, and your scriptlet code\n forms the body of that method, after a series of local variables have been set up to allow\n convenient access to context variables.  The header and footer files you've defined, if any,\n appear before and after your scriptlet, still within the method body.\n <P>\n This makes Java viable as a scripting language despite its verbosity - if the actual business\n logic to be executed consists of just a few lines of Java, your overall scriptlet will be only\n that long instead of being forced to contain a complete class definition.\n <P>\n The automatic wrapping of Java code can be disabled by setting\n <code>script.java.useDefaultScriptWrapper</code> to false in server.properties.  In this case\n any scriptlet must contain a valid class definition like the below - context variables need to\n be manually retrieved from the ScriptContext object instead of being automatically\n available as local variables, and the attribute \"evalResult\" is used to return data in lieu of\n using a <code>return</code> statement.\n <P>\n <pre>\n class Temp {\n     private static ScriptContext ctx;\n     public static void setScriptContext(ScriptContext context) {\n         ctx = context;\n     }\n     public static void main(String[] args) {\n         String result = \"Hello World!\";\n         ctx.setAttribute(\"evalResult\", result, \n                          ScriptContext.ENGINE_SCOPE);\n     }\n }\n </pre>\n All scriptlets must also import javax.script.ScriptContext.  For obvious reasons setting\n <code>useDefaultScriptWrapper</code> to false is not recommended.\n <P>\n <h3>Returning values and JavaScript</h3>\n <P>\n Scriptlets written in Java <b>must</b> use a <code>return</code> statement to return a\n result from the scriptlet.  Scriptlets written in JavaScript <code>must not</code> use a\n <code>return</code> as Rhino will report this as an error - the JavaScript code is not\n executed in the scope of a function, and only functions can <code>return</code>.\n <P>\n Instead, JavaScript scriptlets should simply end with a statement indicating the value\n they would like to return.  For example:\n <pre>\n     // if used as the last line, the scriptlet \n     // returns the result of dsRequest.execute();\n     dsRequest.execute();\n\n     // if you already have the value as a variable,\n     // just end with the variable name plus semicolon\n     var dsResponse = dsRequest.execute();\n     dsResponse;\n\n     // add a line like this to force returning null \n     // instead of the result of the previous line of code\n     null;\n </pre>\n Groovy makes the <code>return</code> statement optional, and like JavaScript, will take the\n value of the last statement as the returned value if there is no explicit\n <code>return</code>.\n <P>\n Other languages supported by JSR223 may have other special semantics for returning data - see\n their documentation for details.\n <P>\n <h3>Available context variables for scriptlets</h3>\n <P>\n Context variables that are available to a scriptlet are explained in the documentation for the\n particular property where a scriptlet may be declared, for example,\n ${isc.DocUtils.linkForRef('attr:OperationBinding.script')} and ${isc.DocUtils.linkForRef('attr:Validator.serverCondition')}.\n <P>\n In most JSR223 languages, context variables are available as ordinary local variables and you\n can simply refer to them directly in your scriptlet.  This includes Java, so long as\n useDefaultScriptWrapper is left in it's default setting (see above).",
        name:"serverScript",
        seeAlso:[
        ],
        type:"group",
        examples:[
            "${isc.DocUtils.linkForExampleId('scriptingUserSpecificData')}",
            "${isc.DocUtils.linkForExampleId('scriptingValidation')}"
        ]
    },
    "attr:Tree.openProperty":{
        ref:"attr:Tree.openProperty",
        flags:"IRWA",
        description:"The property consulted by the default implementation of ${isc.DocUtils.linkForRef('method:Tree.isOpen')} to determine if the\n node is open or not.  By default, this property is auto-generated for you, but you can set\n it to a custom value if you want to declaratively specify this state, but be careful - if\n you display this Tree in multiple TreeGrids at the same time, the open state will not be\n tracked independently - see ${isc.DocUtils.linkForRef('group:sharingNodes')} for more info on this.",
        name:"openProperty",
        seeAlso:[
            {
                ref:"group:sharingNodes",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('initialData')}"
        ],
        definingClass:"class:Tree",
        groups:[
            "openList"
        ]
    },
    "attr:DataSourceField.decimalPrecision":{
        ref:"attr:DataSourceField.decimalPrecision",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and affects how many significant digits are shown.\n <P>\n For example, with decimalPrecision 3, if the field value is 343.672677, 343.673 is shown.\n <P>\n If the value is 125.2, 125.2 is shown - decimalPrecision will not cause extra zeros to be\n added.  Use ${isc.DocUtils.linkForRef('attr:DataSourceField.decimalPad')} for this.\n <P>\n A number is always shown with its original precision when edited.",
        name:"decimalPrecision",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "appearance"
        ]
    },
    "method:TileGrid.getFieldState":{
        ref:"method:TileGrid.getFieldState",
        flags:"",
        description:" Returns a snapshot of the current presentation of this grid's fields as \n a ${isc.DocUtils.linkForRef('type:ListGridFieldState')} object.\n <P>\n This object can be passed to ${isc.DocUtils.linkForRef('method:TileGrid.setFieldState')} to reset this grid's fields to\n the current state.\n <P>\n Note that the information stored includes the current width and visibility of each of this \n grid's fields.\n\n",
        name:"getFieldState",
        seeAlso:[
            {
                ref:"method:TileGrid.setFieldState",
                description:null
            }
        ],
        returns:{
            description:"current state of this grid's fields.",
            type:"ListGridFieldState"
        },
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "viewState"
        ]
    },
    "method:ValuesManager.getErrors":{
        ref:"method:ValuesManager.getErrors",
        flags:"",
        description:" Returns the set of errors for this valuesManager.\n Errors will be returned as an object of the format <br>\n <code>{field1:errors, field2:errors}</code><br>\n Where each errors object is either a single error message or an array of error message\n strings.\n",
        name:"getErrors",
        seeAlso:[
        ],
        returns:{
            description:"Object containing mapping from field names to error strings. Returns null                  if there are no errors for this valuesManager.",
            type:"object"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "attr:ListGridField.iconSpacing":{
        ref:"attr:ListGridField.iconSpacing",
        flags:"IR",
        description:"Pixels between icon and title text.",
        name:"iconSpacing",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:MultiGroupDialog.optionsGrid":{
        ref:"attr:MultiGroupDialog.optionsGrid",
        flags:"IR",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ListGrid')} allowing the user to configure a set of \n ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.optionsGridProperties</code> and \n <code>multiGroupPanel.optionsGridDefaults</code>.",
        name:"optionsGrid",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "class:EventHandler":{
        methods:[
        ],
        ref:"class:EventHandler",
        classAttrs:[
            "classAttr:EventHandler.STILL_DOWN_DELAY",
            "classAttr:EventHandler.IDLE_DELAY",
            "classAttr:EventHandler.STOP_BUBBLING",
            "classAttr:EventHandler.ALL_EDGES"
        ],
        classMethods:[
            "classMethod:EventHandler.getNativeMouseTarget",
            "classMethod:EventHandler.setDragTrackerImage",
            "classMethod:EventHandler.getNativeDragData",
            "classMethod:EventHandler.setNativeDragData",
            "classMethod:EventHandler.getWheelDelta",
            "classMethod:EventHandler.getWheelDeltaX",
            "classMethod:EventHandler.getWheelDeltaY",
            "classMethod:EventHandler.setDragTracker",
            "classMethod:EventHandler.getDragRect",
            "classMethod:EventHandler.getTarget",
            "classMethod:EventHandler.getDragTarget",
            "classMethod:EventHandler.getX",
            "classMethod:EventHandler.getY",
            "classMethod:EventHandler.leftButtonDown",
            "classMethod:EventHandler.rightButtonDown",
            "classMethod:EventHandler.middleButtonDown",
            "classMethod:EventHandler.getKeyEventCharacterValue",
            "classMethod:EventHandler.getKeyEventCharacter",
            "classMethod:EventHandler.getKey",
            "classMethod:EventHandler.shiftKeyDown",
            "classMethod:EventHandler.ctrlKeyDown",
            "classMethod:EventHandler.altKeyDown",
            "classMethod:EventHandler.targetIsMasked"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"The ISC system provides a predictable cross-browser event-handling mechanism for ISC\n widgets. Events can be handled both at the page level (i.e., globally), and at the level of\n individual widgets.\n <p>\n With the exception of a few page-specific events ('load', 'unload', 'idle' and 'resize'),\n events are processed in the following sequence:\n <p>\n 1. The event is sent to any global (page-level) event handlers. These handlers can cancel\n further propagation of the event by returning false.  You can register to listen for any of the\n events linked in the seeAlso section (below) by calling ${isc.DocUtils.linkForRef('classMethod:Page.setEvent')}\n method.\n <p>\n 2. If the event occurred on a form element or a link, it is passed on to the browser so that\n the element will perform its default action. No widget receives the event.\n <p>\n 3. If the event occurred on an enabled widget (but not on a form element or link inside\n the widget), it is sent to that widget's event handler, if any. This handler can cancel\n further propagation of the event by returning false.  An \"enabled\" widget is any widget that\n defines an event handler for one of the supported events.  Interceptable events are defined in\n the ${isc.DocUtils.linkForRef('class:Canvas#methods#events','\"widgetEvents\" section of Canvas')}.\n <p>\n 4. The event is \"bubbled\" up to the widget's parent in the containment hierarchy, if any.\n Again, the parent's handler for the event can cancel further propagation by returning\n false. This step is repeated, with the event \"bubbling\" up through the containment\n hierarchy, until a top-level widget is reached or the event is explicitly canceled.\n In brief, the ISC event model offers the best features of browser event models:\n <ul>\n <li> Page-first event handling allows you to reliably process or cancel any event before it\n      affects the objects on the page.\n <li> Event \"bubbling\" ensures that parent widgets receive events sent to their children,\n      and allows you to create generalized parent-level handlers rather than duplicating\n      code in each child.\n </ul>\n Note: Canceling propagation of an event may cancel its side effects as well, including the\n generation of other (synthetic) events. For example, if a global mouseDown handler returns\n false, drag-and-drop events will not be generated. Specific effects are discussed in the\n descriptions of the various events in the following sections.\n <p>\n SmartClient libraries will not interfere with native event handling when events occur\n outside of a target widget. You can therefore have HTML that is not ISC-based on the same\n page as widget objects that will react to native events as you would expect.\n <p>\n You can use isc.Event as an alias for isc.EventHandler.",
        name:"EventHandler",
        seeAlso:[
            {
                ref:"type:PageEvent",
                description:null
            },
            {
                ref:"classMethod:Page.setEvent",
                description:null
            },
            {
                ref:"classMethod:Page.clearEvent",
                description:null
            },
            {
                ref:"class:Canvas#methods#widgetEvents",
                description:null
            }
        ],
        type:"class"
    },
    "attr:TabSet.showMoreTab":{
        ref:"attr:TabSet.showMoreTab",
        flags:"IR",
        description:"Should tabs exceeding ${isc.DocUtils.linkForRef('attr:TabSet.moreTabCount')} be shown on a \"more\" tab?\n <p>\n This setting is used to emulate an iPhone-style tab bar \"more\" button.",
        name:"showMoreTab",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:ListGrid.nullGroupTitle":{
        ref:"attr:ListGrid.nullGroupTitle",
        flags:"IRW",
        description:"Default alias to use for groups with no value",
        name:"nullGroupTitle",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"'-none-'",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:DateRangeItem.setFromDate":{
        ref:"method:DateRangeItem.setFromDate",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:DateRangeItem.fromDate')} for this DateRangeItem.\n",
        name:"setFromDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the date from which this item should start it's range",
                optional:false,
                name:"fromDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        type:"method",
        definingClass:"class:DateRangeItem"
    },
    "attr:ImgTab.titleStyle":{
        ref:"attr:ImgTab.titleStyle",
        flags:"IR",
        description:"Like ${isc.DocUtils.linkForRef('attr:StretchImgButton.titleStyle')}, can set to provide a separate style for the\n title text.\n <P>\n If set and the ImgTab is ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical','vertical')}, a \"v\" will be\n automatically prepended to the style name (hence \"tabTitle\" -> \"vtabTitle\").",
        name:"titleStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "method:CubeGrid.closeColumn":{
        ref:"method:CubeGrid.closeColumn",
        flags:"",
        description:"\n  Handler fired when column is closed\n\n      <br><i>methodType</i> handler\n",
        name:"closeColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"FacetValues for the appropriate col.",
                optional:false,
                name:"headerFacetValues",
                defaultValue:null,
                type:"facetValues object"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "columnControls"
        ]
    },
    "method:DrawLine.getBoundingBox":{
        ref:"method:DrawLine.getBoundingBox",
        flags:"",
        description:" Returns a bounding box for the <code>DrawLine</code>, taking into account the\n ${isc.DocUtils.linkForRef('attr:DrawItem.lineWidth','lineWidth')}.\n\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawLine"
    },
    "method:ResultSet.dataArrived":{
        ref:"method:ResultSet.dataArrived",
        flags:"",
        description:" Notification fired when data has arrived from the server and has been successfully\n integrated into the cache.\n <P>\n When <code>dataArrived()</code> fires, an immediate call to <code>getRange()</code> with\n the <code>startRow</code> and <code>endRow</code> passed as arguments will return a List\n with no ${isc.DocUtils.linkForRef('classMethod:ResultSet.getLoadingMarker','loading markers')}.\n\n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"starting index of rows that have just loaded",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"ending index of rows that have just loaded, non-inclusive",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:DataSource.jsonSuffix":{
        ref:"attr:DataSource.jsonSuffix",
        flags:"IRA",
        description:"Allows you to specify an arbitrary suffix string to apply to all json format responses \n sent from the server to this application.\n <P>\n The inclusion of such a suffix ensures your code is not directly executable outside of\n your application, as a preventative measure against\n <a href='http://www.google.com/search?q=javascript+hijacking' target='_blank'>javascript hijacking</a>.\n <P>\n Only applies to responses formatted as json objects. Does not apply to responses returned\n via scriptInclude type transport.",
        name:"jsonSuffix",
        seeAlso:[
            {
                ref:"attr:OperationBinding.dataFormat",
                description:null
            },
            {
                ref:"attr:OperationBinding.dataTransport",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:TimeItem.use24HourTime":{
        ref:"attr:TimeItem.use24HourTime",
        flags:"IRW",
        description:"Whether to enforce 24-hour time in the UI.",
        name:"use24HourTime",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:StaticTextItem.wrap":{
        ref:"attr:StaticTextItem.wrap",
        flags:"IRW",
        description:"If true, item contents can wrap. If false, all the contents should appear on a single line.",
        name:"wrap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StaticTextItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.showSelectedStyle":{
        ref:"attr:ListGrid.showSelectedStyle",
        flags:"IRW",
        description:"Should the \"Selected\" style be applied to selected records?",
        name:"showSelectedStyle",
        seeAlso:[
            {
                ref:"method:GridRenderer.getCellStyle",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:TileGrid.setCanDragTilesOut":{
        ref:"method:TileGrid.setCanDragTilesOut",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:TileGrid.canDragTilesOut')}.\n",
        name:"setCanDragTilesOut",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dragging"
        ]
    },
    "method:ResultSet.allRowsCached":{
        ref:"method:ResultSet.allRowsCached",
        flags:"A",
        description:" Do we have a complete client-side cache of all records for this DataSource?\n <P>\n Becomes true only when the ResultSet obtains a complete cache after a fetch with empty\n criteria.\n\n",
        name:"allRowsCached",
        seeAlso:[
        ],
        returns:{
            description:"whether all rows are cached",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:DrawPane.gradients":{
        ref:"attr:DrawPane.gradients",
        flags:"IR",
        description:"Array of gradients that can be referenced by DrawItems placed on this DrawPane.\n Each gradient must have an ID assigned to be used for reference.",
        name:"gradients",
        seeAlso:[
        ],
        valueType:"Array of Gradient",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawPane"
    },
    "attr:Dialog.buttons":{
        ref:"attr:Dialog.buttons",
        flags:"IR",
        description:"Array of Buttons to show in the ${isc.DocUtils.linkForRef('attr:Dialog.showToolbar','toolbar')}, if shown.\n <P>\n The set of buttons to use is typically set by calling one of the shortcuts such as\n ${isc.DocUtils.linkForRef('classMethod:isc.say')} or ${isc.DocUtils.linkForRef('classMethod:isc.confirm')}.  A custom set of\n buttons can be passed to these shortcuts methods via the \"properties\" argument, or to a\n directly created Dialog.\n <P>\n In both cases, a mixture of ${isc.DocUtils.linkForRef('type:DialogButtons','built-in buttons')}, custom buttons,\n and other components (such as a ${isc.DocUtils.linkForRef('class:LayoutSpacer')}) can be passed.  \n <smartclient>\n Built-in buttons can be referred to as <code>isc.Dialog.OK</code>, for example:\n <pre>\n isc.Dialog.create({\n    buttons:[\n       isc.Dialog.OK,\n       isc.Dialog.CANCEL,\n       isc.LayoutSpacer.create({width:50}),\n       { title:\"Not now\", click:\"doSomething()\" }\n    ]\n })\n </pre>\n Built-in buttons will call standard methods on the Dialog itself, such as\n ${isc.DocUtils.linkForRef('method:Dialog.cancelClick')}, as explained in the\n ${isc.DocUtils.linkForRef('type:DialogButtons','list of built-in buttons')}.\n </smartclient>\n <smartgwt>\n Built-in buttons can be referred to via <code>Dialog.OK</code>, for example:\n <pre>\n Dialog dialog = new Dialog();\n Canvas layoutSpacer = new LayoutSpacer();\n layoutSpacer.setWidth(50);\n Button notNowButton = new Button(\"Not now\");\n notNowButton.addClickHandler(new ClickHandler() {\n     public void onClick(ClickEvent event) {\n         doSomething();\n     }\n });\n dialog.setButtons(Dialog.OK, Dialog.CANCEL, layoutSpacer, notNowButton);\n dialog.draw();\n </pre>\n All buttons will fire the ${isc.DocUtils.linkForRef('method:Dialog.buttonClick')} handler.\n </smartgwt>",
        name:"buttons",
        setter:[
            "setButtons"
        ],
        seeAlso:[
        ],
        valueType:"Array of Button or Button Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:MathFunction.name":{
        ref:"attr:MathFunction.name",
        flags:"IR",
        description:"Name of the function (what the user actually types).  For example, a name of \"min\" would\n indicate that the user types \"min(someValue)\" to use this function.\n <P>\n Limited to lowercase characters only in this release.",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MathFunction",
        groups:[
            "formulaFields"
        ]
    },
    "classMethod:Page.waitFor":{
        ref:"classMethod:Page.waitFor",
        flags:"",
        description:" Wait for a method to fire on an object.\n <P>\n <code>waitFor</code> is similar ${isc.DocUtils.linkForRef('method:Class.observe','observation')}, but fires once only.\n\n",
        name:"waitFor",
        seeAlso:[
        ],
        params:[
            {
                description:"any SmartClient object, eg, a ListGrid",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"name of a method on that object",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Callback to fire when the observed method completes",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Function"
            },
            {
                description:"Optional timeout period (in milliseconds). If you want a timeout,                           you must also provide a timeoutCallback",
                optional:true,
                name:"timeout",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"Callback to fire if the timeout period elapses before the                                      observed method completes",
                optional:true,
                name:"timeoutCallback",
                defaultValue:null,
                type:"Function"
            }
        ],
        returns:{
            description:"whether observation succeeded.  Observation may fail due to null object,                   non-existent method or similar bad parameters",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:ListGrid.showGroupTitleColumn":{
        ref:"attr:ListGrid.showGroupTitleColumn",
        flags:"IR",
        description:"If this grid is ${isc.DocUtils.linkForRef('method:ListGrid.groupBy','grouped')} and ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummaryInHeader')}\n is true, instead of group header nodes showing up with a single cell value spanning the full\n set of columns, summaries for each field will show up in the appropriate columns of the\n header node.\n <P>\n In this case there are 2 options for where the group title will show up. Developers may\n specify an existing field to put the title values into via ${isc.DocUtils.linkForRef('attr:ListGrid.groupTitleField')}.\n If no groupTitleField is specified, this property may be set to <code>true</code>\n which causes a <code>groupTitleColumn</code> to be automatically generated.\n Each group header will show the group title in this column (records within the group will\n not show a value for this column). The column appears in the leftmost position within the\n grid (unless ${isc.DocUtils.linkForRef('attr:ListGrid.showRowNumbers')} is true, in which case this column shows up\n in the second-leftmost position), and by default will auto-fit to its data.\n <P>\n To customize this field, developers may modify\n ${isc.DocUtils.linkForRef('attr:ListGrid.groupTitleColumnProperties')}\n <smartclient>or\n ${isc.DocUtils.linkForRef('attr:ListGrid.groupTitleColumnDefaults')} at the class level.</smartclient>",
        name:"showGroupTitleColumn",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:FacetChart.getMean":{
        ref:"method:FacetChart.getMean",
        flags:"",
        description:" Calculate the mean, or expected value, of the data over a single metric.\n See <a href=\"http://en.wikipedia.org/wiki/Expected_value\">http://en.wikipedia.org/wiki/Expected_value</a>.\n <p>\n The first argument, criteria, determines which metric is used to calculate the mean.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n",
        name:"getMean",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            }
        ],
        returns:{
            description:"the mean of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:ListGrid.autoFetchData":{
        ref:"attr:ListGrid.autoFetchData",
        flags:"IR",
        description:"If true, when this component is first drawn, automatically call <code>this.fetchData()</code>.\n Criteria for this fetch may be picked up from ${isc.DocUtils.linkForRef('attr:ListGrid.initialCriteria')}, and textMatchStyle may\n be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}.\n <P>\n <span style='color:red'>NOTE:</span> if <code>autoFetchData</code> is set, calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} before draw will cause two requests to be issued, one from the manual\n call to fetchData() and one from the autoFetchData setting.  The second request will use\n only ${isc.DocUtils.linkForRef('attr:ListGrid.initialCriteria')} and not any other criteria or settings from the first request.\n Generally, turn off autoFetchData if you are going to manually call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} at any time.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fetchOperation')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "method:NavigationBar.setRightButtonIcon":{
        ref:"method:NavigationBar.setRightButtonIcon",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButtonIcon','rightButtonIcon')}.\n",
        name:"setRightButtonIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"new icon for the right button.",
                optional:false,
                name:"newIcon",
                defaultValue:null,
                type:"SCImgURL"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "method:MenuItem.enableIf":{
        ref:"method:MenuItem.enableIf",
        flags:"",
        description:" Contains the condition that will enable or disable the current menuItem. The handler must be specified\n as a function or string of script.  Return false to disable the menuItem or true to enable it\n <p>\n If you don't need to set this state dynamically, use ${isc.DocUtils.linkForRef('attr:MenuItem.enabled')} instead.\n <p>\n May be defined as a ${isc.DocUtils.linkForRef('group:stringMethods','stringMethod')}.\n <p>\n",
        name:"enableIf",
        seeAlso:[
        ],
        params:[
            {
                description:"${isc.DocUtils.linkForRef('attr:Menu.target','target')} attribute for the top level menu.",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"${isc.DocUtils.linkForRef('class:Menu','menu')} contains the reference to the menu that contains the current item",
                optional:false,
                name:"menu",
                defaultValue:null,
                type:"Menu"
            },
            {
                description:"contains the reference to the current item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem"
            }
        ],
        returns:{
            description:"Return true to show a checkmark by this menu item",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('menuDynamicItems')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "dynamicMenuItem"
        ]
    },
    "method:PortalLayout.setColumnOverflow":{
        ref:"method:PortalLayout.setColumnOverflow",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.columnOverflow')} and updates existing columns to reflect the new setting.\n",
        name:"setColumnOverflow",
        seeAlso:[
            {
                ref:"attr:PortalLayout.columnOverflow",
                description:null
            }
        ],
        params:[
            {
                description:"Overflow setting for columns",
                optional:false,
                name:"overflow",
                defaultValue:null,
                type:"Overflow"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('portalLayoutColumnHeight')}"
        ],
        definingClass:"class:PortalLayout"
    },
    "method:ComboBoxItem.getEnteredValue":{
        ref:"method:ComboBoxItem.getEnteredValue",
        flags:"",
        description:" Returns the raw text value that currently appears in the text field, which can differ from \n ${isc.DocUtils.linkForRef('method:FormItem.getValue')} in various cases - for example:\n <ul>\n <li>for items that constrain the value range, such as a ${isc.DocUtils.linkForRef('class:DateItem')} with\n ${isc.DocUtils.linkForRef('attr:DateItem.enforceDate','enforceDate')}:true, or a ${isc.DocUtils.linkForRef('class:ComboBoxItem')} with\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues','addUnknownValues')}:false</li>\n <li>for items with a defined valueMap or edit value formatter and parser functions\n which converts display value to data value</li>\n <li>while the item has focus if ${isc.DocUtils.linkForRef('attr:TextItem.changeOnKeypress','changeOnKeypress')} is false\n </li></ul>\n",
        name:"getEnteredValue",
        seeAlso:[
        ],
        returns:{
            description:"current entered value",
            type:"string"
        },
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "method:DataSource.getFieldOperators":{
        ref:"method:DataSource.getFieldOperators",
        flags:"",
        description:" Get the list of ${isc.DocUtils.linkForRef('type:OperatorId')}s available for this field.\n <P>\n By default, if ${isc.DocUtils.linkForRef('attr:DataSourceField.validOperators','field.validOperators')} is set,\n returns that list, otherwise returns the result of ${isc.DocUtils.linkForRef('method:DataSource.getTypeOperators')}.\n",
        name:"getFieldOperators",
        seeAlso:[
        ],
        params:[
            {
                description:"Field (or field name) to obtain operators for",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"String or DataSourceField"
            }
        ],
        returns:{
            description:"available Operators",
            type:"Array of OperatorId"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "method:Canvas.shouldSnapOnDrop":{
        ref:"method:Canvas.shouldSnapOnDrop",
        flags:"A",
        description:" Override this method to give programmatic control over whether or not the parameter\n <code>dragTarget</code> should snap to this object's grid when dropped.  Note that this only applies\n if snap-to-grid is enabled on either <code>dragTarget</code> or this object.  See\n ${isc.DocUtils.linkForRef('attr:Canvas.snapToGrid')} and ${isc.DocUtils.linkForRef('attr:Canvas.childrenSnapToGrid')}.\n <P>\n The default implementation simply returns true.\n\n",
        name:"shouldSnapOnDrop",
        seeAlso:[
        ],
        params:[
            {
                description:"The object about to be dropped",
                optional:false,
                name:"dragTarget",
                defaultValue:null,
                type:"isc.Canvas"
            }
        ],
        returns:{
            description:"true if <code>dragTarget</code> should snap to this object's grid; otherwise false",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:DrawItem.setShadow":{
        ref:"method:DrawItem.setShadow",
        flags:"",
        description:" Update shadow for this drawItem.\n",
        name:"setShadow",
        seeAlso:[
        ],
        params:[
            {
                description:"new shadow",
                optional:false,
                name:"shadow",
                defaultValue:null,
                type:"Shadow"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:AdvancedHiliteEditor.saveButtonTitle":{
        ref:"attr:AdvancedHiliteEditor.saveButtonTitle",
        flags:"IR",
        description:"The title text for the ${isc.DocUtils.linkForRef('attr:AdvancedHiliteEditor.saveButton','saveButton')}.",
        name:"saveButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Save\"",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ViewLoader.allowCaching":{
        ref:"attr:ViewLoader.allowCaching",
        flags:"IR",
        description:"By default a ViewLoader will explicitly prevent browser caching.\n <P>\n Set to true to allow browser caching <b>if the browser would normally do so</b>, in other\n words, if the HTTP headers returned with the response indicate that the response can be\n cached.",
        name:"allowCaching",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ViewLoader"
    },
    "method:CubeGrid.selectFacetValue":{
        ref:"method:CubeGrid.selectFacetValue",
        flags:"",
        description:" Select/deselect the header for a given facet value.\n\n  <br><i>methodType</i> action\n",
        name:"selectFacetValue",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of facet",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"string"
            },
            {
                description:"ID of facetValue to select",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new selection state - if null defaults to true",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:Tree.getLength":{
        ref:"method:Tree.getLength",
        flags:"",
        description:"\n Returns the number of items in the current open list.\n\n",
        name:"getLength",
        seeAlso:[
            {
                ref:"method:Tree.getOpenList",
                description:null
            }
        ],
        returns:{
            description:"number of items in open list",
            type:"number"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:Canvas.showDragShadow":{
        ref:"attr:Canvas.showDragShadow",
        flags:"IRWA",
        description:"When this widget is dragged, if its dragAppearance is <code>\"target\"</code>, should\n we show a shadow behind the canvas during the drag.",
        name:"showDragShadow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragEffects')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:DrawPane.createRadialGradient":{
        ref:"method:DrawPane.createRadialGradient",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('method:DrawPane.addGradient')}",
        flags:"",
        description:" Creates a radial gradient which can be used by any DrawItem of this DrawPane.\n Any DrawItem's ${isc.DocUtils.linkForRef('attr:DrawItem.fillGradient','fillGradient')} can reference the gradient by the\n given ID.\n\n",
        name:"createRadialGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"the ID of the radial gradient",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"identifier"
            },
            {
                description:"the radial gradient",
                optional:false,
                name:"radialGradient",
                defaultValue:null,
                type:"RadialGradient"
            }
        ],
        returns:{
            description:"id",
            type:"identifier"
        },
        type:"method",
        definingClass:"class:DrawPane"
    },
    "attr:FacetChart.chartRectMargin":{
        ref:"attr:FacetChart.chartRectMargin",
        flags:"IR",
        description:"Margin around the main chart rect: between title and chart, between chart and axis\n labels, and chart rect and right edge of chart.",
        name:"chartRectMargin",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "group:dataBoundComponentMethods":{
        ref:"group:dataBoundComponentMethods",
        title:"DataBound Component Methods",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        refs:[
            "method:DynamicForm.editNewRecord",
            "method:DynamicForm.editRecord",
            "method:DynamicForm.editSelectedData",
            "method:DynamicForm.submit",
            "method:DynamicForm.saveData",
            "method:DynamicForm.fetchData",
            "method:DynamicForm.filterData",
            "method:ValuesManager.editNewRecord",
            "method:ValuesManager.editRecord",
            "method:ValuesManager.editSelectedData",
            "method:ValuesManager.saveData",
            "method:ValuesManager.submit",
            "method:ValuesManager.filterData",
            "method:ValuesManager.fetchData",
            "method:DetailViewer.viewSelectedData",
            "method:Calendar.fetchData",
            "method:Calendar.filterData",
            "method:ListGrid.fetchData",
            "method:ListGrid.exportData",
            "method:ListGrid.filterData",
            "method:ListGrid.fetchRelatedData",
            "method:ListGrid.clearCriteria",
            "method:ListGrid.getCriteria",
            "method:ListGrid.setCriteria",
            "method:ListGrid.invalidateCache",
            "method:ListGrid.willFetchData",
            "method:ListGrid.addData",
            "method:ListGrid.updateData",
            "method:ListGrid.removeSelectedData",
            "method:TreeGrid.fetchData",
            "method:TreeGrid.filterData",
            "method:TileGrid.exportData",
            "method:DetailViewer.exportData",
            "method:DataBoundComponent.exportData",
            "method:DataBoundComponent.willFetchData",
            "method:ListGrid.removeData",
            "method:TileGrid.fetchData",
            "method:TileGrid.filterData",
            "method:TileGrid.invalidateCache",
            "method:TileGrid.removeSelectedData",
            "method:TileGrid.addData",
            "method:TileGrid.removeData",
            "method:ColumnTree.fetchData",
            "method:ColumnTree.filterData",
            "method:MultiView.fetchData",
            "method:MultiView.filterData",
            "method:MultiView.fetchRelatedData",
            "method:MultiView.removeSelectedData",
            "method:MultiView.anySelected",
            "method:MultiView.getSelection",
            "method:MultiView.selectRecord",
            "method:MultiView.selectRecords",
            "method:MultiView.selectRange",
            "method:MultiView.selectAllRecords",
            "method:MultiView.deselectRecord",
            "method:MultiView.deselectRecords",
            "method:MultiView.deselectRange",
            "method:MultiView.deselectAllRecords",
            "attr:DataBoundComponent.autoFetchData"
        ],
        description:"An Action Method initiates an orchestrated client-server flow that stores or retrieves data\n and updates one or more components.\n <P>\n For example, the ${isc.DocUtils.linkForRef('method:DynamicForm.saveData','editor.saveData()')} Action Method saves the\n record currently being edited in the form, transparently handling the trip to the server,\n standard error conditions such as validation errors (whether the validation error\n happens on the client or server), and update of client-side caches.\n <P>\n Action Methods are available on DataBoundComponents.",
        name:"dataBoundComponentMethods",
        seeAlso:[
            {
                ref:"interface:DataBoundComponent",
                description:null
            }
        ],
        type:"group"
    },
    "attr:DataSourceField.updateRequiresRole":{
        ref:"attr:DataSourceField.updateRequiresRole",
        flags:"IR",
        description:"Comma-separated list of user roles that are allowed to update this field. If the current\n user does not have any of the roles listed, the system will not allow this field to be \n updated.\n <p>\n <b>NOTE:</b> This property only prevents a field from being updated; initialization will \n still be allowed.  You should only use this property if you have a special requirement; \n ordinarily, use ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresRole')}, which applies security for both \n types of write.",
        name:"updateRequiresRole",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.editRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.initRequires",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:groupNode.groupMembers":{
        ref:"attr:groupNode.groupMembers",
        flags:"R",
        description:"Array of ListGridRecord that belong to this group, or, for multi-field grouping, array\n of groupNodes of subgroups under this groupNode.",
        name:"groupMembers",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"Array of ListGridRecord or GroupNode",
        defaultValue:"see below",
        type:"attr",
        definingClass:"object:groupNode",
        groups:[
            "grouping"
        ]
    },
    "attr:HiliteEditor.fieldList":{
        ref:"attr:HiliteEditor.fieldList",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:ListGrid')} showing the list of fields to create hilites for.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteEditor.fieldListProperties</code>.",
        name:"fieldList",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteEditor"
    },
    "method:TileLayout.transferDragData":{
        ref:"method:TileLayout.transferDragData",
        flags:"",
        description:"\n During a drag-and-drop interaction, this method is called to transfer a set of records that\n were dropped onto some other component.  This method is called after the set of records has\n been copied to the other component.  Whether or not this component's data is modified is \n determined by the value of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dragDataAction')}.\n <P>\n With a <code>dragDataAction</code> of \"move\", a databound component will issue \"remove\"\n dsRequests against its DataSource to actually remove the data, via\n ${isc.DocUtils.linkForRef('method:DataSource.removeData')}.\n\n",
        name:"transferDragData",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.getDragData",
                description:null
            },
            {
                ref:"method:ListGrid.willAcceptDrop",
                description:null
            }
        ],
        returns:{
            description:"Array of objects that were dragged out of this ListGrid.",
            type:"Array"
        },
        type:"method",
        definingClass:"class:TileLayout"
    },
    "method:ResultTree.getRange":{
        ref:"method:ResultTree.getRange",
        flags:"",
        description:"\t\t\tGet a range of items from the open list\n",
        name:"getRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start position",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end position (NOT inclusive)",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"list of nodes in the open list",
            type:"Array of TreeNode"
        },
        type:"method",
        definingClass:"class:ResultTree",
        groups:[
            "openList",
            "Items"
        ]
    },
    "attr:ToolStrip.resizeBarSize":{
        ref:"attr:ToolStrip.resizeBarSize",
        flags:"IRA",
        description:"Thickness of the resizeBars in pixels.",
        name:"resizeBarSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"14",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "method:Button.setTitle":{
        ref:"method:Button.setTitle",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.title','title')}.\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"the new title HTML.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.summaryFunction":{
        ref:"attr:ListGridField.summaryFunction",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} or ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true,\n this attribute can be used to specify\n an explicit ${isc.DocUtils.linkForRef('type:SummaryFunction')} for calculating the summary value to\n display.\n <P>\n If an array of summaryFunctions is specified, they will be executed in turn and the\n grid will show multiple summary rows at the grid or group level (or both)\n containing the resulting values.",
        name:"summaryFunction",
        seeAlso:[
        ],
        valueType:"SummaryFunction  or Array of SummaryFunction",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:DynamicForm.reset":{
        ref:"method:DynamicForm.reset",
        flags:"",
        description:"\n Resets values to the state it was the last time <code>setValues()</code> or\n <code>rememberValues()</code> was called. If neither of those methods has been called,\n values will be set back to their initial values at init time.\n\n",
        name:"reset",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "method:ListGrid.setValueMap":{
        ref:"method:ListGrid.setValueMap",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:ListGridField.valueMap','valueMap')} for a field.\n See also the ${isc.DocUtils.linkForRef('method:ListGrid.setEditorValueMap','setEditorValueMap()')}\n and ${isc.DocUtils.linkForRef('method:ListGrid.getEditorValueMap','getEditorValueMap()')} methods which allow further\n customization of the valueMap displayed while the field is in edit mode.\n\n",
        name:"setValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"Name or index of field to update",
                optional:false,
                name:"fieldID",
                defaultValue:null,
                type:"String | int"
            },
            {
                description:"ValueMap for the field",
                optional:false,
                name:"map",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TreeGrid.closedIconSuffix":{
        ref:"attr:TreeGrid.closedIconSuffix",
        flags:"IRW",
        description:"This suffix will be appended to the ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} for closed folders.\n If ${isc.DocUtils.linkForRef('attr:TreeGrid.showOpenIcons')} is set to <code>false</code> this suffix will also be\n appended to open folders' icons.",
        name:"closedIconSuffix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"closed\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:ColorPicker.autoPosition":{
        ref:"attr:ColorPicker.autoPosition",
        flags:"IR",
        description:"If true, causes the ColorPicker to appear near where the mouse was last clicked.\n If false, the ColorPicker is centered on first show; depending on the value of \n ${isc.DocUtils.linkForRef('attr:ColorPicker.autoCenterOnShow')}, it either reappears wherever it was last shown after hide/show(), \n or centered regardless of where it was last shown.",
        name:"autoPosition",
        seeAlso:[
            {
                ref:"attr:ColorPicker.autoCenterOnShow",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:MultiGroupPanel.copyLevelButtonTitle":{
        ref:"attr:MultiGroupPanel.copyLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the copyLevelButton",
        name:"copyLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Copy Level\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormulaBuilder.invalidBlankPrompt":{
        ref:"attr:FormulaBuilder.invalidBlankPrompt",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('method:FormulaBuilder.testFunction','testFunction')} reports an empty formula, \n this attribute provides the error-text to display in the\n ${isc.DocUtils.linkForRef('attr:FormulaBuilder.messageLabel','message-label')}.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will \n be evaluated as JS code when the message is displayed.\n <P>\n Only one dynamic variable, builderType, is available and represents the type of this \n builder, either Formula or Summary.\n <P>\n The default output is:<P>\n <code>\n <i>Invalid blank [Formula/Summary] </i>\n </code>",
        name:"invalidBlankPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Invalid blank ${builderType}\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Window.addItems":{
        ref:"method:Window.addItems",
        flags:"",
        description:"\t\t\tAdds an array of widgets to the window.\n",
        name:"addItems",
        seeAlso:[
        ],
        params:[
            {
                description:"an array of widgets to be added",
                optional:false,
                name:"items",
                defaultValue:null,
                type:"Array of Canvas"
            }
        ],
        returns:{
            description:"array of widgets added",
            type:"array"
        },
        type:"method",
        definingClass:"class:Window",
        groups:[
            "windowItems"
        ]
    },
    "class:OperationBinding":{
        methods:[
        ],
        ref:"class:OperationBinding",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
            "attr:OperationBinding.transformMultipleFields",
            "attr:OperationBinding.operationType",
            "attr:OperationBinding.operationId",
            "attr:OperationBinding.serverMethod",
            "attr:OperationBinding.methodArguments",
            "attr:OperationBinding.serverObject",
            "attr:OperationBinding.script",
            "attr:OperationBinding.wsOperation",
            "attr:OperationBinding.dataURL",
            "attr:OperationBinding.dataProtocol",
            "attr:OperationBinding.dataFormat",
            "attr:OperationBinding.dataTransport",
            "attr:OperationBinding.useHttpProxy",
            "attr:OperationBinding.callbackParam",
            "attr:OperationBinding.requestProperties",
            "attr:OperationBinding.preventHTTPCaching",
            "attr:OperationBinding.defaultParams",
            "attr:OperationBinding.useFlatFields",
            "attr:OperationBinding.summaryFunctions",
            "attr:OperationBinding.groupBy",
            "attr:OperationBinding.recordXPath",
            "attr:OperationBinding.recordName",
            "attr:OperationBinding.spoofResponses",
            "attr:OperationBinding.xmlNamespaces",
            "attr:OperationBinding.responseDataSchema",
            "attr:OperationBinding.exportResults",
            "attr:OperationBinding.exportAs",
            "attr:OperationBinding.exportFilename",
            "attr:OperationBinding.lineBreakStyle",
            "attr:OperationBinding.exportFields",
            "attr:OperationBinding.allowMultiUpdate",
            "attr:OperationBinding.qualifyColumnNames",
            "attr:OperationBinding.invalidateCache",
            "attr:OperationBinding.outputs",
            "attr:OperationBinding.sqlPaging",
            "attr:OperationBinding.sqlUsePagingHint",
            "attr:OperationBinding.useSubselectForRowCount",
            "attr:OperationBinding.progressiveLoading",
            "attr:OperationBinding.allowAdvancedCriteria",
            "attr:OperationBinding.criteria",
            "attr:OperationBinding.values",
            "attr:OperationBinding.requiresAuthentication",
            "attr:OperationBinding.requiresRole",
            "attr:OperationBinding.requires",
            "attr:OperationBinding.creatorOverrides",
            "attr:OperationBinding.mail"
        ],
        description:"An operationBinding tells a DataSource how to execute one of the basic DS operations: fetch,\n add, update, remove.  See ${isc.DocUtils.linkForRef('attr:DataSource.operationBindings')}.",
        name:"OperationBinding",
        seeAlso:[
        ],
        type:"class",
        serverDS:"allowed"
    },
    "attr:ImgTab.showFocus":{
        ref:"attr:ImgTab.showFocus",
        deprecated:"as of SmartClient 6.1 in favor of ${isc.DocUtils.linkForRef('attr:ImgTab.showFocused')}",
        flags:"IRW",
        description:"Should we visibly change state when the tab receives keyboard focus?",
        name:"showFocus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "attr:ImgButton.iconHeight":{
        ref:"attr:ImgButton.iconHeight",
        flags:"IR",
        description:"Height in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:ListGrid.rowMouseDown":{
        ref:"method:ListGrid.rowMouseDown",
        flags:"",
        description:" Called when a row receives a mousedown event.\n \n",
        name:"rowMouseDown",
        seeAlso:[
        ],
        params:[
            {
                description:"record object returned from 'getCellRecord()'",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:DataBoundComponent.getSummaryFieldValue":{
        ref:"method:DataBoundComponent.getSummaryFieldValue",
        flags:"",
        description:" Get the computed value of a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.canAddSummaryFields','summary field')}.\n",
        name:"getSummaryFieldValue",
        seeAlso:[
        ],
        params:[
            {
                description:"field that has a summary format",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Field"
            },
            {
                description:"record to use to compute formula value",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"formula result",
            type:"String"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:DrawPolygon.points":{
        ref:"attr:DrawPolygon.points",
        flags:"IRW",
        description:"Array of points of the polygon.",
        name:"points",
        seeAlso:[
        ],
        valueType:"Array of Point",
        defaultValue:"[[0,0], [50,50], [100,0]]",
        type:"attr",
        definingClass:"class:DrawPolygon"
    },
    "attr:Canvas.ID":{
        ref:"attr:Canvas.ID",
        flags:"IR",
        getter:[
            "getID"
        ],
        description:"Global identifier for referring to a widget in JavaScript.  The ID property is optional if\n you do not need to refer to the widget from JavaScript, or can refer to it indirectly\n (for example, by storing the reference returned by ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')}).\n <P>\n An internal, unique ID will automatically be created upon instantiation for any canvas\n where one is not provided.\n <P>\n The ID property should be unique in the global scope. If <code>window[<i>ID</i>]</code>\n is already assigned to something else a warning will be logged using the developer console,\n and the existing reference will be replaced, calling ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} on the\n previous object if it is a SmartClient Class instance.\n <P>\n Automatically generated IDs will be unique as long as the canvases they refer to remain\n active - once a canvas with an automatically generated ID has been destroyed, its ID may be\n reused for the next canvas created with no explicitly specified ID.",
        name:"ID",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "basics"
        ]
    },
    "method:MultiSortPanel.validate":{
        ref:"method:MultiSortPanel.validate",
        flags:"",
        description:" Validate that no two ${isc.DocUtils.linkForRef('object:SortSpecifier')}s sort on the same \n ${isc.DocUtils.linkForRef('attr:SortSpecifier.property','property')}.\n\n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"True if validation succeeds, false if any property is used twice",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:MultiSortPanel"
    },
    "method:Calendar.updateEvent":{
        ref:"method:Calendar.updateEvent",
        flags:"",
        description:" Update an event in this calendar.\n\n",
        name:"updateEvent",
        seeAlso:[
        ],
        params:[
            {
                description:"The event object to remove from the calendar",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"start date of event",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"end date of event",
                optional:false,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"name of event",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"description of event",
                optional:false,
                name:"description",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new values of additional fields to be updated",
                optional:false,
                name:"otherFields",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ListGrid.minFieldWidth":{
        ref:"attr:ListGrid.minFieldWidth",
        flags:"IRW",
        description:"Minimum size, in pixels, for ListGrid headers.",
        name:"minFieldWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"15",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:RadioGroupItem.textBoxStyle":{
        ref:"attr:RadioGroupItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class applied to the text for items within this radiogroup.",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"labelAnchor\"",
        type:"attr",
        definingClass:"class:RadioGroupItem",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.pickerIconWidth":{
        ref:"attr:FormItem.pickerIconWidth",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n size of the picker icon. If unset, the picker icon will be sized as a square to fit in the\n available height for the icon.\n <p>\n It is not recommended to change the pickerIconWidth from the default value if ${isc.DocUtils.linkForRef('group:skinning','spriting')}\n is enabled because the image sprites are set up assuming specific, fixed dimensions of the picker\n icon. If the pickerIconWidth must be changed, then the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')}\n should be changed to a custom CSS style name.",
        name:"pickerIconWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:ServiceTask.dataSource":{
        ref:"attr:ServiceTask.dataSource",
        flags:"IR",
        description:"DataSource ID or DataSource instance to be used.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ServiceTask"
    },
    "method:Button.setIcon":{
        ref:"method:Button.setIcon",
        flags:"",
        description:" Change the icon being shown next to the title text.\n",
        name:"setIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"URL of new icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "object:ColorStop":{
        methods:[
        ],
        ref:"object:ColorStop",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/Gradients"
        ],
        attrs:[
            "attr:ColorStop.offset",
            "attr:ColorStop.opacity",
            "attr:ColorStop.color"
        ],
        description:"An object containing properties that is used in Gradient types",
        name:"ColorStop",
        seeAlso:[
        ],
        type:"object"
    },
    "method:DrawItem.showContextMenu":{
        ref:"method:DrawItem.showContextMenu",
        flags:"A",
        description:" Executed when the right mouse button is clicked.  The default implementation of\n this method auto-creates a ${isc.DocUtils.linkForRef('class:Menu')} from the ${isc.DocUtils.linkForRef('attr:Canvas.contextMenu')} property on\n this component and then calls ${isc.DocUtils.linkForRef('method:Menu.showContextMenu')} on it to show it.\n <p>\n If you want to show a standard context menu, you can simply define your Menu and set it as the\n contextMenu property on your component - you do not need to override this method.\n <p>\n If you want to do some other processing before showing a menu or do something else entirely, then\n you should override this method.  Note that the return value from this method controls whether or\n not the native browser context menu is shown.\n\n",
        name:"showContextMenu",
        seeAlso:[
            {
                ref:"attr:DrawItem.contextMenu",
                description:null
            },
            {
                ref:"method:Menu.showContextMenu",
                description:null
            },
            {
                ref:"method:Canvas.hideContextMenu",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false == don't show native context menu, true == show native context menu",
            type:"boolean"
        },
        type:"method",
        platformNotes:"On the Mac platform, context menu functionality may be triggered by <code>Command+click</code><br>\n On the Opera browser, context menu functionality may be triggered by <code>Shift+Ctrl+click</code>",
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:CubeGrid.showFacetValueContextMenus":{
        ref:"attr:CubeGrid.showFacetValueContextMenus",
        flags:"IRW",
        description:"If true, show facet value context menus with some built-in operations.\n Otherwise, use generic context menu handling.\n Use this in place of ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} for CubeGrids.",
        name:"showFacetValueContextMenus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "group:workday":{
        ref:"group:workday",
        refs:[
            "attr:Calendar.workdayBaseStyle",
            "attr:Calendar.workdayStart",
            "attr:Calendar.workdayEnd",
            "attr:Calendar.showWorkday",
            "attr:Calendar.workdays",
            "attr:Calendar.scrollToWorkday"
        ],
        name:"workday",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.title":{
        ref:"attr:FacetChart.title",
        flags:"IRW",
        description:"Title for the chart as a whole.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "class:EditTree":{
        methods:[
        ],
        ref:"class:EditTree",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools/EditContext"
        ],
        attrs:[
            "attr:EditTree.rootComponent"
        ],
        description:"A TreeGrid that allows drag and drop creation and manipulation of a tree of \n objects described by DataSources.\n <P>\n Nodes can be added via drag and drop from a ${isc.DocUtils.linkForRef('interface:Palette')} or may be programmatically \n added via ${isc.DocUtils.linkForRef('method:EditContext.addNode','addNode()')}.  Nodes may be dragged within the tree to reparent \n them.\n <P>\n Eligibility to be dropped on any given node is determined by inspecting the\n DataSource of the parent node.  Drop is allowed only if the parent schema has\n a field which accepts the type of the dropped node.\n <P>\n On successful drop, the newly created component will be added to the parent node under the\n detected field.  Array fields, declared by setting\n <code>dataSourceField.multiple:true</code>, are supported.  \n <P>\n An EditTree is initialized by setting ${isc.DocUtils.linkForRef('attr:EditTree.rootComponent')}.  EditTree.data (the\n Tree instance) should never be directly set or looked at.",
        name:"EditTree",
        implementsInterfaces:[
            "EditContext"
        ],
        seeAlso:[
        ],
        type:"class",
        groups:[
            "devTools"
        ]
    },
    "method:DataSource.setTypeOperators":{
        ref:"method:DataSource.setTypeOperators",
        flags:"",
        description:" Set the list of ${isc.DocUtils.linkForRef('type:OperatorId')}s valid for a given FieldType.\n \n",
        name:"setTypeOperators",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"typeName",
                defaultValue:null,
                type:"FieldType | String"
            },
            {
                description:"available Operators",
                optional:false,
                name:"operators",
                defaultValue:null,
                type:"Array[] of OperatorId"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "class:RangeSlider":{
        methods:[
            "method:RangeSlider.changed"
        ],
        ref:"class:RangeSlider",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:RangeSlider.startThumb",
            "attr:RangeSlider.endThumb",
            "attr:RangeSlider.track",
            "attr:RangeSlider.scrollbar",
            "attr:RangeSlider.vertical",
            "attr:RangeSlider.minValue",
            "attr:RangeSlider.maxValue",
            "attr:RangeSlider.startValue",
            "attr:RangeSlider.endValue"
        ],
        description:"A \"double slider\" allowing the user to select a range via two draggable thumbs.",
        name:"RangeSlider",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DynamicForm.longTextEditorThreshold":{
        ref:"attr:DynamicForm.longTextEditorThreshold",
        flags:"IRW",
        description:"When creating form items for fields with text type data, if the specified length of the\n field exceeds this threshold we will create form item of type \n <code>this.longTextEditorType</code> (a TextAreaItem by default), rather than a simple\n text item.  Overridden by explicitly specifying <code>editorType</code> for the field.",
        name:"longTextEditorThreshold",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"255",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "appearance"
        ]
    },
    "classAttr:FileLoader.defaultSkin":{
        ref:"classAttr:FileLoader.defaultSkin",
        flags:"RW",
        description:"Default skin for  ${isc.DocUtils.linkForRef('classMethod:FileLoader.loadISC')}/${isc.DocUtils.linkForRef('classMethod:FileLoader.cacheISC')} to\n use if one is not provided by the user.",
        name:"defaultSkin",
        seeAlso:[
            {
                ref:"classMethod:FileLoader.cacheISC",
                description:null
            },
            {
                ref:"classMethod:FileLoader.loadISC",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"Enterprise\"",
        type:"classAttr",
        definingClass:"class:FileLoader"
    },
    "class:StatefulCanvas":{
        methods:[
            "method:StatefulCanvas.setIgnoreRTL",
            "method:StatefulCanvas.setBaseStyle",
            "method:StatefulCanvas.setState",
            "method:StatefulCanvas.getState",
            "method:StatefulCanvas.setSelected",
            "method:StatefulCanvas.select",
            "method:StatefulCanvas.deselect",
            "method:StatefulCanvas.isSelected",
            "method:StatefulCanvas.getActionType",
            "method:StatefulCanvas.setActionType",
            "method:StatefulCanvas.addToRadioGroup",
            "method:StatefulCanvas.removeFromRadioGroup",
            "method:StatefulCanvas.setDisabled",
            "method:StatefulCanvas.getStateSuffix",
            "method:StatefulCanvas.setIconOrientation",
            "method:StatefulCanvas.setAutoFit",
            "method:StatefulCanvas.getTitle",
            "method:StatefulCanvas.setTitle",
            "method:StatefulCanvas.setIcon",
            "method:StatefulCanvas.setIconStyle"
        ],
        ref:"class:StatefulCanvas",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:StatefulCanvas.title",
            "attr:StatefulCanvas.ignoreRTL",
            "attr:StatefulCanvas.redrawOnStateChange",
            "attr:StatefulCanvas.selected",
            "attr:StatefulCanvas.state",
            "attr:StatefulCanvas.showRollOver",
            "attr:StatefulCanvas.showFocus",
            "attr:StatefulCanvas.showFocused",
            "attr:StatefulCanvas.showFocusedAsOver",
            "attr:StatefulCanvas.showDown",
            "attr:StatefulCanvas.showDisabled",
            "attr:StatefulCanvas.actionType",
            "attr:StatefulCanvas.radioGroup",
            "attr:StatefulCanvas.baseStyle",
            "attr:StatefulCanvas.align",
            "attr:StatefulCanvas.valign",
            "attr:StatefulCanvas.autoFit",
            "attr:StatefulCanvas.icon",
            "attr:StatefulCanvas.iconSize",
            "attr:StatefulCanvas.iconWidth",
            "attr:StatefulCanvas.iconHeight",
            "attr:StatefulCanvas.iconStyle",
            "attr:StatefulCanvas.iconOrientation",
            "attr:StatefulCanvas.iconSpacing",
            "attr:StatefulCanvas.showDisabledIcon",
            "attr:StatefulCanvas.showRollOverIcon",
            "attr:StatefulCanvas.showDownIcon",
            "attr:StatefulCanvas.showSelectedIcon",
            "attr:StatefulCanvas.showFocusedIcon",
            "attr:StatefulCanvas.showRTLIcon",
            "attr:StatefulCanvas.showOverCanvas",
            "attr:StatefulCanvas.overCanvas",
            "attr:StatefulCanvas.overCanvasConstructor",
            "attr:StatefulCanvas.overCanvasDefaults"
        ],
        description:"A component that has a set of possible states, and which presents itself differently according to\n which state it is in.  An example is a button, which can be \"up\", \"down\", \"over\" or \"disabled\".",
        name:"StatefulCanvas",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ComboBoxItem.pickListCriteria":{
        ref:"attr:ComboBoxItem.pickListCriteria",
        flags:"IRWA",
        description:"If this item has a databound pickList (for example ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')} is\n set), this property can be used to provide static filter criteria when retrieving the data\n for the pickList.",
        name:"pickListCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:GridRenderer.fixedColumnWidths":{
        ref:"attr:GridRenderer.fixedColumnWidths",
        flags:"IRWA",
        description:"Should we horizontally clip cell contents, or allow columns to expand horizontally to\n show all contents?<br><br>\n\n If we allow columns to expand, the column width is treated as a minimum.",
        name:"fixedColumnWidths",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "sizing"
        ]
    },
    "attr:FormItem.format":{
        ref:"attr:FormItem.format",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} for numeric or date formatting.  See ${isc.DocUtils.linkForRef('attr:DataSourceField.format')}.",
        name:"format",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:FacetChart.titleProperties":{
        ref:"attr:FacetChart.titleProperties",
        flags:"IRW",
        description:"Properties for title label.",
        name:"titleProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:Canvas.show":{
        ref:"method:Canvas.show",
        flags:"",
        description:" Sets this widget's visibility to \"inherit\", so that it becomes visible if all of its parents\n are visible or it has no parents.\n <P>\n If the widget has not yet been drawn (and doesn't have a parent or master), this method\n calls the draw method as well.\n\n",
        name:"show",
        seeAlso:[
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('showAndHide')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "visibility"
        ]
    },
    "classAttr:Time.UTCHoursOffset":{
        ref:"classAttr:Time.UTCHoursOffset",
        deprecated:"As of 7.0 this attribute has been deprecated in favor of ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone')}",
        flags:"IRA",
        description:"Hour offset from UTC to use when formatting ${isc.DocUtils.linkForRef('type:FieldType','\"datetime\"')} type fields for \n display to the user.\n <P>\n Has no effect on fields specified as logical date (<code>field.type = \"date\";</code>) and\n logical time (<code>field.type = \"time\"</code>) fields.",
        name:"UTCHoursOffset",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:Time"
    },
    "attr:HiliteEditor.callback":{
        ref:"attr:HiliteEditor.callback",
        flags:"IR",
        description:"The callback to fire when ${isc.DocUtils.linkForRef('method:HiliteEditor.saveHilites')} is called.",
        name:"callback",
        seeAlso:[
        ],
        valueType:"Callback",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteEditor"
    },
    "attr:DynamicForm.nestedEditorType":{
        ref:"attr:DynamicForm.nestedEditorType",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('class:FormItem')} class to use for any singular (ie, non-list) complex fields \n on this DynamicForm.",
        name:"nestedEditorType",
        seeAlso:[
            {
                ref:"attr:DynamicForm.nestedListEditorType",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"NestedEditorItem\"",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:Canvas.focusInNextTabElement":{
        ref:"method:Canvas.focusInNextTabElement",
        flags:"",
        description:" Shifts focus to the next focusable element after this one.  This is the programmatic \n equivalent of the user pressing the Tab key.  A \"focusable element\" is a ${isc.DocUtils.linkForRef('class:Canvas')}\n or ${isc.DocUtils.linkForRef('class:FormItem')} that is ${isc.DocUtils.linkForRef('attr:Canvas.canFocus','focusable')}, and is not  \n ${isc.DocUtils.linkForRef('attr:FormItem.disabled','disabled')} or ${isc.DocUtils.linkForRef('method:Canvas.showClickMask','masked')}.  Note that the \n movement of focus to a <code>FormItem</code> is managed by the containing \n ${isc.DocUtils.linkForRef('class:DynamicForm')}; calling this method on a <code>DynamicForm</code> will move the \n focus to the next focusable <code>FormItem</code> in the form if there is one, and onto the\n next focusable <code>Canvas</code> if not.\n <p>\n <b>NOTE: </b>This method only considers SmartClient elements.  Native elements that you \n create directly - for example, with ${isc.DocUtils.linkForRef('method:HTMLFlow.setContents')} or by creating a custom\n widget with ${isc.DocUtils.linkForRef('method:Canvas.getInnerHTML')} that has focusable elements that are not child\n Canvases - will not be noticed by this method.\n\n",
        name:"focusInNextTabElement",
        seeAlso:[
            {
                ref:"attr:Canvas.tabIndex",
                description:null
            },
            {
                ref:"method:Canvas.focusInPreviousTabElement",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "classAttr:Chart.allChartTypes":{
        ref:"classAttr:Chart.allChartTypes",
        flags:"R",
        description:"All ${isc.DocUtils.linkForRef('type:ChartType','ChartTypes')} that are supported by this class.\n Should be defined by concrete implementations of the charting interface.",
        name:"allChartTypes",
        seeAlso:[
        ],
        valueType:"Array of ChartType",
        defaultValue:"[]",
        type:"classAttr",
        definingClass:"interface:Chart"
    },
    "attr:CubeGrid.chartType":{
        ref:"attr:CubeGrid.chartType",
        flags:"IRW",
        description:"Default type of chart to plot.",
        name:"chartType",
        seeAlso:[
        ],
        valueType:"ChartType",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "classAttr:LoginDialog.USERNAME_TITLE":{
        ref:"classAttr:LoginDialog.USERNAME_TITLE",
        flags:"IRW",
        description:"Default title for the ${isc.DocUtils.linkForRef('attr:LoginDialog.usernameItem','\"usernameItem\"')} field in the\n dialog displayed by ${isc.DocUtils.linkForRef('classMethod:isc.showLoginDialog')}.",
        name:"USERNAME_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Username\"",
        type:"classAttr",
        definingClass:"class:LoginDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.setEditValues":{
        ref:"method:ListGrid.setEditValues",
        flags:"",
        description:"\n This method sets up a set of editValues for some row / cell.  It differs from\n 'setEditValue()' in that:<br>\n &nbsp;- it takes values for multiple fields<br>\n &nbsp;- it clears out any previous edit values for the record<br>\n\n",
        name:"setEditValues",
        seeAlso:[
        ],
        params:[
            {
                description:"Row number for the record being edited",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"New values for the row",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DynamicForm.requiredRightTitlePrefix":{
        ref:"attr:DynamicForm.requiredRightTitlePrefix",
        flags:"IRW",
        description:"The string prepended to the title of every required item in this form if\n ${isc.DocUtils.linkForRef('attr:DynamicForm.hiliteRequiredFields')} is true and the ${isc.DocUtils.linkForRef('type:TitleOrientation')} property is set to \"right\".",
        name:"requiredRightTitlePrefix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&lt;b&gt;:&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "method:ValuesManager.getMembers":{
        ref:"method:ValuesManager.getMembers",
        flags:"",
        description:"  Retrieves an array of pointers to all the members for this valuesManager.\n",
        name:"getMembers",
        seeAlso:[
        ],
        returns:{
            description:"array of member forms",
            type:"array"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "members"
        ]
    },
    "method:GridRenderer.getCellRecord":{
        ref:"method:GridRenderer.getCellRecord",
        flags:"",
        description:" Return the record that holds the value for this cell.\n <P>\n Implementing <code>getCellRecord</code> is optional: the actual HTML placed into each\n grid cell comes from <code>getCellValue</code>, and a valid grid can be created without any\n notion of \"records\" at all.\n <p>\n If you do implement <code>getCellRecord</code>, the value you return is passed to you as the\n \"record\" parameter in other methods.\n\n",
        name:"getCellRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"record for this cell",
            type:"object"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:TextAreaItem.deselectValue":{
        ref:"method:TextAreaItem.deselectValue",
        flags:"",
        description:" If this item currently has focus, clear the current selection. leaving focus in the item.\n Has no effect if the item is undrawn or unfocused.\n Only applies to text-based items.\n",
        name:"deselectValue",
        seeAlso:[
        ],
        params:[
            {
                description:"By default the text insertion cursor will be moved to the end of the   current value - pass in this parameter to move to the start instead",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:TextAreaItem"
    },
    "attr:ListGrid.validateOnChange":{
        ref:"attr:ListGrid.validateOnChange",
        flags:"IRW",
        description:"If true, validation will be performed on each edited cell when each editor's\n \"change\" handler is fired.",
        name:"validateOnChange",
        seeAlso:[
            {
                ref:"attr:ListGridField.validateOnChange",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "attr:ListGridField.exportRawValues":{
        ref:"attr:ListGridField.exportRawValues",
        flags:"IR",
        description:"Dictates whether the data in this field should be exported raw by\n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData()')}.  If set to true for a\n field, the values in the field-formatters will not be executed for data in this field.\n Decreases the time taken for large exports.",
        name:"exportRawValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:FormItem.shouldApplyHeightToTextBox":{
        ref:"method:FormItem.shouldApplyHeightToTextBox",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:FormItem.height')} is specified, should it be applied to the\n item's text box element? If this method returns false, the\n text box will not have an explicit height applied, though the containing cell\n will be sized to accomodiate any specified height.\n <P>\n This is used in cases where the text box does not have distinctive styling\n (for example in standard ${isc.DocUtils.linkForRef('class:StaticTextItem')}s). As the textBox has no explicit\n height, it fits the content. Since the text box is not visually distinct to \n the user, this makes ${isc.DocUtils.linkForRef('attr:FormItem.vAlign')} behave as expected with the \n text value of the item being vertically aligned within the cell.\n <P>\n Default implementation will return ${isc.DocUtils.linkForRef('attr:FormItem.applyHeightToTextBox')} if explicitly set\n otherwise <code>false</code> if ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay')} is set to \n <code>\"static\"</code> and the item is ${isc.DocUtils.linkForRef('method:FormItem.getCanEdit','not editable')}, otherwise\n true.\n",
        name:"shouldApplyHeightToTextBox",
        seeAlso:[
        ],
        returns:{
            description:"true if the height should be written into the items' text box.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:ResultSet.fetchMode":{
        ref:"attr:ResultSet.fetchMode",
        flags:"IRA",
        description:"Mode of fetching records from the server. If unset, will default to <code>\"local\"</code>\n if ${isc.DocUtils.linkForRef('attr:ResultSet.allRows')} is specified, otherwise <code>\"paged\"</code>.",
        name:"fetchMode",
        seeAlso:[
            {
                ref:"type:FetchMode",
                description:null
            }
        ],
        valueType:"FetchMode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "fetching"
        ]
    },
    "type:DSServerType":{
        ref:"type:DSServerType",
        values:[
            {
                description:"Use SmartClient's ${isc.DocUtils.linkForRef('group:sqlDataSource','built-in SQL connectors')} to talk directly\n to relational databases.",
                value:"\"sql\""
            },
            {
                description:"Use Hibernate, either using a real mapped bean or by automatically generating a \n Hibernate configuration based on a SmartClient DataSource file \n (<i>dataSourceID</i>.ds.xml).  See ${isc.DocUtils.linkForRef('group:hibernateIntegration')} for details.",
                value:"\"hibernate\""
            },
            {
                description:"Use SmartClient's built-in JPA 2.0 connector.",
                value:"\"jpa\""
            },
            {
                description:"Use SmartClient's built-in JPA 1.0 connector.",
                value:"\"jpa1\""
            },
            {
                description:"Requests will be delivered to the server and you are expected to write Java code to\n create a valid response.  Throws an error if the server side method dsRequest.execute()\n is called. This is appropriate if you intend an entirely custom implementation, and you\n want an error thrown if there is an attempt to call an operation you have not\n implemented.",
                value:"\"generic\""
            }
        ],
        description:"Indicates what SmartClient Server will do with a DataSource request if you call\n dsRequest.execute() in server code.\n <P>\n If you use a Java-based persistence layer not provided by SmartClient, such as\n EJB or your own custom object model, you don't need to set\n <code>dataSource.serverType</code> and should follow the\n ${isc.DocUtils.linkForRef('group:serverDataIntegration','integration instructions')}.",
        name:"DSServerType",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed",
        groups:[
            "serverDataIntegration"
        ]
    },
    "attr:CubeGrid.rollupValue":{
        ref:"attr:CubeGrid.rollupValue",
        flags:"IR",
        getter:[
            "getRollupValue"
        ],
        description:"facetValueId of the default rollupValue for each facet.  Can be overridden per facet via\n facet.rollupValue.",
        name:"rollupValue",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"sum\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:validatorDefinition.defaultErrorMessage":{
        ref:"attr:validatorDefinition.defaultErrorMessage",
        flags:"IR",
        description:"Default error message to be shown when validator fails validation. Can be overridden\n for an individual validator by setting ${isc.DocUtils.linkForRef('attr:Validator.errorMessage')}.",
        name:"defaultErrorMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:validatorDefinition"
    },
    "attr:FacetChart.xAxisMetric":{
        ref:"attr:FacetChart.xAxisMetric",
        flags:"IR",
        description:"For scatter charts only, the \"id\" of the metric facet value to use for the x-axis.\n <p>\n The default x-axis metric is the second value of the metric facet.",
        name:"xAxisMetric",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DrawGroup.rotateTo":{
        ref:"method:DrawGroup.rotateTo",
        flags:"",
        description:" Rotate each item in the group to the specified number of degrees.\n\n",
        name:"rotateTo",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"degrees",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "method:MenuItem.action":{
        ref:"method:MenuItem.action",
        flags:"",
        description:" Action to fire when this menu is activated.\n",
        name:"action",
        seeAlso:[
        ],
        type:"method",
        definingClass:"object:MenuItem",
        groups:[
            "menuBasic"
        ]
    },
    "attr:FormulaBuilder.field":{
        ref:"attr:FormulaBuilder.field",
        flags:"IR",
        description:"The Field object representing the field being created or edited.",
        name:"field",
        seeAlso:[
        ],
        valueType:"Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "classMethod:Page.setAppFilesDir":{
        ref:"classMethod:Page.setAppFilesDir",
        flags:"",
        description:" Specify the directory for miscellaneous app-specific files <b>other than</b> images, such as\n ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL','HTML fragments')}, ${isc.DocUtils.linkForRef('class:ViewLoader','loadable views')}, \n XML or JSON flat data files, videos, etc.\n <P>\n This URL also becomes available via the prefix \"[APPFILES]\" for ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL')}.\n <P>\n Defaults to the value of ${isc.DocUtils.linkForRef('classMethod:Page.getAppDir')}, that is, the current directory.\n\n",
        name:"setAppFilesDir",
        seeAlso:[
        ],
        params:[
            {
                description:"New app files URL.",
                optional:true,
                name:"URL",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "attr:DateChooser.alternateWeekStyles":{
        ref:"attr:DateChooser.alternateWeekStyles",
        flags:"IRW",
        description:"Whether alternating weeks should be drawn in alternating styles. If enabled, the cell style\n for alternate rows will have ${isc.DocUtils.linkForRef('attr:DateChooser.alternateStyleSuffix')} appended to it.",
        name:"alternateWeekStyles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DetailViewer.hiliteIconPosition":{
        ref:"attr:DetailViewer.hiliteIconPosition",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons','hiliteIcons')} are present, where the hilite icon will be placed \n relative to the field value.  See ${isc.DocUtils.linkForRef('type:HiliteIconPosition')}. Can be overriden at the\n field level.",
        name:"hiliteIconPosition",
        seeAlso:[
        ],
        valueType:"HiliteIconPosition",
        defaultValue:"\"before\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "hiliting"
        ]
    },
    "attr:Menu.fields":{
        ref:"attr:Menu.fields",
        flags:"IRWA",
        description:"Array of columns to show for this menu.<br>\n Standard menu fields may be included by specifying ${isc.DocUtils.linkForRef('type:MenuFieldID','MenuFieldIDs')}\n directly. Additional custom fields may be specified as ${isc.DocUtils.linkForRef('object:ListGridField')} objects.<br>\n If this property is unset, default behavior will show the\n ${isc.DocUtils.linkForRef('type:MenuFieldID','standard set of fields')}, with the exception of any that have\n been suppressed via ${isc.DocUtils.linkForRef('attr:Menu.showIcons')}, ${isc.DocUtils.linkForRef('attr:Menu.showKeys')} and ${isc.DocUtils.linkForRef('attr:Menu.showSubmenus')}",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of MenuFieldID | Array of ListGridFields",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('menuColumns')}"
        ],
        definingClass:"class:Menu"
    },
    "method:Number.toCurrencyString":{
        ref:"method:Number.toCurrencyString",
        deprecated:"Moved to a static method on NumberUtil to avoid the possibility of collision               with other libraries on the native Number object",
        flags:"",
        description:" Return this number as a currency-formatted string.\n\n",
        name:"toCurrencyString",
        seeAlso:[
        ],
        params:[
            {
                description:"Currency symbol, can be set to an empty string.                                 If unset <code>\"$\"</code> will be used.",
                optional:true,
                name:"currencyChar",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Decimal separator symbol. If unset <code>\".\"</code> will be used.",
                optional:true,
                name:"decimalChar",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Should decimal portion be padded out to two digits? True                               by default.",
                optional:true,
                name:"padDecimal",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"Should currency symbol come at the end of the string?                                      If unspecified, currency symbol will be shown at the \n                                      beginning of the string.",
                optional:true,
                name:"currencyCharLast",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"Currency-formatted string version of the number",
            type:"string"
        },
        type:"method",
        definingClass:"object:Number",
        groups:[
            "stringProcessing"
        ]
    },
    "attr:PickList.pickListFields":{
        ref:"attr:PickList.pickListFields",
        flags:"IRA",
        description:"This property allows the developer to specify which field[s] will be displayed in the \n drop down list of options.\n <P>\n Only applies to databound pickLists (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}, or pickLists\n with custom data set up via the advanced ${isc.DocUtils.linkForRef('method:PickList.getClientPickListData')} method.\n <P>\n If this property is unset, we display the ${isc.DocUtils.linkForRef('attr:PickList.displayField')}, if specified, \n otherwise the ${isc.DocUtils.linkForRef('attr:PickList.valueField')}.\n <P>\n If there are multiple fields, column headers will be shown for each field, the\n height of which can be customized via the ${isc.DocUtils.linkForRef('attr:PickList.pickListHeaderHeight')} attribute.\n <P>\n Each field to display should be specified as a ${isc.DocUtils.linkForRef('object:ListGridField')} object. Note that\n unlike in ${isc.DocUtils.linkForRef('class:ListGrid','listGrids')}, dataSource fields marked as \n ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden','hidden:true')} will be hidden by default in pickLists. To\n override this behavior, ensure that you specify an explicit value for \n ${isc.DocUtils.linkForRef('method:ListGridField.showIf','showIf')}.",
        name:"pickListFields",
        seeAlso:[
            {
                ref:"attr:PickList.valueField",
                description:null
            },
            {
                ref:"attr:PickList.pickListHeaderHeight",
                description:null
            }
        ],
        valueType:"Array of ListGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:TreeGrid.folderOpenImage":{
        ref:"attr:TreeGrid.folderOpenImage",
        deprecated:"as part of SmartClient release 5.5 in favor of ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')}",
        flags:"IRW",
        description:"The filename of the default icon for all open folder nodes in this treeGrid.",
        name:"folderOpenImage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "type:LoadState":{
        ref:"type:LoadState",
        values:[
            {
                description:"children have not been loaded and are not loading",
                value:"Tree.UNLOADED"
            },
            {
                description:"currently in the process of loading",
                value:"Tree.LOADING"
            },
            {
                description:"folders only are already loaded",
                value:"Tree.FOLDERS_LOADED"
            },
            {
                description:"already fully loaded",
                value:"Tree.LOADED"
            },
            {
                description:"children form a ResultSet having only a partial\t\t\t\t\t\t\t\t\t\t\t\tcache (applies only to the \"paged\"\n\t\t\t\t\t\t\t\t\t\t\t\t${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode','fetchMode')})",
                value:"Tree.LOADED_PARTIAL_CHILDREN"
            }
        ],
        description:"Trees that dynamically load nodes keep track of whether each node has loaded its children.",
        name:"LoadState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "loadState"
        ]
    },
    "method:FacetChart.getChartCenter":{
        ref:"method:FacetChart.getChartCenter",
        flags:"",
        description:" Returns the centerpoint for radar charts and pie charts.\n <P>\n Note that unstacked pie charts draw multiple pies, each with their own centers.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getChartCenter",
        seeAlso:[
        ],
        returns:{
            description:"the centerpoint for radar charts and pie charts.",
            type:"Point"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:TreeGrid.getCellAlign":{
        ref:"method:TreeGrid.getCellAlign",
        flags:"",
        description:" Return the horizontal alignment for cell contents. Default implementation will always\n left-align the special ${isc.DocUtils.linkForRef('attr:TreeGridField.treeField')} [or right-align if the page is in\n RTL mode] - otherwise will return ${isc.DocUtils.linkForRef('attr:ListGridField.cellAlign')} if specified, otherwise\n ${isc.DocUtils.linkForRef('attr:ListGridField.align')}.\n\n\n",
        name:"getCellAlign",
        seeAlso:[
        ],
        params:[
            {
                description:"this cell's record",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Horizontal alignment of cell contents: 'right', 'center', or 'left'",
            type:"Alignment"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:ComboBoxItem.canEditCriterion":{
        ref:"method:ComboBoxItem.canEditCriterion",
        flags:"",
        description:" This method is overridden in comboBoxItem. When addUnknownValues is true, \n comboBoxItems allow the user to edit substring match type criteria applied to the\n display field (if one is specified).\n <P>\n The user can also edit criteria attempting to match exactly against the item's field name.\n\n",
        name:"canEditCriterion",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ComboBoxItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:RPCResponse.data":{
        ref:"attr:RPCResponse.data",
        flags:"R",
        description:"The data sent by the server.\n <P>\n When communicating with the SmartClient server, rpcResponse.data is the data passed to the\n server-side method RPCResponse.setData() by your Java code.\n <smartclient>This data is translated into JavaScript\n objects by the rules described under ${isc.DocUtils.linkForRef('attr:RPCRequest.data')}.</smartclient>\n <smartgwt>This data is translated into JavaScript\n objects by the rules described under ${isc.DocUtils.linkForRef('attr:RPCRequest.data')}. Simple types (Numeric values,\n Strings, Dates, Booleans) will be available as their equivalent Java types in your\n client side GWT code. Complex objects (such as serialized Maps or Lists from the server)\n will not be automatically translated back into Java on the client - they will arrive as\n <code>JavaScriptObject</code> instances. You can easily convert\n to the appropriate type yourself using the <code>JSOHelper</code> class. The \n +sgwtLink{JSOHelper.convertToJava()} method performs a recursive conversion of JavaScriptObjects\n returning a List (or array) for JavaScript arrays or a Map for simple\n JavaScript objects (key:value pairs).\n </smartgwt>\n <P>\n When not communicating with the SmartClient server rpcResponse.data contains the\n raw HTTP response body. See ${isc.DocUtils.linkForRef('attr:RPCRequest.useSimpleHttp')},\n ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')}, ${isc.DocUtils.linkForRef('attr:RPCRequest.evalResult')} for details.",
        name:"data",
        seeAlso:[
        ],
        valueType:"String | Object",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCResponse"
    },
    "attr:Canvas.animateRectTime":{
        ref:"attr:Canvas.animateRectTime",
        flags:"IRWA",
        description:"Default time for performing an animated setRect.  If unset, <code>this.animateTime</code>\n will be used by default instead",
        name:"animateRectTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:FacetChart.showRadarGradationLabels":{
        ref:"attr:FacetChart.showRadarGradationLabels",
        flags:"IR",
        description:"Whether to show gradation labels in radar charts.",
        name:"showRadarGradationLabels",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:RichTextEditor.styleControls":{
        ref:"attr:RichTextEditor.styleControls",
        flags:"IRA",
        description:"Default text styling control group. Consists of an array of ${isc.DocUtils.linkForRef('type:ControlName')}s\n and/or ${isc.DocUtils.linkForRef('class:Canvas')} instances. To display this group of controls for some RichTextEditor,\n include <code>\"styleControls\"</code> in the ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')} array.",
        name:"styleControls",
        seeAlso:[
        ],
        valueType:"Array of ControlName",
        defaultValue:"[\"boldSelection\", \"italicSelection\", \"underlineSelection\"]",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "attr:ResultTree.dataSource":{
        ref:"attr:ResultTree.dataSource",
        flags:"IR",
        description:"What ${isc.DocUtils.linkForRef('class:DataSource')} is this resultTree associated with?",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataSourceFields')}"
        ],
        definingClass:"class:ResultTree",
        groups:[
            "databinding"
        ]
    },
    "method:DrawRect.getCenter":{
        ref:"method:DrawRect.getCenter",
        flags:"",
        description:" Get the center point of the rectangle.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the center point",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:Window.showModalMask":{
        ref:"attr:Window.showModalMask",
        flags:"IR",
        description:"If true, displays a translucent mask over the rest of the page when a modal window\n is displayed.",
        name:"showModalMask",
        seeAlso:[
            {
                ref:"attr:Window.modalMask",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "modal",
            "appearance"
        ]
    },
    "attr:Window.contentsType":{
        ref:"attr:Window.contentsType",
        flags:"IR",
        description:"If this window has ${isc.DocUtils.linkForRef('attr:Window.src')} specified, this property can be used to indicate\n whether the source is a standalone HTML page or an HTML fragment.\n <P>\n This is similar to the ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsType')} property - be sure to read the\n HTMLFlow documentation to understand circumstances where contentsType:\"page\" is\n <b>unsafe and not recommended</b>.",
        name:"contentsType",
        seeAlso:[
            {
                ref:"attr:Window.src",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"page\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "method:FacetChart.getLegendHoverHTML":{
        ref:"method:FacetChart.getLegendHoverHTML",
        flags:"",
        description:" Called when the mouse hovers over a color swatch or its label in the legend area of the\n chart.\n <p>\n The ${isc.DocUtils.linkForRef('class:FacetValue')} that the user is hovering over is provided.\n If the chart is a ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis chart')}, the\n ${isc.DocUtils.linkForRef('class:FacetValue')} for the hovered-over metric will also be provided.\n\n",
        name:"getLegendHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValue that the mouse is over",
                optional:false,
                name:"facetValue",
                defaultValue:null,
                type:"FacetValue"
            },
            {
                description:"for a multi-axis chart, facetValue representing        the hovered-over metric.  Null if chart is not multi-axis",
                optional:false,
                name:"metricFacetValue",
                defaultValue:null,
                type:"FacetValue"
            }
        ],
        returns:{
            description:"hover text to be shown.  Return null to avoid a hover being shown",
            type:"HTMLString"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drillCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "attr:SelectItem.pickListFields":{
        ref:"attr:SelectItem.pickListFields",
        flags:"IRA",
        description:"This property allows the developer to specify which field[s] will be displayed in the \n drop down list of options.\n <P>\n Only applies to databound pickLists (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}, or pickLists\n with custom data set up via the advanced ${isc.DocUtils.linkForRef('method:PickList.getClientPickListData')} method.\n <P>\n If this property is unset, we display the ${isc.DocUtils.linkForRef('attr:PickList.displayField')}, if specified, \n otherwise the ${isc.DocUtils.linkForRef('attr:PickList.valueField')}.\n <P>\n If there are multiple fields, column headers will be shown for each field, the\n height of which can be customized via the ${isc.DocUtils.linkForRef('attr:PickList.pickListHeaderHeight')} attribute.\n <P>\n Each field to display should be specified as a ${isc.DocUtils.linkForRef('object:ListGridField')} object. Note that\n unlike in ${isc.DocUtils.linkForRef('class:ListGrid','listGrids')}, dataSource fields marked as \n ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden','hidden:true')} will be hidden by default in pickLists. To\n override this behavior, ensure that you specify an explicit value for \n ${isc.DocUtils.linkForRef('method:ListGridField.showIf','showIf')}.",
        name:"pickListFields",
        seeAlso:[
            {
                ref:"attr:SelectItem.valueField",
                description:null
            },
            {
                ref:"attr:PickList.pickListHeaderHeight",
                description:null
            }
        ],
        valueType:"Array of ListGridField",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('relatedRecords')}"
        ],
        definingClass:"class:SelectItem"
    },
    "attr:IconButton.valign":{
        ref:"attr:IconButton.valign",
        flags:"IRW",
        description:"Vertical alignment of this button's content.  If unset, \n ${isc.DocUtils.linkForRef('attr:IconButton.orientation','vertical buttons')} are top-aligned and horizontal\n buttons center-aligned by default.",
        name:"valign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton",
        groups:[
            "appearance"
        ]
    },
    "method:DynamicForm.getValue":{
        ref:"method:DynamicForm.getValue",
        flags:"",
        description:"  Returns the value stored in the form for some field.\n  Shorthand for dynamicForm.getValues()[fieldName];\n",
        name:"getValue",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the field for which you're retrieving a value. Nested          values may be retrieved by passing in a ${isc.DocUtils.linkForRef('type:DataPath')}",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"value of the field",
            type:"any"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dateItem')}"
        ],
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "attr:ListGridField.iconWidth":{
        ref:"attr:ListGridField.iconWidth",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.icon')} is specified, this property can be used to specify the\n width of the icon to be displayed in the ListGrid header button.\n (See ${isc.DocUtils.linkForRef('attr:StatefulCanvas.iconWidth')})<br>\n If this field is editable, and ${isc.DocUtils.linkForRef('attr:ListGridField.editorIconWidth')} is unset, this\n property will be passed onto the editors for this field as ${isc.DocUtils.linkForRef('attr:FormItem.iconWidth')},\n which will effect the default size for ${isc.DocUtils.linkForRef('attr:ListGridField.icons','icons')} displayed\n in the editor.",
        name:"iconWidth",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            },
            {
                ref:"attr:ListGridField.icons",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ListGrid.showRecordComponentsByCell":{
        ref:"attr:ListGrid.showRecordComponentsByCell",
        flags:"IRWA",
        description:"If true, shows ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponents')} in cells, rather\n than just in records.",
        name:"showRecordComponentsByCell",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:FormItem.setShowDisabled":{
        ref:"method:FormItem.setShowDisabled",
        flags:"",
        description:" Setter method for ${isc.DocUtils.linkForRef('attr:FormItem.showDisabled')}\n",
        name:"setShowDisabled",
        seeAlso:[
        ],
        params:[
            {
                description:"new showDisabled setting",
                optional:false,
                name:"showDisabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:ColumnTree.filterData":{
        ref:"method:ColumnTree.filterData",
        flags:"",
        description:" Retrieves data that matches the provided criteria and displays the matching data in this\n component.\n <P>\n This method behaves exactly like ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} except that\n ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')} is automatically set to \"substring\" so that String-valued\n fields are matched by case-insensitive substring comparison.\n\n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria.                       If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed in as this argument\n                      instead of a raw criteria object, will be derived by calling\n                      ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete.  Fires                                          only if server contact was required; see\n                                          ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} for details",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"for databound components only - optional                            additional properties to set on the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:DetailViewerField.showIf":{
        ref:"method:DetailViewerField.showIf",
        flags:"",
        description:"\n If specified on a field, this method is evaluated at draw time to determine whether or\n not to show this particular field.\n <p>\n This method can be specified either as a function or a string that will be\n auto-converted to a function.\n\n",
        name:"showIf",
        seeAlso:[
        ],
        params:[
            {
                description:"The DetailViewer",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"DetailViewer"
            },
            {
                description:null,
                optional:false,
                name:"valueList",
                defaultValue:null,
                type:"List of DetailViewerRecord"
            }
        ],
        returns:{
            description:"true to show the field, false to not show it.",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:DetailViewerField"
    },
    "attr:FormulaBuilder.helpIcon":{
        ref:"attr:FormulaBuilder.helpIcon",
        flags:"IRA",
        description:"Icon that appears after the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.formulaField')}, showing help on hover.",
        name:"helpIcon",
        seeAlso:[
        ],
        valueType:"AutoChild FormItemIcon",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "group:i18n":{
        ref:"group:i18n",
        title:"Internationalization and Localization",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"<b><u>Internationalizing SmartClient Applications</u></b>\n <p>\n Internationalizing a SmartClient application involves creating locale-specific\n versions of all strings, images, and possibly colors.  In some cases, component layout may\n be affected as well (for example date field order differs between some locales).\n <p>\n <u><b>Character Encodings</b></u>\n <p>\n In order to deliver content in different languages to the browser and have it be displayed\n correctly, it is important that the browser and server agree on the character encoding being\n used to send the page.  \n <p>\n Generally speaking, you can use whatever character encoding you prefer, so long as\n you're consistent about serving your files to the browser with exactly the same encoding\n as was used to save the file to disk.  Keep in mind though that the character encoding you\n choose must be supported by all browsers you intend to support.  Isomorphic recommends that,\n where possible, you use the UTF-8 encoding.  Regardless of which character encoding you\n choose, keep in mind that for the browser to correctly display non-ASCII characters, you\n <b>must</b> explicitly set the character encoding of your page to match the encoding you\n used to save the file.  Browsers have built-in heuristics to guess the character encoding,\n but they can't be relied upon to work 100% of the time.\n <p>\n There are two ways to explicitly tell the browser what character\n encoding is being used for a given page.  One is to set the \"Content-Type\" HTTP header, for\n example:\n <pre>\n Content-Type: text/html; charset=UTF-8\n </pre>\n If you're using JSP on the back-end, you can set this header as follows:\n <pre>\n &lt;%@ page contentType=\"text/html; charset=UTF-8\"%&gt;\n </pre>\n Or using Java Servlet APIs in a Servlet as follows:\n <pre>\n response.setContentType(\"text/html; charset=UTF-8\");\n </pre>\n Note that the latter needs to be done before any content is written to the response output\n stream.\n <p>\n The other approach to setting the content encoding is to use an HTML META tag to embed it\n in the page itself (note that this applies to HTML documents only).  The META tag must go\n inside the &lt;HEAD&gt; HTML element - e.g. as follows:\n <pre>\n &lt;HEAD&gt;\n &lt;META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=UTF-8\"&gt;\n &lt;/HEAD&gt;\n </pre>\n In addition, for a .html or other static (non-.jsp) file, you must also ensure that the file\n itself is saved in UTF-8 encoding.  Advanced text editors (including the Eclipse IDE) can\n show you the encoding of a text file and allow you to change it.  In Eclipse this is in the\n Preferences area (search for \"Encoding\") and UTF-8 is <b>not the default</b> for .html\n files, and should be changed.\n <P>\n Isomorphic recommends that you follow <b>all</b> of the above approaches for maximum\n compatibility.  For example, if you omit the META tag approach, pages saved by the user\n using the browser save function may not render correctly when subsequently read from disk\n because HTTP headers are not available in that context.  Conversely, not providing the\n HTTP header or not saving the file in UTF-8 can result in application servers delivering the\n file in the encoding in which it is saved, or in their own default and incorrect content\n encoding.\n <p>\n If you're using a given character encoding pervasively in your pages, you can also configure\n your web server or application server to use that character encoding as the default for all\n pages of a given mime type or some other criteria (depending on the capability of your\n server) - for example on a per-directory basis.\n <p>\n For more information on character encodings, character sets, and working with HTML, please\n see W3C's tutorial here:\n <a href='http://www.w3.org/International/tutorials/tutorial-char-enc/' target='_blank'>http://www.w3.org/International/tutorials/tutorial-char-enc/</a>\n <p>\n <b>NOTE: Default Encoding</b>\n <p>\n As mentioned above, Isomorphic recommends the use of UTF-8 encoding.  However, it is \n not possible to configure some servlet engines to do this by default.  Both Tomcat and Jetty \n default to the ISO-8859-1 character set (commonly known as Latin-1), even if the Java VM \n specifies a different encoding (the Tomcat documentation claims that this behavior is a \n requirement of the Servlet specification).\n <p>\n To work around this, we change charset encoding to UTF-8 on every request/response that \n goes through two core Isomorphic servlets: <code>IDACall</code> and <code>DataSourceLoader</code>.\n If you need to change this, you can do so by adding <code>init-param</code> settings to your\n <code>web.xml</code> file.  Please see the Javadocs for those two servlets for examples of \n how to do this.\n <p>\n <u><b>Framework Message Localization</b></u>\n <p>\n SmartClient components include standard prompts and error messages in various cases, and all\n such messages support localization.\n <P>\n <smartclient>\n Language packs are included in the directory smartclientSDK/isomorphic/locales.  To load a\n language pack, simply include the desired locale via a\n standard HTML &lt;script src=&gt; tag, for example: \n <pre>\n    &lt;SCRIPT SRC=\"isomorphic/locales/frameworkMessages_pt.properties\"&gt;&lt;/SCRIPT&gt;\n </pre>\n .. to load the Portuguese locale. To see various locales, have a look at the \n ${isc.DocUtils.linkForExampleId('changeLocales', 'Localization example')}.\n </smartclient>\n <smartgwt>\n SmartGWT ships with pre-built language packs for many languages.  These are automatically \n used by the framework: all you have to do is ensure that the appropriate locale has been\n set using one of the \n <a href=https://developers.google.com/web-toolkit/doc/latest/DevGuideI18nLocale#LocaleSpecifying>standard GWT mechanisms</a>.\n In brief, either:<ul>\n <li>Add a meta tag to your bootstrap page: <code>&lt;meta name=\"gwt:property\" content=\"locale=ja_JP\"&gt;</code></li>\n <li>Specify the locale in a query parameter: <code>http://www.example.org/myapp.html?locale=fr_CA</code></li>\n </ul>\n </smartgwt>\n <P>\n If you find that the language pack you are using has any incorrect or missing translations,\n or you want to add a new language pack, please visit\n <a href='http://forums.smartclient.com/showthread.php?t=9987' target='_blank'>this forums thread</a> for\n instructions on how to contribute translations so that they will be added to future\n SmartClient builds.\n <P>\n You can alternatively maintain your own private additions or overrides to the default\n language packs.\n <smartclient>\n A complete list of standard messages is presented ${isc.DocUtils.linkForRef('group:i18nMessages','here')}.<br>\n To customize these messages, use ${isc.DocUtils.linkForRef('method:Class.addProperties')} or\n ${isc.DocUtils.linkForRef('classMethod:Class.addClassProperties')} to override default values at the instance or class level\n respectively.  For example, the class property\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.timeoutErrorMessage')} is displayed to the user in a warning dialog\n when a SmartClient operation fails to complete.  This can be modified using the\n ${isc.DocUtils.linkForRef('classMethod:Class.addClassProperties')} method, as follows:\n <pre>\n isc.RPCManager.addClassProperties({timeoutErrorMessage:\"Custom Timeout Message\"});\n </pre>\n </smartclient>\n <smartgwt>\n Use the standard GWT technique for selectively overriding Messages: create a\n subclass of <code>SmartGwtMessages</code> that overrides specific methods, and a \n .properties file with your overridden messages.  Then create your overridden Messages\n instance and call <code>I18nUtil.initMessages()</code> with it.  For example:\n <pre>\n    public class CustomizedSgwtMessages extends com.smartgwt.client.i18n.SmartGwtMessages {\n       // override button_title\n       String button_title();\n    }\n   \n    // then in a new file CustomizedSgwtMessages.properties\n    button_title=My Title\n\n    // and in a new file CustomizedSgwtMessages_fr.properties\n    button_title=French translation\n\n    // then in your onModuleLoad() call\n    CustomizedSgwtMessages myMessages = GWT.create(CustomizedSgwtMessages);\n    I18nUtil.initMessages(myMessages);\n </pre>\n </smartgwt>\n <p>\n <u><b>Application Message Localization</b></u>\n <p>\n <smartclient>\n Text such as button titles typically appears in the middle of JavaScript code:\n <pre>\n     isc.Button.create({ title: \"Click me!\"});\n </pre>\n If you are on the Java platform and your JavaScript code appears in a .jsp, you can use the\n JSTL Core package (Java Server Pages Standard Tag Library) to replace that static \"Click\n me!\" text with a localized reference.  This can be done as follows:\n <pre>\n     &lt;%@ taglib prefix=\"fmt\" uri=\"/WEB-INF/fmt.tld\" %&gt;\n     &lt;SCRIPT&gt;\n     isc.Button.create({ title: &lt;fmt:message key=\"buttonTitle\"&gt; });\n     &lt;/SCRIPT&gt;\n </pre>\n Assuming you've set the current Locale and provided a resource bundle with the relevant\n translated text, the above would create a button with a title that comes from the locale-specific\n bundle you provided.  For more information, see Sun's i18n tutorial:\n <a href='http://java.sun.com/docs/books/tutorial/i18n/' target='_blank'>http://java.sun.com/docs/books/tutorial/i18n/</a> and the JSTL home page:\n <a href='http://java.sun.com/products/jsp/jstl/' target='_blank'>http://java.sun.com/products/jsp/jstl/</a>.\n <P>\n Note that this approach does not imply that your JavaScript must appear in the midst of an\n HTML page.  A .jsp file can be used to return a pure JavaScript response via just removing\n the &lt;SCRIPT&gt; tags in the example above, and targetting the .jsp with a &lt;SCRIPT\n SRC=&gt; tag from another .jsp or .html file.\n <P>\n A second common technique is to load internationalized messages as a JavaScript Object\n mapping from a message name to the internationalized message.  For example, if your messages\n are stored in Java .properties format, you could load your .properties file as a standard Java\n <a href='http://docs.oracle.com/javase/6/docs/api/java/util/Properties.html' target='_blank'>Properties object</a>, \n and use the server-side com.isomorphic.js.JSTranslater.toJSVariable() API to output the\n properties as a JavaScript variable.\n <P>\n If the variable name chosen was 'i18nMessages', code to make use of the .properties data\n would look like:\n <pre>\n     isc.Button.create({ title: i18nMessages[\"buttonTitle\"] });\n </pre>\n <P>\n Approaches for non-Java platforms are similar, and generally any approach that works for\n HTML or JavaScript files works with SmartClient.  See the end of this section for pointers\n to additional resources.\n </smartclient>\n <smartgwt>\n String localization in SmartGWT is best done using <a href=http://code.google.com/webtoolkit/doc/latest/DevGuideI18n.html>\n standard GWT approaches</a>.  Although GWT supports various ways of localizing strings, \n Isomorphic recommends the use of an approach based on Resource Bundles.  Other parts of \n SmartGWT - for example, <code>.ds.xml</code> files - are best localized using resource \n bundles, so using resource bundles makes it easier to share messages that are used both\n client and server side.\n </smartgwt>\n <p>\n <u><b>Support for Right-to-Left (RTL) languages</b></u>\n <P>\n SmartClient includes support for RTL languages.  To enable, simply set\n <code>dir=\"rtl\"</code> on the HTML element:\n <pre>\n    &lt;HTML dir=\"rtl\"&gt;\n </pre>\n ListGrid columns, horizontal layouts, scrolling directions, etc will reverse order\n automatically.\n <p>\n Because RTL in some cases requires additional media files, RTL is only supported for the\n Enterprise, EnterpriseBlue and Graphite skins.\n <p>\n <u><b>DataSource and Component XML localization</b></u>\n <p>\n Please see the separate article on \n ${isc.DocUtils.linkForRef('group:dataSourceLocalization','DataSource and Component XML Localization')}\n <p>\n <u><b>Localized Number and Currency Formatting</b></u>\n <p>\n Please see the separate article on \n ${isc.DocUtils.linkForRef('group:localizedNumberFormatting','Localized Number Formatting')}\n <p>\n <smartclient>\n <u><b>Image, CSS localization</b></u>\n <p>\n Most SmartClient components use a mixture of text, CSS and images to render.  If you wish to\n provide locale-specific images or use locale-specific CSS, you can create localized copies\n of a SmartClient skin named after the locale and modify images as you see fit.  A skin is\n specified at load time using either the <code>skin</code> attribute of the\n <code>&lt;isomorphic:loadISC&gt;</code> tag or by loading the skin\n directly using a script tag like so: &lt;SCRIPT SRC=/isomorphic/skins/[skin]/load_skin.js&gt;.\n If you're using the <code>loadISC</code> tag, you can specify a locale-specific skin like so:\n <pre>\n &lt;isomorphic:loadISC skin=\"[localeName]\"/&gt;\n </pre>\n Or you can use a script tag like so:\n <pre>\n &lt;SCRIPT SRC=/isomorphic/skins/[localeName]/load_skin.js&gt;&lt;/SCRIPT&gt;\n </pre>\n Where the <code>[localeName]</code> is the name of the current locale - you'll have this in the\n current page context as you'll need it to use the JSTL &lt;fmt:setLocale&gt; tag.\n <p>\n </smartclient>\n Resources:\n <p>\n <b><u>Java</u></b>\n <ul>\n <li>Sun's i18n tutorial: <a href='http://java.sun.com/docs/books/tutorial/i18n/' target='_blank'>http://java.sun.com/docs/books/tutorial/i18n/</a>\n <li>JSTL home page: <a href='http://java.sun.com/products/jsp/jstl/' target='_blank'>http://java.sun.com/products/jsp/jstl/</a>\n <li>Apache JSTL \"Getting Started\": \n     <a href='http://jakarta.apache.org/taglibs/doc/standard-doc/standard/GettingStarted.html' target='_blank'>http://jakarta.apache.org/taglibs/doc/standard-doc/standard/GettingStarted.html</a>\n <li>Apache taglibs: <a href='http://jakarta.apache.org/taglibs/' target='_blank'>http://jakarta.apache.org/taglibs/</a>\n </ul>\n <p>\n\n <b><u>.NET</u></b>\n <ul>\n <li>MSDN Developer Resource: \"Developing World-Ready Applications\":\n <a href='http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpcondesigningglobalapplications.asp' target='_blank'>http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpcondesigningglobalapplications.asp</a>\n </ul>\n\n <b><u>PHP</u></b>\n <ul>\n <li>PHP Gettext manual: <a href='http://us2.php.net/gettext' target='_blank'>http://us2.php.net/gettext</a>\n <li>O'Reilly Gettext tutorial: <a href='http://www.onlamp.com/pub/a/php/2002/06/13/php.html' target='_blank'>http://www.onlamp.com/pub/a/php/2002/06/13/php.html</a>\n </ul>\n <p>\n\n <b><u>Perl</u></b>\n <ul>\n <li>Perl, Unicode and i18n FAQ: <a href='http://rf.net/~james/perli18n.html' target='_blank'>http://rf.net/~james/perli18n.html</a>\n </ul>",
        name:"i18n",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DataBoundComponent.selectAllRecords":{
        ref:"method:DataBoundComponent.selectAllRecords",
        flags:"",
        description:" Select all records\n\n",
        name:"selectAllRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:Canvas.showHoverComponents":{
        ref:"attr:Canvas.showHoverComponents",
        flags:"IRWA",
        description:"When set to true, shows a widget hovering at the mouse point instead of the builtin\n hover label.  Override ${isc.DocUtils.linkForRef('method:Canvas.getHoverComponent','getHoverComponent')} to provide the\n Canvas to show as the hoverComponent.",
        name:"showHoverComponents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hoverComponents"
        ]
    },
    "attr:Class.addPropertiesOnCreate":{
        ref:"attr:Class.addPropertiesOnCreate",
        flags:"RA",
        description:"Controls whether arguments passed to ${isc.DocUtils.linkForRef('classMethod:Class.create')} are assumed to be\n Objects containing properties that should be added to the newly created instance.  This\n behavior is how <code>create()</code> works with almost all SmartClient widgets and\n other components, allowing the convenient shorthand of setting a batch of properties via\n an ${isc.DocUtils.linkForRef('type:ObjectLiteral','JavaScript Object Literal')} passed to create().\n <P>\n The setting defaults to true if unset.  To disable this behavior for a custom class,\n such that <code>create()</code> works more like typical constructors found in Java and\n other languages, use:\n <pre>\n     isc.[i]ClassName[/i].addProperties({ addPropertiesOnCreate:false })\n </pre>\n <P>\n Note that it is not valid to disable this behavior for any subclass of ${isc.DocUtils.linkForRef('class:Canvas')}\n (Canvas relies on this property).\n <p>\n Regardless of the setting for <code>addPropertiesOnCreate</code>, all arguments passed to\n ${isc.DocUtils.linkForRef('classMethod:Class.create')} are still passed on to ${isc.DocUtils.linkForRef('method:Class.init')}.",
        name:"addPropertiesOnCreate",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"undefined",
        type:"attr",
        definingClass:"class:Class"
    },
    "attr:Window.footerControls":{
        ref:"attr:Window.footerControls",
        flags:"IR",
        description:"Array of members to show in the Window footer.  \n <P>\n The default value of <code>footerControls</code> is an Array of Strings listing the\n standard footer controls in their default order:\n <pre>\n    footerControls : [\"spacer\", \"resizer\"]\n </pre>\n As with ${isc.DocUtils.linkForRef('attr:Window.headerControls')}, you can override <code>footerControls</code>\n to change the order of standard controls in the footer. <code>\"spacer\"</code> is a special\n value which will create a ${isc.DocUtils.linkForRef('class:LayoutSpacer')} in the footer bar. <code>\"resizer\"</code>\n will show the ${isc.DocUtils.linkForRef('attr:Window.resizer')} in the footer.\n <P>\n By embedding a Canvas directly in this list you can add arbitrary additional controls to\n the footer.  \n <P>\n Note that the ${isc.DocUtils.linkForRef('attr:Window.statusBar')} is not part of the set of footer controls - it is a\n separate canvas rendered behind all footer controls. If you include some custom status bar\n directly in the footerControls you may want to set ${isc.DocUtils.linkForRef('attr:Window.showFooter')} to false.\n <P>\n Tip: custom controls need to set layoutAlign:\"center\" to appear vertically centered.",
        name:"footerControls",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"(see below)",
        type:"attr",
        definingClass:"class:Window"
    },
    "method:Canvas.hideClickMask":{
        ref:"method:Canvas.hideClickMask",
        flags:"",
        description:" Hides the click mask associated with this canvas.\n",
        name:"hideClickMask",
        seeAlso:[
            {
                ref:"method:Canvas.showClickMask",
                description:null
            }
        ],
        params:[
            {
                description:"optional ID of specific clickMask to hide. If not passed,                      defaults to hiding the click mask associated with this widget only.",
                optional:true,
                name:"ID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "clickMask"
        ]
    },
    "classMethod:RPCManager.loadScreen":{
        ref:"classMethod:RPCManager.loadScreen",
        flags:"",
        description:" Loads a screen saved in ${isc.DocUtils.linkForRef('group:componentXML','Component XML')} format, using the\n ${isc.DocUtils.linkForRef('group:servletDetails','ScreenLoaderServlet')}.\n <P>\n The ScreenLoaderServlet will look for a file named <i>screenName</i>.ui.xml in \n the directory given by the \"project.ui\" setting, which defaults\n <i>webroot</i>/shared/ui and can be configured in \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.\n <p>\n The <code>screen</code> provided by the callback will be the outermost component if your\n loaded screen consists of a hierarchy of widgets all contained under one parent (which\n is true of any screens created in Visual Builder).  \n <p>\n If you have multiple widget hierarchies in your screen, the <code>screen</code> returned\n will be the last top-level component created.\n <P>\n By default, components in the loaded screens that have ${isc.DocUtils.linkForRef('attr:Canvas.ID','global IDs')} will not\n actually be allowed to take those global IDs - instead, only widgets that have one of the\n global IDs passed as the <code>globals</code> parameter will actually receive their global\n IDs.  To override this behavior, pass the special value ${isc.DocUtils.linkForRef('classAttr:RPCManager.ALL_GLOBALS')}\n for the <code>globals</code> parameter.\n <p>\n When globals are being suppressed, the <code>screen</code> available in the callback\n will provide access to widgets that did not receive their global IDs via\n ${isc.DocUtils.linkForRef('method:Canvas.getByLocalId')}, and the <code>suppressedGlobals</code> available in the\n callback will be a mapping from suppressed global ID to the widget or other component\n that would have used that global ID if globals were not suppressed.  In addition, any\n other <code>Canvas</code> loaded with the screen also provides access to any suppressed\n globals from the screen via <code>getByLocalId()</code>.\n <p>\n To load multiple screens at once, use ${isc.DocUtils.linkForRef('classMethod:RPCManager.cacheScreens')} and ${isc.DocUtils.linkForRef('classMethod:RPCManager.createScreen')}\n instead.\n <P>\n Components in the screen will default to having ${isc.DocUtils.linkForRef('attr:Canvas.autoDraw')} set to false.\n This may be overridden by setting the ${isc.DocUtils.linkForRef('attr:RPCRequest.suppressAutoDraw')} attribute\n explicitly to <code>false</code> on the request properties object.\n <P>\n You can optionally provide a locale name to use when resolving any i18n tags in the \n screen's component XML.  If you do not supply this, the locale will be derived from \n the servlet API, and so will generally be a locale appropriate to the client's operating\n system settings.  Only provide a locale manually if you have a special requirement that \n requires the user's operating system locale to be overridden in your application.  If \n you provide a locale name, it should be of the form \"xx\" or \"xx_YY\", where \"xx\" is a \n valid language code and \"YY\" is a valid country code.  For example, \"fr\" or \"en_GB\".\n <P> \n This API assumes the ScreenLoaderServlet is installed at the default location - to use a\n different location, use the <code>requestProperties</code> parameter to specify a different\n URL via ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL')}.  The <code>requestProperties</code> parameter can also\n be used to pass additional params to a custom ScreenLoaderServlet - see the \"Dynamic\n Component XML\" section of the ${isc.DocUtils.linkForRef('group:componentXML','Component XML overview')}.\n\n",
        name:"loadScreen",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the screen to load",
                optional:false,
                name:"screenName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"callback for notification of screen being loaded",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"LoadScreenCallback"
            },
            {
                description:"widgets to allow to take their global IDs",
                optional:true,
                name:"globals",
                defaultValue:null,
                type:"Array of String"
            },
            {
                description:"The name of a locale to use for resolving i18n tags in the         component XML of the screen",
                optional:true,
                name:"locale",
                defaultValue:null,
                type:"String"
            },
            {
                description:"optional properties for the request",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"RPCRequest Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:Splitbar.hResizeCursor":{
        ref:"attr:Splitbar.hResizeCursor",
        flags:"IR",
        description:"Cursor to display if this Splitbar is to be used for horizontal resize of widgets.",
        name:"hResizeCursor",
        seeAlso:[
        ],
        valueType:"Cursor",
        defaultValue:"\"col-resize\"",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "cursor"
        ]
    },
    "attr:Button.iconSize":{
        ref:"attr:Button.iconSize",
        flags:"IR",
        description:"Size in pixels of the icon image.\n <P>\n The <code>iconWidth</code> and <code>iconHeight</code> properties can be used to\n configure width and height separately.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "class:NavigationButton":{
        methods:[
        ],
        ref:"class:NavigationButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/NavigationBar"
        ],
        attrs:[
            "attr:NavigationButton.baseStyle",
            "attr:NavigationButton.backBaseStyle",
            "attr:NavigationButton.forwardBaseStyle",
            "attr:NavigationButton.direction"
        ],
        description:"Specially styled Button subclass used by the ${isc.DocUtils.linkForRef('class:NavigationBar')} class.",
        name:"NavigationButton",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"Button"
    },
    "attr:Calendar.showDatePickerButton":{
        ref:"attr:Calendar.showDatePickerButton",
        flags:"IRW",
        description:"Set to false to hide the ${isc.DocUtils.linkForRef('attr:Calendar.datePickerButton')} that allows selecting a new base date for \n this Calendar.",
        name:"showDatePickerButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:EdgedCanvas.customEdges":{
        ref:"attr:EdgedCanvas.customEdges",
        flags:"IR",
        description:"Array of side names (\"T\", \"B\", \"L\", \"R\") specifying which sides of the decorated\n component should show edges.  For example: <pre>\n      customEdges : [\"T\", \"B\"]\n </pre>\n .. would show edges only on the top and bottom of a component.\n <P>\n The default of <code>null</code> means edges will be shown on all sides.",
        name:"customEdges",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:Dialog.autoFocus":{
        ref:"attr:Dialog.autoFocus",
        flags:"IR",
        description:"If a toolbar is showing, automatically place keyboard focus in the first button.",
        name:"autoFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Dialog",
        groups:[
            "appearance",
            "toolbar"
        ]
    },
    "attr:SectionStack.canTabToHeaders":{
        ref:"attr:SectionStack.canTabToHeaders",
        flags:"IRA",
        description:"If true, the headers for the sections (if shown) will be included in the page's tab\n order for accessibility. \n May be overridden at the Section level via ${isc.DocUtils.linkForRef('attr:SectionStackSection.canTabToHeader')}\n <P>\n If unset, section headers will be focusable if ${isc.DocUtils.linkForRef('classMethod:isc.setScreenReaderMode')} has been called.\n See ${isc.DocUtils.linkForRef('group:accessibility')}.",
        name:"canTabToHeaders",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:SectionStack.sectionHeaderClass":{
        ref:"attr:SectionStack.sectionHeaderClass",
        flags:"IRA",
        description:"<smartgwt>\n Name of a SmartClient class to use for creating section headers.  This will default to either\n ${isc.DocUtils.linkForRef('class:SectionHeader','\"SectionHeader\"')} or ${isc.DocUtils.linkForRef('class:ImgSectionHeader','\"ImgSectionHeader\"')} depending on\n the skin.  You can use the &#83;martClient class system to create a simple SmartClient subclass of\n either SectionHeader or ImgSectionHeader for use with this API - see the\n ${isc.DocUtils.linkForRef('group:skinning','Skinning Guide')} for details.\n </smartgwt>\n <smartclient>\n Name of the Canvas subclass to use as a header that labels the section and allows\n showing and hiding.  The default class can be skinned, or trivial subclasses created to\n allow different appearances for headers in different SectionStacks.\n <P>\n Very advanced developers can use the following information to create custom header\n classes.\n <P>\n The SectionStack will instantiate this class, giving the following properties on init:\n <ul>\n <li><code>layout</code>: the SectionStack\n <li><code>expanded</code>: true or false\n <li><code>hidden</code>: true or false\n <li><code>title</code>: section title\n </ul>\n From then on, when the sectionHeader is clicked on, it should call\n ${isc.DocUtils.linkForRef('method:SectionStack.sectionHeaderClick')}.\n <P>\n Whenever the section is hidden or shown, sectionHeader.setExpanded(true|false) will be\n called if implemented.\n </smartclient>",
        name:"sectionHeaderClass",
        seeAlso:[
        ],
        valueType:"Classname",
        defaultValue:"\"SectionHeader\"",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:FormItem.valueIconSize":{
        ref:"attr:FormItem.valueIconSize",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} is specified, this property may be used to specify both\n the width and height of the icon written out.\n Note that ${isc.DocUtils.linkForRef('attr:FormItem.valueIconWidth')} and ${isc.DocUtils.linkForRef('attr:FormItem.valueIconHeight')} take\n precedence over this value, if specified.",
        name:"valueIconSize",
        seeAlso:[
            {
                ref:"attr:FormItem.valueIconWidth",
                description:null
            },
            {
                ref:"attr:FormItem.valueIconHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:DrawLabel.getCenter":{
        ref:"method:DrawLabel.getCenter",
        flags:"",
        description:" Get the center point of the label.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the center point",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawLabel"
    },
    "method:Gauge.formatLabelContents":{
        ref:"method:Gauge.formatLabelContents",
        flags:"A",
        description:" Formats a value as a string to be used as the contents of a ${isc.DocUtils.linkForRef('class:DrawLabel')}. The default\n implementation prepends ${isc.DocUtils.linkForRef('attr:Gauge.labelPrefix','labelPrefix')} and appends\n ${isc.DocUtils.linkForRef('attr:Gauge.labelSuffix','labelSuffix')} to <code>value</code>.\n <p>\n <b>NOTE:</b> If a subclass overrides this, then whenever it changes the way that values are\n formatted, it must call ${isc.DocUtils.linkForRef('method:Gauge.reformatLabelContents')}.\n\n",
        name:"formatLabelContents",
        seeAlso:[
        ],
        params:[
            {
                description:"the value to format.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float"
            }
        ],
        returns:{
            description:"label contents.",
            type:"string"
        },
        type:"method",
        definingClass:"class:Gauge"
    },
    "method:ListGrid.setHeaderSpanTitleStyle":{
        ref:"method:ListGrid.setHeaderSpanTitleStyle",
        flags:"",
        description:" Update the ${isc.DocUtils.linkForRef('attr:HeaderSpan.headerTitleStyle')} for a span within the grid at runtime.\n",
        name:"setHeaderSpanTitleStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the headerSpan, as specified via ${isc.DocUtils.linkForRef('attr:HeaderSpan.name')}.",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new titleStyle for the headerSpan",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"CSSClass"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Menu.iconWidth":{
        ref:"attr:Menu.iconWidth",
        flags:"IRW",
        description:"The default width applied to custom icons in this menu. This is used whenever\n          item.iconWidth is not specified.",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:EditContext.addFromPaletteNode":{
        ref:"method:EditContext.addFromPaletteNode",
        flags:"",
        description:" Creates a new EditNode from a PaletteNode, using the\n ${isc.DocUtils.linkForRef('attr:EditContext.defaultPalette')}.  If you have an array of possibly inter-related\n PaletteNodes, then you should use\n ${isc.DocUtils.linkForRef('method:EditContext.addFromPaletteNodes','addFromPaletteNodes()')} on the array instead,\n in order to preserve the relationships.\n\n",
        name:"addFromPaletteNode",
        seeAlso:[
            {
                ref:"method:EditContext.addFromPaletteNodes",
                description:null
            }
        ],
        params:[
            {
                description:"the palette node to use to create the new node",
                optional:false,
                name:"paletteNode",
                defaultValue:null,
                type:"PaletteNode"
            },
            {
                description:"optional the parent node if the new node should appear                                under a specific parent",
                optional:true,
                name:"parentNode",
                defaultValue:null,
                type:"EditNode"
            }
        ],
        returns:{
            description:"the EditNode created from the paletteNode",
            type:"EditNode"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:Canvas.contains":{
        ref:"method:Canvas.contains",
        flags:"A",
        description:" Returns true if element is a descendant of this widget (i.e., exists below this widget in\n the containment hierarchy); and false otherwise.\n",
        name:"contains",
        seeAlso:[
        ],
        params:[
            {
                description:"the canvas to be tested",
                optional:false,
                name:"canvas",
                defaultValue:null,
                type:"canvas"
            },
            {
                description:"If passed this method will return true if the the canvas                               parameter is a pointer to this widget.",
                optional:true,
                name:"testSelf",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"true if specified element is a descendant of this canvas; false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:ListGrid.confirmCancelEditing":{
        ref:"attr:ListGrid.confirmCancelEditing",
        flags:"IRW",
        description:"If this is an editable listGrid, when the user attempts to cancel an edit, should we\n display a confirmation prompt before discarding the edited values for the record?",
        name:"confirmCancelEditing",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "class:Applet":{
        methods:[
            "method:Applet.getPluginID",
            "method:Applet.setPluginID",
            "method:Applet.getPluginHandle"
        ],
        ref:"class:Applet",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Client Bridges"
        ],
        attrs:[
            "attr:Applet.name",
            "attr:Applet.code",
            "attr:Applet.src",
            "attr:Applet.codeBase",
            "attr:Applet.archive",
            "attr:Applet.alt",
            "attr:Applet.altHTML",
            "attr:Applet.params",
            "attr:Applet.mayScript",
            "attr:Applet.scriptable",
            "attr:Applet.classID",
            "attr:Applet.objectCodeBase",
            "attr:Applet.extraHTML",
            "attr:Applet.useTag",
            "attr:Applet.pluginID",
            "attr:Applet.ID"
        ],
        description:"SmartClient abstraction for Applets.  This class provides Java&lt;-&gt;SmartClient\n  interoperability.  When embedding Applets into SmartClient-based pages, please use this\n  wrapper class to instantiate the Applet.  Doing so will provide the following benefits:\n  <p>\n  <ul>\n  <li>Drag and drop interactions on the page can target the Applet (can drop on applet).\n  <li>When a drag interaction transits an Applet, SmartClient will ensure that the dragTarget\n  appears above the Applet (prevents burn-through).\n  <li>Allows you to easily embed the Applet into SmartClient containers such as Windows and\n  Layouts, providing automatic masking to ensure the correct z-index order.  But see notes\n  below for limitations.\n  </ul>\n  <p>\n  <u>Known issues</u><br><br>\n  <ul>\n  <li>Resizing Applets can cause Firefox to lock up and require the user to terminate the\n  process manually.  The cause is currently unknown, but likely causes include applets\n  attempting to control their own size, or to attempt to re-render on resize.  More recent\n  JVMs (1.6+) appear to make this problem less frequent.  This may also simply be caused by\n  applet code being unable to deal with certain combination sizes and crashing.\n  <li>In Firefox, when using a JVM older than 1.6, Applets cannot be resized smaller than\n  their originally drawn size.  Doing so causes them to stick at the originally drawn size,\n  and to overflow the boundary of any SmartClient component they are embedded in.\n  <li>In Firefox, Applets do not handle the z-index ordering correctly with respect to\n  IFRAMEs or other Applets.  Therefore, in Firefox you cannot layer Applets on top of each\n  other or on top of SmartClient components containing IFRAMEs and have them render in the\n  correct order.\n  </ul>\n\n  For a general overview of applets and an applet tutorial see: \n  <a href='http://java.sun.com/docs/books/tutorial/applet/' target='_blank'>http://java.sun.com/docs/books/tutorial/applet/</a>",
        name:"Applet",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "PluginBridges"
        ]
    },
    "attr:Calendar.timelineGranularity":{
        ref:"attr:Calendar.timelineGranularity",
        flags:"IR",
        description:"The granularity with which the timelineView will display events.  Possible values are\n those available in the built-in ${isc.DocUtils.linkForRef('type:TimeUnit','TimeUnit')} type.",
        name:"timelineGranularity",
        seeAlso:[
        ],
        valueType:"TimeUnit",
        defaultValue:"\"day\"",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:Button.iconWidth":{
        ref:"attr:Button.iconWidth",
        flags:"IR",
        description:"Width in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Callbacks.ExportImageCallback":{
        ref:"method:Callbacks.ExportImageCallback",
        flags:"",
        description:" Callback for ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportImage')}.\n",
        name:"ExportImageCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"image data from the server, in base64 format",
                optional:false,
                name:"imageData",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:Gauge.borderWidth":{
        ref:"attr:Gauge.borderWidth",
        flags:"IR",
        description:"Pixel width for gauge sector borders.",
        name:"borderWidth",
        seeAlso:[
            {
                ref:"attr:DrawItem.lineWidth",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "method:TileGrid.transferDragData":{
        ref:"method:TileGrid.transferDragData",
        flags:"",
        description:"\n During a drag-and-drop interaction, this method is called to transfer a set of records that\n were dropped onto some other component.  This method is called after the set of records has\n been copied to the other component.  Whether or not this component's data is modified is \n determined by the value of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dragDataAction')}.\n <P>\n With a <code>dragDataAction</code> of \"move\", a databound component will issue \"remove\"\n dsRequests against its DataSource to actually remove the data, via\n ${isc.DocUtils.linkForRef('method:DataSource.removeData')}.\n\n",
        name:"transferDragData",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.getDragData",
                description:null
            },
            {
                ref:"method:ListGrid.willAcceptDrop",
                description:null
            }
        ],
        returns:{
            description:"Array of objects that were dragged out of this ListGrid.",
            type:"Array"
        },
        type:"method",
        definingClass:"class:TileGrid"
    },
    "attr:DrawItem.contextMenu":{
        ref:"attr:DrawItem.contextMenu",
        flags:"IRW",
        description:"Context menu to show for this object, an instance of the Menu widget.\n <P>\n Note: if ${isc.DocUtils.linkForRef('method:Canvas.destroy')} is called on a canvas, any specified context menu is\n not automatically destroyed as well. This is in contrast to ${isc.DocUtils.linkForRef('class:MenuButton')}s which\n automatically destroy their specified ${isc.DocUtils.linkForRef('attr:MenuButton.menu')} by default. The behavior\n is intentional as context menus are commonly reused across components.",
        name:"contextMenu",
        seeAlso:[
            {
                ref:"method:Canvas.showContextMenu",
                description:null
            }
        ],
        valueType:"Menu",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('contextMenus')}"
        ],
        definingClass:"class:DrawItem",
        groups:[
            "cues"
        ]
    },
    "method:TimeItem.getMillisecondValues":{
        ref:"method:TimeItem.getMillisecondValues",
        flags:"A",
        description:" Returns an array of the current valid millisecond values, whether set directly as \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondValues')} or generated according to \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMinValue','millisecondMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMaxValue','millisecondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondIncrement','millisecondIncrement')}.\n",
        name:"getMillisecondValues",
        seeAlso:[
        ],
        returns:{
            description:"array of available Millisecond values",
            type:"Array of Number"
        },
        type:"method",
        definingClass:"class:TimeItem"
    },
    "group:jsfIntegration":{
        ref:"group:jsfIntegration",
        title:"Integration with JSF",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"SmartClient can be used within JSF applications to add AJAX richness and interactivity.\n <P>\n Because JSF is a pre-AJAX architecture, the recommended approach in adding\n SmartClient to JSF applications is to create pages that use SmartClient components exclusively,\n so that older, server-based JSF components do not introduce full-page refreshes.\n <P>\n JSF pages that render components on the server access data via JSF Expression Language.\n SmartClient-based JSF pages can similarly load initial data by using JSTL, as shown in \n <a href='/examples/server_integration/#jstlList' target='_blank'>this example</a>, where a ListGrid is\n populated by JSTL access to Java Beans stored in the JSP <code>pageContext</code>.  \n <P>\n Once a SmartClient JSF page has loaded, SmartClient components will request data via background\n HTTP requests that load only data, not a complete page.  The \n ${isc.DocUtils.linkForRef('group:dmiOverview','Direct Method Invocation')} system can be used to declaratively map SmartClient's\n background data requests directly to Java Methods. The SmartClient server automatically\n translates inbound request data into Java Objects that are passed to the method you specify,\n and the Java method return value is automatically translated into data for SmartClient\n components.\n <P>\n <h4>Incorporating server-side JSF components into a SmartClient JSF page</h4>\n <P>\n An ${isc.DocUtils.linkForRef('class:HTMLFlow')} or ${isc.DocUtils.linkForRef('class:HTMLPane')} component can be used to incorporate server-generated\n content within a SmartClient-based page.  With ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsType','contentsType')} set to\n \"page\", the HTMLPane/Flow will act like a standalone page-within-a-page (via a\n SmartClient-managed HTML IFRAME element), allowing interactive server-side JSF components to\n participate normally, with limitations as discussed under the documentation for \n ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsType','contentsType')}.",
        name:"jsfIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MultiSortPanel.deleteLevelButtonTitle":{
        ref:"attr:MultiSortPanel.deleteLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the deleteLevelButton",
        name:"deleteLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Delete Level\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:CubeGrid.colHeaderBaseStyle":{
        ref:"attr:CubeGrid.colHeaderBaseStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:Button.baseStyle','baseStyle')} for the buttons in this grid's column headers.\n <P>\n Exception: The innermost column\n header will always be styled using ${isc.DocUtils.linkForRef('attr:CubeGrid.innerHeaderBaseStyle')}.",
        name:"colHeaderBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"colHeader",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.headerButtonProperties":{
        ref:"attr:ListGrid.headerButtonProperties",
        flags:"IRA",
        description:"Properties to apply to all header buttons.\n Overrides defaults applied via  ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonDefaults')}.",
        name:"headerButtonProperties",
        seeAlso:[
        ],
        valueType:"Button Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "method:DynamicForm.clearValue":{
        ref:"method:DynamicForm.clearValue",
        flags:"",
        description:" Clears the value for some field via a call to ${isc.DocUtils.linkForRef('method:FormItem.clearValue')} if appropriate.\n If there is no item associated with the field name, the field will just be cleared within\n our stored set of values.\n",
        name:"clearValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the field being cleared. A ${isc.DocUtils.linkForRef('type:DataPath')} may be used for  clearing details of nested data structures.",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:FormItem.showFocusedPickerIcon":{
        ref:"attr:FormItem.showFocusedPickerIcon",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon')} is true for this item, should the picker icon show\n a focused image when the form item has focus?",
        name:"showFocusedPickerIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "classAttr:Dialog.ASK_FOR_VALUE_TITLE":{
        ref:"classAttr:Dialog.ASK_FOR_VALUE_TITLE",
        flags:"IRW",
        description:"Default title for the dialog displayed by ${isc.DocUtils.linkForRef('classMethod:isc.askForValue')}.\n A custom title can alternatively be specified as the <code>title</code> attribute of the\n <code>properties</code> parameter passed to that method.",
        name:"ASK_FOR_VALUE_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Please enter a value\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "type:JSONDateFormat":{
        ref:"type:JSONDateFormat",
        values:[
            {
                description:"dates are is encoded as a String in <a target=_blank        href=\"http://www.w3.org/TR/xmlschema-2/#dateTime\">XML Schema date format</a> in UTC,\n        for example, \"2005-08-02\" for logical date fields or \"2005-08-01T21:35:48.350\"\n        for <code>datetime</code> fields. See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','Date format and\\n        storage')} for more information.",
                value:"\"xmlSchema\""
            },
            {
                description:"dates are encoded as raw JavaScript code for creating a Date object,        that is:\n        <pre>\n        new Date(1238792738633)\n        </pre>\n        This is not strictly valid JSON, but if eval()d, will result in an identical date object,\n        regardless of timezone.  However, it does not preserve the distinction between\n        logical dates vs full datetime values - use \"logicalDateConstructor\" mode for that.",
                value:"\"dateConstructor\""
            },
            {
                description:"serializes Date instances in a way that preserves the        distinction between logical dates, logical times, and full datetime values, as\n        explained ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','here')}.  Like 'dateConstructor' mode, this\n        does not produce strictly valid JSON, and instead embeds JavaScript calls.  \n        <p>\n        In addition, unlike 'dateConstructor' mode, using eval() to reconstruct the original\n        JavaScript objects will only work in the presence of SmartClient, and not just in a\n        generic JavaScript interpreter.",
                value:"\"logicalDateConstructor\""
            }
        ],
        description:"Format for encoding dates in JSON.  Note you can override ${isc.DocUtils.linkForRef('method:JSONEncoder.encodeDate')}\n for a custom format.",
        name:"JSONDateFormat",
        seeAlso:[
        ],
        type:"type"
    },
    "method:SplitPane.setRightButtonTitle":{
        ref:"method:SplitPane.setRightButtonTitle",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButtonTitle','rightButtonTitle')} of the\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')}.\n\n",
        name:"setRightButtonTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title for the right button.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "attr:groupNode.groupValue":{
        ref:"attr:groupNode.groupValue",
        flags:"R",
        description:"The value from which groups are computed for a field,\n which results from ${isc.DocUtils.linkForRef('method:ListGridField.getGroupValue')}",
        name:"groupValue",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"any",
        defaultValue:"see below",
        type:"attr",
        definingClass:"object:groupNode",
        groups:[
            "grouping"
        ]
    },
    "attr:CanvasItem.editCriteriaInInnerForm":{
        ref:"attr:CanvasItem.editCriteriaInInnerForm",
        flags:"IRA",
        description:"Flag to disable the criteria editing overrides described in\n <smartclient>${isc.DocUtils.linkForRef('method:CanvasItem.getCriterion')}</smartclient>\n <smartgwt><code>setCriterionGetter()</code></smartgwt> whereby\n if this item contains a DynamicForm as its canvas, it will be used to edit nested\n AdvancedCriteria automatically.\n <P>\n This flag is required for cases where a canvasItem contains a DynamicForm, but the form\n is not set up to show inner field values of nested objects, and therefore should not\n attempt to apply nested advanced criteria directly to the form.",
        name:"editCriteriaInInnerForm",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "type:LocatorStrategy":{
        ref:"type:LocatorStrategy",
        values:[
            {
                description:"Match by name if possible.",
                value:"\"name\""
            },
            {
                description:"Match by title if possible.",
                value:"\"title\""
            },
            {
                description:"Match by index",
                value:"\"index\""
            }
        ],
        description:"The AutoTest subsystem relies on generating and parsing identifier strings to identify\n components on the page. A very common pattern is identifying a specific component\n within a list of possible candidates. There are many many cases where this pattern\n is used, for example - members in a layout,tabs in a tabset, sections in a section stack.\n <P>\n In order to make these identifiers as robust as possible across minor\n changes to an application, (such as skin changes, minor layout changes, etc) the\n system will store multiple pieces of information about a component when generating\n an identification string to retrieve it from a list of candidates.\n The system has a default strategy for choosing the order in which to look at these\n pieces of information but in some cases this can be overridden by setting\n a <code>LocatorStrategy</code>.\n <p>\n By default we use the following strategies in order to identify a component from a list of\n candidates:\n <UL><li><code>name</code>: Does not apply in all cases but in cases where a specified\n   <code>name</code> attribute has meaning we will use it - for example for\n  ${isc.DocUtils.linkForRef('attr:SectionStackSection.name','sections in a section stack')}.</li>\n <li><code>title</code>: If a title is specified for the component this may be used\n   as a legitimate identifier if it is unique within the component - for example\n   differently titled tabs within a tabset.</li>\n <li><code>index</code>: Locating by index is typically less robust than by name or\n   title as it is likely to be effected by layout changes on the page.</li>\n </UL>\n If an explicit strategy is specified, that will be used to locate the component if \n possible. If no matching component is found using that strategy, we will continue to\n try the remaining strategies in order as described above. In other words setting\n a locatorStrategy to \"title\" will skip attempting to find a component by name, and\n instead attempt to find by title - or failing that by index.\n <P>\n Note that we also support matching by type (see ${isc.DocUtils.linkForRef('type:LocatorTypeStrategy')}).\n Matching by type is used if we were unable to match by name or title or to disambiguate\n between multiple components with a matching title.",
        name:"LocatorStrategy",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoTest"
        ]
    },
    "type:ReorderPosition":{
        ref:"type:ReorderPosition",
        values:[
            {
                description:"Drop the drag-item before the target-row",
                value:"ListGrid.BEFORE"
            },
            {
                description:"Drop the drag-item after the target-row",
                value:"ListGrid.AFTER"
            },
            {
                description:"Drop the drag-item over (onto) the target-row",
                value:"ListGrid.OVER"
            }
        ],
        description:"Controls where a drag-item should be dropped in relation to the target row",
        name:"ReorderPosition",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "dragdrop"
        ]
    },
    "method:ListGrid.recordDrop":{
        ref:"method:ListGrid.recordDrop",
        flags:"",
        description:" Process a drop of one or more records on a ListGrid record.\n <P>\n This method can be overridden to provide custom drop behaviors, and is a more appropriate\n override point than the lower level ${isc.DocUtils.linkForRef('method:Canvas.drop')} handler.\n <P>\n If this is a self-drop, records are simply reordered.\n <P>\n For a drop from another widget, ${isc.DocUtils.linkForRef('method:ListGrid.transferDragData')} is called, which\n depending on the ${isc.DocUtils.linkForRef('attr:ListGrid.dragDataAction','dragDataAction')} specified on the source\n widget, may either remove the source records from the original list\n (<code>dragDataAction:\"move\"</code>) or just provide a copy to this list\n (<code>dragDataAction:\"copy\"</code>).\n <P>\n If this grid is databound, the new records will be added to the dataset by calling\n ${isc.DocUtils.linkForRef('method:DataSource.addData')}.  Further, if the new records were dragged from another\n databound component, and ${isc.DocUtils.linkForRef('attr:DataBoundComponent.addDropValues','addDropValues')}\n is true, ${isc.DocUtils.linkForRef('method:DataBoundComponent.getDropValues','getDropValues')} will be called for every item\n being dropped.\n <P>\n For multi-record drops, Queuing is automatically used to combine all DSRequests into a\n single HTTP Request (see QuickStart Guide, Server Framework chapter).  This allows the\n server to persist all changes caused by the drop in a single transaction (and this is\n automatically done when using the built-in server DataSources with Power Edition and\n above).\n <P>\n Note that reordering records has no effect on a databound grid.\n <P>\n The newly dropped data is then selected automatically.\n <P>\n If these default persistence behaviors are undesirable, return false to cancel them, then\n and implement your own behavior, typically by using grid.updateData() or addData() to add\n new records.\n <p><b>NOTE:</b> the records you receive in this event are the actual Records from the source\n component.  Use ${isc.DocUtils.linkForRef('method:DataSource.copyRecords')} to create a copy before modifying the records\n or using them with updateData() or addData().\n <P>\n NOTE: for a drop beyond the last visible record of a ListGrid, <code>targetRecord</code>\n will be null and the <code>index</code> will be one higher than the last record.  This\n includes a drop into an empty ListGrid, where <code>index</code> will be 0.\n\n",
        name:"recordDrop",
        seeAlso:[
        ],
        params:[
            {
                description:"records being dropped",
                optional:false,
                name:"dropRecords",
                defaultValue:null,
                type:"Array[] of ListGridRecord"
            },
            {
                description:"record being dropped on.  May be null",
                optional:false,
                name:"targetRecord",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"index of record being dropped on",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            },
            {
                description:"widget where dragging began",
                optional:false,
                name:"sourceWidget",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ToolStripResizer.hSrc":{
        ref:"attr:ToolStripResizer.hSrc",
        flags:"IRW",
        description:"Image for horizontal resizer for a vertical Toolstrip",
        name:"hSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]hresizer.png\"",
        type:"attr",
        definingClass:"class:ToolStripResizer"
    },
    "method:FormItem.getPageLeft":{
        ref:"method:FormItem.getPageLeft",
        flags:"",
        description:" Returns the drawn page-left coordinate of this form item in pixels.\n",
        name:"getPageLeft",
        seeAlso:[
        ],
        returns:{
            description:"page-left coordinate in px",
            type:"int"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "positioning"
        ]
    },
    "attr:CubeGrid.canMinimizeFacets":{
        ref:"attr:CubeGrid.canMinimizeFacets",
        flags:"IRW",
        description:"If true, when multiple facets are shown on a side, all facetValues in the second level\n of headers or higher will show controls to \"minimize\" the values of the next facet.\n Minimizing means showing only one, or very few, of the next facet's values.\n <P>\n Set ${isc.DocUtils.linkForRef('attr:FacetValue.isMinimizeValue')} to indicate which facetValues should be\n shown when a facet is minimized.",
        name:"canMinimizeFacets",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetExpansion"
        ]
    },
    "method:ImgSectionHeader.titleHover":{
        ref:"method:ImgSectionHeader.titleHover",
        flags:"",
        description:" Optional stringMethod to fire when the user hovers over this section header and the title is\n clipped. If ${isc.DocUtils.linkForRef('attr:ImgSectionHeader.showClippedTitleOnHover')} is true, the default behavior is to\n show a hover canvas containing the HTML returned by ${isc.DocUtils.linkForRef('method:ImgSectionHeader.titleHoverHTML')}.\n Return false to suppress this default behavior.\n",
        name:"titleHover",
        seeAlso:[
            {
                ref:"attr:ImgSectionHeader.clipTitle",
                description:null
            },
            {
                ref:"method:ImgSectionHeader.titleClipped",
                description:null
            }
        ],
        returns:{
            description:"false to suppress the standard hover",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "hovers"
        ]
    },
    "attr:DataSourceField.multipleValueSeparator":{
        ref:"attr:DataSourceField.multipleValueSeparator",
        flags:"IR",
        description:"For fields that are ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple:true')}, the separator used \n between values when they are displayed.",
        name:"multipleValueSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\", \"",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "multipleField"
        ]
    },
    "attr:EditNode.liveObject":{
        ref:"attr:EditNode.liveObject",
        flags:"IR",
        description:"Live version of the object created from the ${isc.DocUtils.linkForRef('attr:EditNode.defaults')}.  For example, \n if ${isc.DocUtils.linkForRef('attr:EditNode.type')} is \"ListGrid\", <code>liveObject</code> would be a ListGrid.",
        name:"liveObject",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:EditNode"
    },
    "attr:Canvas.snapVDirection":{
        ref:"attr:Canvas.snapVDirection",
        flags:"IRW",
        description:"The vertical snap direction.\n Set this value to \"before\" to snap to the nearest gridpoint above;\n set it to \"after\" to snap to the nearest gridpoint below; and set\n it to \"nearest\" to snap to the nearest gridpoint in either direction.",
        name:"snapVDirection",
        seeAlso:[
            {
                ref:"attr:Canvas.snapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.snapResizeToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapResizeToGrid",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"after\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "type:HTMLString":{
        ref:"type:HTMLString",
        description:"A String of HTML, such as \"<span class='somestyle'>text</span>\".\n <P>\n In many contexts, such as ${isc.DocUtils.linkForRef('attr:Button.title')} and ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue')}, an\n HTML String can be specified, allowing you to use normal HTML tags and CSS to do\n formatting or styling.\n <P>\n However, bear in mind that if you attempt any kind of layout or advanced styling in such\n an HTML string, different browsers may render the HTML differently - use SmartClient\n ${isc.DocUtils.linkForRef('class:Layout','layout')} and ${isc.DocUtils.linkForRef('attr:Canvas.styleName','styling')} features wherever possible to\n avoid this.  See also ${isc.DocUtils.linkForRef('type:CSSStyleName')}.",
        name:"HTMLString",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Date.duplicate":{
        ref:"method:Date.duplicate",
        flags:"A",
        description:"      Copy the value of this date into a new Date() object for independent manipulation\n",
        name:"duplicate",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Date"
    },
    "attr:SectionStackSection.expanded":{
        ref:"attr:SectionStackSection.expanded",
        flags:"I",
        description:"Sections default to the collapsed state unless ${isc.DocUtils.linkForRef('attr:SectionStackSection.showHeader')} is\n set to <code>false</code> in which case they default to the expanded state.  This\n attribute allows you to explicitly control the expand/collapse state of the\n section by overriding the above default behavior.",
        name:"expanded",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "method:Window.addMembers":{
        ref:"method:Window.addMembers",
        flags:"A",
        description:" Same as ${isc.DocUtils.linkForRef('method:Layout.addMembers')}.  Note that in order to add items to ${isc.DocUtils.linkForRef('attr:Window.body')},\n you use ${isc.DocUtils.linkForRef('method:Window.addItem')} rather than <code>addMembers</code>.  Adding a member to \n a Window adds the member as a sibling to the header, body and other built-in Window\n subcomponents.\n",
        name:"addMembers",
        seeAlso:[
        ],
        params:[
            {
                description:"array of canvases to be added or single Canvas",
                optional:false,
                name:"newMembers",
                defaultValue:null,
                type:"Array of Canvas | Canvas"
            },
            {
                description:"position to add newMembers; if omitted newMembers will be added                            at the last position",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "classMethod:XMLTools.selectNumber":{
        ref:"classMethod:XMLTools.selectNumber",
        flags:"A",
        description:" Retrieve a numeric value from an XML element or document based on an XPath expression.\n <P>\n If more than one node matches, only the first node's value will be returned.\n <P>\n Namespacing works as described under ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectNodes')}\n <P>\n <b>NOTE:</b> this API cannot be supported on the Safari web browser for versions prior to\n 3.0.3.\n\n",
        name:"selectNumber",
        seeAlso:[
        ],
        params:[
            {
                description:"Native XMLElement,document, or xml string                                                        to select from",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"XMLElement or XMLDocument or String"
            },
            {
                description:"XPath expression to use to select nodes",
                optional:false,
                name:"expression",
                defaultValue:null,
                type:"XPath"
            },
            {
                description:"namespace mapping used by the expression",
                optional:true,
                name:"namespaces",
                defaultValue:null,
                type:"prefix -> URI mapping"
            }
        ],
        returns:{
            description:"result of the XPath, in Number form",
            type:"Number"
        },
        type:"classMethod",
        definingClass:"class:XMLTools",
        groups:[
            "xmlTransform"
        ]
    },
    "attr:Canvas.styleName":{
        ref:"attr:Canvas.styleName",
        flags:"IRW",
        description:"The CSS class applied to this widget as a whole.",
        name:"styleName",
        setter:[
            "setStyleName"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"normal\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('styles')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.headerBaseStyle":{
        ref:"attr:ListGridField.headerBaseStyle",
        flags:"IRW",
        description:"Custom base style to apply to this field's header button instead of\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerBaseStyle')}.<br>\n Note that depending on the header button constructor, you may have to override\n ${isc.DocUtils.linkForRef('attr:ListGridField.headerTitleStyle')} as well.",
        name:"headerBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSClass",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "classMethod:isc.askForValue":{
        ref:"classMethod:isc.askForValue",
        flags:"",
        description:" Show a modal dialog with a text entry box, asking the user to enter a value.\n <P>\n As with other convenience methods that show Dialogs, such as ${isc.DocUtils.linkForRef('classMethod:isc.warn')},\n the dialog is shown and the function immediately returns.  When the user responds, the\n provided callback is called.\n <P>\n If the user clicks OK, the value typed in is passed to the callback (including the empty\n string (\"\") if nothing was entered.  If the user clicks cancel, the value passed to the\n callback is null.\n <P>\n A default value for the text field can be passed via <code>properties.defaultValue</code>.\n <P>\n Keyboard focus is automatically placed in the text entry field, and hitting the enter key is\n the equivalent of pressing OK.\n\n",
        name:"askForValue",
        seeAlso:[
            {
                ref:"method:Dialog.okClick",
                description:null
            },
            {
                ref:"method:Dialog.cancelClick",
                description:null
            },
            {
                ref:"classAttr:Dialog.ASK_FOR_VALUE_TITLE",
                description:null
            }
        ],
        params:[
            {
                description:"message to display",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Callback to fire when the                                      user clicks a button to dismiss the dialog.\n                                      This has the single parameter 'value', indicating the\n                                      user entry, or null if cancel was pressed or the window\n                                      closed",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties for the Dialog.                                      To set ${isc.DocUtils.linkForRef('attr:Dialog.buttons','custom buttons')} for\n                                      the Dialog, set properties.buttons to an array of\n                                      buttons\n\t\t\t\t\t\t\t\t\t\teg:\t{ buttons : [Dialog.OK, Dialog.CANCEL] }",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"Dialog Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "attr:FormItem.selectOnFocus":{
        ref:"attr:FormItem.selectOnFocus",
        flags:"IRW",
        description:"Allows the ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnFocus','selectOnFocus')} behavior to be configured on a\n per-FormItem basis.  Normally all items in a form default to the value of\n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnFocus')}.",
        name:"selectOnFocus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "focus"
        ]
    },
    "attr:DSRequest.groupBy":{
        ref:"attr:DSRequest.groupBy",
        flags:"IR",
        description:"List of fields to group by when using ${isc.DocUtils.linkForRef('group:serverSummaries','server-side summarization')}.\n <p>\n Valid only for an operation of type \"fetch\".  See the \n ${isc.DocUtils.linkForRef('group:serverSummaries','Server Summaries overview')} for details and examples of usage.",
        name:"groupBy",
        seeAlso:[
            {
                ref:"attr:DSRequest.summaryFunctions",
                description:null
            }
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "serverSummaries"
        ]
    },
    "attr:MathFunction.jsFunction":{
        ref:"attr:MathFunction.jsFunction",
        flags:"IR",
        description:"Javascript method to perform the calculation associated with this function",
        name:"jsFunction",
        seeAlso:[
        ],
        valueType:"Function",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MathFunction",
        groups:[
            "formulaFields"
        ]
    },
    "classAttr:Operators.notNullTitle":{
        ref:"classAttr:Operators.notNullTitle",
        flags:"IR",
        description:"Title for the \"notNull\" operator",
        name:"notNullTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"is not null\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.imageHeight":{
        ref:"attr:ListGridField.imageHeight",
        flags:"IRW",
        description:"Height of image shown for fieldTypes image and imageFile in this field.\n <P>\n If set to a String, assumed to be a property on each record that specifies the image\n height.  For example, if <code>field.imageHeight</code> is \"logoHeight\",\n <code>record.logoHeight</code> will control the height of the image.",
        name:"imageHeight",
        seeAlso:[
            {
                ref:"attr:ListGrid.imageSize",
                description:null
            },
            {
                ref:"attr:ListGridField.imageSize",
                description:null
            },
            {
                ref:"attr:ListGridField.imageWidth",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:Calendar.minLaneWidth":{
        ref:"attr:Calendar.minLaneWidth",
        flags:"IR",
        description:"When showing ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes','vertical lanes')} in the ${isc.DocUtils.linkForRef('attr:Calendar.dayView')}, this attribute sets \n the minimum width of each column or field.",
        name:"minLaneWidth",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:DateItem.textAlign":{
        ref:"attr:DateItem.textAlign",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is <code>true</code> this property governs the alignment\n of text within the text field. Defaults to <code>\"right\"</code> by default or\n <code>\"left\"</code> if the page is in ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','rtl mode')}.\n <p>\n This attribute does not have an effect if a native HTML5 date input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"textAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.quickDrawAheadRatio":{
        ref:"attr:ListGrid.quickDrawAheadRatio",
        flags:"IRW",
        description:"Alternative to ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio')}, to be used when the user\n is rapidly changing the grids viewport (for example drag scrolling through the grid).\n If unspecified ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio')} will be used in all cases",
        name:"quickDrawAheadRatio",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1.0",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "attr:FormItem.valueMap":{
        ref:"attr:FormItem.valueMap",
        flags:"IRW",
        description:"In a form, valueMaps are used for FormItem types that allow the user to pick from a\n limited set of values, such as a SelectItem.  The valueMap can be either an Array of\n legal values or an Object where each property maps a stored value to a user-displayable\n value.\n <P>\n To set the initial selection for a form item with a valueMap, use\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')}.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap')}.",
        name:"valueMap",
        setter:[
            "setValueMap"
        ],
        seeAlso:[
        ],
        valueType:"Array or Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueMap"
        ]
    },
    "attr:ComboBoxItem.showHintInField":{
        ref:"attr:ComboBoxItem.showHintInField",
        flags:"IRWA",
        description:"If showing a hint for this form item, should it be shown within the field?\n <P>CSS style for the hint is ${isc.DocUtils.linkForRef('attr:SelectItem.textBoxStyle')} with the suffix\n \"Hint\" appended to it.",
        name:"showHintInField",
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "appearance"
        ]
    },
    "attr:GridRenderer.showSelectedStyle":{
        ref:"attr:GridRenderer.showSelectedStyle",
        flags:"IRW",
        description:"Should the \"Selected\" style be applied to selected records?",
        name:"showSelectedStyle",
        seeAlso:[
            {
                ref:"method:GridRenderer.getCellStyle",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer"
    },
    "method:FormItem.getCanEdit":{
        ref:"method:FormItem.getCanEdit",
        flags:"",
        description:" Is this form item editable or read-only?\n <P>\n This setting differs from the enabled/disabled state in that most form items will\n allow copying of the contents while read-only but do not while disabled.\n",
        name:"getCanEdit",
        seeAlso:[
        ],
        returns:{
            description:"true if editable",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "readOnly"
        ]
    },
    "method:SectionStack.sectionHeaderClick":{
        ref:"method:SectionStack.sectionHeaderClick",
        flags:"A",
        description:" Method intended to be called by the sectionHeader when it is clicked on.\n\n",
        name:"sectionHeaderClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the sectionHeader clicked on",
                optional:false,
                name:"sectionHeader",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:SectionStack"
    },
    "class:History":{
        methods:[
        ],
        ref:"class:History",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:History.registerCallback",
            "classMethod:History.unregisterCallback",
            "classMethod:History.getCurrentHistoryId",
            "classMethod:History.getHistoryData",
            "classMethod:History.setHistoryTitle",
            "classMethod:History.addHistoryEntry"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"This class provides synthetic history support.  Using this class, you can create history\n entries at any point and be called back when the user next navigates to any of these history\n entries via any of the browser mechanisms that enable navigation: back/forward buttons,\n history dropdown and bookmarks.\n <p>\n The history entries created using this mechanism work just like history entries created\n natively by the browser, except you get a callback whenever a transition occurs.  This\n implementation correctly handles \"deep\" history - i.e. it correctly maintains forward and\n back history when the user navigates forward or back away from the page that uses this\n module.\n <p>\n This module is usable independent of the rest of SmartClient - you can use it on pages that\n don't load any other modules.\n <p>\n <b>Platform Notes:</b><br>\n In Safari (4.0 and above), this module has the limitation that the arbitrary data parameter\n in addHistoryEntry() is not reliable.<br>\n Internet Explorer: If you set document.domain on the top-level page, the History\n mechanism will behave sub-optimally in IE - three clicks one the forward/back buttons will\n be required to transition to the next history entry.\n <p>\n <b>Usage overview</b><br>\n Synthetic history entries are added to the browser history via ${isc.DocUtils.linkForRef('classMethod:History.addHistoryEntry')}.\n When this method is called, the page's URL will be modified and the native browser back button\n will become active.<br>\n The ${isc.DocUtils.linkForRef('classMethod:History.registerCallback')} allows the developer to register a callback method to\n fire when the user navigates to these generated history entries. This method will be fired\n with an appropriate history ID when the user hits the back-button or explicitly navigates to\n the URL generated for some synthetic history entry.",
        name:"History",
        seeAlso:[
        ],
        type:"class"
    },
    "class:DrawGroup":{
        methods:[
            "method:DrawGroup.erase",
            "method:DrawGroup.setLeft",
            "method:DrawGroup.setTop",
            "method:DrawGroup.setWidth",
            "method:DrawGroup.setHeight",
            "method:DrawGroup.getGroupRect",
            "method:DrawGroup.moveTo",
            "method:DrawGroup.moveBy",
            "method:DrawGroup.rotateTo",
            "method:DrawGroup.rotateBy",
            "method:DrawGroup.scaleBy",
            "method:DrawGroup.getCenter",
            "method:DrawGroup.getBoundingBox",
            "method:DrawGroup.scaleTo",
            "method:DrawGroup.dragStart",
            "method:DrawGroup.dragMove",
            "method:DrawGroup.dragStop",
            "method:DrawGroup.mouseDown",
            "method:DrawGroup.mouseUp",
            "method:DrawGroup.click",
            "method:DrawGroup.mouseOver",
            "method:DrawGroup.mouseMove",
            "method:DrawGroup.mouseOut"
        ],
        ref:"class:DrawGroup",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawGroup.knobs",
            "attr:DrawGroup.useGroupRect",
            "attr:DrawGroup.left",
            "attr:DrawGroup.top",
            "attr:DrawGroup.width",
            "attr:DrawGroup.height",
            "attr:DrawGroup.drawItems"
        ],
        description:"DrawItem subclass to manage a group of other DrawItem instances.\n <P> \n A DrawGroup has no local visual representation other than that of its drawItems. Adding items\n to a drawGroup allows for central event handling, and allows them to be manipulated\n (drawn, scaled, etc) together.\n <P>\n DrawItems are added to a DrawGroup by creating the DrawItems with ${isc.DocUtils.linkForRef('attr:DrawItem.drawGroup')}\n set to a drawGroup, or by creating a DrawGroup with ${isc.DocUtils.linkForRef('attr:DrawGroup.drawItems')}.\n <P>\n DrawGroups handle events by having an explicitly specified group rectangle \n (see ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect')}). This rectangle has no visual representation within the draw pane\n (is not visible) but any user-interactions within the specified coordinates will trigger\n group level events.\n <P>\n DrawGroups may contain other DrawGroups.",
        name:"DrawGroup",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "method:List.contains":{
        ref:"method:List.contains",
        flags:"",
        description:" Return if this list contains the specified object.\n <P>\n If pos is specified, starts looking after that position.\n\n",
        name:"contains",
        seeAlso:[
        ],
        params:[
            {
                description:"item to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"optional position in the list to look after",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true == item was found, false == not found",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "attr:DetailViewer.fieldPickerWindow":{
        ref:"attr:DetailViewer.fieldPickerWindow",
        flags:"IR",
        description:"Instance of ${isc.DocUtils.linkForRef('class:FieldPickerWindow')} used if ${isc.DocUtils.linkForRef('attr:DetailViewer.canPickFields')} is set.",
        name:"fieldPickerWindow",
        seeAlso:[
        ],
        valueType:"AutoChild FieldPickerWindow",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer"
    },
    "attr:FacetChart.showStatisticsOverData":{
        ref:"attr:FacetChart.showStatisticsOverData",
        flags:"IR",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:FacetChart.showExpectedValueLine','mean line')},\n ${isc.DocUtils.linkForRef('attr:FacetChart.showStandardDeviationLines','standard deviation lines')},\n ${isc.DocUtils.linkForRef('attr:FacetChart.bandedStandardDeviations','standard deviation bands')},\n and ${isc.DocUtils.linkForRef('attr:FacetChart.showRegressionLine','regression curves')} are drawn on top of the data rather\n than underneath.",
        name:"showStatisticsOverData",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ListGrid.enumCriteriaAsInitialValues":{
        ref:"attr:ListGrid.enumCriteriaAsInitialValues",
        flags:"IR",
        description:"In a ListGrid that has a DataSource and has filter criteria that include values for\n fields declared as ${isc.DocUtils.linkForRef('type:FieldType','type \"enum\"')} in the DataSource, by default a newly\n edited row will use those filter criteria as initial values.\n <P>\n For example, if a ListGrid is showing all Accounts that have status:\"Active\" and a new row\n is created, the new row will default to status:\"Active\" unless this flag is set to false.",
        name:"enumCriteriaAsInitialValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:MultiFileItem.pickerConstructor":{
        ref:"attr:MultiFileItem.pickerConstructor",
        flags:"IR",
        description:"MultiFileItems use a ${isc.DocUtils.linkForRef('class:MultiFilePicker')} instance as their picker.\n The generated <code>picker</code> autoChild may be customized via the standard \n ${isc.DocUtils.linkForRef('type:AutoChild')} pattern.",
        name:"pickerConstructor",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"\"MultiFilePicker\"",
        type:"attr",
        definingClass:"class:MultiFileItem"
    },
    "attr:ListGridField.summaryTitle":{
        deprecated:"Rather than customizing the summaryTitle developers should typically use  the ${isc.DocUtils.linkForRef('attr:ListGridField.headerTitle')} attribute to show a different\n  title in the column header button than the title used elsewhere.",
        flags:"IRWA",
        getter:[
            "getSummaryTitle"
        ],
        type:"attr",
        ref:"attr:ListGridField.summaryTitle",
        description:"Optional long summary title for this field, provided in addition to\n ${isc.DocUtils.linkForRef('attr:ListGridField.title')}. This gives the developer an option to use a very short,\n or empty title for the ListGrid column (where space may be a factor), but have a longer\n value available to be used elsewhere.\n <p>\n By default this value will be used for the title of the context-menu item\n for showing/hiding the listGrid field when the user right-clicks on the ListGrid header.",
        name:"summaryTitle",
        valueType:"string",
        seeAlso:[
            {
                ref:"attr:ListGridField.title",
                description:null
            }
        ],
        defaultValue:"null",
        groups:[
            "appearance"
        ],
        definingClass:"object:ListGridField"
    },
    "attr:FacetChart.dataMargin":{
        ref:"attr:FacetChart.dataMargin",
        flags:"IR",
        description:"For rectangular charts (bar, column, line), margin around the inside of the\n main chart area, so that data elements are not flush to edge.",
        name:"dataMargin",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:DrawSector.rotation":{
        ref:"attr:DrawSector.rotation",
        flags:"IR",
        description:"Rotation in degrees about the ${isc.DocUtils.linkForRef('attr:DrawSector.centerPoint','centerPoint')} of the DrawSector.\n The positive direction is clockwise.",
        name:"rotation",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.0",
        type:"attr",
        definingClass:"class:DrawSector"
    },
    "method:TextItem.selectValue":{
        ref:"method:TextItem.selectValue",
        flags:"",
        description:" Put focus in this item and select the entire value.\n Only applies to text based items\n",
        name:"selectValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TextItem"
    },
    "attr:Canvas.opacity":{
        ref:"attr:Canvas.opacity",
        flags:"IRWA",
        description:"Renders the widget to be partly transparent. A widget's opacity property may\n      be set to any number between 0 (transparent) to 100 (opaque).\n\t\tNull means don't specify opacity directly, 100 is fully opaque.\n\t\tNote that heavy use of opacity may have a performance impact on some older\n      browsers.\n      <P>\n      In older versions of Internet Explorer (Pre IE9 / HTML5), opacity is achieved\n      through proprietary filters. If\n      ${isc.DocUtils.linkForRef('classAttr:Canvas.neverUseFilters','filters have been disabled')} within this application\n      developers must set ${isc.DocUtils.linkForRef('attr:Canvas.useOpacityFilter')} to true for specific components\n      on which opacity support is required.\n      <P>\n      Also note that opacity is incompatible\n      with ${isc.DocUtils.linkForRef('attr:Canvas.useBackMask','backMasks')}.",
        name:"opacity",
        setter:[
            "setOpacity"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "cues"
        ]
    },
    "attr:Scrollbar.hSrc":{
        ref:"attr:Scrollbar.hSrc",
        flags:"IR",
        description:"Base URL for the images used for the horizontal scrollbar track and end buttons.  \n <P>\n See ${isc.DocUtils.linkForRef('attr:StretchImg.items')} for a general explanation of how this base URL is\n transformed into various pieces and states.\n <P>\n For a normal 3-segment track, the suffixes \"_start\", \"_track\" and \"_end\" are added to\n this URL.  The \"start\" and \"end\" images should appear to be buttons (the user can click\n on these segments to scroll slowly).  The \"track\" segment provides a background for the\n space in which the thumb can be dragged, and can also be clicked on to scroll quickly.\n <P>\n For a 5-segment track (${isc.DocUtils.linkForRef('attr:Scrollbar.showTrackEnds')}:true), the suffixes are \"_start\", \"_track_start\",\n \"_track\", \"_track_end\" and \"_end\".",
        name:"hSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]hscroll.gif\"",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "images"
        ]
    },
    "attr:FilterBuilder.showModeSwitcher":{
        ref:"attr:FilterBuilder.showModeSwitcher",
        flags:"IR",
        description:"When enabled allows FilterBuilder in <code>topOperatorAppearance:\"radio\"</code> or \n <code>topOperatorAppearance:\"bracket\"</code> mode to be switch to the other view by the user.\n \"radio\" mode is considered simple where \"bracket\" mode is advanced mode.\n <P>\n Note that when switching from \"bracket\" to \"radio\" mode any entered criteria will be\n flattened by calling ${isc.DocUtils.linkForRef('classMethod:DataSource.flattenCriteria')}. If the criteria cannot be\n flattened without losing symantics (see ${isc.DocUtils.linkForRef('classMethod:DataSource.canFlattenCriteria')}) the user is\n prompted to confirm.",
        name:"showModeSwitcher",
        seeAlso:[
            {
                ref:"attr:FilterBuilder.modeSwitcherSimpleMessage",
                description:null
            },
            {
                ref:"attr:FilterBuilder.modeSwitcherAdvancedMessage",
                description:null
            },
            {
                ref:"attr:FilterBuilder.modeSwitcherFlattenWarningMessage",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:TextItem.formatOnFocusChange":{
        ref:"attr:TextItem.formatOnFocusChange",
        flags:"IRW",
        description:"Should ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} re-run whenever this item recieves or loses focus?\n Setting this property allows developers to conditionally format the display value based on\n item.hasFocus, typically to display a longer, more informative string while the item does\n not have focus, and simplifying it down to an easier-to-edit string when the user puts\n focus into the item.",
        name:"formatOnFocusChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "attr:DSRequest.componentId":{
        ref:"attr:DSRequest.componentId",
        flags:"IR",
        description:"For requests submitted by a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}, the ${isc.DocUtils.linkForRef('attr:Canvas.ID')} of the\n submitting component.\n <P>\n This ID will be present for operations including automatic saves by a ListGrid \n ${isc.DocUtils.linkForRef('group:editing','during editing')}, or calls to\n ${isc.DocUtils.linkForRef('method:DynamicForm.saveData','form.saveData()')}.  It will not be present for a direct\n call to a DataSource method such as ${isc.DocUtils.linkForRef('method:DataSource.fetchData')}.\n <P>\n Note this is the component's <b>String</b> ID - you can retrieve the component itself\n via ${isc.DocUtils.linkForRef('classMethod:Canvas.getById')}.\n <P>\n This property should be used for debugging purposes only - do not use it to trigger\n differences in server-side behavior, instead, use ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} because only\n <code>operationId</code> is considered when assessing\n ${isc.DocUtils.linkForRef('group:dsRequestEquivalence','request equivalence')}.",
        name:"componentId",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:ListGrid.filterEditorProperties":{
        ref:"attr:ListGrid.filterEditorProperties",
        flags:"IR",
        description:"Properties to apply to the automatically generated ${isc.DocUtils.linkForRef('attr:ListGrid.filterEditor')}\n if ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is true.",
        name:"filterEditorProperties",
        seeAlso:[
        ],
        valueType:"RecordEditor properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:StretchItem.src":{
        ref:"attr:StretchItem.src",
        flags:"IR",
        description:"The URL of the media file for this StretchItem.",
        name:"src",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:StretchItem"
    },
    "method:Tree.getName":{
        ref:"method:Tree.getName",
        flags:"",
        description:"\n Get the 'name' of a node.  This is node[${isc.DocUtils.linkForRef('attr:Tree.nameProperty')}].  If that value has not\n been set on the node, a unique value (within this parent) will be auto-generated and\n returned.\n\t\n",
        name:"getName",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"name of the node",
            type:"string"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:DrawLine.getCenter":{
        ref:"method:DrawLine.getCenter",
        flags:"",
        description:" Get the midpoint of the line.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the midpoint",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawLine"
    },
    "attr:DrawnValue.radius":{
        ref:"attr:DrawnValue.radius",
        flags:"IR",
        description:"For pie mode only, the radius of the segment for the data value.",
        name:"radius",
        seeAlso:[
        ],
        valueType:"Double",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "group:testRunner":{
        ref:"group:testRunner",
        title:"TestRunner",
        treeLocation:[
            "Concepts/Automated Testing"
        ],
        refs:[
        ],
        description:"The SmartClient TestRunner is a system for running a suite of Selenium tests on a periodic\n basis, comparing the results to previous results, and generating email alerts reporting on\n new test failures or fixes to tests that were previously failing.\n <P>\n TestRunner is a key piece of implementing the <i>Continuous Integration</i> methodology,\n whereby continuous testing is applied so that regressions are caught immediately.  This\n allows a product or application to be kept continuously at a very high level of quality,\n allowing for more frequent and predictable releases.\n <P>\n <h3>Database Setup</h3>\n <P>\n Each time TestRunner executes it by default stores results to a SQL database via two \n SQLDataSources:\n <ul>\n <li><b>batchRun.ds.xml</b>: stores global information about the run as a whole: an ID for\n    the run, when it started and ended, and optional data to be used in emails generated by\n    the system.\n <li><b>testResult.ds.xml</b>: stores the result of each individual test, including when it\n    started and ended, and information about errors that occurred, if any\n </ul>\n These DataSources are present in the \n <smartclient><code>smartclientSDK/tools/selenium/</code></smartclient>\n <smartgwt><code>selenium/</code></smartgwt>\n directory of your SDK.  If you choose to move them elsewhere, simply update the DataSources\n location (configured by <code>project.datasources</code> in \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}).\n <P>\n These DataSources behave just like other SQLDataSources: \n <ul>\n <li> they are compatible with all the database types that SmartClient supports\n <li> they will use the default database configured for your project, or you can set\n      ${isc.DocUtils.linkForRef('attr:DataSource.dbName')} in the .ds.xml file to use a second database instead\n <li> you can setup the database connection and generate SQL tables using the\n      ${isc.DocUtils.linkForRef('group:adminConsole')}\n <li> you can build your own UI for viewing test results, by loading the\n      <code>batchRun</code> and <code>testResult</code> DataSources like any other\n      SQLDataSource and binding components such as ListGrids to them.\n <li> if you deploy an application that includes these DataSources, third-party tools can\n      access these DataSources via the RESTHandler servlet\n </ul>\n <P>\n If needed, the IDs of these DataSources can be configured via the \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} settings\n <code>autotest.batchRunDS</code> and <code>autotest.testResultDS</code>.\n <P>\n Note: If you use the default server.properties shipped with the SDK, TestRunner and the \n SDK web server will share a common SQL database, so that the web server and TestRunner\n cannot both run at once.  This means that you must point TestRunner at the web server of\n a separate SDK installation - on a separate matchine or in a separate filesystem location.\n <P>\n <h3>Adding Test Files</H3>\n <P>\n TestRunner currently supports tests written in Selenese, Selenium's HTML-based format for\n recording automated tests.  The Selenium IDE can be used to record tests and save them in\n Selenese format.  For more background on the Selenium IDE, SmartClient's extensions, and\n the use of WebDriver / Selenium 2, see the \n ${isc.DocUtils.linkForRef('group:automatedTesting','Automated Testing Overview')}.\n <P>\n Test files should be saved with the extension .rctest.html.  They should all appear under\n a common root directory (called <code>testRoot</code>), but any level of nesting is allowed,\n and any other files that appear under <code>testRoot</code> will be ignored; only\n .rctest.html files will be processed.\n <P>\n The <code>testRoot</code> directory is passed to TestRunner when you execute it.  In the\n database and in emails, test are identified by their directory path relative to\n <code>testRoot</code>.\n <P>\n Adding a test to the test suite is as simple as placing the .rctest.html file somewhere under\n the <code>testRoot</code> directory; on the next TestRunner execution, TestRunner will\n notice the new test and start reporting results for it (including reporting it as a failure\n if it fails in its very first run).\n <P>\n The included test result viewing application (see below) also provides an interface to\n upload tests if you prefer not to allow direct filesystem access to the machine where\n TestRunner executes.\n <P>\n <h3>Running Test Runner</h3>\n <P>\n TestRunner is an ordinary Java class - com.isomorphic.autotest.TestRunner - and can be run\n from the command line in the usual fashion, or run programmatically from within a Java\n application using the wrapper class com.isomorphic.autotest.TestRunnerDriver.  We also\n provide convenience scripts to run the TestRunner Java class in the SDK root directory.\n <P>\n Minimally, TestRunner needs to know the base directory of a set of test files.  All files\n saved anywhere under this base directory which end in the extension .rctest.html will be\n assumed to be Selenese test files and executed.\n <P>\n As is standard for Selenese test files, the first command in the file is typically an \"open\"\n command with the URL of the application which should be opened in a browser so that\n subsequent commands can be run.  \n <P>\n The assumption is that the application that will be tested is already deployed by the time\n TestRunner is run; how to automate building and deployment of applications is outside of the\n scope of this document, however, the recommendation is that a Revision-Control System (such\n as SVN, git or CVS) is used, and that every time a developer \"checks in\" or \"commits\"\n changes, the application being tested is built and deployed to a test server, then TestRunner\n is run.  Continuous Build Servers (such as Hudson, Bamboo or CruiseControl) may help\n automate the step of building from source control and deploying to a test server, then such\n a Build Server can typically be configured to trigger TestRunner.\n <P>\n TestRunner requires several resources to be in expected default locations from the current\n directory unless you provide overrides via the command line or ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.\n Some of\n the required resources are:\n <ul>\n    <li> the batch report email template, by default at mailTemplats/batchReport.template\n    <li> the selenium test template, user extensions, and batchRun/testResult dataSource\n         XML files, by default in tools/selenium\n    <li> the dataSource XML schema files, by default in isomorphic/system/schema\n </ul>\n <P>\n <h4>Command-line Examples</h4>\n <P>\n The following command-line would run TestRunner, execute all tests under the default\n testRoot directory \"tests\", and commit the results:\n <pre>\n java com.isomorphic.autotest.TestRunner</pre>\n This assumes your classpath environment has been set to include the isomorphic SDK JARs;\n you may invoke the convenience script test_runner.sh/.bat/.command in the SDK root directory\n to run the TestRunner Java class without having to set the classpath.\n <P>\n The following command-line would execute TestRunner as above, but run all tests under the\n directory \"foo/bar\" relative to the current directory, and email a report of the results:\n <pre>\n java com.isomorphic.autotest.TestRunner -tr foo/bar -e user@company.com</pre>\n\n To do the same, but only run a particular test, you can use the files option (-f):\n <pre>\n java com.isomorphic.autotest.TestRunner -tr foo/bar -c -f test1.rctest.html -e user@company.com</pre>\n Note that when a file is specified, the default is not to commit the results unless\n requested via the commit option (-c).\n <P>\n <h4>Java API</h4>\n <P>\n The following Java code would do the same as the last command-line example:\n <pre>\n     TestRunnerDriver driver = new TestRunnerDriver();\n     driver.setTestRoot(\"foo/bar\");\n     driver.setBatchCommit(true);\n     driver.setFiles(new String[] { \"test1.rctest.html\" });\n     driver.setAlertEmail(\"user@company.com\");\n     driver.run();\n </pre>\n <P>\n <h4>TestRunner Configuration</h4>\n <P>\n TestRunner supports several more command-line options, or equivalent settings that can be\n applied via Java.  The following table summarizes the command-line options, equivalent Java\n Setter in the DriverConfiguration interface, and it's behavior (including default behavior).\n <P>\n <table border=\"1\">\n  <thead>\n    <tr><th>Command-line Option</th><th>Java Setter</th>\n    <th>${isc.DocUtils.linkForRef('group:server_properties','server.properties')} Name</th><th>Behavior</th></tr>\n  <thead>\n  <tbody>\n     <tr><td>-b &lt;browser&gt;</td><td>setBrowser</td><td>N/A</td>\n     <td>Specifies the browser string passed to Selenium. Default is <b>*firefox</b>\n     See ${isc.DocUtils.linkForRef('group:usingSelenium')}</td></tr>\n     <tr><td>-br &lt;branch&gt;</td><td>setBranch</td><td>autotest.branch</td>\n     <td>Specifies a branch for the batch, used in the batch run record and email\n     notification.  Default is <b>MAIN</b>.Test result comparison occurs per branch.</td></tr>\n     <tr><td>-c/-nc</td><td>setBatchCommit</td><td>N/A</td>\n     <td>This pair of argumentless options allows you to force the batch results to \n     be committed (-c) or not committed (-nc).  This is useful to override the default\n     of committing (or of not committing if the -f option has been passed).</td></tr>\n     <tr><td>-cs</td><td>setCaptureScreenshot</td><td>N/A</td><td>\n     Configures TestRunner to capture a PNG screenshot of the browser if a\n     Selenium test fails, adding the image to the test result record.</td></tr>\n     <tr><td>-f &lt;files&gt;</td><td>setFiles</td><td>N/A</td><td>Specifies a file or list\n     of files to run. This option can restrict which Selenium scripts under testRoot get run.\n     Relative paths from the testRoot or bare filenames may be provided. When present,\n     this option also disables the default behavior of committing test results.</td></tr>\n     <tr><td>-fr &lt;path&gt;</td><td>setFileRoot</td><td>N/A</td><td>Sets the root directory\n     for all other file system paths.  If not set, defaults to current working directory where\n     Java was launched, or the web server root if TestRunner is run in a servlet.</td></tr>\n     <tr><td>-h</td><td>N/A</td><td>N/A</td><td>Lists available command-line options.</td></tr>\n     <tr><td>-hp &lt;port&gt;</td><td>setHttpPort</td><td>N/A</td>\n     <td>Sets the web server port Selenium should use to run the tests.\n     Default is <b>8080</b></td></tr>\n     <tr><td>-ht &lt;host/IP&gt;</td><td>setHttpTarget</td><td>N/A</td>\n     <td>Sets the target web server Selenium should use to run the tests.\n     Default is <b>localhost</b></td></tr>\n     <tr><td>-lg &lt;message&gt;</td><td>setBatchLog</td><td>N/A</td><td>Provides a\n     log message to include in the record for this batch run. (No Default)</td></tr>\n     <tr><td>-lp</td><td>N/A</td><td>N/A</td>\n     <td>Informs TestRunner that a message or file has been piped to STDIN as the\n     batch log message.</td></tr>\n     <tr><td>-sm</td><td>setSaveMessages</td><td>N/A</td>\n     <td>Configures TestRunner to save the client log messages for each test to the\n     associated test record if the test fails.</td></tr>\n     <tr><td>-sr &lt;path&gt;</td><td>setServerFileRoot</td><td>N/A</td>\n     <td>Sets the serverFileRoot directory. Default is <b>/</b>. Selenium scripts executing\n     open() commands on the httpTarget server will by use this default path.</td></tr>\n     <tr><td>-t &lt;timestamp&gt;</td><td>setTimestamp</td><td>N/A</td>\n     <td>Forces comparison of the batch results to be against the batch run with a\n     timestamp closest to that provided, rather than the most recent batch run.  Format\n     is \"2012-12-31 23:59:59\" in the local time zone.</td></tr>\n     <tr><td>-tr &lt;path&gt;</td><td>setTestRoot</td><td>autotest.testRoot</td>\n     <td>Sets the testRoot directory relative to the current directory. By default, its\n     value is <b>tests</b>, and all Selenium scripts under the testRoot will be executed\n     by TestRunner.</td><tr>\n     <tr><td>-un &lt;userName&gt;</td><td>setUserName</td><td>autotest.userName</td>\n     <td>Specifies a user name for the batch run record. (No Default)</td></tr>\n     <tr><td>-vm &lt;mode&gt;</td><td>setServerLogMode</td><td>N/A</td>\n     <td>Configures TestRunner to collect the server log messages for each test if\n     it fails.  Legal modes are \"none\", \"some\", or \"all\".  Default is <b>some</b>.</td></tr>\n     <tr><td>-vo &lt;out&gt;</td><td>setServerLogOutputMethod</td><td>N/A</td>\n     <td>Configures the output method that TestRunner will use to report or persist\n     any server log messages; only has an effect for server log modes of \"some\" or \"all\".\n     Legal values are \"email\", \"datasource\", or \"both\".  Default is <b>email</b>.</td></tr>\n     <tr><td>-x/-nx</td><td>setMaximizeBrowser</td><td>N/A</td>\n     <td>Sets whether to maximize the browser for Selenium tests.  If not explicitly\n     set via this call, the browser will be maximized if and only if screenshots \n     are being taken.</td></tr>\n  </tbody>\n </table>\n <P>\n <h3>Email Notifications</h3>\n <P>\n At completion of the batch of tests, TestRunner can automatically send out an email\n notification summarizing the results of the test run, including error messages for \n any newly failing tests.  A velocity template file is used to control its format; see \n ${isc.DocUtils.linkForRef('group:velocitySupport','Velocity Support')}. \n The following velocity variables are available:\n <P>\n <ul>\n     <li><b>$firstBatchFound</b>. Whether baseline batch was found with which to compare</li>\n     <li><b>$fixed</b>. A list of the test results for tests fixed in this batch run</li>\n     <li><b>$regression</b>. A list of the test results for tests broken in this batch run</li>\n     <li><b>$totalTestFiles</b>. The total number of tests run in this batch run</li>\n     <li><b>$passedTestFiles</b>. The number of tests that passed  in this batch run</li>\n     <li><b>$batchStartTime</b>. Timestamp associated with start of this batch run</li>\n     <li><b>$batchLog</b>. Log message, if any was provided for this batch run</li>\n </ul>\n A sample/default template is provided as the file <b>mailTemplates/batchReport.template</b>.\n <P>\n The following options govern the Email Notifications:\n <table border=\"1\">\n  <thead>\n    <tr><th>Command-line Option</th><th>Java Setter</th>\n    <th>${isc.DocUtils.linkForRef('group:server_properties','server.properties')} Name</th><th>Behavior</th></tr>\n  <thead>\n  <tbody>\n     <tr><td>-cc &lt;recipient&gt;</td><td>setCcEmail</td><td>autotest.ccEmail</td>\n     <td>Sets the recipient email address for batch report email.  This recipient will\n     always be cc'd a copy of the batch report email, regardless of whether fixes or\n     regressions are present. (No Default)</td></tr>\n     <tr><td>-e &lt;recipient&gt;</td><td>setAlertEmail</td><td>autotest.alertEmail</td>\n     <td>Sets the recipient email address for batch report email.  If the \"repeat email\"\n     recipient address has also been set via -re, this address will only be sent \"alert\n     email\" reports where fixes or regressions are present.  Otherwise, it will receive all\n     batch report email.  (No Default)</td></tr>\n     <tr><td>-m &lt;mailHost&gt;</td><td>setMailHost</td><td>autotest.mailHost</td>\n     <td>Specifies what mail host to use to send mail.  If not provided, your mail\n     software will decide what host to use.</td></tr>\n     <tr><td>-ms &lt;subject&gt;</td><td>setMailSubject</td><td>autotest.mailSubject</td>\n     <td>Sets subject line base to use when sending the email reporting batch results.\n     Regressions and fixes info will be appended to the provided subject content.</td></tr>\n     <tr><td>-mt &lt;file&gt;</td><td>setMailTemplate</td><td>autotest.mailTemplate</td>\n     <td>Specifies what velocity template file to use when generating the batch report\n     email for this batch run. Default is <b>mailTemplates/batchReport.template</b></td></tr>\n     <tr><td>-ne</td><td>setNoEmail</td><td>N/A</td><td>Disables sending any email for\n     the batch run. If recipient email addresses have not been set through the\n     command line, Java setters, or server.properties, it's not needed.  However, it\n     may be useful in suppressing email in cases where they have been set.</td></tr>\n     <tr><td>-re &lt;recipient&gt;</td><td>setRepeatEmail</td><td>autotest.repeatEmail</td>\n     <td>Sets the recipient email address for batch report email.  If the \"alert email\"\n     recipient address has also been set via -e, this address will only be sent \"repeat\n     email\" reports where no fixes or regressions are present.  Otherwise, it will receive\n     all batch report email.  (No Default)</td></tr>\n     <tr><td>-se &lt;sender&gt;</td><td>setSenderEmail</td><td>autotest.senderEmail</td>\n     <td>Sets the sender email address for batch report email.  Only needed if there is\n     a problem sending email using the sender address generated by default.</td></tr>\n  </tbody>\n </table>\n <P>\n Note: If you choose not to have any email sent upon completion of a batch run, and decide\n not to commit the results to the DataSources, the results of each batch run can still be\n determined by examing the Java console log, which captures the output of each RC test script.\n <P>\n <h3>Result Viewer</h3>\n <P>\n TestRunner comes with a very very simple application for interactively viewing and searching\n test results, implemented in &#83;martClient technology.  This application is meant as a\n starting point for building your own application for interactive viewing of test results, if\n you prefer to go beyond email notifications.\n <P>\n The source code for this application is just a single testResultViewer.jsp file in the \"selenium\"\n directory in the SDK; copy it anywhere under <code>webroot</code> in a project that includes\n the SmartClient Server and it will function.\n <P>\n The result viewing application also includes the ability to upload new test files to\n <code>testRoot</code> as an alternative to providing testers with direct access to the\n filesystem for the machine where TestRunner executes.\n <P>\n <h3>Getting Started FAQ</h3>\n <P>\n <smartclient>\n Q: When I run TestRunner, I want to target the SmartClient server, but TestRunner fails\n due to HSQLDB reporting a locked database.<BR>\n A: You must stop the SC server running from the same SDK installation as TestRunner before \n running TestRunner.  Another copy of the SDK may be installed elsewhere on the same machine,\n or TestRunner may be pointed at a different machine using the -ht comand-line option.\n </smartclient>\n <smartgwt>\n Q: When I run TestRunner, I want to target the SGWT showcase, but TestRunner fails due to \n HSQLDB reporting a locked database.<BR>\n A: By default, TestRunner uses the HSQLDB associated with the SGWT showcase when run from\n the SGWT ZIP root directory.  Therefore, if samples/showcase/war has been deployed to a \n webserver, you must stop it before running TestRunner.  One simple alternative is to deploy\n the file showcase.war from the SGWT ZIP root, which has a separate copy of the HSQLDB.  You\n may also simply install another copy of the SGWT ZIP in a different location on the same \n machine, or point TestRunner at a different machine using the -ht command-line option.\n </smartgwt>\n <P>\n Q: When I run TestRunner, TestRunner fails reporting that DataSource BatchRun or TestResult\n cannot be found.<BR>\n A: These DataSources must be imported into the default HSQLDB before TestRunner can be used.\n <smartclient>\n Use the \"import\" option of tools/adminConsole.jsp under the SDK installation root directory\n </smartclient>\n <smartgwt>\n Use the \"import\" option of showcase/tools/adminConsole.jsp under the deployed SGWT showcase\n </smartgwt>\n to select and import the BatchRun and TestResult DataSources prior to running TestRunner.",
        name:"testRunner",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MetricSettings.decimalPrecision":{
        ref:"attr:MetricSettings.decimalPrecision",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('attr:FacetChart.decimalPrecision')} used to render the numeric labels of this metric axis.",
        name:"decimalPrecision",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"2",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "classMethod:Date.createLogicalTime":{
        ref:"classMethod:Date.createLogicalTime",
        flags:"",
        description:" Create a new Date object to represent a logical time value (rather than a specific datetime\n value), typically for display in a ${isc.DocUtils.linkForRef('attr:DataSourceField.type','time type field')}. The generated\n Date value will have year, month and date set to the epoch date (Jan 1 1970), and time\n elements set to the supplied hour, minute and second (in browser native local time).\n",
        name:"createLogicalTime",
        seeAlso:[
        ],
        params:[
            {
                description:"hour (0-23)",
                optional:false,
                name:"hour",
                defaultValue:null,
                type:"int"
            },
            {
                description:"minute (0-59)",
                optional:false,
                name:"minute",
                defaultValue:null,
                type:"int"
            },
            {
                description:"second (0-59)",
                optional:false,
                name:"second",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"new Javascript Date object representing the time in question",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "method:DateChooser.setFiscalCalendar":{
        ref:"method:DateChooser.setFiscalCalendar",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('object:FiscalCalendar')} object that will be used by this DateChooser.  If unset,\n the _link{Date.getFiscalCalendar, global fiscal calendar} is used.\n\n",
        name:"setFiscalCalendar",
        seeAlso:[
        ],
        params:[
            {
                description:"the fiscal calendar for this chooser",
                optional:true,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        type:"method",
        definingClass:"class:DateChooser"
    },
    "method:TimeItem.getDuration":{
        ref:"method:TimeItem.getDuration",
        flags:"A",
        description:" When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is set to false, this method \n returns the value of the time expressed as a duration in the ${isc.DocUtils.linkForRef('type:TimeUnit','timeUnit')}\n provided.  If no timeUnit is passed, the default is the smallest unit for which a \n picker is visible.\n",
        name:"getDuration",
        seeAlso:[
        ],
        params:[
            {
                description:"the unit of the return value",
                optional:true,
                name:"timeUnit",
                defaultValue:null,
                type:"TimeUnit"
            }
        ],
        returns:{
            description:"the item's value, expressed as a duration in the TimeUnit passed",
            type:"int"
        },
        type:"method",
        definingClass:"class:TimeItem"
    },
    "method:Canvas.setBorder":{
        ref:"method:Canvas.setBorder",
        flags:"",
        description:" Set the CSS border of this component, as a CSS string including border-width,\n border-style, and/or color (eg \"2px solid blue\").\n <P>\n This property applies the same border to all four sides of this component.  Different\n per-side borders can be set in a CSS style and applied via ${isc.DocUtils.linkForRef('attr:Canvas.styleName')}.\n\n",
        name:"setBorder",
        seeAlso:[
        ],
        params:[
            {
                description:"new border to set to (eg: \"2px solid black\")",
                optional:false,
                name:"newBorder",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:DetailViewer.blockSeparator":{
        ref:"attr:DetailViewer.blockSeparator",
        flags:"IRW",
        description:"A string (HTML acceptable) that will be written to a page to separate blocks.",
        name:"blockSeparator",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&lt;br&gt;&lt;br&gt;\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.defaultIconSrc":{
        ref:"attr:ListGridField.defaultIconSrc",
        flags:"IRA",
        description:"If this field is editable, this property will be passed to editors displayed for\n cells within this field as ${isc.DocUtils.linkForRef('attr:FormItem.defaultIconSrc')}.",
        name:"defaultIconSrc",
        seeAlso:[
            {
                ref:"attr:ListGridField.icons",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:Slider.setRoundPrecision":{
        ref:"method:Slider.setRoundPrecision",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.roundPrecision')} property of the slider\n\n",
        name:"setRoundPrecision",
        seeAlso:[
        ],
        params:[
            {
                description:"new round precision",
                optional:false,
                name:"roundPrecision",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:TabBar.tabs":{
        ref:"attr:TabBar.tabs",
        flags:"IR",
        description:"Tab for this TabBar.",
        name:"tabs",
        seeAlso:[
        ],
        valueType:"Array of Tab Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabBar"
    },
    "attr:SectionStackSection.hidden":{
        ref:"attr:SectionStackSection.hidden",
        flags:"I",
        description:"Sections default to the visible state.  This\n attribute allows you to explicitly control the visible/hidden state of the\n section by overriding the above default behavior.",
        name:"hidden",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "attr:PickList.optionFilterContext":{
        ref:"attr:PickList.optionFilterContext",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code>, and this property is\n not null, this will be passed to the datasource as ${isc.DocUtils.linkForRef('class:DSRequest')} properties when\n performing the filter operation on the dataSource to obtain the set of options for the\n list.",
        name:"optionFilterContext",
        seeAlso:[
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:DateChooser.prevMonthIconRTL":{
        ref:"attr:DateChooser.prevMonthIconRTL",
        flags:"IR",
        description:"Icon for the previous month button if ${isc.DocUtils.linkForRef('classMethod:Page.isRTL')} is true.\n If not set, and the page is in RTL mode, the ${isc.DocUtils.linkForRef('attr:DateChooser.nextMonthIcon')} will be\n used in place of the ${isc.DocUtils.linkForRef('attr:DateChooser.prevMonthIcon')} and vice versa.",
        name:"prevMonthIconRTL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:Slider.labelSpacing":{
        ref:"attr:Slider.labelSpacing",
        flags:"IRW",
        description:"The space around the labels used to display the minimum, maximum and current values of the\n slider.",
        name:"labelSpacing",
        setter:[
            "setLabelSpacing"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:Slider"
    },
    "classMethod:isA.Instance":{
        ref:"classMethod:isA.Instance",
        flags:"",
        description:"\n\tIs <code>object</code> an instance of some class?\n\n",
        name:"Instance",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is an instance of some class",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "attr:FilterBuilder.inlineAndNotTitle":{
        ref:"attr:FilterBuilder.inlineAndNotTitle",
        flags:"IR",
        description:"Title for the \"And Not\" operator (only applicable to the \"inline\" appearance)",
        name:"inlineAndNotTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"and not\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataSource.auditDSConstructor":{
        ref:"attr:DataSource.auditDSConstructor",
        flags:"IR",
        description:"For DataSources with ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing enabled')}, optionally specifies the\n ${isc.DocUtils.linkForRef('attr:DataSource.serverConstructor')} for the automatically generated audit DataSource.  The\n default is to use the same <code>serverConstructor</code> as the DataSource where\n <code>audit=\"true\"</code> was declared.\n <p>\n This property is primarily intended to allow the use of SQLDataSource\n (${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType:\"sql\"')}) as an audit DataSource for a DataSource that\n might be of another type.  For example, you might have a DataSource that implements all CRUD\n operations via Java logic in ${isc.DocUtils.linkForRef('group:dmiOverview','DMI declaration')} methods, and so doesn't provide generic\n storage; by using SQLDataSource as the type of your audit DataSource, you don't need to\n implement your own scheme for storing and querying audit data, and the necessary audit\n tables will be automatically generated in the database.\n <p>\n Similarly, even if you do use a reusable DataSource type such as the built-in JPADataSource,\n using SQLDataSource for audit DataSources means there's no need to write a JPA bean just to\n achieve storage of an audit trail.\n <p>\n To simplify this intended usage, the string \"sql\" is allowed for\n <code>auditDSConstructor</code> as a means of specifying that the built-in SQLDataSource class\n should be used.  For any other type, use the fully qualified Java classname, as is normal\n for <code>serverConstructor</code>.",
        name:"auditDSConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "classMethod:EventHandler.getWheelDeltaX":{
        ref:"classMethod:EventHandler.getWheelDeltaX",
        flags:"",
        description:" Horizontal scroll delta reported by a ${isc.DocUtils.linkForRef('method:Canvas.mouseWheel','mouseWheel')} event\n (such as a horizontal swipe on a track-pad).\n <P>\n Returns a numeric value indicating how far the mouse wheel was rotated / the magnitude\n of the scroll gesture. This value will be\n positive if the user scrolled the mousewheel to the right, negative if scrolled in the\n other direction. \n \n",
        name:"getWheelDeltaX",
        seeAlso:[
            {
                ref:"classMethod:EventHandler.getWheelDeltaY",
                description:null
            }
        ],
        returns:{
            description:"numeric value indicating how far the mouse wheel was rotated.",
            type:"float"
        },
        type:"classMethod",
        definingClass:"class:EventHandler"
    },
    "classMethod:EventHandler.getWheelDeltaY":{
        ref:"classMethod:EventHandler.getWheelDeltaY",
        flags:"",
        description:" Applies to ${isc.DocUtils.linkForRef('method:Canvas.mouseWheel','mouseWheel')} events only.\n Returns a numeric value indicating how far the mouse wheel was rotated. This value will be\n positive if the user scrolled the mousewheel forward or up, or negative if scrolled in the\n other direction. For a standard wheel-mouse, an increment of 1 relates to the smallest\n possible rotation of the mouse wheel. For other scrolling devices, such as scroll \n gestures on a track pad, wheel delta may be reported in finer grained increments \n (causing this method to return a fractional value).\n <P>\n Note that behavior for trackpad scroll-gestures may differ by browser, but where \n separate vertical and horizontal scroll information is available, this method\n refers to a vertical scroll gesture.\n <P>\n Developers should also be aware\n that some browsers and operating systems allow the user to configure the sensitivity\n of the mouse wheel or trackpad, which may change this value.\n\n",
        name:"getWheelDeltaY",
        seeAlso:[
            {
                ref:"classMethod:EventHandler.getWheelDeltaX",
                description:null
            }
        ],
        returns:{
            description:"numeric value indicating how far the mouse wheel was rotated.",
            type:"float"
        },
        type:"classMethod",
        definingClass:"class:EventHandler"
    },
    "method:EditContext.addPaletteNodesFromXML":{
        ref:"method:EditContext.addPaletteNodesFromXML",
        flags:"",
        description:" Recreate ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} from an XML representation of \n ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')} (possibly created by calling\n ${isc.DocUtils.linkForRef('method:EditContext.serializeAllEditNodes')} or ${isc.DocUtils.linkForRef('method:EditContext.serializeEditNodes')}.\n <P>\n By default, components that have ${isc.DocUtils.linkForRef('attr:Canvas.ID','global IDs')} will not\n actually be allowed to take those global IDs - instead, only widgets that have one of the\n global IDs passed as the <code>globals</code> parameter will actually receive their global\n IDs.  To override this behavior, pass the special value ${isc.DocUtils.linkForRef('classAttr:RPCManager.ALL_GLOBALS')}\n for the <code>globals</code> parameter.\n\n",
        name:"addPaletteNodesFromXML",
        seeAlso:[
            {
                ref:"method:EditContext.serializeAllEditNodes",
                description:null
            },
            {
                ref:"method:EditContext.serializeEditNodes",
                description:null
            }
        ],
        params:[
            {
                description:"XML string",
                optional:false,
                name:"xmlString",
                defaultValue:null,
                type:"String"
            },
            {
                description:"parent node (defaults to the root)",
                optional:true,
                name:"parentNode",
                defaultValue:null,
                type:"EditNode"
            },
            {
                description:"widgets to allow to take their global IDs",
                optional:true,
                name:"globals",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:Canvas.mouseStillDownInitialDelay":{
        ref:"attr:Canvas.mouseStillDownInitialDelay",
        flags:"IRWA",
        description:"Amount of time (in milliseconds) before mouseStillDown events start to be fired\n repeatedly for this canvas. See ${isc.DocUtils.linkForRef('method:Canvas.mouseStillDown')} for details.",
        name:"mouseStillDownInitialDelay",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"400",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "events"
        ]
    },
    "attr:MultiSortPanel.directionFieldTitle":{
        ref:"attr:MultiSortPanel.directionFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"direction\" field.",
        name:"directionFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Order\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ResultSet.compareCriteria":{
        ref:"method:ResultSet.compareCriteria",
        flags:"",
        description:" Default behavior is to call ${isc.DocUtils.linkForRef('method:DataSource.compareCriteria')} to determine whether new\n criteria is guaranteed more restrictive, equivalent to the old criteria, or not guaranteed\n more restrictive, returning 1, 0 or -1 respectively.  See\n ${isc.DocUtils.linkForRef('method:DataSource.compareCriteria')} for a full explanation of the default behavior.\n <P>\n Override this method or ${isc.DocUtils.linkForRef('method:DataSource.compareCriteria')} to implement your own client-side\n filtering behavior.\n\n",
        name:"compareCriteria",
        seeAlso:[
            {
                ref:"type:CriteriaPolicy",
                description:null
            }
        ],
        params:[
            {
                description:"new filter criteria",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"old filter criteria",
                optional:false,
                name:"oldCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"dataSource request properties",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"overrides ${isc.DocUtils.linkForRef('type:CriteriaPolicy')}",
                optional:true,
                name:"policy",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"0 if the filters are equivalent, 1 if newFilter is guaranteed more                      restrictive, and -1 if newFilter is not guaranteed more restrictive",
            type:"Number"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:IconMenuButton.menu":{
        ref:"attr:IconMenuButton.menu",
        flags:"IRW",
        description:"The menu to show when the ${isc.DocUtils.linkForRef('attr:IconButton.menuIconSrc','menu-icon')} is clicked.\n <P>\n For a menu button with no menu (menu: null) the up/down arrow image can\n be suppressed by setting\n ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuButtonImage','showMenuButtonImage')}: <code>false</code>.",
        name:"menu",
        seeAlso:[
        ],
        valueType:"Menu",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconMenuButton"
    },
    "attr:RPCResponse.transactionNum":{
        ref:"attr:RPCResponse.transactionNum",
        flags:"R",
        description:"ID of the transaction sent to the server via ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendQueue')} containing the\n ${isc.DocUtils.linkForRef('class:RPCRequest')} associated with this response.",
        name:"transactionNum",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCResponse"
    },
    "attr:TreeNode.isFolder":{
        ref:"attr:TreeNode.isFolder",
        flags:"IR",
        description:"Set to <code>true</code> or a string that is not equal to (ignoring case)\n <code>\"false\"</code> to explicitly mark this node as a folder.  See ${isc.DocUtils.linkForRef('method:Tree.isFolder')} for\n a full description of how the ${isc.DocUtils.linkForRef('class:Tree')} determines whether a node is a folder or not.\n <p>\n Note: the name of this property can be changed by setting ${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty')}.",
        name:"isFolder",
        seeAlso:[
            {
                ref:"attr:Tree.isFolderProperty",
                description:null
            }
        ],
        valueType:"Boolean or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "classAttr:EventHandler.ALL_EDGES":{
        ref:"classAttr:EventHandler.ALL_EDGES",
        flags:"IR",
        description:"Constant containing the full set of edges a component may be resized from.\n When a component is marked as canDragResize, this will be the default set of edges\n from which it may be resized.",
        name:"ALL_EDGES",
        seeAlso:[
        ],
        valueType:"Array of string",
        defaultValue:"[\"T\",\"L\",\"B\",\"R\",\"TL\",\"TR\",\"BL\",\"BR\"]",
        type:"classAttr",
        definingClass:"class:EventHandler"
    },
    "attr:SelectItem.pickListProperties":{
        ref:"attr:SelectItem.pickListProperties",
        flags:"IRA",
        description:"If specified this properties block will be applied to the ${isc.DocUtils.linkForRef('class:PickListMenu','pickList')}\n created for this FormItem.\n <P>\n <i>Note</i>: Not every ListGrid property is supported when assigned to a pickList.\n Where there is a dedicated API on the form item (such as ${isc.DocUtils.linkForRef('attr:PickList.pickListCellHeight','pickListCellHeight')}),\n we recommend that be used in favor of setting the equivalent property on the \n <code>pickListProperties</code> block. Also note that while setting\n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is a valid way to create a filterable pickList,\n this setting is not supported on a SelectItem with ${isc.DocUtils.linkForRef('attr:SelectItem.multiple')} set to\n true - this combination of settings can cause a selected value to be filtered out of\n view at which point further selection changes will discard that value. In general\n we recommend the ComboBoxItem class (with ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} set\n as appropriate) as a better interface for filtering pickList data.",
        name:"pickListProperties",
        seeAlso:[
        ],
        valueType:"ListGrid Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:Canvas.hoverWrap":{
        ref:"attr:Canvas.hoverWrap",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true, this property can be used to customize the\n whether content in the hover canvas is displayed in a single line, or wraps.",
        name:"hoverWrap",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "attr:DataSource.beanClassName":{
        ref:"attr:DataSource.beanClassName",
        flags:"IR",
        description:"This property has different meanings depending on the ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')}:\n <p>\n <b>For SQL DataSources (DataSources with serverType \"sql\")</b><br>\n If set, results from the database will be used to create one instance of the indicated Java\n bean per database row.  Otherwise a Map is used to represent each row retrieved from SQL.\n <P>\n With this feature active, a DSResponse from this DataSource will contain a Collection of\n instances of the indicated <code>beanClassName</code>, available via DSResponse.getData().\n This creates a couple of possibilities:\n <P>\n <dl>\n <dt>Add business logic for derived properties, such as computed formulas</dt>\n <dd>For example, declare a DataSourceField named \"revenueProjection\".  By default this\n field will call getRevenueProjection() on your bean to retrieve the value to send to the\n client.  Your implementation of getRevenueProjection() could apply some kind of formula to\n other values loaded from the database.</dd>\n <dt>Call business logic on retrieved beans via DMI</dt>\n <dd>By adding a ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} method that calls DSRequest.execute() to retrieve a DSResponse,\n you have an opportunity to call business logic methods on the beans representing each\n row affected by the DSRequest.  For example, notify a related BPEL process of changes to\n certain fields.</dd>\n </dl>\n <P>\n By using <code>beanClassName</code> on a specific ${isc.DocUtils.linkForRef('class:OperationBinding')}, you can:\n <ul>\n <li>Use a bean to represent your data only when it matters; for example, avoid the overhead\n     of using a bean for \"fetch\" operations, but do use a bean for \"update\" operations so\n     that you can execute relevant business logic after the update completes.</li>\n <li>Skip the use of beans for complex reporting queries that produce results unrelated to\n     your persistent object model.  Set beanClassName to blank (\"\") on a specific\n     operationBinding to override DataSource.beanClassName for that specific operation.</li>\n <li>For SQL joins that produce additional data fields, use a special, operation-specific\n     bean that represents a join of multiple entities and contains business logic specific\n     to that joined dataset</li>\n </ul>\n <P>\n Note that setting <code>beanClassName</code> has no effect on the DSRequest.  However,\n ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} has a built-in facility for populating a bean with the inbound\n ${isc.DocUtils.linkForRef('attr:DSRequest.data')} - just declare the bean as a method argument.\n <p>\n <b>For generic DataSources (DataSources with serverType \"generic\")</b><br>\n ${isc.DocUtils.linkForRef('group:visualBuilder','Visual Builder')} sets this property when it creates a generic \n DataSource using the Javabean Wizard.  It has no built-in server-side effects.\n <p>\n <b>For Hibernate DataSources (DataSources with serverType \"hibernate\")</b><br>\n The name of the Java bean or POJO class that is mapped in Hibernate.  This will typically \n be the fully-qualified class name - eg <code>com.foo.MyClass</code> - but it may be the \n simple class name - just <code>MyClass</code> - or it may be some other value.  It all \n depends on how your classes have been mapped in Hibernate.\n <p>\n Note:  If you are intending to use Hibernate as a data-access layer only, \n you do not need to create Hibernate mappings or Java objects: SmartClient will generate\n everything it needs on the fly.\n <p>\n <b>For JPA DataSources (DataSources with serverType \"jpa\" or \"jpa1\")</b><br>\n The fully qualified class name of the JPA annotated entity.\n <p>\n <b>NOTE for Hibernate and JPA users:</b> When you use JPA, or use Hibernate as a full ORM\n system (ie, not just allowing SmartClient Server to drive Hibernate as a data access layer),\n the beans returned on the server-side are <b>live</b>.  This means that if you make any \n changes to them, the ORM system will persist those changes.  This is true even if the beans\n were created as part of a fetch operation.\n <p>\n This causes a problem in the common case where you want to use a DMI or custom DataSource \n implementation to apply some post-processing to the beans fetched from the persistent \n store.  If you change the values in the beans directly, those changes will be persisted.\n <p>\n If you want to alter the data returned from a JPA or Hibernate persistent store as part of\n a fetch request just so you can alter what gets sent to the client, you can use the \n server-side <code>DSResponse</code>'s <code>getRecords()</code> method.  This will return\n your bean data in \"record\" format - ie, as a List of Maps.  You can alter these records \n without affecting your persistent store, and then call <code>setData()</code> on the \n <code>DSResponse</code>), passing the altered list of records.  See the server-side Javadocs\n for <code>DSResponse</code> for details of these two methods.",
        name:"beanClassName",
        seeAlso:[
            "OperationBinding.beanClassName"
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:XORGateway.criteria":{
        ref:"attr:XORGateway.criteria",
        flags:"IR",
        description:"Simple or ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} to be applied to the task inputs.  These will be\n applied to either the data indicated by the ${isc.DocUtils.linkForRef('attr:Task.inputField')} or to the\n \"inputRecord\" if multiple input fields are declared (see ${isc.DocUtils.linkForRef('group:taskIO')}).",
        name:"criteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"IR",
        type:"attr",
        definingClass:"class:XORGateway"
    },
    "attr:RestDataSource.dataURL":{
        ref:"attr:RestDataSource.dataURL",
        flags:"IR",
        description:"Default URL to contact to fulfill all DSRequests.  \n RestDataSources also allow per-operationType dataURLs to be set via\n <ul>\n <li>${isc.DocUtils.linkForRef('attr:RestDataSource.fetchDataURL')}</li>\n <li>${isc.DocUtils.linkForRef('attr:RestDataSource.addDataURL')}</li> \n <li>${isc.DocUtils.linkForRef('attr:RestDataSource.updateDataURL')}</li>\n <li>${isc.DocUtils.linkForRef('attr:RestDataSource.removeDataURL')}</li>\n </ul>",
        name:"dataURL",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "method:DrawRect.setRect":{
        ref:"method:DrawRect.setRect",
        flags:"",
        description:" Move and resize the drawRect to match the specified coordinates and size.\n",
        name:"setRect",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:FormulaBuilder.dataSource":{
        ref:"attr:FormulaBuilder.dataSource",
        flags:"IRW",
        description:"DataSource providing the available fields for the formulaBuilder.\n <P>\n By default the formulaBuilder will include <b>only</b> fields of numeric type or derived\n from a numeric type.  Set ${isc.DocUtils.linkForRef('attr:FormulaBuilder.fields')} to override this.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:TreeGrid.leaveSelectionCheckboxGap":{
        ref:"attr:TreeGrid.leaveSelectionCheckboxGap",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance','selectionAppearance')}:\"checkbox\" \n is set on the treegrid, and a node can't be selected, should a gap be left where\n the checkbox icon would normally appear, in order to make the node's icon and title\n line up with the content for other nodes in the same parent?\n <p>\n Has no effect if ${isc.DocUtils.linkForRef('attr:TreeGrid.showDisabledSelectionCheckbox')} is <code>true</code>",
        name:"leaveSelectionCheckboxGap",
        seeAlso:[
            {
                ref:"attr:ListGrid.recordCanSelectProperty",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:Dialog.messageStyle":{
        ref:"attr:Dialog.messageStyle",
        flags:"IR",
        description:"Style to apply to the message text shown in the center of the dialog",
        name:"messageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyle",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:SectionStack.overflow":{
        ref:"attr:SectionStack.overflow",
        flags:"IRW",
        description:"Normal ${isc.DocUtils.linkForRef('type:Overflow')} settings can be used on layouts, for example, an\n overflow:auto Layout will scroll if sections are resized to exceed the specified size,\n whereas an overflow:visible Layout will grow to accommodate the resized sections.",
        name:"overflow",
        seeAlso:[
        ],
        valueType:"Overflow",
        defaultValue:"\"hidden\"",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:Canvas.masterElement":{
        ref:"attr:Canvas.masterElement",
        deprecated:"In favor or ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas')} as of SmartClient release 9.1",
        flags:"RA",
        description:"This Canvas's \"master\" (the Canvas to which it was added as a peer), if any.",
        name:"masterElement",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:TreeGrid.cantDragIntoChildMessage":{
        ref:"attr:TreeGrid.cantDragIntoChildMessage",
        flags:"IR",
        description:"Message displayed when user attempts to drop a node into a child of itself.",
        name:"cantDragIntoChildMessage",
        seeAlso:[
            {
                ref:"attr:TreeGrid.canDragRecordsOut",
                description:null
            },
            {
                ref:"attr:TreeGrid.canAcceptDroppedRecords",
                description:null
            },
            {
                ref:"attr:TreeGrid.canReorderRecords",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"You can't drag an item into one of it's children.\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "method:EditContext.addPaletteNodesFromJSON":{
        ref:"method:EditContext.addPaletteNodesFromJSON",
        flags:"",
        description:" Recreate ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} from a JSON representation of \n ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')} (possibly created by calling\n ${isc.DocUtils.linkForRef('method:EditContext.serializeAllEditNodesAsJSON')} or ${isc.DocUtils.linkForRef('method:EditContext.serializeEditNodesAsJSON')}.\n <P>\n By default, components that have ${isc.DocUtils.linkForRef('attr:Canvas.ID','global IDs')} will not\n actually be allowed to take those global IDs - instead, only widgets that have one of the\n global IDs passed as the <code>globals</code> parameter will actually receive their global\n IDs.  To override this behavior, pass the special value ${isc.DocUtils.linkForRef('classAttr:RPCManager.ALL_GLOBALS')}\n for the <code>globals</code> parameter.\n\n",
        name:"addPaletteNodesFromJSON",
        seeAlso:[
            {
                ref:"method:EditContext.serializeAllEditNodesAsJSON",
                description:null
            },
            {
                ref:"method:EditContext.serializeEditNodesAsJSON",
                description:null
            }
        ],
        params:[
            {
                description:"JSON string",
                optional:false,
                name:"jsonString",
                defaultValue:null,
                type:"String"
            },
            {
                description:"parent node (defaults to the root)",
                optional:true,
                name:"parentNode",
                defaultValue:null,
                type:"EditNode"
            },
            {
                description:"widgets to allow to take their global IDs",
                optional:true,
                name:"globals",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:RelativeDateItem.millisecondsAgoTitle":{
        ref:"attr:RelativeDateItem.millisecondsAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"millisecond\".",
        name:"millisecondsAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N milliseconds ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FacetChart.gradationLabelProperties":{
        ref:"attr:FacetChart.gradationLabelProperties",
        flags:"IR",
        description:"Properties for gradation labels",
        name:"gradationLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ListGridField.cellAlign":{
        ref:"attr:ListGridField.cellAlign",
        flags:"IRW",
        description:"Horizontal alignment for cells in this field's column: \"left\", \"right\"\n or \"center\".<br>\n If null, alignment is derived from ${isc.DocUtils.linkForRef('attr:ListGridField.align')}. If this field is editable,\n the alignment of cells in the body will also be reflected in any editors for the field.",
        name:"cellAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.animateShowEffect":{
        ref:"attr:Canvas.animateShowEffect",
        flags:"IRWA",
        description:"Default animation effect to use if ${isc.DocUtils.linkForRef('method:Canvas.animateShow')} is called without an\n explicit <code>effect</code> parameter",
        name:"animateShowEffect",
        seeAlso:[
        ],
        valueType:"animateShowEffectId | animateShowEffect",
        defaultValue:"\"wipe\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "group:resizing":{
        ref:"group:resizing",
        refs:[
            "attr:Window.canDragResize"
        ],
        name:"resizing",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.showHeaderMenuButton":{
        ref:"attr:ListGrid.showHeaderMenuButton",
        flags:"IR",
        description:"If set to true and ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','showHeaderContextMenu')} is true, the\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerMenuButton')} will be displayed when the user rolls\n over the header buttons in this grid.  Not supported for ${isc.DocUtils.linkForRef('class:CubeGrid')}.",
        name:"showHeaderMenuButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "method:GridRenderer.getColumnLeft":{
        ref:"method:GridRenderer.getColumnLeft",
        flags:"A",
        description:" Return the left coordinate (in local coordinate space) of a particular column.\n",
        name:"getColumnLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"left coordinate of the passed colNum",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "attr:DrawOval.centerPoint":{
        ref:"attr:DrawOval.centerPoint",
        flags:"IRW",
        description:"Center point of the oval.  If unset, derived from left/top/width/height.",
        name:"centerPoint",
        setter:[
            "setCenterPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawOval"
    },
    "method:NavigationBar.setLeftButtonIcon":{
        ref:"method:NavigationBar.setLeftButtonIcon",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButtonIcon','leftButtonIcon')}.\n",
        name:"setLeftButtonIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"new icon for left button.",
                optional:false,
                name:"newIcon",
                defaultValue:null,
                type:"SCImgURL"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "attr:FormItem.optionDataSource":{
        flags:"IR",
        getter:[
            "getOptionDataSource"
        ],
        type:"attr",
        ref:"attr:FormItem.optionDataSource",
        description:"If set, this FormItem will map stored values to display values as though a\n ${isc.DocUtils.linkForRef('type:ValueMap')} were specified, by fetching records from the \n specified <code>optionDataSource</code> and extracting the\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')} and \n ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} in loaded records, to derive one\n valueMap entry per record loaded from the optionDataSource.\n <P>\n With the default setting of ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')}, fetches will be initiated against\n the optionDataSource any time the FormItem has a non-null value and no corresponding\n display value is available.  This includes when the form is first initialized, as well\n as any subsequent calls to ${isc.DocUtils.linkForRef('method:FormItem.setValue')}, such as may happen when\n ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')} is called.  Retrieved values are automatically cached by\n the FormItem.\n <P>\n Note that if a normal, static ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} is <b>also</b> specified for\n the field (either directly in the form item or as part of the field definition in the\n dataSource), it will be preferred to the data derived from the optionDataSource for\n whatever mappings are present.\n <P>\n In a databound form, if ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} is specified for a FormItem and \n <code>optionDataSource</code> is unset, <code>optionDataSource</code> will default to\n the form's current DataSource",
        name:"optionDataSource",
        setter:[
            "setOptionDataSource"
        ],
        valueType:"DataSource | String",
        seeAlso:[
            {
                ref:"method:FormItem.invalidateDisplayValueCache",
                description:null
            }
        ],
        examples:[
            "${isc.DocUtils.linkForExampleId('listComboBox')}"
        ],
        defaultValue:"null",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "attr:Mail.messageTemplate":{
        ref:"attr:Mail.messageTemplate",
        flags:"IR",
        description:"The text that will form the body of the mail message.  Like all other <code>String</code> \n properties of <code>Mail</code>, you can use Velocity substitution variables in this property.\n <p>\n You must specify either this property or ${isc.DocUtils.linkForRef('attr:Mail.templateFile','templateFile')}, but clearly\n it makes no sense to specify them both.",
        name:"messageTemplate",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "attr:TextItem.printFullText":{
        ref:"attr:TextItem.printFullText",
        flags:"IRW",
        description:"When generating a print-view of the component containing this TextItem, should\n the form item expand to accommodate its value? If set to false the text box will not expand\n to fit its content in the print view, instead showing exactly as it does in the\n live form.",
        name:"printFullText",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "printing"
        ]
    },
    "attr:DynamicForm.showDeletions":{
        ref:"attr:DynamicForm.showDeletions",
        flags:"IRA",
        description:"Default ${isc.DocUtils.linkForRef('FormItem.showDeletions')} setting for items in this form.",
        name:"showDeletions",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:Class.getCallTrace":{
        ref:"method:Class.getCallTrace",
        flags:"",
        description:" Returns a one-line summary of the current method call, showing method name and passed\n arguments. \n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.getCallTrace()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"getCallTrace",
        seeAlso:[
        ],
        params:[
            {
                description:"arguments object from the call to trace.  On IE, defaults to the                             calling function's arguments",
                optional:true,
                name:"args",
                defaultValue:null,
                type:"Arguments"
            }
        ],
        type:"method",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "attr:StatefulCanvas.overCanvas":{
        ref:"attr:StatefulCanvas.overCanvas",
        flags:"R",
        description:"Auto generated child widget to be shown when the user rolls over this canvas if \n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showOverCanvas')} is true. See documentation for ${isc.DocUtils.linkForRef('type:AutoChild')}\n for information on how to customize this canvas.",
        name:"overCanvas",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas"
    },
    "attr:DetailViewerField.title":{
        ref:"attr:DetailViewerField.title",
        flags:"IR",
        description:"The title of the field as displayed on the left-hand side.  If left unspecified, the\n title of the field is derived by looking up the value of\n ${isc.DocUtils.linkForRef('attr:DetailViewer.fieldIdProperty')} on this field.  So, by default, the title of a field\n is the value of its \"name\" property.",
        name:"title",
        seeAlso:[
            {
                ref:"attr:DetailViewer.fieldIdProperty",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "method:Slider.setShowTitle":{
        ref:"method:Slider.setShowTitle",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.showTitle')} property of the slider\n\n",
        name:"setShowTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"show the slider title?",
                optional:false,
                name:"showTitle",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:LoginDialog.showCloseButton":{
        ref:"attr:LoginDialog.showCloseButton",
        flags:"IRW",
        description:"Do not set LoginDialog.showCloseButton; it is controlled by the\n ${isc.DocUtils.linkForRef('attr:LoginDialog.dismissable')}\n property.",
        name:"showCloseButton",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:ImgButton.showDownIcon":{
        ref:"attr:ImgButton.showDownIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the mouse goes\n down on the button.",
        name:"showDownIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:DynamicForm.hasErrors":{
        ref:"method:DynamicForm.hasErrors",
        flags:"",
        description:" Return whether this form currently has any validation errors.<br>\n Validation errors are set up automatically by validation, or may be explicitly set via\n ${isc.DocUtils.linkForRef('method:DynamicForm.setErrors')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setFieldErrors')}.\n",
        name:"hasErrors",
        seeAlso:[
        ],
        returns:{
            description:"true == form currently has validation errors.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "method:SliderItem.setMinValue":{
        ref:"method:SliderItem.setMinValue",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.minValue','minimum value')} of the slider \n\n",
        name:"setMinValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new minimum value <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:SliderItem"
    },
    "method:DataSource.getAutoTitle":{
        ref:"method:DataSource.getAutoTitle",
        flags:"",
        description:" Return a reasonable user-visible title given a fieldName.  Called when\n ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveTitles')} is true and by default, calls the class method\n ${isc.DocUtils.linkForRef('classMethod:DataSource.getAutoTitle')}.  Override to provide a different policy\n for auto-deriving titles for a particular DataSource or subclass of DataSource.\n\n",
        name:"getAutoTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"identifier for which a title is desired.",
                optional:false,
                name:"identifier",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"auto-derived title",
            type:"String"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "title"
        ]
    },
    "attr:ColorItem.showPickerIcon":{
        ref:"attr:ColorItem.showPickerIcon",
        flags:"IRW",
        description:"Should the pick button icon be shown for choosing colors from a ColorPicker",
        name:"showPickerIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ColorItem"
    },
    "attr:HiliteEditor.availableFieldsColumnTitle":{
        ref:"attr:HiliteEditor.availableFieldsColumnTitle",
        flags:"IR",
        description:"The title for the 'Available Fields' column in the \n ${isc.DocUtils.linkForRef('attr:HiliteEditor.fieldList','fieldList')}.",
        name:"availableFieldsColumnTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Available Fields\"",
        type:"attr",
        definingClass:"class:HiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HiliteEditor.hiliteIcons":{
        ref:"attr:HiliteEditor.hiliteIcons",
        flags:"IRW",
        description:"Specifies a list of icons that can be used in ${isc.DocUtils.linkForRef('object:Hilite','hilites')}.\n <P>\n <code>hiliteIcons</code> should be specified as an Array of ${isc.DocUtils.linkForRef('type:SCImgURL')}.\n When present, ${isc.DocUtils.linkForRef('class:HiliteRule')}s\n will offer the user a drop down for picking one of these icons.\n <P>\n If the user picks an icon, the created hiliting rule will have ${isc.DocUtils.linkForRef('attr:Hilite.icon')} set to \n the chosen icon.  ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconPosition')} controls where the icon will \n appear for that field -- the default is that it appears in front of the normal cell content.",
        name:"hiliteIcons",
        seeAlso:[
        ],
        valueType:"Array of SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteEditor"
    },
    "attr:DataSource.fields":{
        ref:"attr:DataSource.fields",
        flags:"IR",
        description:"The list of fields that compose records from this DataSource.\n <P>\n Each DataSource field can have type, user-visible title, validators, and other metadata\n attached.",
        name:"fields",
        seeAlso:[
            {
                ref:"class:DataSourceField",
                description:null
            }
        ],
        valueType:"Array of DataSourceField",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "attr:DateRangeItem.toTitle":{
        ref:"attr:DateRangeItem.toTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:DateRangeItem.toField','to')} part of the range.",
        name:"toTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"To\"",
        type:"attr",
        definingClass:"class:DateRangeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGridField.getGroupValue":{
        ref:"method:ListGridField.getGroupValue",
        flags:"",
        description:" Return the value which records should be grouped by.\n <P>\n All records for which getGroupValue() returns the same value appear in the same\n group.  Default is the result of ${isc.DocUtils.linkForRef('method:ListGrid.getCellValue')}.\n <P>\n While any type of value may be returned, avoiding the use of string values may\n result in improved performance. In this case, ${isc.DocUtils.linkForRef('method:ListGridField.getGroupTitle')}\n may be implemented to map a numeric group value into a legible string.\n\n",
        name:"getGroupValue",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            },
            {
                ref:"method:ListGridField.getGroupTitle",
                description:null
            }
        ],
        params:[
            {
                description:"raw value for the cell, from the record for the row",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Record object for the cell. Note: If this is a new row that has not been saved, in an\n   editable grid, it has no associated record object. In this case the edit values will\n   be passed in as this parameter (see ${isc.DocUtils.linkForRef('method:ListGrid.getEditValues')})",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"Field object for which to get group value",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"The name of the field",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the ListGrid displaying the cell",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"Group value to which this record belongs",
            type:"any"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customGrouping')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "grouping"
        ]
    },
    "method:Canvas.removeChild":{
        ref:"method:Canvas.removeChild",
        flags:"",
        description:" Remove a child from this parent.\n",
        name:"removeChild",
        seeAlso:[
        ],
        params:[
            {
                description:"Child canvas to remove from this parent.",
                optional:false,
                name:"child",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"If the child canvas was assigned a name when added via addChild(), it                        should be passed in here to ensure no reference is kept to the child",
                optional:true,
                name:"name",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "method:DrawGroup.rotateBy":{
        ref:"method:DrawGroup.rotateBy",
        flags:"",
        description:" Rotate each item in the group by the specified number of degrees.\n\n",
        name:"rotateBy",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"degrees",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:DateChooser.disabledWeekendStyle":{
        ref:"attr:DateChooser.disabledWeekendStyle",
        flags:"IRW",
        description:"Base CSS style applied to weekend dates which have been ${isc.DocUtils.linkForRef('attr:DateChooser.disabledDates','disabled')}.",
        name:"disabledWeekendStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserDisabledWeekend\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "group:errorHandling":{
        ref:"group:errorHandling",
        title:"Error Handling Overview",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        refs:[
            "method:DataSource.handleError",
            "classMethod:DataSource.getSimpleErrors",
            "classMethod:RPCManager.handleError",
            "classMethod:RPCManager.handleTransportError",
            "attr:DSResponse.status",
            "attr:DSResponse.queueStatus",
            "attr:DSResponse.errors",
            "attr:DSRequest.callback",
            "attr:RPCRequest.callback",
            "attr:RPCRequest.willHandleError"
        ],
        description:"${isc.DocUtils.linkForRef('class:RPCResponse')} and ${isc.DocUtils.linkForRef('class:DSResponse')} objects have an integer status field that the \n RPCManager inspects when the response is received from the server. If the value of this \n field is less than zero, the request is considered to have failed.  Otherwise it is \n considered to have succeeded.  This value is settable via the setStatus() method call \n on the server-side DSResponse and RPCResponse objects.\n <p>\n Errors in a SmartClient application fall into two main categories:<ul>\n <li>Validation errors, which arise as a result of rules in the application's business logic\n being broken.  These are part of the normal operation of the system.  A response with \n validation errors has a status of ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_VALIDATION_ERROR')}</li>\n <li>Unrecoverable errors, which are errors with the system itself.  These are not part of \n the normal operation of the system</li>\n </ul>\n <b>Validation errors</b> are treated differently from other errors, precisely because they\n are an expected part of the normal operation of the system.  If \n ${isc.DocUtils.linkForRef('method:DynamicForm.validate','validation')} of a form results in errors, the form is redrawn to\n display those errors to the user.  How the user sees those errors is completely configurable -\n for example, see the DynamicForm properties ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','showErrorIcons')},\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText','showErrorText')}, \n ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors','showInlineErrors')}, and indeed most DynamicForm properties\n that contain the workd \"Error\" - but the default in most skins is to highlight the field \n with some kind of error icon, and provide the actual error text message in a floating box \n when the user hovers over the field.\n <p>\n The remainder of this article concerns <b>unrecoverable errors</b>.  These are errors with\n the system itself, for example:<ul>\n <li>A network transport problem</li>\n <li>A server-side crash</li>\n <li>An update failed because a transaction was rolled back</li>\n </ul>\n Errors like this can either be handled centrally, or you can choose to handle them in your\n regular callback code.  ${isc.DocUtils.linkForRef('class:DSRequest')} calls default to centralized handling; \n ${isc.DocUtils.linkForRef('class:RPCRequest')} calls default to user error handling in the callback.\n <p>\n <b>Centralized Error Handling</b><br>\n If the status field shows a failure, the RPCManager will invoke \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')}.  By default, this logs a warning and shows a dialog \n with the contents of the response's ${isc.DocUtils.linkForRef('attr:RPCResponse.data','data')} field (which is assumed \n to contain a meaningful description of the error that occurred).  If you specified a \n callback in your request, it will <b>not</b> be called if the status shows a failure \n (see the section on custom error handling below for how to change this).  This default \n arrangement means that any SmartClient application has a basic handling mechanism for \n unrecoverable errors, without any code to write.\n <p>\n You can customize centralized error handling at two levels:<ul>\n <li>\n <smartclient>Override ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')}</smartclient>\n <smartgwt>Use \n {@link com.smartgwt.client.rpc.RPCManager#setHandleErrorCallback(com.smartgwt.client.rpc.HandleErrorCallback)}</smartgwt>\n to provide your own error handling logic (note\n that customization takes place at the static class level, not per-instance)</li>\n <li>\n <smartclient>Override ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleTransportError')}.</smartclient>\n <smartgwt>Use \n {@link com.smartgwt.client.rpc.RPCManager#setHandleTransportErrorCallback(com.smartgwt.client.rpc.HandleTransportErrorCallback)}.</smartgwt>\n This logic is called earlier than\n handleError, and it is called even when you are using custom error handling (discussed\n below).  It is intended to allow your code to inspect the failed response early in the \n handling flow, to see if it is really unrecoverable.  For example, a failure might have \n happened because of a temporary network problem, so resubmitting the request may be a valid\n thing to do to try to resolve the error.  Note, as with handleError, this is a static \n class-level customization</li>\n </ul>\n <p>\n <b>Custom Error Handling</b><br>\n As an alternative to handling errors centrally, you can handle them in your regular callback\n methods.  To do this, specify ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError','willHandleError')} as a \n request property.  When you do this, centralized error handling is bypassed (as mentioned \n above, <code>handleTransportError()</code> will still be called) and your callback is \n invoked as normal.  Your callback code determines that it is in error state by inspecting\n the status property on the response - if it is negative, there has been an error.  Note \n that validation errors are treated specially, in that your callback is invoked, but the \n normal behavior of populating the field errors onto the form and redrawing it <b>also</b>\n takes place.\n <p>\n Note, when you are handling errors in user callbacks, a negative status in the response \n indicates some sort of serious, unrecoverable error (except in the case of \n ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_VALIDATION_ERROR')}).  Therefore, ensure that your error handling \n code does not assume that the response will be properly formed or contain particular \n elements.\n <p>\n You can specify <code>willHandleError</code> (or any other DSRequest/RPCRequest property)\n on a component request by providing the DSRequest Properties parameter.  For example, on\n a ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}:\n <smartclient><pre>\n     listGrid.fetchData({}, function(dsResponse, data, dsRequest) {\n         if (dsResponse.status < 0) {\n             // Error handling here...\n         } else {\n             // Normal processing here\n         }\n     }, <b>{willHandleError: true}</b>);\n </pre>\n </smartclient>\n <smartgwt><pre>\n     DSRequest properties = new DSRequest();\n     properties.setWillHandleError(true);\n     listGrid.fetchData(new Criteria(), new DSCallback() {\n         public void execute(DSResponse response, Object rawData, DSRequest request) {\n             if (response.getStatus() < 0) {\n                 // Error handling here\n             } else {\n                 // Normal processing here\n             }\n         }\n     }, <b>properties</b>);\n </pre>\n </smartgwt>\n <b>Error Status Codes</b><br>\n The error status codes used by the framework are documented as class variables of the \n ${isc.DocUtils.linkForRef('class:RPCRequest','RPCRequest class')}.  Status codes in the range -1 to -100 are \n reserved for use by the framework; if you wish to introduce new custom error statuses for \n your own use, avoid this range.\n <p>\n <b>Errors indicating login is required</b><br>\n Some of the framework error statuses indicate that login is required, typically because a \n user's HTTP session has timed out.  The best way to handle this situation is to use the \n built-in ${isc.DocUtils.linkForRef('group:relogin','re-login flow')} to automatically prompt users to log back\n in as required, and then resubmit the requests that triggered the login required response.",
        name:"errorHandling",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Gauge.addSector":{
        ref:"method:Gauge.addSector",
        flags:"",
        description:" Adds a new sector.\n\n",
        name:"addSector",
        seeAlso:[
        ],
        params:[
            {
                description:"the new GaugeSector or the new sector's value. This is formatted with ${isc.DocUtils.linkForRef('method:Gauge.formatLabelContents')} to get its label.",
                optional:false,
                name:"newSector",
                defaultValue:null,
                type:"GaugeSector | double"
            }
        ],
        returns:{
            description:"the index of the newly-added sector.",
            type:"int"
        },
        type:"method",
        definingClass:"class:Gauge"
    },
    "method:DrawGroup.getBoundingBox":{
        ref:"method:DrawGroup.getBoundingBox",
        flags:"",
        description:" Returns the left, top, (left + width), and (top + height) values\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"Array[] of int"
        },
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "method:FormulaBuilder.getTestRecord":{
        ref:"method:FormulaBuilder.getTestRecord",
        flags:"",
        description:" Gets the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.testRecord','test record')} for this formula.\n",
        name:"getTestRecord",
        seeAlso:[
        ],
        returns:{
            description:"the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.testRecord','testRecord')} for this formula",
            type:"Object"
        },
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "classAttr:FileLoader.defaultModules":{
        ref:"classAttr:FileLoader.defaultModules",
        flags:"RW",
        description:"Default list of modules for\n ${isc.DocUtils.linkForRef('classMethod:FileLoader.loadISC')}/${isc.DocUtils.linkForRef('classMethod:FileLoader.cacheISC')} to use if none are\n provided by the user.",
        name:"defaultModules",
        seeAlso:[
            {
                ref:"classMethod:FileLoader.cacheISC",
                description:null
            },
            {
                ref:"classMethod:FileLoader.loadISC",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"Core,Foundation,Containers,Grids,Forms,DataBinding\"",
        type:"classAttr",
        definingClass:"class:FileLoader"
    },
    "attr:LoginDialog.loginButton":{
        ref:"attr:LoginDialog.loginButton",
        flags:"IR",
        description:"Login submission button in ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"loginButton",
        seeAlso:[
            {
                ref:"attr:LoginDialog.loginButtonTitle",
                description:null
            }
        ],
        valueType:"AutoChild ButtonItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:DataSource.transformRequest":{
        ref:"method:DataSource.transformRequest",
        flags:"A",
        description:" For a dataSource using ${isc.DocUtils.linkForRef('group:clientDataIntegration','client-side data integration')},\n return the data that should be sent to the ${isc.DocUtils.linkForRef('attr:DataSource.dataURL')}.\n <P>\n By default, HTTP requests sent to non-SmartClient servers do not include DSRequest\n metadata such as ${isc.DocUtils.linkForRef('attr:DSRequest.startRow')}, ${isc.DocUtils.linkForRef('attr:DSRequest.endRow','endRow')},\n and ${isc.DocUtils.linkForRef('attr:DSRequest.oldValues','oldValues')}.  Only the core\n ${isc.DocUtils.linkForRef('group:dataSourceOperations','datasource protocol data')} is sent, such as the criteria\n passed to ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} or the updated values submitted by\n ${isc.DocUtils.linkForRef('method:DynamicForm.saveData','form.saveData()')}.  \n <P>\n transformRequest() allows you to transform dsRequest metadata into a\n format understood by your server and include it in the HTTP request, so that you can\n integrate DataSource features such as data paging with servers that support such\n features.\n <P>\n How the data is actually sent to the URL is controlled by \n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')}.  If using the \"getParams\" or\n \"postParams\" protocol, data is expected to be a JavaScript Object where each property\n will become a GET or POST'd parameter.  If using dataProtocol:\"soap\" or \"postXML\", data\n will be serialized as an XML message by ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')}.\n <P>\n As an example, if you have a dataURL that can return paged data given URL parameters\n \"start\" and \"end\", you could implement transformRequest like so:\n <pre>\n   isc.DataSource.create({\n      ... \n      transformRequest : function (dsRequest) {\n         if (dsRequest.operationType == \"fetch\") {\n             var params = {\n                start : dsRequest.startRow,\n                end : dsRequest.endRow\n             };\n             // combine paging parameters with criteria\n             return isc.addProperties({}, dsRequest.data, params);\n         }\n      }\n   });\n </pre>\n Other reasons to implement transformRequest():\n <ul>\n <li> transform a ${isc.DocUtils.linkForRef('type:Criteria')} object into the custom query language of a web\n      service\n <li> add a session id to requests that require authentication\n <li> detect colliding updates by sending both updated values and the values the user\n      originally retrieved before editing began (available as ${isc.DocUtils.linkForRef('attr:DSRequest.oldValues')})\n </ul>\n <i>Special case:</i> If the <code>dataProtocol</code> is <code>\"clientCustom\"</code>\n the SmartClient system will not attempt to send data to the server in any way. Instead \n transformRequest should be implemented such that it accesses or updates the underlying\n data-set and calls ${isc.DocUtils.linkForRef('method:DataSource.processResponse')} when the operation is complete. This\n setting allows straightforward integration with non SmartClient comm mechanisms that \n directly send requests to the server (such as GWT-RPC), or handle data manipulation without\n sending HTTP at all (such as Google Gears).\n <P>\n Note: The ${isc.DocUtils.linkForRef('class:RestDataSource')} class overrides transformRequest() to handle xml-serializing\n the request (including meta data) into a standard format.\n\n",
        name:"transformRequest",
        seeAlso:[
        ],
        params:[
            {
                description:"the DSRequest being processed",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        returns:{
            description:"data to be sent to the dataURL",
            type:"any"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:FormulaBuilder.testRecord":{
        ref:"attr:FormulaBuilder.testRecord",
        flags:"IRA",
        getter:[
            "getTestRecord"
        ],
        description:"Record to use when testing the formula dynamically (if ${isc.DocUtils.linkForRef('attr:FormulaBuilder.autoTest')} is enabled) or when\n showing samples of formula output.\n <P>\n If not specified, the selected record in the component that launched the FormulaBuilder will\n be used, or if there's no selection, the first visible row, or with no component, a dummy\n data row derived automatically from the provided DataSource.",
        name:"testRecord",
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:FacetChart.useMultiplePointShapes":{
        ref:"attr:FacetChart.useMultiplePointShapes",
        flags:"IRW",
        description:"Whether the chart should use multiple shapes to show data points.  If set to\n <code>true</code> then the chart is allowed to use all\n ${isc.DocUtils.linkForRef('attr:FacetChart.pointShapes','supported shapes')}:  circles, squares, diamonds, and triangles.  If\n set to <code>false</code> then just the first supported shape (circles, for example)\n will be used.",
        name:"useMultiplePointShapes",
        setter:[
            "setUseMultiplePointShapes"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:PickTreeItem.button":{
        ref:"attr:PickTreeItem.button",
        flags:"R",
        description:"The visible button created by a PickTreeItem is an ${isc.DocUtils.linkForRef('type:AutoChild')} of type\n ${isc.DocUtils.linkForRef('class:TreeMenuButton')} by default.",
        name:"button",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PickTreeItem"
    },
    "method:ColorPicker.setSupportsTransparency":{
        ref:"method:ColorPicker.setSupportsTransparency",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:ColorPicker.supportsTransparency')} flag.\n",
        name:"setSupportsTransparency",
        seeAlso:[
        ],
        params:[
            {
                description:"Set to true to enable transparency/opacity",
                optional:false,
                name:"transparencyFlag",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:ImgProperties.src":{
        ref:"attr:ImgProperties.src",
        flags:"IRW",
        description:"Specifies the URL of the image local to the skin or application directory.",
        name:"src",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ImgProperties"
    },
    "group:fileAssembly":{
        ref:"group:fileAssembly",
        title:"File Assembly",
        treeLocation:[
            "Optional Modules/Network Performance"
        ],
        refs:[
        ],
        description:"File assembly concatenates multiple files into a single response, reducing the number\n of HTTP fetches required to load a page. This concatenation also improves the\n compressibility of responses, since the compression algorithm may reduce redundancy across a\n larger data set.\n <p>\n The ISC FileAssembly service provides configuration-driven file assembly, with integrated\n compression and JavaScript stripping services.  Assemblies are specified in an xml format\n and map a URI to a set of files to concatenate together.  There also additional flags to\n enable stripping and compression.  \n <p>\n You can use the FileAssembler to create assemblies of javascript and css.  Since it's\n basically a file concatenator with some specialized services for javascript files, you could\n use it to assembly anything else, but javascript and css are probably the main things to\n consider.\n <p>\n The FileAssembler has a development mode and a production\n packaging mode.  In the development mode, there is a servlet that you can register at\n virtual URLs that are assembled on the fly by the FileAssembler based on its configuration.\n For production packaging, you can use the same configuration file to generate static,\n pre-compressed versions of these files.  The format of the file is as follows:\n <pre>\n &lt;FileAssembly&gt;\n     &lt;assemblies&gt;\n         &lt;FileAssemblyEntry uri=\"/myAssembly.js\"&gt;\n             &lt;compress&gt;true&lt;/compress&gt;\n             &lt;components&gt;\n                 &lt;component&gt;\n                     &lt;type&gt;file&lt;/type&gt;\n                     &lt;fileName&gt;copyright.txt&lt;/fileName&gt;\n                 &lt;/component&gt;\n                 &lt;component&gt;\n                     &lt;type&gt;datasource&lt;/type&gt;\n                     &lt;name&gt;myDatasource1&lt;/name&gt;\n                 &lt;/component&gt;\n                 &lt;component&gt;\n                     &lt;type&gt;ds&lt;/type&gt;\n                     &lt;name&gt;myDatasource2&lt;/name&gt;\n                 &lt;/component&gt;\n                 &lt;component&gt;\n                     &lt;type&gt;file&lt;/type&gt;\n                     &lt;fileName&gt;myPublicCode.js&lt;/fileName&gt;\n                 &lt;/component&gt;\n                 &lt;component&gt;\n                     &lt;type&gt;file&lt;/type&gt;\n                     &lt;fileName&gt;myPrivateCode.js&lt;/fileName&gt;\n                     &lt;jsStripping&gt;full&lt;/jsStripping&gt;\n                     &lt;jsObfuscation&gt;1&lt;/jsObfuscation&gt;\n                 &lt;/component&gt;\n             &lt;/components&gt;\n         &lt;/FileAssemblyEntry&gt;\n     &lt;/assemblies&gt;\n &lt;/FileAssembly&gt;\n </pre>\n You can specify as many FileAssemblyEntry blocks as you want, simply place them alongside\n each other under the &lt;assemblies&gt; element.  The above example states that the\n /myAssembly.js file should be assembled from the various components listed above. Component\n blocks support the following attributes:\n <p>\n <table border='1' class='normal'>\n <tr><td><b>Name</b></td><td><b>Values</b></td><td><b>Description</b></td></tr>\n <tr><td>type</td><td>file<br>xmlFile<br>ds|datasource<br>type<br>ui</td>\n     <td>any file<br>XML file<br>ISC DataSource file<br>ISC SimpleType file<br>ISC UI file<br></td></tr>\n <tr><td>name</td><td>file identifier</td>\n     <td>identifier for a ds or ui file</td></tr>\n <tr><td>fileName</td><td>file path</td><td>path to a file or xmlFile (relative to webRoot)</td></tr>\n <tr><td>jsStripping</td><td>none<br>partial<br>full</td>\n     <td>level of stripping (whitespace, comment, and delimiter removal) applied to file</td></tr>\n </table>\n <p>\n All component types except file are converted from valid ISC XML format to JavaScript format\n by the FileAssembler.  The <code>jsStripping</code> attribute only applies to assembled\n javascript files.\n <p>\n Once you've created the configuration file, you'll probably want to place it somewhere in\n webRoot.  Generally, it can be placed anywhere you like, but the development-time\n FileAssembly servlet requires the file be placed under webRoot. The default location is\n /isomorphicConfig/fileAssembly.xml and can be changed via the <code>configFile</code>\n init-param of the FileAssembly servlet.  To enable development mode support for\n FileAssembly, you'll need to register the FileAssembly servlet in your web.xml as follows:\n <pre>\n     &lt;servlet&gt;\n       &lt;servlet-name&gt;FileAssembly&lt;/servlet-name&gt;\n       &lt;servlet-class&gt;com.isomorphic.servlet.FileAssembly&lt;/servlet-class&gt;\n     &lt;/servlet&gt;\n </pre>\n Now, for every FileAssemblyEntry URI you specified in your fileAssembly.xml, you'll need\n corresponding mappings in web.xml, to tell the servlet container to send requests for that\n file to the FileAssembler.  For example, assuming your fileAssembly.xml contained the\n contents shown above, you'd register /myAssembly.js in your web.xml with the FileAssembler as\n follows:\n <pre>\n     &lt;servlet-mapping&gt;\n       &lt;servlet-name&gt;FileAssembly&lt;/servlet-name&gt;\n       &lt;url-pattern&gt;/myAssembly.js&lt;/url-pattern&gt;\n     &lt;/servlet-mapping&gt;\n </pre>\n You'll need a similar entry for any other entry in your fileAssembly.xml.  Note that this is\n for development only - we'll pregenerate static files for production.  Once you've done the\n above, you can load /myAssembly.js into your page via a standard SCRIPT block, like so:\n <pre>\n &lt;script src=\"/myAssembly.js\"&gt;&lt;/script&gt;\n </pre>\n Now, whenever requests are made for this file, the FileAssembler will check the timestamps\n of all the components of this assembly, rebuild the assembled file if required, and serve it\n to the browser as if it was a static file on disk.\n <p>\n To create static assembled files for production, you can use the fileAssembler command line\n tool provided as part of the SDK.  This is a Java-based command line tool located in\n smartclientSDK/WEB-INF/bin.  There are three versions of the tool in that directory -\n fileAssembler.bat is for Windows platforms, fileAssembler.command is for MacOS platforms, and\n fileAssembler.sh is for *nix platforms.  Running this tool with the --help argument will show\n you the command line switches available.  Typically, you'll need to specify:\n <ul>\n <li>--config &lt;file&gt; - location of the fileAssembly.xml configuration file\n <li>--webRoot &lt;dir&gt; - location of the webRoot that the fileAssembler uses to access the\n component files.\n <li>--outputDir &lt;dir&gt; - location of directory where you want output files to go - typically\n this is the webRoot of your production build.  These are the files you'll deploy to\n production.\n </ul>\n Finally, since the generated files are likely to be compressed and they're static, you'll\n probably want to map the FileDownload servlet to serve them in your production web.xml",
        name:"fileAssembly",
        seeAlso:[
        ],
        type:"group",
        requiresModules:[
            "NetworkPerformance"
        ]
    },
    "attr:RecordEditor.filterImg":{
        ref:"attr:RecordEditor.filterImg",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:Button.icon','Icon')} to show on the ${isc.DocUtils.linkForRef('attr:RecordEditor.actionButton')} if this \n component is being used as a ${isc.DocUtils.linkForRef('attr:ListGrid.filterEditor')}.\n <P>\n Note that this ${isc.DocUtils.linkForRef('type:SCImgURL')} will be resolved using the ${isc.DocUtils.linkForRef('attr:RecordEditor.skinImgDir')} defined\n for the RecordEditor.",
        name:"filterImg",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]filter.png\"",
        type:"attr",
        definingClass:"class:RecordEditor"
    },
    "attr:DateChooser.fiscalYearFieldTitle":{
        ref:"attr:DateChooser.fiscalYearFieldTitle",
        flags:"IRW",
        description:"Title for the ${isc.DocUtils.linkForRef('attr:DateChooser.showFiscalYearChooser','fiscal year')} field in the date grid.",
        name:"fiscalYearFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Year\"",
        type:"attr",
        definingClass:"class:DateChooser",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MultiGroupDialog.deleteLevelButton":{
        ref:"attr:MultiGroupDialog.deleteLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for deleting levels\n from the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.deleteLevelButtonProperties</code> and \n <code>multiGroupPanel.deleteLevelButtonDefaults</code>.",
        name:"deleteLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "method:RichTextEditor.doWarn":{
        ref:"method:RichTextEditor.doWarn",
        flags:"",
        description:" Display a warning if Rich Text Editing is not fully supported in this browser.\n Default behavior logs a warning to the devloper console - Override this if a user-visible\n warning is required \n",
        name:"doWarn",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RichTextEditor"
    },
    "attr:MultiComboBoxItem.shouldSaveValue":{
        ref:"attr:MultiComboBoxItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MultiComboBoxItem",
        groups:[
            "formValues"
        ]
    },
    "method:DatabaseBrowser.getGeneratedDataSource":{
        ref:"method:DatabaseBrowser.getGeneratedDataSource",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('class:DataSource')} most recently auto-derived by this DatabaseBrowser.  This will\n correspond to the currently-selected table.\n",
        name:"getGeneratedDataSource",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DatabaseBrowser"
    },
    "attr:TabSet.pickerButtonVSrc":{
        ref:"attr:TabSet.pickerButtonVSrc",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker')} is true, and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricPickerButton')} is \n set to true, this property governs the base URL for the picker\n button image, when displayed in a verricaL tab-bar [IE ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')} is\n set to <code>\"LEFT\"</code> or <code>\"right\"</code>].\n <P>\n Note that if <code>symmetricPickerButton</code> is false, the ${isc.DocUtils.linkForRef('attr:TabSet.pickerButtonSrc')}\n property will be used instead.\n <P>\n This base URL will have a suffix of <code>\"Down\"</code> appended when the user holds the\n mouse down over the button, and <code>\"Disabled\"</code> if the tabset as a whole is \n disabled.",
        name:"pickerButtonVSrc",
        seeAlso:[
            {
                ref:"attr:TabSet.symmetricPickerButton",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]vpicker.gif\"",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "attr:ImgButton.showDown":{
        ref:"attr:ImgButton.showDown",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes down in this object?",
        name:"showDown",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "attr:TabSet.symmetricScroller":{
        ref:"attr:TabSet.symmetricScroller",
        flags:"IR",
        description:"If this TabSet is showing ${isc.DocUtils.linkForRef('attr:TabSet.showTabScroller','tab scroller buttons')}, this property \n determines whether the ${isc.DocUtils.linkForRef('attr:TabSet.scrollerHSrc')} and ${isc.DocUtils.linkForRef('attr:TabSet.scrollerVSrc')} media\n will be used for vertical and horizontal tab-bar scroller buttons, or whether separate\n media should be used for each possible ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} based\n on the ${isc.DocUtils.linkForRef('attr:TabSet.scrollerSrc')} property for this tabSet.",
        name:"symmetricScroller",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "group:concat":{
        ref:"group:concat",
        refs:[
        ],
        name:"concat",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ImgSplitbar.src":{
        ref:"attr:ImgSplitbar.src",
        flags:"IR",
        description:"The base filename for the image.\n <P>\n This value will be combined with any specified ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')}\n to form a combined URL, changing the appearance of the component as the\n state changes.\n <P>\n The following table lists out the standard set of combined URLs that \n may be generated. Subclasses may support additional state-derived media of course.\n Note that the src URL will be split such that the extension is always applied to the\n end of the combined string. For example in the following table, if <code>src</code>\n was set to <code>\"blank.gif\"</code>, the Selected+Focused URL would be \n <code>\"blank_Selected_Focused.gif\"</code>.\n <table>\n <tr><td><b>URL for Img source</b></td><td><b>Description</b></td></tr>\n <tr><td><code><i>src</i>+<i>extension</i></code></td><td>Default URL</td></tr>\n <tr><td><code><i>src</i>+\"_Selected\"+<i>extension</i></code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Focused\"+<i>extension</i></code></td>\n      <td>Applied when the component has keyboard focus, if \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused')} is true, and \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is not true.</td></tr>\n <tr><td><code><i>src</i>+\"_Over\"+<i>extension</i></code></td>\n      <td>Applied when the user rolls over the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Down\"+<i>extension</i></code></td>\n      <td>Applied when the user presses the mouse button over over the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Disabled\"+<i>extension</i></code></td>\n      <td>Applied to ${isc.DocUtils.linkForRef('attr:Canvas.disabled')} component\n       if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')} is true.</td></tr>\n <tr><td colspan=2><i>Combined states</i></td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused\"+<i>extension</i></code></td>\n      <td>Combined Selected and focused state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Over\"+<i>extension</i></code></td>\n      <td>Combined Selected and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Focused_Over\"+<i>extension</i></code></td>\n      <td>Combined Focused and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused_Over\"+<i>extension</i></code></td>\n      <td>Combined Selected, Focused and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Down\"+<i>extension</i></code></td>\n      <td>Combined Selected and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Focused_Down\"+<i>extension</i></code></td>\n      <td>Combined Focused and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused_Down\"+<i>extension</i></code></td>\n      <td>Combined Selected, Focused and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Disabled\"+<i>extension</i></code></td>\n      <td>Combined Selected and Disabled state</td></tr>\n </table>",
        name:"src",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSplitbar",
        groups:[
            "appearance"
        ]
    },
    "attr:DrawLine.endPoint":{
        ref:"attr:DrawLine.endPoint",
        flags:"IRW",
        description:"End point of the line",
        name:"endPoint",
        setter:[
            "setEndPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[100,100]",
        type:"attr",
        definingClass:"class:DrawLine"
    },
    "attr:ColumnTree.openIconSuffix":{
        ref:"attr:ColumnTree.openIconSuffix",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ColumnTree.showOpenIcons')} is true, this suffix will be appended to the\n ${isc.DocUtils.linkForRef('attr:ColumnTree.folderIcon')} for open folders in this grid.",
        name:"openIconSuffix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"open\"",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "type:StandardControlGroup":{
        ref:"type:StandardControlGroup",
        values:[
            {
                description:"${isc.DocUtils.linkForRef('attr:RichTextEditor.fontControls','Font controls')}",
                value:"\"fontControls\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:RichTextEditor.formatControls','Text formatting controls')}",
                value:"\"formatControls\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:RichTextEditor.styleControls','Text styling controls')}",
                value:"\"styleControls\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:RichTextEditor.colorControls','Color controls')}",
                value:"\"colorControls\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:RichTextEditor.bulletControls','HTML list controls')}",
                value:"\"bulletControls\""
            }
        ],
        description:null,
        name:"StandardControlGroup",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Canvas.mouseDown":{
        ref:"method:Canvas.mouseDown",
        flags:"A",
        description:"\n Executed when the left mouse down is pressed on this widget.  No default implementation.\n\n",
        name:"mouseDown",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        platformNotes:"If the end user system has only one mouse button, then it is considered the \"left\"                mouse button (and this method would execute when it is pressed on this widget).",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:ListGrid.rowOut":{
        ref:"method:ListGrid.rowOut",
        flags:"",
        description:" Called when the mouse pointer leaves a row\n\n",
        name:"rowOut",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:RangeSlider.startThumb":{
        ref:"attr:RangeSlider.startThumb",
        flags:"IR",
        description:"Thumb for the start of the range.",
        name:"startThumb",
        seeAlso:[
        ],
        valueType:"AutoChild Snapbar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "method:PortalLayout.getPortlets":{
        ref:"method:PortalLayout.getPortlets",
        flags:"",
        description:" Returns a flat array of all the ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} in this PortalLayout.\n",
        name:"getPortlets",
        seeAlso:[
            {
                ref:"method:PortalLayout.getPortletArray",
                description:null
            }
        ],
        returns:{
            description:"portlets",
            type:"Array of Portlet"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:ServiceTask.values":{
        ref:"attr:ServiceTask.values",
        flags:"IR",
        description:"Values to be submitted for \"update\", \"add\" and \"remove\" operations.\n <P>\n Similar to ${isc.DocUtils.linkForRef('type:Criteria')}, data values prefixed with \"$\" will be treated as a\n ${isc.DocUtils.linkForRef('group:taskInputExpression')}.  Use ${isc.DocUtils.linkForRef('attr:ServiceTask.fixedValues')} for any values that start with\n \"$\" but should be treated as a literal.",
        name:"values",
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ServiceTask"
    },
    "method:TileLayout.setTileWidth":{
        ref:"method:TileLayout.setTileWidth",
        flags:"",
        description:" Sets the width of tiles.\n",
        name:"setTileWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"width",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "tileLayout"
        ]
    },
    "classMethod:Page.getOrientation":{
        ref:"classMethod:Page.getOrientation",
        flags:"",
        description:" Is the current page wider than it is tall (\"landscape\" orientation) or the reverse \n (\"portrait\" orientation). Note that the ${isc.DocUtils.linkForRef('type:PageEvent','orientationChange page event')}\n will be fired whenever the page orientation changes.\n <P>\n This method is typically useful for apps developed for display on mobile devices,\n though it will also return a valid value when running against a desktop browser.\n See also ${isc.DocUtils.linkForRef('group:mobileDevelopment','this discussion')} on building applications\n for mobile devices\n",
        name:"getOrientation",
        seeAlso:[
        ],
        returns:{
            description:"current page orientation",
            type:"PageOrientation"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "mobileDevelopment"
        ]
    },
    "attr:ListGridField.editorImageURLPrefix":{
        ref:"attr:ListGridField.editorImageURLPrefix",
        flags:"IRWA",
        description:"When some cell in this field is being edited, this property can be used to apply\n an explicit ${isc.DocUtils.linkForRef('attr:FormItem.imageURLPrefix')} to the editor in question.\n This can be used to modify the valueIcons within the editor.<br>\n If unset, but ${isc.DocUtils.linkForRef('attr:ListGridField.imageURLPrefix')} is specified, that will be used\n instead.",
        name:"editorImageURLPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:ListGrid.updateData":{
        ref:"method:ListGrid.updateData",
        flags:"",
        description:" Perform a DataSource \"update\" operation to update existing records in this component's\n DataSource.\n\n",
        name:"updateData",
        seeAlso:[
        ],
        params:[
            {
                description:"updated record",
                optional:false,
                name:"updatedRecord",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"method to call on operation completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundUpdate')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:MetricSettings.showValueAxisLabel":{
        ref:"attr:MetricSettings.showValueAxisLabel",
        flags:"IR",
        description:"Whether to show the ${isc.DocUtils.linkForRef('attr:MetricSettings.valueTitle','valueTitle')} as a label on this extra value axis.",
        name:"showValueAxisLabel",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:FacetChart.getFacet":{
        ref:"method:FacetChart.getFacet",
        flags:"",
        description:" Get a facet definition by facetId.\n",
        name:"getFacet",
        seeAlso:[
            {
                ref:"class:Facet",
                description:null
            }
        ],
        params:[
            {
                description:"the id of the facet to retrieve",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the Facet if found, or null",
            type:"Facet"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:DateItem.textFieldProperties":{
        ref:"attr:DateItem.textFieldProperties",
        flags:"IRA",
        description:"Custom properties to apply to this dateItem's generated ${isc.DocUtils.linkForRef('attr:DateItem.textField')}.\n Only applies if ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true.",
        name:"textFieldProperties",
        seeAlso:[
        ],
        valueType:"TextItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "attr:Splitbar.vertical":{
        ref:"attr:Splitbar.vertical",
        flags:"R",
        description:"Is this split bar vertically orientated?<br>\n When a <code>Splitbar</code> is created by a layout to be the resizeBar for some\n member of the layout, the <code>vertical</code> property will be set to <code>true</code>\n if the layout is horizontal, meaning this resizeBar will be taller than it is wide, \n and will allow horizontal resizing of the member.",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar"
    },
    "method:ListGrid.getDisplayValue":{
        ref:"method:ListGrid.getDisplayValue",
        flags:"",
        description:" Given a field with a specified ${isc.DocUtils.linkForRef('attr:ListGridField.valueMap')} or ${isc.DocUtils.linkForRef('attr:ListGridField.displayField')}\n this method will return the display value for any underlying data value.\n",
        name:"getDisplayValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Field or field identifier with valueMap",
                optional:false,
                name:"fieldID",
                defaultValue:null,
                type:"string || number || ListGridField"
            },
            {
                description:"Data value for this field",
                optional:false,
                name:"valueFieldValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"Display value associated with the specified valueFieldValue",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "type:CriteriaPolicy":{
        ref:"type:CriteriaPolicy",
        values:[
            {
                description:"Cache is dropped whenever criteria changes.",
                value:"\"dropOnChange\""
            },
            {
                description:"Cache is retained as long as the only changes to criteria                              make the criteria more restrictive as determined by\n                              ${isc.DocUtils.linkForRef('method:ResultSet.compareCriteria')}.",
                value:"\"dropOnShortening\""
            }
        ],
        description:null,
        name:"CriteriaPolicy",
        seeAlso:[
        ],
        type:"type"
    },
    "classMethod:ColorPicker.getSharedColorPicker":{
        ref:"classMethod:ColorPicker.getSharedColorPicker",
        flags:"",
        description:" Returns the shared global ColorPicker. \n Many applications will only need one ColorPicker instance; for such use \n cases, it is a good idea to use the shared object for performance reasons.\n <p>\n The optional second parameter to this method indicates whether the shared picker\n should retain the state (mode, color and opacity) it was in last time it was used, \n or revert to defaults.\n Generally, you will want the picker to revert to default state; this gives the\n same user experience as creating a new instance without incurring the overhead.\n However, some use cases will benefit from the picker remembering what the user\n did last time.\n",
        name:"getSharedColorPicker",
        seeAlso:[
        ],
        params:[
            {
                description:"Properties to apply to the global ColorPicker object",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"Should we keep the current state?                                    If false (or not provided), revert to default state",
                optional:true,
                name:"keepCurrentState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:ColorPicker"
    },
    "group:error handling":{
        ref:"group:error handling",
        refs:[
        ],
        name:"error handling",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.setFilterEditorCriteria":{
        ref:"method:ListGrid.setFilterEditorCriteria",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is true, this method will update the criteria shown\n in the <code>filterEditor</code> without performing a filter.\n",
        name:"setFilterEditorCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"New criteria to show",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria or AdvancedCriteria"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.headerHoverStyle":{
        ref:"attr:ListGrid.headerHoverStyle",
        flags:"IRW",
        description:"This property may be set to customize the css style for the\n hover shown on ${isc.DocUtils.linkForRef('method:ListGrid.headerHover')}.",
        name:"headerHoverStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:DrawItem.setFillGradient":{
        ref:"method:DrawItem.setFillGradient",
        flags:"",
        description:" Update fillGradient for this drawItem.\n",
        name:"setFillGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"new gradient to use.  Pass null for transparent.",
                optional:false,
                name:"gradient",
                defaultValue:null,
                type:"Gradient"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:Button.removeFromRadioGroup":{
        ref:"method:Button.removeFromRadioGroup",
        flags:"",
        description:" Remove this widget from the specified mutually exclusive selection group with the ID\n passed in.\n No-op's if this widget is not a member of the groupID passed in.\n If no groupID is passed in, defaults to removing from whatever radioGroup this widget\n is a member of.\n",
        name:"removeFromRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- optional radio group ID (to ensure the widget is removed                                        from the appropriate group.",
                optional:true,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:CanvasItem.multiple":{
        ref:"attr:CanvasItem.multiple",
        flags:"IR",
        description:"Whether this CanvasItem is intended to hold multiple values.\n <smartgwt>\n <P>\n This attribute can affect the return type of getValue(). If this CanvasItem is storing\n multiple values, then the return type of getValue() is <code>JavaScriptObject</code>\n (a JavaScript array object) if multiple is null or false. However, if multiple is true,\n then the return type is either <code>List</code> or <code>RecordList</code>.\n </smartgwt>",
        name:"multiple",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "attr:Calendar.canEditField":{
        ref:"attr:Calendar.canEditField",
        flags:"IR",
        description:"Name of the field on each ${isc.DocUtils.linkForRef('object:CalendarEvent')} that determines editability.",
        name:"canEditField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"canEdit\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "group:hovers":{
        ref:"group:hovers",
        refs:[
            "method:Canvas.handleHover",
            "method:Canvas.updateHover",
            "method:Canvas.hoverHidden",
            "method:Canvas.hover",
            "method:Canvas.getHoverHTML",
            "method:DrawItem.hover",
            "method:DrawItem.getHoverHTML",
            "method:ListGridField.hoverHTML",
            "method:ListGrid.headerHoverHTML",
            "method:ListGrid.headerHover",
            "method:Button.titleHover",
            "method:Img.getHoverHTML",
            "method:ImgButton.titleHover",
            "method:StretchImgButton.titleHover",
            "method:SectionHeader.titleHover",
            "method:ImgSectionHeader.titleHover",
            "attr:Canvas.prompt",
            "attr:Canvas.canHover",
            "attr:Canvas.hoverDelay",
            "attr:Canvas.showHover",
            "attr:Canvas.hoverWidth",
            "attr:Canvas.hoverHeight",
            "attr:Canvas.hoverAlign",
            "attr:Canvas.hoverVAlign",
            "attr:Canvas.hoverWrap",
            "attr:Canvas.hoverStyle",
            "attr:Canvas.hoverOpacity",
            "attr:Canvas.hoverMoveWithMouse",
            "attr:Canvas.hoverAutoDestroy",
            "attr:DrawItem.canHover",
            "attr:DrawItem.showHover",
            "attr:DrawItem.hoverDelay",
            "attr:DrawItem.prompt",
            "attr:ListGrid.canHover",
            "attr:ListGrid.showHover",
            "attr:ListGrid.showClippedHeaderTitlesOnHover",
            "attr:ListGrid.hoverStyle",
            "attr:Button.showClippedTitleOnHover",
            "attr:Img.prompt",
            "attr:ImgButton.showClippedTitleOnHover",
            "attr:StretchImgButton.showClippedTitleOnHover",
            "attr:SectionStackSection.showClippedTitleOnHover",
            "attr:SectionHeader.showClippedTitleOnHover",
            "attr:ImgSectionHeader.showClippedTitleOnHover",
            "attr:ImgSectionHeader.prompt"
        ],
        name:"hovers",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DrawCurve.controlPoint1":{
        ref:"attr:DrawCurve.controlPoint1",
        flags:"IRW",
        description:"First cubic bezier control point.",
        name:"controlPoint1",
        setter:[
            "setControlPoint1"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[100,0]",
        type:"attr",
        definingClass:"class:DrawCurve"
    },
    "attr:SelectItem.controlStyle":{
        ref:"attr:SelectItem.controlStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's control box (surrounds text box and picker).\n <P>\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special skinning considerations.",
        name:"controlStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"selectItemControl\", [IRA]",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Calendar.timelineView":{
        ref:"attr:Calendar.timelineView",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:ListGrid')} used to display events in lanes in a horizontal ${isc.DocUtils.linkForRef('class:Timeline')} view.",
        name:"timelineView",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:DrawCurve.controlPoint2":{
        ref:"attr:DrawCurve.controlPoint2",
        flags:"IRW",
        description:"Second cubic bezier control point.",
        name:"controlPoint2",
        setter:[
            "setControlPoint2"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[0,100]",
        type:"attr",
        definingClass:"class:DrawCurve"
    },
    "attr:DateChooser.endYear":{
        ref:"attr:DateChooser.endYear",
        flags:"IR",
        description:"Last year that may be selected.",
        name:"endYear",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"2020",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "type:ValueMap":{
        ref:"type:ValueMap",
        description:"A ValueMap defines the set of legal values for a field, and optionally allows you to provide\n a mapping from stored values to values as seen by the end user.\n <P>\n A valueMap can be specified as either an Array of legal values, or as an ${isc.DocUtils.linkForRef('type:Object')}\n where each property maps a stored value to a user-displayable value.  See\n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap')} for how to express a ValueMap in\n ${isc.DocUtils.linkForRef('group:componentXML','Component XML')}.\n <P>\n A ValueMap can be entirely static or entirely dynamic, with many options in between.  For\n example, a ValueMap may be:\n <ul>\n <li> statically defined in a JavaScript or XML file.  Such a valueMap changes only when\n application code is upgraded.\n <li> generated dynamically by server code when the application first loads, for example,\n by generating JavaScript or XML dynamically in a .jsp or .asp file.  Such a valueMap may be\n different for each session and for each user.\n <li> loaded on demand from a DataSource, via the\n ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource','optionDataSource')} property, or via a call to\n ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} where a valueMap is derived dynamically from the returned data\n (see ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} for an example).  Such a valueMap may be updated at any\n time, for example, every time the user changes a related field while editing data.\n </ul>\n See also the ${isc.DocUtils.linkForRef('group:smartArchitecture','SmartClient Architecture Overview')} to understand\n the best architecture from a performance and caching perspective.",
        name:"ValueMap",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed"
    },
    "attr:ListGrid.defaultFields":{
        ref:"attr:ListGrid.defaultFields",
        flags:"IRA",
        description:"An array of listGrid field configuration objects.  When a listGrid is initialized, if this\n property is set and there is no value for the <code>fields</code> attribute, this.fields will\n be defaulted to a generated array of field objects duplicated from this array.\n <P>\n This property is useful for cases where a standard set of fields will be displayed\n in multiple listGrids - for example a subclass of ListGrid intended to display a particular\n type of data:<br>\n In this example we would not assign a single ${isc.DocUtils.linkForRef('attr:ListGrid.fields')} array directly to the\n class via <code>addProperties()</code> as every generated instance of this class would\n then point to the same fields array object. This would cause unexpected behavior such as\n changes to the field order in one grid effecting other grids on the page.<br>\n Instead we could use <code>addProperties()</code> on our new subclass to set\n <code>defaultFields</code> to a standard array of fields to display. Each generated instance\n of the subclass would then show up with default fields duplicated from this array.",
        name:"defaultFields",
        seeAlso:[
        ],
        valueType:"Array of ListGridField Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:CubeGrid.facetMoved":{
        ref:"method:CubeGrid.facetMoved",
        flags:"",
        description:" Notification fired when a facet is moved.\n \n",
        name:"facetMoved",
        seeAlso:[
            {
                ref:"method:CubeGrid.facetRemoved",
                description:null
            },
            {
                ref:"method:CubeGrid.facetAdded",
                description:null
            }
        ],
        params:[
            {
                description:"facetId which moved",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "method:CubeGrid.recordHasChanges":{
        ref:"method:CubeGrid.recordHasChanges",
        flags:"",
        description:" If this cubeGrid can be edited, this method will return true if the record passed in has been\n edited, but the edits have not yet been saved to the CubeGrid's data object.\n",
        name:"recordHasChanges",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of record to check for changes",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column index of the record to check for changes",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true if the record has been edited but not yet saved",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "attr:TabSet.scrollerSrc":{
        ref:"attr:TabSet.scrollerSrc",
        flags:"IR",
        description:"If this TabSet is showing ${isc.DocUtils.linkForRef('attr:TabSet.showTabScroller','tab scroller buttons')}, and \n ${isc.DocUtils.linkForRef('attr:TabSet.symmetricScroller','symmetricScroller')} is false, this property governs the base\n URL for the tab bar back and forward scroller button images.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:TabSet.symmetricScroller','symmetricScroller')} is true, \n ${isc.DocUtils.linkForRef('attr:TabSet.scrollerHSrc')} and ${isc.DocUtils.linkForRef('attr:TabSet.scrollerVSrc')} will be used instead.\n <P>\n To get the path to the image to display, this base URL will be modified as follows:\n <ul>\n <li>If appropriate a state suffix of <code>\"Down\"</code> or <code>\"Disabled\"</code> will be\n     appended.</li>\n <li>The ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} for this tabSet will be appended.</li>\n <li>A suffix of <code>\"forward\"</code> or <code>\"back\"</code> will be appended for the\n     forward or backward scrolling button.</li>\n </ul>\n For example - if the scrollerSrc is set to <code>\"[SKIN]scroll.gif\"</code>, the image\n displayed for the back-scroller button on a tabSet with <code>tabBarPosition</code> set to\n \"top\" and <code>symmetricScroller</code> set to false would be one of \n <code>\"[SKIN]scroll_top_back.gif\"</code>, <code>\"[SKIN]scroll_Down_top_back.gif\"</code>,\n and <code>\"[SKIN]scroll_Disabled_top_back.gif\"</code>.\n <P>\n Note that for best results the media should be sized to match the scroller button sizes, \n determined by ${isc.DocUtils.linkForRef('attr:TabSet.tabBarThickness')} and ${isc.DocUtils.linkForRef('attr:TabSet.scrollerButtonSize')}.",
        name:"scrollerSrc",
        seeAlso:[
            {
                ref:"attr:TabSet.symmetricScroller",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/scroll.gif\"",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "method:SelectItem.dataArrived":{
        ref:"method:SelectItem.dataArrived",
        flags:"",
        description:" If this item is showing a dataBound pickList, this notification method will be fired \n when new data arrives from the server.\n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"index of first row returned by the server",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"index of last row returned by the server",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"pointer to this pickList's data",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"ResultSet"
            }
        ],
        type:"method",
        definingClass:"class:SelectItem"
    },
    "classMethod:Date.getFirstDayOfWeek":{
        ref:"classMethod:Date.getFirstDayOfWeek",
        flags:"",
        description:" Returns the global attribute that dictates which day should be treated as the first day of \n the week in calendars and date calculations.  The parameter is expected to be an integer \n value between 0 (Sunday) and 6 (Saturday).\n <P>\n The default value is picked up from the current locale.\n\n",
        name:"getFirstDayOfWeek",
        seeAlso:[
        ],
        returns:{
            description:"the number of the day being used as the first day of the week",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "classMethod:EventHandler.shiftKeyDown":{
        ref:"classMethod:EventHandler.shiftKeyDown",
        flags:"",
        description:"\t\t\tReturn true if the shift key is being held down.\n\t\t\tNote that this is only set reliably for keyboard events.\n\n",
        name:"shiftKeyDown",
        seeAlso:[
        ],
        returns:{
            description:"true == shift key is down",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "keyboardEvents"
        ]
    },
    "attr:FacetChart.minBarThickness":{
        ref:"attr:FacetChart.minBarThickness",
        flags:"IR",
        description:"If bars would be smaller than this size, margins are reduced until bars overlap.",
        name:"minBarThickness",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"4",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:WebService.getFetchDS":{
        ref:"method:WebService.getFetchDS",
        flags:"",
        description:" Retrieve a DataSource that provides read-only access to records returned by a web\n service operation.\n <P>\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBound Components')} can be bound to the returned\n DataSource, and the ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} method can be invoked\n to retrieve data from the web service.\n <P>\n The returned DataSource is only capable of the \"fetch\" \n ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource operation')}, not \"update\", \"add\" or\n \"remove\".  To create a DataSource capable of full read-write access, use\n ${isc.DocUtils.linkForRef('attr:DataSource.operationBindings')} with the\n ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation','wsOperation')} property set to associate each\n DataSource operation with a web service operation. \n\n",
        name:"getFetchDS",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the web service operation to invoke to fetch                               records",
                optional:false,
                name:"operationName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"tag or type name of the XML element to be returned as                               DataSource records",
                optional:false,
                name:"resultType",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Optional additional properties for the operationType:\"fetch\" \n ${isc.DocUtils.linkForRef('class:OperationBinding','operationBinding')} which this method automatically creates.  This\n can be used to set properties such as ${isc.DocUtils.linkForRef('attr:OperationBinding.useFlatFields')} or\n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath')}",
                optional:true,
                name:"operationBindingProperties",
                defaultValue:null,
                type:"OperationBinding Properties"
            }
        ],
        type:"method",
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "attr:Canvas.autoDraw":{
        ref:"attr:Canvas.autoDraw",
        flags:"IR",
        description:"If true, this canvas will draw itself immediately after it is created.\n <P>\n <b>Note</b> that you should turn this OFF for any canvases that are provided as children\n of other canvases, or they will draw initially, then be clear()ed and drawn again when\n added as children, causing a large performance penalty.\n <P>\n For example, the following code is incorrect and will cause extra draw()s:\n <P>\n <pre>\n     isc.Layout.create({\n         members : [\n             isc.ListGrid.create()\n         ]\n     });\n </pre>\n It should instead be:\n <pre>\n     isc.Layout.create({\n         members : [\n             isc.ListGrid.create(<b>{ autoDraw: false }</b>)\n         ]\n     });\n </pre>\n In order to avoid unwanted autoDrawing systematically, it is recommend that you call\n ${isc.DocUtils.linkForRef('classMethod:isc.setAutoDraw','isc.setAutoDraw(false)')} immediately after SmartClient is loaded\n and before any components are created, then set <code>autoDraw:true</code> or call\n draw() explicitly to draw components.\n <P>\n Otherwise, if the global setting for autoDraw remains <code>true</code>, you must set\n autoDraw:false, as shown above, on every component in your application that\n should not immediately draw: all Canvas children, Layout members, Window items, Tab\n panes, etc, however deeply nested.  Forgetting to set autoDraw:false will result in one\n more clear()s - these are reported on the Results tab of the\n ${isc.DocUtils.linkForRef('group:debugging','Developer Console')}, and can be tracked to individual components by\n using the \"clears\" log category in the Developer Console.",
        name:"autoDraw",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('autodraw')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "method:UploadItem.selectValue":{
        ref:"method:UploadItem.selectValue",
        flags:"",
        description:" <strong>This method is not supported</strong> by <code>UploadItem</code>.\n",
        name:"selectValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:UploadItem"
    },
    "attr:Canvas.locatePeersBy":{
        ref:"attr:Canvas.locatePeersBy",
        flags:"IRWA",
        description:"Strategy to use when locating peers of this canvas from an autoTest locator string.",
        name:"locatePeersBy",
        seeAlso:[
        ],
        valueType:"LocatorStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "autoTest"
        ]
    },
    "attr:LinkItem.iconVAlign":{
        ref:"attr:LinkItem.iconVAlign",
        flags:"IRWA",
        description:"How should icons be aligned vertically for this form item.",
        name:"iconVAlign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:LinkItem",
        groups:[
            "formIcons"
        ]
    },
    "method:TabSet.tabSelected":{
        ref:"method:TabSet.tabSelected",
        flags:"",
        description:" Notification fired when a tab is selected. Note that this will only fire if \n this tabSet is drawn. If a tab is selected before <code>TabSet.draw()</code> \n is called, the <code>tabSelected()</code> notification will fire on \n <code>draw()</code>\n",
        name:"tabSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the tab",
                optional:false,
                name:"tabNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"pane for this tab",
                optional:false,
                name:"tabPane",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"id of the tab",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"id"
            },
            {
                description:"the tab object (not tab button instance)",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"tab"
            },
            {
                description:"the name of the newly selected tab",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:Snapbar.showDown":{
        ref:"attr:Snapbar.showDown",
        flags:"IRW",
        description:"Snapbars show mouse-down styling.",
        name:"showDown",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Snapbar"
    },
    "method:FormItem.hasAdvancedCriteria":{
        ref:"method:FormItem.hasAdvancedCriteria",
        flags:"",
        description:" Does this form item produce an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} sub criterion object?\n If this method returns true, ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} on the\n form containing this item will always return an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object, calling\n <smartclient>${isc.DocUtils.linkForRef('method:FormItem.getCriterion')}</smartclient>\n <smartgwt><code>FormItemCriterionGetter.getCriterion()</code></smartgwt>\n on each item to retrieve the individual criteria.\n <P>\n Default implementation will return <code>true</code> if ${isc.DocUtils.linkForRef('attr:FormItem.operator')} is\n explicitly specified.\n\n",
        name:"hasAdvancedCriteria",
        seeAlso:[
        ],
        returns:{
            description:"true if this item will return an AdvancedCriteria sub-criterion.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:FacetChart.chartBackgroundDrawn":{
        ref:"method:FacetChart.chartBackgroundDrawn",
        flags:"",
        description:" Called when most elements of the chart <i>other than data</i> data have been drawn, including\n gradations and legend.\n <P>\n This notification will be fired each time the chart is redrawn (due to resize, data change,\n etc).  If you want to draw additional information on the chart using ${isc.DocUtils.linkForRef('class:DrawPane')}\n (FacetChart's superclass) and various ${isc.DocUtils.linkForRef('class:DrawItem')}s, you should do in response to this\n notification.  Due to auto-sizing, APIs that are typically used to position custom\n DrawItems (such as ${isc.DocUtils.linkForRef('method:FacetChart.getChartLeft')}) may return bad values if called at other times.\n <P>\n Additional DrawItems added in this method will appear underneath data elements such as bars\n or columns.  See ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} for placing DrawItems on top of data elements.\n\n",
        name:"chartBackgroundDrawn",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:DateChooser.timeItemTitle":{
        ref:"attr:DateChooser.timeItemTitle",
        flags:"IRW",
        description:"Title for the ${isc.DocUtils.linkForRef('attr:DateChooser.timeItem','time field')}.",
        name:"timeItemTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Time\"",
        type:"attr",
        definingClass:"class:DateChooser",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TimeItem.setMinuteValues":{
        ref:"method:TimeItem.setMinuteValues",
        flags:"A",
        description:" Sets the array of valid ${isc.DocUtils.linkForRef('attr:TimeItem.minuteValues','minute values')} to use when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for limiting available valid Minute values, or when using the TimeItem to record\n duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMinValue','minuteMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMaxValue','minuteMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteIncrement','minuteIncrement')} for another method of controlling the \n content in the minute picker.\n",
        name:"setMinuteValues",
        seeAlso:[
        ],
        params:[
            {
                description:"array of available Minute values",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Array of Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:CanvasItem.height":{
        ref:"attr:CanvasItem.height",
        flags:"IRW",
        description:"Height of the Canvas.  Can be either a number indicating a fixed height in pixels, a\n percentage indicating a percentage of the overall form's height, or \"*\" indicating take\n whatever remaining space is available. See the ${isc.DocUtils.linkForRef('group:formLayout')} overview for details.\n <p>\n Height may also be explicitly specified on the ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')}. In this\n any <code>canvasItem.height</code> will be ignored in favor of the value applied \n to the canvas directly. In either case, percentage values will be resolved using\n standard formItem sizing rules as described in ${isc.DocUtils.linkForRef('group:formLayout')}",
        name:"height",
        seeAlso:[
        ],
        valueType:"int | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "method:FormItem.setValue":{
        ref:"method:FormItem.setValue",
        flags:"",
        description:" Set the value of the form item to the value passed in\n <p>\n NOTE: for valueMap'd items, newValue should be data value not displayed value\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value to set the element to",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "classMethod:Offline.get":{
        ref:"classMethod:Offline.get",
        flags:"",
        description:" Returns the value mapped to the passed-in key from browser-local storage, or null if \n no such key exists.\n \n",
        name:"get",
        seeAlso:[
            {
                ref:"classMethod:Offline.put",
                description:null
            }
        ],
        params:[
            {
                description:"The key to retrieve a value for",
                optional:false,
                name:"key",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"The value mapped to the passed in key, or null if no such key exists",
            type:null
        },
        type:"classMethod",
        definingClass:"class:Offline"
    },
    "method:ValuesManager.getSaveOperationType":{
        ref:"method:ValuesManager.getSaveOperationType",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('type:DSOperationType')} to be performed when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is\n called. Valid options are <code>\"add\"</code> or <code>\"update\"</code>.\n <P>\n If a ${isc.DocUtils.linkForRef('class:DSRequest')} configuration object is passed in containing an explicit operationType\n this will be returned. Otherwise ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOperationType')} will be returned.\n This attribute is automatically set via calls to data binding methods such as\n ${isc.DocUtils.linkForRef('method:DynamicForm.editNewRecord')}, or it may be set explicitly.\n <P>\n If no explicit saveOperationType is specified for this form, the system will \n look at the current values for the form. If the form has no value for\n the ${isc.DocUtils.linkForRef('method:DataSource.getPrimaryKeyField','primaryKey field')}, or that field is\n editable and has been modified we assume an add operation, otherwise an update.\n If the form is a member of a ${isc.DocUtils.linkForRef('class:ValuesManager')}, the primary key field value\n will be derived from the valuesManager's values object.\n\n",
        name:"getSaveOperationType",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional DSRequest config block for the  save operation",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"Operation type for the save request.",
            type:"DSOperationType"
        },
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "classMethod:isc.echo":{
        ref:"classMethod:isc.echo",
        flags:"",
        description:" Same as ${isc.DocUtils.linkForRef('classMethod:Log.echo')}.\n\n",
        name:"echo",
        seeAlso:[
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:JSONEncoder.circularReferenceMarker":{
        ref:"attr:JSONEncoder.circularReferenceMarker",
        flags:"IR",
        description:"The string marker used to represent circular references.  See ${isc.DocUtils.linkForRef('attr:JSONEncoder.circularReferenceMode')}.",
        name:"circularReferenceMarker",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"$$BACKREF$$\"",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:ResultTree.fetchMode":{
        ref:"attr:ResultTree.fetchMode",
        flags:"IR",
        description:"Mode of fetching records from server.\n <P>\n fetchMode:\"local\" implies that local filtering will always be performed. See\n ${isc.DocUtils.linkForRef('attr:ResultTree.keepParentsOnFilter')} for additional filtering details.\n <P>\n fetchMode:\"basic\" or \"paged\" implies that if search criteria change, the entire\n tree will be discarded and re-fetched from the server.  When retrieving the replacement\n tree data, the default behavior will be to preserve the ${isc.DocUtils.linkForRef('method:ResultTree.getOpenState','openState')}\n for any nodes that the server returns which were previously opened by the user.  Note\n that this implies that if ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand')} is enabled and the server returns only\n root-level nodes, open state will be preserved only for root-level nodes, and children\n of open root-level nodes will be immediately fetched from the server if\n they are not included in the server's initial response.\n <P>\n fetchMode:\"paged\" enables paging for nodes that have very large numbers of children.\n Whenever the children of a folder are loaded, the <code>resultTree</code> will set\n ${isc.DocUtils.linkForRef('attr:DSRequest.startRow')} and ${isc.DocUtils.linkForRef('attr:DSRequest.endRow','endRow')} when requesting children\n from the DataSource, and will manage loading of further children on demand, similar to\n how a ${isc.DocUtils.linkForRef('class:ResultSet')} manages paging for lists.  For a deeper discussion see the\n <b>Paging large sets of children</b> section of the ${isc.DocUtils.linkForRef('group:treeDataBinding')}\n overview.",
        name:"fetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"basic\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('pagingForChildren')}"
        ],
        definingClass:"class:ResultTree",
        groups:[
            "treeDataBinding"
        ]
    },
    "method:StatefulCanvas.getTitle":{
        ref:"method:StatefulCanvas.getTitle",
        flags:"A",
        description:" Return the title - HTML drawn inside the component.\n <p>\n Default is to simply return this.title.\n",
        name:"getTitle",
        seeAlso:[
        ],
        returns:{
            description:"HTML for the title.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:StatefulCanvas"
    },
    "type:JoinType":{
        ref:"type:JoinType",
        values:[
            {
                description:"A regular inner join, whereby rows are only included in the resultset                   where the join can be satisified, so a missing row in the table being\n                   joined to results in the entire row being omitted.",
                value:"\"inner\""
            },
            {
                description:"An outer join.  All outer joins generated by SmartClient's SQL subsystem                   are left outer joins, meaning that every row in the join-from (or \"left\")\n                   table that matches the criteria is included, and missing rows in the \n                   join-to (or \"right\") table cause columns to be set to null.",
                value:"\"outer\""
            }
        ],
        description:"The type of join to make between two SQL tables when resolving \n ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom','includeFrom')} fields.",
        name:"JoinType",
        seeAlso:[
        ],
        type:"type",
        serverDS:"only",
        groups:[
            "dataSourceRelations"
        ]
    },
    "method:ListGridField.hoverHTML":{
        ref:"method:ListGridField.hoverHTML",
        flags:"",
        description:" StringMethod override point for returning HTML to be shown in hovers over cells in the\n column described by this field.\n <P>\n Called only when ${isc.DocUtils.linkForRef('attr:ListGrid.canHover','canHover')} and ${isc.DocUtils.linkForRef('attr:ListGrid.showHover','showHover')}\n are both true.\n <P>\n The value of \"this\" within the method will by the ${isc.DocUtils.linkForRef('object:ListGridField','field definition')}.\n\n",
        name:"hoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"record being hovered over",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"value of the cell being hovered over",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"row number where hover occurred",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number where hover occurred",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"ListGrid this field is a part of",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"HTML to show in the hover",
            type:"HTML"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('valueHoverTips')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "hovers"
        ]
    },
    "attr:Button.iconOrientation":{
        ref:"attr:Button.iconOrientation",
        flags:"IR",
        description:"If this button is showing an icon should it appear to the left or right of the title?\n valid options are <code>\"left\"</code> and <code>\"right\"</code>.",
        name:"iconOrientation",
        setter:[
            "setIconOrientation"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"left\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonIcons')}"
        ],
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ListGrid.headerHoverWidth":{
        ref:"attr:ListGrid.headerHoverWidth",
        flags:"IRW",
        description:"Optional default width for the\n hover shown on ${isc.DocUtils.linkForRef('method:ListGrid.headerHover')}.",
        name:"headerHoverWidth",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "group:images":{
        ref:"group:images",
        refs:[
            "method:Canvas.getImgURL",
            "method:Canvas.imgHTML",
            "method:Canvas.getImage",
            "method:Canvas.setImage",
            "classMethod:Page.setAppImgDir",
            "classMethod:Page.getAppImgDir",
            "classMethod:Page.setAppFilesDir",
            "classMethod:Page.getAppFilesDir",
            "classMethod:Page.setSkinDir",
            "classMethod:Page.getSkinDir",
            "classMethod:Page.getSkinImgDir",
            "classMethod:Page.getImgURL",
            "classMethod:Page.getURL",
            "classMethod:Page.loadStyleSheet",
            "attr:CubeGrid.skinImgDir",
            "attr:TabSet.skinImgDir",
            "attr:Canvas.appImgDir",
            "attr:Canvas.skinImgDir",
            "attr:ListGrid.skinImgDir",
            "attr:Scrollbar.skinImgDir",
            "attr:Scrollbar.cornerSrc",
            "attr:Scrollbar.hSrc",
            "attr:Scrollbar.vSrc",
            "attr:Splitbar.skinImgDir",
            "attr:ImgSplitbar.skinImgDir",
            "attr:FileItem.viewIconSrc",
            "attr:FileItem.downloadIconSrc"
        ],
        description:"Referring to and loading images.\n <P>\n The two main URL settings relevant to loading images are:<br>\n * imgDir (where application-specific images live)<br>\n * skinImgDir (where system supplied images live)<br>",
        name:"images",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateChooser.useFirstDayOfFiscalWeek":{
        ref:"attr:DateChooser.useFirstDayOfFiscalWeek",
        flags:"IRW",
        description:"When showing the ${isc.DocUtils.linkForRef('attr:DateChooser.showFiscalYearChooser','fiscal year chooser')}, should firstDayOfWeek\n be defaulted to the same day as the fiscal start date?  If true and a fiscal year \n starts on a Tuesday, the calendar will display Tuesday to Monday from left to right.",
        name:"useFirstDayOfFiscalWeek",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:ComboBoxItem.filterClientPickListData":{
        ref:"method:ComboBoxItem.filterClientPickListData",
        flags:"",
        description:" Returns the data to display in the pick list.\n <P>\n The default implementation applies the criteria returned by \n ${isc.DocUtils.linkForRef('method:PickList.getPickListFilterCriteria')} to the data returned by\n ${isc.DocUtils.linkForRef('method:PickList.getClientPickListData')}.  A record passes the filter if it has a\n matching value for all fields in the criteria object.  Matching is performed according\n to ${isc.DocUtils.linkForRef('type:TextMatchStyle')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:PickList.showAllOptions')} is set, all values are shown, with matching values\n shown below a ${isc.DocUtils.linkForRef('attr:PickList.separatorRows','separator')}.\n\n",
        name:"filterClientPickListData",
        seeAlso:[
        ],
        returns:{
            description:"array of record objects to display in the pickList",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "attr:DateChooser.baseBottomButtonStyle":{
        ref:"attr:DateChooser.baseBottomButtonStyle",
        flags:"IRW",
        description:"CSS style to apply to the buttons at the bottom of the DateChooser (\"Today\" and\n \"Cancel\").  If null, the CSS style specified in ${isc.DocUtils.linkForRef('attr:DateChooser.baseButtonStyle')} is used.",
        name:"baseBottomButtonStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:DynamicForm.getItems":{
        ref:"method:DynamicForm.getItems",
        flags:"",
        description:" Method to retrieve the ${isc.DocUtils.linkForRef('attr:DynamicForm.fields','items')} for this DynamicForm. \n\n",
        name:"getItems",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array of FormItem"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "elements"
        ]
    },
    "classMethod:isc.propertyDefined":{
        ref:"classMethod:isc.propertyDefined",
        flags:"",
        description:"\n\tIs some property specified on the object passed in?  This will return true if \n  <code>object[propertyName]</code> has ever been set to any value, and not deleted.<br>\n  May return true even if <code>object[propertyName] === undefined</code> if the property \n  is present on the object and has been explicitly set to undefined.\n\n",
        name:"propertyDefined",
        seeAlso:[
        ],
        params:[
            {
                description:"Object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"Which property is being tested for?",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if property is defined",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:ListGrid.hiliteReplaceValueFieldTitle":{
        ref:"attr:ListGrid.hiliteReplaceValueFieldTitle",
        flags:"IR",
        description:"Title used for the text box shown when ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteCanReplaceValue')} is set.",
        name:"hiliteReplaceValueFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Replace value with\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MultiGroupDialog.title":{
        ref:"attr:MultiGroupDialog.title",
        flags:"IR",
        description:"The title-text to appear in this Dialog's Header-bar.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Group\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.alwaysFetchMissingValues":{
        ref:"attr:FormItem.alwaysFetchMissingValues",
        flags:"IRWA",
        description:"If this form item has a specified ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} and \n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues')} is true, when the item value changes, a fetch will be\n performed against the optionDataSource to retrieve the related record \n if ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} is specified and the new item value is not present in any\n valueMap explicitly specified on the item.\n <P>\n Setting this property to true means that a fetch will occur against the optionDataSource \n to retrieve the related record even if ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} is unset, or the\n item has a valueMap which explicitly contains this field's value.\n <P>\n An example of a use case where this might be set would be if ${isc.DocUtils.linkForRef('method:FormItem.formatValue')}\n or ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} were written to display properties from the\n ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord','selected record')}.\n <P>\n Note - for efficiency we cache the associated record once a fetch has been performed, meaning\n if the value changes, then reverts to a previously seen value, we do not kick\n off an additional fetch even if this property is true. If necessary this cache may be\n explicitly invalidated via a call to ${isc.DocUtils.linkForRef('method:FormItem.invalidateDisplayValueCache')}",
        name:"alwaysFetchMissingValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "attr:Layout.defaultResizeBars":{
        ref:"attr:Layout.defaultResizeBars",
        flags:"IRW",
        description:"Policy for whether resize bars are shown on members by default. Note that this setting\n changes the effect of ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar')} for members of this layout.",
        name:"defaultResizeBars",
        seeAlso:[
            {
                ref:"attr:Canvas.showResizeBar",
                description:null
            }
        ],
        valueType:"LayoutResizeBarPolicy",
        defaultValue:"\"marked\"",
        type:"attr",
        definingClass:"class:Layout"
    },
    "group:gaeIntegration":{
        ref:"group:gaeIntegration",
        title:"Google Application Engine (GAE)",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"Google App Engine (GAE) is a platform-as-a-service (PaaS) offering from Google, which\n supports cloud deployment of applications written in Java and other languages, as well as\n SQL or JPA access to highly scalable storage (both Google CloudSQL and BigTable-based\n solutions).\n <p>\n SmartClient applications, including those based on the SmartClient Server Framework, can be\n deployed to GAE and can integrate with Google CloudSQL either via SQLDataSource or via JPA,\n and can also use Google's BigTable-based storage via JPA.\n <P>\n For further information, setup instructions and example configuration, see our\n <a href='http://wiki.smartclient.com/display/Main/Google+App+Engine' target='_blank'>public wiki</a>",
        name:"gaeIntegration",
        seeAlso:[
            {
                ref:"group:jpaIntegration",
                description:null
            }
        ],
        type:"group"
    },
    "attr:DataSourceField.multipleStorageSeparator":{
        ref:"attr:DataSourceField.multipleStorageSeparator",
        flags:"IR",
        description:"For fields that are ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple:true')} and use ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorage')}, the\n separator used in the \"simpleString\" ${isc.DocUtils.linkForRef('type:MultipleFieldStorage')} mode.\n <p>\n Default value of null means the ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleValueSeparator')} is used instead.",
        name:"multipleStorageSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "multipleField"
        ]
    },
    "method:DateChooser.cancelClick":{
        ref:"method:DateChooser.cancelClick",
        flags:"",
        description:" Fired when the user clicks the cancel button in this date chooser. Default implementation\n clears the date chooser.\n",
        name:"cancelClick",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DateChooser"
    },
    "method:TreeGrid.getIcon":{
        ref:"method:TreeGrid.getIcon",
        flags:"",
        description:" Get the appropriate icon for a node.\n <P>\n By default icons are derived from ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} and ${isc.DocUtils.linkForRef('attr:TreeGrid.nodeIcon')}.\n Custom icons for individual nodes can be overridden by setting the ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconProperty')}\n on a node.\n <p>\n If you want to suppress icons altogether, provide an override of this method that simply\n returns null.\n <p> \n Note that the full icon URL will be derived by applying ${isc.DocUtils.linkForRef('method:Canvas.getImgURL')} to the\n value returned from this method.\n\n",
        name:"getIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"tree node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"URL for the icon to show for this node",
            type:"URL"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:SectionStack.showExpandControls":{
        ref:"attr:SectionStack.showExpandControls",
        flags:"IRW",
        description:"Whether to show the Expand/Collapse controls in the headers of sections.  If false, hides\n the expand/collapse controls and, instead, treats a click anywhere on the header as if \n it were a click on the expand control.",
        name:"showExpandControls",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:ToolStripGroup.label":{
        ref:"attr:ToolStripGroup.label",
        flags:"IR",
        description:"Label autoChild that presents the title for this ToolStripGroup.\n This can be customized via the standard ${isc.DocUtils.linkForRef('type:AutoChild')} pattern.",
        name:"label",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "method:FilterBuilder.clearCriteria":{
        ref:"method:FilterBuilder.clearCriteria",
        flags:"",
        description:" Clear all current criteria.\n",
        name:"clearCriteria",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "classMethod:isc.getIconPageRect":{
        ref:"classMethod:isc.getIconPageRect",
        flags:"A",
        description:"  Returns the size / position of an icon on the page as an array of coordinates.\n",
        name:"getIconPageRect",
        seeAlso:[
        ],
        params:[
            {
                description:"icon definition for the icon you want to determine the                               position of (defaults to first icon in this.icons).",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"four element array representing the Left, Top, Width, and Height of                      the icon in px.",
            type:"array"
        },
        type:"method",
        definingClass:"class:isc"
    },
    "attr:RPCRequest.clientContext":{
        ref:"attr:RPCRequest.clientContext",
        flags:"IRW",
        description:"An object to be held onto for the duration of the RPC turnaround to track\n application-specific context.\n <br>\n When an RPC turnaround completes, the <code>clientContext</code> is available in the\n ${isc.DocUtils.linkForRef('method:Callbacks.RPCCallback','RPCCallback')} as <code>rpcResponse.clientContext</code>.  The\n <code>clientContext</code> is never sent to the server.\n <br>\n The <code>clientContext</code> is useful for holding onto state that will be used when the\n ${isc.DocUtils.linkForRef('method:Callbacks.RPCCallback','RPCCallback')} fires, such as the name of a component that will receive the\n returned data.",
        name:"clientContext",
        seeAlso:[
            {
                ref:"attr:RPCResponse.clientContext",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:DSRequest.lineBreakStyle":{
        ref:"attr:DSRequest.lineBreakStyle",
        flags:"IR",
        description:"The style of line-breaks to use in the exported output.  See ${isc.DocUtils.linkForRef('type:LineBreakStyle')} for\n more information.",
        name:"lineBreakStyle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:Applet.alt":{
        ref:"attr:Applet.alt",
        flags:"IR",
        description:"This text is displayed if the browser understands the tag used for the applet html element,\n  but can't run the applet for some reason.",
        name:"alt",
        seeAlso:[
            {
                ref:"attr:Applet.altHTML",
                description:null
            },
            {
                ref:"attr:Applet.useTag",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "method:ResultTree.unloadChildren":{
        ref:"method:ResultTree.unloadChildren",
        flags:"",
        description:" Unload the children of a folder, returning the folder to the \"unloaded\" state.\n\n",
        name:"unloadChildren",
        seeAlso:[
        ],
        params:[
            {
                description:"folder in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:ResultTree",
        groups:[
            "loadState"
        ]
    },
    "attr:DateChooser.fiscalYearHeaderStyle":{
        ref:"attr:DateChooser.fiscalYearHeaderStyle",
        flags:"IRW",
        description:"Base CSS style applied to the header of the \n ${isc.DocUtils.linkForRef('attr:DateChooser.showFiscalYearChooser','fiscal year column')} in the \n ${isc.DocUtils.linkForRef('attr:DateChooser.dateGrid','calendar view')}.",
        name:"fiscalYearHeaderStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DateChooser.prevMonthIconWidth":{
        ref:"attr:DateChooser.prevMonthIconWidth",
        flags:"IR",
        description:"Width of the icon for the previous month button",
        name:"prevMonthIconWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:GridRenderer.rowClick":{
        ref:"method:GridRenderer.rowClick",
        flags:"A",
        description:" Called when a row receives a click event.\n\n",
        name:"rowClick",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:StretchImgButton.setIconOrientation":{
        ref:"method:StretchImgButton.setIconOrientation",
        flags:"",
        description:" Changes the orientation of the icon relative to the text of the button.\n\n",
        name:"setIconOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"The new orientation of the icon relative to the text of the button.",
                optional:false,
                name:"orientation",
                defaultValue:null,
                type:"\"left\" or \"right\""
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Canvas.getSnapEdge":{
        ref:"method:Canvas.getSnapEdge",
        flags:"",
        description:" Return the snapEdge value of this object\n\n",
        name:"getSnapEdge",
        seeAlso:[
        ],
        returns:{
            description:"snapEdge",
            type:"string"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:DSResponse.dataSource":{
        ref:"attr:DSResponse.dataSource",
        flags:"IR",
        description:"The DataSource of this DSResponse.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "dsResponse"
        ]
    },
    "method:Layout.getMembers":{
        ref:"method:Layout.getMembers",
        flags:"",
        description:" Get the Array of members.\n <smartclient>\n <p>\n <b>NOTE</b>: the returned array should not be modified directly.  Use ${isc.DocUtils.linkForRef('method:Layout.addMember')} /\n ${isc.DocUtils.linkForRef('method:Layout.removeMember')} to add or remove members from the Layout.  Call\n ${isc.DocUtils.linkForRef('method:List.duplicate','duplicate()')} on the returned Array if you need a copy of the members\n array for some other purpose.\n </smartclient>\n",
        name:"getMembers",
        seeAlso:[
        ],
        returns:{
            description:"the Array of members",
            type:"Array of Canvas"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:LoginDialog.passwordItemTitle":{
        ref:"attr:LoginDialog.passwordItemTitle",
        flags:"IR",
        description:"Specifies the title of the \"passwordItem\" field of the ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"passwordItemTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"Dialog.PASSWORD_TITLE",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:RowSpacerItem.showTitle":{
        ref:"attr:RowSpacerItem.showTitle",
        flags:"IRW",
        description:"we never show a separate title cell for separators",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RowSpacerItem",
        groups:[
            "appearance"
        ]
    },
    "method:Callbacks.RPCQueueCallback":{
        ref:"method:Callbacks.RPCQueueCallback",
        flags:"",
        description:" Callback to fire when a queue of requests sent via \n {@link com.smartgwt.client.rpc.RPCManager#sendQueue(RPCQueueCallback)} returns.\n <P>Note that the Array of RPCResponses passed to this callback\n will actually be DSResponse objects for any requests that were actually \n DSRequests. \n <smartgwt>DSResponse is a subclass of RPCResponse, and you can \"typecast\" the\n underlying JavaScript object to a DSResponse like so:<br>\n <code>new DSResponse(rpcResponse.getJsObj());</code></smartgwt>\n\n",
        name:"RPCQueueCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"array of responses returned from the sent queue of requests",
                optional:false,
                name:"response",
                defaultValue:null,
                type:"Array of RPCResponse"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "classMethod:History.setHistoryTitle":{
        ref:"classMethod:History.setHistoryTitle",
        flags:"",
        description:"\n Sets the title associated with all history entries.  This is the string that appears in the\n history drop-down.  If left unset, this default to the history id that is passed into\n ${isc.DocUtils.linkForRef('classMethod:History.addHistoryEntry')}.\n <p>\n Note: Currently, this works in IE only.  You may call this method in all other browsers,\n but it will not change what's displayed in the history drop-down.\n\n",
        name:"setHistoryTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"The title to show in the history drop-down.",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:History"
    },
    "attr:MultiSortDialog.copyLevelButtonTitle":{
        ref:"attr:MultiSortDialog.copyLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the copyLevelButton\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"copyLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Copy Level\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TileGrid.getDragTrackerTitle":{
        ref:"method:TileGrid.getDragTrackerTitle",
        flags:"",
        description:" Return \"title\" HTML to display as a drag tracker when the user drags some record.<br>\n Default implementation will display the cell value for the title field (see \n ${isc.DocUtils.linkForRef('method:ListGrid.getTitleField')}) for the record(s) being dragged (including any\n icons / custom formatting / styling, etc).\n <p>\n Note: Only called if ${isc.DocUtils.linkForRef('attr:ListGrid.dragTrackerMode')} is set to <code>\"title\"</code>.\n",
        name:"getDragTrackerTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"First selected record being dragged",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row index of first record being dragged",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Title for the row. Default implementation looks at the value of the                  title-field cell for the row.",
            type:"string"
        },
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dragTracker"
        ]
    },
    "attr:ImgButton.showDisabled":{
        ref:"attr:ImgButton.showDisabled",
        flags:"IRW",
        description:"Should we visibly change state when disabled?",
        name:"showDisabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "attr:TreeNode.showDropIcon":{
        ref:"attr:TreeNode.showDropIcon",
        flags:"IRWA",
        description:"For folder nodes showing custom icons (set via ${isc.DocUtils.linkForRef('attr:TreeNode.icon')}),\n this property allows the developer to specify on a per-node basis whether a\n drop state icon should be displayed when the \n user drop-hovers over this folder.<br>\n Set <code>node.showDropIcon</code> to true to show the drop state\n icon, or false to suppress this.<br>\n If not specified, this behavior is determined by ${isc.DocUtils.linkForRef('attr:TreeGrid.showCustomIconDrop')}\n for this node.\n <P>You can change the name of this property by setting \n ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconDropProperty')}.",
        name:"showDropIcon",
        seeAlso:[
            {
                ref:"attr:TreeGrid.customIconProperty",
                description:null
            },
            {
                ref:"attr:TreeGrid.showCustomIconDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:TreeNode",
        groups:[
            "treeIcons"
        ]
    },
    "type:TabTitleEditEvent":{
        ref:"type:TabTitleEditEvent",
        values:[
            {
                description:"Start editing when the user single-clicks a tab title",
                value:"\"click\""
            },
            {
                description:"Start editing when the user double-clicks a tab title",
                value:"\"doubleClick\""
            }
        ],
        description:"An event that triggers title editing in a TabSet.",
        name:"TabTitleEditEvent",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:Snapbar.showClosedGrip":{
        ref:"attr:Snapbar.showClosedGrip",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:Splitbar.showGrip')} is true, this property determines whether the grip image\n displayed should show the <code>\"Closed\"</code> state when the ${isc.DocUtils.linkForRef('attr:Splitbar.target')} \n is hidden. Note that if ${isc.DocUtils.linkForRef('attr:Splitbar.invertClosedGripIfTargetAfter')} is true, we\n may show the \"closed\" state when the target is visible, rather than when it is hidden.",
        name:"showClosedGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Snapbar",
        groups:[
            "grip"
        ]
    },
    "attr:DrawOval.width":{
        ref:"attr:DrawOval.width",
        flags:"IRW",
        description:"Width in pixels.",
        name:"width",
        setter:[
            "setWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DrawOval"
    },
    "method:DetailViewerField.getCellStyle":{
        ref:"method:DetailViewerField.getCellStyle",
        flags:"",
        description:" Optional method to return the CSS class for cells in this field. If specified, this method\n will be called from ${isc.DocUtils.linkForRef('method:DetailViewer.getCellStyle')}, and should return a css class name.\n\n",
        name:"getCellStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"actual value of this cell",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"string"
            },
            {
                description:"field object for this cell",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"object"
            },
            {
                description:"record object for this cell",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            },
            {
                description:"the viewer instance to which this cell belongs",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"DetailViewer"
            }
        ],
        returns:{
            description:"CSS style for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"object:DetailViewerField",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.checkboxFieldFalseImage":{
        ref:"attr:ListGrid.checkboxFieldFalseImage",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is set to <code>\"checkbox\"</code> this property\n determines the image to display in the checkbox field for an unselected row.\n If unset, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')} will be used. Note that the special\n value \"blank\" means that no image will be shown.",
        name:"checkboxFieldFalseImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.checkboxFieldTrueImage",
                description:null
            },
            {
                ref:"attr:ListGrid.checkboxFieldImageWidth",
                description:null
            },
            {
                ref:"attr:ListGrid.checkboxFieldImageHeight",
                description:null
            },
            {
                ref:"attr:ListGrid.printCheckboxFieldFalseImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "object:DrawShapeCommand":{
        methods:[
        ],
        ref:"object:DrawShapeCommand",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem/DrawShape"
        ],
        attrs:[
            "attr:DrawShapeCommand.type",
            "attr:DrawShapeCommand.args"
        ],
        description:"Holds the information of a drawing command.",
        name:"DrawShapeCommand",
        seeAlso:[
        ],
        type:"object"
    },
    "method:Layout.getDropPosition":{
        ref:"method:Layout.getDropPosition",
        flags:"A",
        description:"\n Get the position a new member would be dropped.  This drop position switches in the\n middle of each member, and both edges (before beginning, after end) are legal drop positions\n <p>\n Use this method to obtain the drop position for e.g. a custom drop handler.\n\n",
        name:"getDropPosition",
        seeAlso:[
        ],
        returns:{
            description:"the position a new member would be dropped",
            type:"int"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "method:GridRenderer.cellHoverHTML":{
        ref:"method:GridRenderer.cellHoverHTML",
        flags:"A",
        description:" StringMethod to dynamically assemble an HTML string to show in a hover window over the\n appropriate cell/record when this.canHover and this.showHover are both true.\n Called when the mouse hovers over a cell.\n\n",
        name:"cellHoverHTML",
        seeAlso:[
            {
                ref:"attr:GridRenderer.canHover",
                description:null
            },
            {
                ref:"attr:GridRenderer.showHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the html to be shown inside the hover for this cell",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "group:positioning":{
        ref:"group:positioning",
        refs:[
            "method:Canvas.setSnapTo",
            "method:Canvas.getSnapTo",
            "method:Canvas.setSnapEdge",
            "method:Canvas.getSnapEdge",
            "method:Canvas.setRect",
            "method:Canvas.getLeft",
            "method:Canvas.setLeft",
            "method:Canvas.getTop",
            "method:Canvas.setTop",
            "method:Canvas.getRight",
            "method:Canvas.getBottom",
            "method:Canvas.getScrollLeft",
            "method:Canvas.getScrollTop",
            "method:Canvas.setPageLeft",
            "method:Canvas.setPageTop",
            "method:Canvas.getPageLeft",
            "method:Canvas.getPageTop",
            "method:Canvas.getPageRight",
            "method:Canvas.getPageBottom",
            "method:Canvas.containsPoint",
            "method:Canvas.visibleAtPoint",
            "method:Canvas.intersects",
            "method:Canvas.intersectsRect",
            "method:Canvas.containsEvent",
            "method:Canvas.getOffsetX",
            "method:Canvas.getOffsetY",
            "method:Canvas.moveBy",
            "method:Canvas.moveTo",
            "method:Canvas.getVSnapOrigin",
            "method:Canvas.getHSnapOrigin",
            "method:Canvas.setOverflow",
            "method:DrawItem.getPageLeft",
            "method:DrawItem.getPageTop",
            "method:GridRenderer.getCellPageRect",
            "method:GridRenderer.getColumnLeft",
            "method:GridRenderer.getColumnPageLeft",
            "method:GridRenderer.getColumnWidth",
            "method:GridRenderer.getRowTop",
            "method:GridRenderer.getRowPageTop",
            "method:ListGrid.getRowTop",
            "method:ListGrid.getRowPageTop",
            "method:ListGrid.getColumnLeft",
            "method:ListGrid.getColumnPageLeft",
            "method:ListGrid.getColumnWidth",
            "method:ListGrid.getCellPageRect",
            "method:ListGrid.getDrawnRowHeight",
            "method:Button.setAlign",
            "method:Button.setVAlign",
            "method:FormItem.getRect",
            "method:FormItem.getPageRect",
            "method:FormItem.getLeft",
            "method:FormItem.getTop",
            "method:FormItem.getPageLeft",
            "method:FormItem.getPageTop",
            "attr:ImgTab.align",
            "attr:Canvas.htmlElement",
            "attr:Canvas.htmlPosition",
            "attr:Canvas.position",
            "attr:Canvas.left",
            "attr:Canvas.top",
            "attr:Label.align",
            "attr:Label.valign",
            "type:Positioning"
        ],
        description:"Horizontal and vertical location on the page",
        name:"positioning",
        seeAlso:[
        ],
        type:"group"
    },
    "method:String.endsWith":{
        ref:"method:String.endsWith",
        flags:"",
        description:"\t\t\tReturns true if this string ends with another string.\n",
        name:"endsWith",
        seeAlso:[
        ],
        params:[
            {
                description:"other string to check",
                optional:false,
                name:"substring",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"true == this string ends with substring",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:String",
        groups:[
            "stringProcessing"
        ]
    },
    "method:TabSet.tabForPane":{
        ref:"method:TabSet.tabForPane",
        flags:"",
        description:"Search for a tab that contains a pane.\n",
        name:"tabForPane",
        seeAlso:[
        ],
        params:[
            {
                description:"pane to show",
                optional:false,
                name:"pane",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"tab that contains passed pane",
            type:"Tab"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:FormItem.shouldSaveValue":{
        ref:"attr:FormItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formValues"
        ]
    },
    "method:CubeGrid.selectAllCells":{
        ref:"method:CubeGrid.selectAllCells",
        flags:"",
        description:" Select all cells.\n\n",
        name:"selectAllCells",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:TabSet.tabBar":{
        ref:"attr:TabSet.tabBar",
        flags:"R",
        description:"TabBar for this TabSet, an instance of ${isc.DocUtils.linkForRef('class:TabBar')}.",
        name:"tabBar",
        seeAlso:[
        ],
        valueType:"AutoChild TabBar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:Canvas.getScrollHeight":{
        ref:"method:Canvas.getScrollHeight",
        flags:"A",
        description:"\t\t\tReturns the scrollable height of the widget's contents, including children, ignoring\n          clipping.\n",
        name:"getScrollHeight",
        seeAlso:[
        ],
        returns:{
            description:"height of the element that can scroll",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:IconButton.showIcon":{
        ref:"attr:IconButton.showIcon",
        flags:"IRW",
        description:"Whether to show an Icon in this IconButton.  Set to false to render a text-only button.",
        name:"showIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:Applet.objectCodeBase":{
        ref:"attr:Applet.objectCodeBase",
        flags:"IR",
        description:"This attribute is used only with useTag: \"object\".  In combination with \n  ${isc.DocUtils.linkForRef('attr:Applet.classID')} this tag specifies the minimum JVM version required to view\n  this applet and the URL from which the JVM can be downloaded.\n  <p>\n  The default settings match the default behavior of the &lt;applet&gt; tag which requires JVM\n  1.3 or higher.\n  <p>\n  The default objectCodeBase is: \"http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0\"\n  <p>\n  For notes on this feature see: <a href='http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/using_tags.html#in-ie' target='_blank'>http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/using_tags.html#in-ie</a>",
        name:"objectCodeBase",
        seeAlso:[
            {
                ref:"attr:Applet.classID",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Applet"
    },
    "method:Canvas.addChild":{
        ref:"method:Canvas.addChild",
        flags:"",
        description:" Adds newChild as a child of this widget, set up a named object reference (i.e., this[name])\n to the new widget if name argument is provided, and draw the child if this widget has been\n drawn already.\n <P>\n If newChild has a parent it will be removed from it. If it has a master, it will be detached\n from it if the master is a child of a different parent. If newChild has peers, they'll be\n added to this widget as children as well.\n\n",
        name:"addChild",
        seeAlso:[
        ],
        params:[
            {
                description:"new child canvas to add",
                optional:false,
                name:"newChild",
                defaultValue:null,
                type:"canvas"
            },
            {
                description:"name to assign to child (eg: this[name] == child)",
                optional:true,
                name:"name",
                defaultValue:null,
                type:"string"
            },
            {
                description:"if false, child will not automatically be drawn (only                                          for advanced use)",
                optional:true,
                name:"autoDraw",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"the new child, or null if it couldn't be added",
            type:"canvas"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "method:Canvas.setGroupLabelBackgroundColor":{
        ref:"method:Canvas.setGroupLabelBackgroundColor",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:Canvas.groupLabelBackgroundColor')}.\n",
        name:"setGroupLabelBackgroundColor",
        seeAlso:[
        ],
        params:[
            {
                description:"the new grouping label background color.",
                optional:false,
                name:"groupLabelBackgroundColor",
                defaultValue:null,
                type:"CSSColor"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:ListGridField.iconOrientation":{
        ref:"attr:ListGridField.iconOrientation",
        flags:"IR",
        description:"If this field is showing an icon, should it appear to the left or right of the title?<br>\n Valid options are <code>\"left\"</code> or <code>\"right\"</code>",
        name:"iconOrientation",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"left\"",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "group:dataBinding":{
        ref:"group:dataBinding",
        refs:[
            "attr:ListGrid.saveRequestProperties",
            "attr:ListGrid.autoFetchTextMatchStyle",
            "attr:TreeGrid.autoFetchTextMatchStyle"
        ],
        name:"dataBinding",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ToolStrip.resizeBarClass":{
        ref:"attr:ToolStrip.resizeBarClass",
        flags:"IR",
        description:"Customized resizeBar with typical appearance for a ToolStrip.",
        name:"resizeBarClass",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"ToolStripResizer\"",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "attr:DataBoundComponent.dataSource":{
        ref:"attr:DataBoundComponent.dataSource",
        flags:"IRW",
        description:"The DataSource that this component should bind to for default fields and for performing\n ${isc.DocUtils.linkForRef('class:DSRequest','DataSource requests')}.\n <P>\n Can be specified as either a DataSource instance or the String ID of a DataSource.",
        name:"dataSource",
        setter:[
            "setDataSource"
        ],
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataSourceFields')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "method:FormItem.setRequired":{
        ref:"method:FormItem.setRequired",
        flags:"",
        description:" Setter to mark this formItem as ${isc.DocUtils.linkForRef('attr:FormItem.required')}, or not required at runtime.\n Note that an alternative approach to updating the <code>required</code> flag directly\n would be to simply use a ${isc.DocUtils.linkForRef('type:ValidatorType','requiredIf')} type validator.\n <P>\n Note that this method will not re-validate this item by default or clear any \n existing validation errors. If desired, this may be achieved by calling\n ${isc.DocUtils.linkForRef('method:FormItem.validate')} or ${isc.DocUtils.linkForRef('method:DynamicForm.clearErrors')}.\n",
        name:"setRequired",
        seeAlso:[
        ],
        params:[
            {
                description:"new ${isc.DocUtils.linkForRef('attr:FormItem.required')} value.",
                optional:false,
                name:"required",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:CubeGrid.getFacetsHavingSelection":{
        ref:"method:CubeGrid.getFacetsHavingSelection",
        flags:"",
        description:" Return the list of facets that have any selection in their headers.\n\n  <br><i>methodType</i> getter\n",
        name:"getFacetsHavingSelection",
        seeAlso:[
        ],
        returns:{
            description:"list of facets that have any selection in their headers",
            type:"Array of String"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:DrawRect.setWidth":{
        ref:"method:DrawRect.setWidth",
        flags:"",
        description:" Set the width of the drawRect\n",
        name:"setWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "method:DrawItem.rotateTo":{
        ref:"method:DrawItem.rotateTo",
        flags:"",
        description:" Rotate the shape by the absolute rotation in degrees\n",
        name:"rotateTo",
        seeAlso:[
        ],
        params:[
            {
                description:"number of degrees to rotate",
                optional:false,
                name:"degrees",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:ListGrid.isExpanded":{
        ref:"method:ListGrid.isExpanded",
        flags:"",
        description:" Whether a given ${isc.DocUtils.linkForRef('object:ListGridRecord','record')} is expanded or collapsed.\n\n",
        name:"isExpanded",
        seeAlso:[
        ],
        params:[
            {
                description:"record in question",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"true if the node is expanded",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:FormItem.parseEditorValue":{
        ref:"method:FormItem.parseEditorValue",
        flags:"",
        description:" Allows customization of how a used-entered text value is converted to the FormItem's\n logical stored value (the value available from ${isc.DocUtils.linkForRef('method:FormItem.getValue')}).  \n <p>\n This method only applies to form items which show an editable text entry area, such at\n the ${isc.DocUtils.linkForRef('class:TextItem')} or ${isc.DocUtils.linkForRef('class:TextAreaItem')}.\n <p>\n See also ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')}\n\n",
        name:"parseEditorValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value as entered by the user",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"string"
            },
            {
                description:"pointer to the dynamicForm containing this item",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Data value to store for this item.",
            type:"any"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:DrawGroup.height":{
        ref:"attr:DrawGroup.height",
        flags:"IRW",
        description:"Height of the ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} in pixels relative to the DrawPane.",
        name:"height",
        setter:[
            "setHeight"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:DrawGroup"
    },
    "method:Canvas.sendToBack":{
        ref:"method:Canvas.sendToBack",
        flags:"",
        description:" Puts this widget at the bottom of the stacking order, so it appears behind all other\n widgets in the same parent.\n",
        name:"sendToBack",
        seeAlso:[
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('layer')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "zIndex"
        ]
    },
    "method:TileGrid.transferSelectedData":{
        ref:"method:TileGrid.transferSelectedData",
        flags:"",
        description:" Simulates a drag / drop type transfer of the selected records in some other component to this\n component, without requiring any user interaction.  This method acts on the dropped records \n exactly as if they had been dropped in an actual drag / drop interaction, including any \n special databound behavior invoked by calling\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.getDropValues','getDropValues')} for each dropped record.\n <P>\n To transfer <b>all</b> data in, for example, a ${isc.DocUtils.linkForRef('class:ListGrid')}, call grid.selection.selectAll() first.\n <P>\n Note that drag/drop type transfers of records between components are asynchronous operations:\n SmartClient may need to perform server turnarounds to establish whether dropped records \n already exist in the target component.  Therefore, it is possible to issue a call to \n transferSelectedData() and/or the ${isc.DocUtils.linkForRef('method:ListGrid.drop','drop()')} method of a databound \n component whilst a transfer is still active.  When this happens, SmartClient adds the \n second and subsequent transfer requests to a queue and runs them one after the other.  If \n you want to be notified when a transfer process has actually completed, either provide a \n callback to this method or implement ${isc.DocUtils.linkForRef('method:DataBoundComponent.dropComplete')}.\n <P>\n See the ${isc.DocUtils.linkForRef('group:dragging')} documentation for an overview of list grid drag/drop data\n transfer.\n \n",
        name:"transferSelectedData",
        seeAlso:[
        ],
        params:[
            {
                description:"source component from which the records will be transferred",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"DataBoundComponent"
            },
            {
                description:"target index (drop position) of the rows within this grid.",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"optional callback to be fired when the transfer process has                        completed.  The callback will be passed a single parameter \"records\",\n                       the list of records actually transferred to this component.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListMove')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DateChooser.showWeekends":{
        ref:"attr:DateChooser.showWeekends",
        flags:"IR",
        description:"Whether weekend days should be shown.  Which days are considered weekends is controlled\n by ${isc.DocUtils.linkForRef('classAttr:Date.weekendDays')}.",
        name:"showWeekends",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "group:docViewerHelp":{
        ref:"group:docViewerHelp",
        title:"SmartClient Reference Overview",
        refs:[
        ],
        description:"Welcome to the SmartClient Reference.  Click on a topic in the tree on the left to show\n documentation in this pane or type some search terms into the search box in the upper left\n and hit Enter.\n <p>\n To bring back this help page, click the blue question mark in the upper right corner.",
        name:"docViewerHelp",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ComboBoxItem.useClientFiltering":{
        ref:"attr:ComboBoxItem.useClientFiltering",
        flags:"IRA",
        description:"For ${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionDataSource','databound')} items, this property will be passed\n to the generated ResultSet data object for the pickList as ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering')}.\n Setting to false will disable filtering on the client and ensure criteria are\n always passed to the DataSource directly.",
        name:"useClientFiltering",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:RelativeDateItem.getFiscalCalendar":{
        ref:"method:RelativeDateItem.getFiscalCalendar",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('object:FiscalCalendar')} object that will be used by this item's DateChooser.\n\n",
        name:"getFiscalCalendar",
        seeAlso:[
        ],
        returns:{
            description:"the fiscal calendar for this chooser, if set, or the global            one otherwise",
            type:"FiscalCalendar"
        },
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "method:DataBoundComponent.editFields":{
        ref:"method:DataBoundComponent.editFields",
        flags:"",
        description:" Shows a ${isc.DocUtils.linkForRef('class:FieldPicker','FieldPicker')} interface allowing end-users to edit\n the fields currently shown by this DataBoundComponent.\n\n",
        name:"editFields",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "method:Dialog.setButtons":{
        ref:"method:Dialog.setButtons",
        flags:"",
        description:" Set the buttons for the toolbar displayed in this dialog.\n Synonym for ${isc.DocUtils.linkForRef('method:Dialog.setToolbarButtons')}\n",
        name:"setButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"buttons for the toolbar",
                optional:false,
                name:"newButtons",
                defaultValue:"null",
                type:"array of Buttons"
            }
        ],
        type:"method",
        definingClass:"class:Dialog"
    },
    "attr:Gradient.endColor":{
        ref:"attr:Gradient.endColor",
        flags:"IR",
        description:"An end color for the gradient. If both ${isc.DocUtils.linkForRef('attr:Gradient.startColor','startColor')} and endColor\n are set then ${isc.DocUtils.linkForRef('attr:Gradient.colorStops','colorStops')} is ignored.",
        name:"endColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Gradient"
    },
    "attr:ListGridField.showDisabledIcon":{
        ref:"attr:ListGridField.showDisabledIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image if the button becomes\n disabled.",
        name:"showDisabledIcon",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "buttonIcon"
        ]
    },
    "type:SendMethod":{
        ref:"type:SendMethod",
        values:[
            {
                description:"GET method (regular URL encoding)",
                value:"\"GET\""
            },
            {
                description:"POST method (form field encoding)",
                value:"\"POST\""
            }
        ],
        description:null,
        name:"SendMethod",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "communication"
        ]
    },
    "attr:ListGridField.formatGroupSummary":{
        ref:"attr:ListGridField.formatGroupSummary",
        flags:"IR",
        description:"Optional stringMethod to format the group level summary values for this field displayed via\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')}.\n Takes a single parameter <code>value</code> and should return the formatted version\n of that value.  If specified this will be applied instead of any formatting logic applied\n via ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue')}, ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue')}, etc.\n <P>\n Note that for fields with a specified summary function of \"count\", if no custom formatting\n is applied, we default to formatting the count value by appending\n <code>field.pluralTitle</code> if defined, otherwise <code>field.title</code> to the\n numeric count value returned by the standard count function. To change this behavior for\n such fields, specify an explicit 'formatGridSummary' and/or 'formatGroupSummary' method",
        name:"formatGroupSummary",
        seeAlso:[
        ],
        valueType:"stringMethod",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:ListGrid.hideFields":{
        ref:"method:ListGrid.hideFields",
        flags:"",
        description:" Force an array of fields to be hidden.\n <P>\n NOTE: If a field.showIf expression exists, it will be destroyed.\n <P>\n When hiding multiple fields, this method should be called rather than\n calling ${isc.DocUtils.linkForRef('method:ListGrid.hideField')} repeatedly for each field to hide.\n\n",
        name:"hideFields",
        seeAlso:[
        ],
        params:[
            {
                description:"fields to hide",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of String | Array of ListGridField"
            },
            {
                description:"if passed, don't relayout non-explicit sized fields                                      to fit the available space",
                optional:true,
                name:"suppressRelayout",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.setAutoFitMaxColumns":{
        ref:"method:ListGrid.setAutoFitMaxColumns",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxColumns')}.\n",
        name:"setAutoFitMaxColumns",
        seeAlso:[
        ],
        params:[
            {
                description:"Maximum number of fields we'll expand to accommodate if ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData','auto fit')} is enabled horizontally.",
                optional:false,
                name:"maxColumns",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "attr:LoginDialog.registrationItem":{
        ref:"attr:LoginDialog.registrationItem",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('class:LinkItem')} to page requesting new user registration in ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.\n <p>To handle user clicks on this link, implement ${isc.DocUtils.linkForRef('method:LoginDialog.register')}.\n <p>To handle a user click as a physical link to another page, set\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue','defaultValue')} via loginDialog.registrationItemProperties:\n <code>\n registrationItemProperties: {\n     defaultValue: \"register.html\"\n },\n </code>",
        name:"registrationItem",
        seeAlso:[
            {
                ref:"attr:LoginDialog.showRegistrationLink",
                description:null
            },
            {
                ref:"attr:LoginDialog.registrationItemTitle",
                description:null
            }
        ],
        valueType:"AutoChild LinkItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:PresetCriteriaItem.shouldSaveValue":{
        ref:"attr:PresetCriteriaItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:PresetCriteriaItem",
        groups:[
            "formValues"
        ]
    },
    "attr:ListGridField.hiliteIconLeftPadding":{
        ref:"attr:ListGridField.hiliteIconLeftPadding",
        flags:"IRW",
        description:"How much padding should there be on the left of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons','hilite icons')}\n for this field?\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconLeftPadding')}",
        name:"hiliteIconLeftPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "hiliting"
        ]
    },
    "class:TableView":{
        methods:[
            "method:TableView.recordNavigationClick",
            "method:TableView.imageClick",
            "method:TableView.formatRecord"
        ],
        ref:"class:TableView",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:TableView.iconField",
            "attr:TableView.showIconField",
            "attr:TableView.titleField",
            "attr:TableView.infoField",
            "attr:TableView.dataField",
            "attr:TableView.descriptionField",
            "attr:TableView.recordNavigationProperty",
            "attr:TableView.tableMode",
            "attr:TableView.recordLayout",
            "attr:TableView.navIcon",
            "attr:TableView.wholeRecordNavIcon",
            "attr:TableView.showNavigation",
            "attr:TableView.navigationMode",
            "attr:TableView.recordTitleStyle",
            "attr:TableView.recordDescriptionStyle",
            "attr:TableView.recordDataStyle",
            "attr:TableView.recordInfoStyle"
        ],
        description:"Shows a listing of records with one or more fields from each record, with\n built-in support for navigation and editing of lists of records.\n <p/>\n The TableView provides built-in controls such as ${isc.DocUtils.linkForRef('attr:TableView.showNavigation','navigation arrows')} and\n shows fields from the provided records in one of several built-in ${isc.DocUtils.linkForRef('type:RecordLayout')}s.\n <p/>\n NOTE: This widget is intended primarily for creating handset/phone-sized interfaces\n and does not have an appearance in any skin other than Mobile.",
        name:"TableView",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DetailViewerField.hiliteIconSize":{
        ref:"attr:DetailViewerField.hiliteIconSize",
        flags:"IRW",
        description:"Default width and height of ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons','hilite icons')} in this field.\n Takes precedence over hiliteIconWidth, hiliteIconHeight and hiliteIconSize specified at\n the component level.\n Can be overridden via ${isc.DocUtils.linkForRef('attr:DetailViewerField.hiliteIconWidth','hiliteIconWidth')} and ${isc.DocUtils.linkForRef('attr:DetailViewerField.hiliteIconHeight','hiliteIconHeight')}",
        name:"hiliteIconSize",
        seeAlso:[
            {
                ref:"attr:DetailViewer.hiliteIconSize",
                description:null
            },
            {
                ref:"attr:DetailViewerField.hiliteIconWidth",
                description:null
            },
            {
                ref:"attr:DetailViewerField.hiliteIconHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "hiliting"
        ]
    },
    "method:DataSource.getTypeOperatorMap":{
        ref:"method:DataSource.getTypeOperatorMap",
        flags:"",
        description:" Get the list of ${isc.DocUtils.linkForRef('object:Operator')}s available for this ${isc.DocUtils.linkForRef('type:FieldType')}, as a ${isc.DocUtils.linkForRef('type:ValueMap')} from\n ${isc.DocUtils.linkForRef('type:OperatorId')} to the ${isc.DocUtils.linkForRef('attr:Operator.title')} specified for the ${isc.DocUtils.linkForRef('object:Operator')}, or\n the corresponding property in ${isc.DocUtils.linkForRef('class:Operators')} if ${isc.DocUtils.linkForRef('attr:Operator.titleProperty')} is set.\n <P>\n This valueMap is suitable for use in a UI for building queries, similar to the\n ${isc.DocUtils.linkForRef('class:FilterBuilder')}, and optionally omits operators marked ${isc.DocUtils.linkForRef('attr:Operator.hidden')}:true.\n <p>\n It is also possible to have this function return only operators of a given \n ${isc.DocUtils.linkForRef('type:OperatorValueType')}, or everything except operators of that type. This is useful, \n for example, if you want to return all the logical operators (like \"and\"), or everything \n except the logical operators.\n\n",
        name:"getTypeOperatorMap",
        seeAlso:[
            {
                ref:"method:DataSource.getFieldOperatorMap",
                description:null
            }
        ],
        params:[
            {
                description:"Type to obtain operator map for. Defaults to \"text\" if not passed.",
                optional:true,
                name:"type",
                defaultValue:null,
                type:"FieldType"
            },
            {
                description:"whether to include Operators marked hidden:true",
                optional:true,
                name:"includeHidden",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"If passed, returns only operators of this ${isc.DocUtils.linkForRef('type:OperatorValueType')}",
                optional:true,
                name:"valueType",
                defaultValue:null,
                type:"OperatorValueType"
            },
            {
                description:"If set, reverses the meaning of the <code>valueType</code>         parameter, so operators of that ${isc.DocUtils.linkForRef('type:OperatorValueType')} are the only ones omitted",
                optional:true,
                name:"omitValueType",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"mapping from ${isc.DocUtils.linkForRef('type:OperatorId')} to title, as described above",
            type:"ValueMap"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "classMethod:AutoTest.isSystemDone":{
        ref:"classMethod:AutoTest.isSystemDone",
        flags:"",
        description:" Returns whether the loaded page is in a consistent state with no pending operations.\n Specifically, returns true of false according as the conditions below are all satisfied:\n <ul>\n     <li> page has finished loading\n     <li> all ListGrids (as defined by isc.isA.ListGrid) satisfy isGridDone()\n     <li> all TileGrids that are drawn satisfy isTileGridDone()\n     <li> all Canvii that are drawn satisfy isCanvasDone()\n     <li> no network operations are outstanding (configurable, \n          see ${isc.DocUtils.linkForRef('classAttr:AutoTest.implicitNetworkWait')})\n     <li> there are no pending Canvas redraws (if includeRedraws parameter is true)\n </ul>\n Note: In a situation where messaging is being used to periodically refresh components,\n or if the application contains a label updated every second to show the current time,\n it's possible that this call might always return false if includeRedraws is true.\n",
        name:"isSystemDone",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to check for pending Canvas redraws",
                optional:false,
                name:"includeRedraws",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"whether loaded page is 'done' as described above",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "class:ProcessSequence":{
        methods:[
        ],
        ref:"class:ProcessSequence",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:ProcessSequence.elements"
        ],
        description:"An Array of ${isc.DocUtils.linkForRef('class:ProcessElement')}s involved in a ${isc.DocUtils.linkForRef('class:Process')}.  A \n <code>ProcessSequence</code> is used to reduce the number of explicit\n ${isc.DocUtils.linkForRef('attr:ProcessElement.ID')}s that need to be assigned, by creating an implicit next element -\n the next in the sequence.\n <P>\n A sequence cannot be executed outside of a Process and has no state.",
        name:"ProcessSequence",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Button.isSelected":{
        ref:"method:Button.isSelected",
        flags:"",
        description:" Find out if this object is selected\n",
        name:"isSelected",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "class:IconButton":{
        methods:[
            "method:IconButton.setIcon",
            "method:IconButton.setLargeIcon",
            "method:IconButton.menuIconClick",
            "method:IconButton.iconClick",
            "method:IconButton.click"
        ],
        ref:"class:IconButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:IconButton.orientation",
            "attr:IconButton.rowSpan",
            "attr:IconButton.baseStyle",
            "attr:IconButton.showMenuIcon",
            "attr:IconButton.menuIconSrc",
            "attr:IconButton.menuIconWidth",
            "attr:IconButton.menuIconHeight",
            "attr:IconButton.iconOrientation",
            "attr:IconButton.iconAlign",
            "attr:IconButton.align",
            "attr:IconButton.valign",
            "attr:IconButton.showTitle",
            "attr:IconButton.showButtonTitle",
            "attr:IconButton.showIcon",
            "attr:IconButton.icon",
            "attr:IconButton.iconSize",
            "attr:IconButton.largeIcon",
            "attr:IconButton.largeIconSize",
            "attr:IconButton.showMenuOnClick",
            "attr:IconButton.showMenuIconOver",
            "attr:IconButton.showMenuIconDisabled"
        ],
        description:"A Button subclass that displays an icon, title and optional menuIcon and is capable of \n horizontal and vertical orientation.",
        name:"IconButton",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:TimeItem.showMinuteItem":{
        ref:"attr:TimeItem.showMinuteItem",
        flags:"IRW",
        description:"Controls whether to display the ${isc.DocUtils.linkForRef('attr:TimeItem.minuteItem')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is false.",
        name:"showMinuteItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:ListGrid.saveLocally":{
        ref:"attr:ListGrid.saveLocally",
        flags:"IRA",
        description:"For grids with a specified ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')}, this property can be set to\n <code>true</code> to prevent the grid from attempting to save / retrieve data from the\n server.  In this case the grid's data should be specified as an array via\n the ${isc.DocUtils.linkForRef('attr:ListGrid.data')} attribute, and the datasource will simply act as a schema to\n describe the set of fields visible in the grid.\n ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','Inline edits')}, or removals via the\n ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} mechanism will update the local data array rather than\n attempting to perform operations against the dataSource.",
        name:"saveLocally",
        seeAlso:[
            {
                ref:"attr:ListGrid.useRemoteValidators",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "attr:Canvas.hoverOpacity":{
        ref:"attr:Canvas.hoverOpacity",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true, should the hover canvas be shown with opacity\n other than 100?",
        name:"hoverOpacity",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customHovers')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "class:FieldPicker":{
        methods:[
            "method:FieldPicker.callback",
            "method:FieldPicker.setAvailableFields"
        ],
        ref:"class:FieldPicker",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:FieldPicker.dataBoundComponent",
            "attr:FieldPicker.dataSource",
            "attr:FieldPicker.sampleRecord",
            "attr:FieldPicker.showHilitesButton",
            "attr:FieldPicker.showFieldOrderButtons",
            "attr:FieldPicker.hilitesText",
            "attr:FieldPicker.availableFieldsTitle",
            "attr:FieldPicker.currentFieldsTitle",
            "attr:FieldPicker.addCustomFieldsButtonTitle",
            "attr:FieldPicker.availableTitleTitle",
            "attr:FieldPicker.currentTitleTitle",
            "attr:FieldPicker.sampleValueTitle",
            "attr:FieldPicker.confirmText",
            "attr:FieldPicker.removeText",
            "attr:FieldPicker.instructions",
            "attr:FieldPicker.saveAndExitButtonTitle",
            "attr:FieldPicker.cancelButtonTitle",
            "attr:FieldPicker.removeItemTitle",
            "attr:FieldPicker.emptyTitleHint",
            "attr:FieldPicker.availableFieldsHeaderControls"
        ],
        description:"FieldPicker provides a configuration dialog that displays, side-by-side, the available and\n currently-displayed fields of a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}. It allows for easy customization \n of the order in which the fields of a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} are displayed, and of which\n are visible.  If so configured, it also allows for convenient launching of the HiliteEditor,\n FormulaBuilder, and SummaryBuilder.  A FieldPicker instance runs in its own window, \n a ${isc.DocUtils.linkForRef('class:FieldPickerWindow')}",
        name:"FieldPicker",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.fetchRelatedData":{
        ref:"method:ListGrid.fetchRelatedData",
        flags:"",
        description:" Based on the relationship between the DataSource this component is bound to and the\n DataSource specified as the \"schema\" argument, call fetchData() to retrieve records in this\n grid that are related to the passed-in record.\n <P>\n Relationships between DataSources are declared via ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')}.\n <P>\n For example, given two related DataSources \"orders\" and \"orderItems\", where we want to fetch\n the \"orderItems\" that belong to a given \"order\".  \"orderItems\" should declare a field that\n is a ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} to the \"orders\" table (for example, it\n might be named \"orderId\" with foreignKey=\"orders.id\").  Then, to load the records related to\n a given \"order\", call fetchRelatedData() on the component bound to \"orderItems\", pass the\n \"orders\" DataSource as the \"schema\" and pass a record from the \"orders\" DataSource as the\n \"record\" argument.\n\n",
        name:"fetchRelatedData",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource record",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"schema of the DataSource record, or                            DataBoundComponent already bound to that schema",
                optional:false,
                name:"schema",
                defaultValue:null,
                type:"Canvas or DataSource or ID"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:FacetChart.pieLabelLineProperties":{
        ref:"attr:FacetChart.pieLabelLineProperties",
        flags:"IRW",
        description:"Properties for pie label line",
        name:"pieLabelLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:Gauge.removeSector":{
        ref:"method:Gauge.removeSector",
        flags:"",
        description:" Removes the sector at sectorIndex.\n <p>\n <b>NOTE:</b> There must always be one sector and it is not possible to remove the sole remaining\n sector. Calling this method to attempt to remove the sole remaining sector is a no-op.\n\n",
        name:"removeSector",
        seeAlso:[
        ],
        params:[
            {
                description:"the index of the sector to remove.",
                optional:false,
                name:"sectorIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:ListGridField.headerTitleStyle":{
        ref:"attr:ListGridField.headerTitleStyle",
        flags:"IRW",
        description:"Custom titleStyle to apply to this field's header button instead of\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerTitleStyle')}.<br>\n Note that this will typically only have an effect if\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonConstructor')} is set to ${isc.DocUtils.linkForRef('class:StretchImgButton')} or a subclass\n thereof.",
        name:"headerTitleStyle",
        seeAlso:[
        ],
        valueType:"CSSClass",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "type:ResizeKnobPoint":{
        ref:"type:ResizeKnobPoint",
        values:[
            {
                description:"Top Left corner",
                value:"\"TL\""
            },
            {
                description:"Top Right corner",
                value:"\"TR\""
            },
            {
                description:"Bottom Left corner",
                value:"\"BL\""
            },
            {
                description:"Bottom Right corner",
                value:"\"BR\""
            }
        ],
        description:"Specifies the position of a resize knob with respect to its draw item.",
        name:"ResizeKnobPoint",
        seeAlso:[
        ],
        type:"type"
    },
    "class:ColorPicker":{
        methods:[
            "method:ColorPicker.setSupportsTransparency",
            "method:ColorPicker.getRed",
            "method:ColorPicker.getGreen",
            "method:ColorPicker.getBlue",
            "method:ColorPicker.getHue",
            "method:ColorPicker.getSaturation",
            "method:ColorPicker.getLuminosity",
            "method:ColorPicker.getHtmlColor",
            "method:ColorPicker.getOpacity",
            "method:ColorPicker.setRed",
            "method:ColorPicker.setGreen",
            "method:ColorPicker.setBlue",
            "method:ColorPicker.setHue",
            "method:ColorPicker.setSaturation",
            "method:ColorPicker.setLuminosity",
            "method:ColorPicker.setHtmlColor",
            "method:ColorPicker.setOpacity",
            "method:ColorPicker.setCurrentPickMode",
            "method:ColorPicker.colorChanged",
            "method:ColorPicker.colorSelected"
        ],
        ref:"class:ColorPicker",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:ColorPicker.getSharedColorPicker"
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:ColorPicker.okButton",
            "attr:ColorPicker.okButtonConstructor",
            "attr:ColorPicker.cancelButton",
            "attr:ColorPicker.cancelButtonConstructor",
            "attr:ColorPicker.modeToggleButton",
            "attr:ColorPicker.modeToggleButtonConstructor",
            "attr:ColorPicker.defaultColor",
            "attr:ColorPicker.colorButtonSize",
            "attr:ColorPicker.colorButtonBaseStyle",
            "attr:ColorPicker.colorArray",
            "attr:ColorPicker.swatchWidth",
            "attr:ColorPicker.swatchHeight",
            "attr:ColorPicker.lumWidth",
            "attr:ColorPicker.supportsTransparency",
            "attr:ColorPicker.opacityText",
            "attr:ColorPicker.swatchImageURL",
            "attr:ColorPicker.crosshairImageURL",
            "attr:ColorPicker.lessButtonTitle",
            "attr:ColorPicker.moreButtonTitle",
            "attr:ColorPicker.basicColorLabel",
            "attr:ColorPicker.selectedColorLabel",
            "attr:ColorPicker.opacitySliderLabel",
            "attr:ColorPicker.defaultOpacity",
            "attr:ColorPicker.redFieldTitle",
            "attr:ColorPicker.redFieldPrompt",
            "attr:ColorPicker.greenFieldTitle",
            "attr:ColorPicker.greenFieldPrompt",
            "attr:ColorPicker.blueFieldTitle",
            "attr:ColorPicker.blueFieldPrompt",
            "attr:ColorPicker.htmlFieldTitle",
            "attr:ColorPicker.htmlFieldPrompt",
            "attr:ColorPicker.hueFieldTitle",
            "attr:ColorPicker.hueFieldPrompt",
            "attr:ColorPicker.satFieldTitle",
            "attr:ColorPicker.satFieldPrompt",
            "attr:ColorPicker.lumFieldTitle",
            "attr:ColorPicker.lumFieldPrompt",
            "attr:ColorPicker.okButtonTitle",
            "attr:ColorPicker.cancelButtonTitle",
            "attr:ColorPicker.autoPosition",
            "attr:ColorPicker.autoCenterOnShow",
            "attr:ColorPicker.defaultPickMode",
            "attr:ColorPicker.allowComplexMode"
        ],
        description:"The ColorPicker widget allows the user to select a color from anywhere in the \n color spectrum. It also supports selecting the alpha (opacity) value of the \n color.  The picker supports a simple mode - which allows for one-click selection\n from a standard palette of colors - and a complex mode which allow the user to\n define any conceivable color. It is possible for the user to switch from simple\n mode to complex by interacting with the widget.  In general, the widget provides\n very similar functionality to the color picker dialogs found in graphics packages\n and other desktop software.",
        name:"ColorPicker",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:TreeGrid.fileImage":{
        ref:"attr:TreeGrid.fileImage",
        deprecated:"as part of SmartClient release 5.5 in favor of ${isc.DocUtils.linkForRef('attr:TreeGrid.nodeIcon')}",
        flags:"IRW",
        description:"The filename of the default icon for all leaf nodes in this treeGrid. Use the\n node.icon property (null by default) to specify a custom image for an individual\n node.",
        name:"fileImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]file.gif\"",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "method:DrawCurve.moveBy":{
        ref:"method:DrawCurve.moveBy",
        flags:"",
        description:" Increment start, end and control points of this curve\n\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"new x coordinate in pixels",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new y coordinate in pixels",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "method:Canvas.setStyleName":{
        ref:"method:Canvas.setStyleName",
        flags:"",
        description:" Sets the CSS class for this widget\n",
        name:"setStyleName",
        seeAlso:[
        ],
        params:[
            {
                description:"new CSS style name",
                optional:false,
                name:"newStyle",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('styles')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:DSRequest.endRow":{
        ref:"attr:DSRequest.endRow",
        flags:"IR",
        description:"End row of requested results, used only with fetch operations.\n <p>\n Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at\n the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "paging"
        ]
    },
    "method:DrawImage.moveTo":{
        ref:"method:DrawImage.moveTo",
        flags:"",
        description:" Move the drawImage to the specified position\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawImage"
    },
    "attr:DSRequest.generateRelatedUpdates":{
        ref:"attr:DSRequest.generateRelatedUpdates",
        flags:"IRW",
        description:"Specifies should related updates have to be generated.\n If not set (or set to <code>null</code>) then related updates will be generated only for\n \"add\" and \"update\" operations. This property has to be explicitly set to <code>true</code>\n to generate related updates for \"remove\" operation.<p/>\n This functionality loads related objects from database thus affecting operation performance.\n For \"add\" and \"update\" operations related objects are loaded anyway and performance impact is minimal.\n Simple \"remove\" operation does not need to load related objects. Depending on database structure\n performance impact can be significant if this property is set to <code>true</code>.\n <P>\n Note this feature works only with Hibernate/JPA data sources, see \n ${isc.DocUtils.linkForRef('group:jpaHibernateRelations','JPA & Hibernate Relations')} for instructions how to \n set up relations. Table below uses \"country -&gt; cities\" sample data model.\n <P>\n <table border=1 class=\"normal\">\n   <tr>\n     <td width=\"20%\"><b>Relation and Operation type</b></td>\n     <td width=\"40%\"><b>Loading complete related objects</b></td>\n     <td width=\"40%\"><b>Loading related IDs</b></td>\n   </tr>\n   <tr>\n     <td><i>Many-to-one (cities -&gt; country): ADD/UPDATE</i></td>\n     <td>If operation affected country, for example new city added with existing \n countryId, then relatedUpdate is generated. Otherwise if city is added or updated without \n countryId set, relatedUpdate is not generated.<br>\n Note that if provided countryId does not exist, it is created.</td>\n     <td>Same as with complete related objects, except if provided countryId does not exist, \n then it is <i>not</i> created, but reset to NULL.</td>\n   </tr>\n   <tr>\n     <td><i>Many-to-one (cities -&gt; country): REMOVE</i></td>\n     <td colSpan=2>Removes record, depending on setting generates or not relatedUpdate for parent record.\n For example if city record is removed and countryId is sent to the server in remove request, then \n country record will be generated in relatedUpdates.</td>\n   </tr>\n   <tr>\n     <td><i>One-to-many (country -&gt; cities): ADD/UPDATE</i></td>\n     <td>If add or update operation provides value sets for cities as well as for country, then \n cities are created/updated if necessary and relatedUpdates are generated.<br>\n Note that all fields in cities value sets can be sent to server.\n     <td>Same as with complete related objects, except you can only sent primary key values for cities.</td>\n   <tr>\n     <td><i>One-to-many (country -&gt; cities): REMOVE</i></td>\n     <td colSpan=2>Removes country, depending on setting returns or not relatedUpdates for the cities of removed country, \n which can be either REMOVE operations of all cities if cascade enabled, or UPDATE operations setting countryId=null to \n all cities if cascade is disabled</td>\n   </tr>\n </table>\n <P>\n Note that Many-to-Many works the same way as One-to-Many.",
        name:"generateRelatedUpdates",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:ValuesManager.setValues":{
        ref:"method:ValuesManager.setValues",
        flags:"",
        description:" Replaces the current values of the ValuesManager and all member components with the \n values passed in.\n <P>\n Values should be provided as an Object containing the new values as properties, where\n each propertyName is the name of a ${isc.DocUtils.linkForRef('group:Items','form item')} in one of the member forms,\n and each property value is the value to apply to that form item via\n ${isc.DocUtils.linkForRef('method:FormItem.setValue')}.\n <P>\n Values with no corresponding form item may also be passed, will be tracked by the\n valuesManager and returned by subsequent calls to ${isc.DocUtils.linkForRef('method:ValuesManager.getValues')}.\n <P>\n Any ${isc.DocUtils.linkForRef('class:FormItem')} for which a value is not provided will revert to its\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue','defaultValue')}.  To cause all FormItems to revert to default\n values, pass null.\n <P>\n This method also calls ${isc.DocUtils.linkForRef('method:ValuesManager.rememberValues')} so that a subsequent later call to\n ${isc.DocUtils.linkForRef('method:ValuesManager.resetValues')} will revert to the passed values.\n \n",
        name:"setValues",
        seeAlso:[
        ],
        params:[
            {
                description:"new set of values for this values manager.",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:DataSource.useParentFieldOrder":{
        ref:"attr:DataSource.useParentFieldOrder",
        flags:"IR",
        description:"For a DataSource that inherits ${isc.DocUtils.linkForRef('attr:DataSource.fields')} from another DataSource \n (via ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')}), indicates that the parent's field order should be used\n instead of the order of the fields as declared in this DataSource.  New fields, if any,\n are placed at the end.",
        name:"useParentFieldOrder",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('schemaChaining')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "classAttr:Operators.equalsTitle":{
        ref:"classAttr:Operators.equalsTitle",
        flags:"IR",
        description:"Title for the \"equals\" operator",
        name:"equalsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"equals\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MenuItem.checked":{
        ref:"attr:MenuItem.checked",
        flags:"IR",
        description:"If true, this item displays a standard checkmark image to the left of its title.  You\n can set the checkmark image URL by setting ${isc.DocUtils.linkForRef('attr:Menu.checkmarkImage')}.\n <p>\n If you need to set this state dynamically, use ${isc.DocUtils.linkForRef('method:MenuItem.checkIf')} instead.",
        name:"checked",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "menuIcons"
        ]
    },
    "method:ImgSectionHeader.titleHoverHTML":{
        ref:"method:ImgSectionHeader.titleHoverHTML",
        flags:"",
        description:" Returns the HTML that is displayed by the default ${isc.DocUtils.linkForRef('method:ImgSectionHeader.titleHover','titleHover')}\n handler. Return null or an empty string to cancel the hover.\n <smartgwt><p>Use <code>setTitleHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n",
        name:"titleHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ImgSectionHeader"
    },
    "method:Process.start":{
        ref:"method:Process.start",
        flags:"",
        description:" Starts this task by executing the ${isc.DocUtils.linkForRef('attr:Process.startElement')}.\n",
        name:"start",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Process"
    },
    "classAttr:RPCResponse.STATUS_UNKNOWN_HOST_ERROR":{
        ref:"classAttr:RPCResponse.STATUS_UNKNOWN_HOST_ERROR",
        flags:"R",
        description:"This response code only occurs when using the HTTP proxy.  It is issued by the proxy \n servlet when the target host is unknown (ie, cannot be resolved through DNS).  This\n response probably indicates that you are attempting to contact a nonexistent server \n (though it might mean that you have DNS problems).",
        name:"STATUS_UNKNOWN_HOST_ERROR",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"-91",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:StretchImgButton.iconSpacing":{
        ref:"attr:StretchImgButton.iconSpacing",
        flags:"IR",
        description:"Pixels between icon and title text.",
        name:"iconSpacing",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "group:minimize":{
        ref:"group:minimize",
        refs:[
            "attr:Window.minimizeHeight"
        ],
        name:"minimize",
        seeAlso:[
        ],
        type:"group"
    },
    "method:HTMLFlow.setContents":{
        ref:"method:HTMLFlow.setContents",
        flags:"",
        description:" Changes the contents of a widget to newContents, an HTML string.\n\n",
        name:"setContents",
        seeAlso:[
            {
                ref:"attr:HTMLFlow.evalScriptBlocks",
                description:null
            }
        ],
        params:[
            {
                description:"an HTML string to be set as the contents of this widget",
                optional:true,
                name:"newContents",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('setContents')}"
        ],
        definingClass:"class:HTMLFlow"
    },
    "attr:Criterion.value":{
        ref:"attr:Criterion.value",
        flags:"IR",
        description:"Value to be used in the application of this criterion.\n <P>\n Value may be required or not required, or may be an Array, according to the\n ${isc.DocUtils.linkForRef('type:OperatorValueType')} of the operator.",
        name:"value",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Criterion",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:ListGrid.styleName":{
        ref:"attr:ListGrid.styleName",
        flags:"IRW",
        description:"Default CSS class for the ListGrid as a whole.",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"listGrid\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:TimeItem.minuteItem":{
        ref:"attr:TimeItem.minuteItem",
        flags:"R",
        description:"Select item to hold the minutes portion of the time or \n ${isc.DocUtils.linkForRef('method:TimeItem.getDuration','duration')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} \n is false.",
        name:"minuteItem",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:DataSourceField.ignoreTextMatchStyle":{
        ref:"attr:DataSourceField.ignoreTextMatchStyle",
        flags:"IRW",
        description:"<b>NOTE: </b>Only applicable to ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly')} DataSources and the\n built-in ${isc.DocUtils.linkForRef('group:sqlDataSource','SQL')}, ${isc.DocUtils.linkForRef('group:jpaIntegration','JPA')} and \n ${isc.DocUtils.linkForRef('group:hibernateIntegration','Hibernate')} DataSources available in Pro, Power and \n Enterprise versions of SmartClient.\n <p>\n Use this flag to inhibit the normal use of ${isc.DocUtils.linkForRef('type:TextMatchStyle')} for this field.  A \n field with this flag set will always be tested for exact equality in generated queries, \n even for filter-style queries where normal behavior would be to use a substring match or \n similar.\n <p>\n Whether or not the exect match is case-sensitive is determined by the DataSource's \n ${isc.DocUtils.linkForRef('attr:DataSource.ignoreTextMatchStyleCaseSensitive','ignoreTextMatchStyleCaseSensitive')}\n setting.",
        name:"ignoreTextMatchStyle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:ListGridField.filterOnKeypress":{
        ref:"attr:ListGridField.filterOnKeypress",
        flags:"IRWA",
        description:"If we're showing the filterEditor (listGrid.showFilterEditor is true), this property\n determines whether this list should be filtered every time the user edits the value of\n the filter editor for this field.",
        name:"filterOnKeypress",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "filterEditor"
        ]
    },
    "attr:ListGridField.canHide":{
        ref:"attr:ListGridField.canHide",
        flags:"IR",
        description:"If set to false, this field will be omitted from the column picker that appears in the\n header context menu when ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields')} is enabled.  This means that the\n end user will not be able to hide it if it's currently shown, or show it if it's\n currently hidden.\n <P>\n If this property is set to <code>false</code>, and the\n ${isc.DocUtils.linkForRef('attr:ListGrid.useAdvancedFieldPicker','advanced field picker')} is shown, if the field\n is ${isc.DocUtils.linkForRef('attr:ListGridField.hidden')}, the field will not show in the list of available fields. If the\n field is visible, it will be displayed in the list of currently visible fields, but\n the advanced field picker user interface will disallow hiding it.",
        name:"canHide",
        seeAlso:[
            {
                ref:"method:ListGrid.getHeaderContextMenuItems",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:DateChooser.prevYearIconWidth":{
        ref:"attr:DateChooser.prevYearIconWidth",
        flags:"IR",
        description:"Width of the icon for the previous year button",
        name:"prevYearIconWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"14",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:ListGrid.getAllFields":{
        ref:"method:ListGrid.getAllFields",
        flags:"",
        description:" Get the complete array of fields for this ListGrid, including fields that are not currently\n visible or were specified implicitly via ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')}.\n <P>\n This list of fields is only valid once the ListGrid has been ${isc.DocUtils.linkForRef('method:Canvas.draw','drawn')} or once\n ${isc.DocUtils.linkForRef('method:ListGrid.setFields')} has been called explicitly.  If called earlier, only the list of directly\n specified fields will be returned (the Array passed to create()).\n <P>\n This Array should be treated as <b>read-only</b>.  To modify the set of visible fields, use\n ${isc.DocUtils.linkForRef('method:ListGrid.showField')}, ${isc.DocUtils.linkForRef('method:ListGrid.hideField')} and related APIs.  To update properties of individual\n fields, use ${isc.DocUtils.linkForRef('method:ListGrid.setFieldProperties')} or more specific APIs such as\n ${isc.DocUtils.linkForRef('method:ListGrid.setFieldTitle')}.\n\n",
        name:"getAllFields",
        seeAlso:[
        ],
        returns:{
            description:"Array of all fields in the ListGrid",
            type:"Array of ListGridField"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "class:GridRenderer":{
        methods:[
            "method:GridRenderer.getCellFromDomElement",
            "method:GridRenderer.setFastCellUpdates",
            "method:GridRenderer.cellValueIsClipped",
            "method:GridRenderer.getTotalRows",
            "method:GridRenderer.setColumnWidth",
            "method:GridRenderer.setColumnWidths",
            "method:GridRenderer.getCellStartRow",
            "method:GridRenderer.getCellRowSpan",
            "method:GridRenderer.getCellStyle",
            "method:GridRenderer.cellIsEnabled",
            "method:GridRenderer.refreshCellStyle",
            "method:GridRenderer.refreshCell",
            "method:GridRenderer.refreshRow",
            "method:GridRenderer.getCellPageRect",
            "method:GridRenderer.getColumnLeft",
            "method:GridRenderer.getColumnPageLeft",
            "method:GridRenderer.getColumnWidth",
            "method:GridRenderer.getRowTop",
            "method:GridRenderer.getRowPageTop",
            "method:GridRenderer.getEventRow",
            "method:GridRenderer.getEventColumn",
            "method:GridRenderer.getNearestRowToEvent",
            "method:GridRenderer.getNearestColToEvent",
            "method:GridRenderer.getVisibleRows",
            "method:GridRenderer.getDrawnRows",
            "method:GridRenderer.getCellRecord",
            "method:GridRenderer.getCellValue",
            "method:GridRenderer.findRowNum",
            "method:GridRenderer.findColNum",
            "method:GridRenderer.getBaseStyle",
            "method:GridRenderer.getCellCSSText",
            "method:GridRenderer.getRowHeight",
            "method:GridRenderer.getRowSpan",
            "method:GridRenderer.cellOut",
            "method:GridRenderer.cellOver",
            "method:GridRenderer.rowOut",
            "method:GridRenderer.rowOver",
            "method:GridRenderer.cellContextClick",
            "method:GridRenderer.rowContextClick",
            "method:GridRenderer.cellMouseDown",
            "method:GridRenderer.rowMouseDown",
            "method:GridRenderer.cellMouseUp",
            "method:GridRenderer.rowMouseUp",
            "method:GridRenderer.cellClick",
            "method:GridRenderer.cellDoubleClick",
            "method:GridRenderer.rowClick",
            "method:GridRenderer.rowDoubleClick",
            "method:GridRenderer.cellHover",
            "method:GridRenderer.cellValueHover",
            "method:GridRenderer.rowHover",
            "method:GridRenderer.cellHoverHTML",
            "method:GridRenderer.cellValueHoverHTML",
            "method:GridRenderer.getCellHoverComponent",
            "method:GridRenderer.selectionChanged",
            "method:GridRenderer.cellSelectionChanged"
        ],
        ref:"class:GridRenderer",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:GridRenderer.totalRows",
            "attr:GridRenderer.showAllRows",
            "attr:GridRenderer.virtualScrolling",
            "attr:GridRenderer.showAllColumns",
            "attr:GridRenderer.drawAllMaxCells",
            "attr:GridRenderer.instantScrollTrackRedraw",
            "attr:GridRenderer.scrollRedrawDelay",
            "attr:GridRenderer.scrollWheelRedrawDelay",
            "attr:GridRenderer.drawAheadRatio",
            "attr:GridRenderer.quickDrawAheadRatio",
            "attr:GridRenderer.cellHeight",
            "attr:GridRenderer.fixedRowHeights",
            "attr:GridRenderer.fixedColumnWidths",
            "attr:GridRenderer.autoFit",
            "attr:GridRenderer.wrapCells",
            "attr:GridRenderer.cellPadding",
            "attr:GridRenderer.canSelectOnRightMouse",
            "attr:GridRenderer.canHover",
            "attr:GridRenderer.showHover",
            "attr:GridRenderer.showClippedValuesOnHover",
            "attr:GridRenderer.baseStyle",
            "attr:GridRenderer.alternateRowStyles",
            "attr:GridRenderer.alternateRowFrequency",
            "attr:GridRenderer.alternateColumnStyles",
            "attr:GridRenderer.alternateColumnFrequency",
            "attr:GridRenderer.emptyCellValue",
            "attr:GridRenderer.showEmptyMessage",
            "attr:GridRenderer.emptyMessage",
            "attr:GridRenderer.emptyMessageTableStyle",
            "attr:GridRenderer.emptyMessageStyle",
            "attr:GridRenderer.showOfflineMessage",
            "attr:GridRenderer.offlineMessageStyle",
            "attr:GridRenderer.offlineMessage",
            "attr:GridRenderer.fastCellUpdates",
            "attr:GridRenderer.snapToCells",
            "attr:GridRenderer.snapInsideBorder",
            "attr:GridRenderer.recordCustomStyleProperty",
            "attr:GridRenderer.showSelectedStyle"
        ],
        description:"A flexible, high-speed table that offers consistent cross-platform sizing, clipping, and events.",
        name:"GridRenderer",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.autoFitFields":{
        ref:"method:ListGrid.autoFitFields",
        flags:"",
        description:" Perform a one-time horizontal auto-fit of the fields passed. Fields will be sized\n to match their contents or title (as specified in ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitWidthApproach')})\n Does not establish permanent auto-fitting - use ${isc.DocUtils.linkForRef('method:ListGrid.setAutoFitWidth')} to do so.\n",
        name:"autoFitFields",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of fields to auto fit. If this parameter  is not passed, autoFitting will occur on all visible fields.",
                optional:true,
                name:"fields",
                defaultValue:null,
                type:"Array of ListGridField"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "method:CubeGrid.getCellRecord":{
        ref:"method:CubeGrid.getCellRecord",
        flags:"A",
        description:" Return the pointer to a particular record by record and column number.<br>\n",
        name:"getCellRecord",
        seeAlso:[
            {
                ref:"method:ListGrid.getRecord",
                description:null
            },
            {
                ref:"method:ListGrid.getEditedRecord",
                description:null
            }
        ],
        params:[
            {
                description:"row index of record to return.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column index of record to return.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Record object for the row.",
            type:"ListGridRecord"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:PrintWindow.title":{
        ref:"attr:PrintWindow.title",
        flags:"IRW",
        description:"Title for the print window",
        name:"title",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Print Preview\"",
        type:"attr",
        definingClass:"class:PrintWindow"
    },
    "method:ListGridField.getRecordSummary":{
        ref:"method:ListGridField.getRecordSummary",
        flags:"A",
        description:" Only applies to ${isc.DocUtils.linkForRef('type:ListGridFieldType','summary-type')} fields. If specified, this\n method will be called to generate the record summary value to be displayed for each row\n in this field.  When this method is called, current values for other \n ${isc.DocUtils.linkForRef('type:ListGridFieldType','summary-type')} fields have not yet been stored on the record, so\n you must recalculate such fields yourself (and possibly cache them in a common location)\n if needed.\n <P>\n Note that if specified, this is called instead of making use of the\n ${isc.DocUtils.linkForRef('attr:ListGridField.recordSummaryFunction')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} or ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true, this\n field's value in the summary row[s] will still be calculated by calling this method.\n In this case, the record object passed in will contain summary values for each field.\n If custom handling is required for this case, it may be detected by checking the\n record object's ${isc.DocUtils.linkForRef('attr:ListGridRecord.isGroupSummary')} and ${isc.DocUtils.linkForRef('attr:ListGridRecord.isGridSummary')}\n attributes.\n",
        name:"getRecordSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"record for which a summary is being generated",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"pointer to the summary type field",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"summary value to display",
            type:"any"
        },
        type:"method",
        definingClass:"object:ListGridField"
    },
    "method:DynamicForm.valuesChanged":{
        ref:"method:DynamicForm.valuesChanged",
        flags:"",
        description:" Handler fired when the entire set of values is replaced, as by a call to \n ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}, ${isc.DocUtils.linkForRef('method:DynamicForm.resetValues')} or ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')}.\n <P>\n Note that it is invalid to call such methods from this handler because doing so would \n result in an infinite loop.\n\n",
        name:"valuesChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:ListGrid.rollUnderCanvas":{
        ref:"attr:ListGrid.rollUnderCanvas",
        flags:"RA",
        getter:[
            "getRollUnderCanvas"
        ],
        description:"AutoChild created and embedded in the grid if ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOver','showRollOver')}\n is <code>true</code>, and either ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOverCanvas','showRollOverCanvas')}\n is <code>true</code> and ${isc.DocUtils.linkForRef('attr:ListGrid.showRollUnderCanvas','showRollUnderCanvas')} is\n unset, or <code>showRollUnderCanvas</code> is explicitly set to <code>true</code>.\n This component will be created and displayed behind the current rollOver row or cell in the\n page's z-order, meaning that it will only be visible if the cell styling is transparent.\n <p>\n The <code>rollUnderCanvas</code> has the following read-only attributes set:<br>\n - <code>this.grid</code> - a pointer to the grid<br>\n - <code>this.record</code> - a pointer to the current roll over record object in the grid",
        name:"rollUnderCanvas",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridAnimatedSelection')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "attr:TileLayout.layoutPolicy":{
        ref:"attr:TileLayout.layoutPolicy",
        flags:"IR",
        description:"Policy for laying out tiles.  See ${isc.DocUtils.linkForRef('type:TileLayoutPolicy')} for options.",
        name:"layoutPolicy",
        seeAlso:[
        ],
        valueType:"TileLayoutPolicy",
        defaultValue:"\"fit\"",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutPolicy"
        ]
    },
    "method:ColorItem.pickerColorSelected":{
        ref:"method:ColorItem.pickerColorSelected",
        flags:"",
        description:"  Store the color value selected by the user from the color picker.  You will need to \n  override this method if you wish to capture opacity information from the ${isc.DocUtils.linkForRef('class:ColorPicker')}\n",
        name:"pickerColorSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"the selected color as a string",
                optional:false,
                name:"color",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the selected opacity, from 0 (transparent) to 100 (opaque).                            Only applicable if ${isc.DocUtils.linkForRef('attr:ColorItem.supportsTransparency')} is true.",
                optional:false,
                name:"opacity",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ColorItem"
    },
    "classMethod:isc.echoAll":{
        ref:"classMethod:isc.echoAll",
        flags:"",
        description:" Same as ${isc.DocUtils.linkForRef('classMethod:Log.echoAll')}.\n\n",
        name:"echoAll",
        seeAlso:[
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:RichTextEditor.formatControls":{
        ref:"attr:RichTextEditor.formatControls",
        flags:"IRA",
        description:"Default text formatting control group. Consists of an array of ${isc.DocUtils.linkForRef('type:ControlName')}s\n and/or ${isc.DocUtils.linkForRef('class:Canvas')} instances. To display this group of controls for some RichTextEditor,\n include <code>\"formatControls\"</code> in the ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')} array.",
        name:"formatControls",
        seeAlso:[
        ],
        valueType:"Array of ControlName",
        defaultValue:"[\"alignLeft\", \"alignRight\", \"alignCenter\", \"justify\"]",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "group:contents":{
        ref:"group:contents",
        refs:[
            "attr:HTMLFlow.contents",
            "attr:HTMLFlow.dynamicContents",
            "attr:Canvas.contents",
            "attr:Canvas.dynamicContents",
            "attr:Label.contents",
            "attr:Label.dynamicContents"
        ],
        name:"contents",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.autoFitClipFields":{
        ref:"attr:ListGrid.autoFitClipFields",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} is enabled and the calculated field sizes\n are wide enough that horizontal scrolling would be introduced, this attribute may be\n set to an array of fieldNames, causing those fields to be clipped rather than\n forcing horizontal scrollbars to appear.\n <P>\n Note: If any ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen columns')} are included in this list they\n will not be clipped.",
        name:"autoFitClipFields",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "method:Label.setIcon":{
        ref:"method:Label.setIcon",
        flags:"",
        description:" Change the icon being shown next to the title text.\n",
        name:"setIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"URL of new icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:TreeNode.icon":{
        ref:"attr:TreeNode.icon",
        flags:"IRW",
        description:"This Property allows the developer to customize the icon displayed next to a node.\n Set <code>node.icon</code> to the URL of the desired icon to display and\n it will be shown instead of the standard ${isc.DocUtils.linkForRef('attr:TreeGrid.nodeIcon')} for this node.<br>\n Note that if ${isc.DocUtils.linkForRef('attr:TreeNode.showOpenIcon')} and/or ${isc.DocUtils.linkForRef('attr:TreeNode.showDropIcon')} \n is true for this node, customized icons for folder nodes will be appended with the \n ${isc.DocUtils.linkForRef('attr:TreeGrid.openIconSuffix')} or ${isc.DocUtils.linkForRef('attr:TreeGrid.dropIconSuffix')} suffixes on state change \n as with the standard ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} for this treeGrid.  Also note that for\n custom folder icons, the ${isc.DocUtils.linkForRef('attr:TreeGrid.closedIconSuffix')} will never be appended.\n <P>You can change the name of this property by setting \n ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconProperty')}.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode",
        groups:[
            "treeIcons"
        ]
    },
    "attr:Canvas.canSelectText":{
        ref:"attr:Canvas.canSelectText",
        flags:"IRWA",
        description:"Whether native drag selection of contained text is allowed within this Canvas.\n <P>\n Note that setting this property to <code>false</code> will not avoid text selection\n which is initiated outside this Canvas from continuing into this Canvas, even if text\n selection began in another Canvas.",
        name:"canSelectText",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "events"
        ]
    },
    "method:SpinnerItem.getNextValue":{
        ref:"method:SpinnerItem.getNextValue",
        flags:"A",
        description:" When ${isc.DocUtils.linkForRef('attr:SpinnerItem.min','min')} and ${isc.DocUtils.linkForRef('attr:SpinnerItem.max','max')} are both null or unspecified,\n this method is called to get the next higher value from the currentValue. The default\n implementation returns (currentValue&nbsp;+&nbsp;step).\n <p>\n To indicate that the given currentValue is the maximum value, return currentValue again.\n <p>\n Implementations should expect to be passed any value for currentValue. Also, if\n ${isc.DocUtils.linkForRef('attr:SpinnerItem.step')} is non-negative, getNextValue() must induce a\n <a href='http://en.wikipedia.org/wiki/Monotonic_function' target='_blank'>monotonically increasing (non-decreasing) function</a>;\n otherwise, getNextValue() must induce a monotonically decreasing function.\n",
        name:"getNextValue",
        seeAlso:[
            {
                ref:"method:SpinnerItem.getPreviousValue",
                description:null
            }
        ],
        params:[
            {
                description:"the current value of this SpinnerItem",
                optional:false,
                name:"currentValue",
                defaultValue:null,
                type:"number"
            },
            {
                description:"a suggested step value based on ${isc.DocUtils.linkForRef('attr:SpinnerItem.step','this.step')} and how long the user has been continuously increasing the value.",
                optional:false,
                name:"step",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the next higher value",
            type:"number"
        },
        type:"method",
        definingClass:"class:SpinnerItem"
    },
    "method:GridRenderer.cellHover":{
        ref:"method:GridRenderer.cellHover",
        flags:"A",
        description:" Called when the mouse hovers over a cell if this.canHover is true. \n  Returning false will suppress the hover text from being shown if this.showHover is true.\n\n",
        name:"cellHover",
        seeAlso:[
            {
                ref:"attr:GridRenderer.canHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:DrawItem.showKnobs":{
        ref:"method:DrawItem.showKnobs",
        flags:"",
        description:" Shows a set of control knobs for this drawItem. Updates ${isc.DocUtils.linkForRef('attr:DrawItem.knobs')} to include the\n specified knobType, and if necessary draws out the appropriate control knobs.\n",
        name:"showKnobs",
        seeAlso:[
        ],
        params:[
            {
                description:"knobs to show",
                optional:false,
                name:"knobType",
                defaultValue:null,
                type:"KnobType or Array of KnobType"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:CalendarEvent.name":{
        ref:"attr:CalendarEvent.name",
        flags:"IRW",
        description:"String which represents the name of a ${isc.DocUtils.linkForRef('object:CalendarEvent')}\n The name of this field within the CalendarEvent can be changed via\n ${isc.DocUtils.linkForRef('attr:Calendar.nameField')}",
        name:"name",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "attr:Canvas.canDragResize":{
        ref:"attr:Canvas.canDragResize",
        flags:"IRWA",
        description:"Indicates whether this widget can be resized by dragging on the edges and/or corners of\n      the widget with the mouse.",
        name:"canDragResize",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragResize')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DetailViewerField.imageURLPrefix":{
        ref:"attr:DetailViewerField.imageURLPrefix",
        flags:"IRWA",
        description:"If this field has type set to <code>\"image\"</code>\n and the URL for the image displayed is not absolute, the path of the URL will be relative\n to this string<br>",
        name:"imageURLPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:DetailViewerField.exportRawValues":{
        ref:"attr:DetailViewerField.exportRawValues",
        flags:"IR",
        description:"Dictates whether the data in this field should be exported raw by\n ${isc.DocUtils.linkForRef('method:DetailViewer.exportClientData','exportClientData()')}.  If set to true for a\n field, the values in the field-formatters will not be executed for data in this field.",
        name:"exportRawValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:FormItem.titleClassName":{
        ref:"attr:FormItem.titleClassName",
        deprecated:"As of SmartClient Version 5.5, use ${isc.DocUtils.linkForRef('attr:FormItem.titleStyle')} instead",
        flags:"IRW",
        description:"CSS class for the form item's title.",
        name:"titleClassName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"formTitle\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "method:Canvas.intersectsRect":{
        ref:"method:Canvas.intersectsRect",
        flags:"",
        description:"\t\t\tReturns true if the rectangle of this widget intersects with the rectangle coordinates\n          passed in, and false otherwise.\n",
        name:"intersectsRect",
        seeAlso:[
        ],
        params:[
            {
                description:"left coord of rect (or rect array)",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"number, array"
            },
            {
                description:"top coord of rect",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"number"
            },
            {
                description:"width of rect",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"number"
            },
            {
                description:"height of rect",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true if this canvas intersects the rectangle passed in; false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:ImgTab.showRollOver":{
        ref:"attr:ImgTab.showRollOver",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes over this tab",
        name:"showRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "attr:Window.minimizeHeight":{
        ref:"attr:Window.minimizeHeight",
        flags:"IRWA",
        description:"Height for the window when minimized.\n If unset the window will shrink to the height of the header, if present, otherwise\n ${isc.DocUtils.linkForRef('attr:Window.defaultMinimizeHeight','this.defaultMinimizeHeight')}",
        name:"minimizeHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "minimize"
        ]
    },
    "attr:Window.showStatusBar":{
        ref:"attr:Window.showStatusBar",
        flags:"IRW",
        description:"If true, show a statusBar for this Window, including resizer.",
        name:"showStatusBar",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "footer"
        ]
    },
    "method:SplitPane.setDetailNavigationControl":{
        ref:"method:SplitPane.setDetailNavigationControl",
        flags:"",
        description:" Navigation control that appears only when the navigation pane is not showing (showing detail\n pane on handset, or portrait mode on tablet).\n",
        name:"setDetailNavigationControl",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"control",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "attr:Tree.titleProperty":{
        ref:"attr:Tree.titleProperty",
        flags:"IRW",
        description:"Name of the property on a ${isc.DocUtils.linkForRef('object:TreeNode')} that holds the title of the node as it should be\n shown to the user.  Default value is \"title\".  See ${isc.DocUtils.linkForRef('attr:TreeNode.title')} for usage.",
        name:"titleProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"title\"",
        type:"attr",
        definingClass:"class:Tree"
    },
    "attr:DataSource.sparseUpdates":{
        ref:"attr:DataSource.sparseUpdates",
        flags:"IR",
        description:"When true, indicates that any updates for this DataSource include only those fields \n that have actually changed (and primaryKey fields); when false (the default), all \n field values are included in updates, whether they have changed or not",
        name:"sparseUpdates",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "classAttr:FieldPickerField.alignTitle":{
        ref:"classAttr:FieldPickerField.alignTitle",
        flags:"IR",
        description:"The title displayed for the align property",
        name:"alignTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Header Text Alignment\"",
        type:"classAttr",
        definingClass:"class:FieldPickerField",
        groups:[
            "i18nMessages"
        ]
    },
    "group:tabBarScrolling":{
        ref:"group:tabBarScrolling",
        refs:[
            "attr:TabSet.symmetricScroller",
            "attr:TabSet.scrollerSrc",
            "attr:TabSet.scrollerHSrc",
            "attr:TabSet.scrollerVSrc",
            "attr:TabSet.symmetricPickerButton",
            "attr:TabSet.pickerButtonSrc",
            "attr:TabSet.pickerButtonHSrc",
            "attr:TabSet.pickerButtonVSrc"
        ],
        name:"tabBarScrolling",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Process.setState":{
        ref:"attr:Process.setState",
        flags:"IRW",
        description:"Set new process state.",
        name:"setState",
        setter:[
            "seState"
        ],
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Process"
    },
    "attr:Window.defaultMinimizeHeight":{
        ref:"attr:Window.defaultMinimizeHeight",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Window.minimizeHeight')} is unset, by the window will shrink to the height of the\n header when minimized.\n <BR>\n If there is no header, the <code>defaultMinimizeHeight</code> will be used instead.",
        name:"defaultMinimizeHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "method:Portlet.setRowHeight":{
        ref:"method:Portlet.setRowHeight",
        flags:"",
        description:" Sets the height of the Portlet's row (and, thus, indirectly sets the Portlet's own height).\n Use this instead of using ${isc.DocUtils.linkForRef('method:Portlet.setHeight')} directly.\n",
        name:"setRowHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Portlet",
        groups:[
            "sizing"
        ]
    },
    "method:ListGrid.getDrawArea":{
        ref:"method:ListGrid.getDrawArea",
        flags:"A",
        description:" Returns the extents of the rows and columns currently visible in this grid's viewport.\n <P>\n Note: if there are any ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen fields')}, they are not included\n in the draw area range returned by this method. Frozen fields are assumed to never be\n scrolled out of view.  The column coordinates returned by this method will only include\n unfrozen columns.\n\n",
        name:"getDrawArea",
        seeAlso:[
        ],
        returns:{
            description:"The row/col co-ordinates currently visible in the viewport as    [startRow, endRow, startCol, endCol].",
            type:"Array of Integer"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:PickList.filterClientPickListData":{
        ref:"method:PickList.filterClientPickListData",
        flags:"",
        description:" Returns the data to display in the pick list.\n <P>\n The default implementation applies the criteria returned by \n ${isc.DocUtils.linkForRef('method:PickList.getPickListFilterCriteria')} to the data returned by\n ${isc.DocUtils.linkForRef('method:PickList.getClientPickListData')}.  A record passes the filter if it has a\n matching value for all fields in the criteria object.  Matching is performed according\n to ${isc.DocUtils.linkForRef('type:TextMatchStyle')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:PickList.showAllOptions')} is set, all values are shown, with matching values\n shown below a ${isc.DocUtils.linkForRef('attr:PickList.separatorRows','separator')}.\n\n",
        name:"filterClientPickListData",
        seeAlso:[
        ],
        returns:{
            description:"array of record objects to display in the pickList",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"interface:PickList"
    },
    "attr:FieldPicker.currentFieldsTitle":{
        ref:"attr:FieldPicker.currentFieldsTitle",
        flags:"IR",
        description:null,
        name:"currentFieldsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Visible Fields\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Mail.subject":{
        ref:"attr:Mail.subject",
        flags:"IR",
        description:"The string to appear in the subject line of the message.  Like all other <code>String</code> \n properties of <code>Mail</code>, you can use Velocity substitution variables in this property.\n <p>\n If you specify a \"Subject:\" line in the body of your email, the subject will be parsed \n and this property will be ignored.",
        name:"subject",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "method:Layout.hideMember":{
        ref:"method:Layout.hideMember",
        flags:"",
        description:" Hide the specified member, firing the specified callback when the hide is complete.\n <P>\n Members can always be directly hidden via <code>member.hide()</code>, but if\n ${isc.DocUtils.linkForRef('attr:Layout.animateMembers','animation')} is enabled, animation will only occur if hideMember() is\n called to hide the member.\n\n",
        name:"hideMember",
        seeAlso:[
        ],
        params:[
            {
                description:"Member to hide",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"callback to fire when the member is hidden.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Function"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:ListGrid.useAdvancedFieldPicker":{
        ref:"attr:ListGrid.useAdvancedFieldPicker",
        flags:"IR",
        description:"If set to true, an advanced field picker based on the ${isc.DocUtils.linkForRef('class:FieldPicker')} will be shown instead\n of the column picker submenu if there are more fields in the grid than\n ${isc.DocUtils.linkForRef('attr:ListGrid.advancedFieldPickerThreshold')}.\n <P>\n When there are large numbers of available fields, the FieldPicker-based interface is more\n usable for both defining visible fields and defining field order.",
        name:"useAdvancedFieldPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.checkboxFieldHSpace":{
        ref:"attr:ListGrid.checkboxFieldHSpace",
        flags:"IR",
        description:"How much horizontal space should the ${isc.DocUtils.linkForRef('method:ListGrid.getCheckboxField','checkbox field')} leave\n around the checkbox icon when ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is set to\n <code>\"checkbox\"</code>?\n <P>\n The automatically generated checkbox field will be sized to the width of the\n checkbox icon (specified via ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldImageWidth')} or\n ${isc.DocUtils.linkForRef('attr:ListGrid.booleanImageWidth')}) plus this value.",
        name:"checkboxFieldHSpace",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"15",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "method:ListGrid.getSortFieldCount":{
        ref:"method:ListGrid.getSortFieldCount",
        flags:"A",
        description:"  Returns the number of fields involved in this grid's current sort configuration.\n",
        name:"getSortFieldCount",
        seeAlso:[
        ],
        returns:{
            description:"the number of fields this grid is currently sorted on.",
            type:"Number"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:FilterBuilder.clauseStack":{
        ref:"attr:FilterBuilder.clauseStack",
        flags:"IR",
        description:"VStack of all clauses that are part of this FilterBuilder",
        name:"clauseStack",
        seeAlso:[
        ],
        valueType:"AutoChild VStack",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:Canvas.hoverHeight":{
        ref:"attr:Canvas.hoverHeight",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true, this property can be used to customize the\n height of the hover canvas shown.",
        name:"hoverHeight",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "attr:MultiGroupPanel.otherGroupLevelTitle":{
        ref:"attr:MultiGroupPanel.otherGroupLevelTitle",
        flags:"IR",
        description:"The title-text to appear in the first column for all group-levels other than the first.",
        name:"otherGroupLevelTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Then by\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MetricSettings.dataPointSize":{
        ref:"attr:MetricSettings.dataPointSize",
        flags:"IR",
        description:"Size in pixels for data points drawn for line, area, radar and other chart types.",
        name:"dataPointSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:ListGrid.headerMenuButtonWidth":{
        ref:"attr:ListGrid.headerMenuButtonWidth",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, this property governs the width of the\n auto-generated <code>headerMenuButton</code>",
        name:"headerMenuButtonWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "method:Canvas.linkHTML":{
        ref:"method:Canvas.linkHTML",
        flags:"A",
        description:" Generates the HTML for a standard link (anchor) element.\n\n",
        name:"linkHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"URL for the link to point to",
                optional:false,
                name:"href",
                defaultValue:null,
                type:"string"
            },
            {
                description:"HTML to display in the link element (defaults to the href)",
                optional:true,
                name:"text",
                defaultValue:null,
                type:"HTMLString"
            },
            {
                description:"Target window for the link (defaults to opening in a new, unnamed window)",
                optional:true,
                name:"target",
                defaultValue:null,
                type:"string"
            },
            {
                description:"optional ID for the link element to be written out",
                optional:true,
                name:"ID",
                defaultValue:null,
                type:"string"
            },
            {
                description:"optional tabIndex for the link",
                optional:true,
                name:"tabIndex",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"optional accessKey for the link",
                optional:true,
                name:"accessKey",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"HTML for the link",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:Canvas"
    },
    "method:SplitPane.paneChanged":{
        ref:"method:SplitPane.paneChanged",
        flags:"",
        description:" Notification fired when the ${isc.DocUtils.linkForRef('attr:SplitPane.currentPane')} changes, either due to end-user\n action or due to a programmatic call to ${isc.DocUtils.linkForRef('method:SplitPane.setCurrentPane','setCurrentPane()')}\n or other APIs that can change the pane.\n <p>\n Note that depending on the ${isc.DocUtils.linkForRef('type:DeviceMode')}, this event may not signal that any pane has\n actually been shown or hidden, since in some modes multiple panes are shown simultaneously.\n <p>\n Never fires while the <code>SplitPane</code> is not drawn.\n\n",
        name:"paneChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"new ${isc.DocUtils.linkForRef('attr:SplitPane.currentPane')} value.",
                optional:false,
                name:"pane",
                defaultValue:null,
                type:"CurrentPane"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:SplitPane.setNavigationTitle":{
        ref:"method:SplitPane.setNavigationTitle",
        flags:"",
        description:" Sets the title for the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')}.\n",
        name:"setNavigationTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title for the navigation pane.",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "attr:DataBoundComponent.canEditHilites":{
        ref:"attr:DataBoundComponent.canEditHilites",
        flags:"IRW",
        description:"Adds an item to the header context menu allowing users to launch a dialog to define\n grid hilites using the ${isc.DocUtils.linkForRef('class:HiliteEditor')}.\n <P>\n User-added hilites can be persisted via ${isc.DocUtils.linkForRef('method:DataBoundComponent.getHiliteState')} and \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.setHiliteState')}.",
        name:"canEditHilites",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "method:Menu.setItemIcon":{
        ref:"method:Menu.setItemIcon",
        flags:"",
        description:" Sets the icon and disabled icon (if specified) for a particular menu item and redraws\n the menu if necessary. Returns true if the icon changed.\n\n",
        name:"setItemIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"MenuItem in question, or it's index",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem or number"
            },
            {
                description:"new icon URL",
                optional:false,
                name:"newIcon",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new icon URL for disabled image",
                optional:true,
                name:"newDisabledIcon",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true == something changed, redraw is called for",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Menu"
    },
    "classMethod:Log.clear":{
        ref:"classMethod:Log.clear",
        flags:"",
        description:" Clear all currently displayed Log messages\n",
        name:"clear",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "object:HeaderLevel":{
        methods:[
            "method:HeaderLevel.titleFormatter"
        ],
        ref:"object:HeaderLevel",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Calendar"
        ],
        attrs:[
            "attr:HeaderLevel.unit",
            "attr:HeaderLevel.headerWidth",
            "attr:HeaderLevel.titles"
        ],
        description:"Defines one level of headers shown above the event area in a ${isc.DocUtils.linkForRef('class:Timeline')}.",
        name:"HeaderLevel",
        seeAlso:[
        ],
        type:"object"
    },
    "classMethod:History.unregisterCallback":{
        ref:"classMethod:History.unregisterCallback",
        flags:"",
        description:" Unregisters a callback so that it will no longer be called when the user navigates to a synthetic\n history entry.\n\n",
        name:"unregisterCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"the ID of the callback that was returned by ${isc.DocUtils.linkForRef('classMethod:History.registerCallback')}.",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"<code>true</code> if the callback registration was located and removed; <code>false</code> otherwise.",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:History"
    },
    "type:DSProtocol":{
        ref:"type:DSProtocol",
        values:[
            {
                description:"Data is added to the dataURL, with each property in the data becoming an HTTP parameter,\n   eg http://service.com/search?keyword=foo",
                value:"\"getParams\""
            },
            {
                description:"Data is POST'd to the dataURL, with each property becoming an HTTP parameter, \n   exactly as an HTML form would submit them if it had one input field per property in the\n   data.",
                value:"\"postParams\""
            },
            {
                description:"Data is serialized as XML via ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')} and POST'd as the\n   HTTP request body with contentType \"text/xml\".",
                value:"\"postXML\""
            },
            {
                description:"Data is serialized as XML via ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')}, wrapped in a SOAP\n   envelope, and POST'd as the HTTP request body with contentType \"text/xml\".  Generally\n   only used in connection with a ${isc.DocUtils.linkForRef('group:wsdlBinding','WSDL web service')}.",
                value:"\"soap\""
            },
            {
                description:"dsRequest.data is assumed to be a String set up by ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}\n   and is POST'd as the HTTP request body.",
                value:"\"postMessage\""
            },
            {
                description:"This setting entirely bypasses the SmartClient comm system. Instead of the DataSource sending\n   an HTTP request to the server, the developer is expected to implement\n   ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} to perform their own custom data manipulation logic, and\n   then call ${isc.DocUtils.linkForRef('method:DataSource.processResponse')} to handle the results of this action.",
                value:"\"clientCustom\""
            }
        ],
        description:"${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')} affects how the data in the DSRequest (${isc.DocUtils.linkForRef('attr:DSRequest.data')})\n is sent to the ${isc.DocUtils.linkForRef('attr:DataSource.dataURL')}.  Listed below are the valid values for\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')} and their behavior.\n <P>\n Note that, when using the SmartClient server, data is automatically translated from\n JavaScript to Java according to the rules described ${isc.DocUtils.linkForRef('attr:RPCRequest.data','here')};\n dataProtocol does not apply and is ignored.\n <P>\n If you are integrating with a ${isc.DocUtils.linkForRef('class:RestDataSource','REST')} server that requires the more\n obscure ${isc.DocUtils.linkForRef('attr:RPCRequest.httpMethod')}s of \"PUT\", \"DELETE\" or \"HEAD\", you can specify these\n httpMethod settings via ${isc.DocUtils.linkForRef('attr:OperationBinding.requestProperties')}.  dataProtocol settings\n that mention \"GET\" or \"POST\" are compatible with these additional HTTP methods as well.\n Typical ${isc.DocUtils.linkForRef('attr:DataSource.operationBindings','operationBindings')} for a REST server that uses\n \"PUT\" and \"DELETE\" are as follows:\n <pre>\n    operationBindings:[\n       {operationType:\"fetch\", dataProtocol:\"getParams\"},\n       {operationType:\"add\", dataProtocol:\"postParams\"},\n       {operationType:\"remove\", dataProtocol:\"getParams\", requestProperties:{httpMethod:\"DELETE\"}},\n       {operationType:\"update\", dataProtocol:\"postParams\", requestProperties:{httpMethod:\"PUT\"}}\n    ],\n </pre>",
        name:"DSProtocol",
        seeAlso:[
            {
                ref:"attr:OperationBinding.dataProtocol",
                description:null
            }
        ],
        type:"type",
        serverDS:"allowed",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:Scrollbar.vSrc":{
        ref:"attr:Scrollbar.vSrc",
        flags:"IR",
        description:"Base URL for the images used for the vertical scrollbar track and end buttons.  See\n ${isc.DocUtils.linkForRef('attr:Scrollbar.hSrc')} for usage.",
        name:"vSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]vscroll.gif\"",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "images"
        ]
    },
    "attr:ListGrid.leaveHeaderMenuButtonSpace":{
        ref:"attr:ListGrid.leaveHeaderMenuButtonSpace",
        flags:"IWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, when auto-fitting fields to\n the title width via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} or ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')},\n should the button be sized such that there is enough space for the header menu button to\n show without covering the field title?\n <P>\n May be explicitly specified at the ${isc.DocUtils.linkForRef('attr:ListGridField.leaveHeaderMenuButtonSpace','field level')}\n or at the ${isc.DocUtils.linkForRef('attr:ListGrid.leaveHeaderMenuButtonSpace','grid level')}. If not explicitly\n specified space will be left for fields with\n ${isc.DocUtils.linkForRef('attr:ListGridField.align')} set to <code>\"left\"</code> or <code>\"right\"</code>, but not for\n fields with align set to <code>\"center\"</code>.",
        name:"leaveHeaderMenuButtonSpace",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "attr:SplitPane.detailToolStrip":{
        ref:"attr:SplitPane.detailToolStrip",
        flags:"IR",
        description:"Toolstrip servicing the ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')}.\n <p>\n In ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode')}\n <smartclient><code>\"desktop\"</code></smartclient>\n <smartgwt>{@link com.smartgwt.client.types.DeviceMode#DESKTOP}</smartgwt>\n and <code>deviceMode</code>\n <smartclient><code>\"tablet\"</code>,</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.DeviceMode#TABLET},</smartgwt>\n the <code>detailToolStrip</code> is shown <em>above</em> the <code>detailPane</code>.\n In ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode')}\n <smartclient><code>\"handset\"</code>,</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.DeviceMode#HANDSET},</smartgwt>\n the <code>detailToolStrip</code> is created <strong>only</strong> if\n ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolButtons','detailToolButtons')} are specified, and is placed\n <em>underneath</em> the <code>detailPane</code>.",
        name:"detailToolStrip",
        seeAlso:[
        ],
        valueType:"AutoChild NavigationBar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "classAttr:DataSource.offlineMessage":{
        ref:"classAttr:DataSource.offlineMessage",
        flags:"IRW",
        description:"A message returned by a DataSource when it is returning an empty dataset for a fetch\n because the browser is currently offline and there is no suitable cached offline response.",
        name:"offlineMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"This data not available while offline\"",
        type:"classAttr",
        definingClass:"class:DataSource",
        groups:[
            "i18nMessages",
            "offlineGroup"
        ]
    },
    "attr:TextExportSettings.lineSeparator":{
        ref:"attr:TextExportSettings.lineSeparator",
        flags:"IR",
        description:"Separator between Records.  Default is a newline character (\"\\n\").",
        name:"lineSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"\\n\"",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "method:DrawImage.moveBy":{
        ref:"method:DrawImage.moveBy",
        flags:"",
        description:" Move the drawImage by the specified delta\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of pixels to move horizontally",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"number of pixels to move vertically",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawImage"
    },
    "attr:DateChooser.showApplyButton":{
        ref:"attr:DateChooser.showApplyButton",
        flags:"IRW",
        description:"Determines whether the ${isc.DocUtils.linkForRef('attr:DateChooser.applyButton')} will be displayed.",
        name:"showApplyButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:FacetChart.getNearestDrawnValues":{
        ref:"method:FacetChart.getNearestDrawnValues",
        flags:"",
        description:" Returns an array of ${isc.DocUtils.linkForRef('object:DrawnValue')} objects containing rendering information for the data\n values having each metric that are shown nearest to the passed coordinates.\n <P>\n Passed X and Y coordinates should be relative to the FacetChart.  If neither an X or Y\n coordinate is passed, both X and Y will use the current ${isc.DocUtils.linkForRef('method:Canvas.getOffsetX')} and\n ${isc.DocUtils.linkForRef('method:Canvas.getOffsetY')}.\n <P>\n The behavior for different chart types is the same as ${isc.DocUtils.linkForRef('method:FacetChart.getNearestDrawnValue')}.  This\n method also logs a warning and returns null if called before ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')}.\n <p>\n To get the nearest DrawnValues only if they contain the given coordinates, you can either use\n the ${isc.DocUtils.linkForRef('method:FacetChart.getDrawnValuesAtPoint')} API or check whether each DrawnValue in the returned array\n contains the point by calling ${isc.DocUtils.linkForRef('method:FacetChart.drawnValueContainsPoint')}.\n\n",
        name:"getNearestDrawnValues",
        seeAlso:[
            {
                ref:"method:FacetChart.getDrawnValuesAtPoint",
                description:null
            }
        ],
        params:[
            {
                description:"X coordinate. If this parameter is specified, then <code>y</code> is a required parameter.",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Y coordinate",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"the nearest drawn values for each metric, or null for invalid arguments / incorrect timing of call",
            type:"Array of DrawnValue"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Layout.getDropComponent":{
        ref:"method:Layout.getDropComponent",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:Layout.canDropComponents')} is true, this method will be called when a component is\n dropped onto the layout to determine what component to add as a new layout member.\n <P>\n By default, the actual component being dragged (isc.EventHandler.getDragTarget()) will be\n added to the layout.  For a different behavior, such as wrapping dropped components in\n Windows, or creating components on the fly from dropped data, override this method.  \n <P>\n You can also return null to cancel the drop.\n\n",
        name:"getDropComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"current drag target",
                optional:false,
                name:"dragTarget",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"index of the drop in the list of current members",
                optional:false,
                name:"dropPosition",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"the component to add to the layout, or null to cancel the drop",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:RelativeDateItem.quartersFromNowTitle":{
        ref:"attr:RelativeDateItem.quartersFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"quarter\".",
        name:"quartersFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N quarters from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TableView.recordTitleStyle":{
        ref:"attr:TableView.recordTitleStyle",
        flags:"IRW",
        description:"Default style for title.",
        name:"recordTitleStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"recordTitle\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "method:FormulaBuilder.save":{
        ref:"method:FormulaBuilder.save",
        flags:"",
        description:" Call to finish working, test the formula and call \n ${isc.DocUtils.linkForRef('method:FormulaBuilder.fireOnClose','fireOnClose()')}.  Called automatically\n when the Save button is clicked.\n\n",
        name:"save",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Window.maximizeButton":{
        ref:"attr:Window.maximizeButton",
        flags:"R",
        description:"Button that will make this Window fill the browser via ${isc.DocUtils.linkForRef('method:Window.maximize')}.",
        name:"maximizeButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:ListGrid.resizeFieldsInRealTime":{
        ref:"attr:ListGrid.resizeFieldsInRealTime",
        flags:"IRWA",
        description:"If <code>true</code>, the grid contents are redrawn in real time as fields are resized.\n This can be slow with a large grid and/or on some platforms. By default, this is enabled\n in modern desktop browsers. This is automatically switched off in mobile browsers.",
        name:"resizeFieldsInRealTime",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:null,
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "dragging"
        ]
    },
    "classAttr:FusionChart.allChartTypes":{
        ref:"classAttr:FusionChart.allChartTypes",
        flags:"R",
        description:"All ${isc.DocUtils.linkForRef('type:ChartType','ChartTypes')} that are supported by this class.\n Should be defined by concrete implementations of the charting interface.",
        name:"allChartTypes",
        seeAlso:[
        ],
        valueType:"Array of ChartType",
        defaultValue:"[\"Area\", \"Bar\", \"Column\", \"Pie\", \"Doughnut\", \"Line\", \"Radar\"]",
        type:"classAttr",
        definingClass:"class:FusionChart"
    },
    "attr:DataSourceField.primaryKey":{
        ref:"attr:DataSourceField.primaryKey",
        flags:"IR",
        description:"Indicates <b>either</b> that this field holds a value unique across all records in this\n DataSource, <b>or</b> that it is one of a number of fields marked as primary keys, and the\n combination of the values held in all of those fields is unique across all records in the\n DataSource.  Note that the latter usage - so-called \"composite\" or \"multipart\" keys - is \n intended for support of legacy databases only: if you are able to choose an approach, \n Isomorphic recommends the use of one <code>primaryKey</code> field per DataSource, and \n ideally this field should be of ${isc.DocUtils.linkForRef('attr:DataSourceField.type','type')} \"sequence\".\n <p>\n A DataSource that can <i>only</i> perform the \"fetch\" operation does not require a\n primaryKey unless it contains ${isc.DocUtils.linkForRef('group:binaryFields','binary fields')}.  If a DataSource \n allows modification of DataSource records through add, update and remove DataSource \n operations, or it contains one or more binary fields, one or more fields must be marked as \n the primary key.\n <P>\n SmartClient requires a primary key value to uniquely identify records when communicating\n updates or deletions to the server.  There is no requirement that the primaryKey field be\n mapped to an actual \"primary key\" in your object model, web service, or database (though \n this is the most obvious and natural thing to do, of course).  The only requirement is \n that the combined values of the primaryKey fields be unique for a given browser instance\n for the lifetime of the page.  \n <P>\n If using SmartClient's ${isc.DocUtils.linkForRef('group:sqlDataSource','SQL engine')} and generating SQL tables using\n the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')}, the table column generated from a primaryKey \n field will have a unique constraint applied in the database table and, if the field is of \n type \"sequence\", the database column will also be created as an \"identity column\" in those \n databases that implement sequence-type handling with identity columns.",
        name:"primaryKey",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "dataSourceRelations"
        ]
    },
    "attr:Scrollbar.thumbInset":{
        ref:"attr:Scrollbar.thumbInset",
        flags:"IRA",
        description:"Inset of the thumb relative to the track.  An inset of N pixels means the thumb is 2N\n pixels smaller in breadth than the track.",
        name:"thumbInset",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "thumb"
        ]
    },
    "classMethod:Class.Super":{
        ref:"classMethod:Class.Super",
        flags:"",
        description:"\n\tCall the SuperClass implementation of a class method.\n\n",
        name:"Super",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the superclass method to call",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"native \"arguments\" object, or array of                                           arguments to pass to the Super call",
                optional:false,
                name:"args",
                defaultValue:null,
                type:"arguments or Array"
            },
            {
                description:"native \"arguments\" object, required if an Array is                                  passed for the \"args\" parameter in lieu of the native\n                                  arguments object",
                optional:true,
                name:"nativeArgs",
                defaultValue:null,
                type:"arguments"
            }
        ],
        returns:{
            description:"return value of the superclass call",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:ListGridField.canHilite":{
        ref:"attr:ListGridField.canHilite",
        flags:"IRW",
        description:"Determines whether this field can be hilited.  Set to false to prevent this\n field from appearing in HiliteEditor.",
        name:"canHilite",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "type:MultiComboBoxLayoutStyle":{
        ref:"type:MultiComboBoxLayoutStyle",
        values:[
            {
                description:"Use a flow layout",
                value:"\"flow\""
            },
            {
                description:"Use a horizontal layout with the combo box on the right",
                value:"\"horizontal\""
            },
            {
                description:"Use a horizontal layout with the combo box on the left",
                value:"\"horizontalReverse\""
            },
            {
                description:"Use a vertical layout",
                value:"\"vertical\""
            },
            {
                description:"Use a vertical layout with the combo box at the bottom",
                value:"\"verticalReverse\""
            }
        ],
        description:"Specifies the layout of the combo box and buttons in a MultiComboBoxItem.",
        name:"MultiComboBoxLayoutStyle",
        seeAlso:[
            {
                ref:"attr:MultiComboBoxItem.layoutStyle",
                description:null
            }
        ],
        type:"type"
    },
    "method:MenuBar.removeMenus":{
        ref:"method:MenuBar.removeMenus",
        flags:"",
        description:" Dynamically remove menus from the menuBar. Will update the visible set of buttons as \n appropriate.\n",
        name:"removeMenus",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of menus to remove (will accept actual Menu components,                       or numbers representing the index of the menus in the current menus array)",
                optional:false,
                name:"menus",
                defaultValue:null,
                type:"array"
            }
        ],
        type:"method",
        definingClass:"class:MenuBar"
    },
    "class:PrintWindow":{
        methods:[
            "method:PrintWindow.setPrintButtonTitle"
        ],
        ref:"class:PrintWindow",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:PrintWindow.title",
            "attr:PrintWindow.printButtonTitle",
            "attr:PrintWindow.externalStylesheet"
        ],
        description:"Subclass of ${isc.DocUtils.linkForRef('class:Window')} used for displaying a printable view. Includes a \"Print\" button\n header control to trigger printing of content.",
        name:"PrintWindow",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "printing"
        ]
    },
    "attr:ListPropertiesDialog.cancelButton":{
        ref:"attr:ListPropertiesDialog.cancelButton",
        flags:"R",
        description:"The Cancel button. When clicked, the ${isc.DocUtils.linkForRef('method:ListPropertiesDialog.cancelClick','cancelClick')}\n event is fired.\n <p>\n ${isc.DocUtils.linkForRef('attr:ListPropertiesDialog.cancelButtonTitle','cancelButtonTitle')} is a ${isc.DocUtils.linkForRef('group:autoChildUsage','passthrough')}\n for the button's ${isc.DocUtils.linkForRef('attr:Button.title','title')}.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesDialog"
    },
    "group:autoTest":{
        ref:"group:autoTest",
        refs:[
            "method:GridRenderer.getCellFromDomElement",
            "class:AutoTest",
            "classAttr:Class.isFrameworkClass",
            "classAttr:AutoTest.implicitNetworkWait",
            "classAttr:AutoTest.testRoot",
            "classMethod:Class.markAsFrameworkClass",
            "classMethod:AutoTest.getLocator",
            "classMethod:AutoTest.locateCanvasFromDOMElement",
            "classMethod:AutoTest.getElement",
            "classMethod:AutoTest.getObject",
            "classMethod:AutoTest.getValue",
            "classMethod:AutoTest.getPageCoords",
            "classMethod:AutoTest.setTestRoot",
            "classMethod:AutoTest.isElementClickable",
            "classMethod:AutoTest.isGridDone",
            "classMethod:AutoTest.isSystemDone",
            "attr:Canvas.locateChildrenBy",
            "attr:Canvas.locateChildrenType",
            "attr:Canvas.locatePeersBy",
            "attr:Canvas.locatePeersType",
            "attr:Layout.locateMembersBy",
            "attr:Layout.locateMembersType",
            "attr:SectionStack.locateSectionsBy",
            "attr:SectionStack.locateSectionsType",
            "attr:FormItem.locateItemBy",
            "attr:TabSet.locateTabsBy",
            "attr:ListGrid.locateRowsBy",
            "attr:ListGrid.locateColumnsBy",
            "type:AutoTestLocator",
            "type:LocatorStrategy",
            "type:LocatorTypeStrategy"
        ],
        name:"autoTest",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.getCellStyle":{
        ref:"method:ListGrid.getCellStyle",
        flags:"",
        description:" Return the CSS class for a cell. By default this method has the following implementation:<br>\n - return any custom style for the record (see ${isc.DocUtils.linkForRef('attr:GridRenderer.recordCustomStyleProperty')}) \n   if defined.<br>\n - create a style name based on the result of ${isc.DocUtils.linkForRef('method:GridRenderer.getBaseStyle')} and the \n   state of the record.<br>\n The state of the record is indicated by adding a suffix to the base style.\n There are four independent boolean states, which are combined in the order given:\n <ol>\n <li>\"Disabled\" : whether the cell is disabled; enable by setting the \"enabled\" flag on record\n     returned by getCellRecord\n <li>\"Selected\" : whether cell is selected; enable by passing a Selection object as \"selection\"\n <li>\"Over\" : mouse is over this cell; enable with showRollovers\n <li>\"Dark\" : alternating color bands; enable with alternateRowStyles\n </ol>\n For example, with a baseStyle of \"myCell\", a cell which is selected, which the mouse is over,\n and which is in a dark-colored band will get a styleName of myCellSelectedOverDark.\n <p>\n Cell Styles customizable by:\n <ul>\n <li>attaching a custom style to a record by setting \n    <code>record[this.recordCustomStyleProperty]</code> to some valid CSS style name.  \n <li>modifying the base style returned by getBaseStyle() [see that method for further \n     documentation on this]\n <li>overriding this function\n </ul>\n <p>\n \"Selected\" style can be ignored by setting ${isc.DocUtils.linkForRef('attr:GridRenderer.showSelectedStyle')} to false.\n\n",
        name:"getCellStyle",
        seeAlso:[
            {
                ref:"method:ListGrid.getBaseStyle",
                description:null
            }
        ],
        params:[
            {
                description:"record object for this row and column",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"number of the row",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS style for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:DetailViewerField.hiliteIconHeight":{
        ref:"attr:DetailViewerField.hiliteIconHeight",
        flags:"IRW",
        description:"Height for hilite icons for this field.\n Overrides ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconSize')}, ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconHeight')}, and\n ${isc.DocUtils.linkForRef('attr:DetailViewerField.hiliteIconSize')}.",
        name:"hiliteIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListGrid.enterKeyEditAction":{
        ref:"attr:ListGrid.enterKeyEditAction",
        flags:"IRW",
        description:"What to do when a user hits enter while editing a cell:\n <ul>\n <li>\"nextCell\": start editing the next editable cell in this record (or the first\n     editable cell in the next record if focus is in the last editable cell in the row)\n <li>\"nextRow\": start editing the same field in the next row (skipping any rows where\n      that would be a non-editable cell.\n <li>\"nextRowStart\": start editing the first editable cell in the next row.\n <li>\"done\": hide the editor (editing is complete)\n </ul>\n Note that if this.autoSaveEdits is true, this may cause a save of the current edit values",
        name:"enterKeyEditAction",
        seeAlso:[
        ],
        valueType:"EnterKeyEditAction",
        defaultValue:"\"done\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:JSONEncoder.encode":{
        ref:"method:JSONEncoder.encode",
        flags:"",
        description:" Serialize an object as a JSON string.\n <P>\n Automatically handles circular references - see ${isc.DocUtils.linkForRef('attr:JSONEncoder.circularReferenceMode')}.\n <smartgwt>\n <P>\n Because GWT does not support Java reflection, JSON encoding cannot discover the properties\n of an arbitrary Java POJO.  The following objects are supported:\n <ul> \n <li> any primitive type (String, Date, Number, Boolean)\n <li> any Map or Collection in any level of nesting\n <li> DataClass (Record's superclass) and RecordList\n <li> any widget (see ${isc.DocUtils.linkForRef('attr:JSONEncoder.serializeInstances')})\n <li> JavaScriptObject\n <li> an Array containing any of the above\n </ul>\n </smartgwt>\n <P>\n Note that using the String produced by this API with ${isc.DocUtils.linkForRef('classMethod:JSON.decode')} <b>will not\n successfully preserve dates</b>.  Use ${isc.DocUtils.linkForRef('attr:JSONEncoder.dateFormat')} \"dateConstructor\" or\n \"logicalDateConstructor\" to have dates round-trip properly.\n\n",
        name:"encode",
        seeAlso:[
        ],
        params:[
            {
                description:"object to serialize",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"object encoded as a JSON String",
            type:"String"
        },
        type:"method",
        definingClass:"class:JSONEncoder"
    },
    "attr:StretchImgButton.icon":{
        ref:"attr:StretchImgButton.icon",
        flags:"IRW",
        description:"Optional icon to be shown with the button title text.  \n <P>\n Specify as the partial URL to an image, relative to the imgDir of this component.",
        name:"icon",
        setter:[
            "setIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:PrintWindow.setPrintButtonTitle":{
        ref:"method:PrintWindow.setPrintButtonTitle",
        flags:"",
        description:" Setter for title for the print button\n",
        name:"setPrintButtonTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title for the print button",
                optional:false,
                name:"printButtonTitle",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:PrintWindow"
    },
    "class:PickTreeItem":{
        methods:[
            "method:PickTreeItem.setValueTree",
            "method:PickTreeItem.fetchData",
            "method:PickTreeItem.setEmptyDisplayValue"
        ],
        ref:"class:PickTreeItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:PickTreeItem.shouldSaveValue",
            "attr:PickTreeItem.button",
            "attr:PickTreeItem.dataSource",
            "attr:PickTreeItem.dataProperties",
            "attr:PickTreeItem.valueTree",
            "attr:PickTreeItem.loadDataOnDemand",
            "attr:PickTreeItem.displayField",
            "attr:PickTreeItem.valueField",
            "attr:PickTreeItem.emptyMenuMessage",
            "attr:PickTreeItem.emptyDisplayValue",
            "attr:PickTreeItem.readOnlyDisplay",
            "attr:PickTreeItem.canSelectParentItems",
            "attr:PickTreeItem.optionDataSource"
        ],
        description:"FormItem that allows picking a value from a hierarchical data model.",
        name:"PickTreeItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('pickTree')}"
        ],
        inheritsFrom:"CanvasItem"
    },
    "attr:ListGrid.alternateBodyStyleName":{
        ref:"attr:ListGrid.alternateBodyStyleName",
        flags:"IRWA",
        description:"Optional css style to apply to the body if ${isc.DocUtils.linkForRef('attr:ListGrid.alternateRecordStyles')} is true\n for this grid. If unset ${isc.DocUtils.linkForRef('attr:ListGrid.bodyStyleName')} will be used to style the body\n regardless of the ${isc.DocUtils.linkForRef('attr:ListGrid.alternateRecordStyles','alternateRecordStyles')} setting.",
        name:"alternateBodyStyleName",
        setter:[
            "setAlternateBodyStyleName"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:StretchImgButton.vertical":{
        ref:"attr:StretchImgButton.vertical",
        flags:"IRW",
        description:"Default is a horizontal button.  Vertical StretchImgButtons are allowed, but title text,\n if any, will not be automatically rotated.",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "appearance"
        ]
    },
    "classAttr:RPCManager.useXmlHttpRequest":{
        ref:"classAttr:RPCManager.useXmlHttpRequest",
        deprecated:"As of SmartClient 5.5, use ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTransport')}.  If you specify a value for this property, it will take precedence over\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTransport')} for requests that do not specify a\n ${isc.DocUtils.linkForRef('attr:RPCRequest.transport')} or ${isc.DocUtils.linkForRef('attr:RPCRequest.useXmlHttpRequest')}.",
        flags:"RW",
        description:"Selects the default http transport for all RPC requests.  If set to true, RPCManager\n will use XMLHttp for requests to the server.  If set to false, it will use hidden\n frames.  Overrideable on a per-request basis via ${isc.DocUtils.linkForRef('attr:RPCRequest.useXmlHttpRequest')}.\n <p>\n Note that if the end user disables ActiveX controls in Internet Explorer, the XMLHttpRequest\n object will not be available and SmartClient will automatically fall back on frames\n communication.",
        name:"useXmlHttpRequest",
        seeAlso:[
            {
                ref:"attr:RPCRequest.useXmlHttpRequest",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true if XMLHttpRequest is supported, false otherwise",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "classAttr:Operators.notEqualFieldTitle":{
        ref:"classAttr:Operators.notEqualFieldTitle",
        flags:"IR",
        description:"Title for the \"notEqualField\" operator",
        name:"notEqualFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"differs from field (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TestFunctionResult.record":{
        ref:"attr:TestFunctionResult.record",
        flags:"IRW",
        description:"Set to the record that was used when testing the generated function.  This is the record\n selected by ${isc.DocUtils.linkForRef('method:FormulaBuilder.getTestRecord')}.",
        name:"record",
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TestFunctionResult",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Layout.resizeBar":{
        ref:"attr:Layout.resizeBar",
        flags:"A",
        description:"A MultiAutoChild created to resize members of this <code>Layout</code>.\n <p>\n A resize bar will be created for any member of this <code>Layout</code> that has\n ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar','showResizeBar')} set to <code>true</code>. Resize bars will be\n instances of the class specified by ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass')} by default, and will\n automatically be sized to the member's breadth, and to the thickness specified by\n ${isc.DocUtils.linkForRef('attr:Layout.resizeBarSize')}.\n <p>\n To customize the appearance or behavior of resizeBars within some layout a custom\n resize bar class can be created by subclassing ${isc.DocUtils.linkForRef('class:Splitbar')} or ${isc.DocUtils.linkForRef('class:ImgSplitbar')} and\n setting ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass')} or <code>resizeBarConstructor</code> to this custom class.\n <smartclient>\n Alternatively, <code>resizeBarProperties</code> may be specified. See ${isc.DocUtils.linkForRef('group:autoChildUsage')}\n for more information.\n </smartclient>\n <smartgwt>\n Alternatively, {@link com.smartgwt.client.widgets.Canvas#setAutoChildProperties(java.lang.String, com.smartgwt.client.widgets.Canvas)}\n may be called to set resizeBar properties:\n <pre>\n     final Splitbar resizeBarProperties = new Splitbar();\n     //...\n     layout.setAutoChildProperties(\"resizeBar\", resizeBarProperties);\n </pre>\n See ${isc.DocUtils.linkForRef('group:autoChildUsage')} for more information.\n <p>\n If you create a custom resize bar class in Java, enable ${isc.DocUtils.linkForRef('group:reflection')} to\n allow it to be used.\n <p>\n Alternatively, you can use the &#83;martClient class system to create a simple\n &#83;martClient subclass of either <code>Splitbar</code> or <code>ImgSplitbar</code>\n for use with this API - see the ${isc.DocUtils.linkForRef('group:skinning','Skinning Guide')} for details.\n </smartgwt>\n <p>\n The built-in <code>Splitbar</code> class supports drag resizing of its target member,\n and clicking on the bar with a mouse to collapse/uncollapse the target member.",
        name:"resizeBar",
        seeAlso:[
        ],
        valueType:"MultiAutoChild Splitbar",
        defaultValue:null,
        type:"attr",
        definingClass:"class:Layout"
    },
    "class:DateChooser":{
        methods:[
            "method:DateChooser.setData",
            "method:DateChooser.getData",
            "method:DateChooser.getFiscalCalendar",
            "method:DateChooser.setFiscalCalendar",
            "method:DateChooser.dataChanged",
            "method:DateChooser.cancelClick",
            "method:DateChooser.todayClick"
        ],
        ref:"class:DateChooser",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:DateChooser.navigationLayout",
            "attr:DateChooser.closeOnDateClick",
            "attr:DateChooser.showFiscalYearChooser",
            "attr:DateChooser.fiscalYearChooserButton",
            "attr:DateChooser.showWeekChooser",
            "attr:DateChooser.weekChooserButton",
            "attr:DateChooser.previousYearButton",
            "attr:DateChooser.previousMonthButton",
            "attr:DateChooser.monthChooserButton",
            "attr:DateChooser.yearChooserButton",
            "attr:DateChooser.nextMonthButton",
            "attr:DateChooser.nextYearButton",
            "attr:DateChooser.buttonLayout",
            "attr:DateChooser.dateGrid",
            "attr:DateChooser.todayButton",
            "attr:DateChooser.cancelButton",
            "attr:DateChooser.applyButton",
            "attr:DateChooser.headerHeight",
            "attr:DateChooser.navigationLayoutHeight",
            "attr:DateChooser.skinImgDir",
            "attr:DateChooser.prevYearIcon",
            "attr:DateChooser.prevYearIconRTL",
            "attr:DateChooser.prevYearIconWidth",
            "attr:DateChooser.prevYearIconHeight",
            "attr:DateChooser.prevMonthIcon",
            "attr:DateChooser.prevMonthIconRTL",
            "attr:DateChooser.prevMonthIconWidth",
            "attr:DateChooser.prevMonthIconHeight",
            "attr:DateChooser.nextYearIcon",
            "attr:DateChooser.nextYearIconRTL",
            "attr:DateChooser.nextYearIconWidth",
            "attr:DateChooser.nextYearIconHeight",
            "attr:DateChooser.nextMonthIcon",
            "attr:DateChooser.nextMonthIconRTL",
            "attr:DateChooser.nextMonthIconWidth",
            "attr:DateChooser.nextMonthIconHeight",
            "attr:DateChooser.showDoubleYearIcon",
            "attr:DateChooser.yearMenuStyle",
            "attr:DateChooser.startYear",
            "attr:DateChooser.endYear",
            "attr:DateChooser.monthMenuStyle",
            "attr:DateChooser.weekMenuStyle",
            "attr:DateChooser.showTodayButton",
            "attr:DateChooser.showCancelButton",
            "attr:DateChooser.showApplyButton",
            "attr:DateChooser.todayButtonTitle",
            "attr:DateChooser.cancelButtonTitle",
            "attr:DateChooser.applyButtonTitle",
            "attr:DateChooser.todayButtonHeight",
            "attr:DateChooser.disableWeekends",
            "attr:DateChooser.showWeekends",
            "attr:DateChooser.firstDayOfWeek",
            "attr:DateChooser.baseButtonStyle",
            "attr:DateChooser.baseWeekdayStyle",
            "attr:DateChooser.baseWeekendStyle",
            "attr:DateChooser.baseFiscalYearStyle",
            "attr:DateChooser.fiscalYearHeaderStyle",
            "attr:DateChooser.baseWeekStyle",
            "attr:DateChooser.weekHeaderStyle",
            "attr:DateChooser.disabledDates",
            "attr:DateChooser.disabledWeekdayStyle",
            "attr:DateChooser.disabledWeekendStyle",
            "attr:DateChooser.selectedWeekStyle",
            "attr:DateChooser.alternateWeekStyles",
            "attr:DateChooser.alternateStyleSuffix",
            "attr:DateChooser.headerStyle",
            "attr:DateChooser.weekendHeaderStyle",
            "attr:DateChooser.baseNavButtonStyle",
            "attr:DateChooser.navButtonConstructor",
            "attr:DateChooser.baseBottomButtonStyle",
            "attr:DateChooser.useFirstDayOfFiscalWeek",
            "attr:DateChooser.closeOnEscapeKeypress",
            "attr:DateChooser.timeItem",
            "attr:DateChooser.timeItemProperties",
            "attr:DateChooser.showTimeItem",
            "attr:DateChooser.timeItemTitle",
            "attr:DateChooser.use24HourTime",
            "attr:DateChooser.fiscalYearFieldTitle",
            "attr:DateChooser.weekFieldTitle",
            "attr:DateChooser.showSecondItem",
            "attr:DateChooser.dayNameLength"
        ],
        description:"Simple interactive calendar interface used to pick a date.\n Used by the ${isc.DocUtils.linkForRef('class:DateItem')} class.",
        name:"DateChooser",
        seeAlso:[
        ],
        type:"class"
    },
    "method:TimeItem.selectValue":{
        ref:"method:TimeItem.selectValue",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.selectValue','selectValue()')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"selectValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:SelectItem.useClientFiltering":{
        ref:"attr:SelectItem.useClientFiltering",
        flags:"IRA",
        description:"For ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource','databound')} items, this property will be passed\n to the generated ResultSet data object for the pickList as ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering')}.\n Setting to false will disable filtering on the client and ensure criteria are\n always passed to the DataSource directly.",
        name:"useClientFiltering",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "classMethod:Class.registerStringMethods":{
        ref:"classMethod:Class.registerStringMethods",
        flags:"",
        description:"\n\tRegister a method, or set of methods, that can be provided to instances of this class as\n\tStrings (containing a JavaScript expression) and will be automatically converted into\n\tfunctions.\n  <p>\n  For example:\n  <pre>\n  isc.MyClass.registerStringMethods({\n      myStringMethod: \"arg1, arg2\"\n  });\n  </pre>\n\n",
        name:"registerStringMethods",
        seeAlso:[
            {
                ref:"group:stringMethods",
                description:null
            }
        ],
        params:[
            {
                description:"If this is a string, name of the property to register                                  If this is an object, assume passing in a set of name/value\n                                  pairs to register",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"object"
            },
            {
                description:"named arguments for the property in a comma separated string                                  (not used if methodName is an object)",
                optional:false,
                name:"argumentString",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:DataSource.dataProtocol":{
        ref:"attr:DataSource.dataProtocol",
        flags:"IR",
        getter:[
            "getDataProtocol"
        ],
        description:"Controls the format in which inputs are sent to the dataURL when fulfilling DSRequests.\n May be overridden for individual request types using\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','operation bindings')}.",
        name:"dataProtocol",
        seeAlso:[
        ],
        valueType:"DSProtocol",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration",
            "serverDataIntegration"
        ]
    },
    "classAttr:Operators.iNotEndsWithFieldTitle":{
        ref:"classAttr:Operators.iNotEndsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"iNotEndsWithField\" operator",
        name:"iNotEndsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not end with (case insensitive) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGridField.getSummaryTitle":{
        ref:"method:ListGridField.getSummaryTitle",
        deprecated:"Rather than customizing the summaryTitle developers should typically use  the ${isc.DocUtils.linkForRef('attr:ListGridField.headerTitle')} attribute to show a different\n  title in the column header button than the title used elsewhere.",
        flags:"A",
        description:" Optional string method to return a long summary title for this field, if a dynamic\n summary title is required for this field.\n\n",
        name:"getSummaryTitle",
        seeAlso:[
            {
                ref:"attr:ListGridField.summaryTitle",
                description:null
            },
            {
                ref:"attr:ListGridField.title",
                description:null
            }
        ],
        params:[
            {
                description:"pointer back to the ListGrid",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"listGrid"
            },
            {
                description:"pointer to the field object",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"listGridField"
            }
        ],
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "object:DetailViewerField":{
        methods:[
            "method:DetailViewerField.formatCellValue",
            "method:DetailViewerField.showIf",
            "method:DetailViewerField.getCellStyle"
        ],
        ref:"object:DetailViewerField",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/DetailViewer"
        ],
        attrs:[
            "attr:DetailViewerField.name",
            "attr:DetailViewerField.displayField",
            "attr:DetailViewerField.dataPath",
            "attr:DetailViewerField.dateFormatter",
            "attr:DetailViewerField.timeFormatter",
            "attr:DetailViewerField.decimalPrecision",
            "attr:DetailViewerField.decimalPad",
            "attr:DetailViewerField.imageSize",
            "attr:DetailViewerField.imageWidth",
            "attr:DetailViewerField.imageHeight",
            "attr:DetailViewerField.imageURLPrefix",
            "attr:DetailViewerField.linkText",
            "attr:DetailViewerField.linkTextProperty",
            "attr:DetailViewerField.linkURLPrefix",
            "attr:DetailViewerField.linkURLSuffix",
            "attr:DetailViewerField.target",
            "attr:DetailViewerField.format",
            "attr:DetailViewerField.exportFormat",
            "attr:DetailViewerField.exportRawValues",
            "attr:DetailViewerField.canHilite",
            "attr:DetailViewerField.hiliteIconPosition",
            "attr:DetailViewerField.hiliteIconSize",
            "attr:DetailViewerField.hiliteIconWidth",
            "attr:DetailViewerField.hiliteIconHeight",
            "attr:DetailViewerField.hiliteIconLeftPadding",
            "attr:DetailViewerField.hiliteIconRightPadding",
            "attr:DetailViewerField.type",
            "attr:DetailViewerField.title",
            "attr:DetailViewerField.valueMap",
            "attr:DetailViewerField.escapeHTML",
            "attr:DetailViewerField.value",
            "attr:DetailViewerField.height",
            "attr:DetailViewerField.cellStyle",
            "attr:DetailViewerField.printCellStyle",
            "attr:DetailViewerField.showFileInline",
            "attr:DetailViewerField.canExport",
            "attr:DetailViewerField.includeFrom",
            "attr:DetailViewerField.emptyCellValue"
        ],
        description:"An object literal with a particular set of properties used to configure the display of\n and interaction with the rows of a ${isc.DocUtils.linkForRef('class:DetailViewer')}.",
        name:"DetailViewerField",
        seeAlso:[
        ],
        type:"object"
    },
    "method:Callbacks.HideSectionCallback":{
        ref:"method:Callbacks.HideSectionCallback",
        flags:"",
        description:" Callback to execute after the section has been hidden.\n",
        name:"HideSectionCallback",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "method:DataSource.transformResponse":{
        ref:"method:DataSource.transformResponse",
        flags:"A",
        description:" Modify the DSResponse object derived from the response returned from the \n ${isc.DocUtils.linkForRef('attr:DataSource.dataURL','dataURL')}.\n <P>\n This is an override point that makes it possible to use DataSource features such as\n paging with web services that support such features, by allowing you to fill in metadata\n fields in the DSResponse object (such as ${isc.DocUtils.linkForRef('attr:DSResponse.startRow')}) based on\n service-specific metadata fields contained in the service's response.\n <P>\n The DSResponse passed to this method already has ${isc.DocUtils.linkForRef('attr:DSResponse.data')}, which is\n derived differently depending on the ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','dataFormat')} setting:\n <ul>\n <li> <code>dataFormat:\"xml\"</code> : either the\n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','recordXPath')} or \n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordName','recordName')} is used to select the XML elements\n that represent DataSource records.  The selected XML elements are passed to\n ${isc.DocUtils.linkForRef('method:DataSource.recordsFromXML')}, which transforms the XML elements to typed\n JavaScript data using the DataSource as a schema.\n <li> <code>dataFormat:\"json\"</code> : the\n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','recordXPath')}, if specified, is used to select\n records from the returned JSON data via ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectObjects')}.  \n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath')} is used to derive correctly typed field values.\n <li> <code>dataFormat:\"custom\"</code> : <code>dsResponse.data</code> is the raw response\n in String form.  It must be parsed into an Array of Objects for subsequent processing to\n work.\n </ul> \n <P>\n In addition to <code>dsResponse.data</code>, ${isc.DocUtils.linkForRef('attr:DSResponse.status')} is defaulted\n to 0 (indicating no error), and ${isc.DocUtils.linkForRef('attr:DSResponse.startRow')} is assumed to be zero,\n with ${isc.DocUtils.linkForRef('attr:DSResponse.endRow','endRow')} and ${isc.DocUtils.linkForRef('attr:DSResponse.totalRows','totalRows')}\n both set to <code>dsResponse.data.length - 1</code>, that is, the returned data is\n assumed to be all records that matched the filter criteria.\n <P>\n Examples of using this API include:\n <ul>\n <li> setting ${isc.DocUtils.linkForRef('attr:DSResponse.startRow','startRow')}, \n      ${isc.DocUtils.linkForRef('attr:DSResponse.endRow','endRow')} and ${isc.DocUtils.linkForRef('attr:DSResponse.totalRows','totalRows')}\n      to allow paging for a service that supports it.  For example, if an XML service\n      returns a \"resultRow\" tag that contained the row number of the first row of the\n      returned results:<pre>\n    dsResponse.startRow = \n        isc.XMLTools.selectNumber(xmlData, \"//resultRow\");\n </pre>\n <li> setting ${isc.DocUtils.linkForRef('attr:DSResponse.status')} to recognized ISC error values based on\n      service-specific errors, in order to trigger standard ISC error handling.  For\n      example, setting <code>dsResponse.status</code> to\n      ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_VALIDATION_ERROR')} and filling in\n      ${isc.DocUtils.linkForRef('attr:DSResponse.errors')} in order to cause validation errors to be shown in\n      forms and grids.\n <li> for services that either do not return cache update data, or return partial data,\n      using ${isc.DocUtils.linkForRef('attr:DSRequest.oldValues')} to create cache update data (whether this is\n      appropriate is application-specific), or setting\n      ${isc.DocUtils.linkForRef('attr:DSResponse.invalidateCache')}.\n </ul>\n <P>\n <span STYLE=\"color:red\">NOTE:</span> this method is NOT an appropriate time to call\n methods on visual components such as grids, initiate new DSRequests or RPCRequests, or\n in general do anything other than fill in fields on the DSResponse based on data that is\n already available.  Any actions that need to be taken as a result of the web\n service response should be implemented exactly as for a DataSource where\n <code>transformResponse()</code> has not been overridden, that is, use the callback\n passed to high-level methods such as \n ${isc.DocUtils.linkForRef('group:dataBoundComponentMethods','<code>grid.fetchData()</code>')}, and do error\n handling via either ${isc.DocUtils.linkForRef('method:DataSource.handleError')} or by setting\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError','willHandleError')}.\n\n",
        name:"transformResponse",
        seeAlso:[
        ],
        params:[
            {
                description:"default DSResponse derived from the response data",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            },
            {
                description:"DSRequest object that initiated this request",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"XML document or JSON objects returned by the web                                   service",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"XMLDocument or JSON"
            }
        ],
        returns:{
            description:"response derived",
            type:"DSResponse"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlServerValidationErrors')}"
        ],
        definingClass:"class:DataSource"
    },
    "attr:StretchImgButton.labelHPad":{
        ref:"attr:StretchImgButton.labelHPad",
        flags:"IRW",
        description:"The padding for a StretchImgButton's label is determined as follows.\n <P>\n If <code>labelHPad</code> is set it will specify the horizontal padding applied to the\n label. Similarly if <code>labelVPad</code> is set it will specify the vertical padding\n for the label, regardless of the button's ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical','vertical')} setting.\n <P>\n Otherwise <code>labelLengthPad</code> can be set to specify the label padding along the\n length axis (ie: horizontal padding if ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical')} is false,\n otherwise vertical padding), and \n <code>labelBreadthPad</code> can be set to specify the label padding along the other axis.\n <P>\n Otherwise the padding on the length axis will match the ${isc.DocUtils.linkForRef('attr:StretchImgButton.capSize')} and\n will be set to zero on the breadth axis.\n <P>\n So by default the label will be sized to match the center image of the StretchImgButton, but\n these settings allow the label to partially or wholly overlap the caps.",
        name:"labelHPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "classAttr:GroupingMessages.timezoneSecondsSuffix":{
        ref:"classAttr:GroupingMessages.timezoneSecondsSuffix",
        flags:"IRW",
        description:"Suffix to append to the timezoneSeconds grouping mode",
        name:"timezoneSecondsSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"seconds\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.destroy":{
        ref:"method:Canvas.destroy",
        flags:"A",
        description:" Permanently destroy a Canvas and all of it's children / members, recursively.\n <P>\n Like ${isc.DocUtils.linkForRef('method:Canvas.clear')}, calling <code>destroy()</code> removes all HTML for the component;\n unlike clear(), a destroyed Canvas is permanently unusable: it cannot be draw()'n again,\n cannot be referenced by its global ID, and is eligible for garbage collection (assuming\n that application code is not holding a reference to the Canvas).\n <P>\n Any attempt to call a method on a destroyed Canvas will generally result in an error.  If your\n application is forced to hold onto Canvas's that might be destroy()d without warning, you can\n avoid errors by checking for the ${isc.DocUtils.linkForRef('attr:Canvas.destroyed')} property.  If you override certain Canvas\n methods, your code may be called while a Canvas is being destroy()d; in this case you can avoid\n extra work (and possibly errors) by checking for the ${isc.DocUtils.linkForRef('attr:Canvas.destroying')} property.\n <P>\n Note that <code>destroy()</code> should not be called directly in event handling code for this\n canvas. For this reason, wherever possible we recommend using ${isc.DocUtils.linkForRef('method:Canvas.markForDestroy')}\n instead of calling this method directly.\n\n",
        name:"destroy",
        seeAlso:[
            {
                ref:"method:Canvas.markForDestroy",
                description:null
            },
            {
                ref:"group:memoryLeaks",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:ListGrid.sortState":{
        ref:"attr:ListGrid.sortState",
        flags:"IRW",
        getter:[
            "getSortState"
        ],
        description:"Initial sort state for the grid.\n <P>\n ${isc.DocUtils.linkForRef('attr:ListGrid.viewState')} can be used to initialize all view properties of the grid.\n When doing so, <code>sortState</code> is not needed because <code>viewState</code>\n includes it as well. If both are provided, <code>sortState</code> has priority for\n sort state.\n <smartclient>\n <P>\n To retrieve current state call ${isc.DocUtils.linkForRef('method:ListGrid.getSortState','getSortState')}.\n </smartclient>",
        name:"sortState",
        setter:[
            "setSortState"
        ],
        seeAlso:[
        ],
        valueType:"ListGridSortState",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:Applet.ID":{
        ref:"attr:Applet.ID",
        flags:"IR",
        description:"Global ID for this Applet component.  Note this is not the same as the ID used for the\n  &lt;applet&gt; element in the DOM - see ${isc.DocUtils.linkForRef('attr:Applet.pluginID')}.",
        name:"ID",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "method:TreeGrid.leafClick":{
        ref:"method:TreeGrid.leafClick",
        flags:"",
        description:"\n This method is called when a leaf record is clicked on.\n\n",
        name:"leafClick",
        seeAlso:[
            {
                ref:"method:TreeGrid.nodeClick",
                description:null
            }
        ],
        params:[
            {
                description:"The TreeGrid on which leafClick() occurred.",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TreeGrid"
            },
            {
                description:"The leaf (record) that was clicked",
                optional:false,
                name:"leaf",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Index of the row where the click occurred.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:FormItem.getPageTop":{
        ref:"method:FormItem.getPageTop",
        flags:"",
        description:" Returns the drawn page-top coordinate of this form item in pixels.\n",
        name:"getPageTop",
        seeAlso:[
        ],
        returns:{
            description:"page-top coordinate in px",
            type:"int"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "positioning"
        ]
    },
    "attr:SectionItem.sectionHeaderClass":{
        ref:"attr:SectionItem.sectionHeaderClass",
        flags:"IRA",
        description:"Name of the Canvas subclass to use as a header that labels the section and allows\n showing and hiding.  The default class be skinned, or trivial subclasses created to\n allow different appearances for SectionItems in different forms.\n Very advanced developers can use the following information to create custom header\n classes.",
        name:"sectionHeaderClass",
        seeAlso:[
        ],
        valueType:"Classname",
        defaultValue:"\"SectionHeader\"",
        type:"attr",
        definingClass:"class:SectionItem"
    },
    "attr:RichTextEditor.listPropertiesDialog":{
        ref:"attr:RichTextEditor.listPropertiesDialog",
        flags:"R",
        description:"Dialog shown when the ${isc.DocUtils.linkForRef('type:ControlName','\"listProperties\" control')} is pressed.\n Provides options for the user to control formatting of lists.",
        name:"listPropertiesDialog",
        seeAlso:[
        ],
        valueType:"AutoChild ListPropertiesDialog",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "attr:Slider.length":{
        ref:"attr:Slider.length",
        flags:"IRW",
        description:"Used to set slider height if vertical, slider width if horizontal.\n Applied to the slider track, not necessarily the entire widget.\n Overridden by an explicit width/height specification for the widget.",
        name:"length",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"200",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:DetailViewerField.displayField":{
        ref:"attr:DetailViewerField.displayField",
        flags:"IR",
        description:"If <code>displayField</code> is defined for the field then the DetailViewer will\n display the <code>displayField</code> attribute of records instead of the attribute\n given by the ${isc.DocUtils.linkForRef('attr:DetailViewerField.name')} of the field.",
        name:"displayField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:SplitPane.navigationTitle":{
        ref:"attr:SplitPane.navigationTitle",
        flags:"IRW",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')}.",
        name:"navigationTitle",
        setter:[
            "setNavigationTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "classAttr:RPCManager.removeDataPrompt":{
        ref:"classAttr:RPCManager.removeDataPrompt",
        flags:"IRW",
        description:"Default prompt displayed to user while an operation is running to remove data from\n the server.<br>\n Displayed as a result of the ${isc.DocUtils.linkForRef('method:ListGrid.removeSelectedData')} code path.",
        name:"removeDataPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Deleting Record(s)...\"",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataBoundComponent.hiliteIconWidth":{
        ref:"attr:DataBoundComponent.hiliteIconWidth",
        flags:"IRW",
        description:"Width for hilite icons for this component.\n Overrides ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconSize','hiliteIconSize')}.\n Can be overridden at the field level.",
        name:"hiliteIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:Canvas.animateHideEffect":{
        ref:"attr:Canvas.animateHideEffect",
        flags:"IRWA",
        description:"Default animation effect to use if ${isc.DocUtils.linkForRef('method:Canvas.animateHide')} is called without an\n explicit <code>effect</code> parameter",
        name:"animateHideEffect",
        seeAlso:[
        ],
        valueType:"animateShowEffectId | animateShowEffect",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "classAttr:GroupingMessages.byYearTitle":{
        ref:"classAttr:GroupingMessages.byYearTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a date field by year.",
        name:"byYearTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Year\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FormItem.getPageRect":{
        ref:"method:FormItem.getPageRect",
        flags:"",
        description:" Return the page-level coordinates of this object as a 4 element array.\n",
        name:"getPageRect",
        seeAlso:[
        ],
        returns:{
            description:"[left, top, width, height]",
            type:"array"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "positioning",
            "sizing"
        ]
    },
    "attr:TimeItem.textField":{
        ref:"attr:TimeItem.textField",
        flags:"R",
        description:"Text field to hold the entire time in \"type in\" format, if \n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is true.",
        name:"textField",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:CheckboxItem.showUnsetImage":{
        ref:"attr:CheckboxItem.showUnsetImage",
        flags:"IRA",
        description:"Determines what image to display when the value for this checkbox is unset.\n Set to true to display the ${isc.DocUtils.linkForRef('attr:CheckboxItem.unsetImage')} for null values, or false to\n use the ${isc.DocUtils.linkForRef('attr:CheckboxItem.uncheckedImage')} for both null and explicitly unchecked values.\n <P>\n If this attribute is not set, the ${isc.DocUtils.linkForRef('attr:CheckboxItem.unsetImage')} for null values if \n ${isc.DocUtils.linkForRef('attr:CheckboxItem.allowEmptyValue')} is true for this item, otherwise the unchecked\n image will be used.",
        name:"showUnsetImage",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CheckboxItem"
    },
    "attr:TableView.recordNavigationProperty":{
        ref:"attr:TableView.recordNavigationProperty",
        flags:"IRW",
        description:"Boolean property on each record that controls whether navigation controls are shown for\n that record. If property is not defined on the record a navigation icon is shown\n if ${isc.DocUtils.linkForRef('attr:TableView.showNavigation')} is <code>true</code>.",
        name:"recordNavigationProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"_navigate\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "class:HiddenPalette":{
        methods:[
        ],
        ref:"class:HiddenPalette",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools/Palette"
        ],
        attrs:[
        ],
        description:"A Palette with no visible representation that handles programmatic creation of components.",
        name:"HiddenPalette",
        implementsInterfaces:[
            "Palette"
        ],
        seeAlso:[
        ],
        type:"class",
        groups:[
            "devTools"
        ]
    },
    "attr:DataSource.creatorOverrides":{
        ref:"attr:DataSource.creatorOverrides",
        flags:"IR",
        description:"Indicates that declarative security rules are waived for rows that were created by the \n current user.  Practically, this means that when a security check fails, instead of a \n security exception being thrown, we alter the criteria to ensure that the request can \n only return or affect rows that were created by the current authenticated user.  This \n allows you to create security regimes whereby users can see and edit data they created, \n but have access to other users' data forbidden or limited.\n <p>\n In order for this to work, we require two things:<ul>\n <li>The DataSource must specify a field of type \"creator\" - this field type is described \n     on ${isc.DocUtils.linkForRef('type:FieldType','this page')}</li>\n <li>The authentication regime in use must include the idea of a \"current user\".  The \n     authentication provided by the Servlet API is an example of such a regime.</li>\n </ul>\n This setting can be overridden at operationBinding and field level, allowing extremely\n fine-grained control.",
        name:"creatorOverrides",
        seeAlso:[
            {
                ref:"attr:OperationBinding.creatorOverrides",
                description:null
            },
            {
                ref:"attr:DataSourceField.creatorOverrides",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:TileGrid.tileConstructor":{
        ref:"attr:TileGrid.tileConstructor",
        flags:"IRW",
        description:"Classname of a SmartClient component to use for each tile rendered by this TileGrid.  Tiles\n are created by the ${isc.DocUtils.linkForRef('type:AutoChild')} pattern; see ${isc.DocUtils.linkForRef('attr:TileGrid.tile')}.\n <P> \n Any subclass of Canvas is allowed, but typically any custom class will derive from\n ${isc.DocUtils.linkForRef('class:SimpleTile')}.\n <p>\n When using a custom component for tileConstructor, DataBoundComponents that display multiple\n Records (ListGrid, DetailViewer) will have data provided via ${isc.DocUtils.linkForRef('method:ListGrid.setData')}, and\n components that display a single Record (DynamicForm) will have\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')} called on them.\n <p>\n If the component is not a recognized DataBoundComponent subclass, the Record can be\n accessed via \n  <smartclient><code>this.record</code>.</smartclient>\n  <smartgwt><code>this.getAttributeAsRecord(\"record\").</code></smartgwt>",
        name:"tileConstructor",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"\"SimpleTile\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullyCustomTiles')}"
        ],
        definingClass:"class:TileGrid"
    },
    "attr:ListGrid.canMultiGroup":{
        ref:"attr:ListGrid.canMultiGroup",
        flags:"IRW",
        description:"When true, indicates that this ListGrid supports grouping on multiple fields.",
        name:"canMultiGroup",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:ListGrid"
    },
    "method:Tree.isLeaf":{
        ref:"method:Tree.isLeaf",
        flags:"",
        description:"\n Returns true if the passed in node is a leaf.\n\n",
        name:"isLeaf",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the node is a leaf",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:RPCRequest.bypassCache":{
        ref:"attr:RPCRequest.bypassCache",
        flags:"IRWA",
        description:"For xmlHttp transport + httpMethod: \"GET\" only, set to true to force a conditional\n GET request even if the browser thinks it has a current cached response.",
        name:"bypassCache",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:ListGrid.autoFitFieldWidths":{
        ref:"attr:ListGrid.autoFitFieldWidths",
        flags:"IR",
        description:"Enables autofitting of fields to values or titles. This property may be overridden\n on a per-field basis via ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')}.\n <P>\n The ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitWidthApproach')} controls whether fitting is to values, titles\n or both. This property may also be overridden on a per field basis.\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGridField.width','field.width')} is also set on the field, it will be taken as a minimum width.\n ${isc.DocUtils.linkForRef('attr:ListGrid.minFieldWidth')} will also be respected.\n <P>\n By default, the entire available width of the grid will still be used, by allocating any \"extra\"\n space to specific columns - see ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldsFillViewport')} for details on\n controlling this behavior.\n <P>\n Autofitting will be performed:\n <ul>\n  <li> whenever the dataset is completely changed or rows are added or removed\n  <li> whenever a field which is autofitting is changed\n  <li> on a manual call to ${isc.DocUtils.linkForRef('method:ListGrid.autoFitField')} or\n       ${isc.DocUtils.linkForRef('method:ListGrid.autoFitFields')}\n </ul>\n Auto-fitting behavior continues until the user resizes the field manually, at which\n point it stops. The user can also perform a one-time auto-fit of fields via\n the header context menu if ${isc.DocUtils.linkForRef('attr:ListGrid.canAutoFitFields')} is enabled.\n <P>\n When autofitting to column values, ${isc.DocUtils.linkForRef('method:ListGrid.getDefaultFieldWidth')} will be\n called to determine the space required for a field's values. This method\n uses values from the rendered set of rows to calculate the required column width, which means the\n field width may still be smaller than values from non-rendered rows.  See\n ${isc.DocUtils.linkForRef('attr:ListGrid.showAllRecords')} and ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio')}) to control incremental\n rendering of rows.\n <P>\n Note that for <code>icon</code> type fields, the ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitIconFields')}\n property setting may turn on auto-fit-width behavior for specific fields by default,\n even if <code>autoFitFieldWidths</code> is false for the grid as a whole.\n <P>\n Using this feature has a performance penalty roughly comparable to always rendering\n one additional field per field where autofitting is enabled.  Specifically, enabling it\n for all fields would be comparable to <i>both</i> doubling the number of fields\n <i>and</i> disabling ${isc.DocUtils.linkForRef('attr:ListGrid.showAllColumns','horizontal incremental rendering')}.\n In a grid where only half the fields are normally visible and hence only half are\n normally rendered, this would be roughly 4 times slower overall.\n <P>\n This performance penalty is a result of ${isc.DocUtils.linkForRef('method:ListGrid.getDefaultFieldWidth')} having to\n render out the data set offscreen and measure the rendered content - it does not apply\n for cases where this method can return a simple fixed values (as with icon fields).\n <P>\n Which fields are currently autofitting is saved as part of the\n ${isc.DocUtils.linkForRef('method:ListGrid.getViewState','view state')} of the ListGrid.",
        name:"autoFitFieldWidths",
        setter:[
            "setAutoFitFieldWidths"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "classMethod:isc.eval":{
        ref:"classMethod:isc.eval",
        flags:"",
        description:" Evaluate a string of script and return the result. Falls through to\n ${isc.DocUtils.linkForRef('classMethod:Class.evaluate','Class.evaluate()')}\n\n",
        name:"eval",
        seeAlso:[
        ],
        params:[
            {
                description:"Expression to evaluate",
                optional:false,
                name:"expression",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"Result of evaluating the expression passed in",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "classAttr:Operators.endsWithFieldTitle":{
        ref:"classAttr:Operators.endsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"endsWithField\" operator",
        name:"endsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"ends with (match case) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "class:DSRequest":{
        methods:[
        ],
        ref:"class:DSRequest",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:DSRequest.useStrictJSON",
            "attr:DSRequest.exportRawValues",
            "attr:DSRequest.dataSource",
            "attr:DSRequest.operationType",
            "attr:DSRequest.data",
            "attr:DSRequest.callback",
            "attr:DSRequest.startRow",
            "attr:DSRequest.endRow",
            "attr:DSRequest.sortBy",
            "attr:DSRequest.summaryFunctions",
            "attr:DSRequest.groupBy",
            "attr:DSRequest.outputs",
            "attr:DSRequest.additionalOutputs",
            "attr:DSRequest.generateRelatedUpdates",
            "attr:DSRequest.textMatchStyle",
            "attr:DSRequest.oldValues",
            "attr:DSRequest.componentId",
            "attr:DSRequest.operationId",
            "attr:DSRequest.requestId",
            "attr:DSRequest.clientContext",
            "attr:DSRequest.parentNode",
            "attr:DSRequest.resultTree",
            "attr:DSRequest.keepParentsOnFilter",
            "attr:DSRequest.resultSet",
            "attr:DSRequest.shouldUseCache",
            "attr:DSRequest.useFlatFields",
            "attr:DSRequest.useFlatHeaderFields",
            "attr:DSRequest.headerData",
            "attr:DSRequest.exportResults",
            "attr:DSRequest.exportAs",
            "attr:DSRequest.exportFilename",
            "attr:DSRequest.exportImageFormat",
            "attr:DSRequest.exportImageQuality",
            "attr:DSRequest.exportPath",
            "attr:DSRequest.exportToFilesystem",
            "attr:DSRequest.exportToClient",
            "attr:DSRequest.exportTitleSeparatorChar",
            "attr:DSRequest.exportDisplay",
            "attr:DSRequest.lineBreakStyle",
            "attr:DSRequest.exportDelimiter",
            "attr:DSRequest.exportShowHeaderSpanTitles",
            "attr:DSRequest.exportSpanTitleSeparator",
            "attr:DSRequest.exportFields",
            "attr:DSRequest.exportHeader",
            "attr:DSRequest.exportHeaderless",
            "attr:DSRequest.exportFooter",
            "attr:DSRequest.exportData",
            "attr:DSRequest.exportValueFields",
            "attr:DSRequest.exportDatesAsFormattedString",
            "attr:DSRequest.validationMode",
            "attr:DSRequest.pendingAdd",
            "attr:DSRequest.streamResults",
            "attr:DSRequest.progressiveLoading"
        ],
        description:"Request sent to the server to initiate a \n ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource operation')}.  All properties which are legal on\n ${isc.DocUtils.linkForRef('class:RPCRequest')} are legal, in addition to the properties listed here.\n <P>",
        name:"DSRequest",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        type:"class",
        inheritsFrom:"RPCRequest"
    },
    "method:FilterBuilder.getSelectedClauses":{
        ref:"method:FilterBuilder.getSelectedClauses",
        flags:"",
        description:" Returns the list of this FilterBuilder's FilterClauses that are currently selected.  A \n clause is \"selected\" if the user has checked the checkbox next to it; therefore, this \n method always returns an empty list unless the \n ${isc.DocUtils.linkForRef('attr:FilterBuilder.showSelectionCheckbox','showSelectionCheckbox')} property is set.  This method is only \n applicable where ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')} is \"inline\" (because that is the only \n appearance that supports <code>showSelectionCheckbox</code>)\n\n",
        name:"getSelectedClauses",
        seeAlso:[
        ],
        returns:{
            description:"The list of selected clauses",
            type:"Array of FilterClause"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:DetailViewer.fields":{
        ref:"attr:DetailViewer.fields",
        flags:"IRW",
        description:"An array of field objects, specifying the order and type of fields to display in this\n DetailViewer.  In DetailViewers, the fields specify rows.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of DetailViewerField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer"
    },
    "method:RadioGroupItem.setValueDisabled":{
        ref:"method:RadioGroupItem.setValueDisabled",
        flags:"",
        description:" Disable or Enable a specific option within this radioGroup\n",
        name:"setValueDisabled",
        seeAlso:[
        ],
        params:[
            {
                description:"value of option to disable",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"true to disable the option, false to enable it",
                optional:false,
                name:"disabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:RadioGroupItem"
    },
    "method:ListGrid.getSummaryFieldValue":{
        ref:"method:ListGrid.getSummaryFieldValue",
        flags:"",
        description:" Get the computed value of a ${isc.DocUtils.linkForRef('attr:ListGrid.canAddSummaryFields','summary field')}.\n",
        name:"getSummaryFieldValue",
        seeAlso:[
        ],
        params:[
            {
                description:"field that has a summary format",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"record to use to compute formula value",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"formula result",
            type:"String"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:CubeGrid.facetValueReordered":{
        ref:"method:CubeGrid.facetValueReordered",
        flags:"",
        description:" \n Notification fired when a facet or facetValueGroup is reordered\n\n",
        name:"facetValueReordered",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValueGroupId or facetId",
                optional:false,
                name:"groupId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "method:ValuesManager.clearValue":{
        ref:"method:ValuesManager.clearValue",
        flags:"",
        description:" Clear the value for some field.\n",
        name:"clearValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Which field to set the value for",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:DataBoundComponent.titleField":{
        ref:"attr:DataBoundComponent.titleField",
        flags:"IR",
        getter:[
            "getTitleField"
        ],
        description:"Best field to use for a user-visible title for an individual record from this\n component.\n <P>\n This attribute has the same function as ${isc.DocUtils.linkForRef('attr:DataSource.iconField')} but can be\n set for a component with no dataSource, or can be used to override the dataSource setting.",
        name:"titleField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:RPCRequest.downloadResult":{
        ref:"attr:RPCRequest.downloadResult",
        flags:"IRWA",
        description:"If enabled, causes the RPCRequest to download the requested resource as a file, either \n showing the browser's Save dialog or displaying the file-content in \n ${isc.DocUtils.linkForRef('attr:RPCRequest.downloadToNewWindow','a new browser window')}.\n <P>\n Setting this attribute to true means that no callback will be fired and implies that the \n request will silently use ${isc.DocUtils.linkForRef('attr:RPCRequest.transport','transport')}: \"hiddenFrame\".",
        name:"downloadResult",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:ButtonItem.readOnlyDisplay":{
        ref:"attr:ButtonItem.readOnlyDisplay",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} is set to <code>false</code>, how should this item\n be displayed to the user?\n <P>\n The default value for ButtonItems is <code>disabled</code> - note that \n <code>readOnly</code> and <code>static</code> appearances have no effect for ButtonItems",
        name:"readOnlyDisplay",
        seeAlso:[
        ],
        valueType:"ReadOnlyDisplayAppearance",
        defaultValue:"\"disabled\"",
        type:"attr",
        definingClass:"class:ButtonItem"
    },
    "attr:LinkItem.target":{
        ref:"attr:LinkItem.target",
        flags:"IRW",
        description:"By default, clicking a link rendered by this item opens it in a new browser window.  You \n can alter this behavior by setting this property.  The value of this property will be \n passed as the value to the <code>target</code> attribute of the anchor tag used to render \n the link.\n <P>\n If you set linkItem.target to \"javascript\", the default behaviour is to catch and consume\n mouse-clicks that would result in the link being followed.  Instead, the\n ${isc.DocUtils.linkForRef('method:FormItem.click')} event is fired.",
        name:"target",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"_blank\"",
        type:"attr",
        definingClass:"class:LinkItem"
    },
    "attr:ListGrid.canAcceptDroppedRecords":{
        ref:"attr:ListGrid.canAcceptDroppedRecords",
        flags:"IRW",
        description:"Indicates whether records can be dropped into this listGrid.",
        name:"canAcceptDroppedRecords",
        seeAlso:[
            {
                ref:"attr:ListGridRecord.canDrag",
                description:null
            },
            {
                ref:"attr:ListGridRecord.canAcceptDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListMove')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dragging"
        ]
    },
    "attr:FacetChart.canZoom":{
        ref:"attr:FacetChart.canZoom",
        flags:"IR",
        description:"Enables \"zooming\" on the X axis, specifically, only a portion of the overall dataset is shown\n in the main chart, and a ${isc.DocUtils.linkForRef('attr:FacetChart.zoomChart','second smaller chart')} appears with slider controls\n allowing a range to be selected for display in the main chart.\n <P>\n A ${isc.DocUtils.linkForRef('attr:FacetChart.labelCollapseMode','labelCollapseMode')} is automatically enabled if\n unset and is based on the type of the first non-null data value.",
        name:"canZoom",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ComboBoxItem.showPickListOnKeypress":{
        ref:"attr:ComboBoxItem.showPickListOnKeypress",
        flags:"IRW",
        description:"Should the list of options be displayed whenever the user types into the \n the combo-box textArea, or only when the user clicks on the pick button or uses the \n explicit <code>Alt+Arrow Down</code> key combination?",
        name:"showPickListOnKeypress",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:TabSet.pickerButtonHSrc":{
        ref:"attr:TabSet.pickerButtonHSrc",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker')} is true, and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricPickerButton')} is \n set to true, this property governs the base URL for the picker\n button image, when displayed in a horizontal tab-bar [IE ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')} is\n set to <code>\"top\"</code> or <code>\"bottom\"</code>].\n <P>\n Note that if <code>symmetricPickerButton</code> is false, the ${isc.DocUtils.linkForRef('attr:TabSet.pickerButtonSrc')}\n property will be used instead.\n <P>\n This base URL will have a suffix of <code>\"Down\"</code> appended when the user holds the\n mouse down over the button, and <code>\"Disabled\"</code> if the tabset as a whole is \n disabled.",
        name:"pickerButtonHSrc",
        seeAlso:[
            {
                ref:"attr:TabSet.symmetricPickerButton",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]hpicker.gif\"",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "method:Array.contains":{
        ref:"method:Array.contains",
        flags:"",
        description:" Return if this list contains the specified object.\n <P>\n If pos is specified, starts looking after that position.\n\n",
        name:"contains",
        seeAlso:[
        ],
        params:[
            {
                description:"item to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"optional position in the list to look after",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true == item was found, false == not found",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:FilterBuilder.modeSwitcherSimpleMessage":{
        ref:"attr:FilterBuilder.modeSwitcherSimpleMessage",
        flags:"IR",
        description:"Title for the \"Simple Mode..\" mode switcher label (only applicable to the \"bracket\" appearance).",
        name:"modeSwitcherSimpleMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Simple Mode..\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:NavigationBar.setTitle":{
        ref:"method:NavigationBar.setTitle",
        flags:"",
        description:" Updates the title for this <code>NavigationBar</code>.\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title HTML.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "method:Layout.addMember":{
        ref:"method:Layout.addMember",
        flags:"",
        description:" Add a canvas to the layout, optionally at a specific position.\n <P>\n Depending on the layout policy, adding a new member may cause existing members to\n resize.\n <P>\n When adding a member to a drawn Layout, the layout will not immediately reflow, that is, the\n member will not immediately draw and existing members will not immediately resize.  This is \n to allow multiple new members to be added and multiple manual resizes to take place without\n requiring layout members to redraw and resize multiple times.  \n <P>\n To force an immediate reflow in order to, for example, find out what size a newly added\n member has been assigned, call ${isc.DocUtils.linkForRef('method:Layout.reflowNow')}.\n\n",
        name:"addMember",
        seeAlso:[
            {
                ref:"method:Layout.addMembers",
                description:null
            }
        ],
        params:[
            {
                description:"the canvas object to be added to the layout",
                optional:false,
                name:"newMember",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"the position in the layout to place newMember (starts with 0);                            if omitted, it will be added at the last position",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:ResultTree.rootNode":{
        ref:"attr:ResultTree.rootNode",
        flags:"IR",
        description:"This attribute may be used to specify a root value for the parentIdField of this resultTree.\n This overrides the default ${isc.DocUtils.linkForRef('attr:DataSourceField.rootValue')} for this tree, allowing\n a component to navigate a tree starting at a specific node.\n <P>\n May be overridden via ${isc.DocUtils.linkForRef('attr:TreeGrid.treeRootValue')} for ResultTrees generated by a TreeGrid\n component.",
        name:"rootNode",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "attr:ButtonItem.showTitle":{
        ref:"attr:ButtonItem.showTitle",
        flags:"IRW",
        description:"Buttons do not show a title by default.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ButtonItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DrawGroup.drawItems":{
        ref:"attr:DrawGroup.drawItems",
        flags:"IR",
        description:"Initial list of DrawItems for this DrawGroup.\n <P>\n DrawItems can be added to a DrawGroup after initialization by setting\n ${isc.DocUtils.linkForRef('attr:DrawItem.drawGroup')}.",
        name:"drawItems",
        seeAlso:[
        ],
        valueType:"Array of DrawItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawGroup"
    },
    "type:FireStyle":{
        ref:"type:FireStyle",
        values:[
            {
                description:"Call the registered handler any time the event occurs",
                value:"null"
            },
            {
                description:"Call the registered handler the first time the event                               occurs, then unregister the handler as though\n                               ${isc.DocUtils.linkForRef('classMethod:Page.clearEvent')} had been called",
                value:"Page.FIRE_ONCE"
            }
        ],
        description:"Flags to set automatic removal of events from the page event registry.",
        name:"FireStyle",
        seeAlso:[
            {
                ref:"classMethod:Page.setEvent",
                description:null
            }
        ],
        type:"type",
        groups:[
            "EventRegistry"
        ]
    },
    "method:Canvas.updateEditNode":{
        ref:"method:Canvas.updateEditNode",
        flags:"",
        description:" A callback invoked for each ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObject')} by\n ${isc.DocUtils.linkForRef('interface:EditContext')} when the EditContext is being serialized. The liveObject\n may make any updates needed to the ${isc.DocUtils.linkForRef('object:EditNode')} (or the ${isc.DocUtils.linkForRef('interface:EditContext')} as\n a whole) in order to be able to later recreate the objects.\n",
        name:"updateEditNode",
        seeAlso:[
            {
                ref:"method:EditContext.serializeAllEditNodes",
                description:null
            },
            {
                ref:"method:EditContext.serializeEditNodes",
                description:null
            }
        ],
        params:[
            {
                description:"the EditContext",
                optional:false,
                name:"editContext",
                defaultValue:null,
                type:"EditContext"
            },
            {
                description:"the EditNode",
                optional:false,
                name:"editNode",
                defaultValue:null,
                type:"EditNode"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "method:FormItem.getWidth":{
        ref:"method:FormItem.getWidth",
        flags:"A",
        description:"\tOutput the width for this element. Note this returns the specified width for the \n  element, which may be \"*\" or a percentage value. Use 'getVisibleWidth()' to get the\n  drawn width in pixels.\n",
        name:"getWidth",
        seeAlso:[
        ],
        returns:{
            description:"width of the form element",
            type:"int | String"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "sizing"
        ]
    },
    "method:ColorPicker.setHue":{
        ref:"method:ColorPicker.setHue",
        flags:"",
        description:" Sets the Hue of the selected color\n",
        name:"setHue",
        seeAlso:[
            {
                ref:"method:ColorPicker.getHue",
                description:null
            }
        ],
        params:[
            {
                description:"An integer between 0 and 239",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:HeaderItem.canSelectText":{
        ref:"attr:HeaderItem.canSelectText",
        flags:"IRW",
        description:"Should the user be able to select the text in this item?",
        name:"canSelectText",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:HeaderItem"
    },
    "attr:TreeGrid.initialData":{
        ref:"attr:TreeGrid.initialData",
        flags:"IRA",
        description:"You can specify the initial set of data for a databound TreeGrid using this property.\n The value of this attribute should be a list of <code>parentId</code>-linked\n ${isc.DocUtils.linkForRef('object:TreeNode')}s in a format equivalent to that documented on ${isc.DocUtils.linkForRef('attr:Tree.data')} or, for\n TreeGrids with ${isc.DocUtils.linkForRef('attr:TreeGrid.dataFetchMode','dataFetchMode')} set to\n ${isc.DocUtils.linkForRef('type:FetchMode','\"paged\"')}, on ${isc.DocUtils.linkForRef('attr:ResultTree.data')}.\n <P>\n If you create a standalone ${isc.DocUtils.linkForRef('class:Tree')} or ${isc.DocUtils.linkForRef('class:ResultTree')} as the\n TreeGrid's ${isc.DocUtils.linkForRef('attr:TreeGrid.data','data')} then you may equivalently specify this initial set\n of tree nodes in that tree's ${isc.DocUtils.linkForRef('attr:Tree.data','data')} property.",
        name:"initialData",
        seeAlso:[
            {
                ref:"object:TreeNode",
                description:null
            },
            {
                ref:"attr:Tree.data",
                description:null
            },
            {
                ref:"attr:ResultTree.data",
                description:null
            }
        ],
        valueType:"List of TreeNode",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('initialData')}"
        ],
        definingClass:"class:TreeGrid"
    },
    "attr:ServerObject.bean":{
        ref:"attr:ServerObject.bean",
        flags:"IR",
        description:"For use when ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')} is <code>\"spring\"</code>, id of the bean to ask\n Spring to create.",
        name:"bean",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "attr:TabSet.animateTabScrolling":{
        ref:"attr:TabSet.animateTabScrolling",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showTabScroller')} is true, should tabs be scrolled into view via an \n animation when the user interacts with the scroller buttons?",
        name:"animateTabScrolling",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "attr:TabSet.defaultTabHeight":{
        ref:"attr:TabSet.defaultTabHeight",
        flags:"IR",
        description:"If set, is passed as \"height\" to all tabs when ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')} is set to \n <code>\"left\"</code> or <code>\"right\"</code>. \n <P>\n If unset, height will be picked up from\n the Tab constructor class defaults. Note that tabs expand to fit their content so\n this height acts as a minimum. May be customized by individual\n ${isc.DocUtils.linkForRef('group:skinning','skins')}.",
        name:"defaultTabHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:ServerObject.className":{
        ref:"attr:ServerObject.className",
        flags:"IR",
        description:"Specifies the fully-qualified class name that provides the server-side endpoint of the DMI\n (${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')}:\"new\") or the class name of the factory that produces the\n DMI instance (${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')}:\"factory\").\n <p>\n This is one of the values that you need to pass to ${isc.DocUtils.linkForRef('classMethod:DMI.call')} to invoke the DMI from\n the client.\n <p>\n The value of this attribute is used only for <code>\"new\"</code> and <code>\"factory\"</code>\n values of ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')}.",
        name:"className",
        seeAlso:[
            {
                ref:"attr:ServerObject.lookupStyle",
                description:null
            },
            {
                ref:"attr:ServerObject.ID",
                description:null
            },
            {
                ref:"classMethod:DMI.call",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "method:CubeGrid.setFacetTitleAlign":{
        ref:"method:CubeGrid.setFacetTitleAlign",
        flags:"",
        description:" Set the align of a facet title (appears in facet label).\n\n",
        name:"setFacetTitleAlign",
        seeAlso:[
        ],
        params:[
            {
                description:"facet to update",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"new alignment for facet title",
                optional:false,
                name:"align",
                defaultValue:null,
                type:"Alignment"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "method:ListGrid.setGroupByFieldSummaries":{
        ref:"method:ListGrid.setGroupByFieldSummaries",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.groupByFieldSummaries')} attribute\n",
        name:"setGroupByFieldSummaries",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for this.groupByFieldSummaries",
                optional:false,
                name:"groupByFieldSummaries",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DataBoundComponent.autoFetchData":{
        ref:"attr:DataBoundComponent.autoFetchData",
        flags:"IR",
        description:"If true, when this component is first drawn, automatically call <code>this.fetchData()</code>.\n Criteria for this fetch may be picked up from ${isc.DocUtils.linkForRef('attr:DataBoundComponent.initialCriteria')}, and textMatchStyle may\n be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}.\n <P>\n <span style='color:red'>NOTE:</span> if <code>autoFetchData</code> is set, calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} before draw will cause two requests to be issued, one from the manual\n call to fetchData() and one from the autoFetchData setting.  The second request will use\n only ${isc.DocUtils.linkForRef('attr:DataBoundComponent.initialCriteria')} and not any other criteria or settings from the first request.\n Generally, turn off autoFetchData if you are going to manually call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} at any time.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:RichTextItem.moveFocusOnTab":{
        ref:"attr:RichTextItem.moveFocusOnTab",
        flags:"IRW",
        description:"If the user presses the \"Tab\" key, should focus be taken from this editor?\n If set to <code>false</code> a \"Tab\" keypress will cause a Tab character\n to be inserted into the text, and focus will be left in the edit area.",
        name:"moveFocusOnTab",
        setter:[
            "setMoveFocusOnTab"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RichTextItem"
    },
    "attr:Facet.borderBefore":{
        ref:"attr:Facet.borderBefore",
        flags:"IR",
        description:"CSS line style to apply as a border before this facet, eg \"1px dashed blue\"\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"borderBefore",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:ListGrid.headerTitleStyle":{
        ref:"attr:ListGrid.headerTitleStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:StretchImgButton.titleStyle')} to apply to the buttons in the header, and the sorter,\n for this ListGrid.\n Note that this will typically only have an effect if\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonConstructor')} is set to ${isc.DocUtils.linkForRef('class:StretchImgButton')} or a subclass\n thereof.",
        name:"headerTitleStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "attr:MiniDateRangeItem.textBoxStyle":{
        ref:"attr:MiniDateRangeItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's text box element.\n <P>\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special\n skinning considerations.",
        name:"textBoxStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"textItem\"",
        type:"attr",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSourceField.length":{
        ref:"attr:DataSourceField.length",
        flags:"IR",
        description:"Maximum number of characters allowed.  Applicable only to fields of text type.\n <P>\n <b>NOTE:</b> For DataSources of type \"sql\", this property has a bearing on the type of \n column we use when the underlying table is created by a DataSource \n ${isc.DocUtils.linkForRef('group:sqlDataSource','import')} in the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')}.  Below \n a certain length (which is database-specific, see below), we use standard <code>VARCHAR</code>\n columns; above that length, we use an alternate strategy (again, database-specific).  For \n these long fields, we sometimes also generate different SQL for \"update\" and \"add\" \n operations, using JDBC \"?\" replacement parameters rather than embedding values directly in \n the generated SQL; whether or not this is done depends entirely on what the underlying \n database product and/or JDBC driver will allow.\n <P><br>\n <b>Table of field length limits for supported databases:</b><p>\n <table style=\"font-size:10px;text-align:center;border:1px solid black;\">\n <tr><td style=\"color:white;background-color:black;\"><b>Database product</b></td>\n     <td style=\"color:white;background-color:black;\"><b>VARCHAR limit *</b></td>\n     <td style=\"color:white;background-color:black;\"><b>Type used above limit</b></td></tr>\n <tr><td>HSQLDB</td><td>None</td><td>-</td></tr>\n <tr><td>IBM DB2</td><td>4000</td><td>CLOB</td></tr>\n <tr><td>Firebird</td><td>32767</td><td>BLOB with subtype 1</td></tr>\n <tr><td>Informix</td><td>255 / 32739</td><td>LVARCHAR / TEXT ** </td></tr>\n <tr><td> Microsoft SQL Server </td><td>8000</td><td>TEXT</td></tr>\n <tr><td>MySQL</td><td> 255 / 65535 / 16M </td><td> TEXT / MEDIUMTEXT / LONGTEXT *** </td></tr>\n <tr><td>Oracle</td><td>4000</td><td>CLOB</td></tr>\n <tr><td>PostgreSQL</td><td>4000</td><td>TEXT</td></tr>\n </table><br>\n <b>*</b> The \"VARCHAR limit\" referred to here is a limit used by the SmartClient Server; it\n is not necessarily imposed by the database.  For example, DB2's VARCHAR limit is not 4000\n characters; it actually varies from about 4K to about 32K, depending on how the server has \n been configured.<p>\n <b>**</b> Informix has a limit of just 255 characters for VARCHAR, but has a native LVARCHAR\n type which supports nearly 32K characters without needing to fall back on long datatypes. \n Therefore, with that one product, we have two thresholds for a change in storage type.<p>\n <b>***</b> MySQL has a limit of 255 characters for VARCHAR, 65,535 characters for TEXT and \n 16,777,215 for MEDIUMTEXT; therefore, with that one product, we have three thresholds for a \n change in storage type.",
        name:"length",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('longText')}"
        ],
        definingClass:"class:DataSourceField",
        groups:[
            "dataType"
        ]
    },
    "attr:Facet.values":{
        ref:"attr:Facet.values",
        flags:"IRW",
        description:"Array of facetValue definitions.",
        name:"values",
        seeAlso:[
            {
                ref:"class:FacetValue",
                description:null
            }
        ],
        valueType:"Array of FacetValue",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:Canvas.componentMaskDefaults":{
        ref:"attr:Canvas.componentMaskDefaults",
        flags:"IR",
        description:"Defaults for the ${isc.DocUtils.linkForRef('attr:Canvas.componentMask')} autoChild.\n Default properties include ${isc.DocUtils.linkForRef('attr:Canvas.backgroundColor')} being set to <code>\"black\"</code> and\n ${isc.DocUtils.linkForRef('attr:Canvas.opacity')} being set to <code>20</code>.",
        name:"componentMaskDefaults",
        seeAlso:[
        ],
        valueType:"Canvas Properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:ImgSectionHeader.background":{
        ref:"attr:ImgSectionHeader.background",
        flags:"R",
        description:"Background of the section header, based on a ${isc.DocUtils.linkForRef('class:StretchImg')}.",
        name:"background",
        seeAlso:[
        ],
        valueType:"AutoChild StretchImg",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSectionHeader"
    },
    "attr:DetailViewer.blockStyle":{
        ref:"attr:DetailViewer.blockStyle",
        flags:"IRW",
        description:"CSS style for each block (one record's worth of data).",
        name:"blockStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"detailBlock\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "attr:MiniDateRangeItem.toDate":{
        ref:"attr:MiniDateRangeItem.toDate",
        flags:"IRW",
        description:"Initial value for the \"to\" date.",
        name:"toDate",
        setter:[
            "setFromDate"
        ],
        seeAlso:[
        ],
        valueType:"Date or RelativeDateString or TimeUnit",
        defaultValue:"today",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "classMethod:isc.setAutoDraw":{
        ref:"classMethod:isc.setAutoDraw",
        flags:"",
        description:" Set the global default setting for ${isc.DocUtils.linkForRef('attr:Canvas.autoDraw')}.\n <p>\n After calling <code>isc.setAutoDraw()</code>, any newly created Canvas which is not given an\n explicit setting for ${isc.DocUtils.linkForRef('attr:Canvas.autoDraw','autoDraw')} will follow the new default setting.\n <P>\n autoDraw:false is the recommended default setting for most applications since it ensures\n that extra draws will not occur when developers inadvertently omit the autoDraw:false\n setting on child components.\n\n",
        name:"setAutoDraw",
        seeAlso:[
            {
                ref:"attr:Canvas.autoDraw",
                description:null
            }
        ],
        params:[
            {
                description:"whether autoDraw should be enabled or disabled.  Defaults to true.",
                optional:true,
                name:"enable",
                defaultValue:null,
                type:null
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "autoDraw"
        ]
    },
    "attr:OperationBinding.criteria":{
        ref:"attr:OperationBinding.criteria",
        flags:"IR",
        description:"<b>Elements of this feature are only available with Power or better licenses.</b> See \n <a href=http://smartclient.com/product>smartclient.com/product</a> for details.\n <p>\n A list of ${isc.DocUtils.linkForRef('object:DSRequestModifier')}s that will be used to modify the criteria of each \n ${isc.DocUtils.linkForRef('class:DSRequest')} that uses this operationBinding.  Note that the criteria elements are \n applied to DSRequest criteria as follows:\n <ul>\n <li><b>Simple criteria:</b> The field and value are just applied as an extra key/value \n pair in the criteria map, as long as the ${isc.DocUtils.linkForRef('attr:DSRequestModifier.operator','operator')} \n attribute is left unset, or is set to \"equals\".  For any other setting of \n <code>operator</code>, the criteria is first converted to the equivalent AdvancedCriteria \n and then processed as described below</li>\n <li><b>AdvancedCriteria:</b> If the topmost operator is \"and\", we add the new criterion \n as an additional criterion directly in the existing list.  Otherwise, we create a new \n top-level AdvancedCriteria with an operator of \"and\".  This is then set to have two \n elements in its criteria: the previous top-level criteria and the new criterion.</li>\n </ul>\n The effect of this is to apply any criteria specifed here as additional constraints on top\n of what the user has specified, and of course, the user is unable to affect this.  Thus, \n this is a suitable and convenient place to enforce rules such as \"Users can only ever see\n their own records\". \n <p>Below is an example of the XML as it should be defined in your ds.xml, datasource \n definitions. <code>\n &lt;operationBindings&gt;\n   &lt;operationBinding operationType=\"fetch\" operationId=\"...\"&gt;\n     &lt;criteria fieldName=\"USER_ROLE\" value=\"ADMIN\" operator=\"equals\" /&gt;\n   &lt;/operationBinding&gt;\n &lt;/operationBindings&gt;</code>",
        name:"criteria",
        seeAlso:[
            {
                ref:"attr:OperationBinding.values",
                description:null
            }
        ],
        valueType:"Array of DSRequestModifier",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "attr:FormItem.hoverVAlign":{
        ref:"attr:FormItem.hoverVAlign",
        flags:"IRW",
        description:"Vertical text alignment  for text displayed in this item's hover canvas, if shown.",
        name:"hoverVAlign",
        seeAlso:[
            {
                ref:"attr:DynamicForm.itemHoverVAlign",
                description:null
            }
        ],
        valueType:"VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:DetailViewer.dataFetchMode":{
        ref:"attr:DetailViewer.dataFetchMode",
        flags:"IRW",
        description:"DetailViewers do not yet support paging, and will fetch and render all available\n records.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"basic\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "databinding"
        ]
    },
    "attr:DataSource.jsonPrefix":{
        ref:"attr:DataSource.jsonPrefix",
        flags:"IRA",
        description:"Allows you to specify an arbitrary prefix string to apply to all json format responses \n sent from the server to this application.\n <P>\n The inclusion of such a prefix ensures your code is not directly executable outside of\n your application, as a preventative measure against\n <a href='http://www.google.com/search?q=javascript+hijacking' target='_blank'>javascript hijacking</a>.\n <P>\n Only applies to responses formatted as json objects. Does not apply to responses returned\n via scriptInclude type transport.<br>\n Note: If the prefix / suffix served by your backend is not a constant, you can use \n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataFormat','dataFormat:\"custom\"')} instead and explicitly parse\n the prefix out as part of ${isc.DocUtils.linkForRef('method:DataSource.transformResponse','transformResponse()')}.",
        name:"jsonPrefix",
        seeAlso:[
            {
                ref:"attr:OperationBinding.dataFormat",
                description:null
            },
            {
                ref:"attr:OperationBinding.dataTransport",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "method:DrawItem.setMoveKnobOffset":{
        ref:"method:DrawItem.setMoveKnobOffset",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:DrawItem.moveKnobOffset')}.\n",
        name:"setMoveKnobOffset",
        seeAlso:[
        ],
        params:[
            {
                description:"the new move knob offset. This is a 2-element array of [left offset, top offset]. If null, then <smartclient><code>[0,0]</code></smartclient>\n <smartgwt><code>new int[] {0, 0}</code></smartgwt> is assumed.",
                optional:true,
                name:"newMoveKnobOffset",
                defaultValue:null,
                type:"Array[] of int"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawItem"
    },
    "method:Canvas.dragRepositionMove":{
        ref:"method:Canvas.dragRepositionMove",
        flags:"A",
        description:"\n Executed every time the mouse moves while drag-repositioning. If this method\n does not return false, the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} (or outline if\n ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')} is set to \"outline\") will automatically be moved as appropriate\n whenever the mouse moves.\n\n",
        name:"dragRepositionMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to suppress auto-move of the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} or outline.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:TextItem.selectOnClick":{
        ref:"attr:TextItem.selectOnClick",
        flags:"IRW",
        description:"Allows the ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnClick','selectOnClick')} behavior to be configured on a\n per-FormItem basis.  Normally all items in a form default to the value of\n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnClick')}.",
        name:"selectOnClick",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "focus"
        ]
    },
    "attr:StretchImgButton.align":{
        ref:"attr:StretchImgButton.align",
        flags:"IRW",
        description:"Horizontal alignment of this component's title.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.getCurrentExpansionComponent":{
        ref:"method:ListGrid.getCurrentExpansionComponent",
        flags:"",
        description:" Returns the expansion component derived from ${isc.DocUtils.linkForRef('method:ListGrid.getExpansionComponent')}\n currently visible in some record, or null if the specified record is not showing\n an expansion component.\n\n",
        name:"getCurrentExpansionComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum or record to get the expansionComponent for",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Integer | ListGridRecord"
            }
        ],
        returns:{
            description:"the currently visible expansion component for the expanded row.",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:ListGridField.showFocusedIcon":{
        ref:"attr:ListGridField.showFocusedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n receives focus.\n <P>\n If ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true, the <code>\"Over\"</code> icon will be\n displayed when the canvas has focus, otherwise a separate <code>\"Focused\"</code> icon\n will be displayed",
        name:"showFocusedIcon",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "buttonIcon"
        ]
    },
    "group:binaryFields":{
        ref:"group:binaryFields",
        title:"Binary Fields",
        refs:[
        ],
        description:"When using the SmartClient Server framework (included in Pro Edition or better) you can\n declare a field of type \"binary\", or certain specific binary types such as \"imageFile\".\n <P>\n UI components such as ${isc.DocUtils.linkForRef('class:ListGrid')} and ${isc.DocUtils.linkForRef('class:FileItem')} will offer UIs to download,\n view and upload files stored in a binary field.  ${isc.DocUtils.linkForRef('method:DataSource.downloadFile')} and\n ${isc.DocUtils.linkForRef('method:DataSource.viewFile')} can be used to programmatically trigger download/viewing as\n well.  Note that these automatic features, and components like ${isc.DocUtils.linkForRef('class:TileGrid')} \n that make use of them, only work correctly for DataSources that declare a valid \n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} field.\n <P>\n If you would like to obtain a URL to the binary data (for example to use as\n ${isc.DocUtils.linkForRef('attr:Img.src')}), you can use the ${isc.DocUtils.linkForRef('method:DataSource.getFileURL')} API.\n <P>\n As covered under the ${isc.DocUtils.linkForRef('type:FieldType','\"binary\" field type description')}, binary fields\n imply 3 other related metadata fields named after the binary field, which store the file\n size, file name and date of creation.\n <P>\n When using one of the built-in server DataSource types (SQL, JPA, Hibernate), these\n metadata fields, UI controls and APIs will work with no special effort - just declare a\n binary field.  For JPA or Hibernate the Java getter/setter for the binary field must\n be of type byte[] or Byte[] (this is imposed by the ORM system); if you \n are using the SQL DataSource, no additional declarations are required unless you are\n using ${isc.DocUtils.linkForRef('attr:DataSource.beanClassName')}, in which case you must add getters/setters\n of type InputStream, or one of the types listed for JPA/Hibernate.\n <P>\n For metadata fields like the file size, providing storage for the metadata fields (SQL\n columns or JPA/Hibernate getter/setters) is optional but highly recommended.  If you\n don't want a particular metadata field, you can declare a &lt;field&gt; for it\n explicitly and set ignore=\"true\".  <b>Note:</b> If you decide not to store the \n \"_filename\" metadata element, the built-in binary UI controls in components like ListGrid,\n mentioned above, do not work properly.  In the absence of a filename metadata field, \n it is necessary to set ${isc.DocUtils.linkForRef('attr:DataSourceField.mimeType','mime-type')} on the binary field - \n otherwise, we can't make a reasonable guess at a MIME type, so the browser tends \n not to know what to do with the downloaded content. Omiting the file size metadata will \n simply cause the browser not to show a progress dialog during download, or not to show \n an accurate one.\n <P>\n <b>Downloading from binary fields</b>\n <P>\n If writing a custom DataSource or writing a ${isc.DocUtils.linkForRef('class:DMI')}, implement the \"downloadFile\" and\n \"viewFile\" operationTypes, and return data for a single Record which has binary data \n as the field value for the binary field - accepted types are InputStream, byte[],\n java.sql.Blob or String.\n <P>\n For example, you could return a Java bean with a getter method which returns a byte[],\n and which is named after the binaryField using Java Beans conventions:\n <code>get<i>FieldName</i>()</code>.  Or, return a Java Map where a byte[] is\n stored under a key named the same as the binary field's name.\n <P>\n As discussed under ${isc.DocUtils.linkForRef('type:FieldType')}, additional metadata fields are implied when\n you declare a binary field.  Returning a value for the \"_filesize\" field will allow the\n browser to show progress of the download.  Returning a value for the \"_filename\" field\n will cause the downloaded file to be named after the \"_filename\" value.\n <P>\n Refer to ${isc.DocUtils.linkForExampleId('FScustomBinaryField', 'this example')} to see how this case works.\n <P>\n <b>Uploading to binary fields</b>\n <P>\n Again with the built-in server DataSource types, no special effort is required.\n <P>\n For a custom DataSource, an upload from a ${isc.DocUtils.linkForRef('class:FileItem')} control (the default upload\n control) is treated just like an ordinary \"add\" or \"update\" DataSource operation.  The\n uploaded file(s), if any, are available from the server-side API\n <code>dsRequest.getUploadedFile()</code>.  Metadata fields such as \"_filename\" can be populated\n from the data in the returned ISCFileItem.\n <P>\n Refer to ${isc.DocUtils.linkForExampleId('FScustomBinaryField', 'this example')} to see how this case works.\n <P>\n <b>Binary fields and normal \"fetch\"</b>\n <P>\n For an ordinary \"fetch\" operation, it's generally useless to return data for a binary\n field, because in most cases code running in the browser would not be able to do\n anything with a binary value (such as invoke a PDF viewing plugin).  For this reason the \n SmartClient Server will automatically omit values of type InputStream, byte[] or Blob\n during a normal \"fetch\".\n <p>\n However you can deliver the binary data to the browser by transforming it to a\n Base64-encoded String by setting ${isc.DocUtils.linkForRef('attr:DataSourceField.encodeInResponse')} on your\n &lt;field&gt; declaration.  This can be used with certain browser features such as \n <a href='https://www.google.com/search?q=image+data+uri' target='_blank'>image data URIs</a>, but note\n that some older browsers (notably IE7 and earlier) do not support data URIs. \n <P>\n Refer to ${isc.DocUtils.linkForExampleId('FScustomDownload', 'this example')} to see how this case works.\n <P>\n <b>Downloads unrelated to binary fields</b>\n <P>\n If you want to download or view a file that is not stored in a DataSource record, for\n example, you want to dynamically generate a report of some kind on the fly, any\n ${isc.DocUtils.linkForRef('class:DMI')} can return a binary response by calling the server-side API\n <code>RPCManager.doCustomResponse()</code> and writing binary data directly to the\n ServletResponse outputStream.\n <P>\n It's typical to represent an operation that returns a binary stream as a DataSource\n request with operationType \"fetch\", especially if it takes Criteria that identify\n DataSource Records that will be used to create the binary stream.  \n <P>\n When initiating such a download, set ${isc.DocUtils.linkForRef('attr:RPCRequest.downloadResult')} via the\n <code>requestProperties</code> argument of ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} so that the\n client-side framework knows that a download will occur instead of a normal response.  In\n this case, callbacks will not be fired because code in the browser does not receive\n notification that the download has initiated or has completed.\n <P>\n Refer to ${isc.DocUtils.linkForExampleId('FScustomDownload', 'this example')} to see how this case works.\n <P>\n <b>Binary handling without the SmartClient Server</b>\n <P>\n To download or view files with the SmartClient Server, you can write a servlet that\n streams back binary data.  For a download, you can then redirect the main page to the\n servlet by setting window.location - be sure the download can never fail if you\n this, because any error message returned by the server in lieu of a file will replace\n the application instead of triggering a \"Save As..\" dialog.\n <P>\n To view a file, you can open a new browser window to the URL of the servlet.\n <P>\n Refer to ${isc.DocUtils.linkForExampleId('FScustomBinaryField', 'this example')} to see how this case works.\n <P>",
        name:"binaryFields",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridField.showGroupSummary":{
        ref:"attr:ListGridField.showGroupSummary",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true, should this field show a summary value\n in a summary row when the grid is grouped?\n If unset, this field will show a summary value in the summary row if an\n explicit ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')} is specified or if a\n ${isc.DocUtils.linkForRef('classMethod:SimpleType.getDefaultSummaryFunction','default summary function')} is defined\n for the specified field type.",
        name:"showGroupSummary",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ImgButton.labelHPad":{
        ref:"attr:ImgButton.labelHPad",
        flags:"IRW",
        description:"Horizontal padding to be applied to this widget's label. If this value is null, \n the label will be given a horizontal padding of zero.\n <p>\n The specified amount of padding is applied to the left and right edges of the button, so\n the total amount of padding is 2x the specified value.",
        name:"labelHPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton"
    },
    "classMethod:Page.resizeTo":{
        ref:"classMethod:Page.resizeTo",
        flags:"",
        description:"\t\tResize the outer portion of the window to a specific width and height.\n",
        name:"resizeTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new width for the window",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new height for the window",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "sizing"
        ]
    },
    "attr:FacetChart.zoomEndValue":{
        ref:"attr:FacetChart.zoomEndValue",
        flags:"IRW",
        description:"For a ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom','zoomed chart')}, end value of the data range shown in the main chart.\n If ${isc.DocUtils.linkForRef('attr:FacetChart.zoomStartValue')} is not also set on intialization (or if\n ${isc.DocUtils.linkForRef('method:FacetChart.setZoomStartValue','setZoomStartValue(null)')} is called after initialization) then\n the range shown will be from the beginning of the dataset up to\n <code>zoomEndValue</code>.\n <P>\n The value provided should be a value in the range of the facet for the X axis, for example, for\n a time-based axis, a Date instance, for a numeric axis, a Number, for an axis that just has\n text labels (such as city names), a String.",
        name:"zoomEndValue",
        setter:[
            "setZoomEndValue"
        ],
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Canvas.showHover":{
        ref:"attr:Canvas.showHover",
        flags:"IRW",
        description:"If <code>this.canHover</code> is true, should we show the global hover canvas by default\n when the user hovers over this canvas?",
        name:"showHover",
        seeAlso:[
            {
                ref:"method:Canvas.getHoverHTML",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "class:DrawOval":{
        methods:[
            "method:DrawOval.getBoundingBox",
            "method:DrawOval.setCenterPoint",
            "method:DrawOval.moveBy",
            "method:DrawOval.moveTo",
            "method:DrawOval.setLeft",
            "method:DrawOval.setTop",
            "method:DrawOval.resizeBy",
            "method:DrawOval.resizeTo",
            "method:DrawOval.setWidth",
            "method:DrawOval.setHeight",
            "method:DrawOval.setRect",
            "method:DrawOval.getRadiusX",
            "method:DrawOval.getRadiusY",
            "method:DrawOval.setRadii",
            "method:DrawOval.setRadius",
            "method:DrawOval.setOval",
            "method:DrawOval.getCenter"
        ],
        ref:"class:DrawOval",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawOval.left",
            "attr:DrawOval.top",
            "attr:DrawOval.width",
            "attr:DrawOval.height",
            "attr:DrawOval.centerPoint",
            "attr:DrawOval.radius"
        ],
        description:"DrawItem subclass to render oval shapes, including circles.",
        name:"DrawOval",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "method:Canvas.getLeft":{
        ref:"method:Canvas.getLeft",
        flags:"",
        description:"\t\t\tReturn the left coordinate of this object, relative to its enclosing context, in pixels.\n",
        name:"getLeft",
        seeAlso:[
        ],
        returns:{
            description:"left coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "method:TreeGrid.leafContextClick":{
        ref:"method:TreeGrid.leafContextClick",
        flags:"",
        description:"\n This method is called when a context click occurs on a leaf record.\n\n",
        name:"leafContextClick",
        seeAlso:[
            {
                ref:"method:TreeGrid.nodeContextClick",
                description:null
            }
        ],
        params:[
            {
                description:"The TreeGrid on which the contextclick occurred.",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TreeGrid"
            },
            {
                description:"The leaf (record) on which the contextclick occurred.",
                optional:false,
                name:"leaf",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Index of the row where the contextclick occurred.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:ListGrid.modalEditing":{
        ref:"attr:ListGrid.modalEditing",
        flags:"IRWA",
        description:"If this property is true, any mouse click outside of the open cell editors\n      will end editing mode, hiding the cell editors and saving any changes to those\n      cell values.",
        name:"modalEditing",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('modalEditing')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:ColorPicker.setLuminosity":{
        ref:"method:ColorPicker.setLuminosity",
        flags:"",
        description:" Sets the Luminosity (brightness) of the selected color\n",
        name:"setLuminosity",
        seeAlso:[
            {
                ref:"method:ColorPicker.getLuminosity",
                description:null
            }
        ],
        params:[
            {
                description:"An integer between 0 and 240",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "method:Window.maximize":{
        ref:"method:Window.maximize",
        flags:"",
        description:" Maximize the window. Fired when the user clicks the maximize button if \n ${isc.DocUtils.linkForRef('attr:Window.showMaximizeButton','this.showMaximizeButton')} is true.<br>\n Default implementation moves the window to <code>0, 0</code> and resizes the window to \n <code>\"100%\"</code> on both axes, so it will fill the browser window (or the parent\n of the Window instance, if appropriate).<br>\n If ${isc.DocUtils.linkForRef('attr:Window.animateMinimize','animateMinimize')} is true, the maximize will be animated.\n A restore button will be displayed in place of the maximize button when the window is \n maximized.\n \n",
        name:"maximize",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "attr:ListGridField.iconVAlign":{
        ref:"attr:ListGridField.iconVAlign",
        flags:"IRA",
        description:"If this field is editable, this property will be passed to editors displayed for\n cells within this field as ${isc.DocUtils.linkForRef('attr:FormItem.iconVAlign')}.",
        name:"iconVAlign",
        seeAlso:[
            {
                ref:"attr:ListGridField.icons",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:FacetChart.getDrawnValueAtPoint":{
        ref:"method:FacetChart.getDrawnValueAtPoint",
        flags:"",
        description:" Returns a ${isc.DocUtils.linkForRef('object:DrawnValue')} object for the data value that is shown nearest to the passed\n coordinates only if it's under the given coordinates, or under the current mouse event\n coordinates if no coordinates are passed. This method is similar to ${isc.DocUtils.linkForRef('method:FacetChart.getNearestDrawnValue')},\n but the DrawnValue is only returned if it's under the coordinates.\n <p>\n See ${isc.DocUtils.linkForRef('method:FacetChart.drawnValueContainsPoint')} for the criteria that determine whether a DrawnValue is\n under (contains) the coordinates.\n",
        name:"getDrawnValueAtPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate. If this parameter is specified, then <code>y</code> is a required parameter.",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Y coordinate",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"metric over which to determine the drawn value",
                optional:true,
                name:"metric",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"the nearest drawn value if under the given coordinates (or current mouse event coordinates) or null if not under the coordinates, or for invalid arguments /\n incorrect timing of call.",
            type:"DrawnValue"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:TabBar.defaultTabSize":{
        ref:"attr:TabBar.defaultTabSize",
        flags:"IR",
        description:"Default size (length) in pixels for tabs within this tabBar",
        name:"defaultTabSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"80",
        type:"attr",
        definingClass:"class:TabBar"
    },
    "classMethod:Page.setTitle":{
        ref:"classMethod:Page.setTitle",
        flags:"",
        description:"\t\tSet the title of the page, which is typically shown as part of the browser window title\n",
        name:"setTitle",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:ComboBoxItem.defaultToFirstOption":{
        ref:"attr:ComboBoxItem.defaultToFirstOption",
        flags:"IRW",
        description:"Select the first option as the default value for this ComboBoxItem. If options are derived\n from a dataSource, the first value returned by the server will be used, otherwise the first\n value in the valueMap. If enabled, this setting overrides ${isc.DocUtils.linkForRef('attr:ComboBoxItem.defaultValue')}\n and ${isc.DocUtils.linkForRef('method:ComboBoxItem.defaultDynamicValue')}.",
        name:"defaultToFirstOption",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:MenuButton.setShowMenuButtonImage":{
        ref:"method:MenuButton.setShowMenuButtonImage",
        flags:"",
        description:" Setter for the 'showMenuButtonImage' property - shows/hides the menu button image\n at runtime.\n\n",
        name:"setShowMenuButtonImage",
        seeAlso:[
        ],
        params:[
            {
                description:"Should the image be shown",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:MenuButton"
    },
    "attr:MultiFileItem.removeButtonPrompt":{
        ref:"attr:MultiFileItem.removeButtonPrompt",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('attr:FormItemIcon.prompt','prompt')} of the ${isc.DocUtils.linkForRef('attr:MultiFileItem.removeButton','remove button')}.",
        name:"removeButtonPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Remove selected files\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:CubeGrid.discardAllEdits":{
        ref:"method:CubeGrid.discardAllEdits",
        flags:"A",
        description:"\n",
        name:"discardAllEdits",
        seeAlso:[
        ],
        params:[
            {
                description:"allows you to specify which cell(s) to drop                   edits for. Each record should be identified as an array containing \n                  <code>[rowNum,colNum]</code>",
                optional:true,
                name:"records",
                defaultValue:null,
                type:"array of 2-element arrays"
            },
            {
                description:"By default this method will hide the editor if                              it is currently showing for any row in the grid. Passing in\n                              this parameter will leave the editor visible (and just reset\n                              the edit values underneath the editor).",
                optional:true,
                name:"dontHideEditor",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "attr:FacetChart.showChartRect":{
        ref:"attr:FacetChart.showChartRect",
        flags:"IR",
        description:"Whether to show a rectangular shape around the area of the chart where data is plotted.",
        name:"showChartRect",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classAttr:Operators.notStartsWithTitle":{
        ref:"classAttr:Operators.notStartsWithTitle",
        flags:"IR",
        description:"Title for the \"notStartsWith\" operator",
        name:"notStartsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not start with (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.selection":{
        ref:"attr:ListGrid.selection",
        flags:"RA",
        getter:[
            "getSelection"
        ],
        description:"The Selection object associated with the listGrid.",
        name:"selection",
        seeAlso:[
        ],
        valueType:"Selection",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "class:Facet":{
        methods:[
        ],
        ref:"class:Facet",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Analytics/CubeGrid"
        ],
        attrs:[
            "attr:Facet.id",
            "attr:Facet.title",
            "attr:Facet.values",
            "attr:Facet.inlinedValues",
            "attr:Facet.rollupValue",
            "attr:Facet.isTree",
            "attr:Facet.showParentsLast",
            "attr:Facet.collapsed",
            "attr:Facet.canCollapse",
            "attr:Facet.canMinimize",
            "attr:Facet.width",
            "attr:Facet.height",
            "attr:Facet.labelHeight",
            "attr:Facet.align",
            "attr:Facet.titleAlign",
            "attr:Facet.cellAlign",
            "attr:Facet.borderBefore",
            "attr:Facet.borderAfter",
            "attr:Facet.selectionBoundary",
            "attr:Facet.summaryValue",
            "attr:Facet.summaryTitle",
            "attr:Facet.synchColumnLayout"
        ],
        description:"Facet definition object made use of by the ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrid')} and\n ${isc.DocUtils.linkForRef('class:FacetChart','FacetChart')} classes.",
        name:"Facet",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "Analytics"
        ]
    },
    "method:MiniDateRangeItem.setValue":{
        ref:"method:MiniDateRangeItem.setValue",
        flags:"",
        description:" Sets the value for this miniDateRangeItem.  The value parameter is a \n ${isc.DocUtils.linkForRef('object:DateRange')} object that optionally includes both start and end values.\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new value for this item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"DateRange"
            }
        ],
        type:"method",
        definingClass:"class:MiniDateRangeItem"
    },
    "method:ValuesManager.isNewRecord":{
        ref:"method:ValuesManager.isNewRecord",
        flags:"",
        description:" Returns true if ${isc.DocUtils.linkForRef('attr:ValuesManager.saveOperationType')} is currently \"add\".  See\n ${isc.DocUtils.linkForRef('attr:ValuesManager.saveOperationType')}.\n\n",
        name:"isNewRecord",
        seeAlso:[
        ],
        returns:{
            description:"whether this form will use an \"add\" operation when saving",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "classMethod:Class.delayCall":{
        ref:"classMethod:Class.delayCall",
        flags:"",
        description:"  This is a helper to delay a call to a method on some target by a specified\n  amount of time.  Can be used to delay a call to a static method on this class by\n  omitting the <code>target</code> parameter.\n",
        name:"delayCall",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the method to call",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"array of arguments to pass to the method in question",
                optional:true,
                name:"arrayArgs",
                defaultValue:null,
                type:"array"
            },
            {
                description:"Number of ms to delay the call by - defaults to zero (so just pulls                        execution of the method out of the current execution thread.",
                optional:true,
                name:"time",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Target to fire the method on - if unspecified assume this is                          a call to a classMethod on this Class.",
                optional:true,
                name:"target",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"Timer ID for the delayed call - can be passed to                      ${isc.DocUtils.linkForRef('classMethod:Timer.clear')} to cancel the call before it executes",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:DataBoundComponent.getHilites":{
        ref:"method:DataBoundComponent.getHilites",
        flags:"",
        description:" Return the set of hilite-objects currently applied to this DataBoundComponent.  These\n can be serialized for storage and then restored to a component later via \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.setHilites','setHilites()')}.\n\n",
        name:"getHilites",
        seeAlso:[
        ],
        returns:{
            description:"Array of hilite objects",
            type:"Array"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListGrid.reselectOnUpdateNotifications":{
        ref:"attr:ListGrid.reselectOnUpdateNotifications",
        flags:"IRWA",
        description:"if ${isc.DocUtils.linkForRef('attr:ListGrid.reselectOnUpdate')} is true, this property governs what\n selection changed notifications should be triggered when a selected record\n is edited then automatically reselected when the edited data is merged into\n the data set.",
        name:"reselectOnUpdateNotifications",
        seeAlso:[
        ],
        valueType:"SelectionNotificationType",
        defaultValue:"\"selectionChanged\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Button.iconSpacing":{
        ref:"attr:Button.iconSpacing",
        flags:"IR",
        description:"Pixels between icon and title text.",
        name:"iconSpacing",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:FormItem.rejectInvalidValueOnChange":{
        ref:"attr:FormItem.rejectInvalidValueOnChange",
        flags:"IRWA",
        description:"If validateOnChange is true, and validation fails for this item on change, with no suggested\n value, should we revert to the previous value, or continue to display the bad value entered\n by the user. May be set at the item or form level.",
        name:"rejectInvalidValueOnChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:FormItem.decimalPrecision":{
        ref:"attr:FormItem.decimalPrecision",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and affects how many significant digits are shown.\n <P>\n For example, with decimalPrecision 3, if the field value is 343.672677, 343.673 is shown.\n <P>\n If the value is 125.2, 125.2 is shown - decimalPrecision will not cause extra zeros to be\n added.  Use ${isc.DocUtils.linkForRef('attr:DataSourceField.decimalPad')} for this.\n <P>\n A number is always shown with its original precision when edited.",
        name:"decimalPrecision",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "group:adminConsole":{
        ref:"group:adminConsole",
        title:"Admin Console",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        refs:[
        ],
        description:"The Admin Console allows you to configure database access for DataSources that use\n SmartClient's built-in ${isc.DocUtils.linkForRef('group:sqlDataSource','SQL engine')}.  You can either use the Admin\n Console UI (as explained below) or directly specify equivalent properties in your\n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file (see \"Manually specifying..\" below).\n <P>\n <smartclient>\n NOTE: To use the Admin Console, you must have the Isomorphic SmartClient package installed\n and your servlet engine started. \n <p>\n Direct your browser to the following URL to access the Admin Console: \n <p>\n &nbsp;&nbsp;<a href='http://localhost:8080/tools/adminConsole.jsp' target='_blank'>http://localhost:8080/tools/adminConsole.jsp</a>\n <p>\n The common default servlet engine port 8080 is used in the URL given above. Adjust your URL\n as necessary if you are using a different port and replace localhost with the machine name\n running the servlet engine if you are accessing it from a remote machine.\n </smartclient>\n <smartgwt>\n To use the Admin Console, make sure you have followed the \n ${isc.DocUtils.linkForRef('group:sgwtEESetup','full installation instructions')} - double check that you have the\n correct GWT &lt;inherits&gt; as shown in those instructions.  Then, launch your GWT project\n from your IDE, and open a web browser to <i>moduleBaseURL</i>/tools/adminConsole.jsp.  For\n example, if you load your application by going to a URL that ends in\n builtinds/builtinds.html, the correct URL for the Admin Console is builtinds/tools/adminConsole.jsp.\n <P>\n If it's not clear what URL to use, you can add the following code to your onModuleLoad()\n method to create a button that opens the Admin Console:\n <pre>\n   IButton adminButton = new IButton(\"Admin Console\"); \n   adminButton.addClickHandler(new ClickHandler() { \n     public void onClick(ClickEvent event) { \n       com.smartgwtee.tools.client.SCEE.openDataSourceConsole(); \n     } \n   }); \n   adminButton.draw();\n </pre>\n NOTE: if you are using Pro Edition, the method to call is\n com.smartgwtpro.tools.client.SCPRO.openDataSourceConsole(), and for Power Edition,\n com.smartgwtpower.tools.client.SCPower.openDataSourceConsole().\n </smartgwt>\n Having opened the Admin Console, available JNDI connections will be discovered and shown\n automatically.  If you aren't using JDNI, use the GUI to enter and test JDBC settings. Both\n ConnectionManager and JDBC DataSource settings are supported. Once you've got a working\n connection, set it as the default connection using the \"Set as Default\" button.\n <smartgwt>\n <P>\n These settings will be written to ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n in your deployment directory - use\n the \"Download server.properties\" button to download the settings and merge them to the\n server.properties file in your Eclipse (or other IDE) project.\n </smartgwt>\n <P>\n <b>Test Data</b>\n <p>\n You can create a test file that contains a sample dataset which can be imported into your\n database table with the Admin Console.\n <p>\n The test file to use with your DataSource is specified in the <code>testFileName</code>\n DataSource configuration property. The test file uses the extension .data.xml.\n <p>\n The test data file should consist of a top-level &lt;List&gt; element containing a series of XML\n elements named after your DataSource's ID, each of which creates one DataSource\n record. Values for each field are given within tags named after the field name. \n <p>\n For example, the following XML is from the supplyItem.data.xml test data file supplied with\n the Isomorphic SmartClient package. This file is located in\n [webroot]/examples/shared/ds/test_data/.\n <p>\n <pre>\n &lt;List&gt;\n  &lt;supplyItem&gt;\n      &lt;description&gt;A revolutionary cushion-grip ballpoint pen that reduces \n          required gripping power, relieving stress and alleviating writing \n          fatigue. Excellent for people who suffer from arthritis or carpal \n          tunnel syndrome. Medium point, black ink. Refillable.&lt;/description&gt;\n      &lt;category&gt;1&lt;/category&gt;\n      &lt;itemRef&gt;ODC 204-502-153&lt;/itemRef&gt;\n      &lt;maxQuantity&gt;5&lt;/maxQuantity&gt;\n      &lt;requiresJustification&gt;0&lt;/requiresJustification&gt;\n      &lt;itemName&gt;Dr. Grip Pens -- Blue Barrel&lt;/itemName&gt;\n      &lt;itemID&gt;1&lt;/itemID&gt;\n      &lt;unitCost&gt;4.99&lt;/unitCost&gt;\n  &lt;/supplyItem&gt;\n  &lt;supplyItem&gt;\n      &lt;description&gt;A revolutionary cushion-grip ballpoint pen that reduces \n          required gripping power, relieving stress and alleviating writing \n          fatigue. Excellent for people who suffer from arthritis or carpal \n          tunnel syndrome. Medium point, black ink. Refillable.&lt;/description&gt;\n      &lt;category&gt;1&lt;/category&gt;\n      &lt;itemRef&gt;ODC 204-708-834&lt;/itemRef&gt;\n      &lt;maxQuantity&gt;5&lt;/maxQuantity&gt;\n      &lt;requiresJustification&gt;0&lt;/requiresJustification&gt;\n      &lt;itemName&gt;Dr. Grip Pens -- Black Barrel&lt;/itemName&gt;\n      &lt;itemID&gt;2&lt;/itemID&gt;\n      &lt;unitCost&gt;4.99&lt;/unitCost&gt;\n  &lt;/supplyItem&gt;\n  &lt;supplyItem&gt;\n      &lt;description&gt;Personalized business cards for all your networking \n          needs.&lt;/description&gt;\n      &lt;category&gt;2&lt;/category&gt;\n      &lt;itemRef&gt;&lt;/itemRef&gt;\n      &lt;maxQuantity&gt;500&lt;/maxQuantity&gt;\n      &lt;requiresJustification&gt;1&lt;/requiresJustification&gt;\n      &lt;itemName&gt;Personalized business cards -- 500 count&lt;/itemName&gt;\n      &lt;itemID&gt;3&lt;/itemID&gt;\n      &lt;unitCost&gt;25.00&lt;/unitCost&gt;\n  &lt;/supplyItem&gt;\n  ...\n &lt;List/&gt;\n </pre>\n \n Data for a tree-like DataSource can be specified with the same format.\n The following code example is from the supplyCategory.data.xml test data file. This file\n is also located in [webroot]/examples/shares/ds/test_data/. \n\n <pre>\n &lt;List&gt;\n     &lt;supplyCategory&gt;\n     \t&lt;itemName&gt;Office Paper Products&lt;/itemName&gt;\n     \t&lt;parentID&gt;root&lt;/parentID&gt;\n     &lt;/supplyCategory&gt;\n     &lt;supplyCategory&gt;\n     \t&lt;itemName&gt;Calculator Rolls&lt;/itemName&gt;\n     \t&lt;parentID&gt;Office Paper Products&lt;/parentID&gt;\n     &lt;/supplyCategory&gt;\n     &lt;supplyCategory&gt;\n     \t&lt;itemName&gt;Adding Machine/calculator Roll&lt;/itemName&gt;\n     \t&lt;parentID&gt;Calculator Rolls&lt;/parentID&gt;\n     &lt;/supplyCategory&gt;\n     . . .\n &lt;/List&gt;\n </pre>\n \n Notice that all records must define values for the itemName primary key field and for the\n parentID field that establishes the tree relationship.\n <P>\n <br>\n <b>Manually specifying database connection settings</b>\n <p>\n The Admin Console maintains settings in the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n file, found in \n your application's <code>WEB-INF/classes</code> directory.  If you prefer, you can maintain\n these settings by directly editing that file.  You should restart your servlet engine \n after changing this file.\n <p>\n For example, the following settings are the defaults in a new SmartClient installation for \n a MySQL server; they are approximately correct for a MySQL server running on the same \n machine as the servlet engine and listening on the default MySQL port.  For details of what\n each of these properties means, check ${isc.DocUtils.linkForRef('group:sqlSettings','this page')}.<pre>\n   sql.Mysql.database.type: mysql\n   sql.Mysql.database.ansiMode: false\n   sql.Mysql.interface.type: dataSource\n   sql.Mysql.driver: com.mysql.jdbc.jdbc2.optional.MysqlDataSource\n   # name of the database to use\n   sql.Mysql.driver.databaseName: isomorphic\n   # hostname and port where the database server is installed\n   sql.Mysql.driver.serverName: localhost\n   sql.Mysql.driver.portNumber: 3306\n   # username and password that can create and modify tables in that database\n   # this user must have the following privileges for the system to function\n   # properly: create/alter/drop table; insert/update/replace/delete rows.\n   sql.Mysql.driver.user: root\n   sql.Mysql.driver.password: \n </pre>\n Note the distinction here between database <em>type</em> and database <em>name</em>.  Database\n type refers to the actual product - Oracle, DB2 or whatever.  In the above example, database \n type is \"mysql\" (all lowercase) - the value of property <code>sql.Mysql.database.type</code>.\n Database type is very important.  The type of a given database connection dictates whether\n features like SQL paging and transactions are supported; it even dictates the syntax of the \n SQL we generate.\n <p>\n Database name is just an arbitrary name for a particular database connection, and it is\n embedded in the property names immediately after the <code>sql</code> prefix. In this example\n it happens to be very similar to the database type - \"Mysql\" as opposed to \"mysql\" - but in \n fact the name has no significance and could be any string.  When referring to specific \n database connections in your ${isc.DocUtils.linkForRef('class:DataSource','DataSources')} with the \n ${isc.DocUtils.linkForRef('attr:DataSource.dbName','dbName')} property, it is the database <em>name</em> you use.\n <p>\n NOTE: It is common for DataSources to not specify <code>dbName</code>.  In this case, the \n default database is used.  To specify the default database manually in \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}, set <code>sql.defaultDatabase</code>, using database \n name.  So, to set our example connection from above as the default:<pre>\n   sql.defaultDatabase: Mysql\n </pre>\n <P>\n <b>Manually specifying JNDI settings</b>\n <p>\n Instead of specifying database connection parameters directly in \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')},\n it is possible to connect to a database that is configured as a JNDI resource in your \n application server.  Assume you have an Oracle JNDI resource with the name \"jndiTest\", \n configured similar to this in Tomcat:\n <pre>\n   &lt;Resource name=\"jdbc/jndiTest\"\n                    auth=\"Container\"\n                    type=\"javax.sql.DataSource\"\n                    driverClassName=\"oracle.jdbc.driver.OracleDriver\"\n                    url=\"jdbc:oracle:thin:@192.168.132.152:1521:xe\"\n                    username=\"system\"\n                    password=\"manager\"\n                    initialSize=\"5\"                 \n                    maxActive=\"50\" /&gt;\n </pre>\n The minimal set of properties required to create a SmartClient database connection that \n attaches to this resource is as follows (Note that the <code>java:comp/env/</code> prelude\n in the first line is optional - the server will automatically look there if it can't find \n the resource in the absolute location)\n <pre>\n   sql.myOracleConnection.driver.name: java:comp/env/jdbc/jndiTest\n   sql.myOracleConnection.database.type: oracle\n   sql.myOracleConnection.interface.type: jndi\n </pre>",
        name:"adminConsole",
        seeAlso:[
            {
                ref:"group:sqlConnectionPooling",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:DynamicForm.errorOrientation":{
        ref:"attr:DynamicForm.errorOrientation",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} is true, where should the error icon and text appear\n relative to form items?  Valid options are <code>\"top\"</code>, \n <code>\"bottom\"</code>, <code>\"left\"</code> or <code>\"right\"</code>.<br>\n May be overridden at the item level via ${isc.DocUtils.linkForRef('attr:FormItem.errorOrientation')}.",
        name:"errorOrientation",
        seeAlso:[
        ],
        valueType:"align",
        defaultValue:"\"left\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation",
            "appearance"
        ]
    },
    "classMethod:isc.logEchoAll":{
        ref:"classMethod:isc.logEchoAll",
        flags:"",
        description:" Logs the echoed object (using ${isc.DocUtils.linkForRef('classMethod:isc.echoAll')}) as a warning, prefixed with an\n optional message.\n\n",
        name:"logEchoAll",
        seeAlso:[
            {
                ref:"classMethod:Log.logWarn",
                description:"for logging info"
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:DataSource.operationBindings":{
        ref:"attr:DataSource.operationBindings",
        flags:"IR",
        description:"Optional array of OperationBindings, which provide instructions to the DataSource about how each\n DSOperation is to be performed.\n <P>\n When using the SmartClient Server, OperationBindings are specified in your DataSource\n descriptor (.ds.xml file) and control server-side behavior such as what Java object to route\n DSRequest to (${isc.DocUtils.linkForRef('attr:OperationBinding.serverObject')}) or customizations to SQL, JQL and HQL queries\n (${isc.DocUtils.linkForRef('attr:OperationBinding.customSQL')}, ${isc.DocUtils.linkForRef('attr:OperationBinding.customJQL')} and ${isc.DocUtils.linkForRef('attr:OperationBinding.customHQL')}).\n See the ${isc.DocUtils.linkForExampleId('javaDataIntegration', 'Java Integration samples')}.\n <P>\n For DataSources bound to WSDL-described web services using\n ${isc.DocUtils.linkForRef('attr:DataSource.serviceNamespace')}, OperationBindings are used to bind each DataSource\n ${isc.DocUtils.linkForRef('attr:OperationBinding.operationType','operationType')} to an\n ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation','operation')} of a WSDL-described \n ${isc.DocUtils.linkForRef('class:WebService','web service')}, so that a DataSource can both fetch and save data to a web\n service.\n <P>\n For example, this code accomplishes part of the binding to the \n <a href='http://www.google.com/search?q=sforce+partner+wsdl' target='_blank'>SalesForce partner web services</a>\n <pre>\n isc.DataSource.create({\n    serviceNamespace : \"urn:partner.soap.sforce.com\",\n    operationBindings : [\n        { operationType:\"fetch\", wsOperation:\"query\", recordName: \"sObject\" },\n        { operationType:\"update\", wsOperation:\"update\", recordName: \"SaveResult\" },\n        { operationType:\"add\", wsOperation:\"create\", recordName: \"SaveResult\" },\n        { operationType:\"remove\", wsOperation:\"delete\", recordName: \"DeleteResult\" }\n    ],\n    ...\n }); \n </pre>\n NOTE: additional code is required to handle authentication and other details, see the\n complete code in smartclientSDK/examples/databinding/SalesForce.\n <P>\n For DataSources that contact non-WSDL-described XML or JSON services, OperationBindings can\n be used to separately configure the URL, HTTP method, input and output processing for each\n operationType.  This makes it possible to fetch JSON data from one URL for the \"fetch\"\n operationType and save to a web service for the \"update\" operationType, while appearing as a\n single integrated DataSource to a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} such as an\n ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','editable ListGrid')}.\n <P>\n If no operationBinding is defined for a given DataSource operation, all of the properties\n which are valid on the operationBinding are checked for on the DataSource itself.  \n <P>\n This also means that for a read-only DataSource, that is, a DataSource only capable of fetch\n operations, operationBindings need not be specified, and instead all operationBinding\n properties can be set on the DataSource itself.  An example of using OperationBinding\n properties directly on the DataSource in order to read an RSS feed can be found here:\n <P>\n ${isc.DocUtils.linkForStandaloneExample('/examples/databinding/rss_databinding.html', '/examples/databinding/rss_databinding.html')}",
        name:"operationBindings",
        seeAlso:[
            {
                ref:"class:OperationBinding",
                description:null
            }
        ],
        valueType:"Array of OperationBinding",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:Canvas.hoverMoveWithMouse":{
        ref:"attr:Canvas.hoverMoveWithMouse",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true, should this widget's hover canvas be moved with\n the mouse while visible?",
        name:"hoverMoveWithMouse",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "group:hoverComponents":{
        ref:"group:hoverComponents",
        refs:[
            "method:Canvas.getHoverComponent",
            "method:ListGrid.getCellHoverComponent",
            "method:ListGrid.getRollOverCanvas",
            "method:ListGrid.getRollUnderCanvas",
            "attr:Canvas.showHoverComponents",
            "attr:ListGrid.showHoverComponents",
            "attr:ListGrid.hoverMode",
            "type:HoverMode"
        ],
        name:"hoverComponents",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DrawOval.setCenterPoint":{
        ref:"method:DrawOval.setCenterPoint",
        flags:"",
        description:" Change the center point for this oval.\n",
        name:"setCenterPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:FormItem.implicitSaveOnBlur":{
        ref:"attr:FormItem.implicitSaveOnBlur",
        flags:"IRW",
        description:"If not set to false, form item values will be saved when this item's \"editorExit\" \n handler is fired as well as on a delay and when the entire form is submitted.",
        name:"implicitSaveOnBlur",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:TextItem.getHint":{
        ref:"method:TextItem.getHint",
        flags:"A",
        description:"\tReturns the hint text for this item. Default implementation returns ${isc.DocUtils.linkForRef('attr:FormItem.hint')}, or\n  null if there is no hint to show.\n\n",
        name:"getHint",
        seeAlso:[
        ],
        returns:{
            description:"HTML to show as the hint for the item",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:TextItem",
        groups:[
            "appearance"
        ]
    },
    "method:FacetChart.getMin":{
        ref:"method:FacetChart.getMin",
        flags:"",
        description:" Calculate the minimum of the data from a single metric.\n <p>\n The first argument, criteria, determines which metric is used to calculate the minimum.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n",
        name:"getMin",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            }
        ],
        returns:{
            description:"the minimum of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:OperationBinding.requires":{
        ref:"attr:OperationBinding.requires",
        flags:"IR",
        description:"Indicates that the specified ${isc.DocUtils.linkForRef('type:VelocityExpression')} must be true for a user to access\n this operationBinding.\n <P>\n As with ${isc.DocUtils.linkForRef('attr:OperationBinding.requiresRole')}, if there an operationBinding that is the\n default operationBinding for the operationType, its <code>requires</code> expression is\n assumed to apply to all other operationBindings of the same type unless they explicitly set\n <code>requires=\"\"</code>\n <P>\n ${isc.DocUtils.linkForRef('attr:DataSource.requires')}, if specified, applies before\n <code>operationBinding.requires</code> is evaluated.  In this case, both <code>requires</code>\n expressions must be true for the request to be accepted.",
        name:"requires",
        seeAlso:[
        ],
        valueType:"VelocityExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "auth"
        ]
    },
    "method:Gauge.setLabelPrefix":{
        ref:"method:Gauge.setLabelPrefix",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Gauge.labelPrefix','labelPrefix')} property and re-creates all sector labels.\n\n",
        name:"setLabelPrefix",
        seeAlso:[
        ],
        params:[
            {
                description:"the new label prefix.",
                optional:false,
                name:"labelPrefix",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:ListGrid.autoFitExpandField":{
        ref:"attr:ListGrid.autoFitExpandField",
        flags:"IR",
        description:"The field to expand if ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldsFillViewport')} are enabled and\n auto-fitting will not fill all available horizontal space.\n <P>\n If unset, will default to the text field with the longest\n ${isc.DocUtils.linkForRef('attr:DataSourceField.length')} if length is set, otherwise, the first text\n field with no width specified.\n <P>\n Note that expanding ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen columns')} is not supported.",
        name:"autoFitExpandField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "method:DataSourceField.exportForceText":{
        ref:"method:DataSourceField.exportForceText",
        flags:"ForceTextApproach : null : IR",
        description:" When using ${isc.DocUtils.linkForRef('method:DataSource.recordsAsText')}, what approach (if any) should be used to force\n values to be intepreted as text instead of heuristically parsed as dates, times or other\n structured types.\n",
        name:"exportForceText",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DataSourceField"
    },
    "classMethod:EventHandler.altKeyDown":{
        ref:"classMethod:EventHandler.altKeyDown",
        flags:"",
        description:"\t\t\tReturn true if the alt (option) key is being held down.\n\t\t\tNote that this is only set reliably for keyboard events.\n\n",
        name:"altKeyDown",
        seeAlso:[
        ],
        returns:{
            description:"true == alt key is down",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "keyboardEvents"
        ]
    },
    "method:GridRenderer.getDrawnRows":{
        ref:"method:GridRenderer.getDrawnRows",
        flags:"",
        description:" Get the rows that are currently drawn (exist in the DOM), as an array of [firstRowNum,\n lastRowNum].  \n <P>\n The drawn rows differ from the ${isc.DocUtils.linkForRef('method:GridRenderer.getVisibleRows','visibleRows')} because of\n ${isc.DocUtils.linkForRef('attr:GridRenderer.drawAheadRatio','drawAhead')}.  The drawn rows are the appropriate range to consider if\n you need to, eg, using ${isc.DocUtils.linkForRef('method:GridRenderer.refreshCell')} to update all the cells in a column.\n <P>\n If the grid is undrawn or the ${isc.DocUtils.linkForRef('attr:GridRenderer.emptyMessage')} is currently shown, returns\n [null,null];\n\n",
        name:"getDrawnRows",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "attr:FacetChart.lowErrorMetric":{
        ref:"attr:FacetChart.lowErrorMetric",
        flags:"IR",
        description:"<code>lowErrorMetric</code> and ${isc.DocUtils.linkForRef('attr:FacetChart.highErrorMetric')} can be used to cause error\n bars to appear above and below the main data point.\n <p>\n <code>lowErrorMetric</code> and <code>highErrorMetric</code> provide the name of an\n additional attributes that appears in each Record holding the low error value and high\n error value respectively.\n <p>\n Error bars are supported for single-axis charts only.",
        name:"lowErrorMetric",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('errorBars')}"
        ],
        definingClass:"class:FacetChart"
    },
    "method:DrawOval.setRect":{
        ref:"method:DrawOval.setRect",
        flags:"",
        description:" Move and resize the drawOval to match the specified coordinates and size.\n",
        name:"setRect",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:DateChooser.prevYearIconRTL":{
        ref:"attr:DateChooser.prevYearIconRTL",
        flags:"IRW",
        description:"Icon for the previous year button if ${isc.DocUtils.linkForRef('classMethod:Page.isRTL')} is true.\n If not set, and the page is in RTL mode, the ${isc.DocUtils.linkForRef('attr:DateChooser.nextYearIcon')} will be\n used in place of the ${isc.DocUtils.linkForRef('attr:DateChooser.prevYearIcon')} and vice versa.",
        name:"prevYearIconRTL",
        seeAlso:[
            {
                ref:"attr:DateChooser.showDoubleYearIcon",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:DataBoundComponent.enableHilite":{
        ref:"method:DataBoundComponent.enableHilite",
        flags:"",
        description:" Enable / disable a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hilites','hilite')}\n\n",
        name:"enableHilite",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of hilite to enable",
                optional:false,
                name:"hiliteID",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new enabled state to apply - if null, defaults to true",
                optional:true,
                name:"enable",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:TextAreaItem.textBoxStyle":{
        ref:"attr:TextAreaItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class to apply to this item's input element.\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special skinning considerations.",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"textItem\"",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "appearance"
        ]
    },
    "classMethod:Messaging.subscribe":{
        ref:"classMethod:Messaging.subscribe",
        flags:"",
        description:" Subscribes the client to the messaging channel identified by channel.\n <p>\n When the server or another connected browser sends a message on this channel, the callback \n will be invoked with a single 'data' parameter containing the data that was just sent to the\n channel.\n <p>\n Calling subscribe() again for a channel you are already subscribed to will result in the new\n callback replacing the old, and will cause the server connection to be re-established.\n\n",
        name:"subscribe",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"channel",
                defaultValue:null,
                type:"String"
            },
            {
                description:"callback fired whenever data is sent to this channel",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"MessagingCallback"
            }
        ],
        type:"classMethod",
        definingClass:"class:Messaging",
        groups:[
            "messaging"
        ]
    },
    "class:DMI":{
        methods:[
        ],
        ref:"class:DMI",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:DMI.call",
            "classMethod:DMI.getURL"
        ],
        treeLocation:[
            "Client Reference/RPC"
        ],
        attrs:[
        ],
        description:"Static singleton class with APIs for ${isc.DocUtils.linkForRef('group:dmiOverview','Direct Method Invocation')} of\n server side methods when running the SmartClient java server.",
        name:"DMI",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Dialog.okClick":{
        ref:"method:Dialog.okClick",
        flags:"",
        description:" Handle a click on the 'ok' button of this Dialog.\n Default implementation is to call <code>saveData()</code>, hide the Dialog, then return\n <code>true</code>.\n Override to do something else.\n",
        name:"okClick",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "method:ListGrid.rowOver":{
        ref:"method:ListGrid.rowOver",
        flags:"",
        description:" Called when the mouse pointer enters a row\n\n",
        name:"rowOver",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:DSRequest.sortBy":{
        ref:"attr:DSRequest.sortBy",
        flags:"IR",
        description:"Fieldname to sortBy, prefixed with optional \"-\" indicating descending sort.  For example, to\n sort by the field \"userName\" in ascending order, set <code>sortBy</code> to just\n \"userName\".  For descending sort on \"userName\", set <code>sortBy</code> to \"-userName\".  \n <P>\n To sort by multiple fields, an Array of Strings is also supported.  For example, to sort by\n the field \"department\" in ascending order, followed by the field \"userName\" in descending\n order, set <code>sortBy</code> to: \n <P>\n <code>[ \"department\", \"-userName\" ]</code>\n <P>\n Additionally, this property supports an array of ${isc.DocUtils.linkForRef('object:SortSpecifier')} objects.  Setting \n <code>sortBy</code> to the following SortSpecifier array results in the same multi-level\n sort mentioned above:\n <P>\n <code>\n [<br>\n &nbsp;&nbsp;{ property: \"department\", direction: \"ascending\" },<br>\n &nbsp;&nbsp;{ property: \"userName\", direction: \"descending\" }<br>\n ]\n </code>",
        name:"sortBy",
        seeAlso:[
        ],
        valueType:"String | Array of String or Array of SortSpecifiers",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:CubeGrid.getFacetValue":{
        ref:"method:CubeGrid.getFacetValue",
        flags:"",
        description:" Get a facet value definition by facetId and facetValueId.  Constant time.\n\n",
        name:"getFacetValue",
        seeAlso:[
            {
                ref:"class:FacetValue",
                description:null
            }
        ],
        params:[
            {
                description:"the id of the facet to retrieve",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the id of the facet value to retrieve",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the FacetValue if found, or null",
            type:"FacetValue"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:FormulaBuilder.fieldKey":{
        ref:"attr:FormulaBuilder.fieldKey",
        flags:"IR",
        description:"ListGrid displaying the list of available fields and their corresponding formula keys.",
        name:"fieldKey",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:RPCResponse.status":{
        ref:"attr:RPCResponse.status",
        flags:"IR",
        description:"Status code for this response.  Status codes less than zero are considered errors by the\n RPCManager, those greater than or equal to zero are considered successes.  Please see the\n error handling section the ${isc.DocUtils.linkForRef('class:RPCManager','RPCManager docs')} for more information on\n what the RPCManager does with the status code and how you can override this behavior.\n <P>\n When using the SmartClient server you can set the rpcResponse.status by calling the\n server-side method RPCResponse.setStatus().  \n <P>\n When not using the SmartClient server, the RPCManager makes no assumptions about the\n structure of the response, so the status code just reflects the\n ${isc.DocUtils.linkForRef('attr:RPCResponse.httpResponseCode')}: status will be \n ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_TRANSPORT_ERROR','STATUS_TRANSPORT_ERROR')} if an HTTP-level error\n occurred such as \"500 server error\".  If you have a status code you need to transmit you can\n simply embed it in the response (as part of ${isc.DocUtils.linkForRef('attr:RPCResponse.data')}) and interpret it from\n the callback.\n <P>\n With or without the SmartClient server, the ${isc.DocUtils.linkForRef('group:relogin')} status codes (such as \n ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_LOGIN_REQUIRED')}) are triggered whenever special markers, such as the\n loginRequiredMarker, appear in the body of the response.  See the ${isc.DocUtils.linkForRef('group:relogin','Relogin\\n Overview')} for details.",
        name:"status",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:null,
        type:"attr",
        definingClass:"class:RPCResponse"
    },
    "group:xmlSerialize":{
        ref:"group:xmlSerialize",
        refs:[
            "attr:DataSourceField.xmlAttribute",
            "attr:DataSourceField.childTagName",
            "attr:DataSourceField.multiple"
        ],
        name:"xmlSerialize",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Dialog.iconSize":{
        ref:"attr:Dialog.iconSize",
        flags:"IR",
        description:"Size of the icon to show in this dialog.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"32",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "classMethod:Class.map":{
        ref:"classMethod:Class.map",
        flags:"",
        description:"\n Call <code>method</code> on each item in <code>argsList</code> and return the Array of results.\n\n",
        name:"map",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the method on this instance which should be called on each element of the Array",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Array of items to call the method on",
                optional:false,
                name:"items",
                defaultValue:null,
                type:"Array"
            }
        ],
        returns:{
            description:"Array of results, one per element in the passed \"items\" Array",
            type:"Array"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "classMethod:AutoTest.getElement":{
        ref:"classMethod:AutoTest.getElement",
        flags:"",
        description:null,
        name:"getElement",
        seeAlso:[
        ],
        params:[
            {
                description:"Locator String previously returned by        ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')}",
                optional:false,
                name:"locator",
                defaultValue:null,
                type:"AutoTestLocator"
            }
        ],
        returns:{
            description:"DOM element this locator refers to in the running application, or null if not found",
            type:"DOMElement"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "classAttr:Browser.isTablet":{
        ref:"classAttr:Browser.isTablet",
        flags:"RW",
        description:"Is the application running on a tablet device (e.g. iPad, Nexus 7)?\n <p>\n SmartClient can correctly determine whether the device is a tablet in most cases. On any\n uncommon device for which this variable is incorrect, you can define the <code>isc_isTablet</code>\n global with the correct value, and SmartClient will use <code>isc_isTablet</code> for\n <code>Browser.isTablet</code> instead of its own detection logic. Alternatively, you can use\n ${isc.DocUtils.linkForRef('classMethod:Browser.setIsTablet')} to change this global variable before any components are\n created.\n <p>\n The value of this variable is only meaningful on touch devices.",
        name:"isTablet",
        setter:[
            "setIsTablet"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:null,
        type:"classAttr",
        definingClass:"class:Browser"
    },
    "attr:ListGrid.initialSort":{
        ref:"attr:ListGrid.initialSort",
        flags:"IR",
        description:"An array of ${isc.DocUtils.linkForRef('object:SortSpecifier')} objects used to set up the initial sort configuration for\n this grid. If specified, this will be used instead of any ${isc.DocUtils.linkForRef('attr:ListGrid.sortField')} specified.",
        name:"initialSort",
        seeAlso:[
        ],
        valueType:"Array of SortSpecifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "classMethod:isc.logEcho":{
        ref:"classMethod:isc.logEcho",
        flags:"",
        description:" Logs the echoed object (using ${isc.DocUtils.linkForRef('classMethod:isc.echo')}) as a warning, prefixed with an\n optional message.\n\n",
        name:"logEcho",
        seeAlso:[
            {
                ref:"classMethod:Log.logWarn",
                description:"for logging info"
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:DateChooser.showTodayButton":{
        ref:"attr:DateChooser.showTodayButton",
        flags:"IRW",
        description:"Determines whether the \"Today\" button will be displayed, allowing the user to select \n the current date.",
        name:"showTodayButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:StatefulCanvas.redrawOnStateChange":{
        ref:"attr:StatefulCanvas.redrawOnStateChange",
        flags:"IRWA",
        description:"Whether this widget needs to redraw to reflect state change",
        name:"redrawOnStateChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "classMethod:Page.getHeight":{
        ref:"classMethod:Page.getHeight",
        flags:"",
        description:" Get the height of the visible portion of the window, not including browser chrome or the\n scrollbar area.\n <P>\n See also ${isc.DocUtils.linkForRef('classMethod:Page.getOrientation')}.\n",
        name:"getHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"the window object",
                optional:true,
                name:"wd",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"height of the page",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "sizing"
        ]
    },
    "attr:GridRenderer.baseStyle":{
        ref:"attr:GridRenderer.baseStyle",
        flags:"IR",
        getter:[
            "getBaseStyle"
        ],
        description:"The base name for the CSS class applied to cells. This style will have \"Dark\", \n \"Over\", \"Selected\", or \"Disabled\" appended to it according to the state of the cell.",
        name:"baseStyle",
        seeAlso:[
            {
                ref:"method:GridRenderer.getCellStyle",
                description:null
            },
            {
                ref:"method:GridRenderer.getBaseStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"cell\"",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "method:MetricSettings.getDataColor":{
        ref:"method:MetricSettings.getDataColor",
        flags:"",
        description:" Get a color from the ${isc.DocUtils.linkForRef('attr:MetricSettings.dataColors')} Array\n <smartclient>\n <P>\n Override to provide a dynamic color generation scheme.\n </smartclient>\n\n",
        name:"getDataColor",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the visual element to be colored",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:null,
            type:"CSSColor"
        },
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "attr:DynamicForm.items":{
        ref:"attr:DynamicForm.items",
        flags:"IRW",
        getter:[
            "getItems"
        ],
        description:"Synonym for ${isc.DocUtils.linkForRef('attr:DynamicForm.fields')}",
        name:"items",
        setter:[
            "setItems"
        ],
        seeAlso:[
            {
                ref:"attr:DynamicForm.fields",
                description:null
            }
        ],
        valueType:"Array of FormItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "items"
        ]
    },
    "attr:ListGrid.canMultiSort":{
        ref:"attr:ListGrid.canMultiSort",
        flags:"IRW",
        description:"When true, indicates that this ListGrid supports sorting on multiple fields.  Note that even\n when set to true, multi-field sorting may not be available if the grid is databound and the\n ${isc.DocUtils.linkForRef('attr:DataSource.canMultiSort','DataSource doesn\\'t support multi-sort')}, or if sorting for a\n field is ${isc.DocUtils.linkForRef('attr:ListGridField.canSortClientOnly','client-only')} but not all data is available.",
        name:"canMultiSort",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:ListGrid"
    },
    "class:AutoFitButton":{
        methods:[
        ],
        ref:"class:AutoFitButton",
        deprecated:"As of Isomorphic SmartClient version 5.5, autoFit behavior can be achieved using the Button class instead by setting the property ${isc.DocUtils.linkForRef('attr:Button.autoFit')} to true.",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control/Button"
        ],
        attrs:[
        ],
        description:"A button that automatically sizes to the length of its title.  Implemented via the \n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.autoFit')} property.",
        name:"AutoFitButton",
        seeAlso:[
            {
                ref:"class:Button",
                description:null
            }
        ],
        type:"class"
    },
    "attr:DataSourceField.storeWithHash":{
        ref:"attr:DataSourceField.storeWithHash",
        flags:"IR",
        description:"If set, causes the field to be securely hashed before saving on an \"add\" or \"update\" \n operation.",
        name:"storeWithHash",
        seeAlso:[
        ],
        valueType:"HashAlgorithm",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "method:DataBoundComponent.enableHiliting":{
        ref:"method:DataBoundComponent.enableHiliting",
        flags:"",
        description:" Enable all hilites.\n\n",
        name:"enableHiliting",
        seeAlso:[
        ],
        params:[
            {
                description:"new enabled state to apply - if null, defaults to true",
                optional:true,
                name:"enable",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:DynamicForm.autoFetchData":{
        ref:"attr:DynamicForm.autoFetchData",
        flags:"IR",
        description:"If true, when this component is first drawn, automatically call <code>this.fetchData()</code>.\n Criteria for this fetch may be picked up from ${isc.DocUtils.linkForRef('attr:DynamicForm.initialCriteria')}, and textMatchStyle may\n be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}.\n <P>\n <span style='color:red'>NOTE:</span> if <code>autoFetchData</code> is set, calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} before draw will cause two requests to be issued, one from the manual\n call to fetchData() and one from the autoFetchData setting.  The second request will use\n only ${isc.DocUtils.linkForRef('attr:DynamicForm.initialCriteria')} and not any other criteria or settings from the first request.\n Generally, turn off autoFetchData if you are going to manually call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} at any time.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "databinding"
        ]
    },
    "attr:ListGridField.sortDirection":{
        ref:"attr:ListGridField.sortDirection",
        flags:"IRW",
        description:"Specifies the default sorting direction for this column. If specified on the\n ${isc.DocUtils.linkForRef('attr:ListGrid.sortField','default sort field')} for the listGrid, sorting occurs\n automatically, otherwise this will be the default direction when the user clicks the\n field header, or calls ${isc.DocUtils.linkForRef('method:ListGrid.sort')} without specifying an explicit sort\n direction.\n <P>\n Overrides ListGrid.sortDirection",
        name:"sortDirection",
        seeAlso:[
            {
                ref:"type:SortDirection",
                description:null
            }
        ],
        valueType:"SortDirection",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "sorting"
        ]
    },
    "attr:Window.title":{
        ref:"attr:Window.title",
        flags:"IRW",
        description:"title for this Window, shown in the header (if drawn)",
        name:"title",
        setter:[
            "setTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Untitled Window\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "headerLabel",
            "i18nMessages"
        ]
    },
    "method:Canvas.setBackgroundColor":{
        ref:"method:Canvas.setBackgroundColor",
        flags:"",
        description:" Sets the background color of this component to <code>newColor</code>.\n",
        name:"setBackgroundColor",
        seeAlso:[
        ],
        params:[
            {
                description:"new background color, or <code>null</code> to remove the current background color.",
                optional:false,
                name:"newColor",
                defaultValue:null,
                type:"CSSColor"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSourceField.javaCollectionClass":{
        ref:"attr:DataSourceField.javaCollectionClass",
        flags:"IR",
        description:"See ${isc.DocUtils.linkForRef('attr:DataSourceField.javaClass')} - when auto-populating of Java Beans / POJOs based on \n inbound DSRequest data, for a field of type Collection or Map, \n <code>javaCollectionClass</code> can \n be used to specify a particular concrete class to use.  If not specified, and a concrete\n Collection or Map class cannot be discovered using Java Reflection, the following concrete\n classes are used:\n <ul>\n <li> <code>java.util.ArrayList</code> is used for fields of type <code>List</code>\n <li> <code>java.util.HashSet</code> is used for fields of type <code>Set</code>\n <li> <code>java.util.LinkedList</code> is used for fields of type <code>Queue</code>\n <li> <code>org.apache.commons.collections.map.LinkedMap</code> is used for fields of type <code>Map</code>\n <li> <code>java.util.ArrayList</code> is used for fields that are otherwise of type <code>Collection</code>\n </ul>\n Note that this value is used even if the target Collection or Map is declared as a concrete\n class.  So, for example, if you set <code>javaCollectionClass</code> to \n <code>java.util.LinkedList</code> but your setter method accepts a \n <code>java.util.ArrayList</code>, you will get a ClassCastException.",
        name:"javaCollectionClass",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:TabSet.tabBarAlign":{
        ref:"attr:TabSet.tabBarAlign",
        flags:"IR",
        description:"Alignment of the tabBar.\n <P>\n If the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} is \"top\" or \"bottom\", then \n this attribute may be set to \"left\", \"right\" or \"center\".  The default is \"left\", or\n \"right\" in ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','RTL mode')}.\n <P>\n If the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} is \"left\" or \"right\", then this\n attribute may be set to \"top\", \"bottom\" or \"center\".  The default is \"top\".",
        name:"tabBarAlign",
        seeAlso:[
        ],
        valueType:"Side | Alignment",
        defaultValue:"see below",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('tabsAlign')}"
        ],
        definingClass:"class:TabSet",
        groups:[
            "tabBar"
        ]
    },
    "attr:Calendar.eventStartDateFieldTitle":{
        ref:"attr:Calendar.eventStartDateFieldTitle",
        flags:"IR",
        description:"The title for the start date field in the quick and advanced event dialogs",
        name:"eventStartDateFieldTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"From\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "group:autoComplete":{
        ref:"group:autoComplete",
        refs:[
        ],
        name:"autoComplete",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.showHover":{
        ref:"attr:ListGrid.showHover",
        flags:"IRW",
        description:"If true, and canHover is also true, when the user hovers over a cell, hover text will pop up\n next to the mouse.  The contents of the hover is determined by ${isc.DocUtils.linkForRef('method:ListGrid.cellHoverHTML')}.",
        name:"showHover",
        seeAlso:[
            {
                ref:"attr:ListGrid.canHover",
                description:null
            },
            {
                ref:"method:ListGrid.cellHoverHTML",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hovers"
        ]
    },
    "method:CubeGrid.deselectCells":{
        ref:"method:CubeGrid.deselectCells",
        flags:"",
        description:" Deselect cells that match a ${isc.DocUtils.linkForRef('object:FacetValueMap')}.\n Also supports an explicit list of CellRecords or cell IDs.\n\n",
        name:"deselectCells",
        seeAlso:[
        ],
        params:[
            {
                description:"cells to deselect",
                optional:false,
                name:"cellList",
                defaultValue:null,
                type:"Array[] of CellRecord | FacetValueMap | Array of ID"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:FormItem.getRect":{
        ref:"method:FormItem.getRect",
        flags:"",
        description:" Return the coordinates of this object as a 4 element array.\n",
        name:"getRect",
        seeAlso:[
        ],
        returns:{
            description:"[left, top, width, height]",
            type:"array"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "positioning",
            "sizing"
        ]
    },
    "attr:ComboBoxItem.maskOverwriteMode":{
        ref:"attr:ComboBoxItem.maskOverwriteMode",
        flags:"IRWA",
        description:"Not applicable to a ComboBoxItem.",
        name:"maskOverwriteMode",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:ListGridField.hiliteIconRightPadding":{
        ref:"attr:ListGridField.hiliteIconRightPadding",
        flags:"IRW",
        description:"How much padding should there be on the right of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons','hilite icons')}\n for this field?\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconRightPadding')}",
        name:"hiliteIconRightPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "hiliting"
        ]
    },
    "attr:SelectItem.optionOperationId":{
        ref:"attr:SelectItem.optionOperationId",
        flags:"IR",
        description:"If this item has a specified <code>optionDataSource</code>, this attribute may be set\n to specify an explicit ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} when performing a fetch against the\n option dataSource to pick up display value mapping.",
        name:"optionOperationId",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:StatefulCanvas.iconSpacing":{
        ref:"attr:StatefulCanvas.iconSpacing",
        flags:"IR",
        description:"Pixels between icon and title text.",
        name:"iconSpacing",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:FormItem.titleHover":{
        ref:"method:FormItem.titleHover",
        flags:"A",
        description:" Optional stringMethod to fire when the user hovers over this item's title.\n Return false to suppress default behavior of showing a hover canvas containing the\n HTML returned by <code>formItem.titleHoverHTML()</code> / \n <code>form.titleHoverHTML()</code>.\n\n",
        name:"titleHover",
        seeAlso:[
            {
                ref:"method:FormItem.itemHover",
                description:null
            },
            {
                ref:"method:FormItem.titleHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"Pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"This items form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:Menu.dataProperties":{
        ref:"attr:Menu.dataProperties",
        flags:"IR",
        description:"For a <code>Menu</code> that uses a DataSource, these properties will be passed to\n the automatically-created ResultTree.  This can be used for various customizations such as\n modifying the automatically-chosen ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}.",
        name:"dataProperties",
        seeAlso:[
        ],
        valueType:"Tree Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu",
        groups:[
            "databinding"
        ]
    },
    "attr:GridRenderer.emptyMessage":{
        ref:"attr:GridRenderer.emptyMessage",
        flags:"IRW",
        description:"The string to display in the body of a listGrid with an empty data array, if\n showEmptyMessage is true.",
        name:"emptyMessage",
        seeAlso:[
            {
                ref:"attr:GridRenderer.showEmptyMessage",
                description:null
            },
            {
                ref:"attr:GridRenderer.emptyMessageStyle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"No data to display\"",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "emptyMessage",
            "i18nMessages"
        ]
    },
    "attr:DrawImage.left":{
        ref:"attr:DrawImage.left",
        flags:"IRW",
        description:"Left coordinate in pixels relative to the DrawPane.",
        name:"left",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawImage"
    },
    "attr:Canvas.ariaState":{
        ref:"attr:Canvas.ariaState",
        flags:"IRA",
        description:"ARIA state mappings for this component. Usually this does not need to be manually\n set - see ${isc.DocUtils.linkForRef('group:accessibility')}.\n <P>\n This attribute should be set to a mapping of aria state-names to values - for example\n to have the \"aria-haspopup\" property be present with a value \"true\", you'd specify:\n <pre>\n  { haspopup : true }\n </pre>",
        name:"ariaState",
        setter:[
            "setAriaState"
        ],
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "accessibility"
        ]
    },
    "method:TimeItem.setHours":{
        ref:"method:TimeItem.setHours",
        flags:"A",
        description:" Set the hour value of this TimeItem.\n If the item value has not been initialized with ${isc.DocUtils.linkForRef('method:TimeItem.setValue','setValue()')}, \n the minute will be established to current minute.\n <P>\n You can use ${isc.DocUtils.linkForRef('method:TimeItem.setValue','setValue()')} to set both hours and minutes at the same time.\n <P>\n <smartgwt>\n setHours() cannot be called until the item has been added to a DynamicForm and the form has been drawn.\n </smartgwt>    \n",
        name:"setHours",
        seeAlso:[
        ],
        params:[
            {
                description:"new hours value for this TimeItem.",
                optional:false,
                name:"hours",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:TestFunctionResult.failedGeneration":{
        ref:"attr:TestFunctionResult.failedGeneration",
        flags:"IRW",
        description:"Set to true if there is a syntax error in the formula or summary being checked.\n <P>\n When set to true, ${isc.DocUtils.linkForRef('attr:TestFunctionResult.errorText')} contains the exception message.",
        name:"failedGeneration",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:TestFunctionResult",
        groups:[
            "formulaFields"
        ]
    },
    "method:DynamicForm.getFieldErrors":{
        ref:"method:DynamicForm.getFieldErrors",
        flags:"",
        description:" Returns the current set of validation errors for some field in this form.\n",
        name:"getFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"fieldName to check for errors",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"Error message string, or if there is more than one error      associated with this field, array of error message strings.",
            type:"string | array of strings"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "attr:FacetChart.bandedBackground":{
        ref:"attr:FacetChart.bandedBackground",
        flags:"IR",
        description:"Whether to show alternating color bands in the background of chart.  See\n ${isc.DocUtils.linkForRef('attr:FacetChart.backgroundBandProperties')}.",
        name:"bandedBackground",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "class:PropertySheet":{
        methods:[
        ],
        ref:"class:PropertySheet",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
        ],
        description:"Editor with a minimalist appearance, tuned for editing large numbers of properties in a\n constrained space.",
        name:"PropertySheet",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:Page.getImgURL":{
        ref:"classMethod:Page.getImgURL",
        flags:"",
        description:" Return the full URL for app-specific or skin image.\n <P>\n To use a skin image, start the URL with \"[SKIN]\".  Any other relative URL is assumed\n relative to the ${isc.DocUtils.linkForRef('classMethod:Page.getAppImgDir','appImgDir')}.\n\n",
        name:"getImgURL",
        seeAlso:[
        ],
        params:[
            {
                description:"Local file name for the image.",
                optional:false,
                name:"src",
                defaultValue:null,
                type:"SCImgURL"
            },
            {
                description:"User-specified image directory,\t\t\t\t\t\t\t\t\t\tlocal to",
                optional:true,
                name:"imgDir",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"URL for the image.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "attr:ListGrid.showCellContextMenus":{
        ref:"attr:ListGrid.showCellContextMenus",
        flags:"IRW",
        description:"Whether to show a context menu with standard items for all context clicks on rows in the\n body.",
        name:"showCellContextMenus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:Callbacks.QueueSentCallback":{
        ref:"method:Callbacks.QueueSentCallback",
        flags:"",
        description:" <p>This method is called by the RPCManager every time it sends a queue of requests to the\n server (note that if you not using queuing, the system simply sends queues containing\n just one request, so this API is valid regardless).\n <p/>\n It is intended to be used by user code that needs to be notified when SmartGWT sends\n requests to the server.  Note that the list of {@link com.smartgwt.client.rpc.RPCRequest}'s passed to this\n method is strictly <b>read-only</b>.\n\n",
        name:"QueueSentCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"array of requests sent",
                optional:false,
                name:"response",
                defaultValue:null,
                type:"Array of RPCRequest"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:FiscalYear.date":{
        ref:"attr:FiscalYear.date",
        flags:"IRW",
        description:"The one-based day-number in the ${isc.DocUtils.linkForRef('attr:FiscalYear.month','specified month')} when this fiscal\n year starts.",
        name:"date",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FiscalYear"
    },
    "group:relogin":{
        ref:"group:relogin",
        title:"Relogin",
        treeLocation:[
            "Client Reference/RPC"
        ],
        refs:[
            "classAttr:RPCManager.credentialsURL",
            "classAttr:RPCManager.loginStatusCodeMarker",
            "classAttr:RPCManager.loginRequiredMarker",
            "classAttr:RPCManager.loginSuccessMarker",
            "classAttr:RPCManager.maxLoginAttemptsExceededMarker",
            "classMethod:RPCManager.loginRequired",
            "attr:RPCRequest.containsCredentials"
        ],
        description:"When a user's session has expired and the user tries to navigate to a protected resource,\n typical authentication systems will redirect the user to a login page.  With Ajax systems\n such as SmartClient, this attempted redirect may happen in response to background data\n operations such as a form trying to save.  In this case, the form perceives the login page\n as a malformed response and displays a warning, and the login page is never displayed to the\n user.\n <P>\n The ideal handling of this scenario is that the form's attempt to save is \"suspended\" while the\n user re-authenticates, then is completed normally.  SmartClient makes it easy to\n implement this ideal handling <i>without</i> having to implement session timeout handling in\n every codepath that contacts the server, by providing central notification of session timeout,\n and the ability to re-send a transaction that encountered session timeout.\n <P>\n <h3>Detecting session timeout</h3>\n <P>\n To enable SmartClient to detect that session timeout has occurred, a special marker needs to\n be added to the HTTP response that is sent when a user's session has timed out.  This is\n called the <code>loginRequiredMarker</code>.\n <P>\n If your authentication system will redirect to a login page when a user's session is timed\n out, it's sufficient to simply embed the <code>loginRequiredMarker</code> in the login page.  The\n <code>loginRequiredMarker</code> is valid HTML and will have no effect on the behavior or\n appearance of the page.  The <code>loginRequiredMarker</code> is found in\n <smartclient>smartclientSDK/isomorphic/login/loginRequiredMarker.html</smartclient>\n <smartgwt>docs/loginRequiredMarker.html</smartgwt>\n in your SDK.  Simply copy the contents of this file verbatim into your login page anywhere\n inside the &lt;body&gt; tag; it does not need to be customized in any way for your application.\n <P>\n If it's a problem to modify the login page (even with a marker that has no effect on\n appearance or behavior), see if you can configure your authentication system to return a\n special response specifically for background requests for data.  By default, when using the\n SmartClient Server Framework, all such requests go to the ${isc.DocUtils.linkForRef('classAttr:RPCManager.actionURL')} and\n include an HTTP query parameter \"isc_rpc=1\"; various authentication systems can be\n configured to detect these requests and handle them separately.  One approach is to simply\n copy loginRequiredMarker.html into your application in an area not protected by\n authentication and redirect to it when a background data request with an expired session is\n detected.\n <P>\n <h3>Handling session timeout</h3>\n <P>\n When SmartClient detects the <code>loginRequiredMarker</code>, the transaction that\n encountered session timeout is put on hold, and \n <smartclient>${isc.DocUtils.linkForRef('classMethod:RPCManager.loginRequired')} is called.</smartclient>\n <smartgwt>the RPCManager LoginRequired event is raised.</smartgwt>\n At this point you have a few options:\n <ol>\n \n <li> Leave the SmartClient application and take the user to the login page, by simply doing a\n <code>window.location.replace(<i>myLoginURL</i>)</code>, the simplest but least user friendly\n option.\n \n <li> Open a new browser window that goes to your plain HTML login form (or offer a link that\n opens such a browser window), using a modal dialog in the application page that prompts the\n user to login before continuing, then re-send the intercepted transaction\n (${isc.DocUtils.linkForRef('classMethod:RPCManager.resendTransaction')} when the user indicates he has logged in.\n This is simple, does not drop context, but is not seamless.\n \n <li> Use a SmartClient interface, typically a DynamicForm in a Window, to collect credentials,\n perform login as a background RPC, and on success re-send the intercepted transaction\n (${isc.DocUtils.linkForRef('classMethod:RPCManager.resendTransaction')}.  <smartclient>A complete example of this,\n which assumes an authentication system that can take credentials as HTTP POST params, is\n included in the SDK as isomorphic/login/reloginFlow.js.</smartclient>\n \n </ol>\n <B>Authentication via background RPC form POST</B>\n <smartclient>\n <P>\n The approach shown in reloginFlow.js posts the credentials gathered from the user to\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.credentialsURL')}.  To make this work with an authentication system that can\n accept credentials via HTTP POST:\n <ol>\n <li> set the RPCManager.credentialsURL to the URL where credentials should be POST'd\n <li> include reloginFlow.js in your page, modified, if necessary, so that the names of the\n USERNAME and PASSWORD params match what your authentication system uses\n <li> configure your authentication system to send back the loginSuccessMarker as part of a\n successful login response, and the loginRequiredMarker as part of a failed login response\n </ol>\n If your authentication system can accept POST'd credentials at any URL it protects, the last\n step may be as simple as configuring the loginSuccessMarker file itself as a protected\n resource (<code>isomorphic/login/loginSuccessMarker.html</code>).\n </smartclient>\n <smartgwt>\n\n <P>\n To relogin against any system that can accept credentials as an HTTP POST:\n <ol>\n <li> when the LoginRequired event is raised, show a login form in a modal dialog.  The\n      ${isc.DocUtils.linkForRef('classMethod:isc.showLoginDialog','LoginWindow')} component is a simple version of this, or you can create your own\n <li> when the user enters credentials, POST them using code like the following:\n <pre>\n    RPCRequest request = new RPCRequest();\n    request.setContainsCredentials(true);\n    request.setActionURL(credentialsURL);\n    request.setUseSimpleHttp(true);\n    request.setShowPrompt(false);\n    Map<String,String> params = new HashMap<String,String>();\n    // adjust parameter names to match your authentication system\n    params.put(\"j_username\",<i>username</i>);\n    params.put(\"j_password\",<i>password</i>);\n    request.setParams(params);\n    RPCManager.sendRequest(request,new RPCCallback(){\n        public void execute(RPCResponse response, Object rawData, RPCRequest request) {\n            if (response.getStatus() == RPCResponse.STATUS_SUCCESS) {\n                // get rid of login window\n                RPCManager.resendTransaction();\n            } else if (response.getStatus() == RPCResponse.STATUS_LOGIN_INCORRECT) {\n                // show an error in the login window\n            }\n        }\n    });\n </pre>\n <li> configure your authentication system to send back the loginSuccessMarker as part of a\n successful login response, and the loginRequiredMarker as part of a failed login response\n </ol>\n If your authentication system can accept POST'd credentials at any URL it protects, the last\n step may be as simple as configuring the <code>loginSuccessMarker</code> file itself as a\n protected resource.  The <code>loginSuccessMarker</code> is found in\n <code>docs/loginSuccessMarker.html</code> in your SDK.\n </smartgwt>\n <P>\n <B>Authentication via background SmartClient server RPC/DMI</B>\n <P>\n If you are using the SmartClient Java server and your authentication system allows you to mark\n a user as authenticated from Java, you can perform a normal RPC or DMI with the credentials\n gathered from the user and send back success or failure indications as normal RPC or DMI\n responses.  This can be useful if, in addition to logging in, you want to send back additional\n data.\n <P>\n <B>Advanced: concurrency</B>\n <P>\n If, after loginRequired() has fired and before the user has re-authenticated, you send\n additional RPCs to protected URLs, you will get additional loginRequired() notifications.  This\n may happen to applications that poll for data or periodically save without user action.  You\n may wish to avoid this by setting an application-specific flag to avoid firing requests during\n the relogin process.  However, you must ultimately either\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.resendTransaction','resend')} or ${isc.DocUtils.linkForRef('classMethod:RPCManager.clearTransaction','discard')}\n every transaction for which loginRequired() fires, or you will have a memory leak due to\n suspended transactions.\n <P>\n Note also that there is no requirement that the relogin process blocks user interaction.\n Applications that access multiple services may choose to simply show an unobtrusive error\n indication such that the user can log back in at his leisure, or even log the user back in\n automatically.",
        name:"relogin",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Calendar.alternateLaneStyles":{
        ref:"attr:Calendar.alternateLaneStyles",
        flags:"IRW",
        description:"When showing a ${isc.DocUtils.linkForRef('attr:Calendar.timelineView','Timeline')}, or a ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day view')} when \n ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} is true, whether to make lane boundaries more obvious by showing\n alternate lanes in a different color.",
        name:"alternateLaneStyles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:DrawItem.hideKnobs":{
        ref:"method:DrawItem.hideKnobs",
        flags:"",
        description:" Hides a set of control knobs for this drawItem. Updates ${isc.DocUtils.linkForRef('attr:DrawItem.knobs')} to remove the\n specified knobType, and clears any drawn knobs for this knobType. \n",
        name:"hideKnobs",
        seeAlso:[
        ],
        params:[
            {
                description:"knobs to hide",
                optional:false,
                name:"knobType",
                defaultValue:null,
                type:"KnobType | Array of KnobType"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "classAttr:Operators.lessThanFieldTitle":{
        ref:"classAttr:Operators.lessThanFieldTitle",
        flags:"IR",
        description:"Title for the \"lessThanField\" operator",
        name:"lessThanFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"less than field\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TreeGrid.fetchData":{
        ref:"method:TreeGrid.fetchData",
        flags:"",
        description:" Uses a \"fetch\" operation on the current ${isc.DocUtils.linkForRef('class:DataSource','grid.dataSource')} to retrieve data\n that matches the provided criteria, and displays the matching data in this component as a\n tree.\n <P>\n This method will create a ${isc.DocUtils.linkForRef('class:ResultTree')} to manage tree data, which will\n subsequently be available as <code>treeGrid.data</code>.  DataSource records\n returned by the \"fetch\" operation are linked into a tree structure according to\n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} and\n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} declarations on DataSource fields.  See the\n ${isc.DocUtils.linkForRef('group:treeDataBinding')} topic for complete details.\n <P>\n By default, the created ResultTree will use folder-by-folder load on demand, asking the\n server for the children of each folder as the user opens it.\n <P>\n The ${isc.DocUtils.linkForRef('class:ResultTree')} created by <code>fetchData()</code> can be customized by setting\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataProperties')} to an Object containing properties and methods to apply to\n the created ResultTree.  For example, the property that determines whether a node is a\n folder (${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty','isFolderProperty')}) can be customized, or\n level-by-level loading can be disabled via\n ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand','loadDataOnDemand:false')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand')} is true, this grid will issue fetch requests each time the\n user opens a folder to load its child data.<br>\n The criteria on this fetch request will consist of the appropriate value for the\n foreignKey field, combined with the criteria passed to <code>fetchData()</code>\n when the data was first loaded.\n This allows you to retrieve multiple different tree structures from the same DataSource.\n However note that the server is expected\n to always respond with an intact tree - returned nodes which do not have parents are dropped\n from the dataset and not displayed.\n <P>\n The callback passed to <code>fetchData</code> will fire once, the first time that data is\n loaded from the server.  If using folder-by-folder load on demand, use the\n ${isc.DocUtils.linkForRef('method:ResultTree.dataArrived')} notification to be notified each time new nodes are loaded.\n <P>\n Note that when calling 'fetchData()', changes to criteria may or may not result in a\n DSRequest to the server due to client-side filtering (see ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode')}. \n You can call willFetchData(criteria) to determine if new criteria will result in a \n server fetch.\n <P>\n If you need to force data to be re-fetched, you can call invalidateCache() and \n new data will automatically be fetched from the server using the current criteria \n and sort direction.<br>\n When using invalidateCache() there is no need to also call fetchData() and \n in fact this could produce unexpected results.\n <P>\n\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria. If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed                                          in as this argument instead of a raw criteria \n                                          object, will be derived by calling\n                                          ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete. Fires                                          only if server contact was required",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:FacetValue.selectionBoundary":{
        ref:"attr:FacetValue.selectionBoundary",
        flags:"IR",
        description:"Selection boundary determining what facets / facetValues can be selected together by\n drag selection / shift+click selection.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"selectionBoundary",
        seeAlso:[
        ],
        valueType:"SelectionBoundary",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:FormItem.cellHeight":{
        ref:"attr:FormItem.cellHeight",
        flags:"IRW",
        description:"If specified, this property will govern the height of the cell in which this form\n item is rendered.\n Will not apply when the containing DynamicForm sets <code>itemLayout:\"absolute\"</code>.",
        name:"cellHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:SectionStackSection.canTabToHeader":{
        ref:"attr:SectionStackSection.canTabToHeader",
        flags:"IR",
        description:"If true, the header for this Section will be included in the page's tab\n order for accessibility. May also be set at the ${isc.DocUtils.linkForRef('class:SectionStack')} level via \n ${isc.DocUtils.linkForRef('attr:SectionStack.canTabToHeaders')}.\n <P>\n See ${isc.DocUtils.linkForRef('group:accessibility')}.",
        name:"canTabToHeader",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "classMethod:SimpleType.getDefaultSummaryFunction":{
        ref:"classMethod:SimpleType.getDefaultSummaryFunction",
        flags:"",
        description:" Retrieves the default summary function for some field type.\n",
        name:"getDefaultSummaryFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"type name",
                optional:false,
                name:"typeName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"default summary function for this data type.",
            type:"SummaryFunction"
        },
        type:"classMethod",
        definingClass:"class:SimpleType"
    },
    "method:DrawRect.setCenter":{
        ref:"method:DrawRect.setCenter",
        flags:"",
        description:" Move the drawRect such that it is centered over the specified coordinates.\n",
        name:"setCenter",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for new center position",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for new center postiion",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:IconButton.showButtonTitle":{
        ref:"attr:IconButton.showButtonTitle",
        flags:"IRW",
        description:"Whether to show the title-text for this IconButton.  If set to false, title-text is omitted\n altogether and just the icon is displayed.",
        name:"showButtonTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:ListGrid.hiliteIconLeftPadding":{
        ref:"attr:ListGrid.hiliteIconLeftPadding",
        flags:"IRW",
        description:"How much padding should there be on the left of ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIcons','hilite icons')} by default?\n Can be overridden at the field level",
        name:"hiliteIconLeftPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "method:Selection.selectAll":{
        ref:"method:Selection.selectAll",
        flags:"",
        description:" Select all records of the list.\n",
        name:"selectAll",
        seeAlso:[
        ],
        params:[
            {
                description:"If this selection's data object is a tree,    if <code>true</code> is passed for this parameter,\n   only visible nodes will be selected. Nodes embedded in a closed parent folder\n   (and thus hidden from the user) will not be selected.",
                optional:true,
                name:"visibleNodesOnly",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"Returns <code>true</code> if the selection actually changed,    <code>false</code> if not.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "method:DataBoundComponent.selectSingleRecord":{
        ref:"method:DataBoundComponent.selectSingleRecord",
        flags:"",
        description:" Select a single ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index, and deselect everything else.\n When programmatic selection of records is a requirement and \n ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType','selectionType()')} is \"single\", use this method rather than \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectRecord','selectRecord()')} to \n enforce mutually-exclusive record-selection.\n\n",
        name:"selectSingleRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to select",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:FilterClause.valueSetHint":{
        ref:"attr:FilterClause.valueSetHint",
        flags:"IR",
        description:"A hint to show in the value-item when editing an operator which takes an array of values.",
        name:"valueSetHint",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Comma-separated values\"",
        type:"attr",
        definingClass:"class:FilterClause",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.scrollRedrawDelay":{
        ref:"attr:ListGrid.scrollRedrawDelay",
        flags:"IRW",
        description:"While drag scrolling in an incrementally rendered grid, time in milliseconds to wait\n before redrawing, after the last mouse movement by the user. This delay may be \n separately customized for mouse-wheel scrolling via ${isc.DocUtils.linkForRef('attr:ListGrid.scrollWheelRedrawDelay')}.\n <P>\n See also\n ${isc.DocUtils.linkForRef('attr:GridRenderer.instantScrollTrackRedraw')} for cases where this delay is skipped.",
        name:"scrollRedrawDelay",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"75",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "method:ListGrid.getVisibleRows":{
        ref:"method:ListGrid.getVisibleRows",
        flags:"",
        description:" Get the rows that are currently visible in the viewport, as an array of \n [firstRowNum, lastRowNum]. \n <p>\n If the grid contains no records, will return [-1,-1].  Will also return [-1,-1] if called at\n an invalid time (for example, data is in the process of being fetched - see\n ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown')}).\n \n",
        name:"getVisibleRows",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array of Integer"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TreeGrid.displayNodeType":{
        ref:"attr:TreeGrid.displayNodeType",
        flags:"IRW",
        description:"Specifies the type of nodes displayed in the treeGrid.",
        name:"displayNodeType",
        seeAlso:[
            {
                ref:"type:DisplayNodeType",
                description:"for options"
            }
        ],
        valueType:"DisplayNodeType",
        defaultValue:"Tree.FOLDERS_AND_LEAVES",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeField"
        ]
    },
    "classMethod:History.addHistoryEntry":{
        ref:"classMethod:History.addHistoryEntry",
        flags:"",
        description:"\n Call this method to add a synthetic history entry.  The new history entry is added in the\n history stack after the currently visible page - in exactly the same way as the browser\n would treat a new page transition at this point.  In other words, if the user has navigated\n ten pages using, say, a mixture of synthetic and real history entries, then presses back\n five times and then triggers a call to this method, the history entry will be created at the\n 6th position in the history stack and any history entries forward of that will be destroyed.\n <p>\n This method must be called with an id.  This id can be any string - it will be URL-encoded\n and added to the current page URL as an anchor (e.g. #foo).  This URL change allows the user\n to bookmark this particular application state.  When the user next navigates to this history\n entry, the id you supplied here will be passed back to the callback you supplied via\n ${isc.DocUtils.linkForRef('classMethod:History.registerCallback')}.\n <p>\n You may also optionally supply some arbitrary data to associate with this history entry.\n If you do this, the data you passed in will be passed back to you as part of the callback\n you specified via ${isc.DocUtils.linkForRef('classMethod:History.registerCallback')}.  This data object can be anything you\n want, but there are some caveats:\n <ul>\n <li>The data parameter is currently supported by all SmartClient-supported browsers except\n <b>Safari</b></li>\n <li>As long as the user has not navigated away from the top-level page (i.e. the user is\n navigating within synthetic history entries only), whatever data you pass in will be handed\n back to you.\n <li>When the user navigates away from the current page, SmartClient will attempt to\n serialize the data into a string so that when/if the user comes back to this history entry,\n it can be deserialized and passed back to your logic.  To take advantage of this, you need\n to make sure that your data is serializeable.  As long as your data is a native datatype\n (String, Number, Boolean) or a collection of such datatypes (collections meaning object\n literals and arrays), then it will serialize correctly.  Things like pointers to the\n document object and functions cannot be serialized.\n <li>In order for the serialization to occur on a page transition, you must have the\n SmartClient Core module loaded on the page at the time of the transition.  If it's not\n available, the data will be lost, but you will still get a callback with the id you specify\n if the user navigates back to this history entry later.\n <li>The data associated with this history entry will persist as long as at least one\n instance of the browser remains open on the user's machine.  Once the user closes all\n browser instances, the data will be lost. \n <li>Also, the user can trigger a history callback at any time by navigating to a bookmarked\n history entry that may have been created in a past session, such that no data is associated\n with that id in the current session.  How you choose to handle that situation is up to you.\n </ul>\n <p>\n You're always guaranteed to receive the id you associate with a history entry in the\n callback that you specify, but the data you associated may or may not be available, so be\n careful about how you use it. Note that by passing the <code>requiresData</code> parameter\n to ${isc.DocUtils.linkForRef('classMethod:History.registerCallback')} you can suppress the callback from firing unless the stored\n data object is actually available.\n\n",
        name:"addHistoryEntry",
        seeAlso:[
        ],
        params:[
            {
                description:"The id you want to associate with this history entry.  This value will appear as an anchor reference at the end of the URL string.  For example, if you pass in\n \"foo\" as the id, the URL will then have a #foo tacked on the end of it.  This id will be\n passed back to the callback you specified in ${isc.DocUtils.linkForRef('classMethod:History.registerCallback')} when the user\n navigates to this history entry in the future.",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"string"
            },
            {
                description:"The title to show in the history drop-down for this history entry.  If not specified, the <code>id</code> is used, unless you've set an explicit history title via\n ${isc.DocUtils.linkForRef('classMethod:History.setHistoryTitle')}.  Note: this currently works in IE only.  You may pass a\n title in any other browser, but it will not change what's displayed in the history\n drop-down.",
                optional:true,
                name:"title",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Arbitrary data to associate with this history entry.  When the user next navigates to this history entry, this data will be provided as an argument to your callback\n function.  Note that the SmartClient Core module is also required to be loaded on the page\n for this particular feature to work.",
                optional:true,
                name:"data",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"classMethod",
        definingClass:"class:History"
    },
    "attr:RPCRequest.willHandleError":{
        ref:"attr:RPCRequest.willHandleError",
        flags:"IRW",
        description:"With willHandleError:false, rpcResponses that indicate an error go through centralized\n handling in the RPCManager and rpcRequest.callback is never invoked.\n <P>\n Setting willHandleError:true means that your rpcRequest.callback will receive rpcResponses\n that have an error status and must handle them.\n <P>\n See also the error handling section in the ${isc.DocUtils.linkForRef('class:RPCManager')} docs.",
        name:"willHandleError",
        seeAlso:[
            {
                ref:"class:RPCManager",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "errorHandling"
        ]
    },
    "group:hoverTips":{
        ref:"group:hoverTips",
        refs:[
            "method:CubeGrid.facetLabelHoverHTML",
            "method:CubeGrid.facetValueHoverHTML",
            "attr:CubeGrid.facetValueHoverWidth",
            "attr:CubeGrid.facetLabelHoverWidth",
            "attr:CubeGrid.facetValueHoverHeight",
            "attr:CubeGrid.facetLabelHoverHeight",
            "attr:CubeGrid.facetValueHoverAlign",
            "attr:CubeGrid.facetLabelHoverAlign",
            "attr:CubeGrid.facetValueHoverVAlign",
            "attr:CubeGrid.facetLabelHoverVAlign",
            "attr:CubeGrid.facetValueHoverStyle",
            "attr:CubeGrid.facetLabelHoverStyle"
        ],
        description:null,
        name:"hoverTips",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.alternateRecordFrequency":{
        ref:"attr:ListGrid.alternateRecordFrequency",
        flags:"IRW",
        description:"The number of consecutive rows to draw in the same style before alternating, when\n ${isc.DocUtils.linkForRef('attr:GridRenderer.alternateRowStyles','alternateRowStyles')} is true.",
        name:"alternateRecordFrequency",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "method:ResultSet.allMatchingRowsCached":{
        ref:"method:ResultSet.allMatchingRowsCached",
        flags:"A",
        description:" Do we have a complete client-side cache of records for the current filter criteria?\n <P>\n Returns <code>false</code> if this is a paged data set, and the entire set of records that\n match the current criteria has not been retrieved from the server. In other words, a\n return value of <code>false</code> means that this <code>ResultSet</code> has a partial cache.\n\n",
        name:"allMatchingRowsCached",
        seeAlso:[
        ],
        returns:{
            description:"whether all matching rows are cached",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:ColumnTree.showMultipleColumns":{
        ref:"attr:ColumnTree.showMultipleColumns",
        flags:"IRW",
        description:"When set to false, only displays a single column at a time, showing a slide animation \n when moving between columns.",
        name:"showMultipleColumns",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "type:LayoutResizeBarPolicy":{
        ref:"type:LayoutResizeBarPolicy",
        values:[
            {
                description:"resize bars are only shown on members marked                 ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar','showResizeBar:true')}",
                value:"\"marked\""
            },
            {
                description:"resize bars are shown on all resizable members that are not explicitly marked              showResizeBar:false, except the last member.  Appropriate for a\n              ${isc.DocUtils.linkForRef('type:LayoutPolicy')} of \"fill\" (VLayout, HLayout) since the overall space will\n              always be filled.",
                value:"\"middle\""
            },
            {
                description:"resize bars are shown on all resizable members that are not explicitly marked              showResizeBar:false, including the last member.  Can be appropriate for a\n              ${isc.DocUtils.linkForRef('type:LayoutPolicy')} of \"none\" (VStack, HStack) since the overall size of the\n              layout is dictated by it's member's sizes.",
                value:"\"all\""
            },
            {
                description:"resize bars are not shown even if members are marked with                 ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar','showResizeBar:true')}",
                value:"\"none\""
            }
        ],
        description:"Policy for whether resize bars are shown on members by default.",
        name:"LayoutResizeBarPolicy",
        seeAlso:[
        ],
        type:"type"
    },
    "method:TabSet.showTabContextMenu":{
        ref:"method:TabSet.showTabContextMenu",
        flags:"",
        description:" Notification fired when the user right-clicks on a tab.\n Event may be cancelled by returning false\n",
        name:"showTabContextMenu",
        seeAlso:[
        ],
        params:[
            {
                description:"This tabset",
                optional:false,
                name:"tabSet",
                defaultValue:null,
                type:"TabSet"
            },
            {
                description:"the tab object that recieved the context click event",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab"
            }
        ],
        returns:{
            description:"return false to cancel default right-click behavior",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:GridRenderer.getTotalRows":{
        ref:"method:GridRenderer.getTotalRows",
        flags:"",
        description:" Return the total number of rows in the grid.<br><br>\n\n NOTE: in order to create a valid grid, you must either provide a totalRows value or implement\n getTotalRows()\n\n",
        name:"getTotalRows",
        seeAlso:[
            {
                ref:"attr:GridRenderer.totalRows",
                description:null
            }
        ],
        returns:{
            description:null,
            type:"number"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "group:pickerIcon":{
        ref:"group:pickerIcon",
        refs:[
            "method:FormItem.pickerIconClick",
            "attr:FormItem.showPickerIcon",
            "attr:FormItem.showFocusedPickerIcon",
            "attr:FormItem.pickerIconDefaults",
            "attr:FormItem.pickerIconProperties",
            "attr:FormItem.pickerIconName",
            "attr:FormItem.pickerIconSrc",
            "attr:FormItem.pickerIconWidth",
            "attr:FormItem.pickerIconHeight",
            "attr:FormItem.pickerIconPrompt",
            "attr:FormItem.pickerIconStyle",
            "attr:FormItem.controlStyle",
            "attr:SelectItem.showPickerIcon",
            "attr:SelectItem.pickerIconStyle",
            "attr:SelectItem.pickerIconWidth",
            "attr:SelectItem.pickerIconHeight",
            "attr:SelectItem.pickerIconSrc",
            "attr:ComboBoxItem.showPickerIcon",
            "attr:ComboBoxItem.pickerIconWidth",
            "attr:ComboBoxItem.pickerIconSrc",
            "attr:ColorItem.pickerIconWidth",
            "attr:ColorItem.pickerIconHeight",
            "attr:ColorItem.pickerIconSrc"
        ],
        name:"pickerIcon",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DrawLinePath.startPoint":{
        ref:"attr:DrawLinePath.startPoint",
        flags:"IRW",
        description:"Start point of the line",
        name:"startPoint",
        setter:[
            "setStartPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[0,0]",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "method:TreeGrid.folderOpened":{
        ref:"method:TreeGrid.folderOpened",
        flags:"",
        description:"\n This method is called when a folder is opened either via the user manipulating the\n expand/collapse control in the UI or via ${isc.DocUtils.linkForRef('method:TreeGrid.openFolder')}.  You can return\n <code>false</code> to cancel the open.\n\n",
        name:"folderOpened",
        seeAlso:[
        ],
        params:[
            {
                description:"the folder (record) that is being opened",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"false to cancel the open, true to all it to proceed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:Tree.dataChanged":{
        ref:"method:Tree.dataChanged",
        flags:"A",
        description:"\n Called when the structure of this tree is changed in any way.  Intended to be observed.\n <br><br>\n Note that on a big change (many items being added or deleted) this may be called multiple times\n\n",
        name:"dataChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:ListGridField.groupingModes":{
        ref:"attr:ListGridField.groupingModes",
        flags:"IR",
        description:"If set, provides several possible styles of grouping that are valid for this field.  For\n example, a field of type:\"date\" might be able to be grouped by week, month, or by day of\n week.\n <P>\n If <code>groupingModes</code> are present and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grouping is enabled')}, the menu for this field includes a\n submenu of possible grouping modes generated from the <code>groupingModes</code> valueMap.\n When the user selects a particular grouping mode,\n ${isc.DocUtils.linkForRef('attr:ListGridField.groupingMode','field.groupingMode')} is set to the user's chosen mode,\n and this choice can be detected via the <code>field</code> parameter to\n ${isc.DocUtils.linkForRef('method:ListGridField.getGroupValue')} in order to provide different modes of grouping.\n <P>\n The user may also choose to group records without specifying a grouping mode, in this case,\n the ${isc.DocUtils.linkForRef('attr:ListGridField.defaultGroupingMode')} is used.\n <P>\n Note that <code>getGroupValue</code>, <code>groupingModes</code> et al can be specified on\n ${isc.DocUtils.linkForRef('class:SimpleType')} declarations, and the different grouping modes that are offered\n automatically for various common types are defined\n ${isc.DocUtils.linkForRef('class:GroupingMessages','this way')}.",
        name:"groupingModes",
        seeAlso:[
        ],
        valueType:"ValueMap",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "grouping"
        ]
    },
    "attr:ToolStripGroup.titleProperties":{
        ref:"attr:ToolStripGroup.titleProperties",
        flags:"IRW",
        description:"AutoChild properties for fine customization of the title label.",
        name:"titleProperties",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "attr:DataBoundComponent.removeOperation":{
        ref:"attr:DataBoundComponent.removeOperation",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} this component should use when performing remove operations.",
        name:"removeOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "operations"
        ]
    },
    "method:ListGrid.getRollOverCanvas":{
        ref:"method:ListGrid.getRollOverCanvas",
        flags:"",
        description:" If the ${isc.DocUtils.linkForRef('attr:ListGrid.rollOverCanvas','rollOverCanvas')} is enabled, this method will be called to create\n the canvas to display over the current row or cell when a user moves their mouse over the row.\n <p>\n Note that for efficiency this should not typically create a new Canvas every time that it is\n called. Instead typically a single rollOver canvas should be created and updated to reflect\n the current rollOver row if necessary.\n <smartgwt><p>\n <b>Note: This is an override point.</b></smartgwt>\n\n",
        name:"getRollOverCanvas",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the current rollOver row.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"index of the current rollOver column. This parameter will be null unless ${isc.DocUtils.linkForRef('attr:ListGrid.useCellRollOvers','useCellRollOvers')} is true for the grid.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"the embedded component",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "hoverComponents"
        ]
    },
    "method:FormItem.blur":{
        ref:"method:FormItem.blur",
        flags:"",
        description:" Called when this FormItem loses focus.\n \n",
        name:"blur",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "method:ListGrid.setAutoFitWidth":{
        ref:"method:ListGrid.setAutoFitWidth",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')}. Enables or disables dynamic autoFitWidth behavior\n on the specified field. Note if the field is currently autoFitWidth:true, and this method is\n disabling autoFit, the field will not be resized by default - if you wish to resize to an\n explicit width, use ${isc.DocUtils.linkForRef('method:ListGrid.resizeField')}.\n\n",
        name:"setAutoFitWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"field to auto-fit",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Should autoFitWidth be enabled or disabled?",
                optional:false,
                name:"autoFit",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "attr:DSRequest.exportDatesAsFormattedString":{
        ref:"attr:DSRequest.exportDatesAsFormattedString",
        flags:"IR",
        description:"When exporting via ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')} to an <code>XLS</code> or\n <code>OOXML</code> spreadsheet, forces dates to export as a string rather than a true date\n value.\n <p>\n If a date value is provided to a spreadsheet as a string, Excel or other spreadsheet\n applications may not recognize them as being date values that are valid for use in\n date-specific functions in formulas, filters, etc.\n <p>\n For this reason, the default behavior of <code>exportClientData</code> is to provide date\n values to the spreadsheet as true date values.  If\n ${isc.DocUtils.linkForRef('type:FormatString','Format Strings')} are provided via properties like\n ${isc.DocUtils.linkForRef('attr:DataSourceField.format','dataSourceField.format')} these will be translated to Excel /\n OpenOffice format strings and used when generating spreadsheets.  Other formatting logic,\n such as ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue','cell formatters')}, will not be used since they\n cannot be automatically translated to an Excel format string.  If no translatable format\n string is available, date values will be provided to the spreadsheet with no formatter and\n the spreadsheet program's default formatting for date values will be used.\n <p>\n If <code>exportDatesAsFormattedString</code> is set to true, date fields will appear as\n strings that exactly match the formatting shown in the ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}.\n As noted above, this means the spreadsheet program will not recognize the value as\n a date.",
        name:"exportDatesAsFormattedString",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "exportFormatting"
        ]
    },
    "attr:ComboBoxItem.pendingTextBoxStyle":{
        ref:"attr:ComboBoxItem.pendingTextBoxStyle",
        flags:"IRW",
        description:"Optional \"pending\" style for this item's text box.\n <P>\n If ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} is false, when the user modifies the\n value displayed in the combobox item text box, the underlying data value (as returned\n from item.getValue()) is not immediately updated - instead the value is used to filter\n the set of results displayed in the comboBoxItem pickList.\n <P>\n While the comboBoxItem is in this pending state (where the result of getEnteredValue() will\n not necessarily match the display value for whatever is returned by getValue()), the \n pendingTextBoxStyle may be applied to the text box for the item.\n <P>\n When the element value is updated to display the actual value for the item (typically due\n to the user selecting a value from the pickList), the standard \n ${isc.DocUtils.linkForRef('attr:TextItem.textBoxStyle')} will be reapplied.\n <P>\n May be left unset in which case the standard text box style is always applied.\n Has no effect if ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} is true.",
        name:"pendingTextBoxStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:RelativeDateItem.pickerTimeItemProperties":{
        ref:"attr:RelativeDateItem.pickerTimeItemProperties",
        flags:"IRWA",
        description:"A set of properties to apply to the ${isc.DocUtils.linkForRef('class:TimeItem')} displayed in the picker when\n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.showPickerTimeItem')} is true.\n <P>\n Has no effect for fields of type <code>\"date\"</code>.",
        name:"pickerTimeItemProperties",
        seeAlso:[
        ],
        valueType:"TimeItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:RPCRequest.transport":{
        ref:"attr:RPCRequest.transport",
        flags:"IRWA",
        description:"Selects the transport used for this RPCRequest.  If unset, the value of\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTransport')} will be used.\n <p>\n If you're using queueing, note that all requests in the queue must use the same transport.\n If you attempt to send a request via a different transport than those that are currently on\n the queue, it will be sent to the server separately, ahead of the queue, and a warning will\n be logged to the Developer Console.\n <p>\n If you specify an unknown transport, an error will be logged to the DeveloperConsole and\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTransport')} will be used instead.\n <p>\n If you specify the <code>xmlHttpRequest</code> transport and it is not available, a warning will be\n logged to the Developer Console and the RPCManager will attempt to use the\n <code>hiddenFrame</code> transport instead for this request.  Note that some features like\n ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')} require the <code>xmlHttpRequest</code> transport and will not\n work if the <code>xmlHttpRequest</code> transport is unavailable (this can happen if the end user is\n using Internet Explorer and has disabled ActiveX).  You can check whether or not the\n <code>xmlHttpRequest</code> transport is currently available by calling\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.xmlHttpRequestAvailable')}.",
        name:"transport",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.defaultTransport",
                description:null
            }
        ],
        valueType:"RPCTransport",
        defaultValue:"RPCManager.defaultTransport",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "method:DataSource.compareDates":{
        ref:"method:DataSource.compareDates",
        flags:"A",
        description:" Convenience method to compare two Date objects appropriately, depending on whether the\n passed-in fieldName refers to a field of ${isc.DocUtils.linkForRef('type:FieldType','type')} \"datetime\" or \n \"date\".  In the former case, the dates are compared using ${isc.DocUtils.linkForRef('classMethod:Date.compareDates')};\n in the latter case, or if the supplied fieldName is null or unknown to this DataSource,\n the dates are compared using ${isc.DocUtils.linkForRef('classMethod:Date.compareLogicalDates')}.\n",
        name:"compareDates",
        seeAlso:[
        ],
        params:[
            {
                description:"First date in comparison",
                optional:false,
                name:"date1",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"Second date in comparison",
                optional:false,
                name:"date2",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"The name of the field for which the comparison is being run",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"0 if equal, -1 if first date &gt; second date, 1 if second date &gt;                  first date",
            type:"Number"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:DataSource.autoCreateAuditTable":{
        ref:"attr:DataSource.autoCreateAuditTable",
        flags:"IR",
        description:"Setting <code>autoCreateAuditTable</code> to <code>true</code> indicates that audit DataSource \n will automatically create SQL table when ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing')} is enabled.\n <p>\n Note, that <code>autoCreateAuditTable</code> attribute takes effect only if framework setting \n <code>audit.autoCreateTables</code> in <code>server.properties</code> is set to <code>false</code>,\n which by default is set to <code>true</code>.",
        name:"autoCreateAuditTable",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:FilterBuilder.modeSwitcher":{
        ref:"attr:FilterBuilder.modeSwitcher",
        flags:"IR",
        description:"Label to change between simple and advanced mode. When clicked the filter mode\n is switched to the other mode. This label is only shown if\n ${isc.DocUtils.linkForRef('attr:FilterBuilder.showModeSwitcher','showModeSwitcher')} is true.\n <P>\n Shows either ${isc.DocUtils.linkForRef('attr:FilterBuilder.modeSwitcherSimpleMessage','modeSwitcherSimpleMessage')} or\n ${isc.DocUtils.linkForRef('attr:FilterBuilder.modeSwitcherAdvancedMessage','modeSwitcherAdvancedMessage')}\n depending on the current state of the filter.",
        name:"modeSwitcher",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "method:Portlet.setHeight":{
        ref:"method:Portlet.setHeight",
        flags:"",
        description:"\n The height of a Portlet is managed by the ${isc.DocUtils.linkForRef('class:PortalLayout')}. If you want to change\n the Portlet's height, use ${isc.DocUtils.linkForRef('method:Portlet.setRowHeight')} instead.\n\n",
        name:"setHeight",
        seeAlso:[
            {
                ref:"method:Portlet.setRowHeight",
                description:null
            },
            {
                ref:"attr:Portlet.rowHeight",
                description:null
            }
        ],
        params:[
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Portlet",
        groups:[
            "sizing"
        ]
    },
    "method:DrawItem.dragResizeMove":{
        ref:"method:DrawItem.dragResizeMove",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag')} is true and the ${isc.DocUtils.linkForRef('attr:DrawItem.knobs','control knobs')} include \"resize\" knobs,\n then this notification method will be fired when the user drag-resizes the draw item.\n",
        name:"dragResizeMove",
        seeAlso:[
        ],
        params:[
            {
                description:"provides which knob of the ${isc.DocUtils.linkForRef('attr:DrawItem.resizeKnobPoints')} was dragged",
                optional:false,
                name:"position",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new x-coordinate of the knob",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"new y-coordinate of the knob",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"horizontal distance moved",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"vertical distance moved",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:DrawShapeCommand.type":{
        ref:"attr:DrawShapeCommand.type",
        flags:"IR",
        description:"The command type.",
        name:"type",
        seeAlso:[
        ],
        valueType:"DrawShapeCommandType",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawShapeCommand"
    },
    "attr:SelectItem.filterLocally":{
        ref:"attr:SelectItem.filterLocally",
        flags:"IRA",
        description:"If <code>filterLocally</code> is set for this item, and this item is showing options \n from a dataSource, fetch the entire set of options from the server, and use these values\n to map the item value to the appropriate display value. Also use <code>\"local\"</code>\n type filtering on drop down list of options.\n <P>\n This means data will only be fetched once from the server, and then filtered on the\n client.\n <P>\n Note - when this property is set to <code>false</code>, filtering will still be \n performed on the client if a complete set of data for some criteria has been cached\n by a fetch, and a subsequent fetch has more restrictive criteria. To explicitly\n disable client-side filtering set the ${isc.DocUtils.linkForRef('attr:SelectItem.useClientFiltering')} property to false.",
        name:"filterLocally",
        seeAlso:[
            {
                ref:"attr:FormItem.filterLocally",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:FiscalCalendar.defaultYearMode":{
        ref:"attr:FiscalCalendar.defaultYearMode",
        flags:"IRW",
        description:"This attribute controls how the displayed fiscalYear value should be calculated for\n dates falling within a period not explicitly listed in the\n +lik{fiscalCalendar.fiscalYears,fiscal years array}.\n <P>\n The ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultMonth')} and ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultDate')} will be\n used to calculate the start of the fiscal year period. The defaultYearMode\n determines whether the reported fiscalYear for this period matches the year in which\n the period starts or the year in which it ends (so whether a fiscal year spanning\n dates within both 2020 and 2021 is reported as fiscalYear 2020 or 2021).",
        name:"defaultYearMode",
        seeAlso:[
        ],
        valueType:"FiscalYearMode",
        defaultValue:"\"end\"",
        type:"attr",
        definingClass:"object:FiscalCalendar"
    },
    "type:State":{
        ref:"type:State",
        values:[
            {
                description:"state when mouse is not acting on this StatefulCanvas",
                value:"StatefulCanvas.STATE_UP"
            },
            {
                description:"state when mouse is down",
                value:"StatefulCanvas.STATE_DOWN"
            },
            {
                description:"state when mouse is over",
                value:"StatefulCanvas.STATE_OVER"
            },
            {
                description:"disabled",
                value:"StatefulCanvas.STATE_DISABLED"
            }
        ],
        description:"Constants for the standard states for a StatefulCanvas.",
        name:"State",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "state"
        ]
    },
    "method:SimpleTile.getInnerHTML":{
        ref:"method:SimpleTile.getInnerHTML",
        flags:"",
        description:" The default implementation will call ${isc.DocUtils.linkForRef('method:TileGrid.getTileHTML')}.\n",
        name:"getInnerHTML",
        seeAlso:[
        ],
        returns:{
            description:"HTML contents for the tile, as a String",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:SimpleTile"
    },
    "method:SelectItem.setValue":{
        ref:"method:SelectItem.setValue",
        flags:"",
        description:" Set the value of the form item to the value passed in\n <p>\n NOTE: for valueMap'd items, newValue should be data value not displayed value\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value to set the element to",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:SelectItem"
    },
    "method:ValuesManager.getChangedValues":{
        ref:"method:ValuesManager.getChangedValues",
        flags:"",
        description:" Returns all values within this DynamicForm that have changed since \n ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')} last ran. Note that ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')}\n runs on dynamicForm initialization, and with every call to ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}\n so this will typically contain all values the user has explicitly edited since then.\n",
        name:"getChangedValues",
        seeAlso:[
            {
                ref:"method:ValuesManager.getOldValues",
                description:null
            }
        ],
        returns:{
            description:"changed values in the form",
            type:"Object"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:TabBar.baseLineSrc":{
        ref:"attr:TabBar.baseLineSrc",
        flags:"IR",
        description:"Sets ${isc.DocUtils.linkForRef('attr:StretchImg.src')} for the ${isc.DocUtils.linkForRef('group:baseLine')} StretchImg.",
        name:"baseLineSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]baseline.gif\"",
        type:"attr",
        definingClass:"class:TabBar",
        groups:[
            "baseLine"
        ]
    },
    "attr:ImgSectionHeader.controls":{
        ref:"attr:ImgSectionHeader.controls",
        flags:"IR",
        description:"Custom controls to be shown on top of this section header.\n <P>\n These controls are shown in the ${isc.DocUtils.linkForRef('attr:ImgSectionHeader.controlsLayout')}.\n <P>\n Note that this is an init-time property. If you need to dynamically change what \n controls are displayed to the user, we would recommend embedding the\n controls in a Layout or similar container. \n This will allow you to show/hide or add/remove members at runtime\n by manipulating the existing control(s) set up at init time.",
        name:"controls",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionControls')}"
        ],
        definingClass:"class:ImgSectionHeader"
    },
    "classMethod:Date.parseInput":{
        ref:"classMethod:Date.parseInput",
        flags:"",
        description:" Parse a date passed in as a string, returning the appropriate date object.\n",
        name:"parseInput",
        seeAlso:[
        ],
        params:[
            {
                description:"date value as a string",
                optional:false,
                name:"dateString",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Format of the date string being passed.                                      If not passed, the default date input format as set up\n                                      via setInputFormat() will be used.",
                optional:true,
                name:"format",
                defaultValue:null,
                type:"DateInputFormat"
            },
            {
                description:"For date formats that support a 2 digit                                  year, if parsed year is 2 digits and less than this\n                                  number, assume year to be 20xx rather than 19xx",
                optional:true,
                name:"centuryThreshold",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"If the string passed in was not a valid date, in some cases we can convert to a\n          valid date (for example incrementing the year if the month is greater than 12).\n          This optional parameter will suppress such conversions - anything that doesn't\n          parse directly to a valid date will simply return null.",
                optional:true,
                name:"suppressConversion",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"date value, or null if the string could not be parsed to a valid date.",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "class:ScriptTask":{
        methods:[
            "method:ScriptTask.getInputData",
            "method:ScriptTask.setOutputData",
            "method:ScriptTask.getInputRecord",
            "method:ScriptTask.setOutputRecord",
            "method:ScriptTask.execute"
        ],
        ref:"class:ScriptTask",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:ScriptTask.isAsync"
        ],
        description:"Task that executes arbitrary code, either synchronous or asynchronous.  Override the\n ${isc.DocUtils.linkForRef('method:ScriptTask.execute','execute()')} method to provide custom logic.",
        name:"ScriptTask",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.summaryRowHeight":{
        ref:"attr:ListGrid.summaryRowHeight",
        flags:"IR",
        description:"Default height for the ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRow','summary row autoChild')}. Note that this\n height is a minumum - the summary row has ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData')} set to \"vertical\" so\n if multiple rows are visible in the grid summary, the summaryRow component\n will expand to accomodate them.",
        name:"summaryRowHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DataSource.requiresAuthentication":{
        ref:"attr:DataSource.requiresAuthentication",
        flags:"IR",
        description:"Whether a user must be authenticated in order to access this DataSource.  This establishes a\n default for the DataSource as a whole; individual ${isc.DocUtils.linkForRef('attr:DataSource.operationBindings')} within the\n DataSource may still override this setting by explicitly setting\n ${isc.DocUtils.linkForRef('attr:OperationBinding.requiresAuthentication')}.\n <P>\n Whether the user is authenticated is determined by calling\n <code>httpServletRequest.getRemoteUser()</code>, hence works with both simple J2EE security\n (realms and form-based authentication) and JAAS (Java Authentication & Authorization\n Service).\n <P>\n If you wish to use an authentication scheme that does not make use of the servlet API's \n standards, SmartClient Server also implements the <code>setAuthenticated</code> method\n on <code>RPCManager</code>.  You can use this API to tell SmartClient that all the \n requests in the queue currently being processed are associated with an authenticated\n user; in this case, SmartClient will not attempt to authenticate the user via \n <code>httpServletRequest.getRemoteUser()</code>\n <P>\n You can set the default value for this property via setting \"authentication.defaultRequired\"\n in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.  This allows you to, for example,\n cause all DataSources to require\n authentication for all operations by default.\n <P>\n Note that setting this property does not automatically cause an authentication mechanism to\n appear - you still need to separately configure an authentication system.  Likewise, setting\n requiresAuthentication=\"false\" does not automatically allow users to bypass your authentication\n mechanism - you need to set up a URL that will accept DSRequests and process them similar to\n the default \"IDACall\" servlet, and which is not protected by the authentication system.  See\n ${isc.DocUtils.linkForRef('group:servletDetails','Deploying SmartClient')} for details on the IDACall servlet.",
        name:"requiresAuthentication",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "auth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:Window.dismissOnEscape":{
        ref:"attr:Window.dismissOnEscape",
        flags:"IRW",
        description:"Should this window be dismissed (same effect as pressing the \"Cancel\" button) when the \n user presses the \"Escape\" key? Behavior will only occur while the window or one of its\n descendants has focus, and does not cancel the Escape keypress.\n <P>\n If unset default behavior depends on whether a close / cancel button is visible for\n this item.",
        name:"dismissOnEscape",
        seeAlso:[
            {
                ref:"method:Window.shouldDismissOnEscape",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:EditNode.defaults":{
        ref:"attr:EditNode.defaults",
        flags:"IR",
        description:"Properties required to recreate the current ${isc.DocUtils.linkForRef('attr:EditNode.liveObject')}.",
        name:"defaults",
        seeAlso:[
        ],
        valueType:"Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:EditNode"
    },
    "attr:Canvas.shadowOffset":{
        ref:"attr:Canvas.shadowOffset",
        flags:"IRWA",
        description:"Offset of the shadow.  Defaults to half of <code>shadowDepth</code> if unset.\n <P>\n Because of the blurred edges, a shadow is larger than the originating component by\n 2xsoftness.  An <code>shadowOffset</code> of 0 means that the shadow will extend around the\n originating component equally in all directions.",
        name:"shadowOffset",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('shadows')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "shadow"
        ]
    },
    "attr:ServiceTask.fixedValues":{
        ref:"attr:ServiceTask.fixedValues",
        flags:"IR",
        description:"Values to be submitted as part of the DSRequest, regardless of inputs to the task. Will \n be combined with the data from the ${isc.DocUtils.linkForRef('attr:Task.inputField')} or with\n ${isc.DocUtils.linkForRef('attr:ServiceTask.values')} if specified, via simple copying of fields, with\n <code>fixedValues</code> overwriting values provided by the <code>inputField</code>, but\n explicitly specified ${isc.DocUtils.linkForRef('attr:ServiceTask.values')} overriding <code>fixedValues</code>.",
        name:"fixedValues",
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ServiceTask"
    },
    "attr:ListGridField.linkURLSuffix":{
        ref:"attr:ListGridField.linkURLSuffix",
        flags:"IRWA",
        description:"If this field has type [${isc.DocUtils.linkForRef('type:ListGridFieldType')}] set to <code>\"link\"</code>,\n setting this property will apply a standard suffix to the link URL for cells in this field.",
        name:"linkURLSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:TimeItem.getSelectionRange":{
        ref:"method:TimeItem.getSelectionRange",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.getSelectionRange','getSelectionRange')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"getSelectionRange",
        seeAlso:[
        ],
        returns:{
            description:"2 element array indicating start/end character index of current selection  within our text entry field. Returns null if this item is undrawn or doesn't have focus.",
            type:"array"
        },
        type:"method",
        definingClass:"class:TimeItem"
    },
    "classMethod:FileLoader.cacheImgStates":{
        ref:"classMethod:FileLoader.cacheImgStates",
        flags:"",
        description:"\n Caches a set of state images derived from a base image.  This is useful for caching a set of\n images for a single component.  For example this code:\n <pre>\n isc.FileLoader.cacheImgStates(\"/isomorphic/skins/SmartClient/images/TreeGrid/opener.png\",\n                               \"closed,opening,opened\");\n </pre>\n Will cause the following images to be cached:\n <pre>\n /isomorphic/skins/SmartClient/images/TreeGrid/opener_closed.png\n /isomorphic/skins/SmartClient/images/TreeGrid/opener_opening.png\n /isomorphic/skins/SmartClient/images/TreeGrid/opener_opened.png\n </pre>\n\n",
        name:"cacheImgStates",
        seeAlso:[
            {
                ref:"classMethod:FileLoader.cacheStretchImgStates",
                description:null
            }
        ],
        params:[
            {
                description:"List of base image URLs from which stateful names are to be                                    derived.  This can either be a\n                                    string with comma separated baseURLs or an Array of baseURLs.",
                optional:false,
                name:"baseURLs",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"List of states to load.  If none specified, The following                                    default list will be used:\n                                    \"Down,Over,Selected,Selected_Down,Selected_Over\".  This can\n                                    either be a string with comma separated states or an Array\n                                    of states.",
                optional:true,
                name:"states",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when the last of the specified URLs                                      has completed caching.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "method:Callbacks.ClientOnlyDataSourceCallback":{
        ref:"method:Callbacks.ClientOnlyDataSourceCallback",
        flags:"",
        description:" Generic callback interface.\n\n",
        name:"ClientOnlyDataSourceCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"Client only Data Source.",
                optional:false,
                name:"clientOnly",
                defaultValue:null,
                type:"DataSource"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:SectionStackSection.name":{
        ref:"attr:SectionStackSection.name",
        flags:"IR",
        description:"Identifier for the section.  This can be used later in calls to ${isc.DocUtils.linkForRef('class:SectionStack')} APIs such as\n ${isc.DocUtils.linkForRef('method:SectionStack.expandSection')} and ${isc.DocUtils.linkForRef('method:SectionStack.collapseSection')}. Note that if no name\n is specified for the section, one will be auto-generated when the section is created.\n This property should be a string which may be used as a valid JavaScript identifier\n (should start with a letter and not contain space or special characters such as \"*\").",
        name:"name",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "attr:ListGrid.loadingDataMessageStyle":{
        ref:"attr:ListGrid.loadingDataMessageStyle",
        flags:"IRW",
        description:"The CSS style name applied to the loadingDataMessage string if displayed.",
        name:"loadingDataMessageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"loadingDataMessage\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "emptyMessage"
        ]
    },
    "method:Array.and":{
        ref:"method:Array.and",
        flags:"",
        description:" Returns true if all values between the start and end indices are true.\n\n",
        name:"and",
        seeAlso:[
        ],
        params:[
            {
                description:"optional start index (default is 0)",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional end index (default is list.length)",
                optional:true,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"all of the items in the array are true",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "arrayMath"
        ]
    },
    "method:ColorPicker.colorChanged":{
        ref:"method:ColorPicker.colorChanged",
        flags:"",
        description:" Override this method to be kept informed when the ColorPicker changes in real-time \n (for example, if you need to update your own GUI accordingly). Then use the \n getXxxx() methods (for example, ${isc.DocUtils.linkForRef('method:ColorPicker.getBlue','getBlue()')} or \n ${isc.DocUtils.linkForRef('method:ColorPicker.getLuminosity','getLuminosity()')})to obtain current state as required. \n",
        name:"colorChanged",
        seeAlso:[
            {
                ref:"method:ColorPicker.colorSelected",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:Hilite.id":{
        ref:"attr:Hilite.id",
        flags:"IR",
        description:"Unique id for this hilite definition.  \n <P>\n For hilites that include ${isc.DocUtils.linkForRef('attr:Hilite.criteria')} this is not required.\n <P>\n If you are explicitly marking records for hiliting, set\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteProperty')} on the record to this id.",
        name:"id",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "method:DataBoundComponent.askForSort":{
        ref:"method:DataBoundComponent.askForSort",
        flags:"",
        description:" Show a dialog to configure the sorting of multiple fields on this component.  Calls through\n to ${isc.DocUtils.linkForRef('classMethod:MultiSortDialog.askForSort')}, passing this component as the fieldSource and the\n current ${isc.DocUtils.linkForRef('method:DataBoundComponent.getSort','sort-specification')} if there is one.\n\n",
        name:"askForSort",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "classMethod:isc.overwriteClass":{
        ref:"classMethod:isc.overwriteClass",
        flags:"",
        description:" Shortcut for <code>isc.ClassFactory.overwriteClass()</code>.\n",
        name:"overwriteClass",
        seeAlso:[
            {
                ref:"classMethod:ClassFactory.overwriteClass",
                description:null
            }
        ],
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:Calendar.startDate":{
        ref:"attr:Calendar.startDate",
        flags:"IR",
        description:"The start date of the calendar ${isc.DocUtils.linkForRef('class:Timeline','timeline view')}.  Has no effect in \n other views.  If not specified, defaults to a timeline starting from the beginning \n of the current ${isc.DocUtils.linkForRef('attr:Calendar.timelineGranularity','timelineGranularity')} and spanning\n ${isc.DocUtils.linkForRef('attr:Calendar.defaultTimelineColumnSpan','a default of 20')} columns of that granularity. \n <P>\n To set different start and ${isc.DocUtils.linkForRef('attr:Calendar.endDate','end')} dates after initial draw,\n see ${isc.DocUtils.linkForRef('method:Calendar.setTimelineRange','setTimelineRange')}.\n <P>\n Note that this attribute may be automatically altered if showing \n ${isc.DocUtils.linkForRef('attr:Calendar.headerLevels','header-levels')}, to fit to header boundaries.",
        name:"startDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:ResultTree.defaultNewNodesToRoot":{
        ref:"attr:ResultTree.defaultNewNodesToRoot",
        flags:"IRWA",
        description:"This attribute governs how to handle cache-synch when a new node is added to this dataSource \n with no explicit parentId.\n <P>\n If set to <code>true</code>, when a new node is added to this dataSource via\n ${isc.DocUtils.linkForRef('method:DataSource.addData')}, with no explicit parentId, the node will be added as a \n child of the root node of this result tree. Otherwise it will be ignored.\n <P>\n Similar logic applies to ${isc.DocUtils.linkForRef('method:DataSource.updateData','updated nodes')} - if this property is\n true and the parentId of an updated node is cleared, it will be moved to become a child of\n root, otherwise it will be dropped from the tree.",
        name:"defaultNewNodesToRoot",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "attr:ListGrid.hiliteCanReplaceValue":{
        ref:"attr:ListGrid.hiliteCanReplaceValue",
        flags:"IR",
        description:"If set, end users can create advanced hiliting rules that will use the\n ${isc.DocUtils.linkForRef('attr:Hilite.replacementValue')} feature to cause values in hilited cells\n to be replaced with a user-entered value.  For example, a user could create a hilite rule\n that replaces numeric values ranging from 0.5 to 1.0 with the text \"LOW\".\n <p>\n Specifically, when the \"Add Advanced Rule\" button is pressed and\n <code>hiliteCanReplaceValue</code> is true, the user will see a text entry field titled\n \"Replace value with\" (${isc.DocUtils.linkForRef('attr:ListGrid.hiliteReplaceValueFieldTitle')}) and if they enter a value, that\n value will appear in the grid cell in lieue of the cell's original value.",
        name:"hiliteCanReplaceValue",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "attr:Gauge.labelPrefix":{
        ref:"attr:Gauge.labelPrefix",
        flags:"IRW",
        description:"The label prefix.",
        name:"labelPrefix",
        setter:[
            "setLabelPrefix"
        ],
        seeAlso:[
            {
                ref:"method:Gauge.formatLabelContents",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:MultiFileItem.pickerUploadProgressLabel":{
        ref:"attr:MultiFileItem.pickerUploadProgressLabel",
        flags:"IR",
        description:"Specifies the label of the progress meter in the picker lauched by the\n ${isc.DocUtils.linkForRef('attr:MultiFileItem.editButton','edit button')}.  This property is a dynamic string, similar to the\n ${isc.DocUtils.linkForRef('attr:Canvas.dynamicContents')} feature, with the variables <code>fileName</code> and\n <code>formattedFileSize</code>.",
        name:"pickerUploadProgressLabel",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Saving ${fileName} ${formattedFileSize}\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.operator":{
        ref:"attr:FormItem.operator",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:OperatorId')} to be used when ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} is called.\n <P>\n <code>item.operator</code> can be used to create a form that offers search functions such\n as numeric range filtering, without the more advanced user interface of the\n ${isc.DocUtils.linkForRef('class:FilterBuilder')}.  For example, two SpinnerItems could be created with\n <code>formItem.operator</code> set to \"greaterThan\" and \"lessThan\" respectively to\n enable filtering by a numeric range.\n <P>\n When <code>item.operator</code> is set for any FormItem in a form,\n <code>form.getValuesAsCriteria()</code> will return an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object\n instead of a normal ${isc.DocUtils.linkForRef('type:Criteria')} object.  Each FormItem will produce one\n ${isc.DocUtils.linkForRef('object:Criterion')} affecting the DataSource field specified by ${isc.DocUtils.linkForRef('attr:FormItem.criteriaField')}.\n The criteria produced by the FormItems will be grouped under the logical operator\n provided by ${isc.DocUtils.linkForRef('attr:DynamicForm.operator')}.\n <P>\n If <code>operator</code> is set for some fields but not others, the default operator is\n \"equals\" for fields with a valueMap or an optionDataSource, and for fields of type \"enum\"\n (or of a type that inherits from \"enum\").  The default operator for all other fields is\n controlled by ${isc.DocUtils.linkForRef('attr:DynamicForm.defaultSearchOperator')}. \n <P>\n <b>Note:</b> <code>formItem.operator</code> is only supported for a form that has a \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataSource','dataSource')}.  In a form with no DataSource, \n setting <code>formItem.operator</code> will have no effect.",
        name:"operator",
        seeAlso:[
        ],
        valueType:"OperatorId",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:MultiSortDialog.getNumLevels":{
        ref:"method:MultiSortDialog.getNumLevels",
        flags:"",
        description:" Return the number of levels of sorting that have been configured.\n\n",
        name:"getNumLevels",
        seeAlso:[
        ],
        returns:{
            description:"The number of levels of sorting that have been configured",
            type:"number"
        },
        type:"method",
        definingClass:"class:MultiSortDialog"
    },
    "attr:DataSource.auditRevisionFieldName":{
        ref:"attr:DataSource.auditRevisionFieldName",
        flags:"IR",
        description:"For DataSources with ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing enabled')}, specifies the field name used to store\n the revision number for the change (in a field of type \"sequence\").  If empty\n string is specified as the field name, the audit DataSource will not store this field.",
        name:"auditRevisionFieldName",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"audit_revision\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:SplitPane.showNavigationBar":{
        ref:"attr:SplitPane.showNavigationBar",
        flags:"IR",
        description:"If set to <code>false</code>, the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')}\n will not be shown.",
        name:"showNavigationBar",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "group:dataSourceDeclaration":{
        ref:"group:dataSourceDeclaration",
        title:"Creating DataSources",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        refs:[
        ],
        description:"DataSources can be specified in XML format, in which case the SmartClient server is used to\n load the DataSource, or DataSources can be programmatically created on the client.\n <P>\n Whether a DataSource is loaded via the SmartClient server or programmatically created\n client-side, identical requests will ultimately be submitted to the server.  However,\n DataSources defined in XML are loaded and used by the SmartClient Server, enabling many\n features including synchronized client-server validation, request bundling, file upload, and\n optional automatic SQL/JPA/Hibernate connectivity (see the \n ${isc.DocUtils.linkForRef('group:iscServer','Server Summary')} for details).\n <P>\n <smartclient>\n DataSources created on the client use the same style of creation as DataBound components:\n <pre>\n    isc.DataSource.create({\n        ID:\"supplyItem\",\n        fields:[\n            {name:\"itemName\", ... }\n            ...\n        ]\n    });\n </pre>\n </smartclient>\n <smartgwt>\n DataSources can be programmatically created on the client like so:\n <pre>\n    DataSource ds = new DataSource();\n    ds.setID(\"supplyItem\");\n    DataSourceTextField nameField = new DataSourceTextField(\"itemName\", \"Name\");\n    // create other fields\n    ds.setFields(nameField, ...);\n </pre>\n </smartgwt>\n Reference for all properties that can be set for DataSources, their fields and validators is\n given in the ${isc.DocUtils.linkForRef('class:DataSource')} class reference.\n <P>\n DataSources defined in XML declare fields, validators and other settings using XML tags:\n <pre>\n     &lt;DataSource ID=\"supplyItem\"&gt;\n         &lt;fields&gt;\n             &lt;field name=\"itemName\" type=\"text\" title=\"Item\"/&gt;\n             &lt;field name=\"SKU\"      type=\"text\" title=\"SKU\"&gt;\n                 &lt;validators&gt;\n                     &lt;validator type=\"integerRange\" ... /&gt;\n                 &lt;/validators&gt;\n             &lt;/field&gt;\n         &lt;/fields&gt;\n     &lt;/DataSource&gt;\n </pre>\n DataSources defined in XML are loaded by using the <code>DataSourceLoader</code>\n servlet provided by the SmartClient Server.  This can be done as an ordinary HTML\n &lt;script&gt; tag as you application first loads:\n <pre>\n     &lt;SCRIPT SRC=isomorphic/DataSourceLoader?dataSource=supplyItem,employees,worldDS&gt;&lt;/SCRIPT&gt;\n </pre>\n .. or can be done on the fly via ${isc.DocUtils.linkForRef('classMethod:DataSource.load')}.\n <P>\n Alternatively, in JSP environments, XML DataSources can be loaded via a special JSP tag\n supported by the SmartClient Server:\n <pre>\n     &lt;%&#64; taglib uri=\"/WEB-INF/iscTaglib.xml\" prefix=\"isomorphic\" %&gt;\n     ...\n     &lt;SCRIPT&gt;\n     &lt;isomorphic:loadDS ID=\"supplyItem\"/&gt;\n     &lt;/SCRIPT&gt;\n </pre>\n <P>\n When loading an XML DataSource, by default, the ISC Server will look for a file named\n <code>&lt;dataSourceId&gt;.ds.xml</code> in the <code>/shared/ds</code> subdirectory under\n webroot.  The location of this directory can be changed, or individual DataSources can be\n placed in arbitrary locations.  For more information, see\n ${isc.DocUtils.linkForRef('group:server_properties','[webroot]/WEB-INF/classes/server.properties')}.\n <P>\n XML DataSources can also be generated on the fly in case the entire DataSource or portions\n of it are based on dynamic data.  See the server API\n com.isomorphic.DataSource.addDynamicDSGenerator().",
        name:"dataSourceDeclaration",
        seeAlso:[
            {
                ref:"class:DataSource",
                description:null
            },
            {
                ref:"group:loadDSTag",
                description:null
            }
        ],
        type:"group"
    },
    "attr:DataSource.xmlNamespaces":{
        ref:"attr:DataSource.xmlNamespaces",
        flags:"IR",
        description:"Sets the XML namespace prefixes available for XPaths on a DataSource-wide basied.  See\n ${isc.DocUtils.linkForRef('attr:OperationBinding.xmlNamespaces')} for details.",
        name:"xmlNamespaces",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"See below",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:RPCRequest.actionURL":{
        ref:"attr:RPCRequest.actionURL",
        flags:"IRW",
        description:"Overrides RPCManager.actionURL for this request only.  If you're using queuing, note that queues\n as per-URL - in other words all RPCRequests in a queue must go to a single URL.  If you attempt\n to send a request with an actionURL that is different from those already in the queue, it\n will be sent to the server separately, ahead of the queue,  and a warning will be logged to\n the Developer Console.",
        name:"actionURL",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.actionURL",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"RPCManager.actionURL",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "classMethod:Log.setDefaultPriority":{
        ref:"classMethod:Log.setDefaultPriority",
        flags:"",
        description:" Set the default priority of messages that will be visible.\n\n",
        name:"setDefaultPriority",
        seeAlso:[
        ],
        params:[
            {
                description:"priority level to set",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            },
            {
                description:"Optional ISC class or instance - if passed the default priority will be set for logging \n      occurring on the class or instance only.",
                optional:true,
                name:"object",
                defaultValue:null,
                type:"Class or Instance object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:ColumnTree.firstColumnTitle":{
        ref:"attr:ColumnTree.firstColumnTitle",
        flags:"IR",
        description:"A title for the leftmost column if ${isc.DocUtils.linkForRef('attr:ColumnTree.showHeaders')} is set (the remaining columns\n have their titles derived from the item selected in the column to the left). Ignored\n if ${isc.DocUtils.linkForRef('attr:ColumnTree.showHeaders')} is not set.<br><br>\n Note: if you do not want a heading for the first column leave this attribute at its \n default value of \" \". If you set it to null or the empty string, SmartClient will\n fall back to displaying the field's name in the heading.",
        name:"firstColumnTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\" \"",
        type:"attr",
        definingClass:"class:ColumnTree"
    },
    "method:Canvas.dragStop":{
        ref:"method:Canvas.dragStop",
        flags:"A",
        description:" Executed when the mouse button is released at the end of the drag. Your widget can\n use this opportunity to fire code based on the last location of the drag or reset any\n visual state that was sent.\n\n",
        name:"dragStop",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag interaction.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:DrawGroup.getCenter":{
        ref:"method:DrawGroup.getCenter",
        flags:"",
        description:" Get the center point of the ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')}.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the center point",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:Button.align":{
        ref:"attr:Button.align",
        flags:"IRW",
        description:"Horizontal alignment of this component's title.",
        name:"align",
        setter:[
            "setAlign"
        ],
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "appearance"
        ]
    },
    "method:DynamicForm.validateData":{
        ref:"method:DynamicForm.validateData",
        flags:"",
        description:"\n Perform validation on the client and the server.\n\n",
        name:"validateData",
        seeAlso:[
        ],
        params:[
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                   the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "class:TreeMenuButton":{
        methods:[
        ],
        ref:"class:TreeMenuButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:TreeMenuButton.title",
            "attr:TreeMenuButton.unselectedTitle",
            "attr:TreeMenuButton.emptyMenuMessage",
            "attr:TreeMenuButton.showPath",
            "attr:TreeMenuButton.pathSeparatorString",
            "attr:TreeMenuButton.selectedBaseStyle",
            "attr:TreeMenuButton.dataProperties"
        ],
        description:"Button used to display a hierarchical Menu group for representing / selecting tree data.\n <P>\n <i><b>Important Note:</b> this class should not be used directly - it is exposed purely for\n ${isc.DocUtils.linkForRef('group:i18nMessages','i18n reasons.')}</i>",
        name:"TreeMenuButton",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"MenuButton"
    },
    "classMethod:isc.getIconLeft":{
        ref:"classMethod:isc.getIconLeft",
        flags:"A",
        description:"  Returns the (offset) left-coordinate of an icon within its containing widget.\n",
        name:"getIconLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"icon definition",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"icon left position in px",
            type:"number"
        },
        type:"method",
        definingClass:"class:isc"
    },
    "group:gridHeader":{
        ref:"group:gridHeader",
        refs:[
            "method:ListGrid.setHeaderHeight",
            "method:ListGrid.setShowHeader",
            "method:ListGrid.headerTitleClipped",
            "method:ListGrid.headerHoverHTML",
            "method:ListGrid.headerClick",
            "method:ListGrid.headerDoubleClick",
            "method:ListGrid.displayHeaderContextMenu",
            "method:ListGrid.getHeaderContextMenuItems",
            "method:ListGrid.headerHover",
            "attr:ListGrid.header",
            "attr:ListGrid.headerContextMenu",
            "attr:ListGrid.spanContextMenu",
            "attr:ListGrid.headerHeight",
            "attr:ListGrid.showHeader",
            "attr:ListGrid.headerBarStyle",
            "attr:ListGrid.headerBackgroundColor",
            "attr:ListGrid.headerButtonConstructor",
            "attr:ListGrid.headerBaseStyle",
            "attr:ListGrid.headerTitleStyle",
            "attr:ListGrid.frozenHeaderBaseStyle",
            "attr:ListGrid.frozenHeaderTitleStyle",
            "attr:ListGrid.headerButtonDefaults",
            "attr:ListGrid.headerButtonProperties",
            "attr:ListGrid.clipHeaderTitles",
            "attr:ListGrid.sorterConstructor",
            "attr:ListGrid.sorterButtonTitle",
            "attr:ListGrid.sorterDefaults",
            "attr:ListGrid.sorterProperties",
            "attr:ListGrid.showHeaderContextMenu"
        ],
        description:"Properties and methods related to the ListGrid header. ListGrid headers are implemented\n as a ${isc.DocUtils.linkForRef('class:Toolbar')} of buttons shown at the top of the ListGrid\n (one button per column).<br>\n The toolbar header provides UI for interacting with the ListGrid fields directly (sorting,\n resizing, reordering columns, etc).",
        name:"gridHeader",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.showRegressionLine":{
        ref:"attr:FacetChart.showRegressionLine",
        flags:"IRW",
        description:"For scatter plots only, whether to display a regression curve that best fits the data of\n the two metric facet values.\n <P>\n The type of regression curve used depends on the ${isc.DocUtils.linkForRef('type:RegressionLineType')} property,\n which can be:\n <ul>\n <li><b>\"line\"</b> &ndash; to draw a linear regression curve, or</li>\n <li><b>\"polynomial\"</b> &ndash; to draw a polynomial regression curve (of degree\n ${isc.DocUtils.linkForRef('attr:FacetChart.regressionPolynomialDegree')}).<li>\n </ul>\n <P>\n Note that the regression is computed using all of the data points and it does not depend\n on the values of any non-metric facets.  For example, adding a legend facet will not\n change the regression curve.\n <P>\n See <a href=\"http://en.wikipedia.org/wiki/Simple_linear_regression\">http://en.wikipedia.org/wiki/Simple_linear_regression</a>.\n See <a href=\"http://en.wikipedia.org/wiki/Polynomial_regression\">http://en.wikipedia.org/wiki/Polynomial_regression</a>.",
        name:"showRegressionLine",
        setter:[
            "setShowRegressionLine"
        ],
        seeAlso:[
            {
                ref:"attr:FacetChart.xAxisMetric",
                description:null
            },
            {
                ref:"attr:FacetChart.yAxisMetric",
                description:null
            },
            {
                ref:"attr:FacetChart.regressionLineProperties",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:Tree.findById":{
        ref:"method:Tree.findById",
        flags:"A",
        description:"\n Find the node with the specified ID.  Specifically, it returns the node whose idField\n matches the id passed to this method. If the tree is using the \"parent\" modelType, this\n lookup will be constant-time.  For all other modelTypes, the tree will be searched\n recursively.\n\n",
        name:"findById",
        seeAlso:[
            {
                ref:"attr:Tree.idField",
                description:null
            },
            {
                ref:"method:Tree.find",
                description:null
            }
        ],
        params:[
            {
                description:"ID of the node to return.",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"node with appropriate ID, or null if not found.",
            type:"object"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "location"
        ]
    },
    "attr:ListGrid.backgroundComponent":{
        ref:"attr:ListGrid.backgroundComponent",
        flags:"IR",
        description:"Has no effect unless ${isc.DocUtils.linkForRef('attr:ListGrid.showBackgroundComponents')} is <code>true</code>.\n <P>\n Canvas created and embedded in the body behind a given record.   When\n ${isc.DocUtils.linkForRef('attr:ListGridRecord.backgroundComponent')} is set, this autoChild canvas\n will be constructed (if listGridRecord.backgroundComponent is not already a Canvas) and\n its properties combined with those of listGridRecord.backgroundComponent and then\n displayed behind a specific record in the page's z-order, meaning\n it will only be visible if the cell styling is transparent.",
        name:"backgroundComponent",
        seeAlso:[
        ],
        valueType:"MultiAutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "method:Canvas.setOverflow":{
        ref:"method:Canvas.setOverflow",
        flags:"A",
        description:" Update the ${isc.DocUtils.linkForRef('attr:Canvas.overflow','overflow')} of a Canvas after it has been created.\n",
        name:"setOverflow",
        seeAlso:[
        ],
        params:[
            {
                description:"New overflow value.",
                optional:false,
                name:"newOverflow",
                defaultValue:null,
                type:"Overflow"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning",
            "sizing",
            "sizing"
        ]
    },
    "attr:ListGrid.valueIconRightPadding":{
        ref:"attr:ListGrid.valueIconRightPadding",
        flags:"IRW",
        description:"How much padding should there be on the right of valueIcons by default",
        name:"valueIconRightPadding",
        seeAlso:[
            {
                ref:"attr:ListGridField.valueIcons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:FormItem.containerWidget":{
        ref:"attr:FormItem.containerWidget",
        flags:"RA",
        description:"A Read-Only pointer to the SmartClient canvas that holds this form item. In most cases this\n will be the ${isc.DocUtils.linkForRef('attr:FormItem.form','DynamicForm')} containing the item but in some cases\n editable components handle writing out form items directly. An example of this\n is ${isc.DocUtils.linkForRef('group:editing','Grid Editing')} - when a listGrid shows per-field editors, the\n <code>containerWidget</code> for each item will be the listGrid body.\n <P>\n Note that even if the <code>containerWidget</code> is not a DynamicForm, a DynamicForm\n will still exist for the item (available as ${isc.DocUtils.linkForRef('attr:FormItem.form')}), allowing access\n to standard APIs such as ${isc.DocUtils.linkForRef('method:DynamicForm.getValues')}",
        name:"containerWidget",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:FormItem.value":{
        ref:"attr:FormItem.value",
        flags:"IR",
        getter:[
            "getValue"
        ],
        description:"Value for this form item.\n <smartclient>This value may be set directly on the form item initialization\n block but is not updated on live items and should not be directly accessed.\n Once a form item has been created by the dynamicForm use ${isc.DocUtils.linkForRef('method:FormItem.setValue')} and\n ${isc.DocUtils.linkForRef('method:FormItem.getValue')} directly.</smartclient>",
        name:"value",
        setter:[
            "setValue"
        ],
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "basics"
        ]
    },
    "method:FacetChart.formatDataValue":{
        ref:"method:FacetChart.formatDataValue",
        flags:"",
        description:" Return the text string to display in ${isc.DocUtils.linkForRef('attr:FacetChart.showValueOnHover','hovers')} or via ${isc.DocUtils.linkForRef('attr:FacetChart.showDataValues')}\n given the raw value for the metric displayed on the value axis.\n <p>\n Note that the rendering of values for gradation labels is handled by\n ${isc.DocUtils.linkForRef('method:FacetChart.formatAxisValue')}.\n",
        name:"formatDataValue",
        seeAlso:[
        ],
        params:[
            {
                description:"raw value of the metric",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"the text to display.",
            type:"String"
        },
        type:"method",
        definingClass:"class:FacetChart",
        groups:[
            "display_values"
        ]
    },
    "method:Callbacks.ExpandSectionCallback":{
        ref:"method:Callbacks.ExpandSectionCallback",
        flags:"",
        description:" Callback to execute after the section has been expanded.\n",
        name:"ExpandSectionCallback",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "classMethod:Browser.setIsDesktop":{
        ref:"classMethod:Browser.setIsDesktop",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('classAttr:Browser.isDesktop')} to allow this global variable to be changed at runtime.\n This advanced method is provided to override SmartClient's detection of devices, since the\n framework can only detect devices that existed at the time the platform was released. Any\n changes to ${isc.DocUtils.linkForRef('classAttr:Browser.isDesktop')}, ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')}, or ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}\n must be made before any component is created.\n <p>\n Note that setting <code>Browser.isDesktop</code> might affect the values of\n ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')} and ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}.\n\n",
        name:"setIsDesktop",
        seeAlso:[
        ],
        params:[
            {
                description:"new setting for <code>Browser.isDesktop</code>.",
                optional:false,
                name:"isDesktop",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Browser"
    },
    "attr:SelectOtherItem.otherValue":{
        ref:"attr:SelectOtherItem.otherValue",
        flags:"IRWA",
        description:"Data value for the <code>Other...</code> item. If necessary this value may be changed to\n ensure it doesn't collide with any data values in this item's\n ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')}.",
        name:"otherValue",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"***other***\"",
        type:"attr",
        definingClass:"class:SelectOtherItem",
        groups:[
            "appearance"
        ]
    },
    "group:drawing":{
        ref:"group:drawing",
        refs:[
            "method:Canvas.isDrawn",
            "method:Canvas.getInnerHTML",
            "method:Canvas.draw",
            "method:Canvas.isDirty",
            "method:Canvas.markForRedraw",
            "method:Canvas.redraw",
            "method:ListGrid.markForRedraw",
            "method:FormItem.getFieldName",
            "method:FormItem.getTitle",
            "method:FormItem.isDrawn",
            "attr:Canvas.autoDraw",
            "attr:Canvas.redrawOnResize"
        ],
        description:"Rendering an object on the page.\n <smartgwt>Include the Drawing module your SmartGWT application\n by including <code>&lt;inherits name=\"com.smartgwt.Drawing\"/&gt;</code>\n in your GWT module XML.</smartgwt>",
        name:"drawing",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:GridRenderer.offlineMessageStyle":{
        ref:"attr:GridRenderer.offlineMessageStyle",
        flags:"IRW",
        description:"The CSS style name applied to the offlineMessage string if displayed.",
        name:"offlineMessageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "emptyMessage",
            "offlineGroup"
        ]
    },
    "attr:Criterion.criteria":{
        ref:"attr:Criterion.criteria",
        flags:"IR",
        description:"For a criterion with an operator that acts on other criteria (eg \"and\", \"or\"), a list of\n sub-criteria that are grouped together by the operator.",
        name:"criteria",
        seeAlso:[
        ],
        valueType:"Array of Criterion",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Criterion",
        groups:[
            "advancedFilter"
        ]
    },
    "method:DynamicForm.setTitleOrientation":{
        ref:"method:DynamicForm.setTitleOrientation",
        flags:"",
        description:" Modify this form's ${isc.DocUtils.linkForRef('type:TitleOrientation')} at runtime\n",
        name:"setTitleOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"new default item titleOrientation",
                optional:false,
                name:"",
                defaultValue:null,
                type:"TitleOrientation"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('formLayoutTitles')}"
        ],
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "class:ViewFileItem":{
        methods:[
        ],
        ref:"class:ViewFileItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
        ],
        description:"A simple subclass of ${isc.DocUtils.linkForRef('class:FileItem')} for displaying the contents of \"imageFile\" fields in \n DynamicForms. \n <P>\n Displays one of two UIs, according to the value of \n ${isc.DocUtils.linkForRef('attr:FileItem.showFileInline','showFileInline')}.  If showFileInline is false, this Item\n displays the View and Download icons and the filename.  Otherwise, it streams the image-file \n and displays it inline.",
        name:"ViewFileItem",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "upload"
        ]
    },
    "method:Canvas.setPageLeft":{
        ref:"method:Canvas.setPageLeft",
        flags:"",
        description:" Set the page-relative left coordinate of this widget.\n\n",
        name:"setPageLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:Scrollbar.cornerSrc":{
        ref:"attr:Scrollbar.cornerSrc",
        flags:"IR",
        description:"URL for the corner image, a singular image that appears in the corner when both h and v\n scrollbars are showing.",
        name:"cornerSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]corner.gif\"",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "images"
        ]
    },
    "method:Calendar.dayHeaderClick":{
        ref:"method:Calendar.dayHeaderClick",
        flags:"",
        description:" Called when the header area of a day in the month view is clicked on.\n <P>\n By default, moves to the day tab and shows the clicked days events.\n Return false to cancel this action.\n <P>\n Not called if the day falls outside the current month and ${isc.DocUtils.linkForRef('attr:Calendar.showOtherDays')} is false.\n\n",
        name:"dayHeaderClick",
        seeAlso:[
        ],
        params:[
            {
                description:"JavaScript Date object representing this day",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"events that fall on this day",
                optional:false,
                name:"events",
                defaultValue:null,
                type:"Array of CalendarEvent"
            },
            {
                description:"the calendar itself",
                optional:false,
                name:"calendar",
                defaultValue:null,
                type:"Calendar"
            },
            {
                description:"the row number to which the parameter date belongs",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"the column number to which the parameter date belongs",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"return false to cancel the action",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "class:DateGrid":{
        methods:[
        ],
        ref:"class:DateGrid",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
        ],
        description:"A ListGrid subclass that manages calendar views.",
        name:"DateGrid",
        seeAlso:[
        ],
        type:"class"
    },
    "method:PickList.getOptionDataSource":{
        ref:"method:PickList.getOptionDataSource",
        flags:"",
        description:" PickLists can derive their data directly from a valueMap, or retrieve data from a \n dataSource to display as options.\n <P>\n This method will return the dataSource used to populate the pickList, or null if \n none is specified (implies this list will derive its data from the valueMap for the item).\n Default implementation will return ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')} if specified,\n otherwise if this is a field with a specified <code>foreignKey</code> in a databound\n form, returns the dataSource for the <code>foreignKey</code>.\n Otherwise picks up <code>this.form.dataSource</code> if set.\n\n",
        name:"getOptionDataSource",
        seeAlso:[
        ],
        returns:{
            description:"DataSource to use for fetching options",
            type:"DataSource"
        },
        type:"method",
        definingClass:"interface:PickList"
    },
    "method:ListGrid.setFields":{
        ref:"method:ListGrid.setFields",
        flags:"A",
        description:" Sets the fields array and/or field widths to newFields and sizes, respectively.<br><br>\n\n If newFields is specified, it is assumed that the new fields may have nothing in common with\n the old fields, and the component is substantially rebuilt.  Furthermore, it's invalid to\n modify any of the existing ${isc.DocUtils.linkForRef('object:ListGridField')}s after they've been passed to this function.\n Consider the following methods for more efficient, more incremental changes:\n ${isc.DocUtils.linkForRef('method:ListGrid.resizeField')}, ${isc.DocUtils.linkForRef('method:ListGrid.reorderField')}, ${isc.DocUtils.linkForRef('method:ListGrid.showField')}, ${isc.DocUtils.linkForRef('method:ListGrid.hideField')}, or\n ${isc.DocUtils.linkForRef('method:ListGrid.setFieldProperties')}.\n\n",
        name:"setFields",
        seeAlso:[
        ],
        params:[
            {
                description:"array of fields to draw",
                optional:true,
                name:"newFields",
                defaultValue:null,
                type:"Array of ListGridField"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:AdvancedHiliteEditor.appearanceGroupTitle":{
        ref:"attr:AdvancedHiliteEditor.appearanceGroupTitle",
        flags:"IR",
        description:"The title for the Appearance group.",
        name:"appearanceGroupTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Appearance\"",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.dataSource":{
        ref:"attr:ListGrid.dataSource",
        flags:"IRW",
        description:"The DataSource that this component should bind to for default fields and for performing\n ${isc.DocUtils.linkForRef('class:DSRequest','DataSource requests')}.\n <P>\n Can be specified as either a DataSource instance or the String ID of a DataSource.",
        name:"dataSource",
        setter:[
            "setDataSource"
        ],
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataSourceFields')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "method:ValuesManager.hasFieldErrors":{
        ref:"method:ValuesManager.hasFieldErrors",
        flags:"",
        description:" Are there any errors associated with a field in this valuesManager?\n",
        name:"hasFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"field to check for errors",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"returns true if there are any outstanding validation errors, false                   otherwise.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "method:DrawImage.getBoundingBox":{
        ref:"method:DrawImage.getBoundingBox",
        flags:"",
        description:" Returns the top, left, top+width, left+height\n\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawImage"
    },
    "method:Callbacks.PaletteNodeCallback":{
        ref:"method:Callbacks.PaletteNodeCallback",
        flags:"",
        description:" Callback fired with the ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')} obtained asynchronously.\n",
        name:"PaletteNodeCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"an array of PaletteNodes",
                optional:false,
                name:"paletteNodes",
                defaultValue:null,
                type:"Array of PaletteNode"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:CubeGrid.autoSizeHeaders":{
        ref:"attr:CubeGrid.autoSizeHeaders",
        flags:"IRW",
        description:"Automatically size row headers to fit wrapped text.",
        name:"autoSizeHeaders",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "method:ColumnTree.selectRecord":{
        ref:"method:ColumnTree.selectRecord",
        flags:"",
        description:"\n Select/deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n\n",
        name:"selectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to select",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"Column number",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "selection"
        ]
    },
    "attr:FilterBuilder.dataSource":{
        ref:"attr:FilterBuilder.dataSource",
        flags:"IRW",
        description:"DataSource this filter should use for field definitions and available ${isc.DocUtils.linkForRef('object:Operator')}s.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:FormItem.left":{
        ref:"attr:FormItem.left",
        flags:"IRWA",
        getter:[
            "getLeft"
        ],
        description:"Left coordinate of this item in pixels.  Applies only when the containing DynamicForm\n sets <code>itemLayout:\"absolute\"</code>.",
        name:"left",
        setter:[
            "setLeft"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "group:serverInit":{
        ref:"group:serverInit",
        title:"Server Framework Initialization",
        treeLocation:[
            "Concepts/Deploying SmartClient"
        ],
        refs:[
        ],
        description:"The SmartClient Server framework must be initialized from its config files at startup\n time, before user code invokes <em>any</em> framework functionality.  If you are running\n standalone (ie, outside of a servlet container), you should call the static utility method \n <code>ISCInit.go()</code> early in your bootstrap code (eg, from the top of your \n <code>main()</code> method).\n <p>\n If you are running inside a servlet engine, there are two ways to initialize the framework:\n <ul>\n <li>Install <code>InitListener</code>, which is a <code>ServletContextListener</code>:<br>\n <pre>   &lt;listener&gt;\n        &lt;listener-class&gt;com.isomorphic.base.InitListener&lt;/listener-class&gt;\n    &lt;/listener&gt;</pre></li>\n <li>Install <code>Init</code>, which is a <code>Servlet</code>, to load at startup:<br>\n <pre>    &lt;servlet&gt;\n        &lt;servlet-name&gt;Init&lt;/servlet-name&gt;\n        &lt;servlet-class&gt;com.isomorphic.base.Init&lt;/servlet-class&gt;\n        &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;\n    &lt;/servlet&gt;</pre></li>\n </ul>\n As shipped, the framework's <code>web.xml</code> file loads both of these classes, to ensure \n the best chance of correct and early initialization.  The recommended approach is to use \n <code>InitListener</code> if your servlet container implements the Servlet 2.4 API or \n greater, because <code>ServletContextListener</code>s are guaranteed to run before any \n servlets or filters are instantiated.  <code>ServletContextListener</code>s are available\n in Servlet API 2.3, but the requirement that they run before any filter or servlet is \n initialized was not added until 2.4.  Some 2.3 servlet engines do enforce this behavior \n even though it is not part of the spec; experimentation with your servlet container of \n choice will be required if it only implements 2.3.\n <p>\n Note that it does no harm to leave the <code>web.xml</code> file with both <code>Init</code>\n and <code>InitListener</code> in place, because the framework simply ignores any request \n to initialize once initialization has taken place.\n <p>\n <h4>Interaction with Spring initialization</h4>\n The Spring framework attempts to initialize itself in similar ways to the SmartClient\n framework, and similarly it wants its own initialization to be the very first thing that \n happens.  This can cause problems in certain cases.  For example, one known problem occurs\n when you define DataSource instances as Spring beans, and Spring gets to initialize itself \n first: it attempts to instantiate a instance of the bean, which ultimately calls into \n our framework code before the framework has been initialized.\n <p>\n The solution to this is to use the <code>InitListener</code>, and to ensure that it is \n declared in your <code>web.xml</code> file before the Spring\n <code>ContextLoaderListener</code>.  The Servlet 2.3 spec states (SRV.10.3.3):<p>\n <em>&nbsp;&nbsp;\"During Web application execution, listeners are invoked in the order of their \n registration.\"</em>\n <p>\n Therefore, declaring the SmartClient listener before the Spring one ensures that\n things run in the correct order in Servlet 2.4-compatible containers, and in those Servlet\n 2.3 containers that enforce the rule of running listeners before initializing filters or\n servlets.",
        name:"serverInit",
        seeAlso:[
        ],
        type:"group"
    },
    "group:wsdlBinding":{
        ref:"group:wsdlBinding",
        title:"WSDL Binding",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        refs:[
            "attr:DataSource.serviceNamespace",
            "attr:DataSource.schemaNamespace"
        ],
        description:"SmartClient supports automated integration with WSDL-described web services.  This support\n consists of:\n <ul>\n <li> creation of SOAP XML messages from JavaScript application data, with automatic\n namespacing, and support for both \"literal\" and \"encoded\" SOAP messaging, and \"document\" and\n \"rpc\" WSDL-SOAP bindings\n <li> automatic decode of SOAP XML messages to JavaScript objects, with strong typing (eg an\n XML schema \"date\" type becomes a JavaScript Date object)\n <li> ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema','import of XML Schema')} (contained in WSDL, or external),\n including translating XML Schema \"restrictions\" to ISC ${isc.DocUtils.linkForRef('class:Validator','Validators')}\n </ul>\n <P>\n WSDL services can be contacted by using ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadWSDL')} or the\n ${isc.DocUtils.linkForRef('group:loadWSDLTag','&lt;isc:loadWSDL&gt; JSP tag')} to load the service definition, then\n invoking methods on the resulting ${isc.DocUtils.linkForRef('class:WebService')} object.\n <P>\n ${isc.DocUtils.linkForRef('method:WebService.callOperation')} can be used to manually invoke operations for\n custom processing (example using ${isc.DocUtils.linkForExampleId('wsdlOperation', 'public zipcode service')},\n examples using .NET at\n <a href='/examples/databinding/dotNET/temperatureConvert.jsp' target='_blank'>/examples/databinding/dotNET/temperatureConvert.jsp</a>).\n <P>\n <b>Fetch-only DataSource binding</b>\n <P>\n To bind a component to a web service operation, call\n <P>\n &nbsp;&nbsp;${isc.DocUtils.linkForRef('method:WebService.getFetchDS','WebService.getFetchDS(<i>operationName,elementName</i>)')}\n <P>\n to obtain a DataSource which describes the structure of an XML element or XML Schema type\n named <i>elementName</i>, which appears in the response message for the operation named\n <i>operationName</i>.  A component bound to this DataSource will show fields corresponding\n to the structure of the chosen XML element or type, that is, one field per subelement or\n attribute.  ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} called on this DataSource (or on a\n component bound to it) will invoke the specified web service operation, using the\n ${isc.DocUtils.linkForRef('type:Criteria')} passed to fetchData() to fill out the input message via\n ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')}, and using the specified XML element from the response\n message as data.\n <P>\n Similarly, ${isc.DocUtils.linkForRef('method:WebService.getInputDS','WebService.getInputDS(<i>operationName</i>)')} returns\n a DataSource suitable for binding to a form that a user will fill out to provide inputs to\n the specified web service operation.  Typical use is to let the user fill in the form, then\n pass the results of ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')} to\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} as criteria.\n <P>\n If the input message to the web service has extra nesting, consider using\n the ${isc.DocUtils.linkForRef('attr:OperationBinding.useFlatFields','useFlatFields')} property to simplify the inputs\n required for <code>fetchData()</code>, and/or to simplify form databinding via\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.useFlatFields','component.useFlatFields')}.\n <P>\n Note that the WSDL tab in the Developer Console can provide a clean, simplified view of any \n WSDL file, making it easier to pick out the appropriate <code>operationName</code> and\n <code>elementName</code> parameters to pass to <code>getFetchDS()</code> and other\n ${isc.DocUtils.linkForRef('class:WebService')} methods.\n <smartclient><P>\n Take a look at the ${isc.DocUtils.linkForExampleId('wsdlBinding', 'Google SOAP Search example')} and the\n <a href='/examples/databinding/dotNET/customerSearch.jsp' target='_blank'>.NET example</a>\n (/examples/databinding/dotNET/customerSearch.jsp).\n </smartclient>\n <P>\n <b>Binding with Customized Presentation</b>\n <P>\n Because XML Schema lacks key presentation metadata such as user-viewable titles, typically\n you cannot directly use the DataSources derived from XML Schema embedded in a WSDL file to\n drive visual component DataBinding in your final application.\n <P>\n You can create a DataSource that has custom fields <b>and</b> invokes a web\n service operation by setting ${isc.DocUtils.linkForRef('attr:DataSource.serviceNamespace')} to match the targetNamespace\n of the ${isc.DocUtils.linkForRef('class:WebService')} (found on the <code>&lt;definitions&gt;</code> element from the\n WSDL file), and setting ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation','wsOperation')} to the name of the\n web service operation to invoke.  <code>fetchData()</code> called on such a DataSource will\n invoke the web service operation named by ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation','wsOperation')},\n just like a DataSource returned by ${isc.DocUtils.linkForRef('method:WebService.getFetchDS')}.\n <P>\n In contrast to <code>getFetchDS()</code>, creating a DataSource in this way gives you the\n opportunity to:\n <ul>\n <li> declare arbitrary fields, with SmartClient presentation attributes such as titles and\n formatters\n <li> extract any data from the response message, via\n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','operationBinding.recordXPath')} and \n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath','field.valueXPath')}, and transform it with\n ${isc.DocUtils.linkForRef('method:DataSource.transformResponse','transformResponse()')}\n <li> transform the inbound data, if necessary, in order to add metadata such as\n ${isc.DocUtils.linkForRef('attr:DSRequest.startRow')} for paging, or a sessionId for a service requiring authentication\n </ul>\n These techniques are shown in the ${isc.DocUtils.linkForExampleId('wsdlBinding', 'Google SOAP Search example')}.\n <P>\n <b>XML Schema Reuse</b>\n <P>\n Having loaded a WSDL file, all of the XML Schema definitions within the service definition\n get translated to SmartClient ${isc.DocUtils.linkForRef('class:DataSource','DataSources')} and\n ${isc.DocUtils.linkForRef('class:SimpleType','SimpleTypes')} via the rules described by ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')},\n and are available to you via ${isc.DocUtils.linkForRef('method:WebService.getSchema')} and ${isc.DocUtils.linkForRef('attr:DataSourceField.type')}. \n <P>\n You can use the ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')} property to create DataSources that extend\n from XML schema definitions, then add presentation metadata not found in XML schema.\n <P>\n Even if you choose to declare all fields manually, you can leverage XML Schema\n &lt;simpleType&gt; definitions by setting ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field.type')} to the name\n of an XML Schema simple type embedded in the WSDL file.\n <P>\n <b>Round Trip Binding [fetch -> edit -> save]</b>\n <P>\n For full read-write integration with a service that supports the basic\n ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource operations')} on persistent data, \n ${isc.DocUtils.linkForRef('class:OperationBinding','OperationBindings')} can be declared for each DataSource operation, and\n the ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation','wsOperation')} property can be used to to bind each\n ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource operation')} (fetch, update, add, remove) to a\n corresponding web service operation.\n <P>\n For example, this code accomplishes part of the binding to the \n <a href='http://www.google.com/search?q=sforce+partner+wsdl' target='_blank'>SalesForce partner web services</a>\n (additional code is required to handle authentication and other details):\n <pre>\n isc.DataSource.create({\n    serviceNamespace : \"urn:partner.soap.sforce.com\",\n    operationBindings : [\n        { operationType:\"fetch\", wsOperation:\"query\", recordName: \"sObject\" },\n        { operationType:\"update\", wsOperation:\"update\", recordName: \"SaveResult\" },\n        { operationType:\"add\", wsOperation:\"create\", recordName: \"SaveResult\" },\n        { operationType:\"remove\", wsOperation:\"delete\", recordName: \"DeleteResult\" }\n    ],\n    ...\n }); \n </pre>\n NOTE: additional code is required to handle authentication and other details, see the\n complete code in smartclientSDK/examples/databinding/SalesForce.\n <P>\n In this usage, any DSRequest performed on this DataSource invokes the web service operation\n named by the <code>wsOperation</code> property on the corresponding operationBinding, and\n ${isc.DocUtils.linkForRef('attr:DSRequest.data')} is serialized via ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')} to form the input\n message to send to the web service.  For example, if a ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is\n invoked and triggers a DSRequest with operationType:\"add\", the DataSource above will invoke\n the \"create\" operation, and ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.values')} will become\n ${isc.DocUtils.linkForRef('attr:DSRequest.data')} and be serialized to form the input message of the \"create\" web\n service operation.\n <P>\n Typical usage is:\n <ol>\n <li> declare a DataSource that represents the fields of the object as you want them\n represented in the UI.  This DataSource is considered the \"entity DataSource\".  It may\n extend from an XML Schema complex type via ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')}.\n <li> use ${isc.DocUtils.linkForRef('class:OperationBinding','operationBindings')} to configure the entity DataSource to\n call the appropriate web service operations for each DataSource operation, and extract\n results via\n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','recordXPath')}/${isc.DocUtils.linkForRef('attr:OperationBinding.recordName','recordName')}\n <li> bind components as follows:\n <ul>\n <li> bind ${isc.DocUtils.linkForRef('class:ListGrid','grids')} to the entity DataSource\n <li> bind ${isc.DocUtils.linkForRef('class:SearchForm','SearchForms')} to the input message of the fetch operation\n (obtained via ${isc.DocUtils.linkForRef('method:WebService.getInputDS','webService.getInputDS(\"operationName\")')}.  This is\n done because search inputs are frequently unrelated to the structure of the objects being\n searched for\n <li> bind forms use for editing (\"add\" and \"update\" operations) to the entity DataSource\n </ul>\n <li> use\n ${isc.DocUtils.linkForRef('method:DataSource.transformRequest','transformRequest')}/${isc.DocUtils.linkForRef('method:DataSource.transformResponse','transformResponse')}, \n ${isc.DocUtils.linkForRef('attr:OperationBinding.useFlatFields')} and ${isc.DocUtils.linkForRef('attr:OperationBinding.responseDataSchema')} to\n handle inconsistencies between the WSDL operations and the data you want in the presentation\n layer.\n </ol>\n A complete example of binding to the SalesForce \"partner\" web service, including\n authentication via SOAP headers, saving data and cache sync, inline editing, validation\n error handling and data paging, can be found in [webroot]/examples/databinding/SalesForce.\n <P>\n This requires a SalesForce account.  SalesForce currently offers \n <a href='http://www.google.com/search?hl=en&q=salesforce+developer+account' target='_blank'>free developer accounts</a>.\n Please note: this application deals with <b>live data</b> and if you using inline editing\n <b>it will save to SalesForce</b>.\n <P>\n <b>Deployment</b>\n <P>\n For best performance, using the ${isc.DocUtils.linkForRef('group:loadWSDLTag','&lt;isc:loadWSDL&gt; JSP tag')}\n is recommended, as it automatically caches a translated form of the WSDL file.  If you are\n not using the SmartClient server, the WSDL tab in the Developer Console allows you\n to save a .js file representing a WebService object, which can then be loaded and cached\n like a normal JavaScript file.\n <P>\n <B>Creating New WSDL Services</B>\n <P>\n If you have no existing WSDL web service but would like to use web services for integration,\n you can implement the \"SmartClientOperations\" web service described by the\n ${isc.DocUtils.externalLink(isc.Page.getIsomorphicDir()+\"system/schema/SmartClientOperations.wsdl\",\"WSDL file\")} \n included in the SDK.  This simple, 4 operation web service can support any number of\n DataSources.  In this case, you create your DataSources as client-side instances of\n ${isc.DocUtils.linkForRef('class:WSDataSource')} (general client-side DataSource creation is described under\n ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','Creating DataSources')}).  To change the URL where ISC\n expects to find the SmartClientOperations web service, use ${isc.DocUtils.linkForRef('method:WebService.setLocation')}\n like so:<pre>\n      var service = isc.WebService.get(\"urn:operations.smartclient.com\");\n      service.setLocation(\"myURL\");\n </pre>\n <P>\n To implement a web service <b>starting from a WSDL file</b>:\n <ul>\n <li>In the .NET framework, you will use the Web Services Description Language Tool \n <a href='http://www.google.com/search?q=wsdl.exe' target='_blank'>(wsdl.exe)</a> to generate C# stubs that\n you will add business logic to\n <li>In Java, <a href='http://ws.apache.org/axis/' target='_blank'>Apache Axis</a> can be used to generate\n Java stubs for implementing a web service\n <li>In Perl, the <a href='http://soaplite.com' target='_blank'>SOAP:Lite</a> module can be used to\n implement web services without code generation\n <li>for PHP, the NuSoap module can likewise be used to implement web services without code\n generation\n </ul>",
        name:"wsdlBinding",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FilterBuilder.defaultSubClauseOperator":{
        ref:"attr:FilterBuilder.defaultSubClauseOperator",
        flags:"IR",
        description:"Default operator for subclauses added via the ${isc.DocUtils.linkForRef('attr:FilterBuilder.subClauseButton')}.",
        name:"defaultSubClauseOperator",
        seeAlso:[
        ],
        valueType:"LogicalOperator",
        defaultValue:"\"or\"",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:RangeSlider.scrollbar":{
        ref:"attr:RangeSlider.scrollbar",
        flags:"IR",
        description:"Optional Scrollbar shown as a second way of adjusting the range.",
        name:"scrollbar",
        seeAlso:[
        ],
        valueType:"AutoChild Scrollbar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "method:UploadItem.getSelectionRange":{
        ref:"method:UploadItem.getSelectionRange",
        flags:"",
        description:" <strong>This method is not supported</strong> by <code>UploadItem</code>.\n",
        name:"getSelectionRange",
        seeAlso:[
        ],
        returns:{
            description:"<code>null</code>",
            type:"Array of int"
        },
        type:"method",
        definingClass:"class:UploadItem"
    },
    "attr:Gauge.numMajorTicks":{
        ref:"attr:Gauge.numMajorTicks",
        flags:"IRW",
        description:"The number of major tick lines.",
        name:"numMajorTicks",
        setter:[
            "setNumMajorTicks"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "method:ValuesManager.clearErrors":{
        ref:"method:ValuesManager.clearErrors",
        flags:"",
        description:"\t\t\tClears all errors from member forms.\n",
        name:"clearErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"If true, clear any visible error messages.",
                optional:false,
                name:"showErrors",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "method:ListGrid.discardEdits":{
        ref:"method:ListGrid.discardEdits",
        flags:"A",
        description:"\n Cancel outstanding edits for the specified rows, discarding edit values, and hiding editors\n if appropriate.\n <P>\n Note that if this method is called on a new edit row (created via\n ${isc.DocUtils.linkForRef('method:ListGrid.startEditingNew')} for example), which has not yet been saved, this method\n will remove the row entirely.\n <P>\n Also note that this method will clear the ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved','removed')} state\n of records that have been marked as removed.\n\n",
        name:"discardEdits",
        seeAlso:[
        ],
        params:[
            {
                description:"Row to cancel",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Column to cancel. Note that this parameter is ignored in ListGrids but                        may be required in subclasses of ListGrid where each cell represents\n                        one record in the data set (EG CubeGrid)",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"By default this method will hide the editor if                              it is currently showing for the row in question. Passing in\n                              this parameter will leave the editor visible (and just reset\n                              the edit values underneath the editor).",
                optional:true,
                name:"dontHideEditor",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:UploadItem.multiple":{
        ref:"attr:UploadItem.multiple",
        flags:"IR",
        description:"When true, allow the file-selection dialog shelled by the browser to select multiple \n files.\n <P>\n Support is not full-cycle at the server - that is, there are server APIs for retrieving\n each file that was uploaded, but no built-in support for storing multiple files against\n a single DataSource field.  However, you can write custom server DMI code to do\n something with the files - for instance, you could create multiple new DataSource \n records for each file via a server DMI like this below:\n\n <pre>\n    String fileNameStr = (String)dsRequest.getValues().get(\"image_filename\").toString();\n\n    String[] fileNames = fileNameStr.split(\", \");\n    List files = dsRequest.getUploadedFiles();\n\n    for (int i = 0; i < files.size(); i++) {\n        ISCFileItem file = (ISCFileItem)files.get(i);\n        InputStream fileData = file.getInputStream();\n        DSRequest inner = new DSRequest(\"mediaLibrary\", \"add\");\n        Map values = new HashMap();\n        values.put(\"title\", dsRequest.getValues().get(\"title\"));\n        values.put(\"image\", fileData);\n        values.put(\"image_filename\", fileNames[i]);\n        values.put(\"image_filesize\", file.getSize());\n        values.put(\"image_date_created\", new Date());\n        \n        inner.setValues(values);\n        inner.execute();\n    }\n    \n    DSResponse dsResponse = new DSResponse();\n    \n    dsResponse.setStatus(0);\n\n    return dsResponse;\n </pre>",
        name:"multiple",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:UploadItem"
    },
    "method:SimpleType.normalDisplayFormatter":{
        ref:"method:SimpleType.normalDisplayFormatter",
        flags:"",
        description:" Normal formatter for values of this type used in a ${isc.DocUtils.linkForRef('class:StaticTextItem')} or\n ${isc.DocUtils.linkForRef('class:DetailViewer')}.\n <P>\n When this formatter is called, the SimpleType object is available as \"this\".  \n <P>\n A formatter can make itself configurable on a per-component or per-field basis by\n checking properties on the component or field.  For example, a formatter for account IDs\n may want to omit a prefix in views where it is redundant, and could check a flag\n detailViewer.omitAccountIdPrefix for this purpose.\n\n",
        name:"normalDisplayFormatter",
        seeAlso:[
        ],
        params:[
            {
                description:"value to be formatted",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"field descriptor from the component calling the formatter, if                      applicable.  Depending on the calling component, this could be a\n                      ${isc.DocUtils.linkForRef('class:FormItem')}, ${isc.DocUtils.linkForRef('object:DetailViewerField')}, etc",
                optional:true,
                name:"field",
                defaultValue:null,
                type:"Field"
            },
            {
                description:"component calling this formatter, if applicable",
                optional:true,
                name:"component",
                defaultValue:null,
                type:"DataBoundComponent"
            },
            {
                description:"Full record, if applicable",
                optional:true,
                name:"record",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        serverDS:"allowed",
        definingClass:"class:SimpleType"
    },
    "object:GaugeSector":{
        methods:[
        ],
        ref:"object:GaugeSector",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/Gauge"
        ],
        attrs:[
            "attr:GaugeSector.fillColor",
            "attr:GaugeSector.startAngle",
            "attr:GaugeSector.endAngle",
            "attr:GaugeSector.value"
        ],
        description:"Represents a sector on the gauge.",
        name:"GaugeSector",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:Calendar.showAddEventButton":{
        ref:"attr:Calendar.showAddEventButton",
        flags:"IRW",
        description:"Set to false to hide the ${isc.DocUtils.linkForRef('attr:Calendar.addEventButton','Add Event')} button.",
        name:"showAddEventButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:ListGrid.getCellSelection":{
        ref:"method:ListGrid.getCellSelection",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is active, returns the ${isc.DocUtils.linkForRef('class:CellSelection')} object that tracks\n and manages the current selection.  Returns null if ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is false.\n",
        name:"getCellSelection",
        seeAlso:[
        ],
        returns:{
            description:"current cellSelection",
            type:"CellSelection"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.showFields":{
        ref:"method:ListGrid.showFields",
        flags:"",
        description:" Force an array of fields to be shown. This method does not add new fields to the grid,\n it simply changes field visibility. If a field.showIf expression exists, it will be\n destroyed.\n <P>\n Note: for showing multiple fields it is more efficient to call this method than to call\n ${isc.DocUtils.linkForRef('method:ListGrid.showField')} repeatedly.\n\n",
        name:"showFields",
        seeAlso:[
        ],
        params:[
            {
                description:"Fields to show.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Array of String | Array of ListGridField"
            },
            {
                description:"If passed, don't resize non-explicitly sized columns                                       to fill the available space.",
                optional:true,
                name:"suppressRelayout",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('columnOrder')}"
        ],
        definingClass:"class:ListGrid"
    },
    "method:DataSource.viewFile":{
        ref:"method:DataSource.viewFile",
        flags:"",
        description:" Display a file stored in a field of type:\"binary\" in a new browser window.\n <P>\n This will open a new browser window to show the file.  Depending on the file type,\n the user's installed plugins and applications, and the user's browser settings, this may\n cause the file to be actually displayed in the new browser window, or may prompt the\n user to either launch an external application to view the file or save the file to disk.\n <P>\n Note that if this method is called for a record with no associated file, the\n target window's new URL may not be functional.  By default when dataSources encounter a \n ${isc.DocUtils.linkForRef('type:FieldType','binary type fields')}, an additional field,\n <code>&lt;fieldName&gt;_filename</code>, is generated to\n store the filename for the binary field value. If this field is present in the\n data source but has no value for this record, developers can assume they're working\n with a record with no stored file. If this field is not present in some custom\n dataSource configuration, or the record is not loaded on the client, an additional\n server transaction may be required to determine whether the record has an associated\n file before calling this method to view a file.\n <P>\n See the overview of ${isc.DocUtils.linkForRef('group:binaryFields','Binary Fields')} for details.\n\n",
        name:"viewFile",
        seeAlso:[
        ],
        params:[
            {
                description:"Record to download.  Only required to have a value                                       for the primary key field.",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"optional name of the binary field containing the                                         file.  If not provided, the first binary field\n                                         is used",
                optional:true,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:Button.icon":{
        ref:"attr:Button.icon",
        flags:"IRW",
        description:"Optional icon to be shown with the button title text.  \n <P>\n Specify as the partial URL to an image, relative to the imgDir of this component.",
        name:"icon",
        setter:[
            "setIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonIcons')}"
        ],
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "classMethod:Class.isMethodSupported":{
        ref:"classMethod:Class.isMethodSupported",
        flags:"A",
        description:" Returns true if the method is supported by this class, meaning that it is not null and\n was not replaced by ${isc.DocUtils.linkForRef('classMethod:Class.markUnsupportedMethods')}.\n",
        name:"isMethodSupported",
        seeAlso:[
        ],
        params:[
            {
                description:"the name of a method to test.",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"identifier"
            }
        ],
        returns:{
            description:"true if the method is not null and is not an unsupported method; false otherwise.",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:StretchImgButton.setSelected":{
        ref:"method:StretchImgButton.setSelected",
        flags:"",
        description:" Select this object.\n",
        name:"setSelected",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "classMethod:Class.logWarn":{
        ref:"classMethod:Class.logWarn",
        flags:"",
        description:" Log a message at \"warn\" priority\n \n",
        name:"logWarn",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:ListGridField.timeFormatter":{
        ref:"attr:ListGridField.timeFormatter",
        flags:"IRWA",
        description:"Time-format to apply to date type values within this field.  If specified, any\n dates displayed in this field will be formatted as times using the appropriate format.\n This is most commonly only applied to fields specified as type <code>\"time\"</code> though\n if no explicit ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter')} is specified it will be respected for other\n fields as well.\n <P>\n If unspecified, a timeFormatter may be defined\n ${isc.DocUtils.linkForRef('attr:ListGrid.timeFormatter','at the component level')} and will be respected by fields\n of type <code>\"time\"</code>.\n <P>\n If this field is editable, the timeFormatter will also be passed to the editor created to\n edit this field as ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')}.",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:TileGrid.showDetailFields":{
        ref:"attr:TileGrid.showDetailFields",
        flags:"IR",
        description:"By default, TileGrids will not show fields marked ${isc.DocUtils.linkForRef('attr:DataSourceField.detail','detail:true')}\n in the DataSource.  See also ${isc.DocUtils.linkForRef('attr:TileGrid.fields')}.",
        name:"showDetailFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:FacetChart.zoomLogScale":{
        ref:"attr:FacetChart.zoomLogScale",
        flags:"IR",
        description:"By default when ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom')} is enabled, the ${isc.DocUtils.linkForRef('attr:FacetChart.zoomChart')} uses logarithmic scaling so\n that spikes in the data don't result in a zoomed chart that is mostly a flat line.\n <P>\n Logarithmic scaling is automatically disabled if the dataset spans zero (eg, has negative and\n positive values) as this can't be shown in a logarithmic scale.\n <P>\n Set <code>zoomLogScale</code> to explicitly enable or disable logarithmic scaling.",
        name:"zoomLogScale",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ResultTree.willFetchData":{
        ref:"method:ResultTree.willFetchData",
        flags:"",
        description:" Will changing the criteria for this resultTree require fetching new data from the server\n or can the new criteria be satisfied from data already cached on the client?\n <p>\n This method can be used to determine whether ${isc.DocUtils.linkForRef('method:TreeGrid.fetchData')} or \n ${isc.DocUtils.linkForRef('method:TreeGrid.filterData')} will cause a server side fetch when passed a certain set of \n criteria.\n\n",
        name:"willFetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"new criteria to test.",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            }
        ],
        returns:{
            description:"true if server fetch would be required to satisfy new criteria.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ResultTree"
    },
    "method:DrawItem.erase":{
        ref:"method:DrawItem.erase",
        flags:"",
        description:" Erase this drawItem's visual representation and remove it from its DrawGroup (if any) and\n DrawPane.\n <P>\n To re-draw the item within the DrawPane, call ${isc.DocUtils.linkForRef('method:DrawItem.draw')} again, or use\n ${isc.DocUtils.linkForRef('method:DrawPane.addDrawItem')} to move to another DrawGroup.\n \n",
        name:"erase",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:ListGrid.startEditingNew":{
        ref:"method:ListGrid.startEditingNew",
        flags:"A",
        description:"\n Start editing a new row, after the last pre-existing record in the current set of data.\n <P>\n This new row will be saved via the \"add\" ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource\\n operation')}.\n <P>\n See the ${isc.DocUtils.linkForRef('group:editing','Grid Editing overview')} and also the\n ${isc.DocUtils.linkForRef('group:unsavedRecords','Editing Unsaved Records overview')} for context about how unsaved\n records behave.\n <P>\n You can optionally pass <code>newValues</code> which are the initial values for the newly\n added record.  See also ${isc.DocUtils.linkForRef('attr:ListGridField.defaultValue')} as a means of setting default\n values every time the user begins editing a new record, for instance, by pressing downArrow\n on the last normal record in the grid when ${isc.DocUtils.linkForRef('attr:ListGrid.listEndEditAction')} is \"next\".\n <P>\n If editing is already underway elsewhere in the grid, startEditingNew() behaves just like\n ${isc.DocUtils.linkForRef('method:ListGrid.startEditing')}.\n\n",
        name:"startEditingNew",
        seeAlso:[
            {
                ref:"method:ListGrid.startEditing",
                description:null
            }
        ],
        params:[
            {
                description:"Optional initial set of properties for the new record",
                optional:true,
                name:"newValues",
                defaultValue:null,
                type:"Map | Record"
            },
            {
                description:"Whether to suppress the default behavior of moving focus                                   to the newly shown editor.",
                optional:true,
                name:"suppressFocus",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:DynamicForm.operator":{
        ref:"attr:DynamicForm.operator",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:FormItem.operator')} has been set for any ${isc.DocUtils.linkForRef('class:FormItem')} in this form, what\n logical operator should be applied across the ${isc.DocUtils.linkForRef('object:Criterion','criteria')} produced by the form\n items?  Only applicable to forms that have a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataSource','dataSource')}.",
        name:"operator",
        seeAlso:[
        ],
        valueType:"OperationId",
        defaultValue:"\"and\"",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:Date.toEuropeanShortDateTime":{
        ref:"method:Date.toEuropeanShortDateTime",
        flags:"",
        description:" Return this date in the format: <code>DD/MM/YYYY HH:MM</code>.\n",
        name:"toEuropeanShortDateTime",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "method:DataSource.convertDataSourceCriteria":{
        ref:"method:DataSource.convertDataSourceCriteria",
        flags:"",
        description:" Converts criteria expressed in SmartClient's simple criteria format to an \n AdvancedCriteria object.  This instance method differs from the class method\n ${isc.DocUtils.linkForRef('classMethod:DataSource.convertCriteria')} in that it makes use of the dataSource \n as schema to help in the conversion.  For example, this method is able to honor \n ${isc.DocUtils.linkForRef('attr:DataSourceField.ignoreTextMatchStyle')} and use the dataSource's \n ${isc.DocUtils.linkForRef('attr:DataSource.defaultTextMatchStyle','defaultTextMatchStyle')} rather than assuming \"substring\"\n\n",
        name:"convertDataSourceCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"simple criteria",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"default style of matching text.  Defaults to                                          the dataSource's defaultTextMatchStyle",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"equivalent AdvancedCriteria object",
            type:"AdvancedCriteria"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:Tree.root":{
        ref:"attr:Tree.root",
        flags:"IRW",
        getter:[
            "getRoot"
        ],
        description:"If you're using the \"parent\" modelType, you can provide the root node configuration via this\n property.  If you don't provide it, one will be auto-created for you with an empty name.\n Read on for a description of what omitting the name property on the root node means for path\n derivation.\n <p>\n If you're using the \"children\" modelType, you can provide the initial tree data via this\n property.  So, for example, to construct the following tree:\n <pre>\n foo\n   bar\n zoo\n </pre>\n You would initialize the tree as follows: \n <pre>\n Tree.create({\n     root: { name:\"root\", children: [\n         { name:\"foo\", children: [\n             { name: \"bar\" }\n         ]},\n         { name: \"zoo\" }\n     ]}\n });\n </pre>\n Note that if you provide a <code>name</code> property for the root node, then the path to\n any node underneath it will start with that name.  So in the example above, the path to the\n <code>bar</code> node would be <code>root/foo/bar</code> (assuming you're using the default\n ${isc.DocUtils.linkForRef('attr:Tree.pathDelim')}.  If you omit the name attribute on the root node, then its name\n is automatically set to the ${isc.DocUtils.linkForRef('attr:Tree.pathDelim')} value.  So in the example above, if\n you omitted <code>name:\"root\"</code>, then the path to the <code>bar</code> node would be\n <code>/foo/bar</code>.\n <br><br>\n Note: if you initialize a Tree with no <code>root</code> value, a root node will be\n auto-created for you.  You can then call ${isc.DocUtils.linkForRef('method:Tree.add')} to construct the tree.",
        name:"root",
        setter:[
            "setRoot"
        ],
        seeAlso:[
            {
                ref:"attr:Tree.modelType",
                description:null
            },
            {
                ref:"method:Tree.setRoot",
                description:null
            }
        ],
        valueType:"TreeNode",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('childrenArrays')}"
        ],
        definingClass:"class:Tree"
    },
    "attr:TimeItem.hourValues":{
        ref:"attr:TimeItem.hourValues",
        flags:"IRW",
        getter:[
            "getHourValues"
        ],
        description:"An array of values to make available in the ${isc.DocUtils.linkForRef('attr:TimeItem.hourItem','hour picker')} when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for specifying a limited set of valid Hour values, or when using the \n TimeItem to record duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.hourMinValue','hourMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourMaxValue','hourMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourIncrement','hourIncrement')} for another method of controlling the \n content in the hour picker.",
        name:"hourValues",
        setter:[
            "setHourValues"
        ],
        seeAlso:[
        ],
        valueType:"Array of Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:MetricSettings.pointClick":{
        ref:"method:MetricSettings.pointClick",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:MetricSettings.showDataPoints')} is true, fires when a point is clicked on.\n\n",
        name:"pointClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the value at the point",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float"
            },
            {
                description:"the record at the point",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "method:DataSource.getPrimaryKeyField":{
        ref:"method:DataSource.getPrimaryKeyField",
        flags:"",
        description:" Returns a pointer to the primaryKey field for this DataSource.  If this dataSource has\n a composite primary key (ie, multiple primaryKey fields), returns just the first \n primaryKey field.\n",
        name:"getPrimaryKeyField",
        seeAlso:[
            {
                ref:"method:DataSource.getPrimaryKeyFields",
                description:null
            }
        ],
        returns:{
            description:"primary key field object",
            type:"DataSourceField"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:GridRenderer.rowMouseUp":{
        ref:"method:GridRenderer.rowMouseUp",
        flags:"A",
        description:" Called when a row receives a mouseup event.\n\n",
        name:"rowMouseUp",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:PickTreeItem.loadDataOnDemand":{
        ref:"attr:PickTreeItem.loadDataOnDemand",
        flags:"IRA",
        description:"If this is a databound item, should the load our set of possible options be loaded\n on demand (as submenus are displayed), or upfront?",
        name:"loadDataOnDemand",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PickTreeItem"
    },
    "method:ListGrid.getCellPageRect":{
        ref:"method:ListGrid.getCellPageRect",
        flags:"A",
        description:" Returns the page offsets and size of the cell at the passed row and column.  If auto-sizing\n is enabled, sizes are not definitive until the grid has finished drawing, so calling this\n method before drawing completes will return the configured column sizes.\n",
        name:"getCellPageRect",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column index of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the page rect of the passed cell, or null if undrawn",
            type:"Array of Integer"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "attr:Button.baseStyle":{
        ref:"attr:Button.baseStyle",
        flags:"IRW",
        description:"Base CSS style className applied to the component. \n <P>\n As the component changes ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state')} and/or is selected, \n suffixes will be added to the base style. In some cases more than one suffix will \n be appended to reflect a combined state (\"Selected\" + \"Disabled\", for example).\n <P>\n See ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of the default set\n of suffixes which may be applied to the baseStyle",
        name:"baseStyle",
        setter:[
            "setBaseStyle"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"button\"",
        type:"attr",
        definingClass:"class:Button"
    },
    "attr:Portlet.rowHeight":{
        ref:"attr:Portlet.rowHeight",
        flags:"IRW",
        description:"If you set the rowHeight of a Portlet before adding it to a ${isc.DocUtils.linkForRef('class:PortalLayout')}, then\n the height will be used when creating the new row. If adding the Portlet\n to an existing row (or dragging it there), the Portlet's rowHeight will be used if \n the row's height has not already been specified. However, if you \n set the rowHeight of a Portlet after adding it to the PortalLayout, then the height\n of the entire row will always be adjusted to match.\n <p>\n You can also just specify ${isc.DocUtils.linkForRef('attr:Canvas.height','height')} when initializing a Portlet, and it\n will be applied to the rowHeight when added to a PortalLayout. However, changing the Portlet's\n height after initialization will not affect the row.\n <p>\n Note that getting the rowHeight will indicate the rowHeight specified for this Portlet,\n not the actual height of the row it is in.",
        name:"rowHeight",
        setter:[
            "setRowHeight"
        ],
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('portalLayoutColumnHeight')}"
        ],
        definingClass:"class:Portlet",
        groups:[
            "sizing"
        ]
    },
    "type:ImageStyle":{
        ref:"type:ImageStyle",
        values:[
            {
                description:"Center (and don't stretch at all) the image if smaller than its enclosing frame.CENTER:\"center\",",
                value:"Canvas.CENTER"
            },
            {
                description:"Tile (repeat) the image if smaller than its enclosing frame.",
                value:"Canvas.TILE"
            },
            {
                description:"Stretch the image to the size of its enclosing frame.",
                value:"Canvas.STRETCH"
            },
            {
                description:"Allow the image to have natural size",
                value:"Canvas.NORMAL"
            }
        ],
        description:null,
        name:"ImageStyle",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "method:ValuesManager.setErrors":{
        ref:"method:ValuesManager.setErrors",
        flags:"A",
        description:" Sets validation errors for this valuesManager to the specified set of errors.\n Errors should be of the format:<br>\n <code>{field1:errors, field2:errors}</code><br>\n where each <code>errors</code> object is either a single error message string or an\n array of error messages.<br>\n If <code>showErrors</code> is passed in, error messages will be displayed in the \n appropriate member form items. For fields with no visible form item, \n ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')} will be fired instead.<br>\n Note that if <code>showErrors</code> is false, errors may be shown at any time via\n a call to ${isc.DocUtils.linkForRef('method:ValuesManager.showErrors')}.\n\n",
        name:"setErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"list of errors as an object with the field names as keys",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"object"
            },
            {
                description:"If true display errors now.",
                optional:false,
                name:"showErrors",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "attr:FormItem.valueField":{
        ref:"attr:FormItem.valueField",
        flags:"IR",
        getter:[
            "getValueFieldName"
        ],
        description:"If this form item maps data values to display values by retrieving the \n ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} values from an \n ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}, this property \n denotes the the field to use as the underlying data value in records from the \n optionDataSource.<br>\n If unset, assumed to be the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this form item.",
        name:"valueField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "method:Tab.tabDeselected":{
        ref:"method:Tab.tabDeselected",
        flags:"",
        description:" Optional handler to fire when a tab is deselected. Returning false will cancel the\n new selection, leaving this tab selected. As with ${isc.DocUtils.linkForRef('method:TabSet.tabSelected')} this\n method only fires when the tabset is drawn.\n\n",
        name:"tabDeselected",
        seeAlso:[
            {
                ref:"method:Tab.tabSelected",
                description:null
            }
        ],
        params:[
            {
                description:"the tabSet containing the tab.",
                optional:false,
                name:"tabSet",
                defaultValue:null,
                type:"TabSet"
            },
            {
                description:"the index of the deselected tab",
                optional:false,
                name:"tabNum",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"the deselected tab's pane if set",
                optional:false,
                name:"tabPane",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"the ID of the deselected tab",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"String"
            },
            {
                description:"pointer to the tab being deselected",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"tab"
            },
            {
                description:"pointer to the new tab being selected",
                optional:false,
                name:"newTab",
                defaultValue:null,
                type:"tab"
            },
            {
                description:"the name of the deselected tab",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"return <code>false</code> to cancel the tab selection",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Tab"
    },
    "group:simpleNamesMode":{
        ref:"group:simpleNamesMode",
        title:"Simple Names mode",
        treeLocation:[
            "Client Reference/System"
        ],
        refs:[
        ],
        description:"When SmartClient runs in \"simple names\" mode (the default), all ISC Classes and several\n global methods are installed as JavaScript global variables, that is, properties of the\n browser's \"window\" object.  When simple names mode is disabled (called \"portal mode\"),\n the framework uses only the global variable: \"isc\" and global variables prefixed with\n \"isc_\".  \n <P>\n Portal mode is intended for applications which must integrate with fairly arbitrary\n JavaScript code written by third-party developers, and/or third party JavaScript frameworks,\n where it is important that each framework stays within it's own namespace.\n <P>\n <smartclient>\n In portal mode, all references to ISC classes and global functions must be prefixed with\n \"isc.\", for example:<pre>\n \n      Canvas.create(addProperties({}, myDefaults))\n\n </pre>would become<pre>\n\n      isc.Canvas.create(isc.addProperties({}, myDefaults));\n\n </pre>\n </smartclient>\n Portal mode is enabled by setting <code>window.isc_useSimpleNames = false</code> <b>before</b>\n SmartClient is loaded, generally inside the &lt;head&gt; element.",
        name:"simpleNamesMode",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:PickList.separatorRows":{
        ref:"attr:PickList.separatorRows",
        flags:"IR",
        description:"Array of records to show between matching and non-matching rows in the PickList.\n <P>\n Not valid for ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource','databound pickLists')}.",
        name:"separatorRows",
        seeAlso:[
        ],
        valueType:"Array of ListGridRecord",
        defaultValue:"[{isSeparator:true}]",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:StaticTextItem.clipValue":{
        ref:"attr:StaticTextItem.clipValue",
        flags:"IRW",
        description:"If true, text that exceeds the specified size of the form item will be clipped.",
        name:"clipValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StaticTextItem",
        groups:[
            "appearance"
        ]
    },
    "attr:MultiComboBoxItem.optionDataSource":{
        ref:"attr:MultiComboBoxItem.optionDataSource",
        flags:"IR",
        description:"The <code>optionDataSource</code> of the combo box.",
        name:"optionDataSource",
        seeAlso:[
            {
                ref:"attr:ComboBoxItem.optionDataSource",
                description:null
            }
        ],
        valueType:"DataSource | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:ListGrid.canExpandRecordProperty":{
        ref:"attr:ListGrid.canExpandRecordProperty",
        flags:"IR",
        description:"Property name on a record that will be checked to determine whether a record can be\n expanded.",
        name:"canExpandRecordProperty",
        seeAlso:[
            {
                ref:"attr:ListGridRecord.canExpand",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"canExpand\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:TabSet.titleEditorProperties":{
        ref:"attr:TabSet.titleEditorProperties",
        flags:"IR",
        description:"Properties for the auto-generated ${isc.DocUtils.linkForRef('attr:TabSet.titleEditor')}. This is the text item\n we use to edit tab titles in this tabSet.",
        name:"titleEditorProperties",
        seeAlso:[
            {
                ref:"attr:TabSet.titleEditor",
                description:null
            },
            {
                ref:"attr:TabSet.canEditTabTitles",
                description:null
            }
        ],
        valueType:"TextItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:TabSet.getSelectedTab":{
        ref:"method:TabSet.getSelectedTab",
        flags:"A",
        description:" Returns the currently selected tab object.  This is the object literal used to configure the\n tab, rather than the tab button widget.\n",
        name:"getSelectedTab",
        seeAlso:[
        ],
        returns:{
            description:"the currently selected Tab object",
            type:"Tab"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:ListGrid.applyRowNumberStyle":{
        ref:"attr:ListGrid.applyRowNumberStyle",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showRowNumbers')} is true, should we apply the ${isc.DocUtils.linkForRef('attr:ListGrid.rowNumberStyle')} to\n the ${isc.DocUtils.linkForRef('attr:ListGrid.rowNumberField')}",
        name:"applyRowNumberStyle",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowNumberField"
        ]
    },
    "group:featureExplorerOverview":{
        ref:"group:featureExplorerOverview",
        title:"Feature Explorer Overview",
        refs:[
        ],
        description:"The ${isc.DocUtils.linkForDocNode('FeatureExplorer', 'Feature Explorer')} is an example shell designed to help you\n explore the capabilities of SmartClient.  Read on for a brief overview, including specific\n instructions for using the example code in your own standalone application.\n <p>\n The tree on the left of the Feature Explorer contains examples grouped by logical\n categories.  Selecting an example brings it up on the right side of the screen, inside a\n tabbed view.  The default \"View\" tab shows the interactive example itself, while other\n tabs show the underlying source.  The \"JS\" tab shows the source for the example.  There is\n sometimes also an \"XML\" tab that shows the corresponding version in \n ${isc.DocUtils.linkForRef('group:componentXML','Component XML')} format.  For databound examples, there are also\n frequently additional tabs that show the ${isc.DocUtils.linkForRef('class:DataSource','DataSources')} associated with the\n example.\n <p>\n <b><u>How to create a standalone application using code from the Feature Explorer</u></b>\n <p>\n The Feature Explorer shell is designed to show many examples in one place and to enable\n experimentation by providing a way for you to modify example code and try out your changes.\n As a result, the Feature Explorer requires some basic server support and its examples omit\n the usual SmartClient module includes that have to be in place for using SmartClient\n components standalone.\n <p>\n If you'd like to use example code in your application to get started quickly, create a page\n with SmartClient includes and then take the code from the \"JS\" tab and place it between\n &lt;SCRIPT&gt; blocks as described ${isc.DocUtils.linkForRef('group:nonJavaBackend','here')}.  If the example also\n includes a datasource, place the datasource definitions in the same file before the\n component code.  Note that DataSources (and components) written in XML require the optional\n SmartClient server.  If you're using the server, you can include them on your page using the \n ${isc.DocUtils.linkForRef('group:loadDSTag')} tag.\n <p>\n <b><u>Feature Explorer difference in the LGPL package</u></b>\n <p>\n The LGPL edition of SmartClient does not include the SmartClient Java Server as part of the\n licensed software, but a trimmed down server is included in the package to support the\n Feature Explorer shell.  There are some examples that use DataSources that would normally\n use the SmartClient server for persistence.  In the LGPL package, these DataSources are\n automatically turned into ${isc.DocUtils.linkForRef('group:clientOnlyDataSources','Client Only DataSources')} and\n the Feature Explorer loads the data for these one-time from the dataURL or testFileName\n attributes specified on the DataSource.  Subsequent DataSource operations work against this\n client-side dataset, which is why changes to the data aren't permanent in these examples.\n <p>\n Check out the ${isc.DocUtils.linkForRef('group:clientServerIntegration','Client-Server Integration')} overview topic for\n an overview of your DataBinding options.",
        name:"featureExplorerOverview",
        seeAlso:[
        ],
        type:"group"
    },
    "group:identity":{
        ref:"group:identity",
        refs:[
            "attr:DataSource.ID",
            "attr:DataSource.addGlobalId"
        ],
        name:"identity",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DrawRect.left":{
        ref:"attr:DrawRect.left",
        flags:"IRW",
        description:"Left coordinate in pixels relative to the DrawPane.",
        name:"left",
        setter:[
            "setLeft"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawRect"
    },
    "method:CheckboxItem.setValueMap":{
        ref:"method:CheckboxItem.setValueMap",
        flags:"",
        description:" Setter method to apply a valueMap to a checkbox item.<br>\n Note that if this method is overridden, the override must call\n <code>this.Super(\"setValueMap\", arguments);</code> to maintain functionality in this\n class.\n",
        name:"setValueMap",
        seeAlso:[
            {
                ref:"attr:CheckboxItem.valueMap",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:CheckboxItem",
        groups:[
            "valueMap"
        ]
    },
    "method:ListGrid.getFieldWidth":{
        ref:"method:ListGrid.getFieldWidth",
        flags:"",
        description:" Returns a numeric value for the width of some field within this <code>ListGrid</code>.\n",
        name:"getFieldWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"Index or name of the field for which the width is to be determined.",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"int | String"
            }
        ],
        returns:{
            description:"width of the field in px, or <code>null</code> if the width can't be determined.",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DrawItem.lineOpacity":{
        ref:"attr:DrawItem.lineOpacity",
        flags:"IRW",
        description:"Opacity for lines, as a number between 0 (transparent) and 1 (opaque).",
        name:"lineOpacity",
        setter:[
            "setLineOpacity"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1.0",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "line"
        ]
    },
    "attr:HiliteEditor.cancelButton":{
        ref:"attr:HiliteEditor.cancelButton",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:ImgButton')} that cancels this editor without saving \n any changes, firing the ${isc.DocUtils.linkForRef('attr:HiliteEditor.callback','callback')} with a null\n parameter.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteEditor.cancelButtonProperties</code>.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteEditor"
    },
    "group:modification":{
        ref:"group:modification",
        refs:[
            "method:Array.set",
            "method:Array.addAt",
            "method:Array.removeAt",
            "method:Array.add",
            "method:Array.addList",
            "method:Array.setLength",
            "method:Array.addListAt",
            "method:Array.remove",
            "method:Array.removeList",
            "method:Array.dataChanged",
            "method:List.set",
            "method:List.addAt",
            "method:List.removeAt",
            "method:List.add",
            "method:List.addList",
            "method:List.setLength",
            "method:List.addListAt",
            "method:List.remove",
            "method:List.removeList",
            "method:List.dataChanged"
        ],
        name:"modification",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MultiGroupPanel.deleteLevelButton":{
        ref:"attr:MultiGroupPanel.deleteLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for deleting levels\n from the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.deleteLevelButtonProperties</code> and \n <code>multiGroupPanel.deleteLevelButtonDefaults</code>.",
        name:"deleteLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:RestDataSource.operationBindings":{
        ref:"attr:RestDataSource.operationBindings",
        flags:"IR",
        description:"RestDataSource OperationBindings set to specify default dataProtocol per operationType.\n Default databindings are:\n <pre>\n   operationBindings : [\n     {operationType:\"fetch\", dataProtocol:\"getParams\"},\n     {operationType:\"add\", dataProtocol:\"postParams\"},\n     {operationType:\"remove\", dataProtocol:\"postParams\"},\n     {operationType:\"update\", dataProtocol:\"postParams\"} \n   ],\n </pre>\n If you are integrating with a ${isc.DocUtils.linkForRef('class:RestDataSource','REST')} server that requires the more\n obscure ${isc.DocUtils.linkForRef('attr:RPCRequest.httpMethod')}s of \"PUT\", \"DELETE\" or \"HEAD\", you can specify these\n httpMethod settings via ${isc.DocUtils.linkForRef('attr:OperationBinding.requestProperties')}.  dataProtocol settings\n that mention \"GET\" or \"POST\" are compatible with these additional HTTP methods as well.\n Typical ${isc.DocUtils.linkForRef('attr:DataSource.operationBindings','operationBindings')} for a REST server that uses\n \"PUT\" and \"DELETE\" are as follows:\n <pre>\n   operationBindings:[\n     {operationType:\"fetch\", dataProtocol:\"getParams\"},\n     {operationType:\"add\", dataProtocol:\"postParams\"},\n     {operationType:\"remove\", dataProtocol:\"getParams\", requestProperties:{httpMethod:\"DELETE\"}},\n     {operationType:\"update\", dataProtocol:\"postParams\", requestProperties:{httpMethod:\"PUT\"}}\n   ],\n </pre>\n <p>\n Note that dataProtocol:\"postMessage\" is always used when\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queuing')} is used to send multiple DSRequests to the server\n as a single HttpRequest.  See ${isc.DocUtils.linkForRef('class:RestDataSource')} docs, \"queuing support\".  We also \n recommend that you use the \"postMessage\" protocol whenever you are intending to use \n AdvancedCriteria with RestDataSource - this is discussed in the section \"Server inbound\n data format\" in the ${isc.DocUtils.linkForRef('class:RestDataSource','RestDataSource overview')}.\n <p>",
        name:"operationBindings",
        seeAlso:[
        ],
        valueType:"Array of OperationBinding",
        defaultValue:"[...]",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:Selection.selectionRangeNotLoadedMessage":{
        ref:"attr:Selection.selectionRangeNotLoadedMessage",
        flags:"IRWA",
        description:"Message to display to the user in a <code>warn</code> dialog if ${isc.DocUtils.linkForRef('method:Selection.selectRange')} is\n called for a selection on a ResultSet, where the range of records to be selected has not been\n loaded.",
        name:"selectionRangeNotLoadedMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"Can't select that many records at once.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Please try working in smaller batches.",
        type:"attr",
        definingClass:"class:Selection",
        groups:[
            "i18nMessages"
        ]
    },
    "group:layoutPolicy":{
        ref:"group:layoutPolicy",
        refs:[
            "attr:TileLayout.layoutPolicy",
            "attr:TileLayout.orientation",
            "attr:TileLayout.tilesPerLine",
            "attr:TileLayout.autoWrapLines",
            "attr:Layout.overflow",
            "attr:Layout.orientation",
            "attr:Layout.vertical",
            "attr:Layout.vPolicy",
            "attr:Layout.hPolicy",
            "attr:Layout.minMemberSize",
            "attr:Layout.enforcePolicy",
            "attr:Layout.defaultLayoutAlign",
            "attr:Layout.align",
            "attr:Layout.reverseOrder"
        ],
        name:"layoutPolicy",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DynamicForm.cancelEditing":{
        ref:"method:DynamicForm.cancelEditing",
        flags:"",
        description:" If the form or valuesManager has associated userTask workflow task than notify it about\n cancelling the changes.  \n",
        name:"cancelEditing",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:FacetValue.canEdit":{
        ref:"attr:FacetValue.canEdit",
        flags:"IRW",
        description:"Whether cells for this facetValue can be edited.  Defaults to ${isc.DocUtils.linkForRef('attr:CubeGrid.canEdit')}.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"canEdit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"cubeGrid.canEdit",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "method:DateItem.getInputFormat":{
        ref:"method:DateItem.getInputFormat",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is <code>true</code> this method returns a\n standard ${isc.DocUtils.linkForRef('type:DateInputFormat')}, determining how values entered\n by the user are to be converted to Javascript Date objects.\n <P>\n If an explicit ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat')} has been specified it will be returned,\n otherwise, if a custom ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter')} or ${isc.DocUtils.linkForRef('dateItem.format')} are\n specified, the input format will be automatically derived from that property.\n <P>\n Otherwise, the global ${isc.DocUtils.linkForRef('DateUtil.setInputFormat','inputFormat')} is used.\n <P>\n Note that the inputFormat will ignore any separator characters and padding of values.\n However if necessary entirely custom date formatting and parsing may be achieved via the\n <smartclient>${isc.DocUtils.linkForRef('method:DateItem.formatEditorValue')} and\n ${isc.DocUtils.linkForRef('method:DateItem.parseEditorValue')} methods.</smartclient>\n <smartgwt><code>setEditorValueFormatter()</code> and \n <code>setEditorValueParser()</code> APIs.</smartgwt>\n \n",
        name:"getInputFormat",
        seeAlso:[
        ],
        returns:{
            description:"expected format of date strings to parse",
            type:"DateInputFormat"
        },
        type:"method",
        definingClass:"class:DateItem"
    },
    "group:files":{
        ref:"group:files",
        refs:[
            "classAttr:Page.defaultUnsupportedBrowserURL",
            "classAttr:Page.protocolURLs",
            "classMethod:Page.getAppDir",
            "classMethod:Page.setAppImgDir",
            "classMethod:Page.getAppImgDir",
            "classMethod:Page.setAppFilesDir",
            "classMethod:Page.getAppFilesDir",
            "classMethod:Page.setIsomorphicDir",
            "classMethod:Page.getIsomorphicDir",
            "classMethod:Page.setSkinDir",
            "classMethod:Page.getSkinDir",
            "classMethod:Page.getSkinImgDir",
            "classMethod:Page.getImgURL",
            "classMethod:Page.getURL",
            "classMethod:Page.loadStyleSheet"
        ],
        description:"Referring to and loading other files.\n <P>\n The two main URL settings relevant to file loading are:<br>\n * appDir  (where application-specific files live)<br>\n * isomorphicDir (where system supplied files live)<br>",
        name:"files",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DetailViewer.labelSuffix":{
        ref:"attr:DetailViewer.labelSuffix",
        flags:"IRW",
        description:"text to put after a label",
        name:"labelSuffix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\":\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "labels"
        ]
    },
    "attr:TabSet.tabBarProperties":{
        ref:"attr:TabSet.tabBarProperties",
        flags:"IR",
        description:"This attribute allows developers to specify custom properties for this tabset's\n ${isc.DocUtils.linkForRef('attr:TabSet.tabBar')}",
        name:"tabBarProperties",
        seeAlso:[
        ],
        valueType:"TabBar Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:Date.getMonthName":{
        ref:"method:Date.getMonthName",
        flags:"",
        description:" Return the full name of the month for this date (January, February, etc)\n To modify the value returned by this method,\n <smartclient>set ${isc.DocUtils.linkForRef('classAttr:Date.shortMonthNames')}</smartclient>\n <smartgwt>use {@link com.smartgwt.client.util.DateUtil#setMonthNames()}</smartgwt>.\n",
        name:"getMonthName",
        seeAlso:[
        ],
        returns:{
            description:"Month name",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "classMethod:Timer.clear":{
        ref:"classMethod:Timer.clear",
        flags:"",
        description:"\n Cancels the processing of a timerEvent if it has not already fired.\n\n",
        name:"clear",
        seeAlso:[
        ],
        params:[
            {
                description:"timerEvent object previously returned from Timer.setTimeout()",
                optional:false,
                name:"timerEvent",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Timer"
    },
    "attr:ListGrid.showSortNumerals":{
        ref:"attr:ListGrid.showSortNumerals",
        flags:"IRWA",
        description:"When multiple fields are sorted, set this to false to hide the sort-numeral\n displayed by default after the sort-arrows in the header-buttons of sorted fields.",
        name:"showSortNumerals",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Menu.showAnimationEffect":{
        ref:"attr:Menu.showAnimationEffect",
        flags:"IRWA",
        description:"When this menu is shown how should it animate into view? By default the menu will just\n show at the specified size/position. Options for animated show effects are <code>\"fade\"</code>\n to fade from transparent to visible, <code>\"slide\"</code> to slide the menu into view,\n or <code>\"wipe\"</code> to have the menu grow into view, revealing its content as it\n grows. Can be overridden by passing the 'animationEffect' parameter to 'menu.show()'",
        name:"showAnimationEffect",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:FacetChart.pieStartAngle":{
        ref:"attr:FacetChart.pieStartAngle",
        flags:"IR",
        description:"Default angle in degrees where pie charts start drawing sectors to represent data values.\n Default of 0 places the first value starting from the \"east\" position.  \n Use 270 or -90 for north.",
        name:"pieStartAngle",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:StatefulCanvas.addToRadioGroup":{
        ref:"method:StatefulCanvas.addToRadioGroup",
        flags:"A",
        description:" Add this widget to the specified mutually exclusive selection group with the ID\n passed in.\n Selecting this widget will then deselect any other StatefulCanvases with the same\n radioGroup ID.\n StatefulCanvases can belong to only one radioGroup, so this method will remove from \n any other radiogroup of which this button is already a member.\n",
        name:"addToRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- ID of the radiogroup to which this widget should be added",
                optional:false,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:TextItem.deselectValue":{
        ref:"method:TextItem.deselectValue",
        flags:"",
        description:" If this item currently has focus, clear the current selection. leaving focus in the item.\n Has no effect if the item is undrawn or unfocused.\n Only applies to text-based items.\n",
        name:"deselectValue",
        seeAlso:[
        ],
        params:[
            {
                description:"By default the text insertion cursor will be moved to the end of the   current value - pass in this parameter to move to the start instead",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:TextItem"
    },
    "method:ListGrid.selectRecords":{
        ref:"method:ListGrid.selectRecords",
        flags:"",
        description:"\n Select/deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n <P>\n Note that developers may wish to use ${isc.DocUtils.linkForRef('method:ListGrid.selectRange')} to select a single\n contiguous range.\n\n",
        name:"selectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to select",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "class:AutoFitTextAreaItem":{
        methods:[
        ],
        ref:"class:AutoFitTextAreaItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:AutoFitTextAreaItem.maxHeight"
        ],
        description:"Class for editable multi-line text areas (uses HTML <code>&lt;TEXTAREA&gt;</code> object)\n automatically expands to accomodate its content",
        name:"AutoFitTextAreaItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('textAreaItem')}"
        ]
    },
    "attr:TextItem.changeOnKeypress":{
        ref:"attr:TextItem.changeOnKeypress",
        flags:"IRW",
        description:"Should this form item fire its ${isc.DocUtils.linkForRef('method:FormItem.change','change')} handler (and store its\n value in the form) on every keypress? Set to <code>false</code> to suppress the 'change'\n handler firing (and the value stored) on every keypress.\n <p>\n Note: If <code>false</code>, the value returned by ${isc.DocUtils.linkForRef('method:FormItem.getValue','getValue')}\n will not reflect the value displayed in the form item element as long as focus is in\n the form item element.",
        name:"changeOnKeypress",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "eventHandling",
            "values"
        ]
    },
    "group:clientDataIntegration":{
        ref:"group:clientDataIntegration",
        title:"Client-side Data Integration",
        treeLocation:[
            "Concepts/Client-Server Integration",
            "Client Reference/Data Binding"
        ],
        refs:[
            "method:DataSourceField.getFieldValue",
            "attr:DataSource.dataFormat",
            "attr:DataSource.dataProtocol",
            "attr:DataSource.useHttpProxy",
            "attr:DataSource.callbackParam",
            "attr:DataSource.requestProperties",
            "attr:DataSource.dataTransport",
            "attr:DataSource.dropExtraFields",
            "attr:DataSource.sendExtraFields",
            "attr:DataSource.xmlNamespaces",
            "attr:DataSource.serviceNamespace",
            "attr:DataSource.schemaNamespace",
            "attr:DataSource.recordXPath",
            "attr:DataSource.dataURL",
            "attr:DataSource.tagName",
            "attr:DataSource.defaultTextMatchStyle",
            "attr:DataSourceField.valueXPath",
            "attr:DataSourceField.valueWriteXPath",
            "attr:OperationBinding.operationType",
            "attr:OperationBinding.operationId",
            "attr:OperationBinding.wsOperation",
            "attr:OperationBinding.dataURL",
            "attr:OperationBinding.dataProtocol",
            "attr:OperationBinding.dataFormat",
            "attr:OperationBinding.dataTransport",
            "attr:OperationBinding.useHttpProxy",
            "attr:OperationBinding.callbackParam",
            "attr:OperationBinding.requestProperties",
            "attr:OperationBinding.defaultParams",
            "attr:OperationBinding.useFlatFields",
            "attr:OperationBinding.recordXPath",
            "attr:OperationBinding.recordName",
            "attr:OperationBinding.spoofResponses",
            "attr:OperationBinding.xmlNamespaces",
            "attr:OperationBinding.responseDataSchema",
            "attr:RestDataSource.dataProtocol",
            "type:DSDataFormat",
            "type:DSProtocol"
        ],
        description:"SmartClient supports declarative, XPath-based binding of visual components to any server\n capable of returning XML or JSON responses over HTTP, without the need for the\n ${isc.DocUtils.linkForRef('group:serverDataIntegration','SmartClient server')}.\n <P>\n This approach is called Client-Side Data Integration, which means:\n <ul>\n <li> You ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','create DataSources')} \n <smartclient>in JavaScript</smartclient>\n <smartgwt>programmatically in Java (with <code>new DataSource()</code>)</smartgwt>\n which describe the data to be loaded and manipulated in the user interface. The\n JavaScript that creates these DataSources may be dynamically generated and/or existing\n metadata may be ${isc.DocUtils.linkForRef('group:metadataImport','imported')}.\n <li> You configure DataSources, via property and method overrides, to send appropriate\n HTTP requests to your server, and to parse HTTP responses from your server, in order to\n fulfill the 4 core operations of the ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource Protocol')}.\n <li> These DataSources are then bound to \n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','databinding-capable UI components')}, which can provide a variety of\n complete user interactions (form-based editing, grid-based editing, load on demand, ..)\n based on these 4 core operations\n </ul>\n <P>\n <h4>Approaches and platforms</h4>\n <P>\n <B>REST integration with RestDataSource (preferred)</B>\n <P>\n The ${isc.DocUtils.linkForRef('class:RestDataSource')} provides a complete XML or JSON-based protocol that supports all\n of the features of SmartClient's databinding layer (data paging, queuing/batching of\n requests for transactions, nested AdvancedCriteria, server-side validation errors, automatic\n cache synchronization, etc).  To use the RestDataSource, simply write server code that can\n parse RestDataSource requests and produce the required responses; example requests and\n responses are ${isc.DocUtils.linkForRef('class:RestDataSource','provided')}.\n <P>\n The SmartClient public wiki contains examples of integration with\n <a href='http://wiki.smartclient.com/display/Main/Integrating+with+ASP.Net+MVC' target='_blank'>.NET's ASP.NET MVC</a>\n as well as \n <a href='http://wiki.smartclient.com/pages/viewpage.action?pageId=1442411' target='_blank'>PHP with Doctrine</a>.\n <P>\n <h4>Consuming Existing XML and JSON formats</h4>\n <p>\n If you have pre-existing XML or JSON formats, SmartClient DataSources can be configured to\n work with them.  However, <b>only use this approach if you are unable to modify a\n pre-existing protocol</b>.  If you have a choice, use RestDataSource.  \n <P>\n In particular, if you are choosing between tools that can automatically generate a REST\n service from an API vs using the pre-built RestDataSource protocol, <b>definitely use\n RestDataSource</b>.  Automatically generated REST interfaces will not handle the needs of a\n modern GUI, such as transactional/batched saves and user-ready validation error messages.\n For a deeper discussion, see \n <a href='http://forums.smartclient.com/showthread.php?t=8159#aExistingRest' target='_blank'>this FAQ</a>.\n <P>\n Specifically for pre-existing WSDL web services, see the discussion of WSDL Integration\n below instead.\n <P>\n To display XML or JSON from a pre-existing service in a visual component such as a ListGrid,\n you bind the component to a ${isc.DocUtils.linkForRef('class:DataSource')} which provides the\n ${isc.DocUtils.linkForRef('attr:DataSource.dataURL','URL')} of the service, as well as a declaration of how to form inputs\n to the service and how to interpret service responses as DataSource records.\n <P>\n An XPath expression, the ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','recordXPath')}, is applied to\n the service response to select the XML elements or JSON objects that should be interpreted\n as DataSource records.  Then, for each field of the DataSource, an optional\n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath')} can be declared which selects the value for the field\n from within each of the XML elements or JSON objects selected by the recordXPath.  If no\n valueXPath is specified, the field name itself is taken as an XPath, which will select the\n same-named subelement or property from the record element or object.\n <P>\n For example, the following code defines a DataSource that a ListGrid could bind to in order\n to display an RSS 2.0 feed.\n <PRE>\n    isc.DataSource.create({\n        dataURL:feedURL,\n        recordXPath:\"//item\",\n        fields:[\n            { name:\"title\" },\n            { name:\"link\" },\n            { name:\"description\" }\n        ]\n    });\n </PRE>\n A representative slice of an RSS 2.0 feed follows:\n <pre>\n     &lt;?xml version=\"1.0\" encoding=\"iso-8859-1\" ?&gt; \n     &lt;rss version=\"2.0\"&gt;\n     &lt;channel&gt;\n       &lt;title&gt;feed title&lt;/title&gt; \n       ...\n       &lt;item&gt;\n         &lt;title&gt;article title&lt;/title&gt; \n         &lt;link&gt;url of article&lt;/link&gt; \n         &lt;description&gt;\n            article description\n         &lt;/description&gt; \n       &lt;/item&gt;\n       &lt;item&gt;\n          ...\n </pre>\n Here, the recordXPath selects a list of &lt;item&gt; elements.  Since the intended values\n for each DataSource field appear as simple subelements of each &lt;item&gt; element (eg\n &lt;description&gt;), the field name is sufficient to select the correct values, and no\n explicit valueXPath needs to be specified.\n <P>\n A running version of this example is available here: ${isc.DocUtils.linkForExampleId('rssFeed')}.  Further\n examples of simple XML or JSON data loading using files stored on disk as the\n \"service\" to contact: the ${isc.DocUtils.linkForExampleId('simpleJSON', 'Simple JSON')} example shows loading\n data from a JSON file into a databound grid, and the\n ${isc.DocUtils.linkForExampleId('xpathBinding', 'XPath Binding example')} shows loading XML and processing it with\n XPaths.\n <P>\n <B>WSDL integration</B>\n <P>\n If you have a choice between WSDL and REST integration, we recommend REST integration - it's\n simpler, requires less specialized knowledge, is easier to troubleshoot and is faster.  If\n you need to use WSDL, see the ${isc.DocUtils.linkForRef('group:wsdlBinding','WSDL Binding Overview')}.\n <P>\n <H4>Round Tripping: Loading, Editing and Saving</H4>\n <P>\n For WSDL web services, see the ${isc.DocUtils.linkForRef('group:wsdlBinding','WSDL binding topic')} first.\n <P>\n When using RestDataSource, see the ${isc.DocUtils.linkForRef('class:RestDataSource')} docs for message formats for\n saving, as well as expected responses.\n <P>\n When a user triggers a DSRequest (eg, completes an inline edit in a grid), the request\n data will be sent to the dataURL.  The ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource protocol')}\n describes request and response data expected for each operation type.  \n <P>\n By using settings such as ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')}, you can control how\n DSRequests are sent to your backend so that you can handle them most easily.  By using the\n same properties used to initially load data (eg\n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','recordXPath')}), you can control how SmartClient forms the\n DSResponses that are then interpreted by ${isc.DocUtils.linkForRef('interface:DataBoundComponent','databound components')}.\n <P>\n <b>Controlling how DSRequests are sent</b>\n <P>\n According to the ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','protocol')} being used, the\n ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource request data')}, if any, either becomes HTTP\n params (sent by GET or POST), or an XML message as put together by\n ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')}.  For a DataSource invoking a WSDL-described web\n service, XML serialization automatically handles namespacing and SOAP encoding.\n <P>\n Note that, by default, just ${isc.DocUtils.linkForRef('attr:DSRequest.data')} is sent, not any of the metadata such\n as ${isc.DocUtils.linkForRef('attr:DSRequest.startRow')}.  This can be customized via\n ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}.\n <P>\n The URL to contact is set via the ${isc.DocUtils.linkForRef('attr:OperationBinding.dataURL','dataURL')}\n property.  If using a Web Service, the <code>dataURL</code> defaults to the service location\n URL embedded in the WSDL file.\n <P>\n For example, in the default configuration for non-WSDL binding, since\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','dataProtocol')} is \"getParams\", ${isc.DocUtils.linkForRef('attr:DSRequest.data')} is\n sent as HTTP params in an HTTP \"GET\" operation.  Given:\n <ul>\n <li> changes to an existing record, hence an \"update\" request\n <li> a ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} field of \"id\" with value \"5\" on the\n record to be updated\n <li> a field \"age\" being changed to \"32\"\n <li> \"dataURL\" of \"save.php\"\n </ul>\n You will see an HTTP GET to the URL <code>save.php?id=5&age=32</code>.\n <P>\n <b>Forming a DSResponse from the response data</b>\n <P>\n A ${isc.DocUtils.linkForRef('class:DSResponse')} is created from the response data by using XPath\n expressions declared in the schema (${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath','recordXPath')} and \n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath','valueXPath')}) to extract DataSource record and field\n values.\n <P>\n See the ${isc.DocUtils.linkForExampleId('xmlEditSave', '\"Edit and Save\"')} example for sample XML responses for\n all four operationTypes.  \n <P>\n Similar to input processing, by default DataSource layer metadata, such as\n ${isc.DocUtils.linkForRef('attr:DSResponse.startRow')}, is not extracted from the response data.  You can\n implement ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')} to fill out the metadata fields of\n the ${isc.DocUtils.linkForRef('class:DSResponse')}, in order to allow more DataSource features, such as paging and\n validation errors, to be used with a web service that supports such features.  \n <P>\n See the ${isc.DocUtils.linkForExampleId('xmlServerValidationErrors', 'XML')} and \n ${isc.DocUtils.linkForExampleId('jsonServerValidationErrors', 'JSON')} versions of the transformResponse()\n example for an example of providing validation errors in XML or JSON responses.",
        name:"clientDataIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Calendar.previousButton":{
        ref:"attr:Calendar.previousButton",
        flags:"IR",
        description:"An ${isc.DocUtils.linkForRef('class:ImgButton')} that appears above the week/day/month views of the\n calendar and allows the user to move the calendar backwards in time.",
        name:"previousButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:MiniDateRangeItem.setAutoValidate":{
        ref:"method:MiniDateRangeItem.setAutoValidate",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.autoValidate')}\n",
        name:"setAutoValidate",
        seeAlso:[
        ],
        params:[
            {
                description:"New auto-validate setting.",
                optional:false,
                name:"autoValidate",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:MiniDateRangeItem"
    },
    "attr:DetailViewer.showDetailFields":{
        ref:"attr:DetailViewer.showDetailFields",
        flags:"IR",
        description:"Whether to show fields marked <code>detail:true</code> when a DataBoundComponent is \n given a DataSource but no <code>component.fields</code>.\n <p>\n The <code>detail</code> property is used on DataSource fields to mark fields that \n shouldn't appear by default in a view that tries to show many records in a small space.",
        name:"showDetailFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "databinding"
        ]
    },
    "classMethod:Canvas.setAllowExternalFilters":{
        ref:"classMethod:Canvas.setAllowExternalFilters",
        flags:"",
        description:" Changes the system-wide ${isc.DocUtils.linkForRef('classAttr:Canvas.allowExternalFilters')} setting.\n",
        name:"setAllowExternalFilters",
        seeAlso:[
        ],
        params:[
            {
                description:"new setting",
                optional:false,
                name:"allExternalFilters",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Canvas",
        groups:[
            "IEFilters"
        ]
    },
    "classMethod:DataSource.registerRecordSummaryFunction":{
        ref:"classMethod:DataSource.registerRecordSummaryFunction",
        flags:"",
        description:" Register a new standard ${isc.DocUtils.linkForRef('type:RecordSummaryFunction')}. This will then be available\n by calling ${isc.DocUtils.linkForRef('classMethod:SimpleType.applySummaryFunction','applySummaryFunction()')} and passing in just the new method name.\n",
        name:"registerRecordSummaryFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"identifier for the new summary function",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new summary function implementation.  This method should take 3 parameters: <code>record</code> (the record for which the\n  summary is being generated), <code>fields</code> (an array of fields to include in the\n  generated summary) and <code>summaryField</code> (a pointer to the field in which the\n  summary will be displayed [may be null].",
                optional:false,
                name:"summaryFunction",
                defaultValue:null,
                type:"function | stringMethod"
            }
        ],
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:Window.showMinimizeButton":{
        ref:"attr:Window.showMinimizeButton",
        flags:"IRW",
        description:"If true, show a minimize button in the header--clicking it minimizes the Window.",
        name:"showMinimizeButton",
        setter:[
            "setShowMinimizeButton"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "attr:ListGrid.filterButtonPrompt":{
        ref:"attr:ListGrid.filterButtonPrompt",
        flags:"IR",
        description:"The prompt to show when the mouse hovers over the Filter button in the FilterEditor.",
        name:"filterButtonPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Filter\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:SliderItem.numValues":{
        ref:"attr:SliderItem.numValues",
        flags:"IRW",
        description:"The number of discrete values represented by slider. If specified, the range of valid\n values (between <code>minValue</code> and <code>maxValue</code>) will be divided into\n this many steps. As the thumb is moved along the track it will only select these values\n and appear to jump between the steps.",
        name:"numValues",
        setter:[
            "setNumValues"
        ],
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sliderItem')}"
        ],
        definingClass:"class:SliderItem"
    },
    "method:DrawGroup.setTop":{
        ref:"method:DrawGroup.setTop",
        flags:"",
        description:" Sets the top coordinate of this <code>DrawGroup</code>'s ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')}.\n Note that setting the top coordinate will not move the items in this <code>DrawGroup</code>.\n\n",
        name:"setTop",
        seeAlso:[
        ],
        params:[
            {
                description:"new top coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:PickTreeItem.readOnlyDisplay":{
        ref:"attr:PickTreeItem.readOnlyDisplay",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} is set to <code>false</code>, how should this item\n be displayed to the user?\n <P>\n The default value for PickTreeItems is <code>disabled</code> - note that \n <code>readOnly</code> and <code>static</code> appearances have no effect for \n PickTreeItems.",
        name:"readOnlyDisplay",
        seeAlso:[
        ],
        valueType:"ReadOnlyDisplayAppearance",
        defaultValue:"\"disabled\"",
        type:"attr",
        definingClass:"class:PickTreeItem"
    },
    "attr:DynamicForm.datetimeFormatter":{
        ref:"attr:DynamicForm.datetimeFormatter",
        flags:"IRW",
        description:"Default ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} for Date type values displayed in this form in fields\n of type <code>datetime</code>.\n <P>\n For datetime fields, this attribute will be used instead of ${isc.DocUtils.linkForRef('attr:DynamicForm.dateFormatter')}\n when formatting Date values.\n <P>\n Note that if specified, ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} and ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')}\n take precedence over the format specified at the component level.\n <P>\n If no explicit formatter is specified at the field or component level, datetime field\n values will be formatted according to the system-wide\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat','short datetime display format')}.",
        name:"datetimeFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:ListGrid.stopHover":{
        ref:"method:ListGrid.stopHover",
        flags:"",
        description:" Notification that the user is no longer hovering over some cell. Hides the current hover canvas\n if one is showing.\n",
        name:"stopHover",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:FacetChart.legendTextPadding":{
        ref:"attr:FacetChart.legendTextPadding",
        flags:"IR",
        description:"Padding between color swatch and its label.",
        name:"legendTextPadding",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "class:DrawLinePath":{
        methods:[
            "method:DrawLinePath.getCenter",
            "method:DrawLinePath.setStartPoint",
            "method:DrawLinePath.setEndPoint",
            "method:DrawLinePath.getBoundingBox",
            "method:DrawLinePath.moveBy"
        ],
        ref:"class:DrawLinePath",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawLinePath.knobs",
            "attr:DrawLinePath.startPoint",
            "attr:DrawLinePath.endPoint",
            "attr:DrawLinePath.tailSize",
            "attr:DrawLinePath.startLeft",
            "attr:DrawLinePath.startTop",
            "attr:DrawLinePath.endLeft",
            "attr:DrawLinePath.endTop",
            "attr:DrawLinePath.endArrow"
        ],
        description:"DrawItem subclass to render a connector between two points. If the points are aligned\n  on one axis, this connector will draw as a straight line. If the points are offset on\n  both axes and there is enough space, the connector will draw short horizontal segments\n  from the start and end points, and a diagonal segment connecting the ends of these\n  'margin' segments.",
        name:"DrawLinePath",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "method:Calendar.getLaneFromPoint":{
        ref:"method:Calendar.getLaneFromPoint",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('object:Lane')} at the passed co-ordinates.  To get the lane under the mouse, pass\n null for both x and y.\n",
        name:"getLaneFromPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"the x offset into the body of the selected view",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the y offset into the body of the selected view. If this param and \"x\" are                             both unset, assumes both offsets from the last mouse event.",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"the Lane at the the passed co-ords in the passed or selected view",
            type:"Lane"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ToolbarItem.startRow":{
        ref:"attr:ToolbarItem.startRow",
        flags:"IRW",
        description:"these items are in a row by themselves by default",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ToolbarItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DynamicForm.showErrorStyle":{
        ref:"attr:DynamicForm.showErrorStyle",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','showErrorIcons')}, \n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText','showErrorText')}, and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorStyle','showErrorStyle')} control how validation errors are\n displayed when they are displayed inline in the form (next to the form item where there\n is a validation error).  To instead display all errors at the top of the form, set\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors','showInlineErrors')}:false.\n <P>\n <code>showErrorIcons</code>, <code>showErrorText</code> and <code>showErrorStyle</code>\n are all boolean properties, and can be set on a DynamicForm to control the behavior\n form-wide, or set on individual FormItems.  \n <P>\n The HTML displayed next to a form item with errors is generated by \n ${isc.DocUtils.linkForRef('method:FormItem.getErrorHTML')}.\n The default implementation of that method respects <code>showErrorIcons</code> and\n <code>showErrorText</code> as follows:\n <P>\n <code>showErrorIcons</code>, or <code>showErrorIcon</code> at the FormItem level controls\n whether an error icon should appear next to fields which have validation errors.  The icon's\n appearance is governed by ${isc.DocUtils.linkForRef('attr:FormItem.errorIconSrc')}, ${isc.DocUtils.linkForRef('attr:FormItem.errorIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorIconHeight')}\n <P>\n <code>showErrorText</code> determines whether the text of the validation error should be\n displayed next to fields which have validation errors. The attribute\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showTitlesWithErrorMessages')} may be set to prefix error messages with the \n form item's title + <code>\":\"</code> (may be desired if the item has \n ${isc.DocUtils.linkForRef('attr:FormItem.showTitle')} set to false).\n <P>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')} controls where the error HTML should appear relative \n to form items. Therefore the combination of ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText')}<code>:false</code> and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')}<code>:\"left\"</code> creates a compact validation error display\n consisting of just an icon, to the left of the item with the error message\n available via a hover (similar appearance to ListGrid validation error display).  \n <P>\n In addition to this, <code>showErrorStyle</code> determines whether fields  with validation\n errors should have special styling applied to them. See ${isc.DocUtils.linkForRef('type:FormItemBaseStyle')} for a \n discussion for how error styling is calculated.",
        name:"showErrorStyle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "method:GridRenderer.cellValueHoverHTML":{
        ref:"method:GridRenderer.cellValueHoverHTML",
        flags:"A",
        description:" Returns the HTML that is displayed by the default cellValueHover handler. Return null or\n an empty string to cancel the hover.\n <smartgwt><p>Use <code>setCellValueHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n\n",
        name:"cellValueHoverHTML",
        seeAlso:[
            {
                ref:"method:GridRenderer.cellValueHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:ImgButton.showRollOver":{
        ref:"attr:ImgButton.showRollOver",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes over this object?",
        name:"showRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "attr:Slider.roundPrecision":{
        ref:"attr:Slider.roundPrecision",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Slider.roundValues')} is false, the slider value will be rounded to this number of\n decimal places. If set to null the value will not be rounded",
        name:"roundPrecision",
        setter:[
            "setRoundPrecision"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:Slider"
    },
    "class:ImgButton":{
        methods:[
            "method:ImgButton.getTitle",
            "method:ImgButton.setTitle",
            "method:ImgButton.setIconOrientation",
            "method:ImgButton.setIcon",
            "method:ImgButton.setAutoFit",
            "method:ImgButton.setBaseStyle",
            "method:ImgButton.select",
            "method:ImgButton.deselect",
            "method:ImgButton.isSelected",
            "method:ImgButton.setSelected",
            "method:ImgButton.addToRadioGroup",
            "method:ImgButton.removeFromRadioGroup",
            "method:ImgButton.setActionType",
            "method:ImgButton.getActionType",
            "method:ImgButton.setState",
            "method:ImgButton.setDisabled",
            "method:ImgButton.getState",
            "method:ImgButton.action",
            "method:ImgButton.titleClipped",
            "method:ImgButton.titleHoverHTML",
            "method:ImgButton.titleHover"
        ],
        ref:"class:ImgButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:ImgButton.title",
            "attr:ImgButton.hiliteAccessKey",
            "attr:ImgButton.showClippedTitleOnHover",
            "attr:ImgButton.icon",
            "attr:ImgButton.iconSize",
            "attr:ImgButton.iconWidth",
            "attr:ImgButton.iconHeight",
            "attr:ImgButton.iconOrientation",
            "attr:ImgButton.iconAlign",
            "attr:ImgButton.iconSpacing",
            "attr:ImgButton.showDisabledIcon",
            "attr:ImgButton.showRollOverIcon",
            "attr:ImgButton.showFocusedIcon",
            "attr:ImgButton.showDownIcon",
            "attr:ImgButton.showSelectedIcon",
            "attr:ImgButton.autoFit",
            "attr:ImgButton.baseStyle",
            "attr:ImgButton.selected",
            "attr:ImgButton.radioGroup",
            "attr:ImgButton.actionType",
            "attr:ImgButton.state",
            "attr:ImgButton.showDisabled",
            "attr:ImgButton.showDown",
            "attr:ImgButton.showFocus",
            "attr:ImgButton.showFocused",
            "attr:ImgButton.showRollOver",
            "attr:ImgButton.align",
            "attr:ImgButton.valign",
            "attr:ImgButton.showTitle",
            "attr:ImgButton.labelHPad",
            "attr:ImgButton.labelVPad",
            "attr:ImgButton.src"
        ],
        description:"A Img that behaves like a button, going through up/down/over state transitions in response to\n user events.  Supports an optional title, and will auto-size to accommodate the title text if\n <code>overflow</code> is set to \"visible\".\n <P>\n Example uses are Window minimize/close buttons.",
        name:"ImgButton",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.editorExit":{
        ref:"method:ListGrid.editorExit",
        flags:"",
        description:" Callback fired when the user attempts to navigate away from the current edit cell,\n or complete the current edit.\n <P>\n Return false from this method to cancel the default behavior (Saving / cancelling the\n current edit / moving to the next edit cell).\n <P>\n This callback is typically used to dynamically update values or value maps for related\n fields (via ${isc.DocUtils.linkForRef('method:ListGrid.setEditValue')} and ${isc.DocUtils.linkForRef('method:ListGrid.setEditorValueMap')} respectively, or to\n implement custom navigation (via ${isc.DocUtils.linkForRef('method:ListGrid.startEditing','startEditing(rowNum,colNum)')}.\n <P>\n Can be overridden at the field level as field.editorExit.\n\n",
        name:"editorExit",
        seeAlso:[
            {
                ref:"method:ListGridField.editorExit",
                description:null
            }
        ],
        params:[
            {
                description:"How was the edit completion fired?",
                optional:false,
                name:"editCompletionEvent",
                defaultValue:null,
                type:"EditCompletionEvent"
            },
            {
                description:"record for the cell being edited",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"new value for the cell being edited",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Returning false from this method will cancel the default behavior                      (for example saving the row) and leave the editor visible and focus\n                      in this edit cell.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:DSRequest.exportImageFormat":{
        ref:"attr:DSRequest.exportImageFormat",
        flags:"IR",
        description:"The image format in which the SVG graphic should be exported.",
        name:"exportImageFormat",
        seeAlso:[
        ],
        valueType:"ExportImageFormat",
        defaultValue:"\"png\"",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:Slider.setThumbThickWidth":{
        ref:"method:Slider.setThumbThickWidth",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.thumbThickWidth')} property of the slider\n\n",
        name:"setThumbThickWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new thumbThickWidth",
                optional:false,
                name:"newWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "classAttr:GroupingMessages.byHoursTitle":{
        ref:"classAttr:GroupingMessages.byHoursTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a time field by hours.",
        name:"byHoursTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Hours\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:CubeGrid.chartConstructor":{
        ref:"attr:CubeGrid.chartConstructor",
        flags:"IR",
        description:"Name of the SmartClient Class to be used when creating charts.  Must support the\n ${isc.DocUtils.linkForRef('interface:Chart')} interface.",
        name:"chartConstructor",
        seeAlso:[
        ],
        valueType:"Classname",
        defaultValue:"\"FacetChart\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "method:ListGrid.setShowFilterEditor":{
        ref:"method:ListGrid.setShowFilterEditor",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} property. Allows the filter editor to be\n shown or hidden at runtime.\n",
        name:"setShowFilterEditor",
        seeAlso:[
        ],
        params:[
            {
                description:"true if the filter editor should be shown, false if it should be hidden",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:AdvancedHiliteEditor.cancelButton":{
        ref:"attr:AdvancedHiliteEditor.cancelButton",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:ImgButton')} that cancels this AdvancedHiliteEditor without saving \n any changes, firing the ${isc.DocUtils.linkForRef('attr:AdvancedHiliteEditor.callback','callback')} with a null\n parameter.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>advancedHiliteEditor.cancelButtonProperties</code>.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "method:DynamicForm.valueHoverHTML":{
        ref:"method:DynamicForm.valueHoverHTML",
        flags:"A",
        description:"  Retrieves the HTML to display in a hover canvas when the user holds the mousepointer over\n  some item's value.  Return null to suppress the hover canvas altogether.<br>\n  Can be overridden by ${isc.DocUtils.linkForRef('method:FormItem.valueHoverHTML')}.\n\n",
        name:"valueHoverHTML",
        seeAlso:[
            {
                ref:"method:FormItem.valueHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"Item the user is hovering over.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "attr:CubeGrid.baseStyle":{
        ref:"attr:CubeGrid.baseStyle",
        flags:"IR",
        getter:[
            "getBaseStyle"
        ],
        description:"${isc.DocUtils.linkForRef('attr:GridRenderer.baseStyle','base cell style')} for this listGrid.\n If this property is unset, base style may be derived from ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')}\n or ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')} as described in\n ${isc.DocUtils.linkForRef('method:ListGrid.getBaseStyle')}.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"cubeCell\"",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:Window.printHeaderStyle":{
        ref:"attr:Window.printHeaderStyle",
        flags:"IR",
        description:"CSS Style for header in printed output",
        name:"printHeaderStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"printHeader\"",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:Canvas.minWidth":{
        ref:"attr:Canvas.minWidth",
        flags:"IRWA",
        description:"Minimum width that this Canvas can be resized to.\n <P>\n Note that a Canvas with overflow:\"visible\" has an implicit minimize size based on it's\n contents.\n <p>\n Note that <code>minWidth</code> affects only user-initiated drag resizes.  To set the\n minimum width of a Canvas embedded in a Layout, you can set ${isc.DocUtils.linkForRef('attr:Layout.minMemberSize')}\n to affect the minimum width of all members of the Layout.",
        name:"minWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:LinkItem.readOnlyDisplay":{
        ref:"attr:LinkItem.readOnlyDisplay",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')} is set to <code>false</code>, how should this\n <code>LinkItem</code> be displayed to the user?\n <p>\n Link items are, by default, canEdit:false. Note that the link remains active regardless\n of the <code>readOnlyDisplay</code> setting.",
        name:"readOnlyDisplay",
        seeAlso:[
            {
                ref:"attr:DynamicForm.readOnlyDisplay",
                description:null
            }
        ],
        valueType:"ReadOnlyDisplayAppearance",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LinkItem"
    },
    "class:ToolStripButton":{
        methods:[
        ],
        ref:"class:ToolStripButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/ToolStrip"
        ],
        attrs:[
        ],
        description:"Simple subclass of StretchImgButton with appearance appropriate for a ToolStrip button.\n Can be used to create an icon-only button, and icon with text, or a text only button by setting the \n icon and title attibutes as required.",
        name:"ToolStripButton",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.rowClick":{
        ref:"method:ListGrid.rowClick",
        flags:"A",
        description:"\n Event handler for when rows in the body are clicked upon. The default implementation handles\n firing ${isc.DocUtils.linkForRef('method:ListGrid.startEditing')} if appropriate, and fires\n ${isc.DocUtils.linkForRef('method:ListGridField.recordClick')} and/or ${isc.DocUtils.linkForRef('method:ListGrid.recordClick')} if set. Developers\n should typically implement recordClick rather than overriding this method.\n <P>\n Note that this method fires in addition to any specified ${isc.DocUtils.linkForRef('method:ListGrid.cellClick')}\n handler (even if that method cancels the event as a whole by returning <code>false</code>).\n\n",
        name:"rowClick",
        seeAlso:[
            {
                ref:"method:ListGrid.recordClick",
                description:null
            }
        ],
        params:[
            {
                description:"record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"index of the row where the click occurred",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"index of the col where the click occurred",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"indicates whether this was a synthesized record                                              click in response to a keyboard event",
                optional:true,
                name:"keyboardGenerated",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:null,
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events",
            "events"
        ]
    },
    "attr:ListGrid.summaryRowFetchRequestProperties":{
        ref:"attr:ListGrid.summaryRowFetchRequestProperties",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true, and a ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRowDataSource')} is specified\n this property may be used to customize the fetch request used when retrieving summary data\n to show in the summary row. An example use case might be specifying a\n ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} to perform a custom fetch operation which retrieved only summary\n values based on criteria.",
        name:"summaryRowFetchRequestProperties",
        seeAlso:[
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ResultSet.disableCacheSync":{
        ref:"attr:ResultSet.disableCacheSync",
        flags:"IRA",
        description:"By default when the data of this ResultSet's dataSource is modified, the ResultSet will\n be updated to display these changes.\n Set this flag to true to disable this behavior.",
        name:"disableCacheSync",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "cacheSync"
        ]
    },
    "attr:DateChooser.showWeekChooser":{
        ref:"attr:DateChooser.showWeekChooser",
        flags:"IRW",
        description:"When set to true, show a button that allows the calendar to be navigated by week or\n fiscal week, depending on the value of ${isc.DocUtils.linkForRef('attr:DateChooser.showFiscalYearChooser')}.",
        name:"showWeekChooser",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classMethod:NumberUtil.parseInt":{
        ref:"classMethod:NumberUtil.parseInt",
        flags:"",
        description:" Parse string that contains integer number. This method correctly handles locale based\n separators and currency symbol.\n\n",
        name:"parseInt",
        seeAlso:[
        ],
        params:[
            {
                description:"the string to parse",
                optional:false,
                name:"string",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"parsed number as a Number",
            type:"Number"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil"
    },
    "attr:DateItem.showChooserFiscalYearPicker":{
        ref:"attr:DateItem.showChooserFiscalYearPicker",
        flags:"IRW",
        description:"When set to true, show a button that allows the calendar to be navigated by fiscal year.",
        name:"showChooserFiscalYearPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "attr:SummaryBuilder.dataSource":{
        ref:"attr:SummaryBuilder.dataSource",
        flags:"IRW",
        description:"DataSource providing the available fields for the formulaBuilder.\n <P>\n By default the formulaBuilder will include <b>only</b> fields of numeric type or derived\n from a numeric type.  Set ${isc.DocUtils.linkForRef('attr:FormulaBuilder.fields')} to override this.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "interface:DataBoundComponent":{
        methods:[
            "method:DataBoundComponent.dragComplete",
            "method:DataBoundComponent.dropComplete",
            "method:DataBoundComponent.getDataPathField",
            "method:DataBoundComponent.getField",
            "method:DataBoundComponent.getFieldNum",
            "method:DataBoundComponent.find",
            "method:DataBoundComponent.findAll",
            "method:DataBoundComponent.findIndex",
            "method:DataBoundComponent.findNextIndex",
            "method:DataBoundComponent.setDataSource",
            "method:DataBoundComponent.exportData",
            "method:DataBoundComponent.willFetchData",
            "method:DataBoundComponent.findByKey",
            "method:DataBoundComponent.selectRecord",
            "method:DataBoundComponent.selectSingleRecord",
            "method:DataBoundComponent.deselectRecord",
            "method:DataBoundComponent.selectRecords",
            "method:DataBoundComponent.deselectRecords",
            "method:DataBoundComponent.selectAllRecords",
            "method:DataBoundComponent.deselectAllRecords",
            "method:DataBoundComponent.selectRange",
            "method:DataBoundComponent.deselectRange",
            "method:DataBoundComponent.anySelected",
            "method:DataBoundComponent.getSelectionLength",
            "method:DataBoundComponent.getHilites",
            "method:DataBoundComponent.setHilites",
            "method:DataBoundComponent.getHiliteState",
            "method:DataBoundComponent.setHiliteState",
            "method:DataBoundComponent.enableHilite",
            "method:DataBoundComponent.disableHilite",
            "method:DataBoundComponent.enableHiliting",
            "method:DataBoundComponent.disableHiliting",
            "method:DataBoundComponent.editHilites",
            "method:DataBoundComponent.transferRecords",
            "method:DataBoundComponent.getDropValues",
            "method:DataBoundComponent.transferDragData",
            "method:DataBoundComponent.getDragData",
            "method:DataBoundComponent.transferSelectedData",
            "method:DataBoundComponent.setDragTracker",
            "method:DataBoundComponent.addFormulaField",
            "method:DataBoundComponent.editFormulaField",
            "method:DataBoundComponent.getFormulaFieldValue",
            "method:DataBoundComponent.addSummaryField",
            "method:DataBoundComponent.editSummaryField",
            "method:DataBoundComponent.getSummaryFieldValue",
            "method:DataBoundComponent.shouldIncludeHiliteInSummaryField",
            "method:DataBoundComponent.getRecordIndex",
            "method:DataBoundComponent.getTitleFieldValue",
            "method:DataBoundComponent.getTitleField",
            "method:DataBoundComponent.getRecordHiliteCSSText",
            "method:DataBoundComponent.getSort",
            "method:DataBoundComponent.setSort",
            "method:DataBoundComponent.askForSort",
            "method:DataBoundComponent.isOffline",
            "method:DataBoundComponent.editFields",
            "method:DataBoundComponent.userAddedField",
            "method:DataBoundComponent.selectionUpdated"
        ],
        ref:"interface:DataBoundComponent",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:DataBoundComponent.dataSource",
            "attr:DataBoundComponent.dataFetchMode",
            "attr:DataBoundComponent.dataPageSize",
            "attr:DataBoundComponent.fields",
            "attr:DataBoundComponent.useAllDataSourceFields",
            "attr:DataBoundComponent.showHiddenFields",
            "attr:DataBoundComponent.showDetailFields",
            "attr:DataBoundComponent.showComplexFields",
            "attr:DataBoundComponent.fetchOperation",
            "attr:DataBoundComponent.updateOperation",
            "attr:DataBoundComponent.addOperation",
            "attr:DataBoundComponent.removeOperation",
            "attr:DataBoundComponent.exportFields",
            "attr:DataBoundComponent.exportAll",
            "attr:DataBoundComponent.exportIncludeSummaries",
            "attr:DataBoundComponent.dragRecategorize",
            "attr:DataBoundComponent.preventDuplicates",
            "attr:DataBoundComponent.duplicateDragMessage",
            "attr:DataBoundComponent.showOfflineMessage",
            "attr:DataBoundComponent.offlineMessage",
            "attr:DataBoundComponent.offlineSaveMessage",
            "attr:DataBoundComponent.addDropValues",
            "attr:DataBoundComponent.dropValues",
            "attr:DataBoundComponent.dataArity",
            "attr:DataBoundComponent.progressiveLoading",
            "attr:DataBoundComponent.canEditFieldAttribute",
            "attr:DataBoundComponent.useFlatFields",
            "attr:DataBoundComponent.autoFetchData",
            "attr:DataBoundComponent.initialCriteria",
            "attr:DataBoundComponent.canEditHilites",
            "attr:DataBoundComponent.hilites",
            "attr:DataBoundComponent.hiliteIcons",
            "attr:DataBoundComponent.hiliteIconPosition",
            "attr:DataBoundComponent.hiliteIconSize",
            "attr:DataBoundComponent.hiliteIconWidth",
            "attr:DataBoundComponent.hiliteIconHeight",
            "attr:DataBoundComponent.hiliteIconLeftPadding",
            "attr:DataBoundComponent.hiliteIconRightPadding",
            "attr:DataBoundComponent.hiliteProperty",
            "attr:DataBoundComponent.fieldNamingStrategy",
            "attr:DataBoundComponent.editHilitesDialogTitle",
            "attr:DataBoundComponent.fieldEditorWindowTitle",
            "attr:DataBoundComponent.fieldEditorWindow",
            "attr:DataBoundComponent.hiliteEditor",
            "attr:DataBoundComponent.dragDataAction",
            "attr:DataBoundComponent.dragTrackerStyle",
            "attr:DataBoundComponent.badFormulaResultValue",
            "attr:DataBoundComponent.missingSummaryFieldValue",
            "attr:DataBoundComponent.canAddFormulaFields",
            "attr:DataBoundComponent.addFormulaFieldText",
            "attr:DataBoundComponent.editFormulaFieldText",
            "attr:DataBoundComponent.removeFormulaFieldText",
            "attr:DataBoundComponent.canAddSummaryFields",
            "attr:DataBoundComponent.addSummaryFieldText",
            "attr:DataBoundComponent.editSummaryFieldText",
            "attr:DataBoundComponent.removeSummaryFieldText",
            "attr:DataBoundComponent.includeHilitesInSummaryFields",
            "attr:DataBoundComponent.titleField",
            "attr:DataBoundComponent.iconField",
            "attr:DataBoundComponent.infoField",
            "attr:DataBoundComponent.dataField",
            "attr:DataBoundComponent.descriptionField",
            "attr:DataBoundComponent.emptyExportMessage",
            "attr:DataBoundComponent.unknownErrorMessage"
        ],
        description:"A DataBoundComponent is a widget that can configure itself for viewing or editing objects which\n share a certain schema by \"binding\" to the schema for that object (called a \"DataSource\").\n <P>\n A schema (or DataSource) describes an object as consisting of a set of properties (or\n \"fields\").\n <P>\n DataBoundComponents have a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataSource','common set of APIs')} for\n dealing with binding to DataSources, \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields','overriding or augmenting')} the schema information\n provided by a DataSource, and manipulating objects or sets of object from the DataSource.\n <P>\n The following visual components currently support databinding:<pre>\n   ${isc.DocUtils.linkForRef('class:DynamicForm')}\n   ${isc.DocUtils.linkForRef('class:DetailViewer')}\n   ${isc.DocUtils.linkForRef('class:ListGrid')}\n   ${isc.DocUtils.linkForRef('class:TreeGrid')}\n   ${isc.DocUtils.linkForRef('class:TileGrid')}\n   ${isc.DocUtils.linkForRef('class:ColumnTree')}\n   ${isc.DocUtils.linkForRef('class:CubeGrid')}\n </pre>\n The following non-visual components also support databinding:<pre>\n   ${isc.DocUtils.linkForRef('class:ValuesManager')}\n   ${isc.DocUtils.linkForRef('class:ResultSet')}\n   ${isc.DocUtils.linkForRef('class:ResultTree')}\n </pre>",
        name:"DataBoundComponent",
        seeAlso:[
        ],
        type:"interface"
    },
    "attr:ImgButton.valign":{
        ref:"attr:ImgButton.valign",
        flags:"IRW",
        description:"Vertical alignment of this component's title.",
        name:"valign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.getFormulaFieldValue":{
        ref:"method:ListGrid.getFormulaFieldValue",
        flags:"",
        description:" Get the computed value of a ${isc.DocUtils.linkForRef('attr:ListGrid.canAddFormulaFields','formula field')}.\n",
        name:"getFormulaFieldValue",
        seeAlso:[
        ],
        params:[
            {
                description:"field that has a formula",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"record to use to compute formula value",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"formula result if a valid number or ${isc.DocUtils.linkForRef('attr:DataBoundComponent.badFormulaResultValue')} if invalid",
            type:"Double or String"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:FormulaBuilder.showAutoHideCheckBox":{
        ref:"attr:FormulaBuilder.showAutoHideCheckBox",
        flags:"IR",
        description:"Whether to show a checkbox offering the user the ability to automatically\n hide any fields involved in the formula.",
        name:"showAutoHideCheckBox",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:Array.add":{
        ref:"method:Array.add",
        flags:"",
        description:" Add an object to this list, at the end\n\n",
        name:"add",
        seeAlso:[
        ],
        params:[
            {
                description:"object to add",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"pointer to the object passed in",
            type:"any"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "method:PortalLayout.willMaximizePortlet":{
        ref:"method:PortalLayout.willMaximizePortlet",
        flags:"",
        description:" Method called when a ${isc.DocUtils.linkForRef('class:Portlet')} in this PortalLayout is about to be\n maximized. Note that this method is only called when the user explicitly\n clicks on the portlet's ${isc.DocUtils.linkForRef('attr:Window.showMaximizeButton','maximize button')} --\n it is not called when programmatically maximizing a portlet via\n ${isc.DocUtils.linkForRef('method:Window.maximize','maximize()')}.\n <p>\n Return false to cancel the action.\n \n",
        name:"willMaximizePortlet",
        seeAlso:[
            {
                ref:"method:PortalLayout.portletMaximized",
                description:null
            }
        ],
        params:[
            {
                description:"the Portlet which will be maximized",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        returns:{
            description:"whether the action should proceed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:MetricSettings.formatAxisValue":{
        ref:"method:MetricSettings.formatAxisValue",
        flags:"",
        description:" Return the text string to display in ${isc.DocUtils.linkForRef('attr:MetricSettings.gradationLabelProperties','gradation labels')}\n given the raw value for the metric displayed on the value axis.\n <p>\n Note that the rendering of values in hovers or via ${isc.DocUtils.linkForRef('attr:MetricSettings.showDataValues')} is handled\n by ${isc.DocUtils.linkForRef('method:MetricSettings.formatDataValue')}.\n",
        name:"formatAxisValue",
        seeAlso:[
        ],
        params:[
            {
                description:"raw value of the metric",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"the text to display.",
            type:"String"
        },
        type:"method",
        definingClass:"object:MetricSettings",
        groups:[
            "display_values"
        ]
    },
    "attr:EdgedCanvas.edgeBottom":{
        ref:"attr:EdgedCanvas.edgeBottom",
        flags:"IR",
        description:"Height in pixels for bottom corners and edges.  Defaults to edgeSize when unset.",
        name:"edgeBottom",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:FormItem.titleColSpan":{
        ref:"attr:FormItem.titleColSpan",
        flags:"IRW",
        description:"Number of columns that this item's title spans.  \n <P>\n This setting only applies for items that are showing a title and whose\n ${isc.DocUtils.linkForRef('type:TitleOrientation')} is either \"left\" or \"right\".",
        name:"titleColSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formLayout"
        ]
    },
    "attr:ListGrid.animateSelection":{
        ref:"attr:ListGrid.animateSelection",
        flags:"IRWA",
        description:"If the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionCanvas','selectionCanvas')} is enabled, setting\n this property to <code>true</code> ensures that when the <code>selectionCanvas</code>\n is displayed it is animated into view via ${isc.DocUtils.linkForRef('method:Canvas.animateShow')}. Note that the\n animation effect may be customized via ${isc.DocUtils.linkForRef('attr:Canvas.animateShowEffect')},\n ${isc.DocUtils.linkForRef('attr:Canvas.animateShowTime')} and ${isc.DocUtils.linkForRef('attr:Canvas.animateShowAcceleration')} set in\n <code>selectionCanvasProperties</code>.",
        name:"animateSelection",
        seeAlso:[
            {
                ref:"attr:ListGrid.animateSelectionUnder",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "attr:OperationBinding.script":{
        ref:"attr:OperationBinding.script",
        flags:"IR",
        description:"Scriptlet to be executed prior to the DataSource operation which is configured by this\n operationBinding.\n <P>\n Scriptlets are used similarly to DMIs configured via ${isc.DocUtils.linkForRef('attr:OperationBinding.serverObject')} -\n they can add business logic by modifying the DSRequest before it's executed, modifying the\n default DSResponse, or taking other, unrelated actions.  \n <P>\n For example:\n <pre>\n    &lt;operationBindings&gt;\n       &lt;operationBinding operationType=\"add\"&gt;\n           &lt;script language=\"groovy\"&gt;\n              ... Groovy code ...\n           &lt;/script&gt;\n       &lt;/operationBinding&gt;\n    &lt;/operationBindings&gt;\n </pre>\n <P>\n Scriptlets can be written in any language supported by the \"JSR 223\" standard, including Java\n itself.  See the ${isc.DocUtils.linkForRef('group:dmiOverview','DMI Script Overview')} for rules on how to return data,\n add additional imports, and other settings.\n <P>\n The following variables are available for DMI scriptlets:\n <ul>\n <li><i>dataSource</i>: the current DataSource\n <li><i>dsRequest</i>: the current DSRequest\n <li><i>criteria</i>: shortcut to DSRequest.getCriteria() (a Map)\n <li><i>values</i>: shortcut to DSRequest.getValues() (a Map)\n <li><i>oldValues</i>: shortcut to DSRequest.getOldValues() (a Map)\n <li><i>sqlConnection</i>: <b>SQLDataSource only</b>: the current SQLConnection object.  If\n using ${isc.DocUtils.linkForRef('attr:DataSource.autoJoinTransactions','automatic transactions')} are enabled, this\n SQLConnection is in the context of the current transaction.\n <li><i>beanFactory</i>: the spring BeanFactory (when applicable)\n </ul>\n <P>\n Scriptlets also have access to a set of contextual variables related to the Servlets\n API, as follows:\n <ul>\n <li><i>servletRequest</i>: the current ServletRequest\n <li><i>session</i>: the current HttpSession\n <li><i>rpcManager</i>: the current RPCManager\n <li><i>servletResponse</i>: the current ServletResponse <b>(advanced use only)</b>\n <li><i>servletContext</i>: the current ServletContext<b>(advanced use only)</b>\n </ul>\n As with DMI in general, be aware that if you write scriptlets that depend upon these variables,\n you preclude your DataSource from being used in the widest possible variety of\n circumstances.  For example, adding a scriptlet that relies on the <code>HttpSession</code>\n prevents your DataSource from being used in a command-line process.",
        name:"script",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('scriptingUserSpecificData')}"
        ],
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "attr:RestDataSource.updateDataURL":{
        ref:"attr:RestDataSource.updateDataURL",
        flags:"IR",
        description:"Custom dataURL for update type operations",
        name:"updateDataURL",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "group:componentXML":{
        ref:"group:componentXML",
        title:"Component XML",
        treeLocation:[
            "Concepts/Visual Builder"
        ],
        refs:[
        ],
        description:"<smartclient>\n As covered in the <i>QuickStart Guide</i> Chapter 4, <i>Coding</i>, SmartClient \n components can be created in either XML or JavaScript format.  This section covers further \n details of using the XML format, called \"SmartClient component XML\".\n <P>\n </smartclient>\n <smartgwt>\n Component XML is an XML format for declaring Smart GWT components and screen definitions.\n Available with Smart GWT Pro and above, Component XML is the same format used by Visual\n Builder to save screens.  \n <P>\n By allowing you to keep layout information and property settings in an XML format, Component\n XML enables non-developers to build and maintain portions of your application, either by\n editing screens within Visual Builder or by directly editing the XML itself.\n <P>\n Unlike the similar GWT \"UIBinder\" technology, Component XML does not require a compilation\n step.  XML screen definitions can be generated on the fly, modified at runtime, stored in a\n database, and in all other ways treated as a dynamic resource.  See the section \"Dynamic\n Component XML\" for details.\n <P>\n <h3>Basic Usage</h3>\n <P>\n To create a Smart GWT component in XML code, you create a tag with the component's class\n name. You can set that component's properties either as tag attributes:\n <pre>\n   &lt;Button title=\"Click me\" width=\"200\" /&gt;\n </pre>\n or in nested tags:\n <pre>\n   &lt;Button&gt; \n     &lt;title&gt;Click me&lt;/title&gt;\n     &lt;width&gt;200&lt;/width&gt;\n   &lt;/Button&gt; \n </pre>\n <P>\n To set a property that is an Array of simple types (like int, or String), repeat tags like\n so (for ${isc.DocUtils.linkForRef('attr:DynamicForm.colWidths')}):\n <P>\n <pre>\n &lt;DynamicForm&gt;\n     &lt;numCols&gt;2&lt;/numCols&gt;\n     &lt;colWidths&gt;250&lt;/colWidths&gt;\n     &lt;colWidths&gt;*&lt;/colWidths&gt;\n &lt;/DynamicForm&gt;\n </pre>\n To set a property that takes an Array of complex objects, use the property name as a\n container tag, then create further nested tags for the objects in the array, like so (for\n ${isc.DocUtils.linkForRef('attr:ListGrid.fields')}):\n <P>\n <pre>\n &lt;ListGrid&gt;\n     &lt;fields&gt;\n         &lt;ListGridField name=\"accountName\" ... /&gt;\n         &lt;ListGridField name=\"accountType\" ... /&gt;\n     &lt;/fields&gt;\n &lt;/ListGrid&gt;\n </pre>\n <P>\n This same approach works for creating nested layouts, such as placing a ListGrid in a\n VLayout:\n <P> \n <pre>\n &lt;VLayout&gt;\n     &lt;members&gt;\n         &lt;ListGrid .. /&gt;\n     &lt;/members&gt;\n &lt;VLayout&gt;\n </pre>\n <P>\n </smartgwt>\n <b>Referring to previously defined components</b>\n <P>\n To refer to another component by ID in XML, use &lt;Canvas ref=/&gt;.  For example:\n <pre>\n &lt;Canvas ID=\"myCanvas\"/&gt;\n &lt;Canvas ID=\"myCanvas2\"/&gt;\n &lt;VLayout&gt;\n     &lt;members&gt;\n         &lt;Canvas ref=\"myCanvas\"/&gt;\n         &lt;Canvas ref=\"myCanvas2\"/&gt;\n     &lt;/members&gt;\n &lt;/VLayout&gt;\n </pre>\n <P>\n <h3>Loading screens stored in Component XML</h3>\n <P>\n Save your Component XML as a file called <i>screenName</i>.ui.xml under\n <i>webroot</i>/shared/ui/.  Placing your .ui.xml file in this directory makes it visible to\n the system; the location of this directory can be configured in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n by setting\n the <i>project.ui</i> property.  <i>screenName</i> can be any valid identifier (no spaces,\n dashes or periods - underscores OK).\n <P>\n If you have multiple top-level tags (eg, your code is similar to the example above under\n \"Referring to previousy defined components\") use &lt;isomorphicXML&gt; as a top-level\n container tag - this has no impact on processing and is just an idiom to make your file valid\n XML, since XML does not allow multiple top-level tags in a document.\n <P>\n Component XML screens are then loaded using the ScreenLoaderServlet.  The default SDK comes\n with this servlet already registered at \n <smartclient><i>projectBase</i>/isomorphic/screenLoader</smartclient>\n <smartgwt><i>projectBase</i>/sc/screenLoader</smartgwt>.  If you've modified web.xml\n or only included some of the default servlets, you may need to add it now - see the \n <smartclient>${isc.DocUtils.linkForRef('group:iscInstall','Installation Instructions')}</smartclient>\n <smartgwt>${isc.DocUtils.linkForRef('group:sgwtEESetup','Installation Instructions')}</smartgwt>.\n <P>\n To create an application that consists of <i>just</i> the imported mockup, just add a\n &lt;script src&gt; tag pointing to the ScreenLoader servlet and referring to the\n <i>screenName</i> you used when you saved your file.  \n <smartclient>\n For example, if your application launches from a directory next to the \"isomorphic\"\n directory from the SDK:\n <pre>\n    &lt;script src=\"../isomorphic/screenLoader?screenName=<i>screenName</i>\"&gt;&lt;/script&gt;\n </pre>\n </smartclient>\n <smartgwt>\n For example, add the following to your bootstrap .html file:\n <pre>\n    &lt;script src=\"sc/screenLoader?screenName=<i>screenName</i>\"&gt;&lt;/script&gt;\n </pre>\n </smartgwt>\n If you want to load screens dynamically, or if you want to load more than one screen, use\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')}.  See the section on \"Multiple screens and global IDs\"\n below.\n <P>\n <smartclient>\n <h3>Embedding JavaScript code</h3>\n <P>\n To embed a JavaScript expression into component XML, use the &lt;JS&gt; tag.  For example:\n <pre>\n &lt;VLayout&gt;\n     &lt;width&gt;&lt;JS&gt;isc.Page.getWidth() - 20&lt;/JS&gt;&lt;/width&gt;\n &lt;/VLayout&gt;\n </pre>\n Note that, like all component XML properties, the <code>width</code> property can be\n specified either as an XML attribute or as a subelement.  Expressing it as a subelement, as\n shown above, allows the &lt;JS&gt; tag to be used.\n <P>\n <b>Embedding Methods</b>\n <P>\n For ${isc.DocUtils.linkForRef('group:stringMethods','StringMethods')} such as ${isc.DocUtils.linkForRef('method:ListGrid.recordClick')},\n JavaScript code can be used as an ordinary element value:\n <pre>\n &lt;ListGrid&gt;\n     &lt;recordClick&gt;if (record.age &gt; 65) doSomething()&lt;/recordClick&gt;\n &lt;/ListGrid&gt;\n </pre>\n To embed an actual function definition, use the &lt;JS&gt; tag described above.  For\n example:\n <pre>\n &lt;ListGrid&gt;\n     &lt;recordClick&gt;&lt;JS&gt;function (viewer, record, recordNum, field) {\n          if (record.age &gt; 65) doSomething();\n     }&lt;/JS&gt;&lt;/recordClick&gt;\n &lt;/ListGrid&gt;\n </pre>\n Unfortunately, characters commonly used in JavaScript code, such as ampersand (&amp;), are\n not legal inside XML element or attribute values.  For example, the expression \"record !=\n null && record.age &gt; 65\" must be written as shown below, or it is not considered valid XML:\n <P>\n <pre>\n &lt;ListGrid&gt;\n     &lt;recordClick&gt;\n         if (record.status != null &amp;amp;&amp;amp; record.age &gt; 65) doSomething()\n     &lt;/recordClick&gt;\n &lt;/ListGrid&gt;\n </pre>\n An alternative, for larger blocks of code, is to use the XML standard \"CDATA\" (character\n data) processing directive, which allows ampersand and other characters to be used without\n special notation:\n <pre>\n &lt;ListGrid&gt;\n     &lt;recordClick&gt;&lt;![CDATA[\n         if (record.status != null && record.age &gt; 65) doSomething()\n     ]]&gt;&lt;/recordClick&gt;\n &lt;/ListGrid&gt;\n </pre>\n <P>\n Overall, embedding code in XML can be awkward.  Isomorphic generally recommends that\n significant chunks of JavaScript code, such as non-trivial custom components, be moved to\n separate, purely JavaScript files, while code embedded in component XML is limited to simple\n expressions and short functions.  See the next section for details on keeping code in a\n separate file.\n </smartclient>\n <P>\n <h3>Event Handlers &amp; Scripting loaded components</h3>\n <P>\n You can retrieve the components in your loaded screen in order to add event handlers to\n them, call APIs on them, place them into layouts you programmatically create, and in general\n add dynamic behavior.  Retrieve the components via the ${isc.DocUtils.linkForRef('classMethod:Canvas.getById')} API\n (note, when working with multiple screens, be sure to see the upcoming section about managing\n global IDs).\n <P>\n You can then add event handlers normally.  For example, say there is a ListGrid with ID\n \"mainGrid\" and a DynamicForm with ID \"editForm\" in the same screen, and you want to populate\n the form with whatever record is clicked on in the grid:\n <P>\n <smartclient>\n <pre>\n   isc.Canvas.getByID(\"mainGrid\").addMethods({\n       recordClick : \"editForm.editRecord(record)\"\n   });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n   ListGrid grid = (ListGrid)Canvas.getByID(\"mainGrid\");\n   final DynamicForm form = (DynamicForm)Canvas.getByID(\"editForm\");\n   grid.addRecordClickHandler(new RecordClickHandler() {\n       public void onRecordClick(RecordClickEvent event) {\n           form.editRecord(event.getRecord());  \n       }\n   });\n </pre>\n </smartgwt>\n <P>\n You can also add a loaded screen to an existing layout container.  For example, perhaps you've\n already written parts of the application via normal coding techniques, and now you want to take\n a screen defined in Component XML and place it in a particular Layout you've already created\n (\"existingLayout\" below) - just use ${isc.DocUtils.linkForRef('method:Layout.addMember')} as usual:\n <smartgwt>\n <pre>\n    existingLayout.addMember(Canvas.getById(\"<i>componentId</i>\"));\n </pre>\n </smartgwt>\n <smartclient>\n <pre>\n    existingLayout.addMember(isc.Canvas.getById(\"<i>componentId</i>\"));\n </pre>\n </smartclient>\n Component XML files can also refer to components you have created programmatically, and incorporate\n them into layouts.  For example, if you have created a ListGrid component with ID \"theGrid\", you could\n refer to that grid using a <code>&lt;Canvas ref=\"\"/&gt;</code> tag, which can be used anywhere a\n Canvas is expected.  For example:\n <pre>\n &lt;VLayout ... &gt;\n     &lt;members&gt;\n           &lt;Canvas ref=\"theGrid\"/&gt;\n     &lt;/members&gt;\n &lt;/VLayout&gt;\n </pre>\n Note that this approach requires that the referenced component has been created <b>before</b>\n <code>loadScreen</code> is called.\n <P>\n <h3>Component XML and global IDs</h3>\n <P>\n A Component XML screen created in Visual Builder or via the\n ${isc.DocUtils.linkForRef('group:balsamiqImport','Balsamiq importer')} will assign global IDs to all components\n generated from your mockup so that you can retrieve them by ID to add event handlers and\n call APIs.   However if you build an application out of multiple screens built at different\n times, these IDs can collide, which will cause components to overwrite each other as they\n each try to use the same ID.\n <P>\n To solve this, the ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} API will <i>ignore</i> global IDs on loaded\n components, assigning them sequential generated IDs instead (which will never collide). \n Instead of using global IDs, the callback for <i>loadScreen()</i> will automatically provide\n you with the outermost component of a loaded screen, and that outermost component will\n provide access to other components by their original IDs via ${isc.DocUtils.linkForRef('method:Canvas.getByLocalId')}.\n <P>\n This allows you to add loaded screens to existing layouts, attach event handlers and take\n other programmatic actions, all without ever establishing global IDs.\n <P>\n <h3>Loading multiple screens</h3>\n <P>\n A typical application that uses screens stored in Component XML will have several such\n screens, or in some cases, hundreds or thousands.  ${isc.DocUtils.linkForRef('classMethod:RPCManager.cacheScreens')} can be\n used to load a set of screen definitions without actually creating any UI components - a\n subsequent call to ${isc.DocUtils.linkForRef('classMethod:RPCManager.createScreen')} is used to actually create the screen\n when needed.  These two APIs provide the same global ID management facilities as\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen','loadScreen()')}.\n <P>\n As discussed in the ${isc.DocUtils.linkForRef('group:smartArchitecture','SmartClient Architecture overview')}, screen\n definitions are typically very small, and should be loaded entirely up front or in very\n large batches.  Further, screen <i>definitions</i> have essentially negligible runtime\n overhead until the screen is actually created.\n <P>\n Therefore, use the following best practices for screen loading, even if you have very few or\n only one screen defined in Component XML:\n <ul>\n <li> at application startup, load all screens using ${isc.DocUtils.linkForRef('classMethod:RPCManager.cacheScreens')}\n <li> create screens lazily (when they are about to be shown to the end user) using\n      ${isc.DocUtils.linkForRef('classMethod:RPCManager.createScreen')}.\n <li> for applications with very very large numbers of screens where loading all screen\n      definitions up front creates a very large download, consider multiple calls to\n      <code>cacheScreens()</code>, loading sets of screens that are likely to be used\n      together.\n </ul>\n <P>\n <h3>Dynamic Component XML</h3>\n <P>\n Components can be dynamically provided on the server side by using the API defined in\n {@link com.isomorphic.servlet.ScreenLoaderServlet#addDynamicScreenGenerator(DynamicScreenGenerator)}\n which allows adding DynamicScreenGenerators to system for providing the .ui.xml files on the fly:\n <pre>\n ScreenLoaderServlet.addDynamicScreenGenerator(new DynamicScreenGenerator() {\n      public String getScreen(String id) {\n\n        if (id.equals(\"testDynamicScreenPrefix3\")) {\n            return null;\n        }\n\n        id=id.replace(\"testDynamicScreen\",\"\");\n        return \"<VLayout ID=\\\"\"+id+\"\\\" border=\\\"1px solid blue\\\"/>\";\n      }\n  }, \"testDynamicScreenPrefix\");\n </pre>\n <P>\n Whenever the system needs a screen in future, it will first call the registered DynamicScreenGenerator's\n <code>getScreen(String)</code> method for providing the given screen; Only if all queried \n DynamicScreenGenerators returns <code>null</code>, will proceed to use the normal system for obtaining \n the screen instances.\n <P>\n NOTE:<ul>\n <li>If this API is used, DynamicScreenGenerator will be called for <b>every</b> screen that\n the framework needs. Instead of this, the API contains alternative methods which will allow\n adding DynamicScreenGenerators only for a given string prefix or a regular expression.\n </ul>\n <P>\n In the provided example we register a DynamicScreenGenerator which will be called for each screen\n the system tries to load, if it starts with \"testDynamicScreenPrefix\", except the screen with id\n \"testDynamicScreenPrefix3\" for which we return null.\n <P> \n While registering a DynamicScreenGenerator is the first choice since is compatible \n with ScreenLoaderServlet's ability to load several screens in a single HTTPRequest, \n there are two additional ways to load Component XML screens - you can create a .jsp that\n uses the JSP tags that come with the SDK:\n <pre>\n    &lt;%@ taglib uri=\"/WEB-INF/iscTaglib.xml\" prefix=\"isomorphic\" %&gt;\n    &lt;isomorphic:XML&gt;\n       ... Component XML ...\n    &lt;/isomorphic:XML&gt;\n </pre>\n <P>\n Or you can use the server-side API com.isomorphic.XML.toJS():\n <pre>\n     XML.toJS(\"&lt;isomorphicXML xmlns:xsi=\\\"nativeType\\\"&gt;\" +\n                  componentXMLCode +                                 \n                  \"&lt;/isomorphicXML&gt;\");\n </pre>\n However these two approaches will allow to only load one screen at a time.\n The JSP code above and the programmatic call to XML.toJS() both return a JavaScript code,\n which is the response that ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} expects.  The\n <code>XML.toJS()</code> API can be easily combined with \n ${isc.DocUtils.linkForRef('group:standaloneDataSourceUsage','direct use of the server-side DataSource API')} to build\n a version of the ScreenLoaderServlet that can retrieve Component XML from a database\n or any Java API.\n <P>\n For static Component XML screens (cannot be changed at runtime), you can optionally run the\n XML.toJS() process as a build step to save a small amount of runtime overhead in XML to JS\n translation.  Use ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} to load the resulting JavaScript by\n overriding the ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL')} to point to the generated JavaScript file.\n Note that the overhead is minor enough that this is not worth doing unless you have a very\n large deployment and a very large number of static Component XML files.\n <P>\n <h3>Troubleshooting</h3>\n <P>\n XML parsing errors, which happen when XML is not well-formed and would be rejected by any\n standard XML parser, are reported in the server-side log, and, when possible, also in the\n client-side log within the \"Results\" tab of the Developer Console.\n <P>\n If you are loading a screen via the ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} API, you can see the\n response from the server in the RPC tab of the Developer Console - this will show you issues\n such as a misplaced ScreenLoaderServlet (HTTP response code will be 404 - Not Found) or\n responses that contain server exception details instead of the expected JavaScript response.\n <P>\n <smartclient>\n Other issues with component XML can result from incorrect use of SmartClient component XML\n tags.  For example, you may specify a property and it may appear to have no effect even\n though it clearly works in other, JavaScript-based examples.  If you get this symptom, you\n can troubleshoot by looking at the JavaScript code SmartClient generates from component XML.\n <P>\n </smartclient>\n <P>\n You can also use the \"Eval XML\" section in the \"Results\" tab of the Developer Console to\n interactively experiment with Component XML (\"Eval XML\" button) and as a means of seeing the\n generated JavaScript (\"Show JS\" button).\n <P>\n <h3>Localization / Internationalization</h3>\n <P>\n Component XML files support embedding references to messages loaded from ResourceBundles via\n the same JSTL-like &lt;fmt&gt; syntax as is used for DataSource .ds.xml files.  See\n ${isc.DocUtils.linkForRef('group:dataSourceLocalization','DataSource localization for details')}.\n <P>\n <smartclient>\n <h3>Custom Properties</h3>\n <P>\n If you specify a custom property on a component in XML, for example:\n <pre>\n &lt;Canvas myProperty=\"false\"/&gt;\n </pre>\n The value of the property will be a JavaScript String.  In the above example, it would be\n the string \"false\", which is considered a boolean true value in the JavaScript language.\n If you want a different JavaScript type, you can force a property to be interpreted as a\n given type by using the \"xsi:type\" attribute:\n <pre>\n &lt;Canvas&gt;\n     &lt;myProperty xsi:type=\"xsd:boolean\"&gt;false&lt;/myProperty&gt;\n &lt;/Canvas&gt;\n </pre>\n The same notation works when you want to declare that an entire subobject has a given type.\n For example, this would cause the custom property \"myListGrid\" to have a live\n ${isc.DocUtils.linkForRef('class:ListGrid')} instance as it's value.  All of the properties on the &lt;myListGrid&gt; tag\n will be correctly interpreted as ListGrid properties and have the correct types.\n <pre>\n &lt;Canvas&gt;\n     &lt;myListGrid xsi:type=\"ListGrid\" width=\"500\" height=\"600\"/&gt;\n &lt;/Canvas&gt;\n </pre>\n If you do not want an actual live ListGrid, but rather a JavaScript Object containing\n properties for later construction of a ListGrid, use the <code>propertiesOnly</code>\n attribute.  For example, this code would cause the property \"listGridProperties\" to be a\n JavaScript Object with properties \"width\" and \"height\", whose values would be JavaScript\n Numbers.\n <pre>\n &lt;Canvas&gt;\n     &lt;listGridProperties xsi:type=\"ListGrid\" propertiesOnly=\"true\" \n                          width=\"500\" height=\"600\"/&gt;\n &lt;/Canvas&gt;\n </pre>\n For your reference: \"xsi\" stands for \"XML Schema Instance\"; this notation derives from XML\n Schema standards for explicitly specifying type inline.\n <P>\n <h3>Custom Components</h3>\n <P>\n If you use ${isc.DocUtils.linkForRef('classMethod:ClassFactory.defineClass','defineClass()')} to define a new component class\n \"MyListGrid\" which is a subclass of the built-in component ListGrid, you can create it in\n XML as shown below:\n <pre>\n &lt;ListGrid constructor=\"MyListGrid\" width=\"500\"/&gt;\n </pre>\n By using the &lt;ListGrid&gt; tag you advertise that properties should be interpreted \n as <code>ListGrid</code> properties.  By specifying <code>constructor</code>\n you tell SmartClient what class to ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')}.\n <P>\n <h3>Component Schema</h3>\n <P>\n Instead of using the <code>constructor</code> and <code>xsi:type</code> attributes for\n custom components and custom properties, you can create a ${isc.DocUtils.linkForRef('group:componentSchema')} that\n describes the custom component.  Declaring a component schema allows you to use your\n component just like the built-in SmartClient components, and also allows your component to\n be used within ${isc.DocUtils.linkForRef('group:visualBuilder')}.\n </smartclient>\n\n <smartgwt>\n <h3>Custom Components</h3>\n <p>\n If you define a new component class <code>com.mycompany.MyListGrid</code> which is a subclass of the\n built-in component <code>ListGrid</code>, and you ${isc.DocUtils.linkForRef('group:reflection','register your class for reflection')},\n you can create it in XML as shown below:\n <pre>\n    &lt;ListGrid constructor=\"com.mycompany.MyListGrid\" width=\"500\"/&gt;\n </pre>\n <p>\n By using the &lt;ListGrid&gt; tag you advertise that properties should be interpreted \n as <code>ListGrid</code> properties.  By specifying <code>constructor</code>\n you tell SmartGWT what class to create. \n <p>\n <h3>Custom Properties</h3>\n <p>\n Your custom component (e.g. <code>com.mycompany.MyListGrid</code>) may have additional\n properties which are not present in the standard superclass (e.g. <code>ListGrid</code>).\n You can set such properties in XML as if they were pre-defined properties:\n <pre>\n    &lt;ListGrid constructor=\"com.mycompany.MyListGrid\" myProperty=\"false\"/&gt;\n </pre>\n <p>\n In this case, the {@link com.smartgwt.client.bean.BeanFactory} code\n will ultimately call <code>MyListGrid.setMyProperty(false);</code> in order\n to set the property. Since <code>BeanFactory</code> knows that the property\n takes a boolean, it will automatically convert the string value \"false\" to a\n boolean, using the type conversions described below.\n <p>\n Instead of relying on the automatic type conversions, you can force a\n property to be interpreted as a given type by using the \"xsi:type\"\n attribute:\n <pre>\n &lt;ListGrid&gt;\n     &lt;constructor&gt;com.mycompany.MyListGrid&lt;/constructor&gt;\n     &lt;myProperty xsi:type=\"xsd:boolean\"&gt;false&lt;/myProperty&gt;\n &lt;/ListGrid&gt;\n </pre>\n <p>\n The same notation works when you want to declare that an entire subobject has a given type.\n For example, this would cause the custom property \"myListGrid\" to have a live\n ${isc.DocUtils.linkForRef('class:ListGrid')} instance as its value.  All of the properties on the &lt;myListGrid&gt; tag\n will be correctly interpreted as ListGrid properties and have the correct types.\n <pre>\n &lt;Canvas&gt;\n     &lt;myListGrid xsi:type=\"ListGrid\" width=\"500\" height=\"600\"/&gt;\n &lt;/Canvas&gt;\n </pre>\n <p>\n For your reference: \"xsi\" stands for \"XML Schema Instance\"; this notation derives from XML\n Schema standards for explicitly specifying type inline.\n <p>\n <h3>Component Schema</h3>\n <p>\n Instead of using the <code>constructor</code> and <code>xsi:type</code> attributes for\n custom components and custom properties, you can create a ${isc.DocUtils.linkForRef('group:componentSchema')} that\n describes the custom component.  Declaring a component schema allows you to use your\n component just like the built-in SmartGWT components, and also allows your component to\n be used within ${isc.DocUtils.linkForRef('group:visualBuilder')}.\n <p>\n <h3>Type Conversions</h3>\n <p>\n The {@link com.smartgwt.client.bean.BeanFactory} code\n uses a reflection-like mechanism to discern the type which a SmartGWT\n property requires, and automatically\n converts supplied values to the required type when possible. In cases where\n conversion is impossible, an {@link IllegalArgumentException} is\n thrown.\n <p>\n Where the setter for a property takes a <b>primitive type</b> (boolean,\n double, float, int, or long), any \"null\" value supplied will be converted to\n 0 (for the numeric types) or false (for boolean). Conversely, if the setter\n takes the boxed version of the type (Boolean, Double, etc.), any primitive\n value supplied will be auto-boxed. Note that byte, short and char properties\n are not currently handled.\n <p>\n Properties which take <b>numeric types</b> will convert other numeric\n types, as well as strings, using standard Java APIs (e.g.\n <code>Integer.valueOf()</code>).  Boolean \"true\" will be converted to 1, and false to 0.\n If the supplied value cannot be converted to the numeric type, an\n {@link IllegalArgumentException} will be thrown.\n <p>\n Properties which take a <b>Date</b> type will convert from strings using\n {@link com.smartgwt.client.util.DateUtil#parseInput(String)}.\n <p>\n Properties which take <b>Enum</b> types will convert from strings using <code>Enum.valueOf()</code>.\n However, any dashes (\"-\") in the string will be converted to underscores, and\n the string will be converted to upper-case if necessary. If the string does not match\n one of the <code>Enum</code> values, an {@link IllegalArgumentException} will be thrown.\n <p>\n Properties which take <b>Array</b> types will convert arrays where the individual\n values can be converted to the appropriate type. If a single value is supplied,\n it will be wrapped in an array.\n </smartgwt>",
        name:"componentXML",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DataSource.handleError":{
        ref:"method:DataSource.handleError",
        flags:"A",
        description:" If you define this method on a DataSource, it will be called whenever the server returns\n a DSResponse with a status other than ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_SUCCESS')}.  You can use\n this hook to do DataSource-specific error handling.  Unless you return\n <code>false</code> from this method, ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')} will be called by\n SmartClient right after this method completes.\n \n",
        name:"handleError",
        seeAlso:[
            {
                ref:"classMethod:RPCManager.handleError",
                description:null
            }
        ],
        params:[
            {
                description:"the DSResponse or DSResponse object returned from the server",
                optional:false,
                name:"response",
                defaultValue:null,
                type:"DSResponse"
            },
            {
                description:"the DSRequest or DSRequest that was sent to the server",
                optional:false,
                name:"request",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        returns:{
            description:"false to suppress ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')}",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "errorHandling"
        ]
    },
    "group:devTools":{
        ref:"group:devTools",
        title:"Dashboards & Tools Framework Overview",
        treeLocation:[
            "Client Reference/Tools"
        ],
        refs:[
            "interface:EditContext",
            "interface:Palette",
            "class:HiddenPalette",
            "class:TreePalette",
            "class:ListPalette",
            "class:TilePalette",
            "class:MenuPalette",
            "class:EditPane",
            "class:EditTree",
            "attr:Palette.generateNames",
            "attr:TreePalette.componentDefaults",
            "attr:EditTree.rootComponent"
        ],
        description:"The Dashboards & Tools framework enables you to build interfaces in which a set of UI\n components can be edited by end users, saved and later restored.\n <P>\n This includes interfaces such as:\n <ul> \n <li> <b>Dashboards</b>: where a library of possible widgets can be created &\n configured then stored for future use and shared with other users\n <li> <b>Diagramming & Flowchart tools</b>: tools similar to Visio&trade; which allows users\n to use shapes and connectors to create a flowchart or diagram\n <li> <b>Form Builders &amp; Development Tools</b>: tools which enable end users to create\n new forms or entirely new screens and add them to the application on the fly\n </ul>\n <P>\n The basic building blocks of the Dashboards & Tools framework are:\n <ul>\n <li> <i>Palettes</i>: palettes create UI components on the fly from stored data.  Palettes\n come in a variety of flavors which implement different UI gestures for creating components\n (e.g. drag from tree, pick from menu, etc)\n <li> <i>EditContexts</i>: an edit context tracks a set of components that are being edited.\n Different EditContexts offer different built-in user interactions for editing the\n components they track, for example, a tree-based EditContext can provide an interface for\n managing relationships between components via drag and drop, and a Canvas-based EditContext\n can automatically store changes to position and size.\n </ul>\n <h3>Defaults vs LiveObject</h3>\n The Dashboards & Tools framework is careful to maintain a distinction between the current state\n of the live UI component and the data that should actually be persisted and used to\n re-create the component.  For example:\n <ul>\n <li> a portlet may be showing a border or brightened background color to hilite it within\n the tool, but this should not be saved as part of the portlet state\n <li> a component may have a current width of 510 pixels when viewed within a tool, but what\n should persist is the configured width of 40% of available space\n <li> in a development tool, a component such a Window automatically creates subcomponents\n such as a header - these should not persist because the Window knows how to create them\n without any additional data.  Only components specifically dragged into the Window by the\n end user should be persisted\n </ul>\n The data that will be saved and used to re-create the component is called the\n <b>defaults</b>.  A Palette, which creates a component from stored data, minimally requires\n the ${isc.DocUtils.linkForRef('type:SCClassName','type')} of the component to create, and the defaults.  This\n information is captured by a ${isc.DocUtils.linkForRef('object:PaletteNode')} (along with other options) - all types of\n Palettes work with a set or tree of paletteNodes.\n <P>\n When a component is created from a paletteNode, a \"live object\" is created from the\n defaults.  One PaletteNode may generate any number of live objects.  An ${isc.DocUtils.linkForRef('object:EditNode')} \n combines the ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','live object')} along with the type and defaults\n needed to recreate the live object, and is used to track the created live object as it is\n further edited.  Essentially an EditNode is a copy of the PaletteNode in which a live object\n has been created and the editNode.defaults may now begin to change as the user edits the\n object they have created.\n\n <h3>Module requirements</h3>\n <b>NOTE:</b> you must load the Tools ${isc.DocUtils.linkForRef('group:loadingOptionalModules','Optional Module')} \n for this framework.\n <P>\n Any tools that work with hierarchies of system components or derivations\n of them will also need the system schema which can be loaded by either of the\n following:\n <P>\n <i>JSP tag:</i> <pre>&lt;script&gt;&lt;isomorphic:loadSystemSchema /&gt;&lt;/script&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/DataSourceLoader?dataSource=$systemSchema\"&gt;&lt;/SCRIPT&gt;</pre>",
        name:"devTools",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Slider.setTrackCapSize":{
        ref:"method:Slider.setTrackCapSize",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.trackCapSize')} property of the slider\n\n",
        name:"setTrackCapSize",
        seeAlso:[
        ],
        params:[
            {
                description:"new trackCapSize",
                optional:false,
                name:"newSize",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:StatefulCanvas.showFocused":{
        ref:"attr:StatefulCanvas.showFocused",
        flags:"IRW",
        description:"Should we visibly change state when the canvas receives focus?  If\n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is <code>true</code>, then <b><code>\"over\"</code></b>\n will be used to indicate focus. Otherwise a separate <b><code>\"focused\"</code></b> state\n will be used.",
        name:"showFocused",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "method:Tree.isOpen":{
        ref:"method:Tree.isOpen",
        flags:"",
        description:"\n Whether a particular node is open or closed (works for leaves and folders).\n\n",
        name:"isOpen",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the node is open",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:FormItem.pickerProperties":{
        ref:"attr:FormItem.pickerProperties",
        flags:"IRW",
        description:"Default properties for the picker.",
        name:"pickerProperties",
        seeAlso:[
        ],
        valueType:"Canvas Properties",
        defaultValue:"{}",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:FilterClause.valueItemTitle":{
        ref:"attr:FilterClause.valueItemTitle",
        flags:"IR",
        description:"The title for the value-item.",
        name:"valueItemTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Value\"",
        type:"attr",
        definingClass:"class:FilterClause",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:StretchImg.gripImgSuffix":{
        ref:"attr:StretchImg.gripImgSuffix",
        flags:"IRA",
        description:"Suffix used the 'grip' image if ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true.",
        name:"gripImgSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"grip\"",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "grip"
        ]
    },
    "attr:TreeGrid.serverFilterFields":{
        ref:"attr:TreeGrid.serverFilterFields",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:TreeGrid.keepParentsOnFilter')} is enabled for ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"local\"')}\n ResultTrees, this property lists field names that will be sent to the server if they\n are present in the criteria.",
        name:"serverFilterFields",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "class:HiliteRule":{
        methods:[
            "method:HiliteRule.remove",
            "method:HiliteRule.getHilite"
        ],
        ref:"class:HiliteRule",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:HiliteRule.clause",
            "attr:HiliteRule.hiliteForm",
            "attr:HiliteRule.colorFieldTitle",
            "attr:HiliteRule.advancedClauseLabel",
            "attr:HiliteRule.advancedClauseEditButton",
            "attr:HiliteRule.showRemoveButton",
            "attr:HiliteRule.removeButtonPrompt",
            "attr:HiliteRule.removeButton",
            "attr:HiliteRule.foregroundColorTitle",
            "attr:HiliteRule.backgroundColorTitle",
            "attr:HiliteRule.iconFieldTitle"
        ],
        description:"A widget for editing the criteria of a single ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} hilite.  \n The default implementation presents a series of ${isc.DocUtils.linkForRef('class:FormItem','formItems')}\n for selecting the various elements of a simple criterion and a foreground or background\n color.  To specify more complex criteria, specify both foreground and background colors or\n to apply the hilite to multiple fields, you can create an \n ${isc.DocUtils.linkForRef('class:AdvancedHiliteEditor','advanced hilite rule')}.\n <P>\n <i><b>Important Note:</b> this class should not be used directly - it is exposed purely for\n ${isc.DocUtils.linkForRef('group:i18nMessages','i18n reasons.')}</i>",
        name:"HiliteRule",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:ClassFactory.overwriteClass":{
        ref:"classMethod:ClassFactory.overwriteClass",
        flags:"",
        description:"\n Intentionally clobber an existing SmartClient Class, if it already exists.  Works\n identically to ${isc.DocUtils.linkForRef('classMethod:ClassFactory.defineClass')}, except that no warning is logged to the\n console.\n\n",
        name:"overwriteClass",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"object:ClassFactory"
    },
    "attr:PortalPosition.position":{
        ref:"attr:PortalPosition.position",
        flags:"IR",
        description:"The position occupied by a ${isc.DocUtils.linkForRef('class:Portlet')} within a ${isc.DocUtils.linkForRef('class:PortalLayout')} row\n (generally 0, unless there is more than one Portlet in the row).",
        name:"position",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:PortalPosition"
    },
    "classMethod:isc.ask":{
        ref:"classMethod:isc.ask",
        flags:"",
        description:" Show a modal dialog with a message, icon, and \"Yes\" and \"No\" buttons.\n <P>\n The callback will receive boolean true for an OK button click, boolean false for a No button\n click, or null if the Dialog is dismissed via the close button.\n\n",
        name:"ask",
        seeAlso:[
            {
                ref:"classAttr:Dialog.Warn",
                description:null
            },
            {
                ref:"classMethod:isc.warn",
                description:null
            },
            {
                ref:"method:Dialog.yesClick",
                description:null
            },
            {
                ref:"method:Dialog.noClick",
                description:null
            },
            {
                ref:"classAttr:Dialog.ASK_TITLE",
                description:null
            }
        ],
        params:[
            {
                description:"message to display",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Callback to fire when the                                      user clicks a button to dismiss the dialog.\n                                      This has the single parameter 'value', indicating the\n                                      value returned by the Warn dialog from 'okClick()' etc.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties for the Dialog.                                      To set ${isc.DocUtils.linkForRef('attr:Dialog.buttons','custom buttons')} for\n                                      the Dialog, set properties.buttons to an array\n                                      of buttons\n\t\t\t\t\t\t\t\t\t\teg:\t{ buttons : [Dialog.OK, Dialog.CANCEL] }",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"Dialog Properties"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('dialogs')}"
        ],
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "attr:MultiFilePicker.minUploadFields":{
        ref:"attr:MultiFilePicker.minUploadFields",
        flags:"IRW",
        description:"Minimum number of upload fields to show. This many fields will show up initially.",
        name:"minUploadFields",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:MultiFilePicker"
    },
    "classMethod:Log.timeMethod":{
        ref:"classMethod:Log.timeMethod",
        flags:"",
        description:" \n  Observe a method on an object, logging execution time whenever the method is called.\n  <P>\n  Call a second time with identical arguments to disable tracing.\n\n",
        name:"timeMethod",
        seeAlso:[
        ],
        params:[
            {
                description:"object to observe",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"name of the method to observe",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "method:TileGrid.getTileHTML":{
        ref:"method:TileGrid.getTileHTML",
        flags:"",
        description:" When using the default ${isc.DocUtils.linkForRef('class:SimpleTile')} class as ${isc.DocUtils.linkForRef('attr:TileGrid.tileConstructor')}, this\n method provides the HTML to be displayed within each tile.  See ${isc.DocUtils.linkForRef('attr:TileGrid.tile')}.\n \n",
        name:"getTileHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the tile for which HTML should be retrieved",
                optional:false,
                name:"tileRecord",
                defaultValue:null,
                type:"TileRecord"
            }
        ],
        returns:{
            description:"HTML contents for the tile, as a String",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:TileGrid"
    },
    "attr:ImgSectionHeader.iconWidth":{
        ref:"attr:ImgSectionHeader.iconWidth",
        flags:"IR",
        description:"Width in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "buttonIcon"
        ]
    },
    "method:SelectItem.getSelectedRecords":{
        ref:"method:SelectItem.getSelectedRecords",
        flags:"",
        description:" For a SelectItem with an ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource')} and allowing multiple selection\n (${isc.DocUtils.linkForRef('attr:SelectItem.multiple','via multiple:true')}), returns the list of currently selected records, or\n null if none are selected.\n \n",
        name:"getSelectedRecords",
        seeAlso:[
        ],
        returns:{
            description:"the list of selected records, or null if none are selected",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"class:SelectItem"
    },
    "method:CanvasItem.hasAdvancedCriteria":{
        ref:"method:CanvasItem.hasAdvancedCriteria",
        flags:"",
        description:" Overridden to return true if ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')} is a dynamicForm.\n See <smartclient>${isc.DocUtils.linkForRef('method:CanvasItem.getCriterion')}</smartclient>\n <smartgwt><code>setCriterionGetter()</code></smartgwt>\n for details of editing advanced criteria using nested\n dynamicForms.\n",
        name:"hasAdvancedCriteria",
        seeAlso:[
        ],
        returns:{
            description:"true if this item's canvas is a DynamicForm",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CanvasItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:ListGrid.autoFetchTextMatchStyle":{
        ref:"attr:ListGrid.autoFetchTextMatchStyle",
        flags:"IR",
        description:"When this grid is initially filtered via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchData')}, or filtered by the user\n via the ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','filterEditor')}, this attribute can be used to set the\n <code>textMatchStyle</code> on the dsRequest passed to <code>fetchData()</code>.\n <P>\n To use a mixture of textMatchStyles, set an appropriate\n ${isc.DocUtils.linkForRef('attr:FormItem.operator','operator')} on a field's\n ${isc.DocUtils.linkForRef('attr:ListGridField.filterEditorProperties','filterEditorProperties')}.",
        name:"autoFetchTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"\"substring\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "dataBinding"
        ]
    },
    "method:Canvas.getInnerHeight":{
        ref:"method:Canvas.getInnerHeight",
        flags:"A",
        description:" Returns the amount of space available for (an) absolutely positioned child widget(s) or\n absolutely positioned HTML content, without introducing clipping, scrolling or overflow.\n <P>\n This is the space within the viewport of the widget (including padding, but excluding\n margins, borders or scrollbars) rendered at its specified size.\n\n",
        name:"getInnerHeight",
        seeAlso:[
            {
                ref:"method:Canvas.getInnerWidth",
                description:null
            },
            {
                ref:"method:Canvas.getInnerContentHeight",
                description:null
            },
            {
                ref:"method:Canvas.getInnerContentWidth",
                description:null
            }
        ],
        returns:{
            description:"inner height of the widget in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:DataSource.sendExtraFields":{
        ref:"attr:DataSource.sendExtraFields",
        flags:"IR",
        description:"Analogous to ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields')}, for data sent to the server.  Setting this\n attribute to false ensures that for any records in the data object, only fields that\n correspond to declared dataSource fields will be present on the dsRequest data object passed\n to ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} and ultimately sent to the server.",
        name:"sendExtraFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:TimeItem.useMask":{
        ref:"attr:TimeItem.useMask",
        flags:"IRA",
        description:"If true, a data entry mask will be enabled in the field based on the\n ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter')}.\n <p>\n Note that if a non-padded ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter')} is specified, it\n will be changed to the corresponding padded version (ex. \"toShort24HourTime\"\n will be changed to \"toShortPadded24HourTime\").\n <p>\n This attribute does not have an effect if a native HTML5 time input is being used.\n See ${isc.DocUtils.linkForRef('attr:TimeItem.browserInputType')}.",
        name:"useMask",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:ListGrid.editOnF2Keypress":{
        ref:"attr:ListGrid.editOnF2Keypress",
        flags:"IRWA",
        description:"Should we start editing when the widget has focus and the user presses the \"f2\" key\n (if this ListGrid supports editing)?\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:ListGrid.editEvent')} is set to <code>\"click\"</code> or\n <code>\"doubleClick\"</code>, the <code>Space</code> or <code>Enter</code> key may\n also be used to start editing, depending on the value for ${isc.DocUtils.linkForRef('attr:ListGrid.generateClickOnSpace')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.generateDoubleClickOnSpace')}, ${isc.DocUtils.linkForRef('attr:ListGrid.generateClickOnEnter')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.generateDoubleClickOnEnter')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit')} is false, or ${isc.DocUtils.linkForRef('attr:ListGrid.editEvent')} is set to \"none\" this\n property has no effect.",
        name:"editOnF2Keypress",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:WebService.serviceNamespace":{
        ref:"attr:WebService.serviceNamespace",
        flags:"R",
        description:"Namespace of this WebService, derived from the <code>targetNamespace</code>\n attribute of the <code>&lt;wsdl:definitions&gt;</code> element.",
        name:"serviceNamespace",
        seeAlso:[
        ],
        valueType:"URI",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "method:ListGrid.getRollUnderCanvas":{
        ref:"method:ListGrid.getRollUnderCanvas",
        flags:"",
        description:" If the ${isc.DocUtils.linkForRef('attr:ListGrid.rollUnderCanvas','rollUnderCanvas')} is enabled, this method will be called to create\n the canvas to display under the current row or cell when a user moves their mouse over the row.\n <p>\n Note that for efficiency this should not typically create a new Canvas every time that it is\n called. Instead typically a single rollUnder canvas should be created and updated to reflect\n the current rollOver row if necessary.\n <smartgwt><p>\n <b>Note: This is an override point.</b></smartgwt>\n\n",
        name:"getRollUnderCanvas",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the current rollOver row.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"index of the current rollOver column. This parameter will be null unless ${isc.DocUtils.linkForRef('attr:ListGrid.useCellRollOvers','useCellRollOvers')} is true for the grid.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"the embedded component",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "hoverComponents"
        ]
    },
    "attr:FacetChart.standardDeviationLineProperties":{
        ref:"attr:FacetChart.standardDeviationLineProperties",
        flags:"IR",
        description:"Properties for the ${isc.DocUtils.linkForRef('attr:FacetChart.showStandardDeviationLines','standard deviation lines')}.\n <p>\n Note that for rectangular charts the properties are for a ${isc.DocUtils.linkForRef('class:DrawLine')},\n and for radar charts the properties are for a ${isc.DocUtils.linkForRef('class:DrawOval')}.",
        name:"standardDeviationLineProperties",
        seeAlso:[
        ],
        valueType:"DrawItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Portlet.showCloseConfirmationMessage":{
        ref:"attr:Portlet.showCloseConfirmationMessage",
        flags:"IRW",
        description:"If true, ${isc.DocUtils.linkForRef('attr:Portlet.closeConfirmationMessage')} will be displayed before portlets are closed",
        name:"showCloseConfirmationMessage",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Portlet"
    },
    "attr:Button.showRollOver":{
        ref:"attr:Button.showRollOver",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes over this object?",
        name:"showRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonStates')}"
        ],
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "method:Button.setAlign":{
        ref:"method:Button.setAlign",
        flags:"",
        description:" Sets the (horizontal) alignment of this buttons content.\n",
        name:"setAlign",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "positioning"
        ]
    },
    "classAttr:DataSource.serializeTimeAsDatetime":{
        ref:"classAttr:DataSource.serializeTimeAsDatetime",
        flags:"IRA",
        description:"Specifies how time field values should be serialized when being sent to the server for\n dataSources with dataFormat <code>\"xml\"</code> or <code>\"json\"</code>.\n If <code>false</code> the time field will be serialized as a logical time object in\n UTC, using the standard truncated XML Schema format: <code>\"HH:MM:SS\"</code>.\n If <code>true</code> the time field will be serialized as a complete dateTime object\n matching the value of the underlying JavaScript date object representing this time on the\n client.",
        name:"serializeTimeAsDatetime",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"classAttr",
        definingClass:"class:DataSource"
    },
    "classMethod:Class.markUnsupportedMethods":{
        ref:"classMethod:Class.markUnsupportedMethods",
        flags:"A",
        description:" Replaces each of the methods named in <code>methodNames</code> with a new implementation\n that simply logs a warning the first time the method is called, and nothing else. This can\n be used to mark methods of derived classes which do not support certain parent class\n methods as unsupported.\n <p>\n The <code>messageTemplate</code> parameter is a template for the warning message logged\n when the unsupported method is first called. The following variables in the template\n are substituted as follows:\n <table border=\"1\">\n <tr>\n   <th>Variable</th>\n   <th>Substitution</th>\n </tr>\n <tr>\n   <td><code>$class</code></td>\n   <td>The ${isc.DocUtils.linkForRef('method:Class.getClassName','class name')}.</td>\n </tr>\n <tr>\n   <td><code>$method</code></td>\n   <td>The name of the method.</td>\n </tr>\n </table>\n <p>\n If you want the literal string of a substitution variable to appear in the warning message,\n you can escape it by prefixing with a dollar sign. For example, to include \"$class\" in the\n warning message, use \"$$class\" in the template.\n",
        name:"markUnsupportedMethods",
        seeAlso:[
            {
                ref:"classMethod:Class.isMethodSupported",
                description:null
            }
        ],
        params:[
            {
                description:"template for the warning message logged when first called. If null, the default template string \"$class does not support the $method() method.\" is used.",
                optional:true,
                name:"messageTemplate",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the method names to mark as unsupported.",
                optional:false,
                name:"methodNames",
                defaultValue:null,
                type:"Array of identifier"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "classMethod:RPCManager.sendQueue":{
        ref:"classMethod:RPCManager.sendQueue",
        flags:"",
        description:"\n Send all currently queued requests to the server.  You need only call this method if you are\n using queuing otherwise your requests are synchronously submitted to the server.\n <br><br>\n NOTE: if you aren't the caller who first enables queuing (startQueue() returns\n true), you should in general avoid calling sendQueue(), because whoever was\n first to enable queuing may have more requests to add to the same queue.\n\n",
        name:"sendQueue",
        seeAlso:[
            {
                ref:"classMethod:RPCManager.send",
                description:null
            },
            {
                ref:"classMethod:RPCManager.sendRequest",
                description:null
            },
            {
                ref:"classMethod:RPCManager.startQueue",
                description:null
            }
        ],
        params:[
            {
                description:"Callback to fire when the queued operations complete. Callback will be fired with 1 parameter: <code>responses</code> an array of ${isc.DocUtils.linkForRef('class:DSResponse')} or \n ${isc.DocUtils.linkForRef('class:RPCResponse')} objects that were part of the transaction fired by this method.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"RPCQueueCallback"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:PortalLayout.getPortalPosition":{
        ref:"method:PortalLayout.getPortalPosition",
        flags:"",
        description:" Gets the position of the ${isc.DocUtils.linkForRef('class:Portlet')} within this PortalLayout. Returns null\n if the Portlet is not in this PortalLayout.\n",
        name:"getPortalPosition",
        seeAlso:[
        ],
        params:[
            {
                description:"the Portlet for which to get the position",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        returns:{
            description:"the position of the Portlet",
            type:"PortalPosition"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:ListGrid.canAddFormulaFields":{
        ref:"attr:ListGrid.canAddFormulaFields",
        flags:"IRW",
        description:"Adds an item to the header context menu allowing users to launch a dialog to define a new\n field based on values present in other fields, using the ${isc.DocUtils.linkForRef('class:FormulaBuilder')}.\n <P>\n User-added formula fields can be persisted via ${isc.DocUtils.linkForRef('method:ListGrid.getFieldState')} and \n ${isc.DocUtils.linkForRef('method:ListGrid.setFieldState')}.",
        name:"canAddFormulaFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Menu.cascadeAutoDismiss":{
        ref:"attr:Menu.cascadeAutoDismiss",
        flags:"IRW",
        description:"When true any generated submenus will inherit ${isc.DocUtils.linkForRef('attr:Menu.autoDismiss')}\n from this menu.",
        name:"cascadeAutoDismiss",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:ImgProperties.extraStuff":{
        ref:"attr:ImgProperties.extraStuff",
        flags:"IRW",
        description:"Specifies the additional attributes to write in the tag.",
        name:"extraStuff",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ImgProperties"
    },
    "attr:ActiveXControl.classID":{
        ref:"attr:ActiveXControl.classID",
        flags:"IR",
        description:"This sets the value of the classID property on the object.  This is meant to give you\n  complete control over the generated HTML.  In practice it may be more handy to set the uuid\n  property on this object and let the classID be generated from that.",
        name:"classID",
        seeAlso:[
            {
                ref:"attr:ActiveXControl.uuid",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ActiveXControl"
    },
    "attr:SelectOtherItem.dialogWidth":{
        ref:"attr:SelectOtherItem.dialogWidth",
        flags:"IRW",
        description:"Width for the \"other value\" prompt dialog.",
        name:"dialogWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"250",
        type:"attr",
        definingClass:"class:SelectOtherItem"
    },
    "classAttr:Operators.iStartsWithFieldTitle":{
        ref:"classAttr:Operators.iStartsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"iStartsWithField\" operator",
        name:"iStartsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"starts with (case insensitive) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Toolbar.setButtons":{
        ref:"method:Toolbar.setButtons",
        flags:"",
        description:" Apply a new set of buttons to render in this toolbar as ${isc.DocUtils.linkForRef('attr:Toolbar.buttons')}.\n \n",
        name:"setButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"properties to create each button from",
                optional:true,
                name:"newButtons",
                defaultValue:null,
                type:"Array of Button Properties"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar"
    },
    "attr:ToolStrip.separatorClass":{
        ref:"attr:ToolStrip.separatorClass",
        flags:"IR",
        description:"Class to create when the string \"separator\" appears in ${isc.DocUtils.linkForRef('attr:ToolStrip.members')}.",
        name:"separatorClass",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"ToolStripSeparator\"",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "method:Array.getProperty":{
        ref:"method:Array.getProperty",
        flags:"",
        description:" Return a new Array where the value of item i is the value of \"property\" of item i in this\n array.  If an item doesn't have that property or is null, return item will be null.\n\n",
        name:"getProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to look for",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"array of the values of property in each item of this list",
            type:"Array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "iteration"
        ]
    },
    "class:DateRangeDialog":{
        methods:[
        ],
        ref:"class:DateRangeDialog",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:DateRangeDialog.askForRange"
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:DateRangeDialog.headerTitle",
            "attr:DateRangeDialog.rangeItem",
            "attr:DateRangeDialog.clearButtonTitle",
            "attr:DateRangeDialog.clearButton",
            "attr:DateRangeDialog.okButtonTitle",
            "attr:DateRangeDialog.okButton",
            "attr:DateRangeDialog.cancelButtonTitle",
            "attr:DateRangeDialog.cancelButton"
        ],
        description:"Simple modal dialog for collecting a date range from the end user.",
        name:"DateRangeDialog",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSourceField.javaClass":{
        ref:"attr:DataSourceField.javaClass",
        flags:"IR",
        description:"For use with the SmartClient server when populating Java Beans / POJOs based on data\n contained in a DSRequest, <code>javaClass</code> specifies the fully qualified Java\n className to be created and passed to the setter for the Java Bean Property with the same\n name as this field.   <code>javaClass</code> is used both when manually calling\n DataSource.setProperties() and when auto-populating POJO arguments of a ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} method.\n <P>\n The Java class to create does not normally have to be specified: SmartClient will\n use Java reflection to inspect the type of argument expected by a setter method and will\n attempt conversion of inbound data to that type.  As described in the documentation for\n DataTools.setProperties(), this works for almost all typical cases.  However\n <code>field.javaClass</code> is useful for:\n <ul>\n <li> subobject of abstract or interface type: in this case Java Reflection is not sufficient\n to discover the concrete type that should be instantiated, and <code>javaClass</code> should be\n set instead.</li>\n <li> subobject of Collection or Map type, when Java generics are not used or the Collection\n member type or Map value type is abstract.  When Java generics are used (for example the\n setter takes an argument is of type Collection&lt;SomePOJO&gt; or Map&lt;KeyType,SomePOJO&gt;,\n SmartClient will automatically attempt to convert inbound data to the type of the members of\n the Collection or values of the Map.  Without generics, <code>javaClass</code> needs to be\n specified.  Note that <code>javaClass</code> will take precedence over generics if both \n are used. Also note that ${isc.DocUtils.linkForRef('attr:DataSourceField.javaCollectionClass')} can be specified if a\n particular Collection or Map type is needed, and ${isc.DocUtils.linkForRef('attr:DataSourceField.javaKeyClass')} can be\n specified for a field of type <code>java.util.Map</code>.</li>\n </ul>\n <b>NOTE:</b> It is also possible to make SmartClient Server determine the javaClass to use \n dynamically at runtime. See the description of <code>DataSource.getPropertyJavaClass()</code> \n in the server documentation for details.",
        name:"javaClass",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:ListGrid.fixedFieldWidths":{
        ref:"attr:ListGrid.fixedFieldWidths",
        flags:"IRWA",
        description:"Should we horizontally clip cell contents, or allow columns to expand horizontally to\n show all contents?\n <P>\n If we allow columns to expand, the column width is treated as a minimum.\n <P>\n NOTE: the header does not automatically respond to expanded field widths.\n If your grid is showing a header we'd recommend developers consider\n setting ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} rather than using this attribute.",
        name:"fixedFieldWidths",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "method:FormItem.keyUp":{
        ref:"method:FormItem.keyUp",
        flags:"",
        description:" StringMethod fired in response to a keyup while focused in this form item.\n\n",
        name:"keyUp",
        seeAlso:[
        ],
        params:[
            {
                description:"Item over which the keyup occurred",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"Pointer to the item's form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"Name of the key pressed (Example: <code>\"A\"</code>, <code>\"Enter\"</code>)",
                optional:false,
                name:"keyName",
                defaultValue:null,
                type:"KeyName"
            }
        ],
        returns:{
            description:"return false to attempt to cancel the event.  Note for general purpose                   APIs for managing whether user input is allowed, use ${isc.DocUtils.linkForRef('method:FormItem.change')} \n                   or ${isc.DocUtils.linkForRef('method:FormItem.transformInput')} instead.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "attr:DrawnValue.x":{
        ref:"attr:DrawnValue.x",
        flags:"IR",
        description:"X coordinate where the data value is rendered.  In pie mode, returns the X coordinate of the\n center of the pie where the data value appears.",
        name:"x",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "attr:ListGridField.linkTextProperty":{
        ref:"attr:ListGridField.linkTextProperty",
        flags:"IRW",
        description:"Name of the property in a ListGridRecord that holds the HTML to display in cells of this\n field if the fieldType is set to \"link\".",
        name:"linkTextProperty",
        seeAlso:[
            {
                ref:"type:ListGridFieldType",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            },
            {
                ref:"attr:ListGridRecord.linkText",
                description:null
            },
            {
                ref:"attr:ListGridField.linkText",
                description:null
            },
            {
                ref:"attr:ListGrid.linkTextProperty",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "attr:DrawnValue.y":{
        ref:"attr:DrawnValue.y",
        flags:"IR",
        description:"Y coordinate where the data value is rendered.  In pie mode, returns the Y coordinate of the\n center of the pie where the data value appears.",
        name:"y",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "method:TreeGrid.getEventRow":{
        ref:"method:TreeGrid.getEventRow",
        flags:"",
        description:" Returns the row number of the most recent mouse event.\n",
        name:"getEventRow",
        seeAlso:[
        ],
        params:[
            {
                description:"optional y-coordinate to obtain row number, in lieu of the y                        coordinate of the last mouse event",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"row number, or -2 if beyond last drawn row",
            type:"int"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "events"
        ]
    },
    "attr:BlurbItem.colSpan":{
        ref:"attr:BlurbItem.colSpan",
        flags:"IRW",
        description:"By default, texts span all remaining columns",
        name:"colSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"class:BlurbItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DynamicForm.errorItemCellStyle":{
        ref:"attr:DynamicForm.errorItemCellStyle",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} is false we show all errors for the form item in \n a single item rendered at the top of the form.<br>\n This attribute specifies the cellStyle to apply to this item.",
        name:"errorItemCellStyle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"formCellError\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:DataSource.cacheAcrossOperationIds":{
        ref:"attr:DataSource.cacheAcrossOperationIds",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData','cacheAllData')} mode is enabled and a ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllOperationId')} has been set,\n this flag affects whether cached results are used for all \"fetch\" requests regardless of\n their ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')}, or are used only for \"fetch\" requests that use the\n <code>cacheAllOperationId</code>, allowing other requests to go to server normally.\n <p>\n Default of <code>true</code> means that the <code>cacheAllOperationId</code> will be\n used to fetch all rows, but the resulting cache will be used for all \"fetch\" operations\n regardless of the <code>operationId</code> specified on the request.\n <p>\n Switching to \"false\" effectively creates caching just for one specific\n <code>operationId</code> - the <code>cacheAllOperationId</code> - while allowing all\n other requests to go to the server normally.",
        name:"cacheAcrossOperationIds",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:SelectItem.emptyDisplayValue":{
        ref:"attr:SelectItem.emptyDisplayValue",
        flags:"IRW",
        description:"Text to display when this form item has a null or undefined value.\n <P>\n If the formItem has a databound pickList, and its ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} or\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} (if the former isn't set) has an undefined\n ${isc.DocUtils.linkForRef('DataSourceField.emptyCellValue','emptyCellValue')} setting, that field's\n <code>emptyCellValue</code> will automatically be set to the <code>emptyDisplayValue</code>.",
        name:"emptyDisplayValue",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "display_values"
        ]
    },
    "attr:ServerObject.attributeName":{
        ref:"attr:ServerObject.attributeName",
        flags:"IR",
        description:"Specifies the name of the attribute by which to look up the DMI instance.  This attribute is\n consulted only when the value of ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')} is <code>\"attribute\"</code>.",
        name:"attributeName",
        seeAlso:[
            {
                ref:"attr:ServerObject.attributeScope",
                description:null
            },
            {
                ref:"attr:ServerObject.lookupStyle",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "group:networkPerformance":{
        ref:"group:networkPerformance",
        title:"Network Performance",
        treeLocation:[
            "Optional Modules"
        ],
        refs:[
        ],
        description:"This section describes various methods for optimizing delivery of your SmartClient-based\n application to the browser.  The various techniques discussed here should enable you to\n drastically reduce the time to load your SmartClient based application and to cut down on\n bandwidth costs and server-side CPU usage.\n <P>\n <i>Note that in addition to these network performance considerations, you should also be aware\n of the recommended application design practices discussed in ${isc.DocUtils.linkForRef('group:smartArchitecture')}.</i>\n <P>\n\n There are three main ways of improving the performance of your application:\n <p>\n <u><b>Compression</b></u>\n <p>\n You'll want to deliver as much of your application assets compressed as possible.  For a start, the\n SmartClient modules come pre-compressed.  The ${isc.DocUtils.linkForRef('group:compression')} section describes how\n to make sure that SmartClient modules and your application logic are delivered compressed\n and how to enable dynamic compression of your dynamic content.\n <p>\n Compression drastically reduces transfer times to the browser.  Compression ratios for css\n and javascript files can be as high as 8:1.\n\n <p>\n <u><b>Caching</b></u>\n <p>\n The ${isc.DocUtils.linkForRef('group:caching')} section deals with delivering as much content as possible with\n caching headers.  Setting these headers allows the end-user's browser and any intermediary\n proxies to keep a local copy of the file across browser reloads, ensuring the subsequent\n visits require almost no fetches from the server.  Eliminating these fetches is also\n important for the reasons explained under File Assembly below.\n \n <p>\n <u><b>File Assembly</b></u>\n <p>\n Modern browsers limit the number of HTTP connections they use to fetch the assets required\n to render your pages - typically to just 2 connections.  As a result, connection latency can\n play a much higher role than available bandwidth and the two connection limit effectively\n drastically limits the user's usable bandwidth.  For this reason, it's important to minimize\n the number of HTTP requests made to the server.  The File Assembly services make it easy to\n deliver multiple css and javascript file via one HTTP response.  Assembling files together\n also helps to increase the compression ratio because the compression engine has more\n redundant data to work with.\n\n <p>\n <u><b>FileLoader</b></u>\n <p>\n The FileLoader is a standalone client-side module that allows you to performing caching or\n loading of various resources in the background on any page.  The typical usage pattern is to\n use this module to pre-cache SmartClient modules, skin images, and application logic while\n the user is, for example filling in a login form.  See the ${isc.DocUtils.linkForRef('class:FileLoader')} documentation\n on usage.\n\n <p>\n <u><b>SSL Considerations</b></u>\n <p>\n Some quirks to be aware of when optimizing for pages serviced via HTTPS:\n <ul>\n <li>If your top-level https page loads an image via http, IE will pop a warning to the user\n asking if it's ok to serve the \"unsecure\" content.  Firefox does not pop an alert, bug shows\n a different lock icon to indicate that not all content is served from a secure server.\n <li>Firefox will not write images fetched via SSL to disk, even if expires headers are set.\n But it will cache them in memory for the duration of the browser session.  This makes the\n use of the ${isc.DocUtils.linkForRef('class:FileLoader')} even more important for SSL applications.  IE will cache SSL\n content across browser restarts.\n <li>If your only concern is with actual security and not with perception, it makes a lot of\n sense to serve the top-level page via plain HTTP and then use the SmartClient RPC mechanism\n to fetch sensitive data with no-cache headers via HTTPS.  Unfortunately this almost never\n practical because most users look for the secure lock icon on the top-level page and may\n become worried that the application is not secure if they don't see it.\n </ul>\n\n <p>\n <u><b>Other Tips</b></u>\n <p>\n 1.  Modern applications often use a number of cookies to keep track of session state,\n application state, etc.  If you don't limit the paths these cookies are served for, you can\n easily end up with these cookies being sent to the server with every HTTP request as\n part of the HTTP headers.  This can severely limit bandwidth where a large number of\n requests are made - typically for skin images.  Also note that most technologies used by\n end-users to connect to the internet such as DSL and Cable are half-duplex, meaning that\n downstream must pause for upstream traffic to be sent and these connections also are\n asymmetric, allowing much faster download speeds than upload speeds.  As a result, the\n limited upstream capability of most connections ends up limiting the download bandwidth by\n delaying the download of other assets required to render the page.\n <p>\n 2.  Whenever possible, don't set the \"Cache-Control\" header to \"private\" - this tells\n intermediary proxies to not allow caching of the specified content, eliminating that cache\n as a useful intermediary for other users behind it.\n <p>\n 3.  For a good overview of performance considerations, see this post:\n <a href='http://www.die.net/musings/page_load_time/' target='_blank'>http://www.die.net/musings/page_load_time/</a>",
        name:"networkPerformance",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TextSettings.fieldSeparator":{
        ref:"attr:TextSettings.fieldSeparator",
        flags:"IR",
        description:"Separator between field values.  Default is a comma character, producing CSV \n (comma-separated values) format.",
        name:"fieldSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\",\"",
        type:"attr",
        definingClass:"class:TextSettings"
    },
    "attr:MiniDateRangeItem.canFocus":{
        ref:"attr:MiniDateRangeItem.canFocus",
        flags:"IR",
        description:"MiniDateRangeItems are marked as canFocus:true, and set up with properties such that focus\n will always go to the icon to launch the dateRange dialog. Set canFocus to false to \n suppress this behavior.",
        name:"canFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "method:CubeGrid.setEditValue":{
        ref:"method:CubeGrid.setEditValue",
        flags:"A",
        description:"\n Set the edit value for some cell in the cube grid.<p>\n Note that cubeGrids display one record per cell - the value passed in should be the \n desired edit value for the ${isc.DocUtils.linkForRef('attr:CubeGrid.valueProperty')} of the record.\n\n",
        name:"setEditValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Row number",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Column number",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"New value for the record",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "attr:ListGrid.dateInputFormat":{
        ref:"attr:ListGrid.dateInputFormat",
        flags:"IRWA",
        description:"If this is an editable listGrid, this property will specify the\n ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat','inputFormat')} applied to editors for fields of type\n <code>\"date\"</code>. May be overridden per field via ${isc.DocUtils.linkForRef('attr:ListGridField.inputFormat')}.",
        name:"dateInputFormat",
        seeAlso:[
            {
                ref:"attr:ListGrid.dateFormatter",
                description:null
            }
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:DataSource.getXMLRequestBody":{
        ref:"method:DataSource.getXMLRequestBody",
        flags:"A",
        description:" Get the XML to be posted to the dataURL based on the passed DSRequest.\n <P>\n This API is intended to be overridden in order to integrate with web services that\n expect XML messages rather than simple HTTP parameters, but lack a\n WSDL description.  For WSDL-described web services, having loaded the service\n description, SmartClient knows the correct XML message structure, so customization is\n best done by modifying the JavaScript data that is used to form the message.\n\n",
        name:"getXMLRequestBody",
        seeAlso:[
            {
                ref:"classMethod:XMLTools.loadWSDL",
                description:"for integration with WSDL-described web services"
            }
        ],
        params:[
            {
                description:"the request to encode as an XML message.",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        returns:{
            description:"the entire XML request as a String, including SOAP envelope if SOAP is used",
            type:"String"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:ButtonItem.icon":{
        ref:"attr:ButtonItem.icon",
        flags:"IR",
        description:"Optional icon image to display on the button for this item.  See ${isc.DocUtils.linkForRef('attr:Button.icon')}.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ButtonItem",
        groups:[
            "appearance"
        ]
    },
    "attr:TileLayout.tileWidth":{
        ref:"attr:TileLayout.tileWidth",
        flags:"IR",
        description:"Width of each tile in pixels.  See ${isc.DocUtils.linkForRef('attr:TileLayout.tileSize')}.\n If ${isc.DocUtils.linkForRef('type:LayoutPolicy')} is \"fit\", ${isc.DocUtils.linkForRef('attr:TileLayout.expandMargins')} is false, ${isc.DocUtils.linkForRef('attr:TileLayout.tilesPerLine')} is set,\n ${isc.DocUtils.linkForRef('type:Orientation')} is \"horizontal\",\n and tileWidth is not set, tileWidth will be computed automatically based on ${isc.DocUtils.linkForRef('attr:TileLayout.tilesPerLine')}.",
        name:"tileWidth",
        setter:[
            "setTileWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:FormItem.titleStyle":{
        ref:"attr:FormItem.titleStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's title. Note that this is a ${isc.DocUtils.linkForRef('type:FormItemBaseStyle')} so\n will pick up stateful suffixes on focus, disabled state change etc. by default.\n <p>\n Note the appearance of the title is also affected by\n ${isc.DocUtils.linkForRef('attr:DynamicForm.titlePrefix')}/${isc.DocUtils.linkForRef('attr:DynamicForm.titleSuffix','titleSuffix')} and \n ${isc.DocUtils.linkForRef('attr:DynamicForm.requiredTitlePrefix')}/${isc.DocUtils.linkForRef('attr:DynamicForm.requiredTitleSuffix','requiredTitleSuffix')}.",
        name:"titleStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"formTitle\"",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:ListGrid.canEditFieldAttribute":{
        ref:"attr:ListGrid.canEditFieldAttribute",
        flags:"IRA",
        description:"If this component is bound to a dataSource, this attribute may be specified to customize\n what fields from the dataSource may be edited by default. For example the ${isc.DocUtils.linkForRef('class:SearchForm')}\n class has this attribute set to <code>\"canFilter\"</code> which allows search forms to edit\n dataSource fields marked as <code>canEdit:false</code> (but not those marked as\n <code>canFilter:false</code>).\n <P>\n Note that if <code>canEdit</code> is explicitly specified on a field in \n the ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')} array, that property will be respected in preference to \n the canEditAttribute value. (See ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')}, ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit')}).\n Also note that individual dataBoundComponents may have additional logic around whether a field\n can be edited - for example ${isc.DocUtils.linkForRef('method:ListGrid.canEditCell')} may be overridden.",
        name:"canEditFieldAttribute",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"canEdit\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "group:metadataImport":{
        ref:"group:metadataImport",
        title:"Metadata Import",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        refs:[
        ],
        description:"In SmartClient, metadata is expressed through ${isc.DocUtils.linkForRef('class:DataSource','DataSources')}, which in turn\n drive ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')}.  If you have existing metadata, there\n are several possible approaches to transforming it to SmartClient DataSources, either one\n time or on the fly.\n <P>\n There are two possible targets for metadata import: XML format or JavaScript format.\n The XML format is more general purpose, since the ISC server can transform it to JavaScript\n via the ${isc.DocUtils.linkForRef('group:loadDSTag','loadDS tag')}, and DataSources in XML format can be used by the\n ISC server for server-side validation (this split is covered in more detail under\n ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','Data Source Declaration')}).\n <P>\n You may also transform your metadata dynamically (while the application is running in\n production) or statically (one time ever or at packaging time).  Generally for a static\n or dynamic transform targetting JavaScript format you will want to produce one .js file\n containing all your DataSource definitions, to be loaded by your application via a normal\n &lt;SCRIPT SRC&gt; tag.  For a static transform targetting XML format, you will want to\n produce a series of .ds.xml files and place them in the directories expected by the ISC\n server (see ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','DataSource Declaration')}).  Statically generated\n XML DataSources can be delivered to the browser as a single .js file via a .jsp containing\n several ${isc.DocUtils.linkForRef('group:loadDSTag','<code>loadDS</code> tags')}.\n <P>\n If you want to do dynamic transform targetting XML format and use ISC server-side\n validation, the server-side API DataSource.fromXML() can be used to create a DataSource\n dynamically from XML, so that you can then call DataSource.validate().  Either the XML\n DataSource definition or the live DataSource itself can be passed to the server-side API\n XML.toJS() to produce JavaScript.\n <P>\n How to actually produce JavaScript or XML DataSource definitions from your existing metadata\n depends on the format of your metadata.\n <P>\n <b>XML Schema</b>\n <P>\n The method ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')} and the \n ${isc.DocUtils.linkForRef('group:loadXMLSchemaTag','loadXMLSchema JSP tag')} provide dynamic transform of XML Schema\n to JavaScript.  This is essentially accomplished by running\n <code>isomorphic/system/schema/schemaTranslator.xsl</code> on the XML schema file to produce\n XML DataSource definitions, and then translating those to JavaScript.  You can run the\n <code>schemaTranslator</code> stylesheet using any standard XSLT processor and capture the\n XML output.\n <P>\n <b>Java Beans</b>\n <P>\n Metadata available via Java's \"reflection\" APIs allows a basic DataSource to be generated\n from Java beans.  Sample Java code can be found in\n <code>examples/server_integration/DataSourceGenerator.java</code>.  See also the last section\n on this page for an automatic option for generating DataSource definitions via Reflection.\n <P>\n <b>Other XML formats</b>\n <P>\n If you are familiar with XSLT or other XML transform languages, you\n could use it to do an XML to XML transform, and then use XML.toJS() to get to JavaScript.\n <P>\n <b>Schema represented as Java Objects</b>\n <P>\n If you are targetting XML, hand-coded generation of DataSource XML is straightforward, and\n from XML you can use XML.toJS() to get to JavaScript.\n <P>\n <b>Database Schema, Hibernate mappings or Java class definitions</b>\n <P>\n <em><b>Note: This is an Enterprise feature.</b>  It is not available to users of the LGPL,\n Pro or Power Editions of SmartClient.  Please see the <a href=http://smartclient.com/licensing>\n licensing page</a> for details.</em>\n <p>\n If you have existing database tables, Hibernate classes or Java POJOs that follow the Javabean\n semantics, you can use these to automatically produce basic XML DataSource definitions.  \n We provide the Batch DataSource Generator, a supported tool that makes use of SmartClient \n Server APIs to generate XML DataSource definitions and save them as <code>.ds.xml</code> files \n in your <code>shared/ds</code> folder.  The source for the tool is provided in \n <code>tools/batchDSGenerator.jsp</code>.  \n <p>\n If your metadata source is existing database tables, the Batch DS Generator can also extract \n data from those tables and save it as test data in your <code>shared/ds/test_data</code> \n folder.  With this option, you have a complete round-trip facility from a populated database \n table to a client-side DataSource that does not require a server. The database\n table can be recreated and repopulated from the XML files using the SmartClient Admin \n Console, giving you a portable schema and dataset that can be used to initialize any database.\n <p>\n The tool is also able to output the DataSource definitions and test data in Javascript format\n rather than XML, for direct inclusion in client-side programs.  In this mode, it will create \n <code>.ds.js</code> and <code>.data.js</code> files, rather than files with a <code>.xml</code>\n extension.\n <p>\n To use the tool, direct your web browser to the <code>tools/batchDSGenerator.jsp</code> \n resource of your SmartClient server.  If you pass no parameters to the JSP, a SmartClient \n window will be shown, prompting you for the various generation parameters.  Alternatively, \n you can effect a true batch operation by passing these parameters in directly.  The source \n code is extensively commented and explains the meanings of all the parameters should you wish\n to take this latter approach.\n <p>\n Example simple usage (via the UI):<br/>\n <code>http://localhost:8080/tools/batchDSGenerator.jsp</code>\n <p>\n Example batch usage (providing the parameters by hand):<br/>\n <code>http://localhost:8080/tools/batchDSGenerator.jsp?dbName=Mysql&tableName=foo&tableName=bar&className=com.bar.foo.SomeClass&overwrite=true</code>",
        name:"metadataImport",
        seeAlso:[
        ],
        type:"group"
    },
    "method:CheckboxItem.getValueAsBoolean":{
        ref:"method:CheckboxItem.getValueAsBoolean",
        flags:"",
        description:" Return the value tracked by this form item as a Boolean.  If the value is not\n already a boolean, or is unset and ${isc.DocUtils.linkForRef('attr:CheckboxItem.allowEmptyValue')} is true,\n then null will be returned.\n\n",
        name:"getValueAsBoolean",
        seeAlso:[
            {
                ref:"method:FormItem.getValue",
                description:null
            }
        ],
        returns:{
            description:"value of this element",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CheckboxItem"
    },
    "attr:SelectItem.showPickerIcon":{
        ref:"attr:SelectItem.showPickerIcon",
        flags:"IRW",
        description:"Should we show a special 'picker' ${isc.DocUtils.linkForRef('object:FormItemIcon','icon')} for this form item? Picker\n icons are customizable via ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconProperties','pickerIconProperties')}. By default\n they will be rendered inside the form item's \"control box\" area, and will call\n ${isc.DocUtils.linkForRef('method:FormItem.showPicker')} when clicked.",
        name:"showPickerIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "pickerIcon"
        ]
    },
    "classMethod:EventHandler.getDragRect":{
        ref:"classMethod:EventHandler.getDragRect",
        flags:"",
        description:" During a drag with ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance','dragAppearance')} of either \"target\" or\n \"outline\", returns the page-relative coordinates of whatever element is being dragged.\n <P>\n Calling this method allows you to write drag and drop logic that works identically even if\n <code>dragAppearance</code> is subsequently changed.\n\n",
        name:"getDragRect",
        seeAlso:[
        ],
        returns:{
            description:"global (page-relative) coordinates and size of the dragged element, as a                       4-element array [left,top,width,height], or null if not dragging",
            type:"Rect"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DataSource.dataURL":{
        ref:"attr:DataSource.dataURL",
        flags:"IR",
        description:"Default URL to contact to fulfill all DSRequests.  Can also be set on a\n per-operationType basis via ${isc.DocUtils.linkForRef('attr:OperationBinding.dataURL')}.\n <P>\n NOTE: Best practice is to use the same <code>dataURL</code> for all DataSources which\n fulfill DSRequests via the server-side RPCManager API.  Otherwise, cross-DataSource\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','operation queuing')} will not be possible.",
        name:"dataURL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('jsonDataSource')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:TileGrid.autoFetchTextMatchStyle":{
        ref:"attr:TileGrid.autoFetchTextMatchStyle",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TileGrid.autoFetchData')} is <code>true</code>, this attribute allows the developer to\n specify a textMatchStyle for the initial ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} call.",
        name:"autoFetchTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"\"substring\"",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "databinding"
        ]
    },
    "method:Calendar.timelineEventResized":{
        ref:"method:Calendar.timelineEventResized",
        flags:"",
        description:" Called when a Timeline event is resized via dragging by a user.  Return false to disallow \n the resize.\n",
        name:"timelineEventResized",
        seeAlso:[
        ],
        params:[
            {
                description:"the event that was resized",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"new start date of the passed event",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"new end date of the passed event",
                optional:false,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"return false to disallow the resize",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "group:databinding":{
        ref:"group:databinding",
        title:"DataBinding",
        refs:[
            "attr:ResultSet.dataSource",
            "attr:ResultTree.dataSource",
            "attr:Calendar.autoFetchData",
            "attr:Calendar.autoFetchTextMatchStyle",
            "attr:Calendar.showDetailFields",
            "attr:Calendar.dataFetchMode",
            "attr:CubeGrid.autoFetchData",
            "attr:DataBoundComponent.dataSource",
            "attr:DataBoundComponent.dataFetchMode",
            "attr:DataBoundComponent.dataPageSize",
            "attr:DataBoundComponent.fields",
            "attr:DataBoundComponent.useAllDataSourceFields",
            "attr:DataBoundComponent.showHiddenFields",
            "attr:DataBoundComponent.showDetailFields",
            "attr:DataBoundComponent.showComplexFields",
            "attr:ListGrid.autoFetchData",
            "attr:DynamicForm.autoFetchData",
            "attr:DynamicForm.autoFetchTextMatchStyle",
            "attr:DetailViewer.dataFetchMode",
            "attr:DetailViewer.showDetailFields",
            "attr:ListGrid.fields",
            "attr:ListGrid.dataSource",
            "attr:ListGrid.saveLocally",
            "attr:ListGrid.useRemoteValidators",
            "attr:ListGrid.useAllDataSourceFields",
            "attr:ListGrid.showDetailFields",
            "attr:ListGrid.dataProperties",
            "attr:ListGrid.dataFetchMode",
            "attr:ListGrid.canRemoveRecords",
            "attr:TreeGrid.dataSource",
            "attr:TreeGrid.loadDataOnDemand",
            "attr:TreeGrid.treeRootValue",
            "attr:TreeGrid.fields",
            "attr:TreeGrid.dataProperties",
            "attr:TreeGrid.useAllDataSourceFields",
            "attr:Menu.dataProperties",
            "attr:TreeMenuButton.dataProperties",
            "attr:TileGrid.dataSource",
            "attr:TileGrid.autoFetchData",
            "attr:TileGrid.autoFetchTextMatchStyle",
            "attr:TileGrid.dataFetchMode",
            "attr:ColumnTree.dataSource",
            "attr:ColumnTree.dataProperties",
            "attr:ColumnTree.autoFetchData",
            "attr:ColumnTree.autoFetchTextMatchStyle",
            "attr:ColumnTree.showDetailFields",
            "attr:ColumnTree.dataFetchMode",
            "attr:ColumnTree.loadDataOnDemand",
            "attr:ColumnTree.fields",
            "attr:DynamicForm.dataFetchMode",
            "attr:PickListMenu.dataProperties",
            "attr:PickList.showOptionsFromDataSource",
            "attr:SelectItem.showOptionsFromDataSource",
            "attr:ComboBoxItem.showOptionsFromDataSource",
            "attr:PickTreeItem.dataProperties",
            "attr:MultiView.dataSource"
        ],
        description:"DataBinding means the automatic, highly customizable process of 'binding' a UI component\n to a DataSource, so that a UI component displays, edits and saves DataSource records\n using appropriate formatters, editors, validation rules, and persistence logic.",
        name:"databinding",
        seeAlso:[
            {
                ref:"interface:DataBoundComponent",
                description:null
            }
        ],
        type:"group"
    },
    "method:ResultSet.willFetchData":{
        ref:"method:ResultSet.willFetchData",
        flags:"",
        description:" Will changing the criteria for this resultSet require fetching new data from the server, \n or can the new criteria be satisfied from data already cached on the client?<br>\n Second <code>textMatchStyle</code> parameter determines whether a change of text-match style\n will require a server fetch - for example if filter is being changed between\n an exact match (from e.g: ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}) and a substring match \n (from e.g: ${isc.DocUtils.linkForRef('method:ListGrid.filterData')}).<br>\n This method can be used to determine whether ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} or \n ${isc.DocUtils.linkForRef('method:ListGrid.filterData')} would cause a server side fetch when passed a certain set of \n criteria.\n",
        name:"willFetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"new criteria to test.",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"New text match style. If not passed, assumes       textMatchStyle will not be modified.",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"true if server fetch would be required to satisfy new criteria.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:FilterBuilder.fieldPickerProperties":{
        ref:"attr:FilterBuilder.fieldPickerProperties",
        flags:"IR",
        description:"Properties to combine with the ${isc.DocUtils.linkForRef('class:FieldPicker')} autoChild FormItem.",
        name:"fieldPickerProperties",
        seeAlso:[
        ],
        valueType:"FormItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:DetailViewer.headerStyle":{
        ref:"attr:DetailViewer.headerStyle",
        flags:"IRW",
        description:"CSS style for a header",
        name:"headerStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"detailHeader\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "method:Slider.valueIsChanging":{
        ref:"method:Slider.valueIsChanging",
        flags:"A",
        description:" Call this method in your ${isc.DocUtils.linkForRef('method:Slider.valueChanged')} handler to determine whether the\n value change is due to an ongoing drag interaction (true) or due to a thumb-release,\n mouse click, keypress, or programmatic event (false). You may choose to execute temporary or\n partial updates while the slider thumb is dragged, and final updates or persistence of the value\n in response to the other events.\n\n",
        name:"valueIsChanging",
        seeAlso:[
        ],
        returns:{
            description:"true if user is still dragging the slider thumb, false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Slider"
    },
    "classMethod:FileLoader.cacheShadows":{
        ref:"classMethod:FileLoader.cacheShadows",
        flags:"",
        description:"\n Caches a set of shadow images at various depths.  For example this code:\n <pre>\n isc.FileLoader.cacheShadows(\"/isomorphic/skins/SmartClient/images/shared/shadows\", \"5\");\n </pre>\n Will cause the following images to be cached:\n <pre>\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_TL.png\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_T.png\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_TR.png\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_L.png\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_R.png\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_BL.png\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_B.png\n /isomorphic/skins/SmartClient/images/shared/shadows/ds5_BR.png\n </pre>\n\n",
        name:"cacheShadows",
        seeAlso:[
        ],
        params:[
            {
                description:"Base directory containing the shadow images.",
                optional:false,
                name:"baseDir",
                defaultValue:null,
                type:"String"
            },
            {
                description:"List of depths to load. These values corresponds to the Canvas                                    attribute ${isc.DocUtils.linkForRef('attr:Canvas.shadowDepth')}.   This can either be\n                                    a string with comma separated depths or an Array of depths.",
                optional:false,
                name:"depths",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Name of the base shadow image from which list of URLs is                                    generated.  If not specified, this defaults to \"ds.png\".",
                optional:true,
                name:"baseShadowImage",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Optional code to execute when the last of the specified URLs                                      has completed caching.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "classMethod:RPCManager.send":{
        ref:"classMethod:RPCManager.send",
        flags:"",
        description:"\n This method is a convenience wrapper on <code>RPCManager.sendRequest()</code> - it calls\n through to sendRequest().\n\n",
        name:"send",
        seeAlso:[
            {
                ref:"classMethod:RPCManager.sendRequest",
                description:null
            },
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        params:[
            {
                description:"data to be passed to the server",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"any"
            },
            {
                description:"method to call on RPC completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"RPCCallback"
            },
            {
                description:"object literal containing any additional properties                                        you want to set - these will be applied to the\n                                        RPCRequest object that will be auto-created for you.",
                optional:true,
                name:"requestParams",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "method:Class.init":{
        ref:"method:Class.init",
        flags:"A",
        description:"\n Initialize a new instance of this Class.  This method is called automatically by\n ${isc.DocUtils.linkForRef('classMethod:Class.create')}.\n <p>\n Override this method to provide initialization logic for your class.  If your class is\n a subclass of a UI component (i.e. descendant of ${isc.DocUtils.linkForRef('class:Canvas')}), override\n ${isc.DocUtils.linkForRef('method:Canvas.initWidget')} instead.\n\n",
        name:"init",
        seeAlso:[
        ],
        params:[
            {
                description:"All arguments initially passed to ${isc.DocUtils.linkForRef('classMethod:Class.create')}",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "classMethod:DataSource.getAdvancedCriteriaDescription":{
        ref:"classMethod:DataSource.getAdvancedCriteriaDescription",
        flags:"",
        description:" Returns a human-readable string describing the clauses in this advanced criteria or criterion.\n \n",
        name:"getAdvancedCriteriaDescription",
        seeAlso:[
        ],
        params:[
            {
                description:"Criteria to convert to a readable string",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"AdvancedCriteria or Criterion"
            },
            {
                description:"DataSource to provide definitions of operators",
                optional:false,
                name:"dataSource",
                defaultValue:null,
                type:"DataSource"
            }
        ],
        returns:{
            description:"Human-readable string describing the clauses in the passed criteria",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:ListGrid.poolComponentsPerColumn":{
        ref:"attr:ListGrid.poolComponentsPerColumn",
        flags:"IRW",
        description:"Should recycled ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','record components')}, be pooled\n per column or per record. Only applies if ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is true.\n <P>\n When ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentPoolingMode')} is \"recycle\" and you have components of\n different types in different columns, set this property to true to ensure that\n components intended for one column are not recycled for use in another column that\n should have a different component.\n <P>\n If no components applicable to a particular column are available in the pool, the system\n calls ${isc.DocUtils.linkForRef('method:ListGrid.createRecordComponent','createRecordComponent')}.",
        name:"poolComponentsPerColumn",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ValuesManager.getMemberValues":{
        ref:"method:ValuesManager.getMemberValues",
        flags:"",
        description:" Returns the subset of this valuesManager's values associated with some member form.\n  \n",
        name:"getMemberValues",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of the member form for which we want to retrieve the values.",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"a map of the values for the appropriate member form.",
            type:"object"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:FormItemIcon.showFocusedWithItem":{
        ref:"attr:FormItemIcon.showFocusedWithItem",
        flags:"IRWA",
        description:"If this icon will be updated to show focus (see ${isc.DocUtils.linkForRef('attr:FormItemIcon.showFocused')}, \n ${isc.DocUtils.linkForRef('attr:FormItem.showFocusedIcons')}), this property governs whether the focused state should\n be shown when the item as a whole receives focus or just if the icon receives focus.\n If this property is unset, default behavior is to show focused state when the item\n receives focus.",
        name:"showFocusedWithItem",
        seeAlso:[
            {
                ref:"attr:FormItem.showFocusedIcons",
                description:null
            },
            {
                ref:"attr:FormItemIcon.showFocused",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "method:DateItem.getSelectionRange":{
        ref:"method:DateItem.getSelectionRange",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.getSelectionRange','getSelectionRange()')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"getSelectionRange",
        seeAlso:[
        ],
        returns:{
            description:"2 element array indicating start/end character index of current selection  within our text entry field. Returns null if this item is undrawn or doesn't have focus.",
            type:"array"
        },
        type:"method",
        definingClass:"class:DateItem"
    },
    "attr:DynamicForm.validationURL":{
        ref:"attr:DynamicForm.validationURL",
        flags:"IRW",
        description:"validationURL can be set to do server-side validation against a different URL from where\n the form will ultimately save, as part of an incremental upgrade strategy for Struts and\n Struts-like applications.  \n <P>\n If set, calling ${isc.DocUtils.linkForRef('method:DynamicForm.submit')} causes an RPC to be sent to this URL to\n perform server-side validation of the form values.  If the validation fails, the\n validation errors returned by the server are rendered in the form.  If the validation\n succeeds, the form is submitted to the URL specified by ${isc.DocUtils.linkForRef('attr:DynamicForm.action')}.\n <p>\n The form values are available on the server as request parameters (just like a normal form\n submit) and also as the values of a DSRequest sent as an RPC alongside the normal\n submit.\n <p>\n The expected response to this request is a DSResponse sent via the RPC mechanism.  If\n validation is successful, an empty response with the STATUS_SUCCESS status code is\n sufficient.  If there are validation errors, the DSResponse should have the status set to \n STATUS_VALIDATION_ERROR and the errors should be set on the response via the\n addError()/setErrorReport() API on DSResponse.  See the javadoc for DSResponse for\n details.\n <P>\n See the Struts examples in <code>[webroot]/examples/struts</code> for usage examples.",
        name:"validationURL",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            },
            {
                ref:"method:DynamicForm.submit",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "method:Process.finished":{
        ref:"method:Process.finished",
        flags:"",
        description:" StringMethod called when a process completes, meaning the process executes a \n ProcessElement with no next element.\n",
        name:"finished",
        seeAlso:[
        ],
        params:[
            {
                description:"the final process state",
                optional:false,
                name:"state",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"class:Process"
    },
    "attr:FacetChart.discontinuousLines":{
        ref:"attr:FacetChart.discontinuousLines",
        flags:"IRW",
        description:"Whether to treat non-numeric values in the dataset as indicating a break in the data\n line.  If set to <code>false</code> then null values are ignored.  Defaults to\n <code>true</code> for ${isc.DocUtils.linkForRef('attr:FacetChart.filled','filled')} charts and to <code>false</code>\n for line charts.",
        name:"discontinuousLines",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.getDefaultFormattedValue":{
        ref:"method:ListGrid.getDefaultFormattedValue",
        flags:"A",
        description:" Get the value for some cell with default formatters applied.\n <P>\n This method is useful for cases where a developer wishes to\n conditionally customize a cell's formatting, but needs to see what\n the default formatted value would be.\n <P>\n For example - a developer might wish to apply a custom\n ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue','formatter')} to some\n <code>link</code> type field, and be able to return the default\n active link HTML in some cases. In this case a formatter could\n check for the conditions in which custom formatting should be applied\n and run appropriate custom logic to generate a value for display - otherwise\n return the result of this method to leave the standard formatted-value intact.\n\n",
        name:"getDefaultFormattedValue",
        seeAlso:[
            {
                ref:"method:ListGridField.formatCellValue",
                description:null
            }
        ],
        params:[
            {
                description:"the cell's record object",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"rowNum for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"colNum for the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Cell value with default formatters applied",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGridField.editorEnter":{
        ref:"method:ListGridField.editorEnter",
        flags:"A",
        description:" Callback fired when the user first starts editing a cell.\n <P>\n This callback is typically used to establish dynamic default values via\n ${isc.DocUtils.linkForRef('method:ListGrid.setEditValue')} or ${isc.DocUtils.linkForRef('method:ListGrid.setEditValues')}.\n\n",
        name:"editorEnter",
        seeAlso:[
        ],
        params:[
            {
                description:"record for the cell being edited.  <b>Will be null</b>                                for a new, unsaved record.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"value for the cell being edited",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"ListGrid to which this field belongs",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:Canvas.width":{
        ref:"attr:Canvas.width",
        flags:"IRW",
        getter:[
            "getWidth"
        ],
        description:"Size for this component's horizontal dimension.\n <P>\n Can be a number of pixels, or a percentage like \"50%\". Percentage sizes are resolved to\n pixel values as follows:\n <UL>\n <LI>If a canvas has a specified ${isc.DocUtils.linkForRef('attr:Canvas.percentSource','percentSource')}, sizing will be\n     a percentage of the size of that widget (see also ${isc.DocUtils.linkForRef('attr:Canvas.percentBox')}).</LI>\n <LI>Otherwise, if a canvas has a ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master canvas')}, and\n     ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','snapTo')} is set for the widget, sizing will be a percentage of\n     the size of that widget (see also ${isc.DocUtils.linkForRef('attr:Canvas.percentBox')}).</LI>\n <LI>Otherwise if this is a child of some other canvas, percentages will be based on the\n     inner size of the ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas','parent canvas')}'s viewport.</LI>\n <LI>Otherwise, for top level widgets, sizing is calculated as a percentage of page size.</LI>\n </UL>\n <P>\n ${isc.DocUtils.linkForRef('class:Layout','Layouts')} may specially interpret percentage sizes on their children,\n and also allow \"*\" as a size.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:Canvas.overflow','overflow')} is set to \"visible\", this size is a\n minimum, and the component may overflow to show all content and/or children.\n <P>\n If trying to establish a default width for a custom component, set\n ${isc.DocUtils.linkForRef('attr:Canvas.defaultWidth','defaultWidth')} instead.",
        name:"width",
        setter:[
            "setWidth"
        ],
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "group:featuresCustomPersistence":{
        ref:"group:featuresCustomPersistence",
        title:"Server Features and Custom Persistence",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"The vast majority of the SmartClient Server framework's key features are not specific to the\n built-in SQL and Hibernate connectors, and still apply even when using a custom persistence\n mechanism.\n <P>\n See the listing below of major features and how to apply them with custom persistence:\n <p>\n <b>Server Data Binding:</b> Using the SmartClient Server framework means that the starting\n point for connecting to custom persistence logic is a clean Java API.  SmartClient provides\n Java <code>DSRequest</code> and <code>DSResponse</code> objects with all of the methods\n necessary to handle data paging, sorting, validation error reporting, and other features.\n In most cases, you can fulfill a DSResponse by simply returning one of your Java\n business objects rather than worrying about how to encode objects to XML or JSON.\n Communication with the browser is automatically handled with an efficient, compressed\n protocol.  \n ${isc.DocUtils.linkForExampleId('ormDataSource', 'Custom DataSource example')}, \n ${isc.DocUtils.linkForExampleId('DMI', 'DMI example')}\n <p>\n <b>Data Selection (No DTOs):</b> When using a DataSource, Java data you return in your\n <code>DSResponse</code> is automatically trimmed to just the fields declared in the\n DataSource before delivery to the browser (see\n ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields','dropExtraFields')}).  This eliminates the need to create \n redundant <a href='http://en.wikipedia.org/wiki/Data_transfer_object' target='_blank'>Data Transfer Objects</a> \n to express the list of fields that need to be delivered to the UI - the DataSource already\n has this information, and can serve two purposes by both configuring UI components and\n trimming relevant data, from a single definition.\n <P>\n Furthermore, DataSources can extract specific fields from complex nested \n object graphs via XPath expressions, for both loading and saving of data.\n ${isc.DocUtils.linkForExampleId('flattenedBeans', 'XPath Binding example')}\n <p>\n <b>Server Validation:</b> Both client and server validation are driven from declarations in\n a single DataSource definition.  You already have a need to declare validators to\n drive SmartClient's client-side validation; when you use the SmartClient Server framework\n you get automatic server-side enforcement of the same validation rules, without the need to\n write any additional code.\n ${isc.DocUtils.linkForExampleId('serverValidation', 'Server Validation example')}\n <p>\n <b>Queuing:</b> Queuing allows multiple data load or save requests from different UI \n components to be transparently combined into a single HTTP request with guaranteed in-order\n execution.  The type of DataSource handling each request is not important, so queuing will\n work with your custom DataSource; in fact, a single queue could contain operations to be \n handled by many different types of DataSource.  \n ${isc.DocUtils.linkForExampleId('transactionsFolder', 'Queuing examples')}\n <p>\n <b>Declarative security:</b> The server framework provides robust authentication and \n authorization integration, to allow you to secure both DataSource operations (data fetch \n and update requests) and individual DataSource fields at various granularities.  The \n declarative security rules are expressed directly in the <code>.ds.xml</code> file, and \n allow you declare rules as simple as \"all operations on this DataSource require an \n authenticated user\", or as complex as \"a user can only update this field if he has role \n 'admin' and a call to the <code>isAuthorized()</code> method on a security checking object\n we have stored in the <code>HttpSession</code> returns true\".  Security rules are applied \n by the framework before and after a DSRequest is executed, so they are applied even to \n operations on completely custom DataSources. See \n ${isc.DocUtils.linkForRef('attr:OperationBinding.requiresRole')} and the properties it links to for more details on \n operation-level security, and ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresAuthentication')} and the \n properties it links to for more details on field-level security.\n\n <p>\n <b>Transaction Chaining:</b> allows one request in a queue of operations to incorporate\n values from previously executed requests in the same queue.  This allows a series of\n dependent operations - such as fetching a value from one DataSource to be used in a query on\n another - to be defined with simple declarations right in the DataSource definition, with no\n need to write a custom Java class to manually pass data between the different operations.\n Since Transaction Chaining works strictly in terms of DataSource requests and responses and\n knows nothing about the underlying persistence mechanism, it works with any persistence\n strategy.\n <p>\n <b>Java / JS Reflection:</b> Any Java object can be delivered to the browser as a JavaScript \n object, and vice versa.  As a developer of a custom DataSource, you do not need to concern \n yourself with dealing with translations to and from JSON or XML; you work directly with\n native Java objects.  For example, a method you write to fulfill a \"fetch\" operation can\n simply return a <code>Collection</code> of Java beans; the SmartClient Server framework would \n transparently handle converting this into a matching Javascript structure.\n ${isc.DocUtils.linkForExampleId('masterDetail', 'Saving nested objects example')}\n <p>\n <b>Visual Builder:</b> The DataSource Wizards in Visual Builder are pluggable; we provide\n wizards for SQL and Hibernate DataSources, and it is easy to write a new wizard to integrate \n your custom DataSource into Visual Builder.  ${isc.DocUtils.linkForExampleId('sqlWizard', 'SQL Wizard screenshots')},\n ${isc.DocUtils.linkForExampleId('hibernateWizard', 'Hibernate Wizard screenshots')}\n <p>\n <b>Batch DataSource Generator:</b> If the persistence scheme you are implementing your \n custom DataSource for is based on collections of Javabeans, the Batch DataSource Generator \n can generate DataSource definition files for instances of your custom DataSource.  This is\n out of the box behavior, but you can also alter and extend the DataSource Generator to suit \n your exact needs - we supply the source and it has been specifically designed to be easy \n to modify.\n <p>\n <b>Batch Uploader:</b> A user interface for end-to-end batch upload of data as a pre-built, \n customizable component.  This component - like any SmartClient databound component - only\n cares that a DataSource is a DataSource, so custom DataSources will work just like built-in\n ones.  ${isc.DocUtils.linkForExampleId('batchUpload', 'Batch Uploader example')}\n <p>\n <b>File Upload:</b> Single and multiple file uploads can be handled as a normal DataSource \n operation, including normal handling of validation errors. Optional automatic storage to SQL \n (no server code required) means you can upload to SQL tables for holding files, which can be\n related to Java Objects by id (eg, a User's uploaded files). \n ${isc.DocUtils.linkForExampleId('upload', 'File Upload example')}\n <p>\n <b>Export:</b> Allows any grid component to export its current dataset in CSV, XML or JSON\n format.  This feature works by issuing the DataSource with an ordinary \"fetch\", and then \n changing the <code>DSResponse</code> to send back an import file rather than a resultset.\n Accordingly, this just works with custom DataSources.  ${isc.DocUtils.linkForExampleId('export', 'Export example')}\n <p>\n <b>HTTP Proxy:</b> The HTTP Proxy allows an application to access web services hosted on \n remote servers which are not normally accessible to web applications due to the \n <a href='http://www.google.com/search?q=same+origin+policy' target='_blank'>\"same origin policy\"</a>).\n This is a general feature of the SmartClient Server framework that does not directly apply\n to DataSources.  ${isc.DocUtils.linkForExampleId('rssFeed', 'HTTP Proxy example')}\n <p>\n <b>Lightweight Persistence / Reporting:</b> Even while using a custom DataSource to connect\n to a custom ORM system, you can still make use of the SQL DataSource for simple storage-only\n entities where an object-based representation is a waste of time.  You can also do\n this for reporting scenarios that don't correspond to the object model.",
        name:"featuresCustomPersistence",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:isc.makeReverseMap":{
        ref:"classMethod:isc.makeReverseMap",
        flags:"",
        description:" Given a key:value map, return a new map as value:key.\n <P>\n If the same value appears more than once, the key will correspond to the last instance of that\n value.\n\n",
        name:"makeReverseMap",
        seeAlso:[
        ],
        params:[
            {
                description:"object of key:value pairs",
                optional:false,
                name:"valueMap",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"reversed value map",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:RPCRequest.containsCredentials":{
        ref:"attr:RPCRequest.containsCredentials",
        flags:"IRWA",
        description:"For use during ${isc.DocUtils.linkForRef('group:relogin','Relogin')}, this property marks this request an attempt to\n login, therefore a response containing the <code>loginRequiredMarker</code> is a normal\n condition and should result in the status code ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_LOGIN_INCORRECT')}\n rather than a call to ${isc.DocUtils.linkForRef('classMethod:RPCManager.loginRequired','loginRequired()')}.\n <P>\n It is not required to set <code>containsCredentials</code>, however, it does typically\n simplify relogin logic by separating the handling of RPCs that are login attempts from RPCs\n that are not.",
        name:"containsCredentials",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "relogin"
        ]
    },
    "attr:CheckboxItem.width":{
        ref:"attr:CheckboxItem.width",
        flags:"IRW",
        description:"Width for the CheckboxItem, including both checkbox image and ${isc.DocUtils.linkForRef('attr:CheckboxItem.showLabel','label')}.\n Note that if ${isc.DocUtils.linkForRef('attr:CheckboxItem.showLabel')} is false, this property will have no effect - the\n item will render at the size required to contain the icon.",
        name:"width",
        seeAlso:[
            {
                ref:"group:formLayout",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:CheckboxItem"
    },
    "attr:DateItem.browserInputType":{
        ref:"attr:DateItem.browserInputType",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField','useTextField')} is true and browserInputType is set to\n \"date\", then a native <a href='http://www.w3.org/TR/html5/forms.html#date-state-(type=date)' target='_blank'>HTML5 date input</a>\n is used in place of a text input.\n <p>\n The use of a native HTML5 date input causes certain features to be disabled. Input masks,\n the picker icon, and a custom ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter','dateFormatter')} are not supported.\n ${isc.DocUtils.linkForRef('attr:DateItem.showHintInField','In-field hints')} are currently supported, but future browser\n changes might force this support to be removed. Therefore, it is safest to <em>not</em>\n use in-field hints (set showHintInField to false) in conjunction with a native HTML5 date\n input.\n <p>\n <b>NOTE:</b> This feature requires specific CSS changes. Currently these changes have\n been made to the Enterprise, EnterpriseBlue, and Graphite skins only.",
        name:"browserInputType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "method:DataSource.getPrimaryKeyFields":{
        ref:"method:DataSource.getPrimaryKeyFields",
        flags:"",
        description:" Returns this DataSource's ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} fields as a map\n of fieldName to field.\n",
        name:"getPrimaryKeyFields",
        seeAlso:[
            {
                ref:"method:DataSource.getPrimaryKeyField",
                description:null
            },
            {
                ref:"method:DataSource.getPrimaryKeyFieldNames",
                description:null
            }
        ],
        returns:{
            description:"Javascript object containing all this datasource's primaryKey fields,                  as a map of field name to field",
            type:"Record"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "classMethod:FileLoader.cacheEdgeImages":{
        ref:"classMethod:FileLoader.cacheEdgeImages",
        flags:"",
        description:"\n Caches a set of edge images derived from a base image.\n For example this code:\n <pre>\n isc.FileLoader.cacheEdgeImages(\"/isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6.png\");\n </pre>\n Will cause the following images to be cached:\n <pre>\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_TL.png\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_T.png\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_TR.png\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_L.png\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_R.png\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_BL.png\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_B.png\n /isomorphic/skins/SmartClient/images/edges/rounded/frame/A3B2CC/6_BR.png\n </pre>\n\n",
        name:"cacheEdgeImages",
        seeAlso:[
        ],
        params:[
            {
                description:"List of base image URLs from which position-specific edge                                    names are to be derived.  This can either be a\n                                    string with comma separated baseURLs or an Array of baseURLs.",
                optional:false,
                name:"baseURLs",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"If true, also causes the center image to be cached.  Default                                    is false.",
                optional:true,
                name:"showCenter",
                defaultValue:null,
                type:"Boolean"
            },
            {
                description:"List of edges to load.  If none specified, The following                                    default list will be used:\n                                    \"TL,T,TR,L,R,BL,B,BR\".  The list of valid values is the\n                                    set of extensions specified by\n                                    ${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeImage')}. This can\n                                    either be a string with comma separated edge extension or an\n                                    Array of edge extensions.",
                optional:true,
                name:"edges",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"List of colors to cache.  If not specified, no color is                                     specified.  The list of valid colors are those that you have\n                                     specified as ${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeColor')}.\n                                    This can either be a string with comma separated colors or an Array\n                                    of colors.",
                optional:true,
                name:"colors",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when the last of the specified URLs                                      has completed caching.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "type:JSONInstanceSerializationMode":{
        ref:"type:JSONInstanceSerializationMode",
        values:[
            {
                description:"instances will be shown as a specially formatted JSON listing the most               relevant properties of the instance. Result is not expected to\n               decode()/eval() successfully if instances are included.",
                value:"\"long\""
            },
            {
                description:"instances will be shown in a shorter format via a call to ${isc.DocUtils.linkForRef('classMethod:isc.echoLeaf')}.                Result is not expected to decode()/eval() successfully if instances are\n                included.",
                value:"\"short\""
            },
            {
                description:"no output will be shown for instances (as though they were not present in the               data).  Result should decode()/eval() successfully (depending on other\n               settings)",
                value:"\"skip\""
            }
        ],
        description:"Controls the output of the JSONEncoder when instances of SmartClient classes (eg a ListGrid)\n are included in the data to be serialized.",
        name:"JSONInstanceSerializationMode",
        seeAlso:[
        ],
        type:"type"
    },
    "classMethod:DataSource.getLoaderURL":{
        ref:"classMethod:DataSource.getLoaderURL",
        flags:"",
        description:" Returns the +link{}DataSource.setLoaderURL(),loaderURL}\n\n",
        name:"getLoaderURL",
        seeAlso:[
        ],
        returns:{
            description:"The loaderURL",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:TimeItem.textAlign":{
        ref:"attr:TimeItem.textAlign",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is <code>true</code>, this property governs the alignment\n of text within the text field. Defaults to <code>\"left\"</code> by default or\n <code>\"right\"</code> if the page is in ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','rtl mode')}.\n <p>\n This attribute does not have an effect if a native HTML5 time input is being used.\n See ${isc.DocUtils.linkForRef('attr:TimeItem.browserInputType')}.",
        name:"textAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:FormulaBuilder.validBuilderPrompt":{
        ref:"attr:FormulaBuilder.validBuilderPrompt",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('method:FormulaBuilder.testFunction','testFunction')} reports a valid formula and no other \n errors, this attribute provides the error-text to display in the\n ${isc.DocUtils.linkForRef('attr:FormulaBuilder.messageLabel','message-label')}.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will \n be evaluated as JS code when the message is displayed.\n <P>\n Only one dynamic variable, builderType, is available and represents the type of this \n builder, either Formula or Summary.\n <P>\n The default output is:<P>\n <code>\n <i>Valid [Formula/Summary] </i>\n </code>",
        name:"validBuilderPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Valid ${builderType}\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:DateUtil.createLogicalDate":{
        ref:"classMethod:DateUtil.createLogicalDate",
        flags:"",
        description:" Create a new Date to represent a logical date value (rather than a specific datetime value),\n typically for display in a ${isc.DocUtils.linkForRef('attr:DataSourceField.type','date type field')}. The generated\n Date value will have year, month and date set to the specified values\n (in browser native local time).\n",
        name:"createLogicalDate",
        seeAlso:[
        ],
        params:[
            {
                description:"full year",
                optional:false,
                name:"year",
                defaultValue:null,
                type:"int"
            },
            {
                description:"month (zero based, so 0 is January)",
                optional:false,
                name:"month",
                defaultValue:null,
                type:"int"
            },
            {
                description:"date within the month",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"new javascript Date object representing the Date in question",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:DateUtil"
    },
    "type:animateShowEffectId":{
        ref:"type:animateShowEffectId",
        values:[
            {
                description:"content slides into or out of view as the widget grows or shrinks",
                value:"\"slide\""
            },
            {
                description:"content is revealed or wiped as the widget grows or shrinks",
                value:"\"wipe\""
            },
            {
                description:"widget's opacity smoothly fades into or out of view",
                value:"\"fade\""
            },
            {
                description:"widget moves into position from offscreen",
                value:"\"fly\""
            }
        ],
        description:"String specifying effect to apply during an animated show or hide.",
        name:"animateShowEffectId",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:MetricSettings.valueLineProperties":{
        ref:"attr:MetricSettings.valueLineProperties",
        flags:"IR",
        description:"Properties for a \"value line\" - a line shows where a particular discrete value is\n placed, eg, vertical lines connecting points of a line chart to the X axis, or radial\n lines in a Radar chart.",
        name:"valueLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:MultiGroupPanel.levelUpButtonTitle":{
        ref:"attr:MultiGroupPanel.levelUpButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Up button.",
        name:"levelUpButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Up\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "object:TileRecord":{
        methods:[
        ],
        ref:"object:TileRecord",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/TileGrid"
        ],
        attrs:[
            "attr:TileRecord.tileConstructor",
            "attr:TileRecord.tileProperties"
        ],
        description:"A TileRecord is a JavaScript Object whose properties contain values for each\n TileField. A TileRecord may have additional properties which affect the record's\n appearance or behavior, or which hold data for use by custom logic or other, related\n components.",
        name:"TileRecord",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:ListGrid.maxExpandedRecords":{
        ref:"attr:ListGrid.maxExpandedRecords",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} and ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandMultipleRecords')} are\n both true, this property dictates the number of\n records which can be expanded simultaneously.  If the expanded record count hits the\n value of this property, further attempts to expand records will result in a popup\n warning (see ${isc.DocUtils.linkForRef('attr:ListGrid.maxExpandedRecordsPrompt')}) and expansion will be cancelled.\n <P>\n The default value is null, meaning there is no limit on the number of expanded records.",
        name:"maxExpandedRecords",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:PickListMenu.bodyStyleName":{
        ref:"attr:PickListMenu.bodyStyleName",
        flags:"IRW",
        description:"CSS style used for the body of this grid.  If applying a background-color to the body\n via a CSS style applied using this property, be sure to set\n ${isc.DocUtils.linkForRef('attr:ListGrid.bodyBackgroundColor')} to <code>null</code>.",
        name:"bodyStyleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"pickListMenuBody\"",
        type:"attr",
        definingClass:"class:PickListMenu",
        groups:[
            "appearance"
        ]
    },
    "attr:SectionHeader.noDoubleClicks":{
        ref:"attr:SectionHeader.noDoubleClicks",
        flags:"IRA",
        description:"By default doubleClicks are disabled for SectionHeaders. All mouse click\n events will be handled as single clicks. Set this property to <code>false</code>\n to enable standard double-click handling.",
        name:"noDoubleClicks",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionHeader"
    },
    "method:DataBoundComponent.getFormulaFieldValue":{
        ref:"method:DataBoundComponent.getFormulaFieldValue",
        flags:"",
        description:" Get the computed value of a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.canAddFormulaFields','formula field')}.\n",
        name:"getFormulaFieldValue",
        seeAlso:[
        ],
        params:[
            {
                description:"field that has a formula",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Field"
            },
            {
                description:"record to use to compute formula value",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"formula result if a valid number or ${isc.DocUtils.linkForRef('attr:DataBoundComponent.badFormulaResultValue')} if invalid",
            type:"Double or String"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:PickList.optionDataSource":{
        ref:"attr:PickList.optionDataSource",
        flags:"IRA",
        getter:[
            "getOptionDataSource"
        ],
        description:"If set, this FormItem will derive data to show in the PickList by fetching records from\n the specified <code>optionDataSource</code>.  The fetched data will be used as a\n ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} by extracting the\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')} and ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} in\n the loaded records, to derive one valueMap entry per record loaded from the\n optionDataSource.  Multiple fields from the fetched data may be shown in the pickList by\n setting ${isc.DocUtils.linkForRef('attr:PickList.pickListFields')}.\n <P>\n The data will be retrieved via a \"fetch\" operation on the DataSource, passing the \n ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria')} (if set) as criteria, and passing\n ${isc.DocUtils.linkForRef('attr:PickList.optionFilterContext')} (if set) as DSRequest Properties.\n <P>\n The fetch will be triggered when the pickList is first shown, or, you can set\n ${isc.DocUtils.linkForRef('attr:SelectItem.autoFetchData','autoFetchData:true')} to fetch when the FormItem is\n first drawn.  \n <P>\n Note that providing an initial value when\n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')} is enabled, or enabling\n ${isc.DocUtils.linkForRef('attr:SelectItem.defaultToFirstOption','defaultToFirstOption')}, can also cause a fetch to\n be initiated immediately upon form creation.  You can also call ${isc.DocUtils.linkForRef('method:PickList.fetchData')}\n at any time to manually trigger a fetch.\n <P>\n Data paging is automatically enabled if the optionDataSource supports it.  As the\n pickList is scrolled by the user, requests for additional data will be automatically\n issued.\n <P>\n For a pickList attached to a ${isc.DocUtils.linkForRef('class:ComboBoxItem','ComboBoxItem')}, new fetches are \n issued as the user types, with criteria set as described under \n ${isc.DocUtils.linkForRef('method:ComboBoxItem.getPickListFilterCriteria')}.\n If your dataSource is not capable of filtering results by search criteria (eg, the\n dataSource is backed by an XML flat file), you can set ${isc.DocUtils.linkForRef('attr:PickList.filterLocally')} to have the\n entire dataset loaded up front and filtering performed in the browser.  This disables\n data paging.\n <P>\n Note that if a normal, static ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} is <b>also</b> specified\n for the field (either directly in the form item or as part of the field definition in\n the dataSource), it will be preferred to the data derived from the optionDataSource for\n whatever mappings are present.",
        name:"optionDataSource",
        seeAlso:[
        ],
        valueType:"DataSource | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:FormItemEventInfo.item":{
        ref:"attr:FormItemEventInfo.item",
        flags:"R",
        description:"Item over which the event occurred.",
        name:"item",
        seeAlso:[
        ],
        valueType:"FormItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemEventInfo"
    },
    "attr:DateRangeDialog.clearButtonTitle":{
        ref:"attr:DateRangeDialog.clearButtonTitle",
        flags:"IR",
        description:"The title for the \"Clear\" button on this dialog.",
        name:"clearButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Clear\"",
        type:"attr",
        definingClass:"class:DateRangeDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "class:SummaryBuilder":{
        methods:[
            "method:SummaryBuilder.setSummary",
            "method:SummaryBuilder.getHelpText",
            "method:SummaryBuilder.fireOnClose",
            "method:SummaryBuilder.save"
        ],
        ref:"class:SummaryBuilder",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:SummaryBuilder.builderTypeText",
            "attr:SummaryBuilder.dataSource",
            "attr:SummaryBuilder.fields",
            "attr:SummaryBuilder.editMode",
            "attr:SummaryBuilder.field",
            "attr:SummaryBuilder.formulaField",
            "attr:SummaryBuilder.titleField",
            "attr:SummaryBuilder.showHelpIcon",
            "attr:SummaryBuilder.helpIcon",
            "attr:SummaryBuilder.showAutoHideCheckBox",
            "attr:SummaryBuilder.autoHideCheckBox",
            "attr:SummaryBuilder.testRecord",
            "attr:SummaryBuilder.autoHideCheckBoxLabel",
            "attr:SummaryBuilder.helpTextIntro"
        ],
        description:"Shows an interface allowing a user to create or edit fields by typing simple\n format-strings into a text field.  The format-strings can include the values of other fields\n and additional text as required.\n <P>\n Available values for the format-string are determined by the DataSource fields, and are given\n simple single-letter aliases (such as \"A\", \"B\", ...) similar to column names in Excel.\n The set of available values is shown in the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.fieldKey')} as a simple\n mapping between the ${isc.DocUtils.linkForRef('attr:DataSourceField.title','field title')} and it's short name.\n <P>\n To include a field in the format-string, prefix it with a hash sign (#).",
        name:"SummaryBuilder",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "summaryFields"
        ]
    },
    "attr:DataBoundComponent.updateOperation":{
        ref:"attr:DataBoundComponent.updateOperation",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} this component should use when performing update operations.",
        name:"updateOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "operations"
        ]
    },
    "method:ColorPicker.getBlue":{
        ref:"method:ColorPicker.getBlue",
        flags:"",
        description:" Returns the Blue element of the currently-selected color, as an integer from 0-255\n",
        name:"getBlue",
        seeAlso:[
            {
                ref:"method:ColorPicker.setBlue",
                description:null
            }
        ],
        returns:{
            description:"blue color component",
            type:"int"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "group:toolsDeployment":{
        ref:"group:toolsDeployment",
        title:"Tools Deployment",
        treeLocation:[
            "Concepts/Deploying SmartClient"
        ],
        refs:[
        ],
        description:"SmartClient provides a number of tools:\n <ul> \n <li> ${isc.DocUtils.linkForRef('group:adminConsole')}\n <li> ${isc.DocUtils.linkForRef('group:visualBuilder')}\n <li> ${isc.DocUtils.linkForRef('group:balsamiqImport')}\n </ul>\n <P>\n To deploy the tools simply copy the <code>tools</code> directory into your deployment. There are no\n additional settings to configure.\n <P>\n <h4>Security</h4>\n <P>\n These tools are, by default, available to anyone and enable access to all \"BuiltinRPCs\"\n and the Filesystem DataSource so they should only be deployed into a trusted environment.\n Alternately, the tools can easily be restricted to administrators or end users\n by protecting the <code>tools</code> path with normal authentication and authorization\n mechanisms on the web server.\n <P>\n More fine-grained access control can be installed by updating each tool's <code>xxxOperations.jsp</code>\n file (ex. tools/adminConsoleOperations.jsp, tools/visualBuilder/vbOperations.jsp). These files are\n responsible for enabling builtinRPC and FileSystem DataSource access. Individual\n BuiltinRPC methods can be restricted, for example, such that some users are allowed to load screens but\n not save any changes. See comments within each file for an example of restricting this access.\n See the server-side Javadocs for methods provided by <code>BuiltinRPC</code>.\n <P>\n Note that the tools provides a \"live\" interface to the provided DataSources. In\n other words, if a DataSource supports saving and a tool enables editing, real saves will be\n initiated.",
        name:"toolsDeployment",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateChooser.nextYearIconRTL":{
        ref:"attr:DateChooser.nextYearIconRTL",
        flags:"IR",
        description:"Icon for the next year button if ${isc.DocUtils.linkForRef('classMethod:Page.isRTL')} is true.\n If not set, and the page is in RTL mode, the ${isc.DocUtils.linkForRef('attr:DateChooser.nextYearIcon')} will be\n used in place of the ${isc.DocUtils.linkForRef('attr:DateChooser.prevYearIcon')} and vice versa.",
        name:"nextYearIconRTL",
        seeAlso:[
            {
                ref:"attr:DateChooser.showDoubleYearIcon",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "group:taskInputExpression":{
        ref:"group:taskInputExpression",
        title:"Task Input Expressions",
        refs:[
        ],
        description:"In some tasks, the input to the task needs to be passed to a service being called by the\n task, to a user-visible form, or other consumers of the input data. \n A TaskInputExpression can be used to do this declaratively.\n <P>\n A TaskInputExpression is a String prefixed with either \"$input\" or \"$inputRecord\",\n followed by an optional dot-separated hierarchical path, which can specify either an\n atomic data value (String, Number) or Record from the input data.  For example, if the\n ${isc.DocUtils.linkForRef('attr:Process.state')} represented in JSON were:\n <pre>\n {\n    orderId:5,\n    orderItems: [\n       {name:\"Pencils\", quantity:3, itemId:2344}\n    ],\n    orderUser: { name:\"Henry Winkle\", address:\"...\", ... }\n }\n </pre>\n .. and a task specified an <code>inputField</code> of \"orderId\" and an inputFieldList of\n \"orderItems\",\"orderUser\", then:\n <ul>\n <li>$input is the value 5\n <li>$inputRecord.orderUser.name is \"Henry Winkle\"\n <li>$inputRecord.orderItems[0] is the first orderItems Record ({name:\"Pencils\", ... })\n </ul>",
        name:"taskInputExpression",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.datetimeFormatter":{
        ref:"attr:ListGrid.datetimeFormatter",
        flags:"IRW",
        description:"Display format to use for fields specified as type 'datetime'.  Default is to use the\n system-wide default date time format, configured via\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat')}.  Specify any\n valid ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to change the display format for datetimes used by this grid.\n <smartclient>\n May be specified as a function. If specified as  a function, this function will be executed in the scope of the Date\n and should return the formatted string.\n </smartclient>\n <P>\n May also be specified at the field level via\n ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter')}\n <P>\n If this field is editable the dateFormatter will also be passed to the editor created\n to edit this field as ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter','dateFormatter')}.\n In this case you may also need to set ${isc.DocUtils.linkForRef('attr:ListGrid.dateInputFormat')}.",
        name:"datetimeFormatter",
        seeAlso:[
            {
                ref:"attr:ListGridField.dateFormatter",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "method:CubeGrid.hiliteCellList":{
        ref:"method:CubeGrid.hiliteCellList",
        flags:"",
        description:"      Apply a hilite to an array of cells.\n\n      <br><i>methodType</i> action\n",
        name:"hiliteCellList",
        seeAlso:[
        ],
        params:[
            {
                description:"cells to hilite",
                optional:false,
                name:"cellObjList",
                defaultValue:null,
                type:"Array of cell objects"
            },
            {
                description:"ID of hilite to apply to cells",
                optional:false,
                name:"hiliteID",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if the cells were successfully hilited.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "hiliting"
        ]
    },
    "method:ResultTree.getOpenState":{
        ref:"method:ResultTree.getOpenState",
        flags:"",
        description:" Returns a snapshot of the current open state of this tree's data as\n a ${isc.DocUtils.linkForRef('type:TreeGridOpenState')} object.\n <P>\n This object can be passed to ${isc.DocUtils.linkForRef('method:ResultTree.setOpenState')} or\n ${isc.DocUtils.linkForRef('method:TreeGrid.setOpenState')} to open the same set of folders\n within the tree's data (assuming the nodes are still present in the data).\n",
        name:"getOpenState",
        seeAlso:[
            {
                ref:"method:ResultTree.setOpenState",
                description:null
            }
        ],
        returns:{
            description:"current open state for the grid.",
            type:"TreeGridOpenState"
        },
        type:"method",
        definingClass:"class:ResultTree",
        groups:[
            "viewState"
        ]
    },
    "method:Canvas.getVisibleHeight":{
        ref:"method:Canvas.getVisibleHeight",
        flags:"A",
        description:"      Return the visible height of the Canvas.\n\n",
        name:"getVisibleHeight",
        seeAlso:[
        ],
        returns:{
            description:"visible height in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:MultiGroupDialog.cancelButton":{
        ref:"attr:MultiGroupDialog.cancelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing the mechanism for closing this\n Dialog without accepting the current group configuration.  The passed callback is fired \n with a single null parameter, indicating that the operation was cancelled.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.cancelButtonProperties</code> and \n <code>multiGroupPanel.cancelButtonDefaults</code>.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "attr:MiniDateRangeItem.dateDisplayFormat":{
        ref:"attr:MiniDateRangeItem.dateDisplayFormat",
        flags:"IR",
        description:"Format for displaying dates to the user.  \n <P>\n If this attribute is unset, the display value is formatted intelligently according to the\n dates involved.  For example, if both dates appear in the same month, the value will be \n formatted as \n <P><code>Month date1 - date2, Year</code> \n <P>and, if in different months of the same year, \n <P><code>Month1 date1 - Month2 date2, Year</code>.\n <P>If either date-value is unset, the display-value is formatted according to \n ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.fromDateOnlyPrefix','fromDateOnlyPrefix')} and \n ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.toDateOnlyPrefix','toDateOnlyPrefix')}.",
        name:"dateDisplayFormat",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "method:ColorPicker.getSaturation":{
        ref:"method:ColorPicker.getSaturation",
        flags:"",
        description:" Returns the Saturation of the currently-selected color, as an integer from 0-240\n",
        name:"getSaturation",
        seeAlso:[
            {
                ref:"method:ColorPicker.setSaturation",
                description:null
            }
        ],
        returns:{
            description:"saturation value",
            type:"int"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "method:ListGrid.transferSelectedData":{
        ref:"method:ListGrid.transferSelectedData",
        flags:"",
        description:" Simulates a drag / drop type transfer of the selected records in some other component to this\n component, without requiring any user interaction.  This method acts on the dropped records \n exactly as if they had been dropped in an actual drag / drop interaction, including any \n special databound behavior invoked by calling\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.getDropValues','getDropValues')} for each dropped record.\n <P>\n To transfer <b>all</b> data in, for example, a ${isc.DocUtils.linkForRef('class:ListGrid')}, call grid.selection.selectAll() first.\n <P>\n Note that drag/drop type transfers of records between components are asynchronous operations:\n SmartClient may need to perform server turnarounds to establish whether dropped records \n already exist in the target component.  Therefore, it is possible to issue a call to \n transferSelectedData() and/or the ${isc.DocUtils.linkForRef('method:ListGrid.drop','drop()')} method of a databound \n component whilst a transfer is still active.  When this happens, SmartClient adds the \n second and subsequent transfer requests to a queue and runs them one after the other.  If \n you want to be notified when a transfer process has actually completed, either provide a \n callback to this method or implement ${isc.DocUtils.linkForRef('method:DataBoundComponent.dropComplete')}.\n <P>\n See the ${isc.DocUtils.linkForRef('group:dragging')} documentation for an overview of list grid drag/drop data\n transfer.\n \n",
        name:"transferSelectedData",
        seeAlso:[
        ],
        params:[
            {
                description:"source component from which the records will be transferred",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"DataBoundComponent"
            },
            {
                description:"target index (drop position) of the rows within this grid.",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"optional callback to be fired when the transfer process has                        completed.  The callback will be passed a single parameter \"records\",\n                       the list of records actually transferred to this component.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListMove')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dragdrop"
        ]
    },
    "group:appearance":{
        ref:"group:appearance",
        refs:[
            "method:CubeGrid.getCellStyle",
            "method:Window.setStatus",
            "method:Window.setSrc",
            "method:Window.centerInPage",
            "method:Canvas.setPadding",
            "method:Canvas.setBackgroundColor",
            "method:Canvas.setBackgroundImage",
            "method:Canvas.setBorder",
            "method:Canvas.setClassName",
            "method:Canvas.setStyleName",
            "method:Canvas.setGroupTitle",
            "method:DetailViewerField.getCellStyle",
            "method:DetailViewer.getCellCSSText",
            "method:DetailViewer.getCellStyle",
            "method:GridRenderer.getCellStyle",
            "method:GridRenderer.cellIsEnabled",
            "method:GridRenderer.refreshCellStyle",
            "method:GridRenderer.refreshCell",
            "method:GridRenderer.refreshRow",
            "method:ListGrid.getCellStyle",
            "method:ListGrid.refreshCellStyle",
            "method:ListGridField.getFieldTitle",
            "method:ListGridField.showIf",
            "method:ListGridField.getSummaryTitle",
            "method:ListGrid.refreshCell",
            "method:ListGrid.refreshRow",
            "method:StatefulCanvas.setState",
            "method:StatefulCanvas.setTitle",
            "method:Button.setTitle",
            "method:Button.setState",
            "method:Img.setSrc",
            "method:Img.resetSrc",
            "method:StretchImg.setState",
            "method:StretchImg.setSrc",
            "method:ImgButton.setTitle",
            "method:ImgButton.setState",
            "method:StretchImgButton.setTitle",
            "method:StretchImgButton.setState",
            "method:FormItem.setCellStyle",
            "method:TextItem.getHint",
            "method:ButtonItem.setTitle",
            "attr:DataSourceField.dateFormatter",
            "attr:DataSourceField.timeFormatter",
            "attr:DataSourceField.decimalPrecision",
            "attr:DataSourceField.decimalPad",
            "attr:DataSourceField.precision",
            "attr:DataSourceField.emptyDisplayValue",
            "attr:Calendar.baseStyle",
            "attr:Calendar.dayHeaderBaseStyle",
            "attr:Calendar.dayBodyBaseStyle",
            "attr:Calendar.otherDayHeaderBaseStyle",
            "attr:Calendar.otherDayBodyBaseStyle",
            "attr:Calendar.otherDayBlankStyle",
            "attr:Calendar.minimumDayHeight",
            "attr:Calendar.selectedCellStyle",
            "attr:Calendar.eventWindowStyle",
            "attr:Calendar.workdayBaseStyle",
            "attr:Calendar.eventWindowStyleField",
            "attr:Calendar.weekEventBorderOverlap",
            "attr:CubeGrid.styleName",
            "attr:CubeGrid.bodyStyleName",
            "attr:CubeGrid.baseStyle",
            "attr:CubeGrid.alternateRecordStyles",
            "attr:CubeGrid.innerHeaderBaseStyle",
            "attr:CubeGrid.colHeaderBaseStyle",
            "attr:CubeGrid.rowHeaderBaseStyle",
            "attr:ImgTab.capSize",
            "attr:Window.modalMask",
            "attr:Window.showModalMask",
            "attr:Window.modalMaskOpacity",
            "attr:Window.modalMaskStyle",
            "attr:Window.autoCenter",
            "attr:Window.showBody",
            "attr:Window.bodyStyle",
            "attr:Window.bodyColor",
            "attr:Window.hiliteBodyColor",
            "attr:Window.items",
            "attr:Window.src",
            "attr:Window.contentsType",
            "attr:Window.bodyConstructor",
            "attr:Window.bodyDefaults",
            "attr:Window.contentLayout",
            "attr:Window.autoSize",
            "attr:Window.showHeader",
            "attr:Window.showHeaderBackground",
            "attr:Window.headerStyle",
            "attr:Window.headerSrc",
            "attr:Window.hiliteHeaderStyle",
            "attr:Window.hiliteHeaderSrc",
            "attr:Window.showTitle",
            "attr:Window.title",
            "attr:Window.headerLabelDefaults",
            "attr:Window.showHeaderIcon",
            "attr:Window.headerIconDefaults",
            "attr:Window.showCloseButton",
            "attr:Window.showMinimizeButton",
            "attr:Window.minimized",
            "attr:Window.defaultMinimizeHeight",
            "attr:Window.minimizeHeight",
            "attr:Window.animateMinimize",
            "attr:Window.minimizeTime",
            "attr:Window.minimizeAcceleration",
            "attr:Window.maximized",
            "attr:Window.showMaximizeButton",
            "attr:Window.showFooter",
            "attr:Window.footerHeight",
            "attr:Window.showStatusBar",
            "attr:Window.showResizer",
            "attr:Window.status",
            "attr:Dialog.defaultWidth",
            "attr:Dialog.styleName",
            "attr:Dialog.showToolbar",
            "attr:Dialog.autoFocus",
            "attr:Canvas.autoShowParent",
            "attr:Canvas.visibility",
            "attr:Canvas.hideUsingDisplayNone",
            "attr:Canvas.className",
            "attr:Canvas.styleName",
            "attr:Canvas.margin",
            "attr:Canvas.padding",
            "attr:Canvas.border",
            "attr:Canvas.backgroundColor",
            "attr:Canvas.backgroundImage",
            "attr:Canvas.backgroundRepeat",
            "attr:Canvas.backgroundPosition",
            "attr:Canvas.groupBorderCSS",
            "attr:Canvas.groupLabelStyleName",
            "attr:Canvas.groupLabelBackgroundColor",
            "attr:Canvas.groupTitle",
            "attr:DetailViewerField.timeFormatter",
            "attr:DetailViewerField.decimalPrecision",
            "attr:DetailViewerField.decimalPad",
            "attr:DetailViewer.recordsPerBlock",
            "attr:DetailViewer.blockSeparator",
            "attr:DetailViewer.showEmptyField",
            "attr:DetailViewerField.emptyCellValue",
            "attr:DetailViewer.emptyCellValue",
            "attr:DetailViewer.styleName",
            "attr:DetailViewer.blockStyle",
            "attr:DetailViewer.labelStyle",
            "attr:DetailViewer.cellStyle",
            "attr:DetailViewer.headerStyle",
            "attr:DetailViewer.separatorStyle",
            "attr:DetailViewer.datetimeFormatter",
            "attr:DetailViewer.timeFormatter",
            "attr:ListGrid.styleName",
            "attr:ListGridField.type",
            "attr:ListGridField.title",
            "attr:ListGridField.hidden",
            "attr:ListGridField.canHide",
            "attr:ListGridField.summaryTitle",
            "attr:ListGridField.width",
            "attr:ListGridField.align",
            "attr:ListGridField.headerBaseStyle",
            "attr:ListGridField.headerTitleStyle",
            "attr:ListGridField.headerTitle",
            "attr:HeaderSpan.headerBaseStyle",
            "attr:HeaderSpan.headerTitleStyle",
            "attr:ListGridField.cellAlign",
            "attr:ListGridField.baseStyle",
            "attr:ListGridField.timeFormatter",
            "attr:ListGridField.decimalPrecision",
            "attr:ListGridField.decimalPad",
            "attr:ListGrid.bodyBackgroundColor",
            "attr:ListGrid.bodyStyleName",
            "attr:ListGrid.leaveScrollbarGap",
            "attr:ListGrid.datetimeFormatter",
            "attr:ListGrid.timeFormatter",
            "attr:ListGrid.baseStyle",
            "attr:ListGrid.editFailedBaseStyle",
            "attr:ListGrid.editFailedCSSText",
            "attr:ListGrid.editPendingBaseStyle",
            "attr:ListGrid.editPendingCSSText",
            "attr:ListGrid.recordBaseStyleProperty",
            "attr:ListGrid.frozenBaseStyle",
            "attr:ListGrid.showRollOver",
            "attr:ListGrid.selectionType",
            "attr:ListGrid.selectionProperty",
            "attr:ListGrid.removedCSSText",
            "attr:ListGrid.showHeader",
            "attr:ListGrid.headerBarStyle",
            "attr:ListGrid.headerBackgroundColor",
            "attr:ListGrid.headerButtonConstructor",
            "attr:ListGrid.headerBaseStyle",
            "attr:ListGrid.headerTitleStyle",
            "attr:ListGrid.frozenHeaderBaseStyle",
            "attr:ListGrid.frozenHeaderTitleStyle",
            "attr:ListGrid.headerButtonDefaults",
            "attr:ListGrid.headerButtonProperties",
            "attr:ListGrid.clipHeaderTitles",
            "attr:ListGrid.sorterConstructor",
            "attr:ListGrid.sorterButtonTitle",
            "attr:ListGrid.sorterDefaults",
            "attr:ListGrid.sorterProperties",
            "attr:ListGrid.showSortArrow",
            "attr:ListGrid.skinImgDir",
            "attr:ListGrid.sortAscendingImage",
            "attr:ListGrid.sortDescendingImage",
            "attr:TreeGrid.selectionProperty",
            "attr:TreeGrid.indentSize",
            "attr:TreeGrid.extraIconGap",
            "attr:RecordEditor.baseStyle",
            "attr:Menu.bodyStyleName",
            "attr:Menu.iconBodyStyleName",
            "attr:MenuButton.showMenuOnRollOver",
            "attr:MenuButton.rollOverMenuHideDelay",
            "attr:TileLayout.animateTileChange",
            "attr:TileGrid.selectionType",
            "attr:TileGrid.animateTileChange",
            "attr:TileGrid.styleName",
            "attr:StatefulCanvas.align",
            "attr:StatefulCanvas.valign",
            "attr:Button.align",
            "attr:Button.valign",
            "attr:Img.src",
            "attr:Img.activeAreaHTML",
            "attr:Img.imageType",
            "attr:StretchImg.vertical",
            "attr:StretchImg.capSize",
            "attr:StretchImg.src",
            "attr:StretchImg.hSrc",
            "attr:StretchImg.vSrc",
            "attr:StretchImg.imageType",
            "attr:StretchImg.items",
            "attr:StretchImg.ignoreRTL",
            "attr:Progressbar.percentDone",
            "attr:Progressbar.length",
            "attr:Progressbar.breadth",
            "attr:Progressbar.vertical",
            "attr:Progressbar.src",
            "attr:Toolbar.vertical",
            "attr:Toolbar.buttonConstructor",
            "attr:Toolbar.buttonDefaults",
            "attr:ImgButton.align",
            "attr:ImgButton.valign",
            "attr:ImgButton.src",
            "attr:StretchImgButton.align",
            "attr:StretchImgButton.valign",
            "attr:StretchImgButton.vertical",
            "attr:StretchImgButton.capSize",
            "attr:ToolStrip.verticalStyleName",
            "attr:ToolStrip.vertical",
            "attr:IconButton.align",
            "attr:IconButton.valign",
            "attr:Splitbar.src",
            "attr:Splitbar.hSrc",
            "attr:Splitbar.vSrc",
            "attr:Splitbar.capSize",
            "attr:ImgSplitbar.src",
            "attr:DateChooser.firstDayOfWeek",
            "attr:DynamicForm.longTextEditorThreshold",
            "attr:DynamicForm.longTextEditorType",
            "attr:DynamicForm.errorOrientation",
            "attr:FormItem.type",
            "attr:FormItem.editorType",
            "attr:FormItem.dateFormatter",
            "attr:FormItem.timeFormatter",
            "attr:FormItem.decimalPrecision",
            "attr:FormItem.decimalPad",
            "attr:FormItem.format",
            "attr:FormItem.visible",
            "attr:FormItem.disabled",
            "attr:FormItem.align",
            "attr:FormItem.textAlign",
            "attr:FormItem.showErrorIcon",
            "attr:FormItem.showErrorText",
            "attr:FormItem.showErrorStyle",
            "attr:FormItem.errorOrientation",
            "attr:FormItem.hint",
            "attr:FormItem.showHint",
            "attr:FormItem.showFocused",
            "attr:FormItem.showDisabled",
            "attr:FormItem.showRTL",
            "attr:FormItem.cellStyle",
            "attr:FormItem.hintStyle",
            "attr:FormItem.textBoxStyle",
            "attr:FormItem.pickerIconStyle",
            "attr:FormItem.controlStyle",
            "attr:FormItem.editPendingCSSText",
            "attr:FormItem.showFocusedErrorState",
            "attr:FormItem.cellClassName",
            "attr:FormItem.errorCellClassName",
            "attr:FormItem.hintClassName",
            "attr:TextItem.width",
            "attr:TextItem.height",
            "attr:TextItem.textBoxStyle",
            "attr:TextItem.showHintInField",
            "attr:BlurbItem.showTitle",
            "attr:BlurbItem.colSpan",
            "attr:BlurbItem.textBoxStyle",
            "attr:BlurbItem.wrap",
            "attr:BlurbItem.clipValue",
            "attr:ButtonItem.height",
            "attr:ButtonItem.baseStyle",
            "attr:ButtonItem.icon",
            "attr:ButtonItem.showTitle",
            "attr:PickListMenu.styleName",
            "attr:PickListMenu.bodyStyleName",
            "attr:SelectItem.multiple",
            "attr:SelectOtherItem.separatorTitle",
            "attr:SelectOtherItem.separatorValue",
            "attr:SelectOtherItem.otherTitle",
            "attr:SelectOtherItem.otherValue",
            "attr:SelectItem.textBoxStyle",
            "attr:SelectItem.controlStyle",
            "attr:SelectItem.pickerIconStyle",
            "attr:SelectItem.showFocused",
            "attr:SelectItem.showHintInField",
            "attr:SelectItem.escapeHTML",
            "attr:CheckboxItem.titleStyle",
            "attr:CheckboxItem.textBoxStyle",
            "attr:CheckboxItem.checkedImage",
            "attr:CheckboxItem.uncheckedImage",
            "attr:CheckboxItem.partialSelectedImage",
            "attr:CheckboxItem.unsetImage",
            "attr:NativeCheckboxItem.textBoxStyle",
            "attr:HeaderItem.defaultValue",
            "attr:HeaderItem.showTitle",
            "attr:HeaderItem.textBoxStyle",
            "attr:HeaderItem.colSpan",
            "attr:HeaderItem.startRow",
            "attr:HeaderItem.endRow",
            "attr:HeaderItem.align",
            "attr:HiddenItem.showTitle",
            "attr:HiddenItem.colSpan",
            "attr:HiddenItem.rowSpan",
            "attr:StaticTextItem.wrap",
            "attr:StaticTextItem.clipValue",
            "attr:StaticTextItem.textBoxStyle",
            "attr:StaticTextItem.outputAsHTML",
            "attr:StaticTextItem.dateFormatter",
            "attr:StaticTextItem.escapeHTML",
            "attr:RadioGroupItem.vertical",
            "attr:RadioGroupItem.textBoxStyle",
            "attr:RadioGroupItem.wrap",
            "attr:DateItem.showHintInField",
            "attr:DateItem.textAlign",
            "attr:DateItem.startDate",
            "attr:DateItem.endDate",
            "attr:DateItem.centuryThreshold",
            "attr:SpacerItem.showTitle",
            "attr:SpacerItem.width",
            "attr:SpacerItem.height",
            "attr:RowSpacerItem.showTitle",
            "attr:RowSpacerItem.colSpan",
            "attr:RowSpacerItem.startRow",
            "attr:RowSpacerItem.endRow",
            "attr:TextAreaItem.wrap",
            "attr:TextAreaItem.width",
            "attr:TextAreaItem.height",
            "attr:TextAreaItem.textBoxStyle",
            "attr:TextAreaItem.showHintInField",
            "attr:TimeItem.showHintInField",
            "attr:ToolbarItem.showTitle",
            "attr:ToolbarItem.startRow",
            "attr:ToolbarItem.endRow",
            "attr:ToolbarItem.colSpan",
            "attr:ToolbarItem.buttonBaseStyle",
            "attr:UploadItem.textBoxStyle",
            "attr:ComboBoxItem.showHintInField",
            "attr:RelativeDateItem.startDate",
            "attr:RelativeDateItem.endDate",
            "attr:RelativeDateItem.centuryThreshold",
            "attr:MiniDateRangeItem.textBoxStyle",
            "type:Alignment",
            "type:VerticalAlignment",
            "type:Direction",
            "type:ImageStyle",
            "type:BackgroundRepeat",
            "type:CSSStyleName",
            "type:CSSColor",
            "type:SortArrow",
            "type:ListGridComponent",
            "type:FormItemBaseStyle"
        ],
        description:"Properties defining an object's appearance",
        name:"appearance",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DetailViewerField.canExport":{
        ref:"attr:DetailViewerField.canExport",
        flags:"IR",
        description:"Dictates whether the data in this field be exported.  Explicitly set this\n  to false to prevent exporting.  Has no effect if the underlying \n  ${isc.DocUtils.linkForRef('attr:DataSourceField.canExport','dataSourceField')} is explicitly set to \n  canExport: false.",
        name:"canExport",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:MultiSortPanel.levelUpButton":{
        ref:"attr:MultiSortPanel.levelUpButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n sort-levels up in the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.levelUpButtonProperties</code> and \n <code>multiSortPanel.levelUpButtonDefaults</code>.",
        name:"levelUpButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "attr:ListGrid.discardEditsOnHideField":{
        ref:"attr:ListGrid.discardEditsOnHideField",
        flags:"IRW",
        description:"If a user is editing a ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','canEdit:true')} listGrid, and they hide\n a field while the editor is showing, should we discard any edits in the edit row for\n the field being hidden?\n <P>\n Default behavior is to discard the edits - set this flag to false to preserve edits\n <P>\n Note that the ${isc.DocUtils.linkForRef('attr:ListGrid.dropCriteriaOnHideField')} attribute allows developers to \n control behavior for filter-editor criteria when a field is hidden.",
        name:"discardEditsOnHideField",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:TabBar.baseLineThickness":{
        ref:"attr:TabBar.baseLineThickness",
        flags:"IR",
        description:"Thickness of the baseLine, in pixels.  This should be set to match the media specified\n by ${isc.DocUtils.linkForRef('attr:TabBar.baseLineSrc')}.  The baseLineThickness also determines the degree of overlap with\n the TabSet's paneContainer when using decorative edges - see ${isc.DocUtils.linkForRef('attr:TabSet.paneContainer')}\n for details.",
        name:"baseLineThickness",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:TabBar",
        groups:[
            "baseLine"
        ]
    },
    "attr:DSRequestModifier.end":{
        ref:"attr:DSRequestModifier.end",
        flags:"IR",
        description:"The value to use for the end of a range.  This property only applies to criteria, and it \n only applies to operators of type \"rangeCheck\" - for example, the \"between\" operator.\n It is ignored if specified as part of a ${isc.DocUtils.linkForRef('attr:OperationBinding.values')} attribute, or for \n an inapplicable operator type.\n <p>\n The same rules apply to this attribute as apply to ${isc.DocUtils.linkForRef('attr:DSRequestModifier.value','value')}, so\n you can use Velocity expressions if you have a Power or better license.",
        name:"end",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"object:DSRequestModifier"
    },
    "method:FormItem.getValueIcon":{
        ref:"method:FormItem.getValueIcon",
        flags:"",
        description:" If specified this stringMethod allows the developer to specify the image source for an \n icon to be displayed for the current form item value.\n <P>\n Takes precedence over ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')}\n\n",
        name:"getValueIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"value of the item for which an item should be returned.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "attr:DataBoundComponent.fieldNamingStrategy":{
        ref:"attr:DataBoundComponent.fieldNamingStrategy",
        flags:"IRW",
        description:"The strategy to use when generating names for new fields in this component.  The default \n strategy, \"simple\", combines the field-type with an index maintained by field-type and \n component instance.  For example, \"formulaField1\".",
        name:"fieldNamingStrategy",
        seeAlso:[
        ],
        valueType:"FieldNamingStrategy",
        defaultValue:"\"simple\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "method:DynamicForm.getTitleOrientation":{
        ref:"method:DynamicForm.getTitleOrientation",
        flags:"A",
        description:" Return the orientation of the title for a specific item or the default title orientation if\n no item is passed.\n \n",
        name:"getTitleOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"item to check",
                optional:true,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"orientation of the title, or null if an item is passed and has no                            title",
            type:"TitleOrientation"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:ResultSet.criteriaPolicy":{
        ref:"attr:ResultSet.criteriaPolicy",
        flags:"IRWA",
        description:"Decides under what conditions the cache should be dropped when the ${isc.DocUtils.linkForRef('type:Criteria')}\n changes.",
        name:"criteriaPolicy",
        seeAlso:[
            {
                ref:"type:Criteria",
                description:null
            },
            {
                ref:"attr:DataSource.criteriaPolicy",
                description:null
            }
        ],
        valueType:"CriteriaPolicy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet"
    },
    "attr:TreeGrid.indentSize":{
        ref:"attr:TreeGrid.indentSize",
        flags:"IRW",
        description:"The amount of indentation (in pixels) to add to a node's icon/title for each level\n down in this tree's hierarchy.\n <p>\n This value is ignored when ${isc.DocUtils.linkForRef('attr:TreeGrid.showConnectors','showConnectors')} is\n <code>true</code> because fixed-size images are used to render the connectors.",
        name:"indentSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:LoginDialog.errorMessage":{
        ref:"attr:LoginDialog.errorMessage",
        flags:"IR",
        description:"Specifies the default error message displayed on the login form when\n authentication fails.",
        name:"errorMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"Dialog.LOGIN_ERROR_MESSAGE",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:TabSet.locateTabsBy":{
        ref:"attr:TabSet.locateTabsBy",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('classMethod:AutoTest.getElement')} is used to parse locator strings generated by\n link{isc.AutoTest.getLocator()}, how should tabs within this tabset be identified?\n By default if tab has a specified ${isc.DocUtils.linkForRef('attr:Tab.ID')} this will always be used.\n For tabs with no ID, the following options are available:\n <ul>\n <li><code>\"title\"</code> use the title as an identifier</li>\n <li><code>\"index\"</code> use the index of the tab in the tabset as an identifier</li>\n </ul>\n \n If unset, and the tab has no specified ID, default behavior is to\n identify by title (if available), otherwise by index.",
        name:"locateTabsBy",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "autoTest"
        ]
    },
    "attr:GridRenderer.recordCustomStyleProperty":{
        ref:"attr:GridRenderer.recordCustomStyleProperty",
        flags:"IRW",
        description:"Denotes the name of a property that can be set on records to display a custom style.\n For example if this property is set to <code>\"customStyle\"</code>, setting \n <code>record.customStyle</code> to a css styleName will cause the record in question to\n render out with that styling applied to it.  Note that this will be a static \n style - it will not be modified as the state of the record (selected / over etc) changes.",
        name:"recordCustomStyleProperty",
        seeAlso:[
            {
                ref:"method:GridRenderer.getCellStyle",
                description:null
            }
        ],
        valueType:"\"customStyle\"",
        defaultValue:"string",
        type:"attr",
        definingClass:"class:GridRenderer"
    },
    "attr:DynamicForm.readOnlyDisplay":{
        ref:"attr:DynamicForm.readOnlyDisplay",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DynamicForm.canEdit')} is set to <code>false</code>, how should the items in this\n form be displayed to the user?\n <p>\n Can be overridden via ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay')} on individual form items.",
        name:"readOnlyDisplay",
        setter:[
            "setReadOnlyDisplay"
        ],
        seeAlso:[
        ],
        valueType:"ReadOnlyDisplayAppearance",
        defaultValue:"\"readOnly\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "readOnly"
        ]
    },
    "attr:DynamicForm.fixedColWidths":{
        ref:"attr:DynamicForm.fixedColWidths",
        flags:"IRW",
        description:"If true, we ensure that column widths are at least as large as you specify them.  This\n means that if any single column overflows (due to, eg, a long unbreakable title),\n the form as a whole overflows.\n <P>\n If false, columns will have their specified sizes as long as no column overflows.  If\n any column overflows, space will be taken from any other columns that aren't filling the\n available room, until there is no more free space, in which case the form as a whole\n overflows.",
        name:"fixedColWidths",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "attr:TreeGrid.cantDragIntoSelfMessage":{
        ref:"attr:TreeGrid.cantDragIntoSelfMessage",
        flags:"IR",
        description:"Message displayed when user attempts to drop a dragged node onto itself.",
        name:"cantDragIntoSelfMessage",
        seeAlso:[
            {
                ref:"attr:TreeGrid.canDragRecordsOut",
                description:null
            },
            {
                ref:"attr:TreeGrid.canAcceptDroppedRecords",
                description:null
            },
            {
                ref:"attr:TreeGrid.canReorderRecords",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"You can't drag an item into itself.\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.valueIconSize":{
        ref:"attr:ListGrid.valueIconSize",
        flags:"IRW",
        description:"Default width and height of value icons for this ListGrid.\n Can be overridden at the listGrid level via explicit ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconHeight')}, or at the field level via ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconSize')},\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconWidth')} and {ListGridField.valueIconHeight}",
        name:"valueIconSize",
        seeAlso:[
            {
                ref:"attr:ListGrid.valueIconWidth",
                description:null
            },
            {
                ref:"attr:ListGrid.valueIconHeight",
                description:null
            },
            {
                ref:"attr:ListGridField.valueIconSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:Window.header":{
        ref:"attr:Window.header",
        flags:"R",
        description:"Header for the Window, based on an HLayout. The header contains the title and some standard\n controls for the window, which may be configured via ${isc.DocUtils.linkForRef('attr:Window.headerControls')}.",
        name:"header",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:JSONEncoder.prettyPrint":{
        ref:"attr:JSONEncoder.prettyPrint",
        flags:"IR",
        description:"Whether to add indentation to the returned JSON string.  This makes the returned JSON much\n easier to read but adds size.  Note that when delivering JSON responses compressed, the size\n difference between prettyPrinted JSON and normal JSON is negligible.",
        name:"prettyPrint",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:SplitPane.showResizeBars":{
        ref:"attr:SplitPane.showResizeBars",
        flags:"IR",
        description:"If enabled, the <code>SplitPane</code> will add resize bars between the\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')} and ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')}\n when these panes are shown side-by-side, and between the ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')}\n and ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')} in ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode:\"desktop\"')}.",
        name:"showResizeBars",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:MetricSettings.setFilled":{
        ref:"method:MetricSettings.setFilled",
        flags:"",
        description:" Method to change ${isc.DocUtils.linkForRef('attr:MetricSettings.filled','filled')}.\n Use null to apply a default value for the current ${isc.DocUtils.linkForRef('type:ChartType','chartType')}.\n\n",
        name:"setFilled",
        seeAlso:[
        ],
        params:[
            {
                description:"new value",
                optional:false,
                name:"filled",
                defaultValue:null,
                type:"boolean or null"
            }
        ],
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "attr:ListPropertiesDialog.listPropertiesPane":{
        ref:"attr:ListPropertiesDialog.listPropertiesPane",
        flags:"R",
        description:"The ${isc.DocUtils.linkForRef('class:ListPropertiesPane')} contained by this ListPropertiesDialog.",
        name:"listPropertiesPane",
        seeAlso:[
        ],
        valueType:"AutoChild ListPropertiesPane",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesDialog"
    },
    "method:FacetValue.getCellValue":{
        ref:"method:FacetValue.getCellValue",
        flags:"",
        description:" Callout to determine custom value to display for cells displayed for this facetValue.\n <P>\n Can only be set on the ${isc.DocUtils.linkForRef('attr:CubeGrid.metricFacetId','metric facet')} or, if no metric facet\n is specified, on the innermost column facet.\n <P>\n <b>Note:</b>  This method is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.\n\n",
        name:"getCellValue",
        seeAlso:[
        ],
        params:[
            {
                description:"this facetValue's CubeGrid",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"CubeGrid"
            },
            {
                description:"cell record",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            },
            {
                description:"row value for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column value for the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"HTML to display",
            type:"string"
        },
        type:"method",
        definingClass:"class:FacetValue"
    },
    "method:IconMenuButton.showMenu":{
        ref:"method:IconMenuButton.showMenu",
        flags:"",
        description:" Shows this button's ${isc.DocUtils.linkForRef('attr:IconMenuButton.menu')}.  Called automatically when a user clicks the \n ${isc.DocUtils.linkForRef('attr:IconButton.menuIconSrc','menuIcon')}.\n\n",
        name:"showMenu",
        seeAlso:[
        ],
        returns:{
            description:"true if a menu was shown",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:IconMenuButton"
    },
    "classMethod:Page.getUnsupportedBrowserPromptString":{
        ref:"classMethod:Page.getUnsupportedBrowserPromptString",
        flags:"",
        description:" Returns the text for the prompt shown to user from ${isc.DocUtils.linkForRef('classMethod:Page.checkBrowserAndRedirect')}\n if they are accessing this page in an unsupported\n browser and ${isc.DocUtils.linkForRef('classAttr:Page.unsupportedBrowserAction')} is set to <code>\"confirm\"</code>. May be\n overridden to return a different message.\n",
        name:"getUnsupportedBrowserPromptString",
        seeAlso:[
            {
                ref:"classMethod:Page.checkBrowserAndRedirect",
                description:null
            }
        ],
        returns:{
            description:"Unsupported browser message.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Class.logError":{
        ref:"classMethod:Class.logError",
        flags:"",
        description:" Log a message at \"error\" priority\n \n",
        name:"logError",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:ValuesManager.getFieldErrors":{
        ref:"method:ValuesManager.getFieldErrors",
        flags:"",
        description:" Returns any validation errors for some field in this valuesManager.\n Errors will be returned as either a string (a single error message), or an array \n of strings. If no errors are present, will return null.\n",
        name:"getFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"fieldName to check for errors",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"error messages for the field passed in",
            type:"string | array of strings"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "attr:ListGridField.canToggle":{
        ref:"attr:ListGridField.canToggle",
        flags:"IRWA",
        description:"Allows a boolean or ${isc.DocUtils.linkForRef('type:ValueMap','valueMapped')} field to be edited without going into\n edit mode. When this attribute is set, clicking on the field will change the value - for\n boolean fields toggling between <code>true</code> and <code>false</code>, and for valueMapped\n fields, advancing the value to the next option in the valueMap.\n <P>\n To enable this feature, ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit')} must be set to true.\n For boolean type fields <code>canToggle</code> is true by default, meaning setting\n <code>canEdit</code> to true implies the user can toggle the value via a single click\n without going into edit mode. You can disable this by explicitly setting\n <code>canToggle</code> to false for a boolean field.<br>\n Note that you can enable toggling only (without allowing the user to edit other fields)\n by just setting ${isc.DocUtils.linkForRef('attr:ListGrid.editEvent','grid.editEvent:\"none\"')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.editEvent')} is set to \"click\", when the user clicks on the field,\n the value will be toggled, and inline editing will be triggered as usual.\n Otherwise the toggled value will be saved immediately to the server, or if\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')} has been set to false, will be stored as an edit value\n for the record.",
        name:"canToggle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"varies",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:FormItem.defaultIconSrc":{
        ref:"attr:FormItem.defaultIconSrc",
        flags:"IRWA",
        description:"Default icon image source.     \n Specify as the partial URL to an image, relative to the imgDir of this component.\n To specify image source for a specific icon use the <code>icon.src</code> property.<br>\n If this item is drawn in the disabled state, the url will be modified by adding \n \"_Disabled\" to get a disabled state image for the icon.\n If <code>icon.showOver</code> is true, this url will be modified by adding \"_Over\" to get\n an over state image for the icon.",
        name:"defaultIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/default_formItem_icon.gif\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "method:SelectItem.fetchData":{
        ref:"method:SelectItem.fetchData",
        flags:"",
        description:" Only applies to databound items (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}).<br>\n Performs a fetch type operation on this item's DataSource to retrieve the set of valid\n options for the item, based on the current ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria')}.\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Callback to fire when the fetch completes. Callback will               fire with 4 parameters:<ul>\n  <li><code>item</code> a pointer to the form item\n  <li><code>dsResponse</code> the ${isc.DocUtils.linkForRef('class:DSResponse')} returned by the server\n  <li><code>data</code> the raw data returned by the server\n  <li><code>dsRequest</code> the ${isc.DocUtils.linkForRef('class:DSRequest')} sent to the server\n  </ul>",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"properties to apply to the              dsRequest for this fetch.",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest properties"
            }
        ],
        type:"method",
        definingClass:"class:SelectItem"
    },
    "class:FileItem":{
        methods:[
        ],
        ref:"class:FileItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:FileItem.shouldSaveValue",
            "attr:FileItem.multiple",
            "attr:FileItem.accept",
            "attr:FileItem.showFileInline",
            "attr:FileItem.editForm",
            "attr:FileItem.uploadItem",
            "attr:FileItem.displayForm",
            "attr:FileItem.displayItem",
            "attr:FileItem.displayCanvas",
            "attr:FileItem.viewIconSrc",
            "attr:FileItem.downloadIconSrc"
        ],
        description:"Binary data interface for use in DynamicForms. Allows users to select a single file for\n upload. In read-only mode (canEdit:false), can display the contents of \"imageFile\" fields.\n\n <P>\n <b>Editable mode</b>\n <P>\n The ${isc.DocUtils.linkForRef('attr:FileItem.editForm')} will be automatically generated and displayed as \n ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas','this.canvas')}, allowing the user to select file(s) to upload.\n <P>\n See the ${isc.DocUtils.linkForRef('group:upload','Upload Overview')} for information on using this control.\n\n <P>\n <b>Read-only mode</b>\n <P>\n For fields of type <code>\"blob\"</code> the raw data value will be displayed in the \n generated ${isc.DocUtils.linkForRef('attr:FileItem.displayForm')}.\n <P>\n For other fields, the ${isc.DocUtils.linkForRef('attr:FileItem.displayCanvas')} will be displayed.\n <P>\n For <code>\"imageFile\"</code> fields with ${isc.DocUtils.linkForRef('attr:FileItem.showFileInline','showFileInline')}\n set to true, the image-file will be streamed and displayed inline within the displayCanvas.\n <P>\n Otherwise, the displayCanvas will render out ${isc.DocUtils.linkForRef('attr:FileItem.viewIconSrc','View')} and \n ${isc.DocUtils.linkForRef('attr:FileItem.downloadIconSrc','Download')} icons and the fileName.",
        name:"FileItem",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "upload"
        ]
    },
    "attr:Button.showFocused":{
        ref:"attr:Button.showFocused",
        flags:"IRW",
        description:"Should we visibly change state when the canvas receives focus?  If\n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is <code>true</code>, then <b><code>\"over\"</code></b>\n will be used to indicate focus. Otherwise a separate <b><code>\"focused\"</code></b> state\n will be used.",
        name:"showFocused",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "method:FacetChart.getChartTop":{
        ref:"method:FacetChart.getChartTop",
        flags:"",
        description:" Get the top coordinate of the central chart area, where data elements appear. \n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getChartTop",
        seeAlso:[
        ],
        returns:{
            description:"The top coordinate of the central chart area",
            type:"float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:DrawLine.moveTo":{
        ref:"method:DrawLine.moveTo",
        flags:"",
        description:" Move both the start and end points of the line, such that the startPoint ends up at the\n specified coordinate and the line length and angle are unchanged.\n\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new startLeft coordinate in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new startTop coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLine"
    },
    "attr:MetricSettings.gradationLabelProperties":{
        ref:"attr:MetricSettings.gradationLabelProperties",
        flags:"IR",
        description:"Properties for gradation labels",
        name:"gradationLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:GridRenderer.rowContextClick":{
        ref:"method:GridRenderer.rowContextClick",
        flags:"A",
        description:" Called when a row receives a contextclick event.\n",
        name:"rowContextClick",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:ListGrid.getEditedRecord":{
        ref:"method:ListGrid.getEditedRecord",
        flags:"",
        description:" Returns the combination of unsaved edits (if any) and original values (if any) for a given\n row being edited.\n <P>\n The returned value is never null, and can be freely modified.\n\n",
        name:"getEditedRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum of the record being edited, or an Object                                      containing values for all the record's primary keys",
                optional:false,
                name:"valuesID",
                defaultValue:null,
                type:"number | Object"
            }
        ],
        returns:{
            description:"A copy of the record with unsaved edits included",
            type:"Object"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:DateTimeItem.inputFormat":{
        ref:"attr:DateTimeItem.inputFormat",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is <code>true</code> this property can be used to specify\n the input format for date strings. \n If unset, the input format will be determined based on the specified\n ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter')} if possible (see ${isc.DocUtils.linkForRef('method:DateItem.getInputFormat')}), otherwise\n picked up from the Date class (see ${isc.DocUtils.linkForRef('classMethod:Date.setInputFormat')}).\n <P>\n Should be set to a standard ${isc.DocUtils.linkForRef('type:DateInputFormat')}\n <P>\n Note that the ${isc.DocUtils.linkForRef('type:DateInputFormat')} property is sufficient to parse date or datetime\n strings specified in most standard date formats. However should an entirely custom\n parsing function be required developers can \n <smartclient>implement a custom ${isc.DocUtils.linkForRef('method:DateItem.parseEditorValue')} method.</smartclient>\n <smartgwt>apply a custom <code>editorValueParser</code> function.</smartgwt>\n <p>\n This attribute does not have an effect if a native HTML5 date input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"inputFormat",
        seeAlso:[
            {
                ref:"attr:DateItem.displayFormat",
                description:null
            }
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateTimeItem"
    },
    "method:ListGrid.setShowCollapsedGroupSummary":{
        ref:"method:ListGrid.setShowCollapsedGroupSummary",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.showCollapsedGroupSummary')}\n",
        name:"setShowCollapsedGroupSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"new showCollapsedGroupSummary value",
                optional:false,
                name:"showCollapsedGroupSummary",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGridField.escapeKeyEditAction":{
        ref:"attr:ListGridField.escapeKeyEditAction",
        flags:"IRW",
        description:"What to do when a user hits escape while editing this field?<br>\n Overrides the <code>escapeKeyEditAction</code> as specified at the listGrid level while\n focus is in this field.",
        name:"escapeKeyEditAction",
        seeAlso:[
        ],
        valueType:"EscapeKeyEditAction",
        defaultValue:"\"cancel\"",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "group:basics":{
        ref:"group:basics",
        refs:[
            "attr:DataSourceField.name",
            "attr:DataSourceField.type",
            "attr:Canvas.ID",
            "attr:DetailViewer.data",
            "attr:TileGrid.showAllRecords",
            "attr:StatefulCanvas.title",
            "attr:Button.title",
            "attr:Button.wrap",
            "attr:ImgButton.title",
            "attr:StretchImgButton.title",
            "attr:FormItem.name",
            "attr:FormItem.title",
            "attr:FormItem.defaultValue",
            "attr:FormItem.value",
            "attr:FormItem.ID",
            "attr:FormItem.prompt",
            "attr:CanvasItem.prompt",
            "attr:DateItem.useTextField",
            "attr:DateItem.useMask",
            "attr:DateItem.maskDateSeparator",
            "attr:DateTimeItem.useTextField"
        ],
        description:"Basic definition of a DataSource field",
        name:"basics",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:StretchImgButton.showDisabledIcon":{
        ref:"attr:StretchImgButton.showDisabledIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image if the button becomes\n disabled.",
        name:"showDisabledIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "group:dsSpecialFields":{
        ref:"group:dsSpecialFields",
        refs:[
            "attr:DataSource.titleField",
            "attr:DataSource.iconField",
            "attr:DataSource.infoField",
            "attr:DataSource.dataField",
            "attr:DataSource.descriptionField"
        ],
        description:"A DataSource allows you to declare that certain fields are the most important fields to \n show to a user in situations where space is limited, and only one or a few fields can be\n reasonably shown.\n <P>\n In the table below these special fields are summarized, along with their meaning, and\n examples of which field would be most appropriate from several example DataSources.\n <P>\n <table cellPadding=2 class=\"normal\" border=1>\n <tr style=\"font-weight:bold;\">\n  <td rowSpan=\"2\">Attribute</td>\n  <td colSpan=\"3\">Example DataSource field</td>\n  <td rowSpan=\"2\">Meaning</td>\n </tr><tr style=\"font-style:italic;\">\n  <td>employee</td><td>emailMessage</td><td>stockItem</td>\n </tr><tr>\n  <td>titleField</td><td>name</td><td>subject</td><td>itemName</td>\n      <td>primary label for the record as a while</td>\n </tr><tr>\n  <td>infoField</td><td>job</td><td>sender</td><td>category</td>\n      <td>second most pertinent piece of textual information</td>\n </tr><tr>\n  <td>dataField</td><td>salary</td><td>date</td><td>price</td>\n      <td>most pertinent numeric, date or enum (eg status) field</td>\n </tr><tr>\n  <td>descriptionField</td><td>bio</td><td>messageBody</td><td>description</td>\n      <td>descriptive long text field</td>\n </tr><tr>\n  <td>iconField</td><td>photo</td><td>statusIcon</td><td>thumbnail</td>\n      <td> an image or icon to accompany the title field</td>\n </tr></table>\n <P>\n Examples of the use of these fields include the ${isc.DocUtils.linkForRef('class:TileGrid')}'s default choice of fields,\n and the ${isc.DocUtils.linkForRef('classMethod:EventHandler.setDragTracker','drag tracker')} that follows the mouse cursor when\n data is being dragged between grids.",
        name:"dsSpecialFields",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TimeItem.millisecondItemProperties":{
        ref:"attr:TimeItem.millisecondItemProperties",
        flags:"IRA",
        description:"Custom properties to apply to this timeItem's generated \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondItem','millisecond picker')}.",
        name:"millisecondItemProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:ToolStrip.addFormItem":{
        ref:"method:ToolStrip.addFormItem",
        flags:"",
        description:" Add a form item to this toolStrip. This method will create a DynamicForm autoChild with the\n item passed in as a single item, based on the \n ${isc.DocUtils.linkForRef('attr:ToolStrip.formWrapper','formWrapper config')}, and add it to the toolstrip\n as a member.\n Returns a pointer to the generated formWrapper component.\n",
        name:"addFormItem",
        seeAlso:[
        ],
        params:[
            {
                description:"properties for the form item to add to this  toolStrip.",
                optional:false,
                name:"formItem",
                defaultValue:null,
                type:"FormItem Properties"
            },
            {
                description:"properties to apply to the generated  formWrapper component. If passed, specified properties will be overlaid onto the\n  properties derived from ${isc.DocUtils.linkForRef('attr:ToolStrip.formWrapperDefaults')} and\n  ${isc.DocUtils.linkForRef('attr:ToolStrip.formWrapperProperties')}.",
                optional:true,
                name:"formProperties",
                defaultValue:null,
                type:"DynamicForm Properties"
            },
            {
                description:"desired position for the form item in the tools",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"integer"
            }
        ],
        returns:{
            description:"generated wrapper containing the form item.",
            type:"DynamicForm"
        },
        type:"method",
        definingClass:"class:ToolStrip"
    },
    "method:DetailViewerField.formatCellValue":{
        ref:"method:DetailViewerField.formatCellValue",
        flags:"",
        description:" Optional method to format the value to display for this field's cells. Takes precedence \n over ${isc.DocUtils.linkForRef('method:DetailViewer.formatCellValue')} for cells in this field.\n",
        name:"formatCellValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the raw value of the cell",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"string"
            },
            {
                description:"the record being displayed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"detailViewerRecord"
            },
            {
                description:"the field being displayed",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"detailViewerField"
            },
            {
                description:"the detailViewer containing this field",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"detailViewer"
            }
        ],
        type:"method",
        definingClass:"object:DetailViewerField"
    },
    "attr:PortalLayout.portletDropTypes":{
        ref:"attr:PortalLayout.portletDropTypes",
        flags:"IRW",
        description:"<p>The ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes','dropTypes')} to be applied when dropping ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}\n on this <code>PortalLayout</code>, or when dropping other components to be auto-wrapped in\n a ${isc.DocUtils.linkForRef('class:Portlet')}. If you set this, then you will need to set an equivalent ${isc.DocUtils.linkForRef('attr:Canvas.dragType')} on\n anything to be dragged into this <code>PortalLayout</code> (including ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}).</p>\n\n <p>As a convenience, ${isc.DocUtils.linkForRef('attr:Portlet.dragType')} defaults to <code>\"Portlet\"</code>. Thus, if you want \n to allow ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} to be dropped on this <code>PortalLayout</code>, but disable \n auto-wrapping of other components, you can set <code>portletDropTypes</code> to \n <code>[\"Portlet\"]</code>.</p>\n\n <p>If you want to allow some ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} to be dropped on this <code>PortalLayout</code> but \n not others, then set a custom ${isc.DocUtils.linkForRef('attr:Portlet.dragType','dragType')} for the ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}, and \n set <code>portletDropTypes</code> to match.</p>\n\n <p>If you want to have different <code>dropTypes</code> for ${isc.DocUtils.linkForRef('attr:PortalLayout.row','rows')} and \n ${isc.DocUtils.linkForRef('attr:PortalLayout.rowLayout','rowLayouts')}, you can specify <code>dropType</code> on the ${isc.DocUtils.linkForRef('attr:PortalLayout.row','row')} \n or ${isc.DocUtils.linkForRef('attr:PortalLayout.rowLayout','rowLayout')} autochildren instead.</p>\n\n <p>For more control over what can be dropped, you can also implement \n ${isc.DocUtils.linkForRef('method:PortalLayout.willAcceptPortletDrop','willAcceptPortletDrop()')}.",
        name:"portletDropTypes",
        setter:[
            "setPortletDropTypes"
        ],
        seeAlso:[
            {
                ref:"attr:Canvas.dropTypes",
                description:null
            }
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PortalLayout",
        groups:[
            "dragdrop"
        ]
    },
    "attr:Process.containerId":{
        ref:"attr:Process.containerId",
        flags:"IRW",
        description:"Identifier of canvas where should be added UI elements created by using\n ${isc.DocUtils.linkForRef('attr:UserTask.inlineView','inline view')} property.",
        name:"containerId",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Process"
    },
    "attr:FilterBuilder.removeButton":{
        ref:"attr:FilterBuilder.removeButton",
        flags:"IR",
        description:"The removal ImgButton that appears before each clause if\n ${isc.DocUtils.linkForRef('attr:FilterBuilder.showRemoveButton')} is set.",
        name:"removeButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:OperationBinding.groupBy":{
        ref:"attr:OperationBinding.groupBy",
        flags:"IR",
        description:"List of fields to group by when using ${isc.DocUtils.linkForRef('group:serverSummaries','server-side summarization')}.\n <p>\n Valid only for an operation of type \"fetch\".  See the \n ${isc.DocUtils.linkForRef('group:serverSummaries','Server Summaries overview')} for details and examples of usage.",
        name:"groupBy",
        seeAlso:[
            {
                ref:"attr:OperationBinding.summaryFunctions",
                description:null
            }
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "serverSummaries"
        ]
    },
    "method:Array.findNextIndex":{
        ref:"method:Array.findNextIndex",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:Array.findIndex')}, but inspects a range from startIndex to endIndex.\n\n",
        name:"findNextIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"first index to consider",
                optional:false,
                name:"startIndex",
                defaultValue:null,
                type:"int"
            },
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access",
            "find"
        ]
    },
    "method:Slider.getValue":{
        ref:"method:Slider.getValue",
        flags:"",
        description:" Returns the current slider value.\n\n",
        name:"getValue",
        seeAlso:[
        ],
        returns:{
            description:"current slider value <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
            type:"float"
        },
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:DateItem.monthSelector":{
        ref:"attr:DateItem.monthSelector",
        flags:"R",
        description:"Select item to hold the month part of the date.",
        name:"monthSelector",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "group:textDirection":{
        ref:"group:textDirection",
        refs:[
        ],
        name:"textDirection",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Calendar.selectTab":{
        ref:"method:Calendar.selectTab",
        flags:"",
        description:" Selects the calendar view in the passed tab number.\n\n",
        name:"selectTab",
        seeAlso:[
        ],
        params:[
            {
                description:"the index of the tab to select",
                optional:false,
                name:"tabnum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:Canvas.animateResizeTime":{
        ref:"attr:Canvas.animateResizeTime",
        flags:"IRWA",
        description:"Default time for performing an animated resize.  If unset, <code>this.animateTime</code>\n will be used by default instead",
        name:"animateResizeTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:SectionStack.canReorderSections":{
        ref:"attr:SectionStack.canReorderSections",
        flags:"IRA",
        description:"Whether sections can be drag reordered by the user dragging the section header.\n <P>\n Note that, with <code>canReorderSections:true</code>, sections with \n ${isc.DocUtils.linkForRef('attr:SectionStackSection.canReorder','section.canReorder:false')} will not be\n able to be drag-reordered (though their index may still be changed by dropping other\n sections above or below them in the section stack).",
        name:"canReorderSections",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:TreeGrid.extraIconGap":{
        ref:"attr:TreeGrid.extraIconGap",
        flags:"IR",
        description:"The amount of gap (in pixels) between the extraIcon (see ${isc.DocUtils.linkForRef('method:TreeGrid.getExtraIcon')})\n or checkbox icon and the ${isc.DocUtils.linkForRef('attr:TreeGrid.nodeIcon','nodeIcon')}/\n ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon','folderIcon')} or node text.",
        name:"extraIconGap",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "appearance"
        ]
    },
    "method:Canvas.getTop":{
        ref:"method:Canvas.getTop",
        flags:"",
        description:"\t\t\tReturn the top coordinate of this object, relative to its enclosing context, in pixels.\n",
        name:"getTop",
        seeAlso:[
        ],
        returns:{
            description:"top coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:CubeGrid.facetLabelHoverStyle":{
        ref:"attr:CubeGrid.facetLabelHoverStyle",
        flags:"IRWA",
        description:"Allows the developer to override the css class applied to  hover tips shown for\n facet labels.  If unspecified, and <code>this.hoverStyle</code> is not null, that \n css class will be applied to facet label hovers instead.",
        name:"facetLabelHoverStyle",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "attr:DetailViewer.showEmptyMessage":{
        ref:"attr:DetailViewer.showEmptyMessage",
        flags:"IRWA",
        description:"Show ${isc.DocUtils.linkForRef('attr:DetailViewer.emptyMessage')} when there is no data to display?",
        name:"showEmptyMessage",
        seeAlso:[
            {
                ref:"attr:DetailViewer.emptyMessage",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "emptyMessage"
        ]
    },
    "method:Class.logIsErrorEnabled":{
        ref:"method:Class.logIsErrorEnabled",
        flags:"",
        description:" Check whether a message logged at \"error\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsErrorEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "classAttr:Dialog.Warn":{
        ref:"classAttr:Dialog.Warn",
        flags:"A",
        description:"A singleton Dialog instance that will show text to the user and provide buttons for their\n response.  The Dialog will expand to show all the text that you put into it. This dialog\n is shown in response to calls to ${isc.DocUtils.linkForRef('classMethod:isc.say')}, ${isc.DocUtils.linkForRef('classMethod:isc.warn')}, ${isc.DocUtils.linkForRef('classMethod:isc.ask')} and\n ${isc.DocUtils.linkForRef('classMethod:isc.confirm')}\n <P>\n This can be used in cases where a developer would alternatively make use of the native\n JavaScript <code>alert()</code> and <code>confirm()</code> methods.  The main differences\n between those methods and using the Warn object are:<br>\n - The Warn object can be customized by modifying which buttons are visible, the style\n   applied to it, etc.<br>\n - The <code>isc.ask()</code> and <code>isc.warn()</code> methods are asynchronous - rather\n   than returning a value indicating the user's response, a callback method will be fired\n   when the user interacts with the dialog.<br><br>\n\n Notes:<br>\n  Because this is a singleton object, properties set on the Warn object directly will persist\n  each time it is shown.<br>\n  Developers should use the <code>warn()</code> or <code>ask()</code> methods to show and\n  hide this object rather than manipulating the Dialog directly.",
        name:"Warn",
        seeAlso:[
            {
                ref:"classMethod:isc.warn",
                description:null
            },
            {
                ref:"classMethod:isc.ask",
                description:null
            }
        ],
        valueType:"Dialog Properties",
        defaultValue:"dialog instance properties",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "Prompting"
        ]
    },
    "method:ListGrid.setFieldError":{
        ref:"method:ListGrid.setFieldError",
        flags:"",
        description:" Set a validation error for some cell.\n",
        name:"setFieldError",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellErrors",
                description:null
            },
            {
                ref:"method:ListGrid.setRowErrors",
                description:null
            }
        ],
        params:[
            {
                description:"row index of cell to add validation error for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"col index or field name of cell to add validation error for",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String | number"
            },
            {
                description:"validation error/errors for the cell.",
                optional:false,
                name:"errorMessage",
                defaultValue:null,
                type:"string | array of strings"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "classAttr:EventHandler.STILL_DOWN_DELAY":{
        ref:"classAttr:EventHandler.STILL_DOWN_DELAY",
        flags:"IRWA",
        description:"amount of time between mouseStillDown messages (msec)",
        name:"STILL_DOWN_DELAY",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"100",
        type:"classAttr",
        definingClass:"class:EventHandler"
    },
    "attr:DrawTriangle.points":{
        ref:"attr:DrawTriangle.points",
        flags:"IRW",
        description:"Array of points of the triangle.",
        name:"points",
        seeAlso:[
        ],
        valueType:"Array of Point",
        defaultValue:"[[0,0], [50,50], [100,0]]",
        type:"attr",
        definingClass:"class:DrawTriangle"
    },
    "attr:HeaderItem.startRow":{
        ref:"attr:HeaderItem.startRow",
        flags:"IRW",
        description:"these items are in a row by themselves by default",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:HeaderItem",
        groups:[
            "appearance"
        ]
    },
    "classMethod:isc.showFadingPrompt":{
        ref:"classMethod:isc.showFadingPrompt",
        flags:"",
        description:"\n\tMethod available on the isc object to show a temporary modal prompt to the user.\n  This method will display the message using the Dialog.Prompt singleton object, then hide it\n  using a fade animation effect.<br>\n  Note: if this prompt is to be shown to the user during some slow JavaScript logic, we\n  advise calling this method, then using ${isc.DocUtils.linkForRef('method:Class.delayCall')} or ${isc.DocUtils.linkForRef('classMethod:Timer.setTimeout')}\n  to kick off the slow logic in a separate thread. This ensures that the prompt is showing\n  before the lengthy execution begins.\n  <P>\n  The prompt may be cleared before the duration has elapsed via a call to ${isc.DocUtils.linkForRef('classMethod:isc.clearPrompt')}\n  and any callback specified will still be fired even if the prompt is dismissed early.\n\n",
        name:"showFadingPrompt",
        seeAlso:[
            {
                ref:"classAttr:Dialog.Prompt",
                description:null
            }
        ],
        params:[
            {
                description:"message to display",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"string"
            },
            {
                description:"how long the message should appear for in milliseconds before    fading from view.",
                optional:false,
                name:"duration",
                defaultValue:null,
                type:"number"
            },
            {
                description:"When the prompt is hidden, callback will be fired.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"callback"
            },
            {
                description:"additional properties for the Dialog, applied before                                       the Dialog is shown",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"Dialog Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "method:NavigationBar.navigationClick":{
        ref:"method:NavigationBar.navigationClick",
        flags:"",
        description:" Notification method fired when the user clicks the ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButton')} or ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButton')}\n",
        name:"navigationClick",
        seeAlso:[
        ],
        params:[
            {
                description:"direction in which the user is attempting to    navigate",
                optional:false,
                name:"direction",
                defaultValue:null,
                type:"NavigationDirection"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "attr:ListGrid.autoSizeHeaderSpans":{
        ref:"attr:ListGrid.autoSizeHeaderSpans",
        flags:"IR",
        description:"If this listGrid has specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans')}, setting this\n attribute to true will cause spans to expand to accomodate long titles if necessary.",
        name:"autoSizeHeaderSpans",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan",
            "autoFitFields"
        ]
    },
    "method:DrawSector.moveBy":{
        ref:"method:DrawSector.moveBy",
        flags:"",
        description:" Move the DrawSector by the specified amounts.\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of pixels to move by horizontally",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"number of pixels to move by vertically",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawSector"
    },
    "attr:StatefulCanvas.iconSize":{
        ref:"attr:StatefulCanvas.iconSize",
        flags:"IR",
        description:"Size in pixels of the icon image.\n <P>\n The <code>iconWidth</code> and <code>iconHeight</code> properties can be used to\n configure width and height separately.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Gauge.setMaxValue":{
        ref:"method:Gauge.setMaxValue",
        flags:"",
        description:" Sets the maximum dial value, rescaling all sectors and the dial value.\n\n",
        name:"setMaxValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new maximum dial value. Must be at least 1 greater than the minimum dial value. If <code>maxValue</code> is not at least 1 greater than the minimum\n value, then it is set to <code>1 + minValue</code>.",
                optional:false,
                name:"maxValue",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "method:ListGrid.cellChanged":{
        ref:"method:ListGrid.cellChanged",
        flags:"",
        description:" Fires after user edits have been successfully saved to the server, only for cells where the\n value was actually modified.\n <p>\n If you want immediate notification of a changes <b>before</b> changes has been saved to the\n server, implement ${isc.DocUtils.linkForRef('method:ListGridField.change','field.change()')} or\n ${isc.DocUtils.linkForRef('method:ListGridField.changed','field.changed()')} instead.\n <P>\n You can alternatively use ${isc.DocUtils.linkForRef('method:ListGridField.cellChanged')} to get notification only of\n saved changes for a specific field.  If both a listGridField and the containing listGrid\n have a handler for this event, only the handler defined on the field is called.\n\n",
        name:"cellChanged",
        seeAlso:[
            {
                ref:"method:ListGridField.cellChanged",
                description:null
            }
        ],
        params:[
            {
                description:"record for the cell being changed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"new value for the cell",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"old value for the cell",
                optional:false,
                name:"oldValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"grid where cell was changed.  Also available as \"this\"",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "classMethod:DataSource.getSimpleErrors":{
        ref:"classMethod:DataSource.getSimpleErrors",
        flags:"",
        description:" Getter method for extracting server-side validation errors for an attempted\n \"update\" or \"add\" operation, as a  JS Object where each property name is a \n field name from the record and each property value is an array of error message strings.\n For example:<pre>\n     {\n         userId : [\"A user with this userId already exists\"],\n         orderId : [\"Must be a numeric value\", \"No Order with ID '6A18294' exists\"]\n     }\n </pre>\n The Java API DSResponse.addError(fieldName, errorMessage) is used to send server-side errors\n to the client.  See the Java Server Reference for details.\n\n",
        name:"getSimpleErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"response from which you want to extract the errors",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            }
        ],
        returns:{
            description:"Map of fieldName to error messages for the errors included in the DSResponse.",
            type:"Object"
        },
        type:"classMethod",
        definingClass:"class:DataSource",
        groups:[
            "errorHandling"
        ]
    },
    "attr:DetailViewerField.decimalPad":{
        ref:"attr:DetailViewerField.decimalPad",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and enforces a minimum number of digits shown after\n the decimal point.\n <P>\n For example, a field value of 343.1, 343.104 and 343.09872677 would all be shown as 343.10\n if decimalPad is 2.\n <P>\n The original unpadded value is always shown when the value is edited.",
        name:"decimalPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:DetailViewerField",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.setAutoFitFieldWidths":{
        ref:"method:ListGrid.setAutoFitFieldWidths",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')}. Modifies the default auto-fit-width behavior\n for fields in this grid. Note that this may be overridden at the field level via\n ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')}.\n",
        name:"setAutoFitFieldWidths",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for autoFitFieldWidths",
                optional:false,
                name:"autoFit",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"If autoFitFieldWidths was true, and is being set to false,  should fields be resized to their originally specified size?\n  Pass in this parameter to suppress this behavior.",
                optional:true,
                name:"dontResetWidths",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Calendar.nameField":{
        ref:"attr:Calendar.nameField",
        flags:"IR",
        description:"The name of the name field in a ${isc.DocUtils.linkForRef('object:CalendarEvent')}.",
        name:"nameField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"name\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:DataBoundComponent.dragRecategorize":{
        ref:"attr:DataBoundComponent.dragRecategorize",
        flags:"IRW",
        description:"Flag controlling when to recategorize records being dropped on a databound\n component from another databound component.",
        name:"dragRecategorize",
        seeAlso:[
        ],
        valueType:"RecategorizeMode",
        defaultValue:"\"checked\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "method:FormItem.getLeft":{
        ref:"method:FormItem.getLeft",
        flags:"",
        description:" Returns the left coordinate of this form item in pixels. Note that this method\n is only reliable after the item has been drawn.\n",
        name:"getLeft",
        seeAlso:[
        ],
        returns:{
            description:"left coordinate within the form in pixels\\",
            type:"integer"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "positioning",
            "sizing"
        ]
    },
    "attr:SelectOtherItem.otherTitle":{
        ref:"attr:SelectOtherItem.otherTitle",
        flags:"IRW",
        description:"Title for the <code>Other...</code> item. When this item is selected, the user will be \n shown a prompt allowing them to enter a new value for the item.",
        name:"otherTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Other...\"",
        type:"attr",
        definingClass:"class:SelectOtherItem",
        groups:[
            "appearance",
            "i18nMessages"
        ]
    },
    "type:AutoFitIconFieldType":{
        ref:"type:AutoFitIconFieldType",
        values:[
            {
                description:"Apply no special sizing to icon fields - treat them like any other   field in the grid",
                value:"\"none\""
            },
            {
                description:"size the field to accommodate the width of the icon",
                value:"\"iconWidth\""
            },
            {
                description:"size the field to accommodate the title (or the width of the icon if   it exceeds the width of the title.",
                value:"\"title\""
            }
        ],
        description:"How should fields of ${isc.DocUtils.linkForRef('type:ListGridFieldType','type:\"icon\"')} be sized by default?",
        name:"AutoFitIconFieldType",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoFitFields"
        ]
    },
    "method:SimpleType.parseInput":{
        ref:"method:SimpleType.parseInput",
        flags:"",
        description:" Parser to convert some user-edited value to an underlying data value of this type.\n This parser is called when storing out values edited in a freeform editor such as\n a ${isc.DocUtils.linkForRef('class:TextItem')}. Typically this will convert from the format produced by \n ${isc.DocUtils.linkForRef('method:SimpleType.editFormatter')} back to a data value.\n\n",
        name:"parseInput",
        seeAlso:[
        ],
        params:[
            {
                description:"edited value provided by the user",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Editor for this field",
                optional:true,
                name:"field",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"DynamicForm containing this editor",
                optional:true,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"Current edit values for this record, as displayed in      the edit component.",
                optional:true,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"data value derived from display string passed in.",
            type:"any"
        },
        type:"method",
        definingClass:"class:SimpleType"
    },
    "method:Chart.getFacetValue":{
        ref:"method:Chart.getFacetValue",
        flags:"",
        description:" Get facet value definition by facetId and facetValueId.\n",
        name:"getFacetValue",
        seeAlso:[
            {
                ref:"class:FacetValue",
                description:null
            }
        ],
        params:[
            {
                description:"the id of the facet to retrieve",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the id of the facet value to retrieve",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the FacetValue if found, or null",
            type:"FacetValue"
        },
        type:"method",
        definingClass:"interface:Chart"
    },
    "method:FilterClause.getCriterion":{
        ref:"method:FilterClause.getCriterion",
        flags:"",
        description:" Return the criterion specified by this FilterClause.\n \n",
        name:"getCriterion",
        seeAlso:[
        ],
        returns:{
            description:"The single criterion for this FilterClause",
            type:"Criteria"
        },
        type:"method",
        definingClass:"class:FilterClause"
    },
    "attr:ListProperties.style":{
        ref:"attr:ListProperties.style",
        flags:"IR",
        description:"The style of list item marker. If \"custom-image\", the ${isc.DocUtils.linkForRef('attr:ListProperties.image','image')}\n should be specified.",
        name:"style",
        seeAlso:[
        ],
        valueType:"ListStyleType",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListProperties"
    },
    "method:ListGrid.expandRecord":{
        ref:"method:ListGrid.expandRecord",
        flags:"",
        description:" Expands a given ${isc.DocUtils.linkForRef('object:ListGridRecord','record')} by creating a subcomponent and inserting it\n in to the record's grid-row.  A number of built-in ${isc.DocUtils.linkForRef('type:ExpansionMode','expansionModes')}\n are supported by the default implementation of\n ${isc.DocUtils.linkForRef('method:ListGrid.getExpansionComponent','getExpansionComponent()')} and you can override\n that method to provide your own expansion behavior.\n <P>\n Once a record has been expanded, the currently visible expansion component may be\n retrieved via ${isc.DocUtils.linkForRef('method:ListGrid.getCurrentExpansionComponent')}.\n\n",
        name:"expandRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record to expand",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:SectionStack.canResizeSections":{
        ref:"attr:SectionStack.canResizeSections",
        flags:"IRA",
        description:"Whether sections can be drag resized by the user dragging the section header.\n <P>\n Note that, with <code>canResizeSections:true</code>, not all sections can be resized:\n sections that contain only ${isc.DocUtils.linkForRef('attr:Button.autoFit','autofitting')} components or that are\n marked with ${isc.DocUtils.linkForRef('attr:SectionStackSection.resizeable','section.resizeable:false')} will not be\n resizeable.",
        name:"canResizeSections",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:ListGrid.showAllColumns":{
        ref:"attr:ListGrid.showAllColumns",
        flags:"IR",
        description:"Whether all columns should be drawn all at once, or only columns visible in the viewport.\n <P>\n Drawing all columns causes longer initial rendering time, but allows smoother horizontal\n scrolling.  With a very large number of columns, showAllColumns will become too slow.",
        name:"showAllColumns",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "attr:CubeGrid.wrapFacetTitles":{
        ref:"attr:CubeGrid.wrapFacetTitles",
        flags:"IRW",
        description:"Whether to allow text wrapping on facet titles.",
        name:"wrapFacetTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "method:ListGrid.setCanReorderRecords":{
        ref:"method:ListGrid.setCanReorderRecords",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.canReorderRecords')} attribute.\n",
        name:"setCanReorderRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for <code>this.canReorderRecords</code>",
                optional:false,
                name:"canReorderRecords",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.cellSelectionChanged":{
        ref:"method:ListGrid.cellSelectionChanged",
        flags:"A",
        description:" Called when (cell-based) selection changes within this grid.\n\n",
        name:"cellSelectionChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of cells whos selected state was modified.",
                optional:false,
                name:"cellList",
                defaultValue:null,
                type:"array"
            }
        ],
        returns:{
            description:"Returning false will prevent the GridRenderer styling from being updated                      to reflect the selection change.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('cellSelection')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:ColorPicker.okButtonConstructor":{
        ref:"attr:ColorPicker.okButtonConstructor",
        flags:"IRWA",
        description:"The class of the \"OK\" button. It is intended that you use either IButton or \n      Button - other classes are unlikely to work correctly.",
        name:"okButtonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"IButton",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:ListGridRecord.customStyle":{
        ref:"attr:ListGridRecord.customStyle",
        flags:"IRW",
        description:"Name of a CSS style to use for all cells for this particular record.\n <P>\n Note that using this property assigns a single, fixed style to the record, so rollover\n and selection styling are disabled.  To provide a series of stateful styles for a record\n use ${isc.DocUtils.linkForRef('attr:ListGridRecord._baseStyle')} instead.\n <P>\n See ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle')} for an overview of various ways to customize styling,\n both declarative and programmatic.\n <P>\n If this property is changed after draw(), to refresh the grid call\n ${isc.DocUtils.linkForRef('method:ListGrid.refreshRow')} (or ${isc.DocUtils.linkForRef('method:ListGrid.markForRedraw')} if several rows are\n being refreshed).\n <P>\n If your application's data uses the \"customStyle\" attribute for something else, the\n property name can be changed via ${isc.DocUtils.linkForRef('attr:ListGrid.recordCustomStyleProperty')}.",
        name:"customStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "attr:ColorPicker.htmlFieldPrompt":{
        ref:"attr:ColorPicker.htmlFieldPrompt",
        flags:"IR",
        description:"The text to show when the mouse hovers over the 'HTML' field in the complex chooser.",
        name:"htmlFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The selected color&amp;#39;s HTML coding\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ToolStripSeparator.vSrc":{
        ref:"attr:ToolStripSeparator.vSrc",
        flags:"IR",
        description:"Image for vertically oriented separator (for horizontal toolstrips).",
        name:"vSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]separator.png\"",
        type:"attr",
        definingClass:"class:ToolStripSeparator"
    },
    "attr:Facet.title":{
        ref:"attr:Facet.title",
        flags:"IRW",
        description:"User-visible title of this facet.  Shown on the facet label in the CubeGrid.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "method:TileGrid.getTileRecord":{
        ref:"method:TileGrid.getTileRecord",
        flags:"",
        description:" Given a tile within this this tile-grid, this method will return the associated \n record from the TileGrid's data.\n",
        name:"getTileRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"Tile you want to get the record for",
                optional:false,
                name:"tile",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"Record associated with the specified tile",
            type:"TileRecord"
        },
        type:"method",
        definingClass:"class:TileGrid"
    },
    "class:DrawShape":{
        methods:[
            "method:DrawShape.setCommands"
        ],
        ref:"class:DrawShape",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawShape.knobs",
            "attr:DrawShape.commands"
        ],
        description:"DrawItem to render a shape defined by executing the series of drawing commands in the\n ${isc.DocUtils.linkForRef('attr:DrawShape.commands','commands')} array.",
        name:"DrawShape",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "group:applicationDeclaration":{
        ref:"group:applicationDeclaration",
        title:"Application Declaration Files",
        treeLocation:[
            "Client Reference/RPC"
        ],
        refs:[
        ],
        description:"When using the SmartClient server, server side methods written in java can be directly \n invoked from client side code via the ${isc.DocUtils.linkForRef('classMethod:DMI.call')} API.\n <P>\n In order to support this an application configuration file needs to be present on your\n server. This file lists out what server side methods are exposed for direct invocation.\n The application configuration file should be named <code><i>appID</i>.app.xml</code> (where \n <i>\"appID\"</i> is some arbitrary id for your application) and must be present at the\n location specified by the <code>project.apps</code> setting in \n the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file.\n <P>\n The application declaration should be written in xml, and should contain a\n <code>rpcBindings</code> block, which holds ${isc.DocUtils.linkForRef('class:ServerObject')} definitions for each\n exposed method. Here's an example demonstrating the specified format:\n <pre>\n    &lt;Application&gt;\n        &lt;rpcBindings&gt;\n            &lt;ServerObject ID=\"MathUtil\" className=\"com.example.package.MathUtil\"&gt;\n                &lt;visibleMethods&gt;\n                    &lt;method name=\"addIntegers\"/&gt;\n                &lt;/visibleMethods&gt;\n            &lt;/ServerObject&gt;\n        &lt;/rpcBindings&gt;\n    &lt;/Application&gt;\n </pre>\n\n In this example we're exposing a method <i>\"addIntegers\"</i> on the server side java\n class <code>com.example.package.MathUtil</code>. A developer could then call DMI.call(...)\n on the client side code to invoke this method on the server, and get at the returned value\n in the ${isc.DocUtils.linkForRef('class:RPCResponse')} passed to the ${isc.DocUtils.linkForRef('method:Callbacks.RPCCallback','RPCCallback')}. Note that the application\n config file does not explicitly list out a method signature - the appropriate method to\n call is detected automatically based on the parameters passed to DMI.call on the client side.\n <P>\n See the ${isc.DocUtils.linkForRef('group:dmiOverview','DMI overview')} for further information on Direct Method Invocation\n in SmartClient.",
        name:"applicationDeclaration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DynamicForm.showErrorText":{
        ref:"attr:DynamicForm.showErrorText",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','showErrorIcons')}, \n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText','showErrorText')}, and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorStyle','showErrorStyle')} control how validation errors are\n displayed when they are displayed inline in the form (next to the form item where there\n is a validation error).  To instead display all errors at the top of the form, set\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors','showInlineErrors')}:false.\n <P>\n <code>showErrorIcons</code>, <code>showErrorText</code> and <code>showErrorStyle</code>\n are all boolean properties, and can be set on a DynamicForm to control the behavior\n form-wide, or set on individual FormItems.  \n <P>\n The HTML displayed next to a form item with errors is generated by \n ${isc.DocUtils.linkForRef('method:FormItem.getErrorHTML')}.\n The default implementation of that method respects <code>showErrorIcons</code> and\n <code>showErrorText</code> as follows:\n <P>\n <code>showErrorIcons</code>, or <code>showErrorIcon</code> at the FormItem level controls\n whether an error icon should appear next to fields which have validation errors.  The icon's\n appearance is governed by ${isc.DocUtils.linkForRef('attr:FormItem.errorIconSrc')}, ${isc.DocUtils.linkForRef('attr:FormItem.errorIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorIconHeight')}\n <P>\n <code>showErrorText</code> determines whether the text of the validation error should be\n displayed next to fields which have validation errors. The attribute\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showTitlesWithErrorMessages')} may be set to prefix error messages with the \n form item's title + <code>\":\"</code> (may be desired if the item has \n ${isc.DocUtils.linkForRef('attr:FormItem.showTitle')} set to false).\n <P>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')} controls where the error HTML should appear relative \n to form items. Therefore the combination of ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText')}<code>:false</code> and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')}<code>:\"left\"</code> creates a compact validation error display\n consisting of just an icon, to the left of the item with the error message\n available via a hover (similar appearance to ListGrid validation error display).  \n <P>\n In addition to this, <code>showErrorStyle</code> determines whether fields  with validation\n errors should have special styling applied to them. See ${isc.DocUtils.linkForRef('type:FormItemBaseStyle')} for a \n discussion for how error styling is calculated.",
        name:"showErrorText",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "method:SplitPane.setListTitle":{
        ref:"method:SplitPane.setListTitle",
        flags:"",
        description:" Sets the title for the ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')}.\n",
        name:"setListTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title for the list pane.",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:PickList.getDisplayFieldName":{
        ref:"method:PickList.getDisplayFieldName",
        flags:"",
        description:" Returns the <code>displayField</code> for this item. This will typically be\n specified explicitly via the ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} attribute. However, if \n that property is unset, and the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item is \n hidden in the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}, this method\n will return the title field for the <code>optionDataSource</code>.\n\n",
        name:"getDisplayFieldName",
        seeAlso:[
        ],
        returns:{
            description:"display field name, or null if there is no separate display field to use.",
            type:"String"
        },
        type:"method",
        definingClass:"interface:PickList"
    },
    "method:TileGrid.getTitleField":{
        ref:"method:TileGrid.getTitleField",
        flags:"",
        description:" Method to return the fieldName which represents the \"title\" for records in this\n Component.<br>\n If this.titleField is explicitly specified it will always be used.\n Otherwise, default implementation will check ${isc.DocUtils.linkForRef('attr:DataSource.titleField')} for databound\n compounds.<br>\n For non databound components returns the first defined field name of <code>\"title\"</code>,\n <code>\"name\"</code>, or <code>\"id\"</code> where the field is visible. If we dont find any\n field-names that match these titles, the first field in the component will be used instead.\n",
        name:"getTitleField",
        seeAlso:[
        ],
        returns:{
            description:"fieldName for title field for this component.",
            type:"string"
        },
        type:"method",
        definingClass:"class:TileGrid"
    },
    "attr:Mail.replyTo":{
        ref:"attr:Mail.replyTo",
        flags:"IR",
        description:"An email address to indicate as the reply-to address on the message.  Like all other \n <code>String</code> properties of <code>Mail</code>, you can use Velocity substitution \n variables in this property.",
        name:"replyTo",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "attr:DSRequest.clientContext":{
        ref:"attr:DSRequest.clientContext",
        flags:"IRW",
        description:"An object to be held onto for the duration of the DSRequest turnaround to track\n application-specific context.\n <P>\n When a DataSource request completes, the <code>clientContext</code> is available in the\n ${isc.DocUtils.linkForRef('type:DSCallback')} as <code>dsResponse.clientContext</code>.  The\n <code>clientContext</code> is never sent to the server.\n <br>\n The <code>clientContext</code> is useful for holding onto state that will be used when the\n ${isc.DocUtils.linkForRef('type:DSCallback')} fires, such as the name of a component that will receive the\n returned data.",
        name:"clientContext",
        seeAlso:[
            {
                ref:"attr:DSResponse.clientContext",
                description:null
            },
            {
                ref:"attr:RPCRequest.clientContext",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"{}",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:DataBoundComponent.selectRecord":{
        ref:"method:DataBoundComponent.selectRecord",
        flags:"",
        description:"\n Select/deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n\n",
        name:"selectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to select",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:DrawRect.height":{
        ref:"attr:DrawRect.height",
        flags:"IRW",
        description:"Height in pixels.",
        name:"height",
        setter:[
            "setHeight"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DrawRect"
    },
    "attr:Splitbar.showRollOverGrip":{
        ref:"attr:Splitbar.showRollOverGrip",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true, this property determines whether to show the\n 'Over' state on the grip image when the user rolls over on this widget. \n Has no effect if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')} is false.",
        name:"showRollOverGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "grip"
        ]
    },
    "attr:SummaryBuilder.field":{
        ref:"attr:SummaryBuilder.field",
        flags:"IR",
        description:"The Field object representing the field being created or edited.",
        name:"field",
        seeAlso:[
        ],
        valueType:"Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "attr:ListGrid.selectionType":{
        ref:"attr:ListGrid.selectionType",
        flags:"IRW",
        description:"Defines a listGrid's clickable-selection behavior.\n <P>\n The default selection appearance is governed by ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')}: if\n selectionAppearance is \"checkbox\", this will be \"simple\", otherwise, this will be\n \"multiple\".",
        name:"selectionType",
        setter:[
            "setSelectionType"
        ],
        seeAlso:[
            {
                ref:"type:SelectionStyle",
                description:null
            }
        ],
        valueType:"SelectionStyle",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('multipleSelect')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "selection",
            "appearance"
        ]
    },
    "classMethod:EventHandler.getNativeDragData":{
        ref:"classMethod:EventHandler.getNativeDragData",
        flags:"",
        description:" For a cross-frame drag, retrieves the data made available when the drag was initiated in the\n foreign frame via ${isc.DocUtils.linkForRef('classMethod:EventHandler.setNativeDragData')}.\n <p>\n Can only be called during the ${isc.DocUtils.linkForRef('method:Canvas.drop')} event (or methods called during the handling\n of that event, such as ${isc.DocUtils.linkForRef('method:ListGrid.recordDrop')}); will return null if called at any other\n time, or if called during a non-HTML5 drag and drop.\n",
        name:"getNativeDragData",
        seeAlso:[
        ],
        returns:{
            description:"data made available in the foreign frame",
            type:"Object"
        },
        type:"classMethod",
        definingClass:"class:EventHandler"
    },
    "attr:IconButton.iconSize":{
        ref:"attr:IconButton.iconSize",
        flags:"IRW",
        description:"The size of the normal icon for this button.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:Applet.name":{
        ref:"attr:Applet.name",
        flags:"IR",
        description:"Sets the 'name' attribute on the applet object.  If a name is not provided it will be\n  auto-generated.  Note that in general you don't need to set this.  If you have a handle to\n  your ISC Applet object you can simply call ${isc.DocUtils.linkForRef('method:Applet.getPluginHandle')} to get a\n  handle to the element.",
        name:"name",
        seeAlso:[
            {
                ref:"method:Applet.getPluginHandle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:ResultTree.loadDataOnDemand":{
        ref:"attr:ResultTree.loadDataOnDemand",
        flags:"IR",
        description:"Does this resultTree load data incrementally as folders within the tree are opened, or\n is it all loaded in a single request?",
        name:"loadDataOnDemand",
        seeAlso:[
            {
                ref:"attr:TreeGrid.loadDataOnDemand",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "method:RibbonGroup.createControl":{
        ref:"method:RibbonGroup.createControl",
        flags:"",
        description:" Add a new control to this RibbonBar.  The control is created using the autoChild system,\n according to the ${isc.DocUtils.linkForRef('attr:RibbonGroup.newControlConstructor','new control')} You can either create your group and pass it in the\n first parameter, or you can pass a properties clock from which to automatically\n construct it.\n\n",
        name:"createControl",
        seeAlso:[
        ],
        params:[
            {
                description:"properties from which to construct a new control",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"Canvas Properties"
            },
            {
                description:"the index at which to insert the new control",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:RibbonGroup"
    },
    "group:KeyRegistry":{
        ref:"group:KeyRegistry",
        refs:[
            "classMethod:Page.registerKey",
            "classMethod:Page.unregisterKey"
        ],
        name:"KeyRegistry",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:SectionStackSection.canCollapse":{
        ref:"attr:SectionStackSection.canCollapse",
        flags:"I",
        description:"This attribute controls whether or not the expand/collapse UI control is shown on the\n header of this section.  Any section can still be expanded/collapsed programmatically,\n regardless of this setting.",
        name:"canCollapse",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsExpandCollapse')}"
        ],
        definingClass:"object:SectionStackSection"
    },
    "attr:RichTextEditor.fontControls":{
        ref:"attr:RichTextEditor.fontControls",
        flags:"IRA",
        description:"Default font control group. Consists of an array of ${isc.DocUtils.linkForRef('type:ControlName')}s and/or\n ${isc.DocUtils.linkForRef('class:Canvas')} instances. To display this group of controls for some RichTextEditor,\n include <code>\"fontControls\"</code> in the ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')} array.",
        name:"fontControls",
        seeAlso:[
        ],
        valueType:"Array of ControlName",
        defaultValue:"[\"fontSelector\", \"fontSizeSelector\"]",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "group:xmlClientVsServer":{
        ref:"group:xmlClientVsServer",
        refs:[
        ],
        description:"Server benefits\n - faster client-side processing\n Server neutral\n - heavy customization of XML transform, if any, written in Java\n\n Client benefits\n - faster server-side processing\n Client neutral\n - heavy customization of XML transform, if any, written in JavaScript",
        name:"xmlClientVsServer",
        seeAlso:[
        ],
        type:"group"
    },
    "type:SummaryFunction":{
        ref:"type:SummaryFunction",
        values:[
            {
                description:"<i>Client:</i> iterates through the set of records, picking up and summing all numeric values for the specified field. Returns null to indicate invalid summary value if\n any non numeric field values are encountered.<br>\n <i>Server:</i> acts exactly like SQL SUM function.",
                value:"sum"
            },
            {
                description:"<i>Client:</i> iterates through the set of records, picking up all numeric values for the specified field and determining the mean value. Returns null to indicate invalid\n summary value if any non numeric field values are encountered.<br>\n <i>Server:</i> acts exactly like SQL AVG function.",
                value:"avg"
            },
            {
                description:"<i>Client:</i> iterates through the set of records, picking up all values for the specified field and finding the maximum value. Handles numeric fields and\n date type fields only. Returns null to indicate invalid\n summary value if any non numeric/date field values are encountered.<br>\n <i>Server:</i> acts exactly like SQL MAX function.",
                value:"max"
            },
            {
                description:"<i>Client:</i> iterates through the set of records, picking up all values for the specified field and finding the minimum value.  Handles numeric fields and\n date type fields only. Returns null to indicate invalid summary value if\n any non numeric field values are encountered.<br>\n <i>Server:</i> acts exactly like SQL MIN function.",
                value:"min"
            },
            {
                description:"<i>Client:</i> iterates through the set of records, picking up all numeric values for the specified field and multiplying them together.\n Returns null to indicate invalid summary value if\n any non numeric field values are encountered.<br>\n <i>Server:</i> <b>not supported</b>.",
                value:"multiplier"
            },
            {
                description:"<i>Client:</i> returns a numeric count of the total number of records passed in.<br> <i>Server:</i> acts exactly like SQL COUNT function.",
                value:"count"
            },
            {
                description:"<i>Client:</i> returns <code>field.summaryValueTitle</code> if specified, otherwise <code>field.title</code><br>\n <i>Server:</i> <b>not supported</b>.",
                value:"title"
            },
            {
                description:"<i>Client:</i> Currently the same as the <b>min</b> function.<br> <i>Server:</i> implemented as SQL MIN function.",
                value:"first"
            },
            {
                description:"<i>Client:</i> iterates through the set of records, producing a string with each value concatenated to the end.<br>\n <i>Server:</i> implemented as SQL CONCAT function. Supported only by SQLDataSource with Oracle DB driver.",
                value:"concat"
            }
        ],
        description:"This is used for client-side or server-side summaries\n <ul><li> Client-side: Function to produce a summary value based on an array of records and a field definition. \n An example usage is the ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','listGrid summary row')}, where\n a row is shown at the bottom of the listGrid containing summary information about each\n column.</li>\n <li>Server-side: Function used for getting summarized field value using \n ${isc.DocUtils.linkForRef('group:serverSummaries','Server Summaries feature')} or when \n ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom','Including values from multiple records')}</li></ul>\n <P>\n For the client-side SummaryFunctions may be specified in one of 2 ways:<ul>\n <li>as an explicit function or executable\n ${isc.DocUtils.linkForRef('group:stringMethods','StringMethod')}, which will be passed <code>records</code> (an array of records)\n and <code>field</code> (the field definition for which the summary is required).</li>\n <li>as a standard SummaryFunction identifier</li></ul>\n For valid ways to configure SummaryFunctions to use server-side feature see the\n ${isc.DocUtils.linkForRef('group:serverSummaries','Server Summaries overview')}.",
        name:"SummaryFunction",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "serverSummaries"
        ]
    },
    "method:ResultSet.findByKey":{
        ref:"method:ResultSet.findByKey",
        flags:"",
        description:" Attempt to find the record in the resultSet that has a primary key value that matches the \n passed in parameter value. Only the locally cached data will be searched. \n Checks only loaded rows and will not trigger a fetch. Returns null if there is no match, \n data is not loaded, or there is no ${isc.DocUtils.linkForRef('attr:ResultSet.dataSource','dataSource')}.\n <p>\n Note, if you pass a simple value to this method, it will be matched against the first \n primaryKey field.  For DataSources with a composite primary key (multiple primaryKey fields),\n pass\n <smartclient>a criteria object containing just your primaryKeys, like this: \n <code>{ firstPkField: \"value\", secondPkField: 25 }</code>.</smartclient>\n <smartgwt>a Criteria instance containing just primaryKey entries.</smartgwt>\n\n",
        name:"findByKey",
        seeAlso:[
        ],
        params:[
            {
                description:"primary key value to search for",
                optional:false,
                name:"keyValue",
                defaultValue:null,
                type:"Object"
            }
        ],
        returns:{
            description:"the record with a matching primary key field, or null if not found",
            type:"Record"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "group:clickMask":{
        ref:"group:clickMask",
        refs:[
            "method:Canvas.showClickMask",
            "method:Canvas.hideClickMask",
            "method:Canvas.clickMaskUp",
            "classMethod:EventHandler.targetIsMasked",
            "type:ClickMaskMode"
        ],
        name:"clickMask",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridField.hiliteIconPosition":{
        ref:"attr:ListGridField.hiliteIconPosition",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIcons')} are present, where the hilite icon will be placed\n relative to the field value.  See ${isc.DocUtils.linkForRef('type:HiliteIconPosition')}.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconPosition')}.",
        name:"hiliteIconPosition",
        seeAlso:[
        ],
        valueType:"HiliteIconPosition",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "hiliting"
        ]
    },
    "method:DateItem.selectValue":{
        ref:"method:DateItem.selectValue",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.selectValue','selectValue()')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"selectValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DateItem"
    },
    "attr:TreeGrid.openerIconWidth":{
        ref:"attr:TreeGrid.openerIconWidth",
        flags:"IRW",
        description:"Width in pixels of the opener icons, that is, the icons which show the open or closed\n state of the node, typically a [+] or [-] symbol.\n <P>\n If not specified, ${isc.DocUtils.linkForRef('attr:TreeGrid.openerIconSize')} is used instead.",
        name:"openerIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:DynamicForm.clearErrors":{
        ref:"method:DynamicForm.clearErrors",
        flags:"",
        description:"\tClears all errors for this DynamicForm.\n",
        name:"clearErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"If true, redraw the form to clear any visible error messages.",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "method:ListGridField.getGridSummary":{
        ref:"method:ListGridField.getGridSummary",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true, and this method is specified it will be\n called to generate the summary value to be displayed in the grid summary row. Note that\n this is called instead of making use of the ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')}.\n <P>\n As with ${isc.DocUtils.linkForRef('method:ListGrid.getGridSummary')} this method may return an array of results -\n in this case each result will show up in a separate row in the ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRow')}\n grid.\n <P>\n If this grid is grouped, and ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true, this method\n will be passed a third parameter - an array of group-level summaries.\n",
        name:"getGridSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"records for which a summary is being generated",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of ListGridRecord"
            },
            {
                description:"pointer to the field for which summary value is being generated",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"If this grid is grouped and  ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is specified, this parameter contains an array of already-\n  calculated summary values for each group in the grid. Each element in this array will\n  be an object containing calculated summary values for each field in the grid, as well as\n  a specified groupValue and groupName, allowing the developer to determine which group this\n  summary value comes from",
                optional:true,
                name:"groupSummaries",
                defaultValue:null,
                type:"Array of objects"
            }
        ],
        returns:{
            description:"summary value to display.",
            type:"any"
        },
        type:"method",
        definingClass:"object:ListGridField"
    },
    "classMethod:Array.isLoading":{
        ref:"classMethod:Array.isLoading",
        flags:"A",
        description:" Is the object passed in a loading marker value? For use with Lists that manage remote\n datasets, to indicate that a record has not yet been retrieved from the server. A typical\n use case might be to check if a row has been loaded in a ListGrid - for example:\n <P>\n <code>\n if (Array.isLoading(myList.getRecord(0))) isc.warn(\"Please wait for the data to load.\");\n </code>\n",
        name:"isLoading",
        seeAlso:[
        ],
        params:[
            {
                description:"data to test.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"classMethod",
        definingClass:"object:Array"
    },
    "method:TreeGrid.startEditingNew":{
        ref:"method:TreeGrid.startEditingNew",
        flags:"",
        description:" This inherited ${isc.DocUtils.linkForRef('method:ListGrid.startEditingNew','ListGrid API')} is not supported by the TreeGrid\n since adding a new tree node arbitrarily at the end of the tree is usually not useful.\n Instead, to add a new tree node and begin editing it, use either of these two strategies:\n <ol>\n <li> add a new node to the client-side Tree model via ${isc.DocUtils.linkForRef('method:Tree.add')}, then use\n ${isc.DocUtils.linkForRef('method:ListGrid.startEditing','TreeGrid.startEditing()')} to begin editing this node.  Note that if using a DataSource, when the\n node is saved, an \"update\" operation will be used since adding a node directly to the\n client-side ${isc.DocUtils.linkForRef('class:ResultTree')} effectively means a new node has been added server side.\n <li> use ${isc.DocUtils.linkForRef('method:DataSource.addData')} to immediately save a new node.  Automatic cache sync\n by the ${isc.DocUtils.linkForRef('class:ResultTree')} will cause the node to be integrated into the tree.  When the\n callback to addData() fires, locate the new node by matching primary key and call\n ${isc.DocUtils.linkForRef('method:ListGrid.startEditing','TreeGrid.startEditing()')} to begin editing it.\n </ol>\n\n",
        name:"startEditingNew",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional initial set of properties for the new record",
                optional:true,
                name:"newValues",
                defaultValue:null,
                type:"object"
            },
            {
                description:"Whether to suppress the default behavior of moving focus                                   to the newly shown editor.",
                optional:true,
                name:"suppressFocus",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "editing"
        ]
    },
    "method:ResultTree.setCriteria":{
        ref:"method:ResultTree.setCriteria",
        flags:"",
        description:" Set the filter criteria to use when fetching rows.\n <P>\n Depending on the result of ${isc.DocUtils.linkForRef('method:ResultTree.compareCriteria')} and setting for\n ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode')}, setting criteria may cause a trip to the server to get a new\n set of nodes, or may simply cause already-fetched nodes to be re-filtered according to the\n new criteria.\n <P>\n For a basic overview on when server fetches are generally performed, see\n ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode')}.\n However, this is not the final determination of when server fetches occur. Criteria can\n be split into local criteria and server criteria by specifying ${isc.DocUtils.linkForRef('attr:ResultTree.serverFilterFields')}.\n Thus, even when using fetchMode:\"local\" a new server fetch will occur if the server\n criteria changes. For details on how the criteria is split, see\n ${isc.DocUtils.linkForRef('method:DataSource.splitCriteria')}.\n <P>\n Note: if criteria is being split to retrieve server criteria portion and the criteria\n is an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}, the criteria must consist of a single \"and\" operator\n and one or more simple criteria below it. No other logical operators may be used. In\n other words, the ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} provided must be exactly representable by a\n simple criteria.\n\n",
        name:"setCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"the filter criteria",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            }
        ],
        type:"method",
        definingClass:"class:ResultTree"
    },
    "attr:DateTimeItem.useTextField":{
        ref:"attr:DateTimeItem.useTextField",
        flags:"IRW",
        description:"DateTimeItems show datetime values in a freeform text entry area.",
        name:"useTextField",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateTimeItem",
        groups:[
            "basics"
        ]
    },
    "method:GridRenderer.getCellFromDomElement":{
        ref:"method:GridRenderer.getCellFromDomElement",
        flags:"A",
        description:" Given a pointer to an element in the DOM, this method will check whether this\n element is contained within a cell of the gridRenderer, and if so return a\n 2 element array denoting the <code>[rowNum,colNum]</code> of the element\n in question.\n",
        name:"getCellFromDomElement",
        seeAlso:[
        ],
        params:[
            {
                description:"DOM element to test",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"DOM element"
            }
        ],
        returns:{
            description:"2 element array containing rowNum and colNum, or null if the   element is not contained in any cell in this gridRenderer",
            type:"Array"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "autoTest"
        ]
    },
    "method:CellSelection.getSelectedCells":{
        ref:"method:CellSelection.getSelectedCells",
        flags:"",
        description:"  Returns an array of the currently selected cells.  Each cell is returned as a 2 element\n  array in the form <code>[rowNum, colNum]</code>.\n",
        name:"getSelectedCells",
        seeAlso:[
        ],
        returns:{
            description:"an array of the selected cells, as 2 element arrays",
            type:"array"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "attr:Canvas.edgeSize":{
        ref:"attr:Canvas.edgeSize",
        flags:"IR",
        description:"Size in pixels for corners and edges",
        name:"edgeSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"10",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('edges')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:Progressbar.length":{
        ref:"attr:Progressbar.length",
        flags:"IRW",
        getter:[
            "getLength"
        ],
        description:"Length of the progressbar in pixels. This is effectively height for a vertical\n progressbar, or width for a horizontal progressbar.\n <P>\n This property must be set instead of setting <code>width</code> or <code>height</code>.",
        name:"length",
        setter:[
            "setLength"
        ],
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:Progressbar",
        groups:[
            "appearance"
        ]
    },
    "attr:TableView.recordDescriptionStyle":{
        ref:"attr:TableView.recordDescriptionStyle",
        flags:"IRW",
        description:"Default style for description.",
        name:"recordDescriptionStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"recordDescription\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "method:ListGrid.setShowRecordComponents":{
        ref:"method:ListGrid.setShowRecordComponents",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} attribute\n",
        name:"setShowRecordComponents",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for <code>this.showRecordComponents</code>",
                optional:false,
                name:"showRecordComponents",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:PickList.animationTime":{
        ref:"attr:PickList.animationTime",
        flags:"IRWA",
        description:"If this.animatePickList is true - this specifies the duration of the animation effect\n applied when showing the pickList",
        name:"animationTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"200",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:DataSource.progressiveLoadingThreshold":{
        ref:"attr:DataSource.progressiveLoadingThreshold",
        flags:"IRW",
        description:"Indicates the dataset size that will cause SmartClient Server to automatically\n switch into ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressive loading mode')} for this DataSource.\n To prevent automatic switching to progressive loading, set this property to -1.",
        name:"progressiveLoadingThreshold",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"200000",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "progressiveLoading"
        ]
    },
    "type:DSDataFormat":{
        ref:"type:DSDataFormat",
        values:[
            {
                description:"Make an HTTP request in a format recognized by the ISC server and expect ISC server\n response format.  ${isc.DocUtils.linkForRef('group:serverDataIntegration','Server-side integration')} can then be\n used to connect to any kind of data store or web service.",
                value:"\"iscServer\""
            },
            {
                description:"Expect XML responses.  Request format depends on the setting for\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','protocol')}.  This is the correct setting when\n consuming RSS feeds, XML web services (whether SOAP, REST, XML-RPC or custom format),\n and XML flat files directly from the browser.\n <P>\n Values for \"date\", \"time\" or \"datetime\" fields in responses should be specified in the\n applicable <a target=_blank href=\"http://www.w3.org/TR/xmlschema-2/#dateTime\">XML Schema\n date format</a>.\n If no timezone is explicitly specified, dates / datetimes received by the client are \n assumed to be GMT. Note that \"date\" type fields represent logical dates and may omit\n time information entirely, and \"time\" type fields may omit date information.\n See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','Date and Time Format and storage')} for more information\n on how date values are serialized in requests sent to the server.\n  \n <P>\n A DSResponse will be derived from the returned XML via the process described under\n ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')}.",
                value:"\"xml\""
            },
            {
                description:"Expect response in JSON <a href='http://json.org' target='_blank'>(Java Script Object Notation)</a>\n format, ready to be eval()'d. Response should either be a naked object literal:\n <pre>\n     { \"property\":\"value1\", \"property2\" : \"value2\", ... }\n </pre>\n or a string that evals to return a valid response object:\n <pre>\n     var response = { \"property\":\"value1\", \"property2\" : \"value2\", ... }\n     response;\n </pre>\n <P>\n A DSResponse will be derived from the returned JSON via the process described under\n ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')}.\n <P>\n As with <code>\"xml\"</code> responses, values for \"date\" or \"datetime\" fields should be\n specified as a String in \n <a target=_blank href=\"http://www.w3.org/TR/xmlschema-2/#dateTime\">XML Schema date format</a>\n and may include a timezone.  In the absence of a timezone they will be assumed to be GMT.\n <P>\n Request format depends on the setting for ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','protocol')}.  \n See also ${isc.DocUtils.linkForRef('class:XJSONDataSource')}.",
                value:"\"json\""
            },
            {
                description:"SmartClient will not attempt to parse the response, instead,\n ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')} must be implemented.\n <code>transformResponse</code> will receive the \"data\" parameter as a String, and must\n parse this String into an Array of Objects, which should be set as\n ${isc.DocUtils.linkForRef('attr:DSResponse.data')}.  Request format depends on the setting for\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','protocol')}.\n <P>\n Note that, unlike either the \"json\" or \"xml\" settings of <code>dataFormat</code>, you\n are responsible for ensuring that parsed values are the correct type, for example, using\n the JavaScript built-ins <code>parseInt</code> and <code>parseFloat</code> on integer\n and decimal values respectively, and using <code>new Date()</code> to construct valid\n Dates.",
                value:"\"custom\""
            }
        ],
        description:"Indicates the format to be used for HTTP requests and responses when\n fulfilling DSRequests (eg, when ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} is called).\n <P>\n Note that ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','request queuing')} is only available for\n \"iscServer\" requests.",
        name:"DSDataFormat",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('simpleJSON')}"
        ],
        groups:[
            "clientDataIntegration",
            "serverDataIntegration"
        ]
    },
    "classMethod:MathFunction.registerFunction":{
        ref:"classMethod:MathFunction.registerFunction",
        flags:"",
        description:" Registers a new math function for use with FormulaFields. The registered functions also are available under all uppercase and initial uppercase names.\n",
        name:"registerFunction",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"newFunction",
                defaultValue:null,
                type:"MathFunction"
            }
        ],
        type:"classMethod",
        definingClass:"class:MathFunction",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Chart.threeD":{
        ref:"attr:Chart.threeD",
        flags:"IR",
        description:"Whether to show chart in a 3D appearance, for charts that support this.",
        name:"threeD",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:Chart",
        groups:[
            "chartAppearance"
        ]
    },
    "classMethod:FileLoader.cacheISC":{
        ref:"classMethod:FileLoader.cacheISC",
        flags:"",
        description:"\n Caches the specified SmartClient modules and skin.  Calling this method is equivalent to using\n the <code>loadISC</code> JSP tag with <code>cacheOnly=\"true\"</code>.\n\n",
        name:"cacheISC",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the skin to load.  If not specified, the skin specified by the                        default ${isc.DocUtils.linkForRef('classAttr:FileLoader.defaultSkin')} will be used.\n                        Instead of a skin name, you can specify a skinDir - this works just\n                        like ${isc.DocUtils.linkForRef('classMethod:Page.setSkinDir')} - the skin assumed to be a skinDir if\n                        there's at least one forward slash (/) in the name.",
                optional:true,
                name:"skin",
                defaultValue:null,
                type:"String"
            },
            {
                description:"List of modules to load.  If not specified, the list of modules                                   specified by the default\n                                   ${isc.DocUtils.linkForRef('classAttr:FileLoader.defaultModules')} will be used.  You\n                                   can specify modules as \"Core,Foundation\" or as [\"Core\",\n                                   \"Foundation\"]",
                optional:true,
                name:"modules",
                defaultValue:null,
                type:"String or List"
            },
            {
                description:"Optional code to execute when all specified modules and                                      skin have been cached.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "class:CellSelection":{
        methods:[
            "method:CellSelection.cellIsSelected",
            "method:CellSelection.anySelected",
            "method:CellSelection.getSelectedCells",
            "method:CellSelection.getSelectedRecord",
            "method:CellSelection.selectionChanged",
            "method:CellSelection.selectCell",
            "method:CellSelection.deselectCell",
            "method:CellSelection.selectCellList",
            "method:CellSelection.deselectCellList",
            "method:CellSelection.selectSingleCell"
        ],
        ref:"class:CellSelection",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System/Selection"
        ],
        attrs:[
        ],
        description:"Maintains a representation of selection over a 2-dimensional grid of objects.<br>\n  Automatically created to manage cell-selection on ${isc.DocUtils.linkForRef('class:CubeGrid')} widgets.",
        name:"CellSelection",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Class.delayCall":{
        ref:"method:Class.delayCall",
        flags:"",
        description:"  This is a helper to delay a call to some method on this object by some specified\n  amount of time.\n",
        name:"delayCall",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the method to call",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"array of arguments to pass to the method in question",
                optional:true,
                name:"arrayArgs",
                defaultValue:null,
                type:"array"
            },
            {
                description:"Number of ms to delay the call by - defaults to zero (so just pulls                        execution of the method out of the current execution thread.",
                optional:true,
                name:"time",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Timer ID for the delayed call - can be passed to                      ${isc.DocUtils.linkForRef('classMethod:Timer.clear')} to cancel the call before it executes",
            type:"string"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "method:Calendar.getDateCSSText":{
        ref:"method:Calendar.getDateCSSText",
        flags:"",
        description:" Return CSS text for styling the cell associated with the passed date and/or rowNum & colNum,\n which will be applied in addition to the CSS class for the cell, as overrides.\n <p>\n \"CSS text\" means semicolon-separated style settings, suitable for inclusion in a CSS\n stylesheet or in a STYLE attribute of an HTML element.\n\n",
        name:"getDateCSSText",
        seeAlso:[
            {
                ref:"method:Calendar.getDateStyle",
                description:null
            }
        ],
        params:[
            {
                description:"the date to return CSS text for",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the row number to get the CSS for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the column number to get the date for",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the ListGrid used by the current Calendar view",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"CSS text for the associated cell",
            type:"String"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:Calendar.timelineUnitsPerColumn":{
        ref:"attr:Calendar.timelineUnitsPerColumn",
        flags:"IR",
        description:"How many units of ${isc.DocUtils.linkForRef('attr:Calendar.timelineGranularity')} each cell represents.",
        name:"timelineUnitsPerColumn",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "group:checkboxField":{
        ref:"group:checkboxField",
        refs:[
            "method:ListGrid.getCheckboxField",
            "method:ListGrid.isCheckboxField",
            "attr:ListGrid.checkboxField",
            "attr:ListGrid.checkboxFieldTrueImage",
            "attr:ListGrid.checkboxFieldFalseImage",
            "attr:ListGrid.checkboxFieldPartialImage",
            "attr:ListGrid.printCheckboxFieldTrueImage",
            "attr:ListGrid.printCheckboxFieldFalseImage",
            "attr:ListGrid.printCheckboxFieldPartialImage",
            "attr:ListGrid.checkboxFieldImageWidth",
            "attr:ListGrid.checkboxFieldImageHeight",
            "attr:ListGrid.checkboxFieldHSpace"
        ],
        name:"checkboxField",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:Class.logIsErrorEnabled":{
        ref:"classMethod:Class.logIsErrorEnabled",
        flags:"",
        description:" Check whether a message logged at \"error\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsErrorEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:TextExportSettings.timeFormat":{
        ref:"attr:TextExportSettings.timeFormat",
        flags:"IR",
        description:"Format to use when outputting time values.  Default is 24 hour time.",
        name:"timeFormat",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "attr:ListGrid.scrollToCellYPosition":{
        ref:"attr:ListGrid.scrollToCellYPosition",
        flags:"IRW",
        description:"When scrollToCell is called, this is used as defaults if yPosition weren't explicitly passed\n into the method.",
        name:"scrollToCellYPosition",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:UserTask.cancelEditing":{
        ref:"method:UserTask.cancelEditing",
        flags:"",
        description:" Revert any changes made in a form and finish this userTask execution. \n ${isc.DocUtils.linkForRef('attr:UserTask.cancelElement')} will be proceed as the next element of current process.  \n",
        name:"cancelEditing",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:UserTask"
    },
    "method:Date.getShortYear":{
        ref:"method:Date.getShortYear",
        flags:"",
        description:"      Return a 2 digit year for this date.\n",
        name:"getShortYear",
        seeAlso:[
        ],
        returns:{
            description:"year number, padded to 2 characters",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "class:Canvas":{
        methods:[
            "method:Canvas.updateEditNode",
            "method:Canvas.setAriaState",
            "method:Canvas.init",
            "method:Canvas.initWidget",
            "method:Canvas.getByLocalId",
            "method:Canvas.isDrawn",
            "method:Canvas.getID",
            "method:Canvas.getInnerHTML",
            "method:Canvas.draw",
            "method:Canvas.getPrintHTML",
            "method:Canvas.setHtmlElement",
            "method:Canvas.setHtmlPosition",
            "method:Canvas.isDirty",
            "method:Canvas.markForRedraw",
            "method:Canvas.redraw",
            "method:Canvas.clear",
            "method:Canvas.destroy",
            "method:Canvas.markForDestroy",
            "method:Canvas.getOuterElement",
            "method:Canvas.getContentElement",
            "method:Canvas.addChild",
            "method:Canvas.removePeer",
            "method:Canvas.depeer",
            "method:Canvas.deparent",
            "method:Canvas.removeChild",
            "method:Canvas.addPeer",
            "method:Canvas.setSnapTo",
            "method:Canvas.getSnapTo",
            "method:Canvas.setSnapEdge",
            "method:Canvas.getSnapEdge",
            "method:Canvas.getParentCanvas",
            "method:Canvas.getMasterCanvas",
            "method:Canvas.getParentElements",
            "method:Canvas.contains",
            "method:Canvas.showClickMask",
            "method:Canvas.hideClickMask",
            "method:Canvas.clickMaskUp",
            "method:Canvas.showComponentMask",
            "method:Canvas.hideComponentMask",
            "method:Canvas.setRect",
            "method:Canvas.getLeft",
            "method:Canvas.setLeft",
            "method:Canvas.getTop",
            "method:Canvas.setTop",
            "method:Canvas.getWidth",
            "method:Canvas.setWidth",
            "method:Canvas.getHeight",
            "method:Canvas.setHeight",
            "method:Canvas.getRight",
            "method:Canvas.setRight",
            "method:Canvas.getBottom",
            "method:Canvas.setBottom",
            "method:Canvas.getScrollWidth",
            "method:Canvas.getScrollHeight",
            "method:Canvas.getScrollLeft",
            "method:Canvas.getScrollTop",
            "method:Canvas.setPageLeft",
            "method:Canvas.setPageTop",
            "method:Canvas.getPageLeft",
            "method:Canvas.getPageTop",
            "method:Canvas.getPageRight",
            "method:Canvas.getPageBottom",
            "method:Canvas.setMargin",
            "method:Canvas.setPadding",
            "method:Canvas.containsPoint",
            "method:Canvas.visibleAtPoint",
            "method:Canvas.intersects",
            "method:Canvas.intersectsRect",
            "method:Canvas.containsEvent",
            "method:Canvas.getOffsetX",
            "method:Canvas.getOffsetY",
            "method:Canvas.getScrollbarSize",
            "method:Canvas.getViewportWidth",
            "method:Canvas.getViewportHeight",
            "method:Canvas.getInnerHeight",
            "method:Canvas.getInnerWidth",
            "method:Canvas.getInnerContentHeight",
            "method:Canvas.getInnerContentWidth",
            "method:Canvas.getVisibleWidth",
            "method:Canvas.getVisibleHeight",
            "method:Canvas.moveBy",
            "method:Canvas.moveTo",
            "method:Canvas.getVSnapOrigin",
            "method:Canvas.getHSnapOrigin",
            "method:Canvas.showNextTo",
            "method:Canvas.resizeBy",
            "method:Canvas.resized",
            "method:Canvas.setPercentSource",
            "method:Canvas.layoutChildren",
            "method:Canvas.resizeTo",
            "method:Canvas.parentResized",
            "method:Canvas.setDragTracker",
            "method:Canvas.shouldDragScroll",
            "method:Canvas.setOverflow",
            "method:Canvas.adjustForContent",
            "method:Canvas.getScrollBottom",
            "method:Canvas.getScrollRight",
            "method:Canvas.scrollToTop",
            "method:Canvas.scrollToBottom",
            "method:Canvas.scrollToLeft",
            "method:Canvas.scrollToRight",
            "method:Canvas.scrollBy",
            "method:Canvas.scrollByPercent",
            "method:Canvas.scrollTo",
            "method:Canvas.scrollToPercent",
            "method:Canvas.show",
            "method:Canvas.showRecursively",
            "method:Canvas.hide",
            "method:Canvas.isVisible",
            "method:Canvas.setEnabled",
            "method:Canvas.setDisabled",
            "method:Canvas.enable",
            "method:Canvas.disable",
            "method:Canvas.isDisabled",
            "method:Canvas.isEnabled",
            "method:Canvas.setCanFocus",
            "method:Canvas.focus",
            "method:Canvas.blur",
            "method:Canvas.containsFocus",
            "method:Canvas.setAccessKey",
            "method:Canvas.setTabIndex",
            "method:Canvas.focusInNextTabElement",
            "method:Canvas.focusInPreviousTabElement",
            "method:Canvas.getZIndex",
            "method:Canvas.bringToFront",
            "method:Canvas.sendToBack",
            "method:Canvas.moveAbove",
            "method:Canvas.moveBelow",
            "method:Canvas.getContents",
            "method:Canvas.setContents",
            "method:Canvas.setBackgroundColor",
            "method:Canvas.setBackgroundImage",
            "method:Canvas.setBorder",
            "method:Canvas.setOpacity",
            "method:Canvas.setCursor",
            "method:Canvas.getHoverComponent",
            "method:Canvas.handleHover",
            "method:Canvas.updateHover",
            "method:Canvas.hoverHidden",
            "method:Canvas.hover",
            "method:Canvas.getHoverHTML",
            "method:Canvas.setClassName",
            "method:Canvas.setStyleName",
            "method:Canvas.showContextMenu",
            "method:Canvas.hideContextMenu",
            "method:Canvas.mouseOver",
            "method:Canvas.mouseDown",
            "method:Canvas.rightMouseDown",
            "method:Canvas.mouseStillDown",
            "method:Canvas.mouseMove",
            "method:Canvas.mouseOut",
            "method:Canvas.mouseUp",
            "method:Canvas.click",
            "method:Canvas.doubleClick",
            "method:Canvas.mouseWheel",
            "method:Canvas.dragRepositionStart",
            "method:Canvas.dragRepositionMove",
            "method:Canvas.dragRepositionStop",
            "method:Canvas.dragResizeStart",
            "method:Canvas.dragResizeMove",
            "method:Canvas.dragResizeStop",
            "method:Canvas.dragStart",
            "method:Canvas.dragMove",
            "method:Canvas.dragStop",
            "method:Canvas.dropOver",
            "method:Canvas.dropMove",
            "method:Canvas.dropOut",
            "method:Canvas.drop",
            "method:Canvas.keyDown",
            "method:Canvas.keyUp",
            "method:Canvas.keyPress",
            "method:Canvas.willAcceptDrop",
            "method:Canvas.getHSnapPosition",
            "method:Canvas.getVSnapPosition",
            "method:Canvas.shouldSnapOnDrop",
            "method:Canvas.getImgURL",
            "method:Canvas.imgHTML",
            "method:Canvas.getImage",
            "method:Canvas.setImage",
            "method:Canvas.linkHTML",
            "method:Canvas.setEdgeOpacity",
            "method:Canvas.setShowShadow",
            "method:Canvas.setGroupLabelBackgroundColor",
            "method:Canvas.setGroupTitle",
            "method:Canvas.parentMoved",
            "method:Canvas.moved",
            "method:Canvas.focusChanged",
            "method:Canvas.scrolled",
            "method:Canvas.visibilityChanged",
            "method:Canvas.setValuesManager",
            "method:Canvas.setDataPath",
            "method:Canvas.getFullDataPath",
            "method:Canvas.animateMove",
            "method:Canvas.animateResize",
            "method:Canvas.animateRect",
            "method:Canvas.animateFade",
            "method:Canvas.animateScroll",
            "method:Canvas.animateShow",
            "method:Canvas.animateHide",
            "method:Canvas.setShowResizeBar"
        ],
        exampleConfig:"Canvas.xml",
        ref:"class:Canvas",
        classAttrs:[
            "classAttr:Canvas.TAB_INDEX_FLOOR",
            "classAttr:Canvas.neverUsePNGWorkaround",
            "classAttr:Canvas.neverUseFilters",
            "classAttr:Canvas.allowExternalFilters",
            "classAttr:Canvas.loadingImageSrc",
            "classAttr:Canvas.loadingImageSize"
        ],
        classMethods:[
            "classMethod:Canvas.setNeverUseFilters",
            "classMethod:Canvas.setAllowExternalFilters",
            "classMethod:Canvas.getEventEdge",
            "classMethod:Canvas.getById",
            "classMethod:Canvas.setShowCustomScrollbars",
            "classMethod:Canvas.getPrintHTML",
            "classMethod:Canvas.hiliteCharacter",
            "classMethod:Canvas.printComponents",
            "classMethod:Canvas.getPrintPreview",
            "classMethod:Canvas.showPrintPreview"
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:Canvas.ariaRole",
            "attr:Canvas.ariaState",
            "attr:Canvas.useOpacityFilter",
            "attr:Canvas.ID",
            "attr:Canvas.autoDraw",
            "attr:Canvas.parentElement",
            "attr:Canvas.parentCanvas",
            "attr:Canvas.topElement",
            "attr:Canvas.masterElement",
            "attr:Canvas.children",
            "attr:Canvas.peers",
            "attr:Canvas.htmlElement",
            "attr:Canvas.htmlPosition",
            "attr:Canvas.matchElement",
            "attr:Canvas.position",
            "attr:Canvas.left",
            "attr:Canvas.top",
            "attr:Canvas.width",
            "attr:Canvas.height",
            "attr:Canvas.defaultWidth",
            "attr:Canvas.defaultHeight",
            "attr:Canvas.minWidth",
            "attr:Canvas.maxWidth",
            "attr:Canvas.minHeight",
            "attr:Canvas.maxHeight",
            "attr:Canvas.shrinkElementOnHide",
            "attr:Canvas.autoShowParent",
            "attr:Canvas.visibility",
            "attr:Canvas.hideUsingDisplayNone",
            "attr:Canvas.canSelectText",
            "attr:Canvas.className",
            "attr:Canvas.styleName",
            "attr:Canvas.contents",
            "attr:Canvas.dynamicContents",
            "attr:Canvas.dynamicContentsVars",
            "attr:Canvas.margin",
            "attr:Canvas.padding",
            "attr:Canvas.border",
            "attr:Canvas.backgroundColor",
            "attr:Canvas.backgroundImage",
            "attr:Canvas.backgroundRepeat",
            "attr:Canvas.backgroundPosition",
            "attr:Canvas.appImgDir",
            "attr:Canvas.skinImgDir",
            "attr:Canvas.cursor",
            "attr:Canvas.disabledCursor",
            "attr:Canvas.opacity",
            "attr:Canvas.overflow",
            "attr:Canvas.showCustomScrollbars",
            "attr:Canvas.scrollbarSize",
            "attr:Canvas.scrollbarConstructor",
            "attr:Canvas.disabled",
            "attr:Canvas.enabled",
            "attr:Canvas.redrawOnResize",
            "attr:Canvas.canFocus",
            "attr:Canvas.tabIndex",
            "attr:Canvas.accessKey",
            "attr:Canvas.contextMenu",
            "attr:Canvas.menuConstructor",
            "attr:Canvas.prompt",
            "attr:Canvas.useNativeDrag",
            "attr:Canvas.canDrag",
            "attr:Canvas.dragStartDistance",
            "attr:Canvas.canDragScroll",
            "attr:Canvas.dragScrollDelay",
            "attr:Canvas.dragIntersectStyle",
            "attr:Canvas.canDragReposition",
            "attr:Canvas.dragRepositionCursor",
            "attr:Canvas.canDragResize",
            "attr:Canvas.resizeFrom",
            "attr:Canvas.useDragMask",
            "attr:Canvas.dragMaskType",
            "attr:Canvas.canHover",
            "attr:Canvas.hoverDelay",
            "attr:Canvas.showHover",
            "attr:Canvas.hoverWidth",
            "attr:Canvas.hoverHeight",
            "attr:Canvas.hoverAlign",
            "attr:Canvas.hoverVAlign",
            "attr:Canvas.hoverWrap",
            "attr:Canvas.hoverStyle",
            "attr:Canvas.hoverOpacity",
            "attr:Canvas.hoverMoveWithMouse",
            "attr:Canvas.hoverAutoDestroy",
            "attr:Canvas.edgeMarginSize",
            "attr:Canvas.edgeCursorMap",
            "attr:Canvas.keepInParentRect",
            "attr:Canvas.dragAppearance",
            "attr:Canvas.dragResizeAppearance",
            "attr:Canvas.dragRepositionAppearance",
            "attr:Canvas.dragType",
            "attr:Canvas.dropTypes",
            "attr:Canvas.dragTarget",
            "attr:Canvas.showDragShadow",
            "attr:Canvas.dragOpacity",
            "attr:Canvas.canDrop",
            "attr:Canvas.canAcceptDrop",
            "attr:Canvas.canDropBefore",
            "attr:Canvas.mouseStillDownInitialDelay",
            "attr:Canvas.mouseStillDownDelay",
            "attr:Canvas.doubleClickDelay",
            "attr:Canvas.noDoubleClicks",
            "attr:Canvas.useBackMask",
            "attr:Canvas.percentSource",
            "attr:Canvas.percentBox",
            "attr:Canvas.snapTo",
            "attr:Canvas.snapEdge",
            "attr:Canvas.snapOffsetLeft",
            "attr:Canvas.snapOffsetTop",
            "attr:Canvas.snapToGrid",
            "attr:Canvas.snapResizeToGrid",
            "attr:Canvas.childrenSnapToGrid",
            "attr:Canvas.childrenSnapResizeToGrid",
            "attr:Canvas.snapHGap",
            "attr:Canvas.snapVGap",
            "attr:Canvas.snapHDirection",
            "attr:Canvas.snapVDirection",
            "attr:Canvas.snapAxis",
            "attr:Canvas.snapOnDrop",
            "attr:Canvas.printChildrenAbsolutelyPositioned",
            "attr:Canvas.shouldPrint",
            "attr:Canvas.destroyed",
            "attr:Canvas.destroying",
            "attr:Canvas.componentMask",
            "attr:Canvas.componentMaskDefaults",
            "attr:Canvas.momentumScrollMinSpeed",
            "attr:Canvas.showHoverComponents",
            "attr:Canvas.showEdges",
            "attr:Canvas.edgeSize",
            "attr:Canvas.edgeOffset",
            "attr:Canvas.edgeImage",
            "attr:Canvas.customEdges",
            "attr:Canvas.edgeBackgroundColor",
            "attr:Canvas.edgeOpacity",
            "attr:Canvas.edgeShowCenter",
            "attr:Canvas.edgeCenterBackgroundColor",
            "attr:Canvas.showShadow",
            "attr:Canvas.shadowDepth",
            "attr:Canvas.shadowOffset",
            "attr:Canvas.shadowSoftness",
            "attr:Canvas.shadowImage",
            "attr:Canvas.isGroup",
            "attr:Canvas.groupBorderCSS",
            "attr:Canvas.groupLabelStyleName",
            "attr:Canvas.groupLabelBackgroundColor",
            "attr:Canvas.groupTitle",
            "attr:Canvas.valuesManager",
            "attr:Canvas.dataPath",
            "attr:Canvas.locateChildrenBy",
            "attr:Canvas.locateChildrenType",
            "attr:Canvas.locatePeersBy",
            "attr:Canvas.locatePeersType",
            "attr:Canvas.animateTime",
            "attr:Canvas.animateAcceleration",
            "attr:Canvas.animateShowEffect",
            "attr:Canvas.animateHideEffect",
            "attr:Canvas.animateMoveTime",
            "attr:Canvas.animateResizeTime",
            "attr:Canvas.animateRectTime",
            "attr:Canvas.animateFadeTime",
            "attr:Canvas.animateScrollTime",
            "attr:Canvas.animateShowTime",
            "attr:Canvas.animateHideTime",
            "attr:Canvas.animateMoveAcceleration",
            "attr:Canvas.animateResizeAcceleration",
            "attr:Canvas.animateRectAcceleration",
            "attr:Canvas.animateScrollAcceleration",
            "attr:Canvas.animateShowAcceleration",
            "attr:Canvas.animateHideAcceleration",
            "attr:Canvas.layoutAlign",
            "attr:Canvas.showResizeBar",
            "attr:Canvas.resizeBarTarget",
            "attr:Canvas.extraSpace",
            "attr:Canvas.canvasItem"
        ],
        description:"Base class for all SmartClient visual components (except ${isc.DocUtils.linkForRef('class:FormItem','FormItems')}).\n <p>\n Canvas provides:\n <ul>\n <li> basic visual lifecycle support - creation and destruction of HTML via\n      ${isc.DocUtils.linkForRef('method:Canvas.draw','draw()')} and ${isc.DocUtils.linkForRef('method:Canvas.clear','clear()')}, visibility via\n      ${isc.DocUtils.linkForRef('method:Canvas.show','show()')} and ${isc.DocUtils.linkForRef('method:Canvas.hide','hide()')}, z-layering via\n      ${isc.DocUtils.linkForRef('method:Canvas.bringToFront','bringToFront()')} and ${isc.DocUtils.linkForRef('method:Canvas.sendToBack','sendToBack()')}.\n <li> consistent cross-browser ${isc.DocUtils.linkForRef('method:Canvas.moveTo','positioning')},\n      ${isc.DocUtils.linkForRef('method:Canvas.resizeTo','sizing')} and ${isc.DocUtils.linkForRef('method:Canvas.getScrollHeight','size detection')}, with\n      automatic compensation for ${isc.DocUtils.linkForRef('type:CSSStyleName','browser CSS behavior differences')}.\n <li> clipping, scrolling and overflow management of content via ${isc.DocUtils.linkForRef('attr:Canvas.overflow')}\n <li> consistent cross-browser ${isc.DocUtils.linkForRef('method:Canvas.keyPress','key')} and ${isc.DocUtils.linkForRef('method:Canvas.mouseDown','mouse')}\n      events, including ${isc.DocUtils.linkForRef('group:mobileDevelopment','mapping touch events')} to mouse events\n <li> built-in drag and drop capabilities including ${isc.DocUtils.linkForRef('attr:Canvas.canDragReposition','moving')}, \n      ${isc.DocUtils.linkForRef('attr:Canvas.canDragResize','resizing')}, +link {canvas.canDragScroll,drag scrolling}\n      and ${isc.DocUtils.linkForRef('attr:Canvas.snapToGrid','snap-to-grid')} behavior.\n <li> the ability to either contain ${isc.DocUtils.linkForRef('attr:Canvas.contents','HTML content')} or\n      ${isc.DocUtils.linkForRef('attr:Canvas.children','contain other Canvases')}, including \n      ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','an edge-based positioning')} and \n      {canvas.percentSource,percent sizing system} for children.  For more advanced layout\n      capabilities, see ${isc.DocUtils.linkForRef('class:Layout')}.\n <li> various other details like ${isc.DocUtils.linkForRef('attr:Canvas.cursor','cursors')},\n      ${isc.DocUtils.linkForRef('method:Canvas.showClickMask','modal masking')}, ${isc.DocUtils.linkForRef('method:Canvas.animateMove','animation')},\n      ${isc.DocUtils.linkForRef('attr:Canvas.ariaRole','accessibility properties')}, and\n      ${isc.DocUtils.linkForRef('attr:Canvas.locateChildrenBy','settings')} for ${isc.DocUtils.linkForRef('group:automatedTesting','automated testing')}.\n </ul>",
        name:"Canvas",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Calendar.getDateFromPoint":{
        ref:"method:Calendar.getDateFromPoint",
        flags:"",
        description:" Returns a Date instance representing the point at the passed offsets into the body of the \n current view.\n <P>\n If snapOffsets is passed as false, returns the date representing the \n exact position of the passed offsets.  If unset or passed as true, returns the date at the \n nearest eventSnapGap to the left, for ${isc.DocUtils.linkForRef('class:Timeline')}s, or above for ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day')} \n and ${isc.DocUtils.linkForRef('attr:Calendar.weekView','week')} views.\n <P>\n If neither x nor y offsets are passed, assumes them from the last mouse event.\n <P>\n If the cell at the eventual offsets is not a date-cell, returns null.\n <P>\n Note that, for the ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month view')}, this method is functionally equivalent to \n ${isc.DocUtils.linkForRef('method:Calendar.getCellDate')}, which determines the date associated with a cell, without the additional \n offset precision offered here.\n\n",
        name:"getDateFromPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"the x offset into the body of the selected view - non-functional for                       the ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day view')}.  If this param and \"y\" are both unset, \n                      assumes both offsets from the last mouse event.",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the y offset into the body of the selected view - non-functional for the                            ${isc.DocUtils.linkForRef('attr:Calendar.timelineView','timeline view')}.  If this param and \"x\" are \n                            both unset, assumes both offsets from the last mouse event.",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"whether to snap the offsets to the nearest eventSnapGap - if                                 unset, the default is true",
                optional:true,
                name:"snapOffsets",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"the date, if any, associated with the passed co-ords in the current view",
            type:"Date"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:PickList.pickListCriteria":{
        ref:"attr:PickList.pickListCriteria",
        flags:"IRWA",
        description:"If this item has a databound pickList (for example ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')} is\n set), this property can be used to provide static filter criteria when retrieving the data\n for the pickList.",
        name:"pickListCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "method:ListGrid.getGroupState":{
        ref:"method:ListGrid.getGroupState",
        flags:"",
        description:" Returns a snapshot of the current grouping state of this ListGrid.<br>\n This object can be passed to ${isc.DocUtils.linkForRef('method:ListGrid.setGroupState')} to reset this grid's grouping\n to the current state (assuming the same data / fields are present in the grid).<br>\n",
        name:"getGroupState",
        seeAlso:[
            {
                ref:"type:ListGridGroupState",
                description:null
            },
            {
                ref:"method:ListGrid.setGroupState",
                description:null
            }
        ],
        returns:{
            description:"current view state for the grid.",
            type:"ListGridGroupState"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "method:Array.unsort":{
        ref:"method:Array.unsort",
        flags:"A",
        description:"\t\tTurn sorting off for this array, indicating that the current sort\n\t\torder should be preserved.  Return true if this is supported in this List.\n\n\t\tSome implementations may not support this -- they should return false\n\t\tto indicate to the caller that sort order must be maintained (eg: in\n\t\tthe case where sort order is derived from the server, etc).\n\n",
        name:"unsort",
        seeAlso:[
        ],
        returns:{
            description:"true == list supports unsorting, false == not supported.",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "sorting"
        ]
    },
    "attr:DataSource.configBean":{
        ref:"attr:DataSource.configBean",
        flags:"IRA",
        description:"For DataSources of ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')} \"hibernate\", the name of a Spring \n bean to query to obtain Hibernate Configuration for this particular DataSource.  Note\n that this is intended for DataSource-specific configuration overrides for unusual \n circumstances, such as a DataSource whose physical data store is a completely \n different database to that used by other DataSources.  See the \n ${isc.DocUtils.linkForRef('group:hibernateIntegration','Integration with Hibernate')} article for more \n information",
        name:"configBean",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:DateRangeItem.getValue":{
        ref:"method:DateRangeItem.getValue",
        flags:"",
        description:" Retrieves the current value of this dateRangeItem.  The return value is a \n ${isc.DocUtils.linkForRef('object:DateRange')} object that excludes start and end values if they aren't\n set.\n",
        name:"getValue",
        seeAlso:[
        ],
        returns:{
            description:"the current value of this item",
            type:"DateRange"
        },
        type:"method",
        definingClass:"class:DateRangeItem"
    },
    "attr:DataSourceField.exportTitle":{
        ref:"attr:DataSourceField.exportTitle",
        flags:"IR",
        description:"Optional different field-title used for exports.",
        name:"exportTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:StretchImgButton.selected":{
        ref:"attr:StretchImgButton.selected",
        flags:"IRW",
        description:"Whether this component is selected.  For some components, selection affects appearance.",
        name:"selected",
        setter:[
            "setSelected"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "attr:TimeItem.hourMinValue":{
        ref:"attr:TimeItem.hourMinValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourValues','hourValues')} is unset, this attribute specifies the minimum\n value present in the hour picker.\n <P>Used for specifying a limited set of valid Hour values, or when using the \n TimeItem to record duration, rather than time per-se.  The default is zero in all cases.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.hourMaxValue','hourMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourIncrement','hourIncrement')}.",
        name:"hourMinValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:TreeMenuButton.selectedBaseStyle":{
        ref:"attr:TreeMenuButton.selectedBaseStyle",
        flags:"IRW",
        description:"Base style to apply to the selected path within the menu. (The \"over\" version of this\n style should also be defined in the stylesheet applied to this widget).",
        name:"selectedBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"treeMenuSelected\"",
        type:"attr",
        definingClass:"class:TreeMenuButton"
    },
    "method:ListGrid.cellValueIsClipped":{
        ref:"method:ListGrid.cellValueIsClipped",
        flags:"",
        description:" Is the value in a given cell clipped?\n",
        name:"cellValueIsClipped",
        seeAlso:[
            {
                ref:"method:ListGrid.cellValueHover",
                description:null
            }
        ],
        params:[
            {
                description:"row number of the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"null if there is no cell at the given row, column; otherwise, whether the value in the specified cell is clipped.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.getEditRow":{
        ref:"method:ListGrid.getEditRow",
        flags:"",
        description:" Returns the index of the row being edited or null if there is no current edit row.\n\n",
        name:"getEditRow",
        seeAlso:[
        ],
        returns:{
            description:"Index of the current edit row",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:Window.maximized":{
        ref:"attr:Window.maximized",
        flags:"IRW",
        description:"Is this window maximized. If true at init time, the window will be drawn maximized.\n To set this property at runtime use ${isc.DocUtils.linkForRef('method:Window.maximize')} or ${isc.DocUtils.linkForRef('method:Window.restore')}.",
        name:"maximized",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "attr:DataSourceField.nillable":{
        ref:"attr:DataSourceField.nillable",
        flags:"IR",
        description:"Controls whether an explicit null-valued Record attribute for this field\n should result in <code>xsi:nil</code> being used to transmit the value when serializing\n to XML, like so:\n <pre>\n &lt;book&gt;\n     &lt;title&gt;Beowulf&lt;/title&gt;\n     &lt;author xsi:nil=\"true\"/&gt;\n &lt;/book&gt;\n </pre>\n If <code>nillable</code> is not set, no XML element will be generated for\n the explicit null value.",
        name:"nillable",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "dataType"
        ]
    },
    "method:Canvas.setEnabled":{
        ref:"method:Canvas.setEnabled",
        deprecated:"As of Smartclient version 5.5, deprecated in favor of ${isc.DocUtils.linkForRef('method:Canvas.setDisabled')}",
        flags:"A",
        description:" set the enabled state of this object.\n\n",
        name:"setEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"pass false to disable or anything else to enable",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "enable"
        ]
    },
    "group:manualJpaHibernate":{
        ref:"group:manualJpaHibernate",
        title:"Manual JPA &amp; Hibernate Integration",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"In some cases you may not be able to immediately use the built-in JPADataSource or\n HibernateDataSource.  For example, you have pre-existing business logic that already\n directly calls JPA or Hibernate APIs, and it may seem to be a large task to refactor this\n logic so that the built-in DataSources can be used.\n <p>\n In this case you can use the overall approach described in\n ${isc.DocUtils.linkForRef('group:serverDataIntegration')} to connect to your pre-existing business logic.  You will\n not be leveraging any of the built-in JPA or Hibernate functionality, so the approach and level of\n effort will be the same as if you were using a non-Hibernate ORM or integrating with\n entirely custom Java classes.\n <P>\n ${isc.DocUtils.linkForExampleId('reusableORMDataSource', 'This example')} shows a Hibernate-based implementation of\n a custom DataSource that implements support for simple Criteria, sorting and data paging,\n but not ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}, ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom','automatic joins')},\n automatic transactions or many other features built into HibernateDataSource.  \n <P>\n Because these features are very valuable and more features are added to the built-in\n DataSources all the time, it's recommended that you refactor your code to use the built-in\n DataSources as soon as you can; refactoring existing business logic as validators, DMIs, or\n custom DataSources is often easier than it looks.  \n <P>\n You can also take the approach of using the built-in DataSources for new entities or\n entities where there is currently no significant business logic, while continuing to use\n your existing code where it's non-trivial to refactor.",
        name:"manualJpaHibernate",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormItem.multipleValueSeparator":{
        ref:"attr:FormItem.multipleValueSeparator",
        flags:"IR",
        description:"If this item is displaying multiple values, this property will be the\n string that separates those values for display purposes.",
        name:"multipleValueSeparator",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"', '",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "method:ValuesManager.addMembers":{
        ref:"method:ValuesManager.addMembers",
        flags:"",
        description:"  Add multiple new member forms to this valuesManager.\n",
        name:"addMembers",
        seeAlso:[
            {
                ref:"method:ValuesManager.addMember",
                description:null
            }
        ],
        params:[
            {
                description:"array of forms to add to this valuesManager as members.",
                optional:false,
                name:"members",
                defaultValue:null,
                type:"Array of DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "members"
        ]
    },
    "classAttr:Hover.moveWithMouse":{
        ref:"classAttr:Hover.moveWithMouse",
        flags:"RWA",
        description:"When the Hover canvas is shown by default, should it move as the user moves the\n mouse pointer?<br>\n May be overridden by including a <code>moveWithMouse</code> attribute on the \n properties block passed to ${isc.DocUtils.linkForRef('classMethod:Hover.show')}",
        name:"moveWithMouse",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"classAttr",
        definingClass:"class:Hover"
    },
    "attr:MultiSortPanel.copyLevelButtonTitle":{
        ref:"attr:MultiSortPanel.copyLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the copyLevelButton",
        name:"copyLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Copy Level\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Messaging.unsubscribe":{
        ref:"classMethod:Messaging.unsubscribe",
        flags:"",
        description:" Unsubscribes the client from the messaging channel identified by channel.\n <p>\n This will cause a reconnect to the server - for this reason\n we defer the actual reconnect to allow for multiple unsubscribe() calls in sequence.\n\n",
        name:"unsubscribe",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"channel",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Messaging",
        groups:[
            "messaging"
        ]
    },
    "method:Layout.reorderMembers":{
        ref:"method:Layout.reorderMembers",
        flags:"",
        description:" Move a range of members to a new position\n\t\t    \n",
        name:"reorderMembers",
        seeAlso:[
        ],
        params:[
            {
                description:"beginning of range of members to move",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end of range of members to move, non-inclusive",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new position to move the members to",
                optional:false,
                name:"newPosition",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:Calendar.eventDragGap":{
        ref:"attr:Calendar.eventDragGap",
        flags:"IRW",
        description:"The number of pixels to leave to the right of events so overlapping events can still be \n added using the mouse.",
        name:"eventDragGap",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:FacetChart.minXDataSpreadPercent":{
        ref:"attr:FacetChart.minXDataSpreadPercent",
        flags:"IR",
        description:"For scatter charts only, if all data points would be spread across less than\n ${isc.DocUtils.linkForRef('attr:FacetChart.minXDataSpreadPercent')} of the x-axis, the start value of x-axis will be automatically\n adjusted to make better use of space.\n <p>\n Setting an explicit ${isc.DocUtils.linkForRef('attr:FacetChart.xAxisStartValue')} disables this behavior, as does setting\n <code>minXDataSpreadPercent</code> to 0.",
        name:"minXDataSpreadPercent",
        seeAlso:[
            {
                ref:"attr:FacetChart.minDataSpreadPercent",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"30",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DataSource.convertRelativeDates":{
        ref:"method:DataSource.convertRelativeDates",
        flags:"Criteria : null : IRW",
        description:" Takes all relative date values found anywhere within a Criteria / AdvancedCriteria object\n and converts them to concrete date values, returning the new criteria object.\n",
        name:"convertRelativeDates",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria to convert",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"optional timezone offset.  Defaults to the current timezone",
                optional:true,
                name:"timezoneOffset",
                defaultValue:null,
                type:"String"
            },
            {
                description:"first day of the week (zero is Sunday).  Defaults to                               ${isc.DocUtils.linkForRef('attr:DateChooser.firstDayOfWeek')}",
                optional:true,
                name:"firstDayOfWeek",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"base value for relative conversion - defaults to now",
                optional:true,
                name:"baseDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"new copy of the criteria with all relative dates converted",
            type:"Criteria"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:Window.setShowCloseButton":{
        ref:"method:Window.setShowCloseButton",
        flags:"",
        description:" Dynamically update ${isc.DocUtils.linkForRef('attr:Window.showCloseButton')} to show / hide the closeButton\n",
        name:"setShowCloseButton",
        seeAlso:[
            {
                ref:"attr:Window.headerControls",
                description:null
            },
            {
                ref:"attr:Window.showCloseButton",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "method:CubeGrid.selectCells":{
        ref:"method:CubeGrid.selectCells",
        flags:"",
        description:" Select/deselect cells that match a ${isc.DocUtils.linkForRef('object:FacetValueMap')}.\n Also supports an explicit list of CellRecords or cell IDs.\n\n",
        name:"selectCells",
        seeAlso:[
        ],
        params:[
            {
                description:"cells to select",
                optional:false,
                name:"cellList",
                defaultValue:null,
                type:"Array[] of CellRecord | FacetValueMap | Array of ID"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "classMethod:MathFunction.getRegisteredFunctionIndex":{
        ref:"classMethod:MathFunction.getRegisteredFunctionIndex",
        flags:"",
        description:" Returns an index of all registered functions by name\n \n",
        name:"getRegisteredFunctionIndex",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Index"
        },
        type:"classMethod",
        definingClass:"class:MathFunction",
        groups:[
            "formulaFields"
        ]
    },
    "attr:FormItem.emptyDisplayValue":{
        ref:"attr:FormItem.emptyDisplayValue",
        flags:"IRW",
        description:"Text to display when this form item has a null or undefined value.\n <P>\n If the formItem has a databound pickList, and its ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} or\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} (if the former isn't set) has an undefined\n ${isc.DocUtils.linkForRef('DataSourceField.emptyCellValue','emptyCellValue')} setting, that field's\n <code>emptyCellValue</code> will automatically be set to the <code>emptyDisplayValue</code>.",
        name:"emptyDisplayValue",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "attr:SimpleGradient.startColor":{
        ref:"attr:SimpleGradient.startColor",
        flags:"IR",
        description:"The start color of the gradient.",
        name:"startColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SimpleGradient"
    },
    "attr:DrawShapeCommand.args":{
        ref:"attr:DrawShapeCommand.args",
        flags:"IR",
        description:"The command arguments. The number of arguments and their types depend on this command's ${isc.DocUtils.linkForRef('attr:DrawShapeCommand.type','type')}.",
        name:"args",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawShapeCommand"
    },
    "attr:ListGridField.multiple":{
        ref:"attr:ListGridField.multiple",
        flags:"IR",
        description:"Indicates that this field should always be Array-valued. This property will be\n passed through to the generated edit-item when editing the field - so if\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueMap')} is set, the default editor will be a ${isc.DocUtils.linkForRef('class:SelectItem')} with\n ${isc.DocUtils.linkForRef('attr:SelectItem.multiple')} set to true.\n <P>\n Note that for databound grids it typically makes sense to set ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple')}\n rather than setting the property directly on the ListGridField object.",
        name:"multiple",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:ListGrid.setFieldButtonProperties":{
        ref:"method:ListGrid.setFieldButtonProperties",
        flags:"",
        description:" Method to update properties on a field's header button at runtime.\n This property allows customization of any settable properties on the ListGridField's\n header button after it has been generated.  <smartgwt>Note that the provided Canvas should\n only have the minimal needed properties set on it, and should not be a Canvas that's already\n been drawn or added as the child of another widget.</smartgwt>\n",
        name:"setFieldButtonProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"Field to update",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new properties to apply to the header button",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"Canvas properties"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:PresetCriteriaItem.options":{
        ref:"attr:PresetCriteriaItem.options",
        flags:"IR",
        description:"An object whose properties are user-visible titles for the preset ranges, and whose \n values are Criteria / AdvancedCriteria objects representing the criteria to be used if \n the user selects that choice.",
        name:"options",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PresetCriteriaItem"
    },
    "attr:DataSource.useLocalValidators":{
        ref:"attr:DataSource.useLocalValidators",
        flags:"IRWA",
        description:"Whether to attempt validation on the client at all for this DataSource.  If unset (the\n default), client-side validation is enabled.\n <p>\n Disabling client-side validation entirely is a good way to test server-side validation.",
        name:"useLocalValidators",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "validation"
        ]
    },
    "attr:SectionStackSection.clipTitle":{
        ref:"attr:SectionStackSection.clipTitle",
        flags:"IR",
        description:"If the title for this section header is too large for the available space, should the title be\n clipped?\n <p>\n This feature is supported only in browsers that support the CSS UI text-overflow\n property (IE6+, Firefox 7+, Safari, Chrome, Opera 9+).",
        name:"clipTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "group:printing":{
        ref:"group:printing",
        title:"Printing",
        refs:[
            "method:Canvas.getPrintHTML",
            "method:DrawPane.getPrintHTML",
            "method:FacetChart.getPrintHTML",
            "object:PrintProperties",
            "class:PrintCanvas",
            "class:PrintWindow",
            "classMethod:Canvas.printComponents",
            "classMethod:Canvas.getPrintPreview",
            "classMethod:Canvas.showPrintPreview",
            "attr:Canvas.printChildrenAbsolutelyPositioned",
            "attr:Canvas.shouldPrint",
            "attr:PrintProperties.omitControls",
            "attr:PrintProperties.includeControls",
            "attr:PrintProperties.printForExport",
            "attr:DetailViewer.printCellStyle",
            "attr:DetailViewer.printLabelStyle",
            "attr:DetailViewer.printHeaderStyle",
            "attr:ListGridField.shouldPrint",
            "attr:ListGrid.printCheckboxFieldTrueImage",
            "attr:ListGrid.printCheckboxFieldFalseImage",
            "attr:ListGrid.printCheckboxFieldPartialImage",
            "attr:ListGrid.printBooleanBaseStyle",
            "attr:ListGrid.printBooleanTrueImage",
            "attr:ListGrid.printBooleanFalseImage",
            "attr:ListGrid.printBooleanPartialImage",
            "attr:ListGrid.printAutoFit",
            "attr:ListGrid.printWrapCells",
            "attr:ListGrid.printHeaderStyle",
            "attr:ListGrid.printBaseStyle",
            "attr:ListGrid.printMaxRows",
            "attr:FacetChart.printZoomChart",
            "attr:FormItem.printTitleStyle",
            "attr:FormItem.printTextBoxStyle",
            "attr:TextItem.printFullText",
            "attr:TextAreaItem.printFullText"
        ],
        description:"The browser's built-in support for printing will at best print what you see, which in the\n case of a web application will often be useless, illegible, or partial.\n <P>\n SmartClient has specialized printing support that can take any page built with SmartClient\n components and provide a reasonable printed view.  The default printed view:\n <P>\n <ul>\n <li> renders components without clipping or scrolling regions, so that a scrolling grid\n shows all loaded rows\n <li> removes certain decorative images, such as image-based backgrounds, which may print\n poorly in black and white\n <li> converts editing controls into static representations of the data being edited\n <li> removes interactive elements such as buttons and menus, which don't work on paper and\n waste space\n </ul>\n The default printed view can be customized with settings and method overrides as necessary,\n including the ability to created printed representations of custom components you have\n created.",
        name:"printing",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DataSource.getField":{
        ref:"method:DataSource.getField",
        flags:"",
        description:" Return the field definition object.\n",
        name:"getField",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the field to retrieve",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"field object",
            type:"DataSourceField"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:HiliteRule.showRemoveButton":{
        ref:"attr:HiliteRule.showRemoveButton",
        flags:"IR",
        description:"If true, show a ${isc.DocUtils.linkForRef('attr:HiliteRule.removeButton','button')} for this HiliteRule, allowing it \n to be removed.",
        name:"showRemoveButton",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:HiliteRule"
    },
    "method:Date.setDefaultDateSeparator":{
        ref:"method:Date.setDefaultDateSeparator",
        flags:"",
        description:" Sets a new default separator that will be used when formatting dates. By default, this\n is a forward slash character: \"/\"\n",
        name:"setDefaultDateSeparator",
        seeAlso:[
        ],
        params:[
            {
                description:"separator to use in dates",
                optional:false,
                name:"separator",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:Calendar.dayBodyBaseStyle":{
        ref:"attr:Calendar.dayBodyBaseStyle",
        flags:"IRW",
        description:"The base name for the CSS class applied to the day body of the month view\n of the calendar. This style will have \"Dark\", \"Over\", \"Selected\", or \"Disabled\"\n appended to it according to the state of the cell.",
        name:"dayBodyBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calMonthDayBody\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "attr:FacetChart.zoomStartPosition":{
        ref:"attr:FacetChart.zoomStartPosition",
        flags:"IR",
        description:"For a ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom','zoomed chart')}, determines what portion of the overall dataset should be\n initially shown in the main chart.\n <P>\n Default is to show the end of the dataset if the X axis shows time and includes today's date,\n otherwise to show the start of the dataset.\n <P>\n Set this property to override this default, or use ${isc.DocUtils.linkForRef('attr:FacetChart.zoomStartValue')} and\n ${isc.DocUtils.linkForRef('attr:FacetChart.zoomEndValue')} to start with a particular range.",
        name:"zoomStartPosition",
        seeAlso:[
        ],
        valueType:"ZoomStartPosition",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:PickTreeItem.canSelectParentItems":{
        ref:"attr:PickTreeItem.canSelectParentItems",
        flags:"IRW",
        description:"If true, clicking or pressing Enter on a menu item that has a submenu will\n\t\tselect that item (with standard behavior of hiding the menus, calling click\n\t\thandlers, etc) instead of showing the submenu.",
        name:"canSelectParentItems",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('treesEditing')}"
        ],
        definingClass:"class:PickTreeItem",
        groups:[
            "selection"
        ]
    },
    "attr:ToolStripGroup.rowHeight":{
        ref:"attr:ToolStripGroup.rowHeight",
        flags:"IRW",
        description:"The height of rows in each column.",
        name:"rowHeight",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"26",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "type:VelocityExpression":{
        ref:"type:VelocityExpression",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        description:"An expression in the <a href=http://velocity.apache.org/engine/releases/velocity-1.5/user-guide.html>\n Velocity Template Language</a> (VTL).  For more information on SmartClient's Velocity support, \n see ${isc.DocUtils.linkForRef('group:velocitySupport','Velocity support')}.\n <p>\n Note that a <code>VelocityExpression</code> must often evaluate to a particular type of value \n to be useful.  For example, ${isc.DocUtils.linkForRef('attr:DataSource.requires')} must evaluate to true or false \n (Boolean objects or strings containing those two words), and ${isc.DocUtils.linkForRef('attr:Mail.messageData')} must\n evaluate to a Java <code>Map</code> object, or a Java <code>List</code> containing only \n <code>Map</code>s.",
        name:"VelocityExpression",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "velocitySupport"
        ]
    },
    "method:ListGrid.getColumnWidth":{
        ref:"method:ListGrid.getColumnWidth",
        flags:"A",
        description:" Return the width of a particular column.\n",
        name:"getColumnWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"width of the column, or <code>null</code> if undrawn or no such column.",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "method:FormItem.keyDown":{
        ref:"method:FormItem.keyDown",
        flags:"",
        description:" StringMethod fired in response to a keydown while focused in this form item.\n\n",
        name:"keyDown",
        seeAlso:[
        ],
        params:[
            {
                description:"Item over which the keydown occurred",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"Pointer to the item's form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"Name of the key pressed (Example: <code>\"A\"</code>, <code>\"Enter\"</code>)",
                optional:false,
                name:"keyName",
                defaultValue:null,
                type:"KeyName"
            }
        ],
        returns:{
            description:"return false to attempt to cancel the event.  Note for general purpose                   APIs for managing whether user input is allowed, use ${isc.DocUtils.linkForRef('method:FormItem.change')} \n                   or ${isc.DocUtils.linkForRef('method:FormItem.transformInput')} instead.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "attr:Hilite.cssText":{
        ref:"attr:Hilite.cssText",
        flags:"IR",
        description:"CSS text to be applied to cells where this hilite is applied, for example,\n \"background-color:#FF0000\"",
        name:"cssText",
        seeAlso:[
        ],
        valueType:"CSSText",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "method:ListGrid.getSortField":{
        ref:"method:ListGrid.getSortField",
        flags:"",
        description:" Returns the current sort field for this grid. Note that if ${isc.DocUtils.linkForRef('method:ListGrid.setSort')} has been\n used to sort by multiple fields, you can call ${isc.DocUtils.linkForRef('method:ListGrid.getSort')} to retrieve details about\n the complete sort applied to the grid.\n\n",
        name:"getSortField",
        seeAlso:[
        ],
        returns:{
            description:"sort field name",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "method:Class.destroy":{
        ref:"method:Class.destroy",
        flags:"A",
        description:" Permanently destroy a class instance and any automatically created resources,\n recursively.\n",
        name:"destroy",
        seeAlso:[
            {
                ref:"method:Canvas.destroy",
                description:null
            },
            {
                ref:"group:memoryLeaks",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:NavigationButton.direction":{
        ref:"attr:NavigationButton.direction",
        flags:"IRW",
        description:"Navigation direction for this button. If set to <code>\"forward\"</code> or\n <code>\"back\"</code> the special ${isc.DocUtils.linkForRef('attr:NavigationButton.forwardBaseStyle')} or ${isc.DocUtils.linkForRef('attr:NavigationButton.backBaseStyle')}\n will be applied.",
        name:"direction",
        seeAlso:[
        ],
        valueType:"NavigationDirection",
        defaultValue:"\"none\"",
        type:"attr",
        definingClass:"class:NavigationButton"
    },
    "attr:Calendar.eventAutoArrange":{
        ref:"attr:Calendar.eventAutoArrange",
        flags:"IR",
        description:"If set to true, enables the auto-arrangement of events that share time in the calendar.  The\n default is true.",
        name:"eventAutoArrange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:Applet.classID":{
        ref:"attr:Applet.classID",
        flags:"IR",
        description:"This attribute is used only with useTag: \"object\".  In combination with \n  ${isc.DocUtils.linkForRef('attr:Applet.objectCodeBase')} this tag specifies the minimum JVM version required to view\n  this applet and the URL from which the JVM can be downloaded.\n  <p>\n  The default settings match the default behavior of the &lt;applet&gt; tag which requires JVM\n  1.3 or higher.\n  <p>\n  The default classID is: \"clsid:8AD9C840-044E-11D1-B3E9-00805F499D93\"\n  <p>\n  For notes on this feature see: <a href='http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/using_tags.html#in-ie' target='_blank'>http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/using_tags.html#in-ie</a>",
        name:"classID",
        seeAlso:[
            {
                ref:"attr:Applet.objectCodeBase",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:Canvas.groupLabelBackgroundColor":{
        ref:"attr:Canvas.groupLabelBackgroundColor",
        flags:"IRW",
        description:"If set, the background color of the grouping label. Only applicable when ${isc.DocUtils.linkForRef('attr:Canvas.isGroup')}\n is set to true.\n <p>\n This corresponds to the CSS background-color property on the grouping label. You can set this\n property to an RGB value (e.g. #22AAFF) or a named color (e.g. red) from a list of browser supported\n color names.\n <smartgwt><p>\n The getter for this attribute, {@link #getGroupLabelBackgroundColor()}, returns the color\n that will actually be used; i.e. if groupLabelBackgroundColor is left unset or is set to\n null, then getGroupLabelBackgroundColor() returns the color string that will be used.\n </smartgwt>",
        name:"groupLabelBackgroundColor",
        setter:[
            "setGroupLabelBackgroundColor"
        ],
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:Tab.name":{
        ref:"attr:Tab.name",
        flags:"IRW",
        description:"Optional name for the tab, which can later be used to reference the tab.\n APIs requiring a reference to a tab will accept the tab's name\n [including  ${isc.DocUtils.linkForRef('method:TabSet.selectTab')}, ${isc.DocUtils.linkForRef('method:TabSet.updateTab')}, ${isc.DocUtils.linkForRef('method:TabSet.removeTab')}].<br>\n This name will also be passed to the ${isc.DocUtils.linkForRef('method:TabSet.tabSelected')} and ${isc.DocUtils.linkForRef('method:TabSet.tabDeselected')}\n handler functions, if specified.\n <p>\n This identifier is requred to be locally unique to the TabSet and cannot be used to get\n a global reference to the Tab.  If you want a global reference, set ${isc.DocUtils.linkForRef('attr:Tab.ID')} instead.",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "attr:ListGrid.sortNumeralStyle":{
        ref:"attr:ListGrid.sortNumeralStyle",
        flags:"IRWA",
        description:"When multiple fields are sorted, the Style to apply to the numeral that appears after the\n sort-arrows in the header-buttons of sorted fields.",
        name:"sortNumeralStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"sortNumeral\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:CalendarEvent.eventWindowStyle":{
        ref:"attr:CalendarEvent.eventWindowStyle",
        flags:"IR",
        description:"CSS style series to use for the draggable event window that represents this event.  If\n specified, overrides ${isc.DocUtils.linkForRef('attr:Calendar.eventWindowStyle')} for this specific event.\n <P>\n The name of this field within the CalendarEvent can be changed via\n ${isc.DocUtils.linkForRef('attr:Calendar.eventWindowStyleField')}",
        name:"eventWindowStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "class:SVG":{
        methods:[
        ],
        ref:"class:SVG",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Client Bridges"
        ],
        attrs:[
            "attr:SVG.pluginsPage",
            "attr:SVG.src"
        ],
        description:"ISC Abstraction for SVG controls",
        name:"SVG",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "PluginBridges"
        ]
    },
    "attr:DrawLabel.top":{
        ref:"attr:DrawLabel.top",
        flags:"IR",
        description:"Sets the amount from the top of its positioning that the element should be placed.",
        name:"top",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "attr:Calendar.eventOverlap":{
        ref:"attr:Calendar.eventOverlap",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:Calendar.eventAutoArrange')} is true, setting eventOverlap to true causes events that \n share timeslots to overlap each other by a percentage of their width, specified by \n ${isc.DocUtils.linkForRef('attr:Calendar.eventOverlapPercent')}.  The default is true.",
        name:"eventOverlap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "method:FormItem.itemHover":{
        ref:"method:FormItem.itemHover",
        flags:"A",
        description:" Optional stringMethod to fire when the user hovers over this item.\n Return false to suppress default behavior of showing a hover canvas containing the\n HTML returned by <code>formItem.itemHoverHTML()</code> / \n <code>form.itemHoverHTML()</code>.\n\n",
        name:"itemHover",
        seeAlso:[
            {
                ref:"method:FormItem.titleHover",
                description:null
            },
            {
                ref:"method:FormItem.itemHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"Pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"This items form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "classAttr:FieldPickerField.frozenTitle":{
        ref:"classAttr:FieldPickerField.frozenTitle",
        flags:"IR",
        description:"The title displayed for the frozen property",
        name:"frozenTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Is Frozen\"",
        type:"classAttr",
        definingClass:"class:FieldPickerField",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Class.echoAll":{
        ref:"classMethod:Class.echoAll",
        flags:"",
        description:" Like echo(), except that if passed an Array, echoAll() will echo() every element of the\n Array.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echo()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"echoAll",
        seeAlso:[
            {
                ref:"method:Class.echo",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "attr:OperationBinding.sqlPaging":{
        ref:"attr:OperationBinding.sqlPaging",
        flags:"IRW",
        description:"The paging strategy to use for this specific OperationBinding.  If this property is not\n set, we fall back to the ${isc.DocUtils.linkForRef('attr:DataSource.sqlPaging')} value, and the defaults described in\n the documentation for that property.",
        name:"sqlPaging",
        seeAlso:[
            {
                ref:"attr:DataSource.sqlPaging",
                description:null
            }
        ],
        valueType:"SQLPagingStrategy",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "attr:DetailViewer.hiliteIconSize":{
        ref:"attr:DetailViewer.hiliteIconSize",
        flags:"IRW",
        description:"Default width and height of ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons','hilite icons')} for this component.\n Can be overridden at the component level via explicit \n ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconWidth','hiliteIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconHeight','hiliteIconHeight')}, or at the field level via \n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconSize','hiliteIconSize')},\n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconWidth','hiliteIconWidth')} and \n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconHeight','hiliteIconHeight')}",
        name:"hiliteIconSize",
        seeAlso:[
            {
                ref:"attr:DetailViewer.hiliteIconWidth",
                description:null
            },
            {
                ref:"attr:DetailViewer.hiliteIconHeight",
                description:null
            },
            {
                ref:"attr:DetailViewerField.hiliteIconSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"12",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "hiliting"
        ]
    },
    "method:Array.removeAt":{
        ref:"method:Array.removeAt",
        flags:"",
        description:" Remove the item at the specified position, rearranging all subsequent items to fill the gap\n\n",
        name:"removeAt",
        seeAlso:[
        ],
        params:[
            {
                description:"position to remove",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"item that was removed",
            type:"any"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "attr:TableView.showNavigation":{
        ref:"attr:TableView.showNavigation",
        flags:"IRW",
        description:"Whether to show navigation controls by default on all records.  Can also be configured\n per-record with ${isc.DocUtils.linkForRef('attr:TableView.recordNavigationProperty')}.",
        name:"showNavigation",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TableView"
    },
    "method:ResultSet.rangeIsLoaded":{
        ref:"method:ResultSet.rangeIsLoaded",
        flags:"A",
        description:" Whether the given range of rows has been loaded.\n\n Unlike getRange(), will not trigger a server fetch.  \n\n",
        name:"rangeIsLoaded",
        seeAlso:[
        ],
        params:[
            {
                description:"start position, inclusive",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end position, exclusive",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true if all rows in the given range have been loaded, false if any rows in                   the range have not been loaded or are still in the process of being loaded",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "method:EditContext.getPaletteNodesFromJS":{
        ref:"method:EditContext.getPaletteNodesFromJS",
        flags:"",
        description:" Obtain ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')} from a JavaScript source representation.\n <P>\n By default, components that have ${isc.DocUtils.linkForRef('attr:Canvas.ID','global IDs')} will not\n actually be allowed to take those global IDs - instead, only widgets that have one of the\n global IDs passed as the <code>globals</code> parameter will actually receive their global\n IDs.  To override this behavior, pass the special value ${isc.DocUtils.linkForRef('classAttr:RPCManager.ALL_GLOBALS')}\n for the <code>globals</code> parameter.\n\n",
        name:"getPaletteNodesFromJS",
        seeAlso:[
            {
                ref:"method:Callbacks.PaletteNodeCallback",
                description:null
            }
        ],
        params:[
            {
                description:"JavaScript code to eval.",
                optional:false,
                name:"jsCode",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Callback used to return the PaletteNodes",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"PaletteNodeCallback"
            },
            {
                description:"widgets to allow to take their global IDs",
                optional:true,
                name:"globals",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:DrawGroup.mouseMove":{
        ref:"method:DrawGroup.mouseMove",
        flags:"",
        description:" Notification fired when the user moves the mouse over this DrawGroup.\n <p>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n",
        name:"mouseMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:SpinnerItem.maskOverwriteMode":{
        ref:"attr:SpinnerItem.maskOverwriteMode",
        flags:"IRWA",
        description:"Not applicable to a SpinnerItem.",
        name:"maskOverwriteMode",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "attr:TileGrid.tileProperties":{
        ref:"attr:TileGrid.tileProperties",
        flags:"IRW",
        description:"Common properties to use when creating every tile.",
        name:"tileProperties",
        seeAlso:[
        ],
        valueType:"Canvas Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:StretchImgButton.titleStyle":{
        ref:"attr:StretchImgButton.titleStyle",
        flags:"IRW",
        description:"CSS style applied to the title text only.  Defaults to ${isc.DocUtils.linkForRef('attr:StretchImgButton.baseStyle')} when unset.\n <P>\n With a separate <code>titleStyle</code> and ${isc.DocUtils.linkForRef('attr:StretchImgButton.baseStyle')} set, you can provide a\n backgroundColor via <code>baseStyle</code> that will allow translucent .png media to be\n \"tinted\" by the underlying background color, so that a single set of media can provide\n range of color options.  In this usage, the <code>titleStyle</code> should generally not\n specify a background color as this would block out the media that appears behind the\n title.",
        name:"titleStyle",
        setter:[
            "setTitleStyle"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "attr:ColumnTree.data":{
        ref:"attr:ColumnTree.data",
        flags:"IRW",
        getter:[
            "getData"
        ],
        description:"A ${isc.DocUtils.linkForRef('class:Tree')} object consisting of nested ${isc.DocUtils.linkForRef('object:TreeNode')}s to \n display in this ColumnTree.  \n The <code>data</code> property will typically not be explicitly specified for \n databound ColumnTrees, where the data is returned from the server via databound component\n methods such as <code>fetchData()</code>",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
        ],
        valueType:"Tree",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "data"
        ]
    },
    "attr:ListGrid.sortDescendingImage":{
        ref:"attr:ListGrid.sortDescendingImage",
        flags:"IRWA",
        description:"Image to show when sorting descending. See ${isc.DocUtils.linkForRef('object:ImgProperties')} for format.",
        name:"sortDescendingImage",
        seeAlso:[
        ],
        valueType:"ImgProperties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:PickList.valueField":{
        ref:"attr:PickList.valueField",
        flags:"IRA",
        getter:[
            "getValueFieldName"
        ],
        description:"If this form item maps data values to display values by retrieving the \n ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} values from an \n ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}, this property \n denotes the the field to use as the underlying data value in records from the \n optionDataSource.<br>\n If unset, assumed to be the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this form item.",
        name:"valueField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList",
        groups:[
            "display_values"
        ]
    },
    "classMethod:Offline.isOffline":{
        ref:"classMethod:Offline.isOffline",
        flags:"",
        description:" Returns true if the current browser session is offline (ie, not connected to a network).\n If an online/offline state has been set explicitly (see ${isc.DocUtils.linkForRef('classMethod:Offline.goOffline')} and \n ${isc.DocUtils.linkForRef('classMethod:Offline.goOnline')}), the explicitly-set state will be returned.  Otherwise, the \n offline state as reported by the browser will be returned.  See \n ${isc.DocUtils.linkForRef('classMethod:Offline.useNativeOfflineDetection','useNativeOfflineDetection')} for important notes on \n browser detection of offline state.\n\n",
        name:"isOffline",
        seeAlso:[
            {
                ref:"classMethod:Offline.goOffline",
                description:null
            },
            {
                ref:"classMethod:Offline.goOnline",
                description:null
            },
            {
                ref:"classMethod:Offline.useNativeOfflineDetection",
                description:null
            }
        ],
        returns:{
            description:"true if the current browser session is offline",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:Offline"
    },
    "attr:FacetChart.doughnutRatio":{
        ref:"attr:FacetChart.doughnutRatio",
        flags:"IR",
        description:"If showing a doughnut hole (see ${isc.DocUtils.linkForRef('attr:FacetChart.showDoughnut')}), ratio of the size of the doughnut\n hole to the size of the overall pie chart, as a number between 0 to 1.",
        name:"doughnutRatio",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.2",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:DetailViewerField.exportFormat":{
        ref:"attr:DetailViewerField.exportFormat",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} used during exports for numeric or date formatting.  See\n ${isc.DocUtils.linkForRef('attr:DataSourceField.exportFormat')}.",
        name:"exportFormat",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "exportFormatting"
        ]
    },
    "attr:DynamicForm.readOnlyTextBoxStyle":{
        ref:"attr:DynamicForm.readOnlyTextBoxStyle",
        flags:"IRW",
        description:"Default ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyTextBoxStyle')} setting for items in this form.",
        name:"readOnlyTextBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"staticTextItem\"",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:ListGrid.animateRemoveSpeed":{
        ref:"attr:ListGrid.animateRemoveSpeed",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.animateRemoveRecord','animating record removal')}, this property\n designates the speed of the animation in pixels per second. Takes precedence over the\n ${isc.DocUtils.linkForRef('attr:ListGrid.animateRemoveTime')} property, which allows the developer to specify a\n duration for the animation rather than a speed.",
        name:"animateRemoveSpeed",
        seeAlso:[
            {
                ref:"attr:ListGrid.animateRemoveRecord",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"200",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "animation"
        ]
    },
    "attr:DatabaseBrowser.title":{
        ref:"attr:DatabaseBrowser.title",
        flags:"IR",
        description:"A title to show in the header button of the DatabaseBrowser's schema tree.  If not set,\n defaults to the name of the connected database",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "attr:ComboBoxItem.fetchDisplayedFieldsOnly":{
        ref:"attr:ComboBoxItem.fetchDisplayedFieldsOnly",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code> and this property is\n <code>true</code>, the list of fields used by this pickList will be passed to\n the datasource as ${isc.DocUtils.linkForRef('attr:DSRequest.outputs')}. If the datasource supports this feature\n the returned fields will be limited to this list. A custom datasource will need to\n add code to implement field limiting.\n <P>\n This list of used fields consists of the values of ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')},\n ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} and ${isc.DocUtils.linkForRef('attr:ComboBoxItem.pickListFields','pickListFields')}.\n <P>\n NOTE: When enabled, ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord','getSelectedRecord')} will only include the\n fetched fields.",
        name:"fetchDisplayedFieldsOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:MiniDateRangeItem.hasAdvancedCriteria":{
        ref:"method:MiniDateRangeItem.hasAdvancedCriteria",
        flags:"",
        description:" Overridden to return true: dateRangeItems always generate AdvancedCriteria.\n",
        name:"hasAdvancedCriteria",
        seeAlso:[
        ],
        returns:{
            description:"true",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:Gradient.colorStops":{
        ref:"attr:Gradient.colorStops",
        flags:"IR",
        description:"An array of color stops for this gradient.",
        name:"colorStops",
        seeAlso:[
        ],
        valueType:"Array of ColorStop",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Gradient"
    },
    "attr:Window.canDragResize":{
        ref:"attr:Window.canDragResize",
        flags:"IRW",
        description:"Can the window be drag-resized? If true the window may be drag resized from its edges,\n and if showing, via the resizer icon in the footer.",
        name:"canDragResize",
        seeAlso:[
            {
                ref:"attr:Window.showResizer",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "dragging",
            "resizing"
        ]
    },
    "method:DynamicForm.editSelectedData":{
        ref:"method:DynamicForm.editSelectedData",
        flags:"",
        description:"\n Edit the record selected in the specified selection component (typically a\n ${isc.DocUtils.linkForRef('class:ListGrid')}).\n <P>\n Updates the values of this editor to match the selected record's values.\n <P>\n If this form has a dataSource, then saving via ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} will use the \n \"update\" operation type.\n\n",
        name:"editSelectedData",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            }
        ],
        params:[
            {
                description:"the ListGrid or ID of a ${isc.DocUtils.linkForRef('class:ListGrid')} whose currently selected\n     record(s) is/are to be edited",
                optional:false,
                name:"selectionComponent",
                defaultValue:null,
                type:"ListGrid or ID"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('updateOperation')}"
        ],
        definingClass:"class:DynamicForm",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:ColumnTree.columnProperties":{
        ref:"attr:ColumnTree.columnProperties",
        flags:"IRA",
        getter:[
            "getColumnProperties"
        ],
        description:"Standard set of properties to apply to each generated ${isc.DocUtils.linkForRef('attr:ColumnTree.column','column')}\n in this columnTree. Developers may also override ${isc.DocUtils.linkForRef('method:ColumnTree.getColumnProperties')}\n to return dynamic properties based on the node being displayed.",
        name:"columnProperties",
        seeAlso:[
        ],
        valueType:"ListGrid properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree"
    },
    "method:DynamicForm.setItems":{
        ref:"method:DynamicForm.setItems",
        flags:"",
        description:" Synonym for ${isc.DocUtils.linkForRef('method:DynamicForm.setFields')}\n\n",
        name:"setItems",
        seeAlso:[
        ],
        params:[
            {
                description:"list of new items to show in the form",
                optional:false,
                name:"itemList",
                defaultValue:null,
                type:"Array of FormItem Properties"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "elements"
        ]
    },
    "attr:Slider.thumbSrc":{
        ref:"attr:Slider.thumbSrc",
        flags:"IRW",
        description:"The base filename for the slider thumb images.\n The filenames for the thumb icons are assembled from this base filename and the state of the\n thumb, as follows:<br>\n Assume the thumbSrc is set to <code>{baseName}.{extension}</code><br>\n The full set of images to be displayed is:<br>\n For horizontal sliders:\n <ul>\n <li><code>h{baseName}.{extension}</code>: default enabled appearance.\n <li><code>h{baseName}_down.{extension}</code>:  appearance when the slider is enabled and the\n     thumb is clicked.\n <li><code>h{baseName}_Disabled.{extension}</code>:  appearance when the slider is disabled.\n </ul>\n For vertical sliders:\n <ul>\n <li><code>v{baseName}.{extension}</code>: default enabled appearance.\n <li><code>v{baseName}_down.{extension}</code>:  appearance when the slider is enabled and the\n     thumb is clicked.\n <li><code>v{baseName}_Disabled.{extension}</code>:  appearance when the slider is disabled.\n </ul>",
        name:"thumbSrc",
        setter:[
            "setThumbSrc"
        ],
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"thumb.gif\"",
        type:"attr",
        definingClass:"class:Slider"
    },
    "method:DrawSector.setCenterPoint":{
        ref:"method:DrawSector.setCenterPoint",
        flags:"",
        description:" Change the center point for this sector.\n",
        name:"setCenterPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate of the center point.",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Y coordinate of the center point.",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawSector"
    },
    "method:ListGrid.markRecordRemoved":{
        ref:"method:ListGrid.markRecordRemoved",
        flags:"",
        description:" Marks a record deleted such that a later call to ${isc.DocUtils.linkForRef('method:ListGrid.saveEdits')} or ${isc.DocUtils.linkForRef('method:ListGrid.saveAllEdits')}\n will cause a \"remove\" ${isc.DocUtils.linkForRef('class:DSRequest')} to be submitted.\n <P>\n A removed record is disabled and non-editable, and uses ${isc.DocUtils.linkForRef('attr:ListGrid.removedCSSText')} for its CSS\n style, which by default will show strikethrough text.\n <P>\n Contrast this method with removeSelectedData(), which immediately submits a DSRequest to\n remove the selected records from the dataset.\n <P>\n Records that have been marked for removal using this method may be 'unmarked' via a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.unmarkRecordRemoved')}, or by discarding edit values (${isc.DocUtils.linkForRef('method:ListGrid.discardEdits')}).\n\n",
        name:"markRecordRemoved",
        seeAlso:[
        ],
        params:[
            {
                description:"row number for the record to mark",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:ListGrid.isPartiallySelected":{
        ref:"method:ListGrid.isPartiallySelected",
        flags:"",
        description:" When using tree-oriented selection modes like ${isc.DocUtils.linkForRef('attr:TreeGrid.cascadeSelection')}, returns true\n if the record is considered partially selected because only some of it's children are\n selected.\n \n",
        name:"isPartiallySelected",
        seeAlso:[
        ],
        params:[
            {
                description:"record to check",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"true if record is partially selected; false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "method:DynamicForm.showItem":{
        ref:"method:DynamicForm.showItem",
        flags:"",
        description:" Show a form item via ${isc.DocUtils.linkForRef('method:FormItem.show')}\n",
        name:"showItem",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the item to show",
                optional:false,
                name:"itemName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "group:statusCodes":{
        ref:"group:statusCodes",
        refs:[
            "classAttr:RPCResponse.STATUS_SUCCESS",
            "classAttr:RPCResponse.STATUS_OFFLINE",
            "classAttr:RPCResponse.STATUS_FAILURE",
            "classAttr:RPCResponse.STATUS_VALIDATION_ERROR",
            "classAttr:RPCResponse.STATUS_LOGIN_INCORRECT",
            "classAttr:RPCResponse.STATUS_MAX_LOGIN_ATTEMPTS_EXCEEDED",
            "classAttr:RPCResponse.STATUS_LOGIN_REQUIRED",
            "classAttr:RPCResponse.STATUS_LOGIN_SUCCESS",
            "classAttr:RPCResponse.STATUS_UPDATE_WITHOUT_PK_ERROR",
            "classAttr:RPCResponse.STATUS_TRANSACTION_FAILED",
            "classAttr:RPCResponse.STATUS_MAX_FILE_SIZE_EXCEEDED",
            "classAttr:RPCResponse.STATUS_MAX_POST_SIZE_EXCEEDED",
            "classAttr:RPCResponse.STATUS_TRANSPORT_ERROR",
            "classAttr:RPCResponse.STATUS_UNKNOWN_HOST_ERROR",
            "classAttr:RPCResponse.STATUS_CONNECTION_RESET_ERROR",
            "classAttr:RPCResponse.STATUS_SERVER_TIMEOUT"
        ],
        description:"Status codes returned by the server as rpcResponse.status.<br>\n See the error handling doc section in ${isc.DocUtils.linkForRef('class:RPCManager','RPCManager')} for more \n information on these codes",
        name:"statusCodes",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Canvas.getOuterElement":{
        ref:"method:Canvas.getOuterElement",
        flags:"A",
        description:" Returns the outer DOM element of this Canvas. This method is provided for the \n very rare cases where a programmer needs to examine the DOM hierarchy created by\n a drawn SmartClient component.\n <P>\n Direct manipulation of the DOM elements created by SmartClient components\n is not supported. SmartClient components should be rendered or cleared using\n standard methods such as ${isc.DocUtils.linkForRef('method:Canvas.draw')}, ${isc.DocUtils.linkForRef('method:Canvas.clear')}. If direct\n integration with existing DOM structures is required, this should be achieved via the\n ${isc.DocUtils.linkForRef('attr:Canvas.htmlElement')} attribute, rather than by attempting to move the\n component's outer element via native browser APIs.<br>\n The content of SmartClient components' DOM elements should also not be directly \n manipulated using native browser APIs - standard methods such as \n ${isc.DocUtils.linkForRef('method:Canvas.setContents')}, ${isc.DocUtils.linkForRef('method:Canvas.addChild')}, ${isc.DocUtils.linkForRef('method:Canvas.removeChild')},\n ${isc.DocUtils.linkForRef('method:Canvas.markForRedraw')} and ${isc.DocUtils.linkForRef('method:Canvas.redraw')} should be used instead.\n <P>\n In some cases, the element returned may match the element returned by \n ${isc.DocUtils.linkForRef('method:Canvas.getContentElement')}, but this will not always be the case.\n <P>\n If the widget is undrawn, this method will return <code>null</code>.\n\n",
        name:"getOuterElement",
        seeAlso:[
        ],
        returns:{
            description:"The outer DOM element for a drawn Canvas.",
            type:"DOMElement"
        },
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:RelativeDateItem.showChooserIcon":{
        ref:"attr:RelativeDateItem.showChooserIcon",
        flags:"IR",
        description:"Should we show the icon that displays a date-chooser?",
        name:"showChooserIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:DrawRect.setLeft":{
        ref:"method:DrawRect.setLeft",
        flags:"",
        description:" Set the left coordinate of the drawRect\n",
        name:"setLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "method:Window.restore":{
        ref:"method:Window.restore",
        flags:"",
        description:" Restores the window to its specified height and width after a call to ${isc.DocUtils.linkForRef('method:Window.minimize')} or \n ${isc.DocUtils.linkForRef('method:Window.maximize')}. Called from a click on the restore button shown in place of the \n minimize or maximize button when the window is minimized or maximized.<br>\n Resizing will occur as an animation if ${isc.DocUtils.linkForRef('attr:Window.animateMinimize')} is true.\n",
        name:"restore",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "attr:ToolStrip.formWrapperDefaults":{
        ref:"attr:ToolStrip.formWrapperDefaults",
        flags:"IR",
        description:"Default properties to apply to ${isc.DocUtils.linkForRef('attr:ToolStrip.formWrapper')} components. Default object\n is as follows:\n <pre>\n { showTitle:false,\n   numCols:1,\n   overflow:\"visible\",\n   width:1, height:1 }\n </pre>",
        name:"formWrapperDefaults",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"...",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "attr:ListGridField.hiliteIconSize":{
        ref:"attr:ListGridField.hiliteIconSize",
        flags:"IRW",
        description:"Default width and height of ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIcons','hilite icons')} in this field.\n Takes precedence over hiliteIconWidth, hiliteIconHeight and hiliteIconSize specified at\n the component level.\n Can be overridden via ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconHeight')}",
        name:"hiliteIconSize",
        seeAlso:[
            {
                ref:"attr:ListGrid.hiliteIconSize",
                description:null
            },
            {
                ref:"attr:ListGridField.hiliteIconWidth",
                description:null
            },
            {
                ref:"attr:ListGridField.hiliteIconHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "hiliting"
        ]
    },
    "attr:SummaryBuilder.titleField":{
        ref:"attr:SummaryBuilder.titleField",
        flags:"IR",
        description:"TextItem that allows users to set the title for this field.",
        name:"titleField",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "attr:Menu.submenuFieldProperties":{
        ref:"attr:Menu.submenuFieldProperties",
        flags:"IR",
        description:"Custom properties for the automatically generated submenu column.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Menu.showSubmenus')} for an overview of the submenu column.",
        name:"submenuFieldProperties",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:Flashlet.getPluginHandle":{
        ref:"method:Flashlet.getPluginHandle",
        flags:"A",
        description:" \n  Returns a handle to the flashlet DOM element (valid only after the component has been drawn).  \n\n",
        name:"getPluginHandle",
        seeAlso:[
        ],
        returns:{
            description:"pointer to the plugin element in the DOM",
            type:"HTML Element"
        },
        type:"method",
        definingClass:"class:Flashlet"
    },
    "method:DrawOval.moveTo":{
        ref:"method:DrawOval.moveTo",
        flags:"",
        description:" Move the drawOval to the specified left/top position. You may also call\n ${isc.DocUtils.linkForRef('method:DrawOval.setCenterPoint')} to reposition the oval around a new center position.\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:FormItem.changeOnKeypress":{
        ref:"attr:FormItem.changeOnKeypress",
        flags:"IRW",
        description:"Should this form item fire its ${isc.DocUtils.linkForRef('method:FormItem.change','change')} handler (and store its\n value in the form) on every keypress? Set to <code>false</code> to suppress the 'change'\n handler firing (and the value stored) on every keypress.\n <p>\n Note: If <code>false</code>, the value returned by ${isc.DocUtils.linkForRef('method:FormItem.getValue','getValue')}\n will not reflect the value displayed in the form item element as long as focus is in\n the form item element.",
        name:"changeOnKeypress",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling",
            "values"
        ]
    },
    "attr:FilterBuilder.fieldDataSource":{
        ref:"attr:FilterBuilder.fieldDataSource",
        flags:"IR",
        description:"If specified, the FilterBuilder will dynamically fetch DataSourceField definitions from \n this DataSource rather than using ${isc.DocUtils.linkForRef('attr:FilterBuilder.dataSource')}.  The ${isc.DocUtils.linkForRef('class:FieldPicker')} \n will default to being a ${isc.DocUtils.linkForRef('class:ComboBoxItem')} rather than a ${isc.DocUtils.linkForRef('class:SelectItem')} so that the user \n will have type-ahead auto-completion.\n <P>\n The records returned from the <code>fieldDataSource</code> must have properties \n corresponding to a ${isc.DocUtils.linkForRef('class:DataSourceField')} definition, at a minimum, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.name','\"name\"')} and ${isc.DocUtils.linkForRef('attr:DataSourceField.type','\"type\"')}.  Any property \n legal on a DataSourceField is legal on the returned records, including \n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap','valueMap')}.\n <P>\n Even when a <code>fieldDataSource</code> is specified, ${isc.DocUtils.linkForRef('attr:FilterBuilder.dataSource')} may\n still be specified in order to control the list of \n ${isc.DocUtils.linkForRef('method:DataSource.setTypeOperators','valid operators')} for each field.",
        name:"fieldDataSource",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:FormItem.canSelectText":{
        ref:"attr:FormItem.canSelectText",
        flags:"IRW",
        description:"For items showing a text value, should the user be able to select the text in this item?",
        name:"canSelectText",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:StatefulCanvas.iconHeight":{
        ref:"attr:StatefulCanvas.iconHeight",
        flags:"IR",
        description:"Height in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:DateChooser.nextYearButton":{
        ref:"attr:DateChooser.nextYearButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} that shifts\n the calendar view forward by a year.",
        name:"nextYearButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "class:Tree":{
        methods:[
            "method:Tree.isRoot",
            "method:Tree.linkNodes",
            "method:Tree.getRoot",
            "method:Tree.setRoot",
            "method:Tree.getName",
            "method:Tree.getTitle",
            "method:Tree.getPath",
            "method:Tree.getParentPath",
            "method:Tree.getParent",
            "method:Tree.getParents",
            "method:Tree.getLevel",
            "method:Tree.isFolder",
            "method:Tree.isLeaf",
            "method:Tree.findById",
            "method:Tree.find",
            "method:Tree.getChildren",
            "method:Tree.getChildrenResultSet",
            "method:Tree.getFolders",
            "method:Tree.getLeaves",
            "method:Tree.hasChildren",
            "method:Tree.hasFolders",
            "method:Tree.hasLeaves",
            "method:Tree.isDescendantOf",
            "method:Tree.getDescendants",
            "method:Tree.getDescendantFolders",
            "method:Tree.getDescendantLeaves",
            "method:Tree.dataChanged",
            "method:Tree.add",
            "method:Tree.addList",
            "method:Tree.move",
            "method:Tree.remove",
            "method:Tree.removeList",
            "method:Tree.getLoadState",
            "method:Tree.isLoaded",
            "method:Tree.allChildrenLoaded",
            "method:Tree.loadChildren",
            "method:Tree.unloadChildren",
            "method:Tree.reloadChildren",
            "method:Tree.isOpen",
            "method:Tree.openFolder",
            "method:Tree.openFolders",
            "method:Tree.closeFolder",
            "method:Tree.closeFolders",
            "method:Tree.openAll",
            "method:Tree.closeAll",
            "method:Tree.setShowRoot",
            "method:Tree.setSeparateFolders",
            "method:Tree.setSortFoldersBeforeLeaves",
            "method:Tree.getOpenList",
            "method:Tree.getAllNodes",
            "method:Tree.getLength",
            "method:Tree.indexOf",
            "method:Tree.lastIndexOf",
            "method:Tree.getFilteredTree"
        ],
        ref:"class:Tree",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:Tree.modelType",
            "attr:Tree.isFolderProperty",
            "attr:Tree.defaultIsFolder",
            "attr:Tree.reportCollisions",
            "attr:Tree.pathDelim",
            "attr:Tree.nameProperty",
            "attr:Tree.titleProperty",
            "attr:Tree.idField",
            "attr:Tree.parentIdField",
            "attr:Tree.childrenProperty",
            "attr:Tree.openProperty",
            "attr:Tree.data",
            "attr:Tree.rootValue",
            "attr:Tree.root",
            "attr:Tree.discardParentlessNodes",
            "attr:Tree.showRoot",
            "attr:Tree.autoOpenRoot",
            "attr:Tree.separateFolders",
            "attr:Tree.sortFoldersBeforeLeaves",
            "attr:Tree.defaultNodeTitle"
        ],
        description:"A Tree is a data model representing a set of objects linked into a hierarchy.\n <P>\n A Tree has no visual presentation, it is displayed by a ${isc.DocUtils.linkForRef('class:TreeGrid')} or ${isc.DocUtils.linkForRef('class:ColumnTree')}\n when supplied as ${isc.DocUtils.linkForRef('attr:TreeGrid.data')} or ${isc.DocUtils.linkForRef('attr:ColumnTree.data')}.\n <P>\n A Tree can be constructed out of a List of objects interlinked by IDs or via explicitly\n specified Arrays of child objects.  See ${isc.DocUtils.linkForRef('attr:Tree.modelType')} for an explanation of how\n to pass data to a Tree.\n <P>\n Typical usage is to call ${isc.DocUtils.linkForRef('method:TreeGrid.fetchData')} to cause automatic creation of a \n ${isc.DocUtils.linkForRef('class:ResultTree')}, which is a type of Tree that automatically handles loading data on \n demand.  For information on DataBinding Trees, see ${isc.DocUtils.linkForRef('group:treeDataBinding')}.",
        name:"Tree",
        implementsInterfaces:[
            "List"
        ],
        seeAlso:[
        ],
        type:"class"
    },
    "group:tileLayout":{
        ref:"group:tileLayout",
        refs:[
            "method:TileLayout.setTileSize",
            "method:TileLayout.setTileWidth",
            "method:TileLayout.setTileHeight",
            "method:TileLayout.setTilesPerLine",
            "method:TileLayout.setTileMargin",
            "method:TileLayout.setTileHMargin",
            "method:TileLayout.setTileVMargin"
        ],
        name:"tileLayout",
        seeAlso:[
        ],
        type:"group"
    },
    "method:PortalLayout.setPortletDropTypes":{
        ref:"method:PortalLayout.setPortletDropTypes",
        flags:"",
        description:" <p>Sets the ${isc.DocUtils.linkForRef('attr:PortalLayout.portletDropTypes','portletDropTypes')} to be applied when dropping ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}\n on this <code>PortalLayout</code>, or when dropping other components to be auto-wrapped in\n a ${isc.DocUtils.linkForRef('class:Portlet')}.</p>\n\n",
        name:"setPortletDropTypes",
        seeAlso:[
            {
                ref:"attr:PortalLayout.portletDropTypes",
                description:null
            }
        ],
        params:[
            {
                description:"dropTypes to apply when dropping ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}",
                optional:false,
                name:"portletDropTypes",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout",
        groups:[
            "dragdrop"
        ]
    },
    "method:SectionStack.getSectionHeader":{
        ref:"method:SectionStack.getSectionHeader",
        flags:"",
        description:" Return the SectionHeader for a section.\n <P>\n This will be an instance of the ${isc.DocUtils.linkForRef('attr:SectionStack.sectionHeaderClass')}.  Since different\n SectionStacks may use different header classes, be careful about what APIs you rely on\n for the section header unless you have explicitly set the\n <code>sectionHeaderClass</code>.  In particular, use APIs such as\n ${isc.DocUtils.linkForRef('method:SectionStack.setSectionTitle')} to manipulate headers indirectly wherever possible, as high\n performance SectionStacks designed for very large numbers of sections may cache and\n re-use headers or use other strategies that would make it invalid to store a pointer to\n a section header, assume the header is a layout member, etc.\n\n",
        name:"getSectionHeader",
        seeAlso:[
        ],
        params:[
            {
                description:"ID or index of the section for which you want the header",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"String or Number"
            }
        ],
        returns:{
            description:"the section header indicated",
            type:"SectionHeader"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "type:SQLPagingStrategy":{
        ref:"type:SQLPagingStrategy",
        values:[
            {
                description:"Specify the paging directly in the SQL query we generate.  The way this is done varies \n considerably from database to database: with some it is a straightforward built-in \n facility while others require arcane tricks or simply don't support the idea.  This is \n the most efficient method, where available.  Note that this strategy is not supported \n for operations that make use of a ${isc.DocUtils.linkForRef('attr:OperationBinding.customSQL','customSQL')} clause, \n because it depends upon being able to determine the size of the whole dataset without\n actually retrieving the whole dataset.  Ordinary operations do this by means of an \n automatically-generated \"row count query\", but we cannot generate such a query for a \n <code>customSQL</code> operation.",
                value:"\"sqlLimit\""
            },
            {
                description:"Implement the paging behavior by use of the <code>absolute()</code> method of the\n JDBC <code>ResultSet</code>.",
                value:"\"jdbcScroll\""
            },
            {
                description:"Implement the paging behavior by fetching the entire resultset from the database and\n dropping any unnecessary rows on the server before returning the data to the client.\n This approach is extremely inefficient, but also extremely straightforward; it is \n intended as a fallback option, for situations where the more sophisticated approaches\n cause problems (a JDBC driver that throws vague exceptions when <code>absolute()</code>\n is called, for example)",
                value:"\"dropAtServer\""
            },
            {
                description:"No paging behavior: we always return the entire resultset to the client.",
                value:"\"none\""
            }
        ],
        description:"The technique SmartClient Server's SQL DataSource should use to select a \"page\" of data \n from a table.",
        name:"SQLPagingStrategy",
        seeAlso:[
            {
                ref:"attr:DataSource.sqlPaging",
                description:null
            },
            {
                ref:"attr:OperationBinding.sqlPaging",
                description:null
            }
        ],
        type:"type",
        serverDS:"only"
    },
    "method:ListGrid.toggleFrozen":{
        ref:"method:ListGrid.toggleFrozen",
        flags:"",
        description:" Freeze or unfreeze the indicated field according to whether it is currently frozen.\n <P>\n Called when the ListGrid freezes or unfreezes fields by user action.\n\n",
        name:"toggleFrozen",
        seeAlso:[
        ],
        params:[
            {
                description:"field or fields to freeze.  fields may be specified as ListGridField objects, field names or colNum.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField or Integer or String or Array"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "frozenFields"
        ]
    },
    "method:ListGrid.getCheckboxField":{
        ref:"method:ListGrid.getCheckboxField",
        flags:"",
        description:" Returns the specially generated checkbox field used when ${isc.DocUtils.linkForRef('type:SelectionAppearance')} is\n \"checkbox\".\n <P>\n Called during ${isc.DocUtils.linkForRef('method:ListGrid.setFields')}, this method can be overridden to add advanced dynamic\n defaults to the checkbox field (call Super, modify the default field returned by Super,\n return the modified field).  Normal customization can be handled by just setting\n ${isc.DocUtils.linkForRef('type:AutoChild')} properties, as mentioned under the docs for ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxField')}.\n\n",
        name:"getCheckboxField",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"ListGridField"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "method:TabSet.tabsReordered":{
        ref:"method:TabSet.tabsReordered",
        flags:"",
        description:" Noficiation method executed when one or more tabs in the TabSet are reordered.\n",
        name:"tabsReordered",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:TabSet.defaultTabWidth":{
        ref:"attr:TabSet.defaultTabWidth",
        flags:"IR",
        description:"If set, is passed as \"width\" to all tabs when ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')} is set to \n <code>\"top\"</code> or <code>\"bottom\"</code>.\n <P>\n If unset, width will be picked up from\n the Tab constructor class defaults. Tabs expand to fit their content, so \n this width acts as a minimum.\n Setting width:1 will result in tabs that are\n only as wide as their titles. May be customized by individual\n ${isc.DocUtils.linkForRef('group:skinning','skins')}.",
        name:"defaultTabWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:Canvas.getInnerContentWidth":{
        ref:"method:Canvas.getInnerContentWidth",
        flags:"A",
        description:"  Returns the amount of space available for interior content (or relatively positioned child\n  widget(s)) without introducing clipping, scrolling or overflow.<br>\n  This is the space within the viewport of the widget (not including padding, and excluding\n  margins, borders or scrollbars) rendered at its specified size.\n\n",
        name:"getInnerContentWidth",
        seeAlso:[
            {
                ref:"method:Canvas.getInnerContentHeight",
                description:null
            },
            {
                ref:"method:Canvas.getInnerHeight",
                description:null
            },
            {
                ref:"method:Canvas.getInnerWidth",
                description:null
            }
        ],
        returns:{
            description:"inner height of the widget in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:Window.showHeaderIcon":{
        ref:"attr:Window.showHeaderIcon",
        flags:"IRW",
        description:"If true, we show an icon on the left in the header.",
        name:"showHeaderIcon",
        setter:[
            "setShowHeaderIcon"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "classAttr:Dialog.DONE_BUTTON_TITLE":{
        ref:"classAttr:Dialog.DONE_BUTTON_TITLE",
        flags:"IRW",
        description:"Title for the <code>\"Done\"</code> button.",
        name:"DONE_BUTTON_TITLE",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"\"Done\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MultiGroupDialog.initialGrouping":{
        ref:"attr:MultiGroupDialog.initialGrouping",
        flags:"IR",
        description:"The initial group configuration to show in the \n ${isc.DocUtils.linkForRef('attr:MultiGroupPanel.optionsGrid','optionsGrid')}.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.",
        name:"initialGrouping",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "method:Validator.condition":{
        ref:"method:Validator.condition",
        flags:"",
        description:" For a validator that is not a built-in ${isc.DocUtils.linkForRef('type:ValidatorType')}, a function or\n String expression to evaluate to see if this validator passes or fails.\n <p>\n Because the validator declaration itself is passed as a parameter to\n <code>condition()</code>, you can effectively parameterize the validator.  For example, to\n create a validator that checks that the value is after a certain date:<pre> \n     { type:\"custom\", afterDate:new Date(), \n       condition:\"value.getTime() > validator.afterDate.getTime()\" }\n </pre>\n Reusable validators, like the above, can be registered as a standard validatorType by\n calling ${isc.DocUtils.linkForRef('classMethod:Validator.addValidator')}.\n <P>\n Note that, if a field is declared with a builtin ${isc.DocUtils.linkForRef('type:FieldType')}, the value passed in\n will already have been converted to the specified type, if possible.\n\n",
        name:"condition",
        seeAlso:[
        ],
        params:[
            {
                description:"FormItem or DataSourceField on which this                                           validator was declared.  NOTE: FormItem will not\n                                           be available during a save performed without a\n                                           form (eg programmatic save) or if the field \n                                           is not available in the form.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"DataSourceField or FormItem"
            },
            {
                description:"Validator declaration from eg                              ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')}.",
                optional:false,
                name:"validator",
                defaultValue:null,
                type:"Validator"
            },
            {
                description:"value to validate",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Field values for record being validated.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"whether the value passed validation.  True for passed, false for fail.",
            type:"boolean"
        },
        type:"method",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "attr:AnimateShowEffect.endsAt":{
        ref:"attr:AnimateShowEffect.endsAt",
        flags:"IR",
        description:"For hide animations of type <code>\"wipe</code> and \n   <code>\"slide\"</code> this attribute specifies where the wipe / slide should finish.\n   Valid options are <code>\"T\"</code> (vertical animation upwards to the top of the canvas,\n   the default behavior) and <code>\"L\"</code> (horizontal animation to the left of the\n   canvas).",
        name:"endsAt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:AnimateShowEffect"
    },
    "class:RowSpacerItem":{
        methods:[
        ],
        ref:"class:RowSpacerItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:RowSpacerItem.showTitle",
            "attr:RowSpacerItem.colSpan",
            "attr:RowSpacerItem.startRow",
            "attr:RowSpacerItem.endRow"
        ],
        description:"Form item that renders as a blank row in the form layout.<br>\n Set ${isc.DocUtils.linkForRef('attr:RowSpacerItem.startRow')} to <code>false</code> to create a rowSpacer that simply\n takes up every remaining column in the current row rather than starting a new row.",
        name:"RowSpacerItem",
        seeAlso:[
        ],
        type:"class"
    },
    "class:ScrollThumb":{
        methods:[
        ],
        ref:"class:ScrollThumb",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation/Scrollbar"
        ],
        attrs:[
        ],
        description:"Class used for the draggable \"thumb\" of a scrollbar.  Do not use directly; this class is\n documented only for skinning purposes.",
        name:"ScrollThumb",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:DataSource.setLoaderURL":{
        ref:"classMethod:DataSource.setLoaderURL",
        flags:"",
        description:" Sets the URL where the DataSourceLoader servlet has been installed; this is used by the \n ${isc.DocUtils.linkForRef('classMethod:DataSource.load')} method.  Note, one reason you may wish to modify the loader URL\n is to include a Cross-Site Request Forgery (CSRF) token, as described \n ${isc.DocUtils.linkForRef('classAttr:RPCManager.actionURL','here')}\n\n",
        name:"setLoaderURL",
        seeAlso:[
        ],
        params:[
            {
                description:"The new loaderURL",
                optional:false,
                name:"url",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:FilterBuilder.subClauseButtonTitle":{
        ref:"attr:FilterBuilder.subClauseButtonTitle",
        flags:"IR",
        description:"The title of the subClauseButton",
        name:"subClauseButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"+()\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DrawRect.width":{
        ref:"attr:DrawRect.width",
        flags:"IRW",
        description:"Width in pixels.",
        name:"width",
        setter:[
            "setWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DrawRect"
    },
    "attr:Label.dynamicContents":{
        ref:"attr:Label.dynamicContents",
        flags:"IRWA",
        description:"Dynamic contents allows the contents string to be treated as a simple, but powerful\n template.  When this attribute is set to true, expressions of the form &#36;{arbitrary JS\n here} are replaced by the result of the evaluation of the JS code inside the curly\n brackets.  This evaluation happens at draw time.  If you want to trigger a re-evaluation\n of the expressions in the contents string you can call markForRedraw() on the canvas.\n <p>\n You can use this feature to build some simple custom components. For example, let's say\n you want to show the value of a Slider in a Canvas somewhere on the screen.  You can do\n this by observing the valueChanged() method on the slider and calling setContents() on\n your canvas with the new string or you can set the contents of the canvas to something\n like:\n <p><code>\n \"The slider value is &#36;{sliderInstance.getValue()}.\"\n </code><p>\n Next you set dynamicContents: true on the canvas, observe valueChanged() on the slider\n and call canvas.markForRedraw() in that observation.  This approach is cleaner than\n setContents() when the Canvas is aggregating several values or dynamic expressions.\n Like so:\n <p>\n <pre>\n Slider.create({\n     ID: \"mySlider\"\n });\n\n Canvas.create({\n     ID: \"myCanvas\",\n     dynamicContents: true,\n     contents: \"The slider value is &#36;{mySlider.getValue()}.\"\n });\n\n myCanvas.observe(mySlider, \"valueChanged\",\n                  \"observer.markForRedraw()\");\n </pre>\n You can embed an arbitrary number of dynamic expressions in the contents string.  The\n search and replace is optimized for speed.\n <p>\n If an error occurs during the evaluation of one of the expressions, a warning is logged\n to the ISC Developer Console and the error string is embedded in place of the expected\n value in the Canvas.\n <p>\n The value of a function is its return value.  The value of any variable is the same as\n that returned by its toString() representation.\n <p>\n Inside the evaluation contentext, <code>this</code> points to the canvas instance that\n has the dynamicContents string as its contents - in other words the canvas instance on\n which the template is declared.",
        name:"dynamicContents",
        seeAlso:[
            {
                ref:"attr:Label.contents",
                description:null
            },
            {
                ref:"attr:Canvas.dynamicContentsVars",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dynamicContents')}"
        ],
        definingClass:"class:Label",
        groups:[
            "contents"
        ]
    },
    "group:accessibility":{
        ref:"group:accessibility",
        title:"Accessibility / Section 508 compliance",
        treeLocation:[
            "Concepts"
        ],
        refs:[
            "method:Canvas.setAriaState",
            "attr:Canvas.ariaRole",
            "attr:Canvas.ariaState",
            "attr:FormItem.ariaRole",
            "attr:FormItem.ariaState",
            "attr:ListGrid.canTabToHeader",
            "attr:ListGrid.screenReaderCellSeparator",
            "attr:ListGrid.screenReaderRowSeparator",
            "attr:Img.altText"
        ],
        description:"SmartClient is a fully accessible technology which fulfills the Section 508 requirements of\n U.S. government law and similar international standards.  Specificallly:\n <ul>\n <li> components are fully keyboard navigable and the browser's native focus indicator reveals\n keyboard focus to the user\n <li> components are themable/brandable, allowing a variety of high contrast and limited color\n range look and feel options to compensate for visual acuity disabilities\n <li> the WAI-ARIA standard is supported for adding semantic markup to components to identify them to\n screen readers such as NVDA or JAWS.\n </ul>\n <P>\n <b>WAI-ARIA support</b>\n <P>\n ARIA is a standard from the WAI (Web Accessibility Institute) that allows modern Ajax applications to\n add semantic markup to the HTML used to create modern Ajax interfaces to enable screen reader support.\n This semantic markup allows a screen reader to identify the function and state of complex components\n such as load-on-demand lists and trees even though they are composed of simple elements such a &lt;div&gt;s.  \n <P>\n Note that ARIA support is the correct way to evaluate the accessibility of a web\n <i>application</i>.  Standards which apply to a web <i>site</i>, such as ensuring that all interactive\n elements are composed of native HTML anchor (&lt;a&gt;) or &lt;form&gt; controls, cannot and should\n not be applied to a web <i>application</i>.  A web application's accessibility must be evaluated in\n terms of its ARIA support.\n <P>\n By default, SmartClient components will write out limited ARIA markup sufficient to navigate basic\n menus and buttons.  Full screen reader mode is not enabled by defaut because it has a small\n performance impact and subtly changes the management of keyboard focus in a way that is slightly worse\n for unimpaired users.  \n <P>\n The limited ARIA support which is enabled by default is intended to allow a screen reader user to\n navigate to a menu to enable full screen reader support.  This is analogous to a partially visually\n impaired user ariving at a site with normal theming and needing to switch to a high-contrast skin.\n <P>\n To enable full screenReader mode, call ${isc.DocUtils.linkForRef('classMethod:isc.setScreenReaderMode')} before any\n SmartClient components are created or drawn.  This implies that if an end user dynamically enables\n full screen reader support, the application page must be reloaded, as an any existing components will\n not have full ARIA markup.\n <P>\n For an overview of ARIA, see <a href='http://www.w3.org/WAI/intro/aria.php' target='_blank'>http://www.w3.org/WAI/intro/aria.php</a>.\n <P>\n To completely disable ARIA markup, call\n ${isc.DocUtils.linkForRef('classMethod:isc.setScreenReaderMode','isc.setScreenReaderMode(false)')} before any components are drawn.\n <P>\n <b>Recommended Screen Reader Configuration</b>\n <P>\n The recommended configuration for screen reader use is the most recent available release of Firefox\n and either the JAWS or NVDA screen reader.\n <P>\n While WAI-ARIA markup is provided for other browsers, support for WAI-ARIA itself is known to be\n limited in current release versions of IE and other browsers supported by SmartClient.\n <P>\n <b>Application-level concerns</b>\n <P>\n While SmartClient enables accessible web applications to be created, it is always possible for an\n application to violate accessibility standards.  The following is a brief and not exhaustive list of\n concerns for application authors:\n <ul>\n <li> for any operation that can be triggered via drag and drop, you should offer an equivalent\n keyboard-only means of performing the same operation.  For common grid to grid drags, this is easily\n accomplished using ${isc.DocUtils.linkForRef('method:ListGrid.transferSelectedData')}.\n <li> if you use a component in a way that is not typical, such as using an ImgButton as a\n non-interactive stateful display, set its ${isc.DocUtils.linkForRef('attr:Canvas.ariaRole')} appropriately.  For a list of ARIA\n roles, see <a href='http://www.w3.org/WAI/PF/aria/roles#role_definitions' target='_blank'>http://www.w3.org/WAI/PF/aria/roles#role_definitions</a>.\n Note that in most cases you will not need to modify the default ariaRole written out by\n the SmartClient framework with screenReader mode enabled.\n <li> for plain HTML content that is incorporated into an Ajax interface (such as an embedded help\n system), embed the HTML into an ${isc.DocUtils.linkForRef('class:HTMLFlow')} (whose default ARIA role is \"article\") and ensure the\n HTML itself is accessible (for example, has \"alt\" attributes on all images which are semantically\n meaningful)\n <li> in addition to setting explicit ARIA roles per canvas, SmartClient also allows \n developers to specify values for explicit \n <smartclient>${isc.DocUtils.linkForRef('attr:Canvas.ariaState','ARIA states')}</smartclient>\n <smartgwt>${isc.DocUtils.linkForRef('method:Canvas.setAriaState','ARIA states')}</smartgwt>\n (see <a href='http://www.w3.org/TR/wai-aria/states_and_properties' target='_blank'>http://www.w3.org/TR/wai-aria/states_and_properties</a>) to be written\n out with the HTML for a component. <br>\n Note that, as with ariaRoles, in most cases the\n framework automatically writes out any appropriate aria state information based\n on the component being generated - you'd only make use of this property if\n using components in some custom way. \n To provide a concrete example: a developer might implement a logical nested\n \"menu\" built from a set of Button instances. In that case, some button might have\n ariaRole set to <code>\"menuitem\"</code> and (if it launches a sub-menu),\n also the <a href='http://www.w3.org/TR/wai-aria/states_and_properties#aria-haspopup' target='_blank'>\"haspopup\"</a>\n aria state. The code for this would be something like:\n <smartclient>\n <pre>\n isc.Button.create({\n      // ... various properties\n      \n      ariaRole:\"menuitem\",\n      ariaState:{haspopup:true}\n });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n  myButton.setAriaRole(\"menuitem\");\n  myButton.setAriaState(\"haspopup\", true);\n </pre>\n </smartgwt>\n </ul>\n <p>\n <b>Known Screen Reader bugs / quirks</b>\n <p>\n JAWS: By default, JAWS treats a web page as a web document - text interspersed with graphics,\n links, etc. - and not as an application consisting of form controls, interactive buttons,\n lists, and so on. To enable application mode in JAWS, it is necessary to add <code>role=\"application\"</code>\n to the &lt;body&gt; tag. See\n <a href='http://www.freedomscientific.com/Support/TechnicalSupport/Bulletin/1404' target='_blank'>Freedom Scientific Bulletin 1404 - In ARIA&#44; what is the difference in how JAWS treats role=\"application\" and role=\"document\"?</a>",
        name:"accessibility",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Task.inputFieldList":{
        ref:"attr:Task.inputFieldList",
        flags:"IR",
        description:"List of multiple fields from the ${isc.DocUtils.linkForRef('attr:Process.state','process state')} which are provided\n as input data to this task. See ${isc.DocUtils.linkForRef('group:taskIO')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:Task.inputField')} is also specified, it will be implicitly added to the\n <code>inputFieldList</code> if it is not already present.",
        name:"inputFieldList",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Task"
    },
    "method:ValuesManager.getValue":{
        ref:"method:ValuesManager.getValue",
        flags:"",
        description:" Returns the value for some field.\n",
        name:"getValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Which value to be returned",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Optional, the component for which we are trying to                                  retrieve a value.  This is used to identify which of\n                                  the potential records to use when the ValuesManager\n                                  is managing a complex structure involving nested Lists",
                optional:true,
                name:"component",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"current value of the appropriate field",
            type:"any"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:Calendar.eventOverlapPercent":{
        ref:"attr:Calendar.eventOverlapPercent",
        flags:"IR",
        description:"The size of the overlap, presented as a percentage of the width of events sharing timeslots.",
        name:"eventOverlapPercent",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "type:RowSpanSelectionMode":{
        ref:"type:RowSpanSelectionMode",
        values:[
            {
                description:"when a cell is clicked on, select any cells in subsequent columns which                  are at least partially spanned by the clicked cell",
                value:"\"forward\""
            },
            {
                description:"when a cell is clicked on, selects any cells in any other columns which                  are at least partially spanned by the clicked cell",
                value:"\"both\""
            },
            {
                description:"behaves like \"forward\", except as though the cell in the first column                    was clicked instead.  If the largest row spans are in the first\n                    column and all cells in subsequent columns do not extend out of the\n                    first cell's span, this creates a row-like selection model where the\n                    span of the left-most cell defines the \"row\" of cells being selected.",
                value:"\"outerSpan\""
            }
        ],
        description:"Behavior of selection when row spanning is active.  See ${isc.DocUtils.linkForRef('attr:ListGrid.useRowSpanStyling')}.",
        name:"RowSpanSelectionMode",
        seeAlso:[
        ],
        type:"type"
    },
    "class:ResultTree":{
        methods:[
            "method:ResultTree.loadChildren",
            "method:ResultTree.unloadChildren",
            "method:ResultTree.invalidateCache",
            "method:ResultTree.get",
            "method:ResultTree.getRange",
            "method:ResultTree.setCriteria",
            "method:ResultTree.applyFilter",
            "method:ResultTree.compareCriteria",
            "method:ResultTree.willFetchData",
            "method:ResultTree.getOpenState",
            "method:ResultTree.setOpenState",
            "method:ResultTree.dataArrived"
        ],
        ref:"class:ResultTree",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:ResultTree.data",
            "attr:ResultTree.dataSource",
            "attr:ResultTree.loadDataOnDemand",
            "attr:ResultTree.autoPreserveOpenState",
            "attr:ResultTree.fetchMode",
            "attr:ResultTree.resultSize",
            "attr:ResultTree.childCountProperty",
            "attr:ResultTree.canReturnOpenSubfoldersProperty",
            "attr:ResultTree.canReturnOpenFolders",
            "attr:ResultTree.progressiveLoading",
            "attr:ResultTree.defaultIsFolder",
            "attr:ResultTree.rootNode",
            "attr:ResultTree.discardParentlessNodes",
            "attr:ResultTree.defaultNewNodesToRoot",
            "attr:ResultTree.updateCacheFromRequest",
            "attr:ResultTree.disableCacheSync",
            "attr:ResultTree.keepParentsOnFilter",
            "attr:ResultTree.serverFilterFields"
        ],
        description:"ResultTrees are an implementation of the ${isc.DocUtils.linkForRef('class:Tree')} API, used to handle hierarchical\n data, whose nodes are DataSource records which are retrieved from a server.",
        name:"ResultTree",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Window.minimizeButton":{
        ref:"attr:Window.minimizeButton",
        flags:"R",
        description:"ImgButton shown in the header that will minimize this Window by calling ${isc.DocUtils.linkForRef('method:Window.minimize')}.",
        name:"minimizeButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "method:FilterBuilder.addCriterion":{
        ref:"method:FilterBuilder.addCriterion",
        flags:"",
        description:" Add a new criterion, including recursively adding sub-criteria for a criterion that\n contains other criteria.\n \n",
        name:"addCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"new criterion to be added",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "type:CSSStyleName":{
        ref:"type:CSSStyleName",
        description:"CSS class name to apply to some HTML element on this page. This is a string that should\n match the css class defined for the page in an external stylesheet or in inline\n html &lt;STYLE&gt; tags.\n <P>\n As a general rule, wherever it is possible to provide a CSS styleName (such as\n ${isc.DocUtils.linkForRef('attr:Canvas.styleName')} or ${isc.DocUtils.linkForRef('attr:Button.baseStyle')}, your CSS style can specify border,\n margins, padding, and any CSS attributes controlling background or text styling.  You\n should not specify any CSS properties related to positioning, clipping, sizing or\n visibility (such as \"overflow\", \"position\", \"display\", \"visibility\" and \"float\") - use\n SmartClient APIs for this kind of control.\n <P>\n Because text wrapping cannot be consistently controlled cross-browser from CSS alone,\n you should use SmartClient properties such as ${isc.DocUtils.linkForRef('attr:Button.wrap')} instead of the\n corresponding CSS properties, when provided.\n <P>\n Content contained within SmartClient components can use arbitrary CSS, with the\n caveat that the content should be tested on all supported browsers, just as content\n outside of SmartClient must be.\n <P>\n <b>Special note on CSS margins</b>: wherever possible, use CSS padding and border in\n lieu of CSS margins, or non-CSS approaches such as ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')},\n ${isc.DocUtils.linkForRef('attr:Canvas.snapTo')}, or absolute positioning (including specifying percentage left/top\n coordinates).  We recommend this because CSS specifies a very complicated and widely\n criticized \"margin-collapse\" behavior which has surprising effects when margins exist on\n both parents and children.  Compounding the problem, margins are implemented very\n differently on different browsers, especially when it comes to HTML margins.\n <p>\n <b>Note about CSS \"box models\"</b>\n <p>\n The CSS \"box model\" defines whether the size applied to a DOM element includes padding,\n borders or margins, or whether such settings effectively <b>increase</b> the size of the\n component beyond the size specified in CSS.\n <p>\n In SmartClient, the size configured for a component <i>includes</i> border, padding and\n margins if specified (in CSS terminology, the box model is \"margin-box\").  This allows\n CSS borders, margins and padding to be treated as purely visual properties with no\n effect on sizing or layout.",
        name:"CSSStyleName",
        seeAlso:[
        ],
        type:"type",
        examples:[
            "${isc.DocUtils.linkForExampleId('consistentSizing')}"
        ],
        groups:[
            "appearance"
        ]
    },
    "method:FormItem.isDrawn":{
        ref:"method:FormItem.isDrawn",
        flags:"",
        description:" Returns true if this item has been written out into the DOM.\n\n",
        name:"isDrawn",
        seeAlso:[
        ],
        returns:{
            description:"whether this item is drawn",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "drawing"
        ]
    },
    "method:SectionHeader.titleClipped":{
        ref:"method:SectionHeader.titleClipped",
        flags:"A",
        description:" Is the title of this section header clipped by ${isc.DocUtils.linkForRef('attr:SectionHeader.controls','section controls')}\n or the edge of the header?\n",
        name:"titleClipped",
        seeAlso:[
            {
                ref:"attr:SectionHeader.clipTitle",
                description:null
            }
        ],
        returns:{
            description:"whether the title is clipped.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:SectionHeader"
    },
    "attr:ValuesManager.addOperation":{
        ref:"attr:ValuesManager.addOperation",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} to use when performing add operations.",
        name:"addOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager",
        groups:[
            "operations"
        ]
    },
    "classMethod:Class.setInstanceProperty":{
        ref:"classMethod:Class.setInstanceProperty",
        flags:"",
        description:"\n\tSets a named property from the instance defaults for this object.\n\n",
        name:"setInstanceProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to return",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            },
            {
                description:"value to set to",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "classAttr:GroupingMessages.upcomingLaterTitle":{
        ref:"classAttr:GroupingMessages.upcomingLaterTitle",
        flags:"IRW",
        description:"When a ${isc.DocUtils.linkForRef('class:ListGrid')} is grouped by a date field in 'Upcoming' mode, \n this is the group title for all records in which the grouped date field occurs later than\n one month after today's date.",
        name:"upcomingLaterTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Later\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:OperationBinding.dataProtocol":{
        ref:"attr:OperationBinding.dataProtocol",
        flags:"IR",
        description:"Controls the format in which inputs are sent to the dataURL.\n <p>\n When a DataSource operation such as fetchData() is invoked on this DataSource or a component\n bound to this DataSource, the data passed to the operation, if any, will be sent to the\n <code>dataURL</code>.  The <code>dataProtocol</code> property controls the format in\n which the data is sent: SOAP message, HTTP GET or POST of parameters, etc.\n <P>\n The <code>dataProtocol</code> property need not be set for a DataSource with a WebService\n ( ${isc.DocUtils.linkForRef('attr:DataSource.serviceNamespace')} is set), in this case, SOAP messaging is used by\n default.\n <P>\n Developers may completely bypass the SmartClient comm system by setting dataProtocol to\n <code>\"clientCustom\"</code>. In this case SmartClient will not attempt to send any data\n to the server after calling ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}. Instead the developer is\n expected to implement <code>transformRequest()</code> such that it performs the necessary\n data action outside of SmartClient, and then calls ${isc.DocUtils.linkForRef('method:DataSource.processResponse')}, \n passing in the ${isc.DocUtils.linkForRef('attr:DSRequest.requestId')} and an appropriate set of DSResponse properties to\n indicate the result of the action.\n <P>\n NOTE: when ${isc.DocUtils.linkForRef('attr:OperationBinding.dataFormat')} is \"iscServer\", <code>dataProtocol</code> is not consulted.\n Instead, SmartClient uses a proprietary wire format to communicate with the SmartClient\n server, and the server-side DSRequest and DSResponse objects should be used to access\n request data and form responses.",
        name:"dataProtocol",
        seeAlso:[
            {
                ref:"type:DSProtocol",
                description:null
            }
        ],
        valueType:"DSProtocol",
        defaultValue:"\"getParams\"",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:Hilite.htmlValue":{
        ref:"attr:Hilite.htmlValue",
        deprecated:"<code>htmlValue</code> is deprecated in favor of ${isc.DocUtils.linkForRef('attr:Hilite.replacementValue')}.   Note that unlike <code>replacementValue</code>, this property does not respect\n  ${isc.DocUtils.linkForRef('attr:Hilite.disabled')}, and will be applied even if <code>disabled</code> is set to\n  <code>true</code>",
        flags:"IR",
        description:"Value to show <b>in place of</b> the actual value from the record, for a record that matches\n this hilite.\n <P>\n This can be used to take ranges of numeric values and simplify them to \"Low\", \"Medium\",\n \"High\" or similar textual values, translate very small or very large values to \"Outlier\" or\n \"Negligible\", and similar use cases.",
        name:"htmlValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "attr:FacetChart.pieBorderProperties":{
        ref:"attr:FacetChart.pieBorderProperties",
        flags:"IR",
        description:"Properties for the border around a pie chart.",
        name:"pieBorderProperties",
        seeAlso:[
        ],
        valueType:"DrawOval Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:Class.modifyFrameworkStart":{
        ref:"classMethod:Class.modifyFrameworkStart",
        flags:"",
        description:" Notifies the SmartClient Class system that any new classes created, or changes made\n to existing classes should be treated as part of the framework. This ensures that\n ${isc.DocUtils.linkForRef('classAttr:Class.isFrameworkClass')} will be set to true on any classes defined after this\n method call, until ${isc.DocUtils.linkForRef('classMethod:Class.modifyFrameworkDone')} is called.\n <P>\n Developers may call this method before applying changes which should be considered\n part of the core framework, rather than application code, for example in <i>load_skin.js</i>\n files. When changes are complete, ${isc.DocUtils.linkForRef('classMethod:Class.modifyFrameworkDone')} should be called.\n Note that this is an alternative approach to calling ${isc.DocUtils.linkForRef('classMethod:Class.markAsFrameworkClass')}\n directly on specific classes.\n\n",
        name:"modifyFrameworkStart",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:ListGrid.canEditCell":{
        ref:"method:ListGrid.canEditCell",
        flags:"A",
        description:" Can this cell be edited?\n <P>\n The default implementation of <code>canEditCell()</code> respects the various property\n settings affecting editability:\n <ul><li>${isc.DocUtils.linkForRef('attr:ListGridField.canEdit','field.canEdit')} can be set to disable editing\n          for a field</li>\n     <li>If the grid is bound to a dataSource, the ${isc.DocUtils.linkForRef('attr:ListGrid.canEditFieldAttribute')} value on the\n         dataSource field may enable / disable editing</li>\n     <li>a record with the ${isc.DocUtils.linkForRef('attr:ListGrid.recordEditProperty','recordEditProperty')} set to\n         false is not editable</li>\n     <li>disabled records are not editable</li>\n </ul>\n You can override this method to control editability on a cell-by-cell basis.  For example,\n if you had a grid that allows editing of \"orders\", and you had a field \"shipDate\" that is\n normally editable, but should not be editable if the order is already \"complete\", you might\n implement <code>canEditCell()</code> as follows:\n <P>\n <pre>\n   isc.ListGrid.create({\n       ...\n       canEditCell : function (rowNum, colNum) {\n           var record = this.getRecord(rowNum),\n               fieldName = this.getFieldName(colNum);\n           if (fieldName == \"shipDate\" &&\n               record.orderStatus == \"complete\")\n           {\n               return false;\n           }\n           // use default rules for all other fields\n           return this.Super(\"canEditCell\", arguments);\n       }\n   });\n </pre>\n <P>\n Notes on providing custom implementations:\n <ul>\n <li> In order to allow complete control over editing, <code>canEditCell()</code> is called\n very frequently.  If you see delays on row to row navigation, check that your implementation\n is efficient\n <li> If you change the editability of a cell on the fly, for example, during\n ${isc.DocUtils.linkForRef('method:ListGrid.editorExit')} on another cell, call refreshCell() to show or hide the editor\n <li> If this ListGrid allows new records to be created, <code>canEditCell()</code> may be\n called when there is no record available, in which case getRecord() will return null.  The\n values input so far by the user are available via ${isc.DocUtils.linkForRef('method:ListGrid.getEditValues')}.\n </ul>\n\n",
        name:"canEditCell",
        seeAlso:[
        ],
        params:[
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Whether to allow editing this cell",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:Calendar.getWorkdayEnd":{
        ref:"method:Calendar.getWorkdayEnd",
        flags:"",
        description:" Returns the end of the working day on the passed date.  By default, this method returns\n the value of ${isc.DocUtils.linkForRef('attr:Calendar.workdayEnd','workdayEnd')}.\n",
        name:"getWorkdayEnd",
        seeAlso:[
        ],
        params:[
            {
                description:"a Date instance",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"(String) the name of the relevant lane - only passed for dayView with                             showDayLanes: true",
                optional:false,
                name:"",
                defaultValue:null,
                type:"laneName"
            }
        ],
        returns:{
            description:"any parsable time-string",
            type:"String"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:Gauge.sectors":{
        ref:"attr:Gauge.sectors",
        flags:"IRW",
        description:"The GaugeSectors contained in this Gauge.  \n\n If this this property is not specified, the gauge will\n be created with a default sector filling the gauge.",
        name:"sectors",
        setter:[
            "setSectors"
        ],
        seeAlso:[
        ],
        valueType:"Array of GaugeSector",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:ListGridField.groupingMode":{
        ref:"attr:ListGridField.groupingMode",
        flags:"IR",
        description:"For a field that allows multiple ${isc.DocUtils.linkForRef('attr:ListGridField.groupingModes','grouping modes')},\n the current grouping mode.\n <P>\n This property is set when a user chooses a particular grouping mode, and may be set on\n ListGrid creation to affect the initial grouping.",
        name:"groupingMode",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "grouping"
        ]
    },
    "method:Portlet.getPortalPosition":{
        ref:"method:Portlet.getPortalPosition",
        flags:"",
        description:" Gets the position of the Portlet within its ${isc.DocUtils.linkForRef('class:PortalLayout')}. Returns null\n if the Portlet is not in a PortalLayout.\n",
        name:"getPortalPosition",
        seeAlso:[
        ],
        returns:{
            description:"the position of the Portlet",
            type:"PortalPosition"
        },
        type:"method",
        definingClass:"class:Portlet"
    },
    "method:DrawLine.moveBy":{
        ref:"method:DrawLine.moveBy",
        flags:"",
        description:" Move both the start and end points of the line by a relative amount.\n\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"change to left coordinate in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"change to top coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLine"
    },
    "attr:ListGrid.arrowKeyAction":{
        ref:"attr:ListGrid.arrowKeyAction",
        flags:"IRWA",
        description:"Action to perform when the listGrid has keyboard focus (but not editing focus) and a user\n presses the up or down arrow key. Possible values are:\n <ul>\n <li><code>\"select\"</code> : select the next row in the list (calls <code>recordClick</code> handler)</li>\n <li><code>\"focus\"</code> : move focus to the next row in the list without changing the selection</li>\n <li><code>\"activate\"</code> : select and activate the next row in the list (calls\n  <code>recordDoubleClick</code> handler)</li>\n <li><code>\"none\"</code> : no action</li>\n <li> <code>null</code> : if ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is \"checkbox\", behaves as if set\n  to \"focus\"; otherwise, behaves as if set to \"select\"</li>\n </ul>",
        name:"arrowKeyAction",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:HTMLFlow.transformHTML":{
        ref:"method:HTMLFlow.transformHTML",
        flags:"",
        description:" Override to modify the loaded HTML before it is rendered.\n\n",
        name:"transformHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the html as loaded from the server return (HTML) html to be rendered",
                optional:false,
                name:"html",
                defaultValue:null,
                type:"HTML"
            }
        ],
        type:"method",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "method:Calendar.eventChanged":{
        ref:"method:Calendar.eventChanged",
        flags:"",
        description:" Notification fired whenever a user changes an event, whether by dragging the event or by\n editing it in a dialog.\n <P>\n In a calendar with a DataSource, eventChanged() fires <b>after</b> the updated event has\n been successfully saved to the server\n\n",
        name:"eventChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"the event that changed",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "attr:ListGridRecord.isGroupSummary":{
        ref:"attr:ListGridRecord.isGroupSummary",
        flags:"IRW",
        description:"This attribute will automatically be set to true for records representing\n group-level summary rows shown if ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true.\n <P>\n Note that <code>isGroupSummary</code> is the default property name for this attribute but\n it may be modified by setting ${isc.DocUtils.linkForRef('attr:ListGrid.groupSummaryRecordProperty')}",
        name:"isGroupSummary",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "method:IconButton.iconClick":{
        ref:"method:IconButton.iconClick",
        flags:"",
        description:" Notification method fired when a user clicks on the ${isc.DocUtils.linkForRef('attr:IconButton.icon','icon')} in this \n IconButton.  \n <smartclient>Return false to suppress the standard click handling code.</smartclient>\n <smartgwt>call <code>event.cancel()</code> to suppress the standard \n click handling code.</smartgwt>\n\n",
        name:"iconClick",
        seeAlso:[
        ],
        returns:{
            description:"return false to cancel event-bubbling",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:IconButton"
    },
    "object:ImgProperties":{
        methods:[
        ],
        ref:"object:ImgProperties",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation/Canvas"
        ],
        attrs:[
            "attr:ImgProperties.src",
            "attr:ImgProperties.width",
            "attr:ImgProperties.height",
            "attr:ImgProperties.name",
            "attr:ImgProperties.extraStuff",
            "attr:ImgProperties.imgDir"
        ],
        description:"A set of properties that can be used to create an image.",
        name:"ImgProperties",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:DynamicForm.allowExpressions":{
        ref:"attr:DynamicForm.allowExpressions",
        flags:"IRW",
        description:"For a form that produces filter criteria\n (see ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria','form.getValuesAsCriteria()')}), allows the user to\n enter simple expressions in any field in this form that takes text input.\n <P>\n Also note that enabling <code>allowExpressions</code> for an entire form changes the\n ${isc.DocUtils.linkForRef('attr:DynamicForm.defaultSearchOperator')} to\n ${isc.DocUtils.linkForRef('attr:DataSource.translatePatternOperators','\"iContainsPattern\"')},\n so that simple search expressions similar to SQL \"LIKE\" patterns can be entered in most\n fields.\n <P>\n See ${isc.DocUtils.linkForRef('attr:FormItem.allowExpressions')} for details.",
        name:"allowExpressions",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:Canvas.valuesManager":{
        ref:"attr:Canvas.valuesManager",
        flags:"IRWA",
        description:"${isc.DocUtils.linkForRef('class:ValuesManager')} for managing values displayed in this component.\n If specified at initialization time, this component will be added to the valuesManager via\n ${isc.DocUtils.linkForRef('method:ValuesManager.addMember')}.\n <P>\n ValuesManagers allow different fields of a single object to be displayed or edited\n across multiple UI components. Given a single values object, a valuesManager will handle\n determining the appropriate field values for its member components and displaying them / \n responding to edits if the components support this.\n <P>\n Data may be derived simply from the specified fieldNames within the member components, or for\n complex nested data structures can be specified by both component and field-level\n ${isc.DocUtils.linkForRef('type:DataPath')}.\n <P>\n Note that components may be automatically bound to an existing valuesManager attached to a \n parent component if dataPath is specified. See ${isc.DocUtils.linkForRef('attr:Canvas.dataPath')} for more information.\n Also note that if a databound component has a specified dataSource and dataPath but no specified\n valuesManager object one will be automatically generated as part of the databinding process",
        name:"valuesManager",
        setter:[
            "setValuesManager"
        ],
        seeAlso:[
        ],
        valueType:"ValuesManager",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:Shadow.blur":{
        ref:"attr:Shadow.blur",
        flags:"IR",
        description:null,
        name:"blur",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"10",
        type:"attr",
        definingClass:"object:Shadow"
    },
    "attr:SectionItem.itemIds":{
        ref:"attr:SectionItem.itemIds",
        flags:"IR",
        description:"IDs of the items that should be considered a member of this section.",
        name:"itemIds",
        seeAlso:[
        ],
        valueType:"Array of ID",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SectionItem"
    },
    "method:DrawPane.getDataURL":{
        ref:"method:DrawPane.getDataURL",
        flags:"",
        description:" Get a \"data:\" URL encoding the current contents of the DrawPane as a PNG file.\n <p>\n The returned \"data:\" URLs can be used anywhere a URL to an image is valid, for example,\n ${isc.DocUtils.linkForRef('attr:Img.src')}.\n <p>\n This method will directly return the data URL on modern browsers when using &lt;canvas&gt;-style\n rendering (the default), and if there are no ${isc.DocUtils.linkForRef('class:DrawImage')}s in this <code>DrawPane</code>\n that load cross-domain images.\n <p>\n On legacy browers (any version of IE in \"quirks\" mode, all versions of IE prior to 9.0),\n or if there is a <code>DrawImage</code> that loads a cross-domain image, data\n URL generation requires a server trip and requires the SmartClient Server to be installed with\n the same set of ${isc.DocUtils.linkForRef('group:javaModuleDependencies','required .jars')} as are required for PDF\n export of charts in legacy IE.  The method will return null and a callback must be passed,\n which fires when the data URL has been retrieved from the server.\n <p>\n If the callback is passed but no server trip is required, the callback is fired immediately.\n <p>\n For obtaining PNG or other image data for use in server-side processing (such as attaching to\n automated emails or saving to a database), see also the server-side APIs in\n com.isomorphic.contentexport.ImageExport.\n \n",
        name:"getDataURL",
        seeAlso:[
        ],
        params:[
            {
                description:"callback to fire when data url is available",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DataURLCallback"
            }
        ],
        returns:{
            description:"the data URL (on modern browsers)",
            type:"String"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('chartImageExport')}"
        ],
        definingClass:"class:DrawPane"
    },
    "attr:DateChooser.baseNavButtonStyle":{
        ref:"attr:DateChooser.baseNavButtonStyle",
        flags:"IRW",
        description:"CSS style to apply to navigation buttons and date display at the top of the\n component. If null, the CSS style specified in ${isc.DocUtils.linkForRef('attr:DateChooser.baseButtonStyle')} is used.",
        name:"baseNavButtonStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:TreeGrid.dataProperties":{
        ref:"attr:TreeGrid.dataProperties",
        flags:"IR",
        description:"For a <code>TreeGrid</code> that uses a DataSource, these properties will be passed to\n the automatically-created ResultTree.  This can be used for various customizations such as\n modifying the automatically-chosen ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}.",
        name:"dataProperties",
        seeAlso:[
        ],
        valueType:"Tree",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "databinding"
        ]
    },
    "method:Canvas.setBottom":{
        ref:"method:Canvas.setBottom",
        flags:"",
        description:" Resizes the widget vertically to position its bottom edge at the specified coordinate.\n <P>\n NOTE: if you're setting multiple coordinates, use setRect(), moveTo() or resizeTo()\n instead\n\n",
        name:"setBottom",
        seeAlso:[
        ],
        params:[
            {
                description:"new bottom coordinate",
                optional:false,
                name:"bottom",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:DataSource.autoDeriveTitles":{
        ref:"attr:DataSource.autoDeriveTitles",
        flags:"IR",
        description:"If set, titles are automatically derived from ${isc.DocUtils.linkForRef('attr:DataSourceField.name','field.name')} for any \n field that does not have a ${isc.DocUtils.linkForRef('attr:DataSourceField.title','field.title')} and is not marked\n ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden','hidden')}:true, by calling the method ${isc.DocUtils.linkForRef('method:DataSource.getAutoTitle')}.",
        name:"autoDeriveTitles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:OperationBinding.sqlUsePagingHint":{
        ref:"attr:OperationBinding.sqlUsePagingHint",
        flags:"IR",
        description:"If explicitly set true or false, forces the use of a \"hint\" in the SQL we generate for paged \n queries on or off as appropriate.  If not set, defaults to the \n ${isc.DocUtils.linkForRef('attr:DataSource.sqlUsePagingHint')} value.  Note this property is only applicable to \n ${isc.DocUtils.linkForRef('attr:DataSource.serverType','SQL')} DataSources, only when a \n ${isc.DocUtils.linkForRef('attr:DataSource.sqlPaging','paging strategy')} of \"sqlLimit\" is in force, and it only has an \n effect for those specific database products where we employ a native hint in the generated \n SQL in an attempt to improve performance.",
        name:"sqlUsePagingHint",
        seeAlso:[
            {
                ref:"attr:DataSource.sqlUsePagingHint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "sqlPaging"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:DateRangeItem.innerTitleOrientation":{
        ref:"attr:DateRangeItem.innerTitleOrientation",
        flags:"IR",
        description:"The title orientation for the to / from sub-items. If unset this will be derived from\n ${isc.DocUtils.linkForRef('attr:FormItem.titleOrientation','this.titleOrientation')} or \n ${isc.DocUtils.linkForRef('attr:DynamicForm.titleOrientation','this.form.titleOrientation')}.",
        name:"innerTitleOrientation",
        seeAlso:[
        ],
        valueType:"TitleOrientation",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:Button.state":{
        ref:"attr:Button.state",
        flags:"IRWA",
        getter:[
            "getState"
        ],
        description:"Current \"state\" of this widget. The state setting is automatically updated as the \n user interacts with the component (see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')}, \n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')}, ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')}).\n <P>\n StatefulCanvases will have a different appearance based\n on their current state. \n By default this is handled by changing the css className applied to\n the StatefulCanvas - see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.baseStyle')} and \n ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of how this is done.\n <P>\n For ${isc.DocUtils.linkForRef('class:Img')} or ${isc.DocUtils.linkForRef('class:StretchImg')} based subclasses of StatefulCanvas, the \n appearance may also be updated by changing the src of the rendered image. See\n ${isc.DocUtils.linkForRef('attr:Img.src')} and ${isc.DocUtils.linkForRef('attr:StretchImgButton.src')} for a description of how the URL \n is modified to reflect the state of the widget in this case.",
        name:"state",
        setter:[
            "setState"
        ],
        seeAlso:[
            {
                ref:"type:State",
                description:null
            },
            {
                ref:"group:state",
                description:null
            }
        ],
        valueType:"State",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "method:TreeGrid.setNodeIcon":{
        ref:"method:TreeGrid.setNodeIcon",
        flags:"",
        description:" Set the icon for a particular treenode to a specified URL\n\n",
        name:"setNodeIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"tree node",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"path to the resource",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"SCImgUrl"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:DrawItem.hide":{
        ref:"method:DrawItem.hide",
        flags:"",
        description:" Hide this drawItem.\n",
        name:"hide",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:DrawItem.fillColor":{
        ref:"attr:DrawItem.fillColor",
        flags:"IRW",
        description:"Fill color to use for shapes.  The default of 'null' is transparent.",
        name:"fillColor",
        setter:[
            "setFillColor"
        ],
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "fill"
        ]
    },
    "attr:TabBar.showMoreTab":{
        ref:"attr:TabBar.showMoreTab",
        flags:"IR",
        description:"Should tabs exceeding ${isc.DocUtils.linkForRef('attr:TabBar.moreTabCount')} be shown on a \"more\" tab?\n <p>\n This setting is used to emulate an iPhone-style tab bar \"more\" button.",
        name:"showMoreTab",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabBar"
    },
    "group:observation":{
        ref:"group:observation",
        title:"Observation",
        refs:[
            "method:Class.observe",
            "method:Class.ignore",
            "method:Class.isObserving"
        ],
        description:"Observation is the ability to take an action whenever a method is called.",
        name:"observation",
        seeAlso:[
        ],
        type:"group"
    },
    "group:dateFormatAndStorage":{
        ref:"group:dateFormatAndStorage",
        title:"Date and Time Format and Storage",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"The SmartClient system has the following features for handling Date and Time type values\n within DataSources and databound components.\n <P>\n DataSources and databound components may define fields of type <code>date</code>,\n <code>time</code>, or <code>datetime</code>.\n <P>\n <h3>\"date\" handling</h3>\n <P>\n Fields of type ${isc.DocUtils.linkForRef('type:FieldType','date')} are considered to be logical Dates with no time\n value, such as a holiday or birthday.  In the browser, values for \"date\" fields are stored\n as Date objects, but when formatted for display to the user, they are typically displayed\n without any time information.\n <P>\n When using the SmartClient server framework, \"date\" values are automatically transmitted\n with year, month and day preserved and time value ignored.\n <P>\n When sent or received in XML or JSON, date field values should be serialized in the\n <a href='http://www.w3.org/TR/xmlschema-2/#dateTime' target='_blank'>XML Schema date format</a> - \n <code>YYYY-MM-DD</code> - are expected to be received in the same format.  Any time value\n present for a \"date\" field is ignored.\n <smartclient>\n <P>\n The ${isc.DocUtils.linkForRef('classMethod:DateUtil.createLogicalDate','createLogicalDate')} method may be used to create a new \n Date object to represent a logical date value on the browser.\n </smartclient>\n <smartgwt>\n <P>\n The ${isc.DocUtils.linkForRef('classMethod:DateUtil.createLogicalDate','createLogicalDate')} method may be used to create a new \n Date object to represent a logical date value on the browser.\n </smartgwt>\n <P>\n System wide formatting for dates may be controlled via the\n ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')} and ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')} methods.\n <P>\n <h3>\"datetime\" handling</h3>\n <P>\n Fields of type ${isc.DocUtils.linkForRef('type:FieldType','datetime')} are dates with full time information.\n In the browser, values for datetime fields are stored as Date objects.\n <P>\n When using the SmartClient server framework, \"datetime\" values are automatically transmitted\n such that the resulting Date object has the same GMT/UTC timestamp (milliseconds since\n epoch).\n <P>\n When sent or received in XML or JSON, datetime field values should be serialized out as full\n datetimes using the standard\n <a href='http://www.w3.org/TR/xmlschema-2/#dateTime' target='_blank'>XML Schema datetime format</a>\n (EG:<code>2006-01-10T12:22:04-04:00</code>).  If no timezone offset is supplied, the value\n is assumed to be GMT/UTC.\n <P>\n System wide formatting for datetimes may be controlled via the\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat')} method.  Datetimes will be displayed to the user\n in browser local time by default (see also timezone notes below).\n <P>\n <h3>\"time\" handling</h3>\n <P>\n Fields of type ${isc.DocUtils.linkForRef('type:FieldType','time')} are time values in the absence of a day, such as\n the beginning of the workday (9:00).  In the browser, values for \"time\" fields are stored as\n Date objects with the time in browser local time.  The date information has no meaning and\n only the time information is displayed to the user.\n <P>\n Time formatting is handled by the ${isc.DocUtils.linkForRef('class:Time')} class APIs.\n <br>\n When using the SmartClient server framework, \"time\" values are automatically transmitted\n such that the resulting Date object has the same hour, minute and second values in local\n time, and year/month/day is ignored.\n <P>\n When sent or received in XML or JSON, date field values should be serialized as hours,\n minutes and seconds using the standard\n <a href='http://www.w3.org/TR/xmlschema-2/#dateTime' target='_blank'>XML Schema time format</a> -\n <code>\"22:01:45\"</code>.  Timezone is not relevant and should be omitted.\n <smartclient>\n <P>\n The ${isc.DocUtils.linkForRef('classMethod:Date.createLogicalTime')} method may be used to create a new Date object to represent\n a logical time value on the browser.\n </smartclient>\n <smartgwt>\n <P>\n The DateUtil.createLogicalTime() method may be used to create a new Date object to represent\n a logical time value on the browser.\n </smartgwt>\n <P>\n <h3>Timezone settings and Daylight Savings Time</h3>\n <P>\n By default, \"datetime\" values will be shown to the user in browser local time, as derived\n from the native browser locale.  Developers may modify this behavior by specifying an\n explicit display timezone via ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone')}.\n <P>\n Note that depending on the specific date being displayed, a Daylight Savings Time offset may\n also be applied based on the browser locale.  To disable this behavior set\n ${isc.DocUtils.linkForRef('classAttr:Time.adjustForDST')} to false.\n <P>\n If a custom timezone is specified, it will be respected by all ${isc.DocUtils.linkForRef('type:TimeDisplayFormat')}s, and\n by the standard short ${isc.DocUtils.linkForRef('type:DateDisplayFormat')}s when formatting dates representing datetime\n type values. However native JavaScript Date formatters,\n including <code>toLocaleString()</code> will not respect the specified timezone. Developers\n specifying a custom timezone may therefore wish to modify the ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')}\n to avoid using a native JS Date formatter function.\n <P>\n Note that in addition to the system-wide date, datetime and time-formatting settings described\n above, databound components also support applying custom display formats for date values.\n Typically this can be achieved via a custom <code>dateFormatter</code> or\n <code>timeFormatter</code> at the field level (see ${isc.DocUtils.linkForRef('attr:DataSourceField.dateFormatter')},\n ${isc.DocUtils.linkForRef('attr:DataSourceField.timeFormatter')} and for example ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter')}).\n Date formatting may also be configured at the component level by setting the\n <code>dateFormatter</code>, <code>datetimeFormatter</code> and <code>timeFormatter</code>\n attributes (See for example ${isc.DocUtils.linkForRef('attr:ListGrid.dateFormatter')}, ${isc.DocUtils.linkForRef('attr:ListGrid.timeFormatter')},\n and ${isc.DocUtils.linkForRef('attr:ListGrid.datetimeFormatter')}).\n <P>\n <h3>Troubleshooting Date and Time values</h3>\n <P>\n Date and time storage and timezones can be confusing, and Isomorphic receives a steady\n stream of false bug reports from users that are incorrectly analyzing logs and diagnostics.\n Please consider the following points when troubleshooting issues such as date values\n changing to a different day, or datetime value shifting when saved and reloaded:\n <P>\n <h4>1. compare values for \"datetime\" fields via date.getTime()</h4>\n <P>\n Whenever you use Date.toString() (client or server-side) the value you get is based on the\n server or browser timezone.\n <P>\n Perhaps you are troubleshooting an issue with datetimes and you try to log the value of a\n Date like this:\n <pre>\n    Date someDate = &lt;<i>some expression</i>&gt;;\n    log(\"date value is: \" + someDate);\n </pre>\n Code like this will show the datetime value in the server's timezone if executed\n server-side, and in the client's timezone if executed client-side.  If they are in different\n timezones, the hour or day will be different, <b>whereas the actual datetime value -\n milliseconds since epoch as retrieved by Date.getTime() - is the same</b>.  To correctly\n compare two datetime values, compare the result of getTime().\n <P>\n <h4>2. \"date\" and \"time\" field values <b>cannot</b> be compared via getTime()</h4>\n <P>\n This is the inverse situation as for \"datetime\" values.  As explained above, \"date\" values\n have no meaningful values for time fields (hours/minutes/seconds) and \"time\" values have no\n meaningful values for date fields (month/day/year).  Here, the result of Date.getTime() is\n not meaningful, and values should be compared via getHours(), getMonth() et al.\n <P>\n <h4>3. the display timezone does not affect Date.getHours(), Date.getDay() et al</h4>\n <P>\n If you've called setDefaultDisplayTimezone() to cause all datetime values to be rendered in\n a particular timezone, this does not affect the return values of Date.getHours(), which will\n still return values for the browser's current timezone.  Hence it is not a bug if you have a\n \"datetime\" value which is displaying as 4am, but getHours() returns 10 or some other\n number.  This just reflects the timezone offset between the timezone passed to\n setDefaultDisplayTimezone() and the browser's local timezone.\n <P>\n <h4>4. use correct DataSourceField types and use the matching FormItem type</h4>\n <P>\n If you declare a field as type \"date\" but values you provide actually contain specific\n hours, minutes and seconds, these will not be preserved.  The system will discard or reset\n the hours, minutes and seconds in the course of serialization or editing.  Likewise\n if you declare a field as type \"time\" but actually provide values where year, month and day\n have meaning, these values will be dropped.\n <P>\n Similarly, DateItem expects values for \"date\" fields, TimeItem expects values for \"time\"\n fields, and DateTimeItem expects values for \"datetime\" fields.  Providing the wrong type of\n value to a control, such as providing a value from a \"datetime\" field to a DateItem, will\n have unspecified results.\n <P>\n <smartclient>\n If you want to take the date and time aspects of a \"datetime\" value and edit them in separate\n FormItems, use ${isc.DocUtils.linkForRef('classMethod:Date.getLogicalDateOnly')} and ${isc.DocUtils.linkForRef('classMethod:Date.getLogicalTimeOnly')} to\n split a datetime value into date and time values, and use\n ${isc.DocUtils.linkForRef('classMethod:Date.combineLogicalDateAndTime')} to re-combine such values. Otherwise it is very\n easy to make mistakes related to timezone offsets.\n </smartclient>\n <smartgwt>\n If you want to take the date and time aspects of a \"datetime\" value and edit them in separate\n FormItems, use\n <code>getLogicalDateOnly()</code> and <code>DateUtil.getLogicalTimeOnly()</code> to\n split a datetime value into date and time values, and use\n <code>DateUtil.combineLogicalDateAndTime()</code> to re-combine\n such values. Otherwise it is very\n easy to make mistakes related to timezone offsets.\n </smartgwt>\n <P>\n <h4>5. check data at every phase when troubleshooting</h4>\n <P>\n If you're having a problem with round-tripping \"datetime\" values or \"date\" values shifting\n to another day, you need to isolate the problem to a specific layer.  Bearing in mind the\n techniques above for comparing values, you potentially need to look at any/all of the\n following:\n <ol>\n <li> what value do I have on the server-side before it's sent to the client?\n <li> what value is being transmitted to the client? (use the RPC Tab of the Developer\n Console to see the actual data sent)\n <ul>\n <li> was the value shifted to a different time/date by my serialization approach?\n <li> does it have the right format? (see above for correct JSON/XML formats)\n </ul>\n <li> what value do I have on the client before it gets to any widgets (eg, do a direct call\n to ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} and inspect the data in the callback)\n <li> what value does the FormItem or other editing widget report before saving is attempted?\n <li> what value is reported right before the value is serialized for transmission to the\n server (${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} is a good place to check)\n <li> what value is being transmitted to the server? (use the RPC tab - same concerns as for\n server-to-client transmission above)\n <li> what value does the server have after de-serialization, before saving to the database\n or other permanent storage?\n <li> what value is sent to the database or permanent storage?  If generating SQL or another\n similar query language, does the value in the SQL statement include an explicit timezone?\n If not, how will the database interpret it?\n </ol>",
        name:"dateFormatAndStorage",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:DataSource.getDataSource":{
        ref:"classMethod:DataSource.getDataSource",
        flags:"",
        description:" Lookup a DataSource by ID.\n\n",
        name:"getDataSource",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource ID",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"identifier"
            }
        ],
        returns:{
            description:"the DataSource with this ID, if loaded, otherwise null.",
            type:"DataSource"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:DataSourceField.displayField":{
        ref:"attr:DataSourceField.displayField",
        flags:"IR",
        description:"Name of another field in this DataSource that should be used as the display value for this\n field.\n <P>\n Typically used for editable \n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} fields: the <code>foreignKey</code> field\n stores an ID value, and this ID value is the right value to use when editing (typically by a\n ${isc.DocUtils.linkForRef('class:SelectItem')} with ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource','optionDataSource')} set).  However,\n when the <code>foreignKey</code> field is viewed read-only, it should display a name, title\n or other friendly value from the related record.  In order to accomplish this, a second,\n hidden field carries the display value, and the <code>foreignKey</code> field has\n <code>displayField</code> set to this second, hidden field.\n <P>\n For a more in-depth discussion, see ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom')}.",
        name:"displayField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "dataSourceRelations"
        ]
    },
    "method:TileGrid.removeSelectedData":{
        ref:"method:TileGrid.removeSelectedData",
        flags:"",
        description:" Remove the currently selected records from this component.\n If this is a databound grid, the records will be removed directly from the DataSource.\n <P>\n If no records are selected, no action is taken. The grid will automatically be\n updated if the record deletion succeeds.\n\n",
        name:"removeSelectedData",
        seeAlso:[
        ],
        params:[
            {
                description:"callback to fire when the data has been removed",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('removeOperation')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:FusionChart.getDataColor":{
        ref:"method:FusionChart.getDataColor",
        flags:"",
        description:" Get a color from the ${isc.DocUtils.linkForRef('attr:FusionChart.dataColors')} Array, or white (\"FFFFFF\") if the index is beyond the\n end of the Array.  \n <P>\n Override to provide a dynamic color generation scheme.\n\n",
        name:"getDataColor",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the visual element to be colored",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"color value in hexadecimal RRGGBB format (with no leading '#')",
            type:"String"
        },
        type:"method",
        definingClass:"class:FusionChart"
    },
    "class:MultiComboBoxItem":{
        methods:[
            "method:MultiComboBoxItem.showValue",
            "method:MultiComboBoxItem.setLayoutStyle",
            "method:MultiComboBoxItem.setAutoFitButtons"
        ],
        ref:"class:MultiComboBoxItem",
        classAttrs:[
            "classAttr:MultiComboBoxItem.defaultHint"
        ],
        classMethods:[
        ],
        attrs:[
            "attr:MultiComboBoxItem.shouldSaveValue",
            "attr:MultiComboBoxItem.optionDataSource",
            "attr:MultiComboBoxItem.autoFetchData",
            "attr:MultiComboBoxItem.valueMap",
            "attr:MultiComboBoxItem.comboBox",
            "attr:MultiComboBoxItem.comboBoxProperties",
            "attr:MultiComboBoxItem.comboBoxDefaults",
            "attr:MultiComboBoxItem.comboForm",
            "attr:MultiComboBoxItem.displayField",
            "attr:MultiComboBoxItem.valueField",
            "attr:MultiComboBoxItem.valueLayout",
            "attr:MultiComboBoxItem.button",
            "attr:MultiComboBoxItem.buttonProperties",
            "attr:MultiComboBoxItem.buttonDefaults",
            "attr:MultiComboBoxItem.layoutStyle",
            "attr:MultiComboBoxItem.autoFitButtons",
            "attr:MultiComboBoxItem.comboBoxWidth",
            "attr:MultiComboBoxItem.useInsertionOrder"
        ],
        description:"A MultiComboBoxItem is a combo box that allows the user to select multiple options.  Each\n selected option is represented as a button that can be clicked to deselect the option.\n\n The relative layout of the buttons to the combo box is specified with the\n ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.layoutStyle')} attribute.  The buttons will be kept in the order that\n they were added, with the most recently added button being adjacent to the combo box.\n\n MultiComboBoxItem uses the ${isc.DocUtils.linkForRef('type:AutoChild')} pattern to construct the combo box and the buttons\n so that they can be easily customized.",
        name:"MultiComboBoxItem",
        seeAlso:[
            {
                ref:"class:ComboBoxItem",
                description:null
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('multiComboBoxItem')}"
        ],
        inheritsFrom:"CanvasItem"
    },
    "method:ButtonItem.click":{
        ref:"method:ButtonItem.click",
        flags:"",
        description:" Called when a ButtonItem is clicked on.\n\n",
        name:"click",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Return false to cancel the click event. This will prevent the event from   bubbling up, suppressing \n   ${isc.DocUtils.linkForRef('method:Canvas.click','click')} on the form containing this item.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ButtonItem",
        groups:[
            "eventHandling"
        ]
    },
    "method:DrawSector.moveTo":{
        ref:"method:DrawSector.moveTo",
        flags:"",
        description:" Move the drawSector by the specified delta\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"coordinate to move to horizontally",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"coordinate to move to vertically",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawSector"
    },
    "attr:ToolStripGroup.titleOrientation":{
        ref:"attr:ToolStripGroup.titleOrientation",
        flags:"IRW",
        description:"Controls the horizontal alignment of the group-title in its label.  Setting this\n attribute overrides the default specified by \n ${isc.DocUtils.linkForRef('attr:ToolStrip.groupTitleAlign','groupTitleOrientation')} on the containing \n ${isc.DocUtils.linkForRef('class:ToolStrip','ToolStrip')}.",
        name:"titleOrientation",
        setter:[
            "setTitleOrientation"
        ],
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"\"top\"",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "attr:Canvas.dragIntersectStyle":{
        ref:"attr:Canvas.dragIntersectStyle",
        flags:"IRWA",
        description:"This indicates how the system will test for droppable targets: either by intersection\n with the mouse or intersection with the rectangle of the dragMoveTarget.",
        name:"dragIntersectStyle",
        seeAlso:[
        ],
        valueType:"DragIntersectStyle",
        defaultValue:"\"mouse\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:MultiSortPanel.getNumLevels":{
        ref:"method:MultiSortPanel.getNumLevels",
        flags:"",
        description:" Return the number of levels of sorting that have been configured.\n\n",
        name:"getNumLevels",
        seeAlso:[
        ],
        returns:{
            description:"The number of levels of sorting that have been configured",
            type:"number"
        },
        type:"method",
        definingClass:"class:MultiSortPanel"
    },
    "method:FormItem.setPrompt":{
        ref:"method:FormItem.setPrompt",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:FormItem.prompt')} for this item\n",
        name:"setPrompt",
        seeAlso:[
        ],
        params:[
            {
                description:"new prompt for the item.",
                optional:false,
                name:"prompt",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "class:EBay":{
        methods:[
            "method:EBay.setAuthToken",
            "method:EBay.setSandboxToken",
            "method:EBay.setProductionToken",
            "method:EBay.setUseProduction"
        ],
        ref:"class:EBay",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Connectors"
        ],
        attrs:[
        ],
        description:"WebService object representing the eBay trading web service.",
        name:"EBay",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:AutoTest.isElementClickable":{
        ref:"classMethod:AutoTest.isElementClickable",
        flags:"",
        description:" Given a DOM element, returns whether the associated SmartClient Canvas is ready to\n be clicked on by a Selenium test.  Returns null if the locator is not valid or\n doesn't represent a valid Canvas.  Otherwise, returns true or false according as\n the conditions below are all satisfied:\n <ul>                               \n     <li> page has finished loading\n     <li> no network operations are outstanding (configurable, \n          see ${isc.DocUtils.linkForRef('classAttr:AutoTest.implicitNetworkWait')})\n     <li> canvas is visible, enabled, and not masked,\n     <li> canvas satisfies isCanvasDone()\n     <li> if canvas is a TileGrid, it satisfies isTileGridDone()\n     <li> if canvas is a ListGrid or body of a ListGrid, it satisfies isGridDone()\n </ul>\n Note that for an element in a DynamicForm, the DynamicForm must satisfy the second\n condition above, while the container widget of the element must satisfy the remaining\n conditions.\n \n",
        name:"isElementClickable",
        seeAlso:[
        ],
        params:[
            {
                description:"DOM element to test or SmartClient locator",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"DOMElement | AutoTestLocator"
            }
        ],
        returns:{
            description:"whether element is 'clickable' as described above",
            type:"boolean or null"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "attr:Label.valign":{
        ref:"attr:Label.valign",
        flags:"IRW",
        description:"Vertical alignment of label text. See VerticalAlignment type for details.",
        name:"valign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "positioning"
        ]
    },
    "attr:RPCRequest.sendNoQueue":{
        ref:"attr:RPCRequest.sendNoQueue",
        flags:"IRWA",
        description:"When set to true, this request is sent to the server immediately, bypassing any current queue.",
        name:"sendNoQueue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:ListGridField.decimalPad":{
        ref:"attr:ListGridField.decimalPad",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and enforces a minimum number of digits shown after\n the decimal point.\n <P>\n For example, a field value of 343.1, 343.104 and 343.09872677 would all be shown as 343.10\n if decimalPad is 2.\n <P>\n The original unpadded value is always shown when the value is edited.",
        name:"decimalPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:StaticTextItem.applyHeightToTextBox":{
        ref:"attr:StaticTextItem.applyHeightToTextBox",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.height')} is specified, should it be applied to the\n item's text box element?\n <P>\n Overridden to be <code>false</code> for StaticTextItems by default.\n <P>\n See ${isc.DocUtils.linkForRef('method:FormItem.shouldApplyHeightToTextBox','shouldApplyHeightToTextBox()')} for more information.",
        name:"applyHeightToTextBox",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StaticTextItem"
    },
    "classMethod:isA.Function":{
        ref:"classMethod:isA.Function",
        flags:"",
        description:"\n\tIs <code>object</code> a Function object?\n\n",
        name:"Function",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a Function",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "attr:TabSet.titleEditorRightOffset":{
        ref:"attr:TabSet.titleEditorRightOffset",
        flags:"IRW",
        description:"If set, offsets the tab title editor further in from the right-hand edge of the tab, by\n the number of pixels set in this property.  Note that the editor is always offset to\n avoid overlapping the endcaps of the tab; this property is applied on top of that \n default offset.",
        name:"titleEditorRightOffset",
        seeAlso:[
            {
                ref:"attr:TabSet.titleEditorLeftOffset",
                description:null
            },
            {
                ref:"attr:TabSet.titleEditorTopOffset",
                description:null
            }
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:ListGrid.rowHasErrors":{
        ref:"method:ListGrid.rowHasErrors",
        flags:"",
        description:" Does the specified row have unresolved errors?\n",
        name:"rowHasErrors",
        seeAlso:[
            {
                ref:"method:ListGrid.hasErrors",
                description:null
            },
            {
                ref:"method:ListGrid.cellHasErrors",
                description:null
            }
        ],
        params:[
            {
                description:"rowNum to check for errors",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"true if there are unresolved errors, false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "method:ResultSet.getRange":{
        ref:"method:ResultSet.getRange",
        flags:"",
        description:" Return the items between position start and end, non-inclusive at the end, possibly \n containing markers for records that haven't loaded yet.\n <P>\n Calling getRange for records that have not yet loaded will trigger an asynchronous fetch.  The\n returned data will contain the ${isc.DocUtils.linkForRef('classMethod:ResultSet.getLoadingMarker','loading marker')} as a placeholder\n for records being fetched.  If any rows needed to be fetched, <code>dataArrived()</code> will\n fire when they arrive.\n\n",
        name:"getRange",
        seeAlso:[
            {
                ref:"classMethod:ResultSet.getLoadingMarker",
                description:null
            },
            {
                ref:"method:ResultSet.dataArrived",
                description:null
            }
        ],
        params:[
            {
                description:"start position",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end position",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"subset of the array from start -&gt; end-1",
            type:"Array"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access"
        ]
    },
    "attr:ListGrid.autoFetchDisplayMap":{
        ref:"attr:ListGrid.autoFetchDisplayMap",
        flags:"IRW",
        description:"If true, for fields where ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')} is specified,\n a valueMap will be automatically created by making a ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} call\n against the specified dataSource and extracting a valueMap from the returned records\n based on the displayField and valueField.\n <P>\n If set to false, valueMaps will not be automatically fetched.  In this case, setting\n field.optionDataSource is effectively a shortcut for setting optionDataSource on\n the editor via ${isc.DocUtils.linkForRef('attr:ListGridField.editorProperties')}.\n <P>\n Can also be disabled on a per-field basis with ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap')}.",
        name:"autoFetchDisplayMap",
        seeAlso:[
            {
                ref:"attr:ListGridField.autoFetchDisplayMap",
                description:null
            },
            {
                ref:"attr:ListGridField.optionDataSource",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "display_values"
        ]
    },
    "method:ListGrid.getRecordDropPosition":{
        ref:"method:ListGrid.getRecordDropPosition",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('type:RecordDropPosition')} for some record drop operation.\n This value is passed to the ${isc.DocUtils.linkForRef('method:ListGrid.recordDrop')} event notification method.\n <P>\n Default implementation determines the position to return based on\n the specified ${isc.DocUtils.linkForRef('attr:ListGrid.recordDropAppearance')} for the grid and the\n ${isc.DocUtils.linkForRef('classMethod:EventHandler.getY','y-coordinate of the drop event')}.\n\n",
        name:"getRecordDropPosition",
        seeAlso:[
        ],
        returns:{
            description:"record drop position.",
            type:"RecordDropPosition"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Label.iconOrientation":{
        ref:"attr:Label.iconOrientation",
        flags:"IR",
        description:"If this button is showing an icon should it appear to the left or right of the title?\n valid options are <code>\"left\"</code> and <code>\"right\"</code>.",
        name:"iconOrientation",
        setter:[
            "setIconOrientation"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"left\"",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "classMethod:isA.Interface":{
        ref:"classMethod:isA.Interface",
        flags:"",
        description:"\n\tIs <code>object</code> an interface object?\n\n",
        name:"Interface",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a Interface Object",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "attr:Canvas.tabIndex":{
        ref:"attr:Canvas.tabIndex",
        flags:"IRWA",
        description:"If specified this governs the tabIndex of the widget in the page's tab order.\n Note that by default SmartClient auto-assigns tab-indices, ensuring focusable widgets\n are reachable by tabbing in the order in which they are drawn on the page.\n <code>canvas.tabIndex</code> cannot be set to greater than\n ${isc.DocUtils.linkForRef('classAttr:Canvas.TAB_INDEX_FLOOR')} - as we reserve the values above this range for\n auto-assigned tab-indices.",
        name:"tabIndex",
        setter:[
            "setTabIndex"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:CheckboxItem.showValueIconDown":{
        ref:"attr:CheckboxItem.showValueIconDown",
        flags:"IRWA",
        description:"Should a \"Down\" state icon be shown when the mouse goes down over this checkbox",
        name:"showValueIconDown",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:Tree.getLevel":{
        ref:"method:Tree.getLevel",
        flags:"A",
        description:"\n Return the number of levels deep this node is in the tree.  For example, for this tree:\n <pre>\n root\n   foo\n     bar\n </pre>\n Calling <code>tree.getLevel(bar)</code> will return <code>2</code>. \n <P>\n Note ${isc.DocUtils.linkForRef('attr:Tree.showRoot')} defaults to false so that multiple nodes can be shown at top level.  In\n this case, the top-level nodes still have root as a parent, so have level 1, even though\n they have no visible parents.\n\n",
        name:"getLevel",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"number of parents the node has",
            type:"number"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "interface:Palette":{
        methods:[
            "method:Palette.setDefaultEditContext",
            "method:Palette.makeEditNode"
        ],
        ref:"interface:Palette",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools"
        ],
        attrs:[
            "attr:Palette.defaultEditContext",
            "attr:Palette.generateNames"
        ],
        description:"An interface that provides the ability to create components from a ${isc.DocUtils.linkForRef('object:PaletteNode')}.",
        name:"Palette",
        seeAlso:[
        ],
        type:"interface",
        groups:[
            "devTools"
        ]
    },
    "attr:FormItem.iconVAlign":{
        ref:"attr:FormItem.iconVAlign",
        flags:"IRWA",
        description:"How should icons be aligned vertically for this form item.",
        name:"iconVAlign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"\"bottom\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:MetricSettings.legendLabel":{
        ref:"attr:MetricSettings.legendLabel",
        flags:"IR",
        description:"For ${isc.DocUtils.linkForRef('attr:MetricSettings.multiFacet','single-facet')} charts embedded in a multi-facet main\n chart, the <code>legendLabel</code> defines the text of the legend label for this chart.\n The default text is the ${isc.DocUtils.linkForRef('attr:FacetValue.title','title')} of the metric facet value of this\n value axis concatenated with the ${isc.DocUtils.linkForRef('attr:FacetValue.title','title')} of the\n ${isc.DocUtils.linkForRef('attr:MetricSettings.fixedFacetValue','fixed facet value')} in parentheses.  Set the\n <code>legendLabel</code> to provide custom text for the legend label.",
        name:"legendLabel",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "classMethod:Class.echo":{
        ref:"classMethod:Class.echo",
        flags:"",
        description:" Return a short string representation of any object, suitable for viewing by a developer for\n debugging purposes.\n <P>\n If passed an object containing other objects, echo will not recurse into subobjects,\n summarizing them instead via echoLeaf().\n <P>\n NOTE: echo() is used to generate the output shown in the Log window when evaluating an\n expression.\n <P>\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echo()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n \n",
        name:"echo",
        seeAlso:[
            {
                ref:"classMethod:Log.echoAll",
                description:null
            },
            {
                ref:"classMethod:Log.echoLeaf",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "method:Date.toPrettyString":{
        ref:"method:Date.toPrettyString",
        deprecated:"As of SmartClient 5.5 use ${isc.DocUtils.linkForRef('method:Date.toShortDate')} instead",
        flags:"",
        description:"\t\t\tReturn this date in the format: <code>MM/DD/YY HH:MM</code>\n",
        name:"toPrettyString",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:ListGrid.editFailedCSSText":{
        ref:"attr:ListGrid.editFailedCSSText",
        flags:"IRWA",
        description:"Custom CSS text to be applied to cells when editing has failed.<br>\n  If this listGrid is editable, this css text will be applied to any edited cells for which\n  validation failed, on top of the base style for the cell.<br>\n For further customization of styling for cells that failed editing validation, use\n <code>this.editFailedBaseStyle</code> instead.",
        name:"editFailedCSSText",
        seeAlso:[
            {
                ref:"attr:ListGrid.editFailedBaseStyle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"color:red;border:1px solid red;\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.childrenSnapResizeToGrid":{
        ref:"attr:Canvas.childrenSnapResizeToGrid",
        flags:"IRW",
        description:"If true, causes this canvas's children to snap to its grid when resizing.\n This behavior can be overridden on a per-child basis by setting the\n ${isc.DocUtils.linkForRef('attr:Canvas.snapToGrid','snapToGrid')} or\n ${isc.DocUtils.linkForRef('attr:Canvas.snapResizeToGrid','snapResizeToGrid')} value on the child.",
        name:"childrenSnapResizeToGrid",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:GridRenderer.getRowSpan":{
        ref:"method:GridRenderer.getRowSpan",
        flags:"A",
        description:" Return how many rows this cell should span.  Default is 1. \n <P>\n NOTE: if using horizontal incremental rendering, <code>getRowSpan()</code> may be called for\n a rowNum <b>in the middle of a spanning cell</b>, and should return the remaining span from\n that rowNum onward.\n <P>\n NOTE: if a cell spans multiple rows, getCellRecord/Style/etc will be called with the topmost\n row coordinates only.\n\n",
        name:"getRowSpan",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"number of cells to span",
            type:"number"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:ListGrid.getColumnPageLeft":{
        ref:"method:ListGrid.getColumnPageLeft",
        flags:"A",
        description:" Return the left coordinate for a given column number as a GLOBAL coordinate\n",
        name:"getColumnPageLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"page left offset of the passed colNum, or null if undrawn or no such column",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "classMethod:Flashlet.flashAvailable":{
        ref:"classMethod:Flashlet.flashAvailable",
        flags:"",
        description:" Is Shockwave Flash installed on this browser?\n",
        name:"flashAvailable",
        seeAlso:[
        ],
        returns:{
            description:"<code>true</code> if Flash is installed; <code>false</code> otherwise.",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:Flashlet"
    },
    "type:RecategorizeMode":{
        ref:"type:RecategorizeMode",
        values:[
            {
                description:"recategorize is always applied",
                value:"\"always\""
            },
            {
                description:"recategorize if normal checks pass",
                value:"\"checked\""
            },
            {
                description:"never recategorize",
                value:"\"never\""
            }
        ],
        description:"Type for controlling when a \"recategorize\" is applied to records being dropped\n on a databound component from another databound component.",
        name:"RecategorizeMode",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DateItem.setFiscalCalendar":{
        ref:"method:DateItem.setFiscalCalendar",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('object:FiscalCalendar')} object that will be used by this item's DateChooser.  If \n unset, the _link{Date.getFiscalCalendar, global fiscal calendar} is used.\n\n",
        name:"setFiscalCalendar",
        seeAlso:[
        ],
        params:[
            {
                description:"the fiscal calendar for this chooser, if set, or the global            one otherwise",
                optional:true,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        type:"method",
        definingClass:"class:DateItem"
    },
    "group:expansionField":{
        ref:"group:expansionField",
        refs:[
            "method:ListGrid.getExpansionField",
            "method:ListGrid.isExpansionField",
            "method:ListGrid.canExpandRecord",
            "method:ListGrid.expandRecord",
            "method:ListGrid.expandRecords",
            "method:ListGrid.collapseRecord",
            "method:ListGrid.collapseRecords",
            "method:ListGrid.isExpanded",
            "method:ListGrid.getCurrentExpansionComponent",
            "method:ListGrid.getExpansionComponent",
            "attr:ListGrid.canExpandRecordProperty",
            "attr:ListGridRecord.canExpand",
            "attr:ListGrid.canExpandRecords",
            "attr:ListGrid.canExpandMultipleRecords",
            "attr:ListGrid.maxExpandedRecords",
            "attr:ListGrid.detailField",
            "attr:ListGrid.expansionMode",
            "attr:ListGrid.expansionField",
            "attr:ListGrid.expansionFieldTrueImage",
            "attr:ListGrid.expansionFieldFalseImage",
            "attr:ListGrid.expansionFieldImageWidth",
            "attr:ListGrid.expansionFieldImageHeight",
            "attr:ListGrid.expansionDetailField",
            "attr:ListGrid.expansionDetails",
            "attr:ListGrid.expansionRelated",
            "attr:ListGrid.expansionEditor",
            "attr:ListGrid.expansionEditorShowSaveDialog",
            "attr:ListGrid.expansionEditorSaveDialogPrompt",
            "attr:ListGrid.expansionEditorCollapseOnSave",
            "attr:ListGrid.showExpansionEditorSaveButton",
            "attr:ListGrid.expansionEditorSaveButton",
            "attr:ListGrid.expansionEditorSaveButtonTitle",
            "attr:ListGrid.expansionDetailRelated",
            "attr:ListGrid.expansionLayout",
            "attr:ListGrid.childExpansionMode",
            "attr:ListGrid.expansionCanEdit",
            "type:ExpansionMode"
        ],
        name:"expansionField",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.showHeaderContextMenu":{
        ref:"attr:ListGrid.showHeaderContextMenu",
        flags:"IR",
        description:"Whether to show a context menu on the header with standard items for showing and hiding\n fields.  Not supported for ${isc.DocUtils.linkForRef('class:CubeGrid')}.",
        name:"showHeaderContextMenu",
        seeAlso:[
            {
                ref:"method:ListGrid.displayHeaderContextMenu",
                description:null
            },
            {
                ref:"method:ListGrid.getHeaderContextMenuItems",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "method:CubeGrid.getCellCoordinates":{
        ref:"method:CubeGrid.getCellCoordinates",
        flags:"",
        description:" Given a record in this grid, this method returns the coordinates of the cell in which the \n record is displayed as a 2 element array.\n",
        name:"getCellCoordinates",
        seeAlso:[
        ],
        params:[
            {
                description:"record to find coordinates for",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"CellRecord"
            }
        ],
        returns:{
            description:"2 element array containing <code>[rowNum,colNum]</code> for the cell, or                  <code>null</code> if the record is not found.",
            type:"array"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:Calendar.monthView":{
        ref:"attr:Calendar.monthView",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:ListGrid')} used to display events that pertain to a given month.",
        name:"monthView",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:PickList.textMatchStyle":{
        ref:"attr:PickList.textMatchStyle",
        flags:"IR",
        description:"When applying filter criteria to pickList data, what type of matching to use.\n <P>\n For a databound pickList (${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')} set), <code>textMatchStyle</code> is\n sent to the server as ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')}.\n <P>\n For a non-databound pickList, <code>textMatchStyle</code> is applied by \n ${isc.DocUtils.linkForRef('method:PickList.filterClientPickListData','filterClientPickListData()')}.",
        name:"textMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"\"startsWith\"",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "method:DataSource.getClientOnlyResponse":{
        ref:"method:DataSource.getClientOnlyResponse",
        flags:"",
        description:" Return a \"spoofed\" response for a ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly')} or ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} DataSource.\n <P>\n The default implementation will use ${isc.DocUtils.linkForRef('attr:DataSource.cacheData')} to provide an appropriate\n response, by using ${isc.DocUtils.linkForRef('method:DataSource.applyFilter','client-side filtering')} for a \"fetch\" request, and\n by modifying the <code>testData</code> for other requests.\n <P>\n Override this method to provide simulations of other server-side behavior, such as\n modifying other records, or to implement <b>synchronous</b> client-side data providers\n (such as Google Gears).  For <b>asynchronous</b> third-party data providers, such as\n GWT-RPC, HTML5 sockets, or bridges to plug-in based protocols (Java, Flash,\n Silverlight..), use ${isc.DocUtils.linkForRef('type:DSProtocol','dataProtocol:\"clientCustom\"')} instead. \n <P>\n Overriding this method is also a means of detecting that a normal DataSource (not\n clientOnly) would be contacting the server.\n\n",
        name:"getClientOnlyResponse",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource request to respond to",
                optional:false,
                name:"request",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"for cacheAllData DataSources, the data from the local cache",
                optional:false,
                name:"serverData",
                defaultValue:null,
                type:"Array of Record"
            }
        ],
        returns:{
            description:null,
            type:"DSResponse"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:IMenuButton.title":{
        ref:"attr:IMenuButton.title",
        flags:"IRW",
        description:"Default title for the button.",
        name:"title",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Show Menu\"",
        type:"attr",
        definingClass:"class:IMenuButton",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TreeGrid.keepParentsOnFilter":{
        ref:"attr:TreeGrid.keepParentsOnFilter",
        flags:"IR",
        description:"If set, tree-based filtering is performed such that parent nodes are kept as long as\n they have children that match the filter criteria, even if the parents themselves do not\n match the filter criteria. If not set, filtering will exclude parent nodes not matching\n the criteria and all nodes below it in the tree.\n <P>\n When <code>keepParentsOnFilter</code> is enabled for paged ResultTrees, server-side\n filtering is required.\n <P>\n When enabled for non-paged trees, ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"local\"')} is automatically\n enabled so that all filtering behavior shifts to the client-side and full criteria are\n no longer sent to the server.  Instead, server fetches will always load all nodes, or\n with ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand')}:true, will always load all nodes under a given parent.\n This means that the server does not need to implement special tree filtering logic.\n <P>\n Optionally, ${isc.DocUtils.linkForRef('attr:ResultTree.serverFilterFields')} can be set to a list of field names that\n will be sent to the server whenever they are present in the criteria.",
        name:"keepParentsOnFilter",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeDataBinding"
        ]
    },
    "attr:DataSourceField.dateFormatter":{
        ref:"attr:DataSourceField.dateFormatter",
        flags:"IRWA",
        description:"Preferred display format to use for date type values within this field.\n If this property is set on a field displayed in a databound component such as a\n ${isc.DocUtils.linkForRef('class:DynamicForm')} or ${isc.DocUtils.linkForRef('class:ListGrid')} it will be respected (See ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} and\n ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter')}).\n <P>\n Note that this property is also honored when exporting directly to \n Excel spreadsheets (ie, when using XLS or XLSX/OOXML form, <b>not</b> CSV); \"date\" and\n \"datetime\" fields with this property set will deliver real dates and formatting information\n to Excel, rather than formatted strings or unformatted dates.",
        name:"dateFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSourceField",
        groups:[
            "appearance"
        ]
    },
    "attr:TabSet.moreTabImage":{
        ref:"attr:TabSet.moreTabImage",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showMoreTab')} is enabled this property determines the image to display on\n the \"More\" tab button.",
        name:"moreTabImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKINIMG]/iOS/more.png\"",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:ToolStrip.formWrapperProperties":{
        ref:"attr:ToolStrip.formWrapperProperties",
        flags:"IR",
        description:"Properties to apply to ${isc.DocUtils.linkForRef('attr:ToolStrip.formWrapper')} components.",
        name:"formWrapperProperties",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "attr:IconButton.menuIconHeight":{
        ref:"attr:IconButton.menuIconHeight",
        flags:"IRW",
        description:"The height of the icon for this button.",
        name:"menuIconHeight",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"13",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:SelectItem.escapeHTML":{
        ref:"attr:SelectItem.escapeHTML",
        flags:"IRW",
        description:"By default HTML values in a selectItem will be interpreted by the browser.\n Setting this flag to true will causes HTML characters to be escaped, meaning the\n raw value of the field (for example <code>\"&lt;b&gt;AAA&lt;/b&gt;\"</code>) is displayed\n to the user rather than the interpreted HTML (for example <code>\"<b>AAA</b>\"</code>)",
        name:"escapeHTML",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "appearance"
        ]
    },
    "method:List.equals":{
        ref:"method:List.equals",
        flags:"",
        description:" Return whether this list is equal to another list.\n <P>\n Two lists are equal only if they have the same length and all contained items are in the same\n order and are also equal.\n\n",
        name:"equals",
        seeAlso:[
        ],
        params:[
            {
                description:"list to check for equality",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"List"
            }
        ],
        returns:{
            description:"whether the specified list is equal to this list",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "attr:Layout.canDropComponents":{
        ref:"attr:Layout.canDropComponents",
        flags:"IRA",
        description:"Layouts provide a default implementation of a drag and drop interaction.  If you set\n ${isc.DocUtils.linkForRef('attr:Canvas.canAcceptDrop','canAcceptDrop')}:true and <code>canDropComponents:true</code>\n on a Layout, when a droppable Canvas (${isc.DocUtils.linkForRef('attr:Canvas.canDrop','canDrop:true')} is dragged over\n the layout, it will show a dropLine (a simple insertion line) at the drop location.  \n <P>\n When the drop occurs, the dragTarget (obtained using\n ${isc.DocUtils.linkForRef('classMethod:EventHandler.getDragTarget')}) is added as a member of this layout at the location\n shown by the dropLine (calculated by ${isc.DocUtils.linkForRef('method:Layout.getDropPosition')}).  This default\n behavior allows either members or external components that have\n ${isc.DocUtils.linkForRef('attr:Canvas.canDragReposition')} (or ${isc.DocUtils.linkForRef('attr:Canvas.canDrag')}) and ${isc.DocUtils.linkForRef('attr:Canvas.canDrop')} set\n to <code>true</code> to be added to or reordered within the Layout.\n <P>\n You can control the thickness of the dropLine via ${isc.DocUtils.linkForRef('attr:Layout.dropLineThickness')} and\n you can customize the style using css styling in the skin file (look for .layoutDropLine\n in skin_styles.css for your skin).  \n <P>\n If you want to dynamically create a component to be added to the Layout in response to a\n drop event you can do so as follows: \n <pre>\n isc.VLayout.create({\n   ...various layout properties...\n   canDropComponents: true,\n   drop : function () {\n     // create the new component \n     var newMember = isc.Canvas.create(); \n     // add to the layout at the current drop position \n     // (the dropLine will be showing here)\n     this.addMember(newMember, this.getDropPosition());  \n     // hide the dropLine that was automatically shown \n     // by builtin SmartClient methods\n     this.hideDropLine();\n   }\n });\n </pre>\n If you want to completely suppress the builtin drag and drop logic, but still receive drag\n and drop events for your own custom implementation, set ${isc.DocUtils.linkForRef('attr:Canvas.canAcceptDrop')} to\n <code>true</code> and <code>canDropComponents</code> to <code>false</code> on your Layout.",
        name:"canDropComponents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DetailViewerField.emptyCellValue":{
        ref:"attr:DetailViewerField.emptyCellValue",
        flags:"IR",
        description:"The value to display for a cell whose value is null or the empty\n string after applying formatCellValue and valueMap (if any).\n <p>\n This is the field-specific attribute.  You may also set the emptyCellValue at the viewer\n level to define the emptyCellValue for all empty fields in the viewer.",
        name:"emptyCellValue",
        seeAlso:[
            {
                ref:"attr:DetailViewer.emptyCellValue",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "appearance"
        ]
    },
    "method:Array.indexOf":{
        ref:"method:Array.indexOf",
        flags:"",
        description:" Return the position in the list of the first instance of the specified object.\n <p>\n If pos is specified, starts looking after that position.\n <p>\n Returns -1 if not found.\n\n",
        name:"indexOf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"earliest index to consider",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endPos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"position of the item, if found, -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "method:TabSet.selectTab":{
        ref:"method:TabSet.selectTab",
        flags:"",
        description:"\tSelect a tab\n",
        name:"selectTab",
        seeAlso:[
        ],
        params:[
            {
                description:"tab to select",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"number | ID | name | Tab"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('tabsOrientation')}"
        ],
        definingClass:"class:TabSet"
    },
    "attr:FilterBuilder.topOperatorAppearance":{
        ref:"attr:FilterBuilder.topOperatorAppearance",
        flags:"IRW",
        description:"How to display and edit the ${isc.DocUtils.linkForRef('attr:FilterBuilder.topOperator','top-level operator')} for this FilterBuilder.\n <P>\n See ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')} for a list of options.",
        name:"topOperatorAppearance",
        setter:[
            "setTopOperatorAppearance"
        ],
        seeAlso:[
        ],
        valueType:"TopOperatorAppearance",
        defaultValue:"\"bracket\"",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "group:keyboardEvents":{
        ref:"group:keyboardEvents",
        title:"Keyboard Events",
        treeLocation:[
            "Concepts"
        ],
        refs:[
            "classMethod:EventHandler.getKeyEventCharacterValue",
            "classMethod:EventHandler.getKeyEventCharacter",
            "classMethod:EventHandler.getKey",
            "classMethod:EventHandler.shiftKeyDown",
            "classMethod:EventHandler.ctrlKeyDown",
            "classMethod:EventHandler.altKeyDown"
        ],
        description:"SmartClient allows keyboard events to be captured at the page level via \n ${isc.DocUtils.linkForRef('classMethod:Page.registerKey')} or ${isc.DocUtils.linkForRef('classMethod:Page.setEvent')} or at the widget level\n via ${isc.DocUtils.linkForRef('method:Canvas.keyDown')}, ${isc.DocUtils.linkForRef('method:Canvas.keyPress')}, and ${isc.DocUtils.linkForRef('method:Canvas.keyUp')}.\n <P>\n Details about the key events can be retrieved via static methods on the EventHandler class\n including ${isc.DocUtils.linkForRef('classMethod:EventHandler.getKey')}, ${isc.DocUtils.linkForRef('classMethod:EventHandler.getKeyEventCharacter')} and\n ${isc.DocUtils.linkForRef('classMethod:EventHandler.getKeyEventCharacterValue')}.\n <P>\n As with other SmartClient event handling code, returning <code>false</code> will suppress the\n default native browser behavior.<br>\n <b>Note:</b> browsers do not allow cancellation of some keys' default behaviors.\n These cases vary by browser, and wherever native cancellation is supported, returning false\n from your event handler should be sufficient to suppress the behavior.\n <br>\n Some specific cases where default behavior cancellation is not always possible include:\n <ul><li>Some function keys (<code>f1, f3, f5,</code> etc) which trigger native browser behavior.\n         [These can be suppressed in Internet Explorer and Mozilla Firefox but not in some other\n          browsers such as Safari / Chrome, etc]</li>\n     <li>Some accelerator key combos such as <code>Alt+f3</code></li>\n     <li>The \"Meta\" key (the <code>Windows</code> / <code>Apple</code> key to show OS level menu)\n     </li>\n </ul>\n If you do want to include functionality for these keys in your application, we'd recommend \n testing against your expected users' browser types. It is also worth considering whether by\n changing the functionality of these standard browser keys you may provide an unexpected \n user experience (for example a user may press \"f5\" in an attempt to reload the application\n and be surprised by this triggering some alternative functionality in your application).",
        name:"keyboardEvents",
        seeAlso:[
        ],
        type:"group"
    },
    "classAttr:Operators.startsWithFieldTitle":{
        ref:"classAttr:Operators.startsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"startsWithField\" operator",
        name:"startsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"starts with (match case) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.getViewportWidth":{
        ref:"method:Canvas.getViewportWidth",
        flags:"A",
        description:"  Returns the width of the viewport onto the scrollable content.\n\n",
        name:"getViewportWidth",
        seeAlso:[
        ],
        returns:{
            description:"width of the viewport, in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:Canvas.dragType":{
        ref:"attr:Canvas.dragType",
        flags:"IRWA",
        description:"Sets a <code>dragType</code> for this widget used, to be compared to\n ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes','dropTypes')} on possible drop target widgets.  See\n ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes')} for a full explanation.",
        name:"dragType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DynamicForm.itemHoverOpacity":{
        ref:"attr:DynamicForm.itemHoverOpacity",
        flags:"IRW",
        description:"Opacity for hovers shown for items",
        name:"itemHoverOpacity",
        seeAlso:[
            {
                ref:"attr:FormItem.hoverOpacity",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "attr:HiliteEditor.cancelButtonTitle":{
        ref:"attr:HiliteEditor.cancelButtonTitle",
        flags:"IR",
        description:"The title text for the ${isc.DocUtils.linkForRef('attr:HiliteEditor.cancelButton','cancel button')}.",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:HiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Operator.compareCriteria":{
        ref:"method:Operator.compareCriteria",
        flags:"",
        description:" Compare two criteria, both of which use this operator, and report whether the newCriteria is\n definitely more restrictive than the previous criteria.\n <P>\n This is used by the ${isc.DocUtils.linkForRef('class:ResultSet')} to understand whether client-side filtering can\n continue using cached data, or whether server-side filtering must be used instead.\n \n",
        name:"compareCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"new criterion",
                optional:false,
                name:"newCriterion",
                defaultValue:null,
                type:"Criterion"
            },
            {
                description:"previous criterion",
                optional:false,
                name:"oldCriterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        returns:{
            description:"0 if the criteria are equivalent, 1 if newCriterion is guaranteed more                      restrictive, and -1 if newCriterion is not guaranteed more restrictive",
            type:"Number"
        },
        type:"method",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:FormItem.pickerIconPrompt":{
        ref:"attr:FormItem.pickerIconPrompt",
        flags:"IR",
        description:"Prompt to show when the user hovers the mouse over the picker icon.",
        name:"pickerIconPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon",
            "i18nMessages"
        ]
    },
    "attr:ResultSet.updateCacheFromRequest":{
        ref:"attr:ResultSet.updateCacheFromRequest",
        flags:"IRA",
        description:"When a successful Add, Update or Remove type operation fires on this ResultSet's \n dataSource, if ${isc.DocUtils.linkForRef('attr:DSResponse.data')} is unset, should we integrate the submitted\n data values (from the request) into our data-set? This attribute will be passed to\n ${isc.DocUtils.linkForRef('method:DataSource.getUpdatedData')} as the <code>useDataFromRequest</code> parameter.",
        name:"updateCacheFromRequest",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "cacheSync"
        ]
    },
    "attr:Calendar.eventDialogFields":{
        ref:"attr:Calendar.eventDialogFields",
        flags:"IR",
        description:"The set of fields for the ${isc.DocUtils.linkForRef('attr:Calendar.eventDialog','event dialog')}. \n <p>\n The default set of fields are: \n <pre>\n    {name: \"name\", title: \"Event Name\", type: nameType, width: 250 },\n    {name: \"save\", title: \"Save Event\", editorType: \"SubmitItem\", endRow: false},\n    {name: \"details\", title: \"Edit Details\", type: \"button\", startRow: false}\n </pre>\n See the Customized Binding example below for more information on altering default datasource \n fields within forms.",
        name:"eventDialogFields",
        seeAlso:[
        ],
        valueType:"Array of FormItem",
        defaultValue:"see below",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customCalendar')}",
            "${isc.DocUtils.linkForExampleId('validationFieldBinding')}"
        ],
        definingClass:"class:Calendar",
        groups:[
            "editing"
        ]
    },
    "method:ListGrid.filterEditorSubmit":{
        ref:"method:ListGrid.filterEditorSubmit",
        flags:"",
        description:" Optional notification fired when the user performs a filter using the\n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','Filter Editor')}.  May fire as criteria values are being edited if\n ${isc.DocUtils.linkForRef('attr:ListGrid.filterOnKeypress')} is true, otherwise will fire when the user clicks the filter\n button or presses the Enter key while focus is in the Filter Editor.\n <p>\n <smartgwt>Use event.cancel()</smartgwt>\n <smartclient>Return false</smartclient>\n to cancel the default behavior - you <b>must</b> cancel the default behavior if your\n code is going to call ${isc.DocUtils.linkForRef('method:ListGrid.filterData')}, ${isc.DocUtils.linkForRef('method:ListGrid.setCriteria')} or any other API that\n affects the criteria applied to the grid.\n <P>\n The <code>criteria</code> parameter contains the current criteria applied to the\n grid including edits the user has just made using the Filter Editor.  This matches\n what is returned if you call ${isc.DocUtils.linkForRef('method:ListGrid.getFilterEditorCriteria')}.\n <P>\n If you wish to access the <code>criteria</code> applied to the grid without picking\n up any edits to the Filter Editor, use ${isc.DocUtils.linkForRef('method:ListGrid.getCriteria')} instead.\n <P>\n Developers may wish to perform a filter using the Filter Editor values from code\n running outside the standard filterEditorSubmit flow.  For example, if you wanted a\n confirmation dialog to be shown before filtering was performed, you would cancel the\n default behavior as described above, but then need to replicate the default behavior\n once the user confirms that they want to proceed.  To replicate the default behavior,\n just call:\n <pre>\n  grid.filterData(grid.getFilterEditorCriteria());\n </pre>\n or, to ensure the specified ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle')} is picked up\n <smartclient>\n <pre>\n  grid.filterData(grid.getFilterEditorCriteria(),\n          null, {textMatchStyle:grid.autoFetchTextMatchStyle});\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n  DSRequest request = new DSRequest();\n  request.setTextMatchStyle(grid.getAutoFetchTextMatchStyle());\n  grid.filterData(grid.getFilterEditorCriteria(), null,\n       request);\n </pre>\n </smartgwt>\n\n",
        name:"filterEditorSubmit",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria derived from the filter editor values",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            }
        ],
        returns:{
            description:"returning false will suppress the filter from occurring",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DataBoundComponent.exportAll":{
        ref:"attr:DataBoundComponent.exportAll",
        flags:"IRW",
        description:"Setting exportAll to true prevents the component from passing it's list of fields to the \n export call.  The result is the export of all visible fields from ${isc.DocUtils.linkForRef('attr:DataSource.fields')}.\n <P>\n If exportAll is false, an export operation will first consider \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.exportFields')}, if it's set, and fall back on all visible fields from\n ${isc.DocUtils.linkForRef('attr:DataSource.fields')} otherwise.",
        name:"exportAll",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ListGrid.maxExpandedRecordsPrompt":{
        ref:"attr:ListGrid.maxExpandedRecordsPrompt",
        flags:"IR",
        description:"This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed. Note that the local variable <code>count</code> will be\n available and set to this.maxExpandedRecords. The string will be executed in the scope of the\n ListGrid so <code>this</code> may also be used to determine other information about this grid.\n <P>\n Default value returns <P>\n <code>\n <i>This grid is limited to <code>[${isc.DocUtils.linkForRef('attr:ListGrid.maxExpandedRecords')}]</code> simultaneously\n expanded records.  Please collapse some expanded records and retry.</i>\n </code>",
        name:"maxExpandedRecordsPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"This grid is limited to ${count} simultaneously expanded records.  Please collapse some expanded records and retry.\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Date.setShowChooserWeekPickers":{
        ref:"classMethod:Date.setShowChooserWeekPickers",
        flags:"",
        description:" Sets the global attribute that dictates whether the ${isc.DocUtils.linkForRef('class:DateChooser','choosers')} shelled\n from ${isc.DocUtils.linkForRef('class:DateItem','DateItems')} show a UI for working with Weeks.\n\n",
        name:"setShowChooserWeekPickers",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to show Fiscal Week pickers in DateChoosers by default",
                optional:false,
                name:"showChooserWeekPickers",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Date"
    },
    "classMethod:Page.getScreenHeight":{
        ref:"classMethod:Page.getScreenHeight",
        flags:"",
        description:"\t\tGet the height of the user's screen, in pixels.\n",
        name:"getScreenHeight",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:ComboBoxItem.maskSaveLiterals":{
        ref:"attr:ComboBoxItem.maskSaveLiterals",
        flags:"IRWA",
        description:"Not applicable to a ComboBoxItem.",
        name:"maskSaveLiterals",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:DrawOval.setOval":{
        ref:"method:DrawOval.setOval",
        flags:"",
        description:" Resize and reposition the drawOval by setting its radius, and centerPoint.\n",
        name:"setOval",
        seeAlso:[
        ],
        params:[
            {
                description:"new horizontal center point coordinate",
                optional:false,
                name:"cx",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new vertical center point coordinate",
                optional:false,
                name:"cy",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new horizontal radius",
                optional:false,
                name:"rx",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new vertical radius",
                optional:false,
                name:"ry",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:Menu.showKeys":{
        ref:"attr:Menu.showKeys",
        flags:"IRW",
        description:"A boolean, indicating whether the shortcut key column should be displayed. If\n showKeys is not set, the menu will show the key column only if one of its items\n specifies a keys property. If showKeys is false, the keys will not be displayed,\n but will still function.",
        name:"showKeys",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:ListGrid.setSortState":{
        ref:"method:ListGrid.setSortState",
        flags:"",
        description:" Reset this grid's sort state (sort field and direction or list of\n ${isc.DocUtils.linkForRef('object:SortSpecifier')}s) to match the\n ${isc.DocUtils.linkForRef('type:ListGridSortState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.getSortState')}.\n\n",
        name:"setSortState",
        seeAlso:[
            {
                ref:"method:ListGrid.getSortState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired sort state for the grid.",
                optional:false,
                name:"sortState",
                defaultValue:null,
                type:"ListGridSortState"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "classMethod:Validator.addValidatorDefinitions":{
        ref:"classMethod:Validator.addValidatorDefinitions",
        flags:"A",
        description:" Add several new validator types at once, as though ${isc.DocUtils.linkForRef('classMethod:Validator.addValidatorDefinition')}\n were called several times.\n \n",
        name:"addValidatorDefinitions",
        seeAlso:[
            {
                ref:"classMethod:Validator.addValidatorDefinition",
                description:null
            }
        ],
        params:[
            {
                description:"Set of validators to add.  This parameter should      be a JavaScript object where the property names are validator type names, and the\n      property values are ${isc.DocUtils.linkForRef('object:validatorDefinition')}s.",
                optional:false,
                name:"newDefinitions",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Validator",
        groups:[
            "validation"
        ]
    },
    "attr:CubeGrid.saveByCell":{
        ref:"attr:CubeGrid.saveByCell",
        flags:"R",
        description:"CubeGrids only support editing by cell.",
        name:"saveByCell",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "cellEditing"
        ]
    },
    "attr:DynamicForm.canFocus":{
        ref:"attr:DynamicForm.canFocus",
        flags:"IRWA",
        description:"DynamicForms are considered to have focus if any of their form items have focus.\n Note that setting <code>dynamicForm.canFocus</code> to false will have no effect on\n whether form items within the form may receive focus. This property will only govern\n whether the form may receive focus if the form contains no focusable items.",
        name:"canFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "focus"
        ]
    },
    "method:FacetChart.getChartLeft":{
        ref:"method:FacetChart.getChartLeft",
        flags:"",
        description:" Get the left margin of the central chart area, where data elements appear.\n <P> \n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getChartLeft",
        seeAlso:[
        ],
        returns:{
            description:"left margin of the central chart area",
            type:"float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Menu.setItems":{
        ref:"method:Menu.setItems",
        flags:"",
        description:" Synonym for ${isc.DocUtils.linkForRef('method:Menu.setData')}.\n",
        name:"setItems",
        seeAlso:[
        ],
        params:[
            {
                description:"new items for this menu",
                optional:false,
                name:"items",
                defaultValue:null,
                type:"array of MenuItems"
            }
        ],
        type:"method",
        definingClass:"class:Menu",
        groups:[
            "data"
        ]
    },
    "method:ListGrid.setAutoFitMaxRecords":{
        ref:"method:ListGrid.setAutoFitMaxRecords",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxRecords')}.\n",
        name:"setAutoFitMaxRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"Maximum number of rows we'll expand to accommodate if ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData','auto fit')} is enabled vertically.",
                optional:false,
                name:"maxRecords",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "group:fetching":{
        ref:"group:fetching",
        refs:[
            "attr:ResultSet.fetchMode",
            "attr:ResultSet.initialData",
            "attr:ResultSet.initialLength",
            "attr:ResultSet.sortSpecifiers",
            "attr:ResultSet.allRows",
            "attr:ResultSet.resultSize",
            "attr:ResultSet.fetchDelay",
            "type:FetchMode"
        ],
        name:"fetching",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:GridRenderer.quickDrawAheadRatio":{
        ref:"attr:GridRenderer.quickDrawAheadRatio",
        flags:"IRWA",
        description:"Alternative to ${isc.DocUtils.linkForRef('attr:GridRenderer.drawAheadRatio')}, to be used when the user\n is rapidly changing the grids viewport (for example drag scrolling through the grid).\n If unspecified ${isc.DocUtils.linkForRef('attr:GridRenderer.drawAheadRatio')} will be used in all cases",
        name:"quickDrawAheadRatio",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1.0",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "classMethod:isc.say":{
        ref:"classMethod:isc.say",
        flags:"",
        description:" Show a modal dialog with a message, icon, and \"OK\" button.  Intended for notifications which\n are not really warnings (default icon is less severe).\n <P>\n The callback will receive boolean true for an OK button click, or null if the Dialog is\n dismissed via the close button.\n\n",
        name:"say",
        seeAlso:[
            {
                ref:"classAttr:Dialog.Warn",
                description:null
            },
            {
                ref:"classMethod:isc.warn",
                description:null
            },
            {
                ref:"classMethod:isc.ask",
                description:null
            },
            {
                ref:"method:Dialog.okClick",
                description:null
            },
            {
                ref:"classAttr:Dialog.SAY_TITLE",
                description:null
            }
        ],
        params:[
            {
                description:"message to display",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Optional Callback to fire when the user                                      dismisses the dialog. This has the single parameter\n                                      'value', indicating the value returned by the Warn\n                                      dialog from 'okClick()' etc.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties for the Dialog.                                      To set ${isc.DocUtils.linkForRef('attr:Dialog.buttons','custom buttons')} for\n                                      the Dialog, set properties.buttons to an array of\n                                      buttons\n\t\t\t\t\t\t\t\t\t\teg:\t{ buttons : [Dialog.OK, Dialog.CANCEL] }",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"Dialog Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "class:DateUtil":{
        methods:[
        ],
        ref:"class:DateUtil",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:DateUtil.format",
            "classMethod:DateUtil.createLogicalDate",
            "classMethod:DateUtil.mapRelativeDateShortcut",
            "classMethod:DateUtil.getAbsoluteDate"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Static singleton class containing APIs for interacting with Dates.",
        name:"DateUtil",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSource.sendParentNode":{
        ref:"attr:DataSource.sendParentNode",
        flags:"IRWA",
        description:"Set this attribute if you need to send the dsRequest.parentNode to the server-side.",
        name:"sendParentNode",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "attr:TimeItem.millisecondItem":{
        ref:"attr:TimeItem.millisecondItem",
        flags:"R",
        description:"Select item to hold the milliseconds portion of the time or \n ${isc.DocUtils.linkForRef('method:TimeItem.getDuration','duration')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} \n is false.",
        name:"millisecondItem",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:ListGrid.markSelectionRemoved":{
        ref:"method:ListGrid.markSelectionRemoved",
        flags:"",
        description:" Marks the currently selected records as removed, as though ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')} had\n been called.\n\n",
        name:"markSelectionRemoved",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:Canvas.setHtmlElement":{
        ref:"method:Canvas.setHtmlElement",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:Canvas.htmlElement')}.\n",
        name:"setHtmlElement",
        seeAlso:[
        ],
        params:[
            {
                description:"New htmlElement for this canvas, or Null to clear the existing      htmlElement",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"DOM element"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "htmlElement"
        ]
    },
    "method:FormItem.getDisplayValue":{
        ref:"method:FormItem.getDisplayValue",
        flags:"",
        description:" Returns this item's value with any valueMap applied to it - the value as currently\n displayed to the user.\n",
        name:"getDisplayValue",
        seeAlso:[
        ],
        params:[
            {
                description:"optional stored value to be mapped to a display value.  Default is to                use the form's current value",
                optional:true,
                name:"value",
                defaultValue:null,
                type:null
            }
        ],
        returns:{
            description:"value displayed to the user",
            type:"any"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "valueMap"
        ]
    },
    "attr:Button.showClippedTitleOnHover":{
        ref:"attr:Button.showClippedTitleOnHover",
        flags:"IRW",
        description:"If true and the title is clipped, then a hover containing the full title of this button\n is enabled.",
        name:"showClippedTitleOnHover",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "hovers"
        ]
    },
    "class:WSRequest":{
        methods:[
        ],
        ref:"class:WSRequest",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:WSRequest.wsOperation",
            "attr:WSRequest.data",
            "attr:WSRequest.useFlatFields",
            "attr:WSRequest.xmlNamespaces",
            "attr:WSRequest.xmlResult",
            "attr:WSRequest.headerData"
        ],
        description:"A WSRequest (or \"web service request\") is an extended RPCRequest with additional properties\n applicable to WSDL/SOAP web services.\n <P>\n All properties which are legal on ${isc.DocUtils.linkForRef('class:RPCRequest')} are legal on a WSRequest, in\n addition to the properties listed here.",
        name:"WSRequest",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        type:"class"
    },
    "attr:Dialog.toolbar":{
        ref:"attr:Dialog.toolbar",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:AutoChild')} of type Toolbar used to create the ${isc.DocUtils.linkForRef('attr:Dialog.toolbarButtons')}.",
        name:"toolbar",
        seeAlso:[
        ],
        valueType:"AutoChild Toolbar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:Tree.idField":{
        ref:"attr:Tree.idField",
        flags:"IRA",
        description:"Name of the property on a ${isc.DocUtils.linkForRef('object:TreeNode')} that holds an id for the node which is unique\n across the entire Tree.  Required for all nodes for trees with modelType \"parent\".\n Default value is \"id\".  See ${isc.DocUtils.linkForRef('attr:TreeNode.id')} for usage.",
        name:"idField",
        seeAlso:[
            {
                ref:"attr:TreeNode.id",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"id\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:Tree"
    },
    "attr:DateRange.start":{
        ref:"attr:DateRange.start",
        flags:"IR",
        description:"The start of this DateRange.",
        name:"start",
        seeAlso:[
        ],
        valueType:"RelativeDate or Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DateRange"
    },
    "attr:DataSourceField.joinType":{
        ref:"attr:DataSourceField.joinType",
        flags:"IR",
        description:"This property is only applicable to fields of SQL DataSources that also specify a \n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} property; it is ignored for all other fields.  Indicates the \n type of join to make between the tables underlying this DataSource and the other DataSource\n referred to in the <code>foreignKey</code> property, when resolving ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom','includeFrom')} \n fields.  The default value of null is the same as specifying \"inner\".\n <P>\n Note, outer joins are allowed for all supported database products only if you are using \n ${isc.DocUtils.linkForRef('attr:DataSource.useAnsiJoins','ANSI-style joins')}, which is not the case by default.  If you\n are using the older strategy of additional join expressions in the WHERE clause, outer \n joins are only supported for database products that provide a proprietary native syntax for \n expressing outer joins.  Those products are:<ul>\n <li>Oracle</li>\n <li>Versions of Microsoft SQL Server earlier than 2012, and running in compatibility mode 80</li>\n </ul>",
        name:"joinType",
        seeAlso:[
        ],
        valueType:"JoinType",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "dataSourceRelations"
        ]
    },
    "method:Canvas.getImage":{
        ref:"method:Canvas.getImage",
        flags:"A",
        description:" Retrieve a native image element by name.\n <P>\n The image element must have been created from HTML generated by calling\n ${isc.DocUtils.linkForRef('method:Canvas.imgHTML')} on this particular Canvas.\n\n",
        name:"getImage",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the image to get, as originally passed to                              <code>imgHTML()</code>",
                optional:false,
                name:"identifier",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"DOM image element if found, else null",
            type:"DOMElement"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "images"
        ]
    },
    "method:Canvas.isDirty":{
        ref:"method:Canvas.isDirty",
        flags:"A",
        description:" Returns whether a canvas is waiting to be redrawn. Will return true if\n ${isc.DocUtils.linkForRef('method:Canvas.markForRedraw')} has been called, but this canvas has not yet been\n redrawn.\n",
        name:"isDirty",
        seeAlso:[
        ],
        returns:{
            description:"true is this canvas needs to be redrawn; false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "class:XORGateway":{
        methods:[
        ],
        ref:"class:XORGateway",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:XORGateway.criteria",
            "attr:XORGateway.nextElement",
            "attr:XORGateway.failureElement"
        ],
        description:"Chooses one or another next process element based on AdvancedCriteria applied to\n ${isc.DocUtils.linkForRef('attr:Process.state')}.\n <P>\n If the AdvancedCriteria evaluate to true, the ${isc.DocUtils.linkForRef('attr:XORGateway.nextElement','nextElement')} is chosen, otherwise the\n ${isc.DocUtils.linkForRef('attr:XORGateway.failureElement','failureElement')}.\n <P>\n Note that \"XOR\" in <code>XORGateway</code> means \"exclusive or\" - only one next element is\n chosen.\n - implementation note: we need to allow the propertyName in simple Criteria or the\n criterion.name in AdvancedCriterion to a be path of the form \"orderUser.name\".  This should\n be a general enhancement applied across the entire Criteria/AdvancedCriteria system.",
        name:"XORGateway",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FormItem.errorOrientation":{
        ref:"attr:FormItem.errorOrientation",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} is true, where should the error icon and text appear\n relative to the form item itself. Valid options are <code>\"top\"</code>, \n <code>\"bottom\"</code>, <code>\"left\"</code> or <code>\"right\"</code>.<br>\n If unset the orientation will be derived from ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')}.",
        name:"errorOrientation",
        seeAlso:[
        ],
        valueType:"align",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "validation",
            "appearance"
        ]
    },
    "attr:ListGrid.sortEditorSpanTitleSeparator":{
        ref:"attr:ListGrid.sortEditorSpanTitleSeparator",
        flags:"IRW",
        description:"If this grid has specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')}, and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderSpanTitlesInSortEditor','showHeaderSpanTitlesInSortEditor')} is true, this\n string will be inserted between the headerSpan title(s) and the field title in the field\n chooser grid on the ${isc.DocUtils.linkForRef('class:MultiSortDialog','multi-sort editor')}",
        name:"sortEditorSpanTitleSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\" - \"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DrawImage.width":{
        ref:"attr:DrawImage.width",
        flags:"IR",
        description:"Width in pixels.",
        name:"width",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:DrawImage"
    },
    "attr:PickList.hideEmptyPickList":{
        ref:"attr:PickList.hideEmptyPickList",
        flags:"IRW",
        description:"If this pickList contains no options, should it be hidden?\n If unset, default behavior is to allow the empty pickList to show if it is databound.",
        name:"hideEmptyPickList",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:CheckboxItem.partialSelectedImage":{
        ref:"attr:CheckboxItem.partialSelectedImage",
        flags:"IRW",
        description:"URL for the image to display when this checkbox is partially selected",
        name:"partialSelectedImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/partialcheck.gif\"",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "appearance"
        ]
    },
    "attr:FileItem.accept":{
        ref:"attr:FileItem.accept",
        flags:"IR",
        description:"A comma-separated list of valid MIME types, used as a filter for the file picker window.",
        name:"accept",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FileItem"
    },
    "method:DataSource.getLegalChildTags":{
        ref:"method:DataSource.getLegalChildTags",
        flags:"",
        description:" For a DataSource that describes a DOM structure, the list of legal child elements that can\n be contained by the element described by this DataSource.\n <p>\n For a DataSource described by XML schema, this is the list of legal subelements <b>of\n complexType</b> (elements of simpleType become DataSourceFields with atomic type).\n <p>\n Note that currently, if an XML schema file contains ordering constraints, DataSources\n derived from XML Schema do not capture these constraints.\n\n",
        name:"getLegalChildTags",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "xmlSchema"
        ]
    },
    "group:jspTags":{
        ref:"group:jspTags",
        title:"SmartClient JSP Tags",
        refs:[
        ],
        description:"The SmartClient Java Server component ships with a number of custom JSP tags designed to\n make development with SmartClient easier.  The custom tags are defined in\n <code>[webroot]/WEB-INF/iscTaglib.xml</code> in the SDK package.  To make use of these tags, make\n sure you have the following entry in your web.xml (the SDK already contains this entry by\n default):<br>\n <pre>\n &lt;taglib&gt;\n     &lt;taglib-uri&gt;isomorphic&lt;/taglib-uri&gt; \n     &lt;taglib-location&gt;/WEB-INF/iscTaglib.xml&lt;/taglib-location&gt; \n &lt;/taglib&gt;\n </pre>\n <p>\n Also, the JSP page making use of the tag must load the custom taglib via the following\n directive:<br>\n <pre>\n &lt;%@ taglib uri=\"/WEB-INF/iscTaglib.xml\" prefix=\"isomorphic\" %&gt;\n </pre>\n All SmartClient JSP tags produce either HTML or JavaScript output, so you can easily see\n what any given tag is generating by doing a \"View->Source\" in your browser after browsing to\n the JSP that contains your tag.  Tags that produce HTML must be located in the HTML BODY\n context in your JSP - that is, outside of any <code>&lt;SCRIPT&gt;</code> tags and inside\n <code>&lt;BODY&gt;</code> tags.  Tags that produce JavaScript must be located inside\n <code>&lt;SCRIPT&gt;</code> tags.",
        name:"jspTags",
        seeAlso:[
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "classMethod:Page.clearEvent":{
        ref:"classMethod:Page.clearEvent",
        flags:"",
        description:"\tClear event(s) under the given eventType.<p>\n\tTo clear all events, omit the ID parameter.  To clear a specific event,\n\tpass the ID that was returned by Page.setEvent().\n",
        name:"clearEvent",
        seeAlso:[
            {
                ref:"class:EventHandler",
                description:null
            }
        ],
        params:[
            {
                description:"event type to clear",
                optional:false,
                name:"eventType",
                defaultValue:null,
                type:"PageEvent, Event"
            },
            {
                description:"ID of the event to clear. \t\t\t\t\t\t\t\t\t\tIf not specified, all events in eventType will be cleared.",
                optional:true,
                name:"ID",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "EventRegistry"
        ]
    },
    "attr:MetricSettings.filled":{
        ref:"attr:MetricSettings.filled",
        flags:"IRW",
        description:"Whether shapes are filled, for example, whether a multi-series line chart appears as a\n stack of filled regions as opposed to just multiple lines.\n <P>\n If unset, fills will be automatically used when there are multiple facets and stacking\n is active (so Line and Radar charts will show stacked regions).  \n <P>\n You can explicitly set filled:false to create multi-facet Line or Radar charts where\n translucent regions overlap, or filled:true to fill in a single-facet Line or Radar\n chart.",
        name:"filled",
        setter:[
            "setFilled"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:Canvas.useDragMask":{
        ref:"attr:Canvas.useDragMask",
        flags:"IRW",
        description:"This flag controls whether we register the component as a maskable item with the\n EventHandler. If enabled, a backmask will be automatically created for the\n dragMoveTarget on the fly to avoid burnthrough e.g. by plugins or frames.\n <p>\n The ${isc.DocUtils.linkForRef('attr:Canvas.dragMaskType')} property controls what kind of mask is used in case\n useDragMask is enabled.",
        name:"useDragMask",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "classMethod:Date.setFiscalCalendar":{
        ref:"classMethod:Date.setFiscalCalendar",
        flags:"",
        description:" Sets the global fiscal calendar, which is used for all calls to\n getFiscalYear() / getFiscalWeek() if those methods aren't passed a fiscalCalander.\n\n",
        name:"setFiscalCalendar",
        seeAlso:[
        ],
        params:[
            {
                description:"the object representing the start month and date of           the fiscal year in the current locale",
                optional:false,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        type:"classMethod",
        definingClass:"class:Date"
    },
    "classMethod:XMLTools.nativeXMLAvailable":{
        ref:"classMethod:XMLTools.nativeXMLAvailable",
        flags:"",
        description:"\n Returns true if the current browser exposes an XML parser that can be used for SmartClient\n XML operations like web service bindings and XML processing.  See\n ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information on when the XML parser may not\n available and what features are impacted as a result.\n\n",
        name:"nativeXMLAvailable",
        seeAlso:[
        ],
        returns:{
            description:"true if native XML processing is available, false otherwise.",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:XMLTools"
    },
    "attr:DataSourceField.updateRequires":{
        ref:"attr:DataSourceField.updateRequires",
        flags:"IR",
        description:"Indicates that the specified ${isc.DocUtils.linkForRef('type:VelocityExpression')} must evaluate to true if\n updates to this field are to be allowed.  If the specified expression does not \n evaluate to true, the field will be removed from the request as described for \n ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresAuthentication','editRequiresAuthentication')}.\n <p>\n In addition to the normal context variables available to Velocity expressions in SmartClient,\n expressions you write for field-level <code>requires</code> clauses - <code>updateRequires</code>, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequires','viewRequires')}, ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequires','editRequires')} and \n ${isc.DocUtils.linkForRef('attr:DataSourceField.initRequires','initRequires')} - can reference two additional variables: \n <code>$fieldName</code> and <code>$dsName</code>.  These are the names of the dataSource and \n field currently undergoing <code>requires</code> checks.  They are helpful because they allow\n you to write a generic checker function that can be used to handle <code>requires</code>\n checks for multiple fields and dataSources.\n <p>\n <b>NOTE:</b> This property only prevents update of a field; initialization will still be \n allowed.  You should only use this property if you have a special requirement; ordinarily,\n use ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequires')}, which applies security for both types of write.",
        name:"updateRequires",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.editRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.viewRequires",
                description:null
            }
        ],
        valueType:"VelocityExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "group:stringMethods":{
        ref:"group:stringMethods",
        title:"String Methods Overview",
        treeLocation:[
            "Client Reference/System"
        ],
        refs:[
        ],
        description:"A method flagged as a String Method can be specified as a String containing a valid\n JavaScript expression.  This expression will automatically be converted to a function with a\n return value matching the value of the last statement.  Providing a String is not required -\n you may use a real function instead.\n <p>\n For example - suppose you wanted to override the <code>leafClick()</code> method on\n the TreeGrid.  Normally you would do so as follows:<br>\n\n <pre>\n TreeGrid.create({\n     ...\n     leafClick : function(viewer, leaf, recordNum) {\n         if(leaf.name == 'zoo') {\n             alert(1);\n         } else {\n             alert(2);\n         }\n     }\n });\n </pre>\n\n Since leafClick is a stringMethod, however, you can shorten this to:<br>\n <pre>\n TreeGrid.create({\n     ...\n     leafClick : \"if(leaf.name == 'zoo') { alert(1); } else { alert(2); }\";\n });\n </pre>",
        name:"stringMethods",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Calendar.columnsPerPage":{
        ref:"attr:Calendar.columnsPerPage",
        flags:"IR",
        description:"When using the Next and Previous arrows to scroll a Timeline, this is the number of columns \n of the ${isc.DocUtils.linkForRef('attr:Calendar.timelineGranularity','timelineGranularity')} to scroll by.  With the\n default value of null, the Timeline will scroll by its current length.",
        name:"columnsPerPage",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:CubeGrid.getCellStyle":{
        ref:"method:CubeGrid.getCellStyle",
        flags:"",
        description:" Return the CSS class for a cell. By default this method has the following implementation:<br>\n - return any custom style for the record (see ${isc.DocUtils.linkForRef('attr:GridRenderer.recordCustomStyleProperty')}) \n   if defined.<br>\n - create a style name based on the result of ${isc.DocUtils.linkForRef('method:GridRenderer.getBaseStyle')} and the \n   state of the record.<br>\n The state of the record is indicated by adding a suffix to the base style.\n There are four independent boolean states, which are combined in the order given:\n <ol>\n <li>\"Disabled\" : whether the cell is disabled; enable by setting the \"enabled\" flag on record\n     returned by getCellRecord\n <li>\"Selected\" : whether cell is selected; enable by passing a Selection object as \"selection\"\n <li>\"Over\" : mouse is over this cell; enable with showRollovers\n <li>\"Dark\" : alternating color bands; enable with alternateRowStyles\n </ol>\n For example, with a baseStyle of \"myCell\", a cell which is selected, which the mouse is over,\n and which is in a dark-colored band will get a styleName of myCellSelectedOverDark.\n <p>\n Cell Styles customizable by:\n <ul>\n <li>attaching a custom style to a record by setting \n    <code>record[this.recordCustomStyleProperty]</code> to some valid CSS style name.  \n <li>modifying the base style returned by getBaseStyle() [see that method for further \n     documentation on this]\n <li>overriding this function\n </ul>\n <p>\n \"Selected\" style can be ignored by setting ${isc.DocUtils.linkForRef('attr:GridRenderer.showSelectedStyle')} to false.\n\n",
        name:"getCellStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"record object for this row and column",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"number of the row",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS style for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.edgeMarginSize":{
        ref:"attr:Canvas.edgeMarginSize",
        flags:"IRWA",
        description:"How far into the edge of an object do we consider the \"edge\" for drag resize purposes?",
        name:"edgeMarginSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"5",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragResize')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:FormItem.redrawOnChange":{
        ref:"attr:FormItem.redrawOnChange",
        flags:"IRW",
        description:"If true, this item will cause the entire form to be redrawn\n when the item's \"elementChanged\" event is done firing",
        name:"redrawOnChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "changeHandling"
        ]
    },
    "attr:ListGridField.name":{
        ref:"attr:ListGridField.name",
        flags:"IR",
        description:"Name of this field.  Must be unique within this ListGrid as well as a valid JavaScript identifier,\n as specified by ECMA-262 Section 7.6 (the <smartclient>${isc.DocUtils.linkForRef('classMethod:String.isValidID')}</smartclient>\n <smartgwt>StringUtil.isValidID()</smartgwt> function can be used to test whether\n a name is a valid JavaScript identifier).\n <P>\n The name of field is also the property in each record which holds the value for that\n field.\n <P>\n If a ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')} is specified and the DataSource has a field with the\n same name, the ListGridField and DataSourceField are merged so that properties on the\n ListGridField",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "data"
        ]
    },
    "attr:ToolbarItem.showTitle":{
        ref:"attr:ToolbarItem.showTitle",
        flags:"IRW",
        description:"Don't show a title for toolbars",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ToolbarItem",
        groups:[
            "appearance"
        ]
    },
    "method:DrawItem.mouseMove":{
        ref:"method:DrawItem.mouseMove",
        flags:"",
        description:" Notification fired when the user moves the mouse over this DrawItem.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"mouseMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "method:FormItemIcon.keyPress":{
        ref:"method:FormItemIcon.keyPress",
        flags:"",
        description:"      StringMethod action to fire when this icon has focus and receives a keypress\n      event.\n      If unset the form item's <code>iconKeyPress</code> method will be fired instead \n      (if specified).\n",
        name:"keyPress",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the key pressed",
                optional:false,
                name:"keyName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"character produced by the keypress",
                optional:false,
                name:"character",
                defaultValue:null,
                type:"character"
            },
            {
                description:"The Dynamic Form to which this icon's item belongs.",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"The Form Item containing this icon",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"A pointer to the form item icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"FormItemIcon"
            }
        ],
        type:"method",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "method:Canvas.setTabIndex":{
        ref:"method:Canvas.setTabIndex",
        flags:"A",
        description:"  Assign an explicit tabIndex to this widget.\n",
        name:"setTabIndex",
        seeAlso:[
            {
                ref:"attr:Canvas.tabIndex",
                description:null
            }
        ],
        params:[
            {
                description:"New tabIndex for this widget. Must be less than                          ${isc.DocUtils.linkForRef('classAttr:Canvas.TAB_INDEX_FLOOR')} to avoid interfering with auto-assigned\n                          tab indices on the page.",
                optional:false,
                name:"tabIndex",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:Canvas.shadowSoftness":{
        ref:"attr:Canvas.shadowSoftness",
        flags:"IRWA",
        description:"Softness, or degree of blurring, of the shadow.\n <P>\n A shadow with <code>softness:x</code> is 2x pixels larger in each direction than the element\n throwing the shadow, and the media for each edge should be x pixels wide/tall.\n <P>\n Defaults to <code>shadowDepth</code> if unset.",
        name:"shadowSoftness",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('shadows')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "shadow"
        ]
    },
    "attr:Menu.emptyMessage":{
        ref:"attr:Menu.emptyMessage",
        flags:"IRWA",
        description:"Message to show when a menu is shown with no items.",
        name:"emptyMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"[Empty menu]\"",
        type:"attr",
        definingClass:"class:Menu",
        groups:[
            "i18nMessages"
        ]
    },
    "class:CanvasItem":{
        methods:[
            "method:CanvasItem.storeValue",
            "method:CanvasItem.setCanvas",
            "method:CanvasItem.canEditChanged",
            "method:CanvasItem.readOnlyDisplayChanged",
            "method:CanvasItem.shouldDisableCanvas",
            "method:CanvasItem.hasAdvancedCriteria",
            "method:CanvasItem.canEditCriterion",
            "method:CanvasItem.getCriterion",
            "method:CanvasItem.setCriterion",
            "method:CanvasItem.setPrompt",
            "method:CanvasItem.createCanvas",
            "method:CanvasItem.showValue"
        ],
        ref:"class:CanvasItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:CanvasItem.height",
            "attr:CanvasItem.multiple",
            "attr:CanvasItem.shouldSaveValue",
            "attr:CanvasItem.canvas",
            "attr:CanvasItem.canvasConstructor",
            "attr:CanvasItem.canvasDefaults",
            "attr:CanvasItem.canvasProperties",
            "attr:CanvasItem.autoDestroy",
            "attr:CanvasItem.overflow",
            "attr:CanvasItem.editCriteriaInInnerForm",
            "attr:CanvasItem.applyPromptToCanvas",
            "attr:CanvasItem.prompt"
        ],
        description:"FormItem which renders a Canvas inline in a DynamicForm instance.\n <P>\n CanvasItem is ${isc.DocUtils.linkForRef('attr:CanvasItem.shouldSaveValue','shouldSaveValue')}:false by default, meaning that\n no value from the CanvasItem will be present in ${isc.DocUtils.linkForRef('method:DynamicForm.getValues')} and no value will be\n saved when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is called.  This is appropriate if the Canvas does\n not participate in editing a value of the form and is embedded in the form for layout or UI\n purposes only (e.g. ${isc.DocUtils.linkForRef('class:ButtonItem')}, ${isc.DocUtils.linkForRef('class:SectionItem')}). Note that some built-in CanvasItem\n types override the shouldSaveValue default to true (e.g. ${isc.DocUtils.linkForRef('class:MultiComboBoxItem')}, ${isc.DocUtils.linkForRef('class:RichTextItem')}).\n <P>\n If you set ${isc.DocUtils.linkForRef('attr:FormItem.shouldSaveValue','shouldSaveValue')}:true, a \n ${isc.DocUtils.linkForRef('method:CanvasItem.showValue','showValue')} event will be raised to provide a value that your\n item should display.  Handle this event by calling methods on the Canvas you've created\n to cause the value to be displayed.\n <P>\n The ${isc.DocUtils.linkForRef('method:CanvasItem.showValue','showValue')} event will be triggered in various situations where\n the form receives data, including a call to ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')},\n ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')}, or if ${isc.DocUtils.linkForRef('method:DynamicForm.fetchData')} is called and a Record\n is returned.  Bear in mind that the <code>showValue</code> event can be called when the form\n and your item have not yet been drawn; in this case, store the value for later display.\n <P>\n To provide a value to the form, call ${isc.DocUtils.linkForRef('method:CanvasItem.storeValue')} whenever the user changes\n the value in your Canvas.  Generally, if storeValue() is called then\n ${isc.DocUtils.linkForRef('attr:CanvasItem.shouldSaveValue','shouldSaveValue')} should be overridden to true.  Note that\n the form <b>will not</b> call getValue() in order to discover your item's value, so there is\n no purpose in overriding this method; instead, call storeValue() to proactively inform the\n form about changes to the value.  This approach is necessary in order to enable change events.\n <P>\n If you cannot easily detect changes to values in your Canvas, a workaround is to call\n <code>storeValue</code> right before the form saves.",
        name:"CanvasItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:FormItem.getPixelHeight":{
        ref:"method:FormItem.getPixelHeight",
        flags:"",
        description:" Returns the specified ${isc.DocUtils.linkForRef('attr:FormItem.height')} of this formItem in pixels. \n For heights specified as a percentage value or <code>\"*\"</code>, the \n pixel height may not be available prior to the item being drawn. In cases where\n the height has not yet been resolved to a pixel value, this method will return\n <code>-1</code>.\n",
        name:"getPixelHeight",
        seeAlso:[
        ],
        returns:{
            description:"Specified height resolved to a pixel value.",
            type:"int"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:CubeGrid.facetValueSelectionChanged":{
        ref:"method:CubeGrid.facetValueSelectionChanged",
        flags:"",
        description:" Handler/Notification function for facetValue selection change (no default implementation).\n\n",
        name:"facetValueSelectionChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValues with new selection state",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            },
            {
                description:"new selection state",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:EdgedCanvas.edgeOffset":{
        ref:"attr:EdgedCanvas.edgeOffset",
        flags:"IRA",
        description:"Amount the contained Canvas should be offset.  Defaults to edgeSize; set to less than\n edgeSize to allow the contained Canvas to overlap the edge and corner media.",
        name:"edgeOffset",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('edges')}"
        ],
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:Layout.memberOverlap":{
        ref:"attr:Layout.memberOverlap",
        flags:"IR",
        description:"Number of pixels by which each member should overlap the preceding member, used for\n creating an \"stack of cards\" appearance for the members of a Layout.\n <P>\n <code>memberOverlap</code> can be used in conjunction with ${isc.DocUtils.linkForRef('attr:Layout.stackZIndex')} to create\n a particular visual stacking order.\n <P>\n Note that overlap of individual members can be accomplished with a negative setting for\n ${isc.DocUtils.linkForRef('attr:Canvas.extraSpace')}.",
        name:"memberOverlap",
        seeAlso:[
        ],
        valueType:"positiveInteger",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutMember"
        ]
    },
    "attr:ColorPicker.greenFieldTitle":{
        ref:"attr:ColorPicker.greenFieldTitle",
        flags:"IR",
        description:"The title for the 'Green' field in the complex chooser.",
        name:"greenFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Green\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ColorPicker.setHtmlColor":{
        ref:"method:ColorPicker.setHtmlColor",
        flags:"",
        description:" Changes the selected color to the one represented by the supplied HTML color \n string. Note that ths method only accepts the parameter if it represents a \n valid color (otherwise it is simply ignored).\n",
        name:"setHtmlColor",
        seeAlso:[
            {
                ref:"method:ColorPicker.getHtmlColor",
                description:null
            }
        ],
        params:[
            {
                description:"A string in HTML color representation format (#RRGGBB)",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"text"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:Button.showDisabledIcon":{
        ref:"attr:Button.showDisabledIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image if the button becomes\n disabled.",
        name:"showDisabledIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "group:values":{
        ref:"group:values",
        refs:[
            "attr:DetailViewer.labelAlign",
            "attr:DetailViewer.valueAlign",
            "attr:FormItem.changeOnKeypress",
            "attr:TextItem.changeOnKeypress",
            "attr:TextAreaItem.changeOnKeypress"
        ],
        description:"Manipulating the values stored in the form.",
        name:"values",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DrawLine.knobs":{
        ref:"attr:DrawLine.knobs",
        flags:"IR",
        description:"Array of control knobs to display for this item. Each ${isc.DocUtils.linkForRef('type:KnobType')} specified in this\n will turn on UI element(s) allowing the user to manipulate this DrawLine.  To update the\n set of knobs at runtime use ${isc.DocUtils.linkForRef('method:DrawItem.showKnobs')} and ${isc.DocUtils.linkForRef('method:DrawItem.hideKnobs')}.\n <p>\n DrawLine supports the\n <smartclient>\"startPoint\" and \"endPoint\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.KnobType#STARTPOINT} and {@link com.smartgwt.client.types.KnobType#ENDPOINT}</smartgwt>\n knob types.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawLine"
    },
    "attr:Menu.defaultWidth":{
        ref:"attr:Menu.defaultWidth",
        flags:"IRW",
        description:"The default menu width.",
        name:"defaultWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:Menu",
        groups:[
            "sizing"
        ]
    },
    "classAttr:RPCResponse.STATUS_CONNECTION_RESET_ERROR":{
        ref:"classAttr:RPCResponse.STATUS_CONNECTION_RESET_ERROR",
        flags:"R",
        description:"This response code only occurs when using the HTTP proxy.  It is issued by the proxy\n servlet when the attempt to contact the target server results in a Java SocketException.\n This response probably indicates that the target server is currently down.",
        name:"STATUS_CONNECTION_RESET_ERROR",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"-92",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:DrawItem.moveKnobOffset":{
        ref:"attr:DrawItem.moveKnobOffset",
        flags:"IRWA",
        description:"If this item is showing a <code>\"move\"</code> ${isc.DocUtils.linkForRef('attr:DrawItem.knobs','control knob')}, this attribute\n allows you to specify an offset in pixels from the ${isc.DocUtils.linkForRef('attr:DrawItem.moveKnobPoint')} for the\n move knob. Offset should be specified as a 2-element array of [left offset, top offset].",
        name:"moveKnobOffset",
        setter:[
            "setMoveKnobOffset"
        ],
        seeAlso:[
            {
                ref:"attr:DrawItem.moveKnobPoint",
                description:null
            }
        ],
        valueType:"Array[] of int",
        defaultValue:"[0,0]",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:TimeItem.hourItem":{
        ref:"attr:TimeItem.hourItem",
        flags:"R",
        description:"Select item to hold the hours portion of the time or \n ${isc.DocUtils.linkForRef('method:TimeItem.getDuration','duration')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} \n is false.",
        name:"hourItem",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "class:HeaderItem":{
        methods:[
        ],
        exampleConfig:"HeaderItem.xml",
        ref:"class:HeaderItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:HeaderItem.defaultValue",
            "attr:HeaderItem.showTitle",
            "attr:HeaderItem.textBoxStyle",
            "attr:HeaderItem.canSelectText",
            "attr:HeaderItem.colSpan",
            "attr:HeaderItem.startRow",
            "attr:HeaderItem.endRow",
            "attr:HeaderItem.align"
        ],
        description:"FormItem for showing a header within a DynamicForm.\n <p>\n Set the <code>defaultValue</code> of this item to the HTML you want to embed in the form.",
        name:"HeaderItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ColorPicker.defaultColor":{
        ref:"attr:ColorPicker.defaultColor",
        flags:"IR",
        description:"The default color. This is the color that is selected when the picker first loads",
        name:"defaultColor",
        seeAlso:[
        ],
        valueType:"text",
        defaultValue:"#808080",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:IconButton.iconOrientation":{
        ref:"attr:IconButton.iconOrientation",
        flags:"IRW",
        description:"This attribute is not supported in this subclass.  However, RTL mode is still supported.",
        name:"iconOrientation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "method:CubeGrid.toggleFieldOpenState":{
        ref:"method:CubeGrid.toggleFieldOpenState",
        flags:"",
        description:" Toggles the open state of the specified field.  No-ops if it's not showing.\n",
        name:"toggleFieldOpenState",
        seeAlso:[
        ],
        params:[
            {
                description:"field specified as a facetValueMap",
                optional:false,
                name:"facetValueMap",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"whether specified field's open state was toggled",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:TreeGrid.openIconSuffix":{
        ref:"attr:TreeGrid.openIconSuffix",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeGrid.showOpenIcons')} is true, this suffix will be appended to the\n ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} for open folders in this grid.",
        name:"openIconSuffix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"open\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:ResultSet.initialLength":{
        ref:"attr:ResultSet.initialLength",
        flags:"IA",
        description:"Initial value of the data set length.\n <P>\n To create a ResultSet with it's cache partly filled, see ${isc.DocUtils.linkForRef('attr:ResultSet.initialData')}.",
        name:"initialLength",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "fetching",
            "cacheSync"
        ]
    },
    "attr:Chart.facets":{
        ref:"attr:Chart.facets",
        flags:"IR",
        description:"An Array of facets, exactly analogous to ${isc.DocUtils.linkForRef('attr:CubeGrid.facets')}, except that:\n <ul>\n <li> the \"inlinedValues\" property can be set on a facet to change data representation as\n described under ${isc.DocUtils.linkForRef('attr:Chart.data')}.\n <li> for a non-inlined facet, Charts support auto-derivation of facetValues from the data.\n </ul>",
        name:"facets",
        seeAlso:[
        ],
        valueType:"Array of Facet or Facet",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "attr:Canvas.visibility":{
        ref:"attr:Canvas.visibility",
        flags:"IRW",
        getter:[
            "isVisible"
        ],
        description:"Controls widget visibility when the widget is initialized. See Visibility type for\n      details.",
        name:"visibility",
        setter:[
            "show",
            "hide"
        ],
        seeAlso:[
        ],
        valueType:"Visibility",
        defaultValue:"Canvas.INHERIT",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:MetricSettings.minDataSpreadPercent":{
        ref:"attr:MetricSettings.minDataSpreadPercent",
        flags:"IR",
        description:"Same as ${isc.DocUtils.linkForRef('attr:FacetChart.minDataSpreadPercent')} but affects only one metric.  Default of\n null means that the chart-wide setting <code>facetChart.minDataSpreadPercent</code>\n will be used.",
        name:"minDataSpreadPercent",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:Canvas.mouseWheel":{
        ref:"method:Canvas.mouseWheel",
        flags:"A",
        description:"\n Executed when the mouse wheel is actuated.\n\n",
        name:"mouseWheel",
        seeAlso:[
            {
                ref:"classMethod:EventHandler.getWheelDelta",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        platformNotes:"Not all end user systems have mouse wheels.",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:MiniDateRangeItem.setCriterion":{
        ref:"method:MiniDateRangeItem.setCriterion",
        flags:"",
        description:" Applies the specified criterion to this item for editing. Applies any specified \n \"greaterOrEqual\" operator criterion or sub-criterion to our ${isc.DocUtils.linkForRef('attr:DateRangeItem.fromField','fromField')} and any\n specified \"lessOrEqual\" operator criterion or sub-criterion to our ${isc.DocUtils.linkForRef('attr:DateRangeItem.toField','toField')}.\n <P>\n Note that a single \"equals\" criterion can also be passed.  See \n ${isc.DocUtils.linkForRef('method:DateRangeItem.canEditCriterion','canEditCriterion()')} for more detail.\n",
        name:"setCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"criterion to edit",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        type:"method",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:Canvas.isGroup":{
        ref:"attr:Canvas.isGroup",
        flags:"IR",
        description:"Should a grouping frame be shown around this canvas.",
        name:"isGroup",
        seeAlso:[
            {
                ref:"attr:Canvas.groupBorderCSS",
                description:null
            },
            {
                ref:"attr:Canvas.groupLabelStyleName",
                description:null
            },
            {
                ref:"attr:Canvas.groupLabelBackgroundColor",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "method:Callbacks.AnimationCallback":{
        ref:"method:Callbacks.AnimationCallback",
        flags:"",
        description:" A ${isc.DocUtils.linkForRef('type:Callback')} called when the move completes.\n\n",
        name:"AnimationCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"parameter will be passed if the animation was                               cut short by a call to finishAnimation",
                optional:false,
                name:"earlyFinish",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "method:Gauge.setSectorFillColor":{
        ref:"method:Gauge.setSectorFillColor",
        flags:"",
        description:" Sets the fill color of the sector at <code>sectorIndex</code>.\n\n",
        name:"setSectorFillColor",
        seeAlso:[
            {
                ref:"method:DrawItem.setFillColor",
                description:null
            }
        ],
        params:[
            {
                description:"index of the target sector.",
                optional:false,
                name:"sectorIndex",
                defaultValue:null,
                type:"int"
            },
            {
                description:"the new fill color.",
                optional:false,
                name:"fillColor",
                defaultValue:null,
                type:"CSSColor"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:Dialog.defaultWidth":{
        ref:"attr:Dialog.defaultWidth",
        flags:"IR",
        description:null,
        name:"defaultWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"360",
        type:"attr",
        definingClass:"class:Dialog",
        groups:[
            "appearance"
        ]
    },
    "attr:DrawOval.left":{
        ref:"attr:DrawOval.left",
        flags:"IRW",
        description:"Left coordinate in pixels relative to the DrawPane.",
        name:"left",
        setter:[
            "setLeft"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawOval"
    },
    "attr:ListGridField.optionOperationId":{
        ref:"attr:ListGridField.optionOperationId",
        flags:"IR",
        description:"If this field has an optionDataSource specified and\n ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap','autoFetchDisplayMap')} is set, this attribute\n provides a way to customize the ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} passed to\n <code>dataSource.fetchData()</code> when retrieving the display map from the option\n dataSource.",
        name:"optionOperationId",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "group:devConsoleRPCTab":{
        ref:"group:devConsoleRPCTab",
        title:"The Developer Console RPC Tab",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"The \"RPC\" tab of the SmartClient Developer Console allows you to track \n ${isc.DocUtils.linkForRef('class:RPCRequest')}s and ${isc.DocUtils.linkForRef('class:DSRequest')}s sent from your application.  Tracking\n is activated by checking the \"Track RPCs\" box at the top of the tab.\n <p>\n The main \"RPC History\" list shows the transactions that have been sent from your application\n since the session began (since you checked the \"Track RPCs\" box or refreshed your browser,\n whichever happened most recently).  Each entry in the list represents either a server\n roundtrip, a DSRequest to a clientOnly DataSource or a direct request to a webservice.  \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','Request queues')} are shown as separate entries, with the requests\n that made up the queue shown indented beneath it.\n <p>\n Each entry in the RPC History list shows useful diagnostic information, including:\n <ul>\n <li>Whether the request was sent via a server-side proxy</li>\n <li>The URL of the request, or an indication that the request was client-only</li>\n <li>The type of request - ${isc.DocUtils.linkForRef('class:DSRequest')}, ${isc.DocUtils.linkForRef('class:RPCRequest')}, \n    ${isc.DocUtils.linkForRef('class:WSRequest')} or ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','Queue')}</li>\n <li>The DataSource name, operation type and operation ID</li>\n <li>The success/failure status of the request, if it has completed</li>\n <li>Basic timing information</li>\n </ul>\n In addition, clicking an entry in the RPC History list populates the \"Request\" and \"Response\"\n sections with the details of the request.\n <p>\n <h2>Detailed timing/profiling information</h2>\n <P>\n SmartClient and SmartClient Server can gather detailed profiling information for a \n request/response roundtrip, and display it in the Developer Console.  Note, the server-side\n information is only available for DSRequests, and only if you are using the SmartClient \n Server module.  Extra levels of server-side detail are available if you are also using one \n of SmartClient Server's built-in DataSource types (note, at the time of writing this only \n applies to SQLDataSource).  To enable detailed timings:\n <ul>\n <li>Set debug log category \"RpcTabTiming\" to INFO level in \"Logging Preferences\" (see \n     ${isc.DocUtils.linkForRef('group:debugging')} for details)</li>\n <li>If you want to collect details of the server-side processing, either:\n     <ul>\n     <li>Set <code>DSRequest.returnTimingData: true</code> in your ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} \n         file.  This will cause server timing information to be gathered and returned for \n         every DSRequest from every client</li>\n     <li>Enable the built-in RPCs \"areServerTimingsTracked\" and \"trackServerTimings\" via the\n         <code>RPCManager.enabledBuiltinMethods</code> setting of your \n          ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n         file (these builtin RPCs should already be enabled in a development environment). \n         When these built-in RPCs are enabled, server timing data can be switched on and \n         off on a per-client basis, via a checkbox in the Developer Console.</li>\n     </ul> \n </li>\n </ul>\n With these settings in place, an extra \"Timing\" tab appears in the \"Request\" section:\n <p>\n <img src=\"skin/detailedTiming1.png\" width=\"1059px\" height=\"275px\">\n <p>\n The timing data is tree-structured; a node with an opener next to it can be expanded to \n drill into more detail:\n <p>\n <img src=\"skin/detailedTiming2.png\" width=\"1059px\" height=\"701px\">\n <p>\n The following important points apply to the detailed timing information:\n <ul>\n <li>It is meaningless to compare the actual start and end timestamps reported by the client\n     with those reported by the server, because their clocks are unlikely to be exactly \n     synchronized (unless the client and the server are the same physical machine).  The \n     timestamps are the underlying raw data - it is much more meaningful to consider the \n     elapsed times than the timestamps</li>\n <li>The basic timing details reported in the main RPC History list do not correspond to the\n     detailed timing data because the detailed timing data attempts to cover the entire \n     period of the transaction, from the UI event to calling the user callback method.  By \n     contrast, the basic timing data only covers the period from when the request left the \n     client to when the response was received by the client.  The basic timing \"Time Sent\" \n     and \"Elapsed time\" figures correspond to the \"Server roundtrip\" entry in the detailed \n     timing data</li>\n <li>The \"Network time (inferred)\" measurements are informed guesswork.  We calculate the\n     difference between the \"Server turnaround\" time measured by the client and the \"Server\n     processing\" time measured by the server, and apply half of that difference to either side\n     of the \"Server processing\" figure as \"Network time (inferred)\".  Note that this guesswork\n     can easily mean that network timings overlap with server processing timings, even when the \n     client and the server are the same machine</li>\n <li>The \"UI event to DSRequest creation\" timing measures the time from the most recent event \n     to be registered by the EventHandler subsystem, to that of DSRequest creation (and \n     hence, incidentally, is not recorded for RPCRequests).  This is often a meaningful thing\n     to measure, but not always.  If the DSRequest was created programatically during application \n     startup or off the back of a timer, then the most recent UI event clearly had no influence \n     and so measuring the time since it happened has no meaning.  However, most DSRequests \n     <em>are</em> created, directly or indirectly, as a result of a UI event; so even though we \n     can't tell which DSRequests belong to events and which don't, we still provide the figure \n     in the timing data as something that will be \"often useful\"</li>\n </ul>",
        name:"devConsoleRPCTab",
        seeAlso:[
        ],
        type:"group"
    },
    "group:RTL":{
        ref:"group:RTL",
        refs:[
            "classMethod:Page.isRTL",
            "attr:ListGrid.reverseRTLAlign",
            "attr:StatefulCanvas.ignoreRTL",
            "attr:StatefulCanvas.showRTLIcon",
            "attr:StretchImg.ignoreRTL",
            "attr:FormItemIcon.showRTL",
            "attr:FormItem.showRTL"
        ],
        name:"RTL",
        seeAlso:[
        ],
        type:"group"
    },
    "classAttr:Dialog.CONFIRM_TITLE":{
        ref:"classAttr:Dialog.CONFIRM_TITLE",
        flags:"IRW",
        description:"Default title for the dialog displayed in response to the ${isc.DocUtils.linkForRef('classMethod:isc.confirm')} method.\n Note that a custom title can be specified as the <code>title</code> attribute of the\n <code>properties</code> parameter passed to that method.",
        name:"CONFIRM_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Confirm\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:StretchImgButton.showClippedTitleOnHover":{
        ref:"attr:StretchImgButton.showClippedTitleOnHover",
        flags:"IRW",
        description:"If true and the title is clipped, then a hover containing the full title of this button\n is enabled.",
        name:"showClippedTitleOnHover",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "hovers"
        ]
    },
    "method:GridRenderer.cellDoubleClick":{
        ref:"method:GridRenderer.cellDoubleClick",
        flags:"A",
        description:" Called when a cell receives a double click event.\n\n",
        name:"cellDoubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:ToolStripGroup.setTitle":{
        ref:"method:ToolStripGroup.setTitle",
        flags:"",
        description:" Sets the header-text for this group.\n \n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"The new title for this group",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "method:TreeGrid.isOverOpenArea":{
        ref:"method:TreeGrid.isOverOpenArea",
        flags:"",
        description:" Returns true if the last event occurred over the indented area or over the\n open / close icon of a folder node in this TreeGrid. Returns false if the event\n did not occur over a folder node.\n\n",
        name:"isOverOpenArea",
        seeAlso:[
        ],
        returns:{
            description:"true if the user clicked the open icon",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "classMethod:Messaging.send":{
        ref:"classMethod:Messaging.send",
        flags:"",
        description:" Send data to oneor more channels, by sending the data to the server, where it is expected to\n be delivered to any other browser subscribed to the same channel.\n <p>\n <smartclient>\n Data can be any nested structure of primitive types (String, Date, Number) or compound data\n structure consisting of Arrays and Objects containing primitive types.\n </smartclient>\n <smartgwt>\n Data should typically be a String.  To send a complex data type such as a Map to the server,\n use the JSOHelper and ${isc.DocUtils.linkForRef('class:JSONEncoder')} classes to convert any Java objects to a String.\n </smartgwt>\n The optional callback fires when the message has been successfully sent, or if an error\n occurs.\n\n",
        name:"send",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"channels",
                defaultValue:null,
                type:"String | Array of String"
            },
            {
                description:null,
                optional:false,
                name:"data",
                defaultValue:null,
                type:"any"
            },
            {
                description:null,
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"RPCCallback"
            }
        ],
        type:"classMethod",
        definingClass:"class:Messaging",
        groups:[
            "messaging"
        ]
    },
    "attr:EdgedCanvas.edgeOffsetLeft":{
        ref:"attr:EdgedCanvas.edgeOffsetLeft",
        flags:"IRA",
        description:"Amount the contained Canvas should be offset from the left.  Defaults to the size for\n the left edge.  Set smaller to allow the contained Canvas to overlap the edge and\n corner media.",
        name:"edgeOffsetLeft",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "group:baseLine":{
        ref:"group:baseLine",
        refs:[
            "attr:TabBar.baseLineThickness",
            "attr:TabBar.baseLineSrc",
            "attr:TabBar.baseLineCapSize"
        ],
        description:"The baseLine is StretchImg that is placed along the edge of the TabBar that borders on\n the pane, occluding the pane's actual border but matching it exactly.  The selected tab\n is in front of the baseLine, and the rest are behind it.",
        name:"baseLine",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DetailViewer.hiliteIconWidth":{
        ref:"attr:DetailViewer.hiliteIconWidth",
        flags:"IRW",
        description:"Width for hilite icons for this component.\n Overrides ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconSize','hiliteIconSize')}.\n Can be overridden at the field level.",
        name:"hiliteIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "hiliting"
        ]
    },
    "method:Layout.addMembers":{
        ref:"method:Layout.addMembers",
        flags:"",
        description:" Add one or more canvases to the layout, optionally at a specific position.  See\n ${isc.DocUtils.linkForRef('method:Layout.addMember')} for details.\n\n",
        name:"addMembers",
        seeAlso:[
        ],
        params:[
            {
                description:"array of canvases to be added or single Canvas",
                optional:false,
                name:"newMembers",
                defaultValue:null,
                type:"Array of Canvas | Canvas"
            },
            {
                description:"position to add newMembers; if omitted newMembers will be added                            at the last position",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:Slider.thumbThickWidth":{
        ref:"attr:Slider.thumbThickWidth",
        flags:"IRW",
        description:"The dimension of the thumb perpendicular to the slider track.",
        name:"thumbThickWidth",
        setter:[
            "setThumbThickWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"23",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:TreeGrid.folderClosedImage":{
        ref:"attr:TreeGrid.folderClosedImage",
        deprecated:"as part of SmartClient release 5.5 in favor of ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')}",
        flags:"IRW",
        description:"The filename of the default icon for all closed folder nodes in this treeGrid. Use\n the node.icon property (null by default) to specify a custom image for an individual\n folder node. The same custom image will be used for both the open and closed folder\n images.",
        name:"folderClosedImage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "method:TileGrid.getTile":{
        ref:"method:TileGrid.getTile",
        flags:"",
        description:" Returns the tile for the passed record or record index.\n <P>\n Note that this method may be overridden but developers should be aware that this\n method may be called repeatedly for the same record each time the TileGrid refreshes\n that row. If you override this API, you will need to cache and re-use the same\n tile objects per record. Typically this would be achieved by storing a pool of Tile\n objects that are re-used if a Record with the same primaryKey is passed to getTile().\n <P>\n When calling this method directly, if ${isc.DocUtils.linkForRef('attr:TileGrid.showAllRecords')} is false, this may \n return null for records that are not currently visible.\n\n",
        name:"getTile",
        seeAlso:[
        ],
        params:[
            {
                description:"record or index of record in this.data",
                optional:false,
                name:"tile",
                defaultValue:null,
                type:"TileRecord or int"
            }
        ],
        returns:{
            description:"tile for this record",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:TileGrid"
    },
    "method:ListGrid.getDropIndex":{
        ref:"method:ListGrid.getDropIndex",
        flags:"",
        description:" Return the drop-index for a given row and reorderPosition.\n <P>\n When there are no rows in the grid, getDropIndex() returns zero.\n <P>\n If parameter <i>recordNum</i> is not passed, the current event row is used, see\n ${isc.DocUtils.linkForRef('method:ListGrid.getEventRow')}.\n <P>\n Parameter ${isc.DocUtils.linkForRef('type:ReorderPosition','reorderPosition')} indicates where the drop-item should appear\n in relation to the row at index <i>recordNum</i>.  If no reorderPosition is provided, it is\n calculated based on the physical position of the mouse in the drop-target row when the drop\n occurs; if the mouse is in the top half of a row, the drop-index is before\n <i>recordNum</i>.  Otherwise, the drop-index is after <i>recordNum</i>.\n\n",
        name:"getDropIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"Index of the record to drop onto",
                optional:true,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Where to drop in relation to <i>recordNum</i>",
                optional:true,
                name:"reorderPosition",
                defaultValue:null,
                type:"ReorderPosition"
            }
        ],
        returns:{
            description:"The calculated drop-index",
            type:"number"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:IconButton.showMenuIconDisabled":{
        ref:"attr:IconButton.showMenuIconDisabled",
        flags:"IRW",
        description:"Whether to show a Disabled version of the ${isc.DocUtils.linkForRef('attr:IconButton.menuIconSrc','menuIcon')}.",
        name:"showMenuIconDisabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "method:DrawItem.mouseOut":{
        ref:"method:DrawItem.mouseOut",
        flags:"",
        description:" Notification fired when the mouse leaves this DrawItem.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"mouseOut",
        seeAlso:[
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:ListGrid.alternateFieldFrequency":{
        ref:"attr:ListGrid.alternateFieldFrequency",
        flags:"IRW",
        description:"The number of consecutive columns to draw in the same style before alternating, when\n ${isc.DocUtils.linkForRef('attr:GridRenderer.alternateColumnStyles','alternateColumnStyles')} is true.",
        name:"alternateFieldFrequency",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "attr:Button.title":{
        flags:"IRW",
        getter:[
            "getTitle"
        ],
        type:"attr",
        ref:"attr:Button.title",
        description:"The title HTML to display in this button.",
        name:"title",
        setter:[
            "setTitle"
        ],
        valueType:"HTMLString",
        seeAlso:[
        ],
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonStates')}"
        ],
        defaultValue:"\"Untitled Button\"",
        definingClass:"class:Button",
        groups:[
            "basics",
            "i18nMessages"
        ]
    },
    "method:ListGrid.getCellRecord":{
        ref:"method:ListGrid.getCellRecord",
        flags:"A",
        description:" Return the pointer to a particular record by record number.<br>\n Notes:<br>\n - If this is a databound grid, and the record for some row has not yet been loaded,\n   returns the ${isc.DocUtils.linkForRef('classMethod:ResultSet.getLoadingMarker','loading marker')}, and a fetch will be\n   initialized to retrieve the record from the server.<br>\n - If this is a new row in an editable ListGrid, and has not yet been saved, this method will\n   return null.\n",
        name:"getCellRecord",
        seeAlso:[
            {
                ref:"method:ListGrid.getRecord",
                description:null
            },
            {
                ref:"method:ListGrid.getEditedRecord",
                description:null
            }
        ],
        params:[
            {
                description:"row index of record to return.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Record object for the row.",
            type:"ListGridRecord"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Validator.errorMessage":{
        ref:"attr:Validator.errorMessage",
        flags:"IR",
        description:"Text to display if the value does not pass this validation check.\n <P>\n If unspecified, default error messages exist for all built-in validators, and a generic\n message will be used for a custom validator that is not passed.",
        name:"errorMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('conditionallyRequired')}"
        ],
        definingClass:"class:Validator"
    },
    "type:ExpansionMode":{
        ref:"type:ExpansionMode",
        values:[
            {
                description:"Show a single field's value in an ${isc.DocUtils.linkForRef('class:HTMLFlow')}. Field      to use is ${isc.DocUtils.linkForRef('attr:ListGrid.detailField')}.",
                value:"\"detailField\""
            },
            {
                description:"Show a ${isc.DocUtils.linkForRef('class:DetailViewer')} displaying those fields from the      record which are not already displayed in the grid.",
                value:"\"details\""
            },
            {
                description:"Show a separate ${isc.DocUtils.linkForRef('class:ListGrid')} containing related-records.      See ${isc.DocUtils.linkForRef('attr:ListGridRecord.detailDS')} and ${isc.DocUtils.linkForRef('attr:ListGrid.recordDetailDSProperty')} for\n      more information.",
                value:"\"related\""
            },
            {
                description:"Show a ${isc.DocUtils.linkForRef('class:DynamicForm')} to edit those fields from the      record which are not already present in the grid.  If the record is collapsed with\n      unsaved changes and ${isc.DocUtils.linkForRef('attr:ListGrid.expansionEditorShowSaveDialog')} is not set, Edits\n      will be saved automatically, or stored as ${isc.DocUtils.linkForRef('group:editing','editValues')} if\n      ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')} is false.  Otherwise, a confirmation dialog is\n      displayed.  Can optionally show a\n      ${isc.DocUtils.linkForRef('attr:ListGrid.showExpansionEditorSaveButton','save button')} and\n      ${isc.DocUtils.linkForRef('attr:ListGrid.expansionEditorCollapseOnSave','auto-collapse')} when save is pressed.\n      If a record fails validation on save and the field in question is not visible in\n      the grid, the record is automatically expanded and validated to show the errors.",
                value:"\"editor\""
            },
            {
                description:"Show a ${isc.DocUtils.linkForRef('class:DetailViewer')} displaying those fields      from the record not already displayed in the grid, together with a separate\n      ${isc.DocUtils.linkForRef('class:ListGrid')} containing related-records.",
                value:"\"detailRelated\""
            }
        ],
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords','canExpandRecords')} is true, ExpansionMode\n dictates the type of UI to be displayed in the expanded portion of the row.\n <P>\n There are a number of builtin ExpansionModes and you can override\n ${isc.DocUtils.linkForRef('method:ListGrid.getExpansionComponent','getExpansionComponent()')} to create your own\n expansion behaviors.",
        name:"ExpansionMode",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "expansionField"
        ]
    },
    "attr:Tree.parentIdField":{
        ref:"attr:Tree.parentIdField",
        flags:"IRA",
        description:"For trees with modelType \"parent\", this property specifies the name of the property\n that contains the unique parent ID of a node.  Default value is \"parentId\".  See\n ${isc.DocUtils.linkForRef('attr:TreeNode.parentId')} for usage.",
        name:"parentIdField",
        seeAlso:[
            {
                ref:"attr:TreeNode.parentId",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"parentId\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:Tree"
    },
    "attr:ListGrid.fieldState":{
        ref:"attr:ListGrid.fieldState",
        flags:"IRW",
        getter:[
            "getFieldState"
        ],
        description:"Initial ${isc.DocUtils.linkForRef('type:ListGridFieldState','field state')} for the grid.\n <p>\n ${isc.DocUtils.linkForRef('attr:ListGrid.viewState')} can be used to initialize all view properties of the grid.\n When doing so, <code>fieldState</code> is not needed because <code>viewState</code>\n includes it as well. If both are provided, <code>fieldState</code> has priority for\n field state.\n <smartclient>\n <P>\n To retrieve current state call ${isc.DocUtils.linkForRef('method:ListGrid.getFieldState','getFieldState')}.\n </smartclient>",
        name:"fieldState",
        setter:[
            "setFieldState"
        ],
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "method:Canvas.getVisibleWidth":{
        ref:"method:Canvas.getVisibleWidth",
        flags:"A",
        description:"      Return the visible width of the Canvas.\n\n",
        name:"getVisibleWidth",
        seeAlso:[
        ],
        returns:{
            description:"visible width in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:FacetChart.getSimpleLinearRegressionFunction":{
        ref:"method:FacetChart.getSimpleLinearRegressionFunction",
        flags:"",
        description:" For scatter plots only, get a Function from the specified independent variable X to the\n specified dependent variable Y that defines the line that best fits the data.\n See <a href=\"http://en.wikipedia.org/wiki/Simple_linear_regression\">http://en.wikipedia.org/wiki/Simple_linear_regression</a>.\n",
        name:"getSimpleLinearRegressionFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of an inlined facet value to use as the independent variable. Defaults to the ${isc.DocUtils.linkForRef('attr:FacetChart.xAxisMetric','x-axis metric')}.",
                optional:true,
                name:"xMetric",
                defaultValue:null,
                type:"String"
            },
            {
                description:"ID of an inlined facet value to use as the dependent variable. Defaults to the ${isc.DocUtils.linkForRef('attr:FacetChart.yAxisMetric','y-axis metric')}.",
                optional:true,
                name:"yMetric",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "classMethod:Browser.setIsTablet":{
        ref:"classMethod:Browser.setIsTablet",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')} to allow this global variable to be changed at runtime.\n This advanced method is provided to override SmartClient's detection of devices, since the\n framework can only detect devices that existed at the time the platform was released. Any\n changes to ${isc.DocUtils.linkForRef('classAttr:Browser.isDesktop')}, ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')}, or ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}\n must be made before any component is created.\n <p>\n Note that setting <code>Browser.isTablet</code> might affect the values of\n ${isc.DocUtils.linkForRef('classAttr:Browser.isDesktop')} and ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')}.\n\n",
        name:"setIsTablet",
        seeAlso:[
        ],
        params:[
            {
                description:"new setting for <code>Browser.isTablet</code>.",
                optional:false,
                name:"isTablet",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Browser"
    },
    "method:CanvasItem.setCanvas":{
        ref:"method:CanvasItem.setCanvas",
        flags:"",
        description:" Setter to update the ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')} at runtime\n",
        name:"setCanvas",
        seeAlso:[
        ],
        params:[
            {
                description:"New canvas to display.",
                optional:false,
                name:"canvas",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:CanvasItem"
    },
    "method:Class.logIsInfoEnabled":{
        ref:"method:Class.logIsInfoEnabled",
        flags:"",
        description:" Check whether a message logged at \"info\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsInfoEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "group:dynamicString":{
        ref:"group:dynamicString",
        refs:[
        ],
        name:"dynamicString",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:OperationBinding.allowMultiUpdate":{
        ref:"attr:OperationBinding.allowMultiUpdate",
        flags:"IR",
        description:"Ordinarily, \"update\" and \"remove\" operations are only allowed for ${isc.DocUtils.linkForRef('class:DataSource')}s\n that have a ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')}, and all primary key values\n are present in the request.  This is because an update of a DataSource with no primary key, \n or an update request that has missing primary key values, cannot be guaranteed to affect \n only one record.\n <p>\n Setting this property on an operationBinding circumvents this restriction for that operation\n only.\n <p>\n <b>Warning:</b> Be aware that this is a potentially dangerous setting and should be used\n with care.  With this flag set, you have no guarantee that an update will not change or \n remove every row in a table.\n <p>\n Also, running <code>allowMultiUpdate</code> operations directly from the client is not \n straightforward because it requires the ability to specify criteria and values separately\n in the request, which is not currently supported.  This can be worked around in various\n ways, but really <code>allowMultiUpdate</code> is primarily intended for server-side \n operations.  Therefore, the recommended pattern is to use a \n ${isc.DocUtils.linkForRef('method:DataSource.performCustomOperation','custom operation')} from the client to invoke a DMI on\n the server which performs the multi-update operation via a second, server-side DSRequest.",
        name:"allowMultiUpdate",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "method:Canvas.setContents":{
        ref:"method:Canvas.setContents",
        flags:"",
        description:" Changes the contents of a widget to newContents, an HTML string.\n <P>\n When ${isc.DocUtils.linkForRef('attr:Canvas.dynamicContents','dynamicContents')} is set, <code>setContents()</code> can\n also be called with no arguments to cause contents to be re-evaluated.\n\n",
        name:"setContents",
        seeAlso:[
        ],
        params:[
            {
                description:"an HTML string to be set as the contents of this widget",
                optional:true,
                name:"newContents",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('setContents')}"
        ],
        definingClass:"class:Canvas"
    },
    "object:validatorDefinition":{
        methods:[
            "method:validatorDefinition.condition",
            "method:validatorDefinition.action"
        ],
        ref:"object:validatorDefinition",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Validator"
        ],
        attrs:[
            "attr:validatorDefinition.type",
            "attr:validatorDefinition.requiresServer",
            "attr:validatorDefinition.defaultErrorMessage"
        ],
        description:"Validator definition for a built-in ${isc.DocUtils.linkForRef('attr:Validator.type')}.",
        name:"validatorDefinition",
        seeAlso:[
        ],
        type:"object"
    },
    "type:DataPath":{
        ref:"type:DataPath",
        description:"String specifying a nested data field structure.\n <P>\n Each dataPath string is a slash-delimited set of field identifiers, for example\n <code>\"id1/id2/id3\"</code>. DataPaths may be applied directly to a\n ${isc.DocUtils.linkForRef('attr:Canvas.dataPath','component')}, and/or to a databound component field specification.\n A datapath denotes a path to a nested field value in a hierarchical structure, giving\n developers the opportunity to easily view or edit nested data structures.\n Specifically:\n <ul><li>if the component is viewing or editing a record, the value for fields \n         will be derived from a nested structure of records</li>\n     <li>if the component is bound to a dataSource, field attributes may be picked up by\n         following the dataPath to a field definition on another dataSource</li></ul>\n <b>Examples:</b><br>\n If a dynamicForm is defined with the following fields:\n <pre>\n    [\n      { name:\"name\" },\n      { name:\"street\", dataPath:\"address/street\" }\n    ]\n </pre>\n If the <code>\"name\"</code> field is set to <i>\"Joe Smith\"</i> and the <code>\"street\"</code> field\n is set to <i>\"1221 High Street\"</i>, when the values for this form are retrieved via a\n <code>getValues()</code> call they will return an object in the following format:\n <pre>\n    {name:\"Joe Smith\", address:{street:\"1221 High Street\"}}\n </pre>\n <P>\n For databound components, dataPath also provides a way to pick up field attributes from nested\n dataSources. Given the following dataSource definitions:\n <pre>\n  isc.DataSource.create({\n      ID:\"contacts\",\n      fields:[\n          {name:\"name\"},\n          {name:\"email\"},\n          {name:\"organization\"},\n          {name:\"phone\"},\n          {name:\"address\", type:\"Address\"}\n      ]\n  });\n \n  isc.DataSource.create({\n      ID:\"Address\",\n      fields:[\n          {name:\"street\"},\n          {name:\"city\"},\n          {name:\"state\"},\n          {name:\"zip\"}\n      ]\n  });\n  </pre>\n and a databound component bound to the 'contacts' dataSource, specifying a field with a dataPath\n of <code>\"address/street\"</code> would ensure the field attributes were derived from the \n \"street\" field of the 'Address' dataSource.\n <P>\n dataPaths are also cumulative. In other words if a component has a specified dataPath, \n the dataPath of any fields it contains will be appended to that component level path when\n accessing data. For example the following form:\n <pre>\n isc.DynamicForm.create({\n     dataPath:\"contact\",\n     fields:[\n          {dataPath:\"address/email\"}\n     ]\n });\n </pre>\n Might be used to edit a data structure similar to this:\n <pre>{contact:{name:'Ed Jones', address:{state:\"CA\", email:\"ed@ed.jones.com\"}}}</pre>\n Nested canvases can also have dataPaths specified, which will similarly be combined. See\n the ${isc.DocUtils.linkForRef('attr:Canvas.dataPath')} attribute for more information and examples of this.",
        name:"DataPath",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:DataSource.allowClientRequestedSummaries":{
        ref:"attr:DataSource.allowClientRequestedSummaries",
        flags:"IR",
        description:"If a ${isc.DocUtils.linkForRef('class:DSRequest')} arrives from the client that requests\n ${isc.DocUtils.linkForRef('group:serverSummaries','server-calculated summaries')}, should it be allowed?\n <p>\n Note this setting <b>only</b> affects <code>dsRequests</code> that come from the browser (or\n another client).  This setting has no effect on server summaries declared in .ds.xml files or\n summaries configured in DSRequests created programmatically on the server side, which are\n always allowed.\n <p>\n Default value of null means this DataSource will use the system-wide default, which is set via\n <code>datasources.allowClientRequestedSummaries</code> in\n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}, and defaults to allowing client-requested\n summaries.\n <p>\n If client-requested summarization is allowed, but the server-side &lt;operationBinding&gt;\n provides specific summarization settings, the client-requested summarization is ignored.",
        name:"allowClientRequestedSummaries",
        seeAlso:[
            {
                ref:"attr:DataSourceField.allowClientRequestedSummaries",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "serverSummaries"
        ]
    },
    "method:FormItem.getErrorHTML":{
        ref:"method:FormItem.getErrorHTML",
        flags:"A",
        description:" Output the HTML for an error message in a form element. Default behavior respects\n ${isc.DocUtils.linkForRef('attr:FormItem.showErrorIcon')} and ${isc.DocUtils.linkForRef('attr:FormItem.showErrorText')} as described in the\n documentation for those attributes.\n",
        name:"getErrorHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"error message string or array of error messages",
                optional:false,
                name:"error",
                defaultValue:null,
                type:"string | array of string"
            }
        ],
        returns:{
            description:"HTML to display the error",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:IconButton.showMenuIconOver":{
        ref:"attr:IconButton.showMenuIconOver",
        flags:"IRW",
        description:"Whether to show an Over version of the ${isc.DocUtils.linkForRef('attr:IconButton.menuIconSrc','menuIcon')}.",
        name:"showMenuIconOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:SelectItem.optionFilterContext":{
        ref:"attr:SelectItem.optionFilterContext",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code>, and this property is\n not null, this will be passed to the datasource as ${isc.DocUtils.linkForRef('class:DSRequest')} properties when\n performing the filter operation on the dataSource to obtain the set of options for the\n list.",
        name:"optionFilterContext",
        seeAlso:[
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:UserTask.wizard":{
        ref:"attr:UserTask.wizard",
        flags:"IR",
        description:"If wizard is set then associated form will be hidden after user goes to next or prev\n step of current workflow.",
        name:"wizard",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "attr:ListGrid.advancedFieldPickerThreshold":{
        ref:"attr:ListGrid.advancedFieldPickerThreshold",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.useAdvancedFieldPicker')} is set, total number of available fields that must be\n present in the grid before the advanced field picker interface is used instead of the normal\n columns submenu.\n <P>\n Set to 0 to have the advanced picker always used (when useAdvancedFieldPicker is true).",
        name:"advancedFieldPickerThreshold",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"25",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGridField.canSortClientOnly":{
        ref:"attr:ListGridField.canSortClientOnly",
        flags:"IRW",
        description:"When true, this field can only be used for sorting if the data is entirely client-side.",
        name:"canSortClientOnly",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:CheckboxItem.showTitle":{
        ref:"attr:CheckboxItem.showTitle",
        flags:"IR",
        description:"CheckboxItem has special behavior for titles, see ${isc.DocUtils.linkForRef('attr:CheckboxItem.labelAsTitle')}.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CheckboxItem"
    },
    "method:ListGrid.getSelectedRecords":{
        ref:"method:ListGrid.getSelectedRecords",
        flags:"",
        description:" Returns all selected records in this grid.\n <p>\n <strong>NOTE:</strong> Records in the returned array should be treated as read-only and not\n modified.\n",
        name:"getSelectedRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"When true, partially selected records will not be returned.                                   Otherwise, both fully and partially selected records are\n                                   returned.",
                optional:true,
                name:"excludePartialSelections",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"array of selected records, which will be empty if no record is selected.",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Scrollbar.allowThumbOverState":{
        ref:"attr:Scrollbar.allowThumbOverState",
        flags:"IRA",
        description:"If true, the thumb's appearance changes when the user rolls over it.",
        name:"allowThumbOverState",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "thumb"
        ]
    },
    "attr:MultiGroupPanel.deleteLevelButtonTitle":{
        ref:"attr:MultiGroupPanel.deleteLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the deleteLevelButton",
        name:"deleteLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Delete Level\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TabSet.getTabNumber":{
        ref:"method:TabSet.getTabNumber",
        flags:"",
        description:" Get the index of a tab, from the tab, tab ID or tab name.  If passed a number, just returns it.\n",
        name:"getTabNumber",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"number | ID | name | tab"
            }
        ],
        returns:{
            description:"the index of the tab, or -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:PortalLayout.willAcceptPortletDrop":{
        ref:"method:PortalLayout.willAcceptPortletDrop",
        flags:"A",
        description:" <p>Returns true if the dragged ${isc.DocUtils.linkForRef('class:Portlet')}, or other component, can be dropped onto\n this <code>PortalLayout</code> (other components would be auto-wrapped in a <code>Portlet</code>).</p>\n\n <p>The default implementation acts like ${isc.DocUtils.linkForRef('method:Canvas.willAcceptDrop')}, except applying\n ${isc.DocUtils.linkForRef('attr:PortalLayout.portletDropTypes','portletDropTypes')} rather than ${isc.DocUtils.linkForRef('attr:PortalLayout.dropTypes','dropTypes')}.\n You can subclass to apply other (or additional) criteria</p>\n\n",
        name:"willAcceptPortletDrop",
        seeAlso:[
            {
                ref:"attr:Canvas.dragType",
                description:null
            },
            {
                ref:"attr:PortalLayout.portletDropTypes",
                description:null
            },
            {
                ref:"method:PortalLayout.portletsChanged",
                description:null
            }
        ],
        returns:{
            description:"true if the ${isc.DocUtils.linkForRef('class:Portlet')} or other component being dragged can be dropped on this PortalLayout,                      false otherwise",
            type:"boolean"
        },
        params:[
            {
                description:"The ${isc.DocUtils.linkForRef('class:Portlet')}, or other component, being dragged",
                optional:false,
                name:"dragTarget",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"indicates which column the portlet would be dropped on.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"indicates the row number being dropped on.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Drop position within an existing row. If the dropPosition   is null, then that means that a new row will be created.",
                optional:true,
                name:"dropPosition",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout",
        groups:[
            "dragdrop"
        ]
    },
    "group:rpcPrompt":{
        ref:"group:rpcPrompt",
        refs:[
            "classAttr:RPCRequest.useCursorTracker",
            "classAttr:RPCManager.defaultPrompt",
            "classAttr:RPCManager.promptStyle",
            "classAttr:RPCManager.useCursorTracker",
            "classAttr:RPCManager.promptCursor",
            "classAttr:RPCManager.showPrompt",
            "classAttr:RPCManager.promptDelay",
            "attr:RPCRequest.promptStyle",
            "attr:RPCRequest.promptCursor",
            "attr:RPCRequest.prompt",
            "attr:RPCRequest.showPrompt",
            "attr:RPCRequest.promptDelay"
        ],
        description:"The properties in this group all deal with setting and styling a modal prompt during an RPC\n call to the server.",
        name:"rpcPrompt",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DynamicForm.setErrors":{
        ref:"method:DynamicForm.setErrors",
        flags:"A",
        description:" Setter for validation errors on this form. Errors passed in should be a Javascript object\n of the format<br>\n <code>{fieldName1:errors, fieldName2:errors}</code><br>\n Where the <code>errors</code> value may be either a string (single error message) or an\n array of strings (if multiple errors should be applied to the field in question).\n",
        name:"setErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"list of errors as an object with the field names as keys",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"object"
            },
            {
                description:"If true redraw form to display errors now. Otherwise errors can be displayed by calling\n      ${isc.DocUtils.linkForRef('method:DynamicForm.showErrors')}<br>\n      Note: When the errors are shown, \n      ${isc.DocUtils.linkForRef('method:DynamicForm.handleHiddenValidationErrors','handleHiddenValidationErrors()')} will\n      be fired for errors on hidden fields, or with no associated formItem.",
                optional:false,
                name:"showErrors",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "classMethod:Page.getSkinDir":{
        ref:"classMethod:Page.getSkinDir",
        flags:"",
        description:"\t\tReturn the directory for media that's part of the skin\n\n",
        name:"getSkinDir",
        seeAlso:[
        ],
        returns:{
            description:"base URL for skin media",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "method:ListGrid.groupByComplete":{
        ref:"method:ListGrid.groupByComplete",
        flags:"",
        description:" Callback fired when the listGrid is grouped or ungrouped.\n <P>\n Unlike ${isc.DocUtils.linkForRef('method:ListGrid.handleGroupBy')}, this notification will fire when grouping\n is complete, and the ${isc.DocUtils.linkForRef('attr:ListGrid.groupTree')} has been updated to reflect the\n grouped data.\n\n",
        name:"groupByComplete",
        seeAlso:[
        ],
        params:[
            {
                description:"ListGrid field names by which the grid is now  grouped. If the user is ungrouping the fields, this parameter will be an\n  empty array.",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.getSelectedCellData":{
        ref:"method:ListGrid.getSelectedCellData",
        flags:"",
        description:" Returns the selected cells as a series of Records where each field value is stored under\n it's offset from the top-left of the selection.  For example, a 2x2 cell selection starting\n from the first column would return two Records, each with two values stored under the names\n \"0\" and \"1\".\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is not enabled, this API always returns null.\n\n",
        name:"getSelectedCellData",
        seeAlso:[
        ],
        returns:{
            description:"list of Records as described above",
            type:"RecordList"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.clearSortFieldText":{
        ref:"attr:ListGrid.clearSortFieldText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid, this\n attribute will be shown as the menu item title to clear an existing sort on this field.",
        name:"clearSortFieldText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Clear Sort\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:RPCResponse.STATUS_UPDATE_WITHOUT_PK_ERROR":{
        ref:"classAttr:RPCResponse.STATUS_UPDATE_WITHOUT_PK_ERROR",
        flags:"R",
        description:"Indicates that the client attempted an update or remove operation without providing \n primary key field(s)",
        name:"STATUS_UPDATE_WITHOUT_PK_ERROR",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-9",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "method:DrawOval.moveBy":{
        ref:"method:DrawOval.moveBy",
        flags:"",
        description:" Move the drawOval by the specified delta\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of pixels to move horizontally",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"number of pixels to move vertically",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "method:ListGrid.setDontAutoDestroyComponent":{
        ref:"method:ListGrid.setDontAutoDestroyComponent",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} is true, by default any created record components\n are destroyed once they are no longer in use (for example, if the ListGrid as a whole is\n destroyed).  This method may be used to suppress this behavior for some component. Typical\n usage might call this method as part of ${isc.DocUtils.linkForRef('method:ListGrid.createRecordComponent')} to suppress\n this behavior.\n",
        name:"setDontAutoDestroyComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"component in question.",
                optional:false,
                name:"component",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"If true, the component will not be destroyed automatically when   the grid is destroyed",
                optional:false,
                name:"dontAutoDestroy",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Applet.mayScript":{
        ref:"attr:Applet.mayScript",
        flags:"IR",
        description:"Usable only in IE: if true allows Java->JS LiveConnect (other platforms that support\n  LiveConnect have it enabled by default and do not allow it to be disabled).",
        name:"mayScript",
        seeAlso:[
            {
                ref:"attr:Applet.scriptable",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        platformNotes:"Relevant on IE only.",
        definingClass:"class:Applet"
    },
    "object:ListGridRecord":{
        methods:[
        ],
        ref:"object:ListGridRecord",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:ListGridRecord.enabled",
            "attr:ListGridRecord.canExpand",
            "attr:ListGridRecord._canRemove",
            "attr:ListGridRecord.isSeparator",
            "attr:ListGridRecord.customStyle",
            "attr:ListGridRecord._baseStyle",
            "attr:ListGridRecord.singleCellValue",
            "attr:ListGridRecord.canDrag",
            "attr:ListGridRecord.canAcceptDrop",
            "attr:ListGridRecord.linkText",
            "attr:ListGridRecord.canSelect",
            "attr:ListGridRecord._canEdit",
            "attr:ListGridRecord.backgroundComponent",
            "attr:ListGridRecord.detailDS",
            "attr:ListGridRecord.includeInSummary",
            "attr:ListGridRecord.isGridSummary",
            "attr:ListGridRecord.isGroupSummary"
        ],
        description:"A ListGridRecord is a JavaScript Object whose properties contain values for each\n ${isc.DocUtils.linkForRef('object:ListGridField')}.  A ListGridRecord may have additional properties which affect the\n record's appearance or behavior, or which hold data for use by custom logic or other,\n related components.\n <p>\n For example a ListGrid that defines the following fields:\n <pre>\n fields : [\n     {name: \"field1\"},\n     {name: \"field2\"}\n ],\n </pre>\n Might have the following data:\n <pre>\n data : [\n     {field1: \"foo\", field2: \"bar\", customProperty:5},\n     {field1: \"field1 value\", field2: \"field2 value\", enabled:false}\n ]\n </pre>\n Each line of code in the <code>data</code> array above creates one JavaScript Object via\n JavaScript {type:ObjectLiteral,object literal} notation.  These JavaScript Objects are\n used as ListGridRecords.\n <P>\n Both records shown above have properties whose names match the name property of a\n ListGridField, as well as additional properties.  The second record will be disabled due to\n <code>enabled:false</code>; the first record has a property \"customProperty\" which will\n have no effect by default but which may be accessed by custom logic.\n <P>\n After a ListGrid is created and has loaded data, records may be accessed via\n ${isc.DocUtils.linkForRef('attr:ListGrid.data')}, for example, listGrid.data.get(0) retrieves the first record.\n ListGridRecords are also passed to many events, such as\n ${isc.DocUtils.linkForRef('method:ListGrid.cellClick','cellClick()')}.\n <P>\n A ListGridRecord is always an ordinary JavaScript Object regardless of how the grid's\n dataset is loaded (static data, java server, XML web service, etc), and so supports the\n normal behaviors of JavaScript Objects, including accessing and assigning to properties\n via dot notation:\n <pre>\n     var fieldValue = record.<i>fieldName</i>;\n     record.<i>fieldName</i> = newValue;\n </pre>\n <P>\n Note however that simply assigning a value to a record won't cause the display to be\n automatically refreshed - ${isc.DocUtils.linkForRef('method:ListGrid.refreshCell')} needs to be called.  Also,\n consider ${isc.DocUtils.linkForRef('group:editing','editValues vs saved values')} when directly modifying\n ListGridRecords.\n <P>\n See the attributes in the API tab for the full list of special properties on\n ListGridRecords that will affect the grid's behavior.",
        name:"ListGridRecord",
        seeAlso:[
            {
                ref:"attr:ListGrid.data",
                description:null
            }
        ],
        type:"object",
        inheritsFrom:"Record"
    },
    "method:Array.set":{
        ref:"method:Array.set",
        flags:"",
        description:" Change the array element at a particular position.\n <P>\n set() can be used to expand the length of the list.\n\n",
        name:"set",
        seeAlso:[
        ],
        params:[
            {
                description:"position in the list to change",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new value for that position",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"whatever's at that position, null if not found",
            type:"object"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "type:Overflow":{
        ref:"type:Overflow",
        values:[
            {
                description:"Content that extends beyond the widget's width or height is                              displayed.\n                              Note: To have the content be sized only by the drawn size of\n                              the content set the overflow to be Canvas.VISIBLE and specify\n                              a small size, allowing the size to expand to the size required\n                              by the content.\n                              Leaving the width / height for the widget undefined will use the\n                              default value of 100, and setting the size to zero may cause the\n                              widget not to draw.",
                value:"Canvas.VISIBLE"
            },
            {
                description:"Content that extends beyond the widget's width or height is                              clipped (hidden).",
                value:"Canvas.HIDDEN"
            },
            {
                description:"Horizontal and/or vertical scrollbars are displayed only if                              necessary. Content that extends beyond the remaining visible\n                              area is clipped.",
                value:"Canvas.AUTO"
            },
            {
                description:"Horizontal and vertical scrollbars are always drawn inside the                              widget. Content that extends beyond the remaining visible area\n                              is clipped, and can be accessed via scrolling.",
                value:"Canvas.SCROLL"
            },
            {
                description:"Clip horizontally but extend the canvas's clip region                              vertically if necessary.",
                value:"Canvas.CLIP_H"
            },
            {
                description:"Clip vertically but extend the canvas's clip region                              horizontally if necessary.",
                value:"Canvas.CLIP_V"
            }
        ],
        description:null,
        name:"Overflow",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "sizing"
        ]
    },
    "attr:ImgButton.title":{
        ref:"attr:ImgButton.title",
        flags:"IRW",
        getter:[
            "getTitle"
        ],
        description:"The title HTML to display in this button.",
        name:"title",
        setter:[
            "setTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "basics"
        ]
    },
    "attr:AdvancedHiliteEditor.filterGroupTitle":{
        ref:"attr:AdvancedHiliteEditor.filterGroupTitle",
        flags:"IR",
        description:"The title for the Filter group.",
        name:"filterGroupTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Filter\"",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:SectionItem.defaultValue":{
        ref:"attr:SectionItem.defaultValue",
        flags:"IRW",
        description:"Section items show their <code>value</code> as title text for the section.\n Therefore the simplest way to specify this text on the form item directly is via the\n <code>defaultValue</code> attribute.",
        name:"defaultValue",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Section Header\"",
        type:"attr",
        definingClass:"class:SectionItem"
    },
    "method:ListGrid.selectionUpdated":{
        ref:"method:ListGrid.selectionUpdated",
        flags:"",
        description:" Called when selection changes. Note this method fires exactly once for any given\n change unlike the ${isc.DocUtils.linkForRef('method:ListGrid.selectionChanged','selectionChanged')} event.\n <P>\n This event is fired once after selection/deselection has completed. The result is\n one event per mouse-down event. For a drag selection there will be two events fired:\n one when the first record is selected and once when the range is completed.\n <P>\n This event is also fired when selection is updated by a direct call to one of the\n DataBoundComponent select/deselect methods. Calls on the ${isc.DocUtils.linkForRef('class:Selection')} object\n <b>do not</b> trigger this event.\n\n",
        name:"selectionUpdated",
        seeAlso:[
        ],
        params:[
            {
                description:"first selected record, if any",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            },
            {
                description:"List of records that are now selected",
                optional:false,
                name:"recordList",
                defaultValue:null,
                type:"Array of Object"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "classAttr:Canvas.TAB_INDEX_FLOOR":{
        ref:"classAttr:Canvas.TAB_INDEX_FLOOR",
        flags:"R",
        description:"Specifies the lower limit for automatically assigned tab indices for focusable canvii.",
        name:"TAB_INDEX_FLOOR",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"1000",
        type:"classAttr",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:MultiGroupDialog.deleteLevelButtonTitle":{
        ref:"attr:MultiGroupDialog.deleteLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the deleteLevelButton\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiGroupPanel for i18n.",
        name:"deleteLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Delete Level\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TileLayout.overflow":{
        ref:"attr:TileLayout.overflow",
        flags:"IRW",
        description:"Normal ${isc.DocUtils.linkForRef('type:Overflow')} settings can be used on TileLayouts, for example, an\n overflow:auto TileLayout will scroll if members exceed its specified size, whereas an\n overflow:visible TileLayout will grow to accommodate members.",
        name:"overflow",
        seeAlso:[
        ],
        valueType:"Overflow",
        defaultValue:"\"auto\"",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:Canvas.htmlElement":{
        ref:"attr:Canvas.htmlElement",
        flags:"IRWA",
        description:"If specified as a pointer to an HTML element present in the DOM, this canvas will be\n rendered inside that element on ${isc.DocUtils.linkForRef('method:Canvas.draw','draw()')}.\n <P>\n <i>NOTES:</i><br>\n This feature is intended for temporary integration with legacy page architectures only;\n the native browser's reaction to DOM insertion is unspecified and unsupported. For\n consistent cross-browser layout and positioning semantics, use Canvas parents\n (especially Layouts) and use absolute positioning at top level.\n <P>\n Persistence of htmlElement: If ${isc.DocUtils.linkForRef('attr:Canvas.htmlPosition')} is set to <code>\"replace\"</code>\n the htmlElement will be removed from the DOM when the canvas is drawn - therefore the\n htmlElement attribute will be cleared at this time.\n Otherwise if a Canvas is clear()d and then draw()n again it will\n be rendered inside the same htmlElement.<br>\n If a Canvas is added as a child to Canvas parent, its htmlElement will be dropped.\n <P>\n ${isc.DocUtils.linkForRef('attr:Canvas.position')} should typically be set to <code>\"relative\"</code> if the widget\n is to be rendered inline within a standard page.",
        name:"htmlElement",
        setter:[
            "setHtmlElement"
        ],
        seeAlso:[
        ],
        valueType:"DOMElement",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "htmlElement",
            "positioning"
        ]
    },
    "group:unsavedRecords":{
        ref:"group:unsavedRecords",
        title:"Handling Unsaved Records",
        refs:[
        ],
        description:"APIs such as ${isc.DocUtils.linkForRef('method:ListGrid.startEditingNew','startEditingNew()')} or\n ${isc.DocUtils.linkForRef('attr:ListGrid.listEndEditAction','listEndEditAction:\"next\"')} allow editing records that have not\n been saved to the server.  These unsaved records are special in several ways:\n <ul>\n <li> there is no actual Record object in the dataset for them: <code>getRecord(rowNum)</code>\n will return null, instead, <code>getEditValues(rowNum)</code> allows access to field values for\n the unsaved record\n <li> rows for editing these records always appear at the end of the grid and do not sort with\n other rows\n <li> because unsaved records lack an actual Record object and lack a\n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey')} value, they have limited functionality: they cannot be\n selected, and do not support ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} and certain other features.\n </ul>\n <P>\n If you need to work with unsaved records and have all ListGrid features apply to them, this is\n usually a sign that you should re-think your UI for adding new records.  Consider the following\n approaches - which works best will depend on the application:\n <ul>\n <li> actually save a new record to persistent storage, then start editing it.  This has the\n advantage that the user will never lose data by exiting the application with unsaved\n records, which can be important if there is a lot of data entry before the record is ready to\n save (for example, a new issue report in an issue-tracking applications, or a new blog entry).\n This is also a good approach if the user may want to get a unique ID for the new record\n right away (again useful for a new issue report or blog entry).\n <P>\n If values for several fields are required before the record should be visible on other screens\n or to other users, you can add a field to the record to flag it as incomplete so that it is not\n shown on other screens.  Alternatively, require certain fields to be entered via an external\n form or dialog before the record is added to the grid.\n <P>\n Saving a new record and editing it can be done via ${isc.DocUtils.linkForRef('method:DataSource.addData')} followed by a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.startEditing')} once the record has been saved.\n <li> edit new records via a separate ${isc.DocUtils.linkForRef('class:DynamicForm','form')} instead, possibly in a modal\n ${isc.DocUtils.linkForRef('class:Window')} - then unsaved records never need to be shown in the grid.  Similar to the\n approach above, this modal form might have only certain minimum fields to make a valid\n new record, then further editing could continue in the grid.\n <li> use a ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly DataSource')} so that records can be saved\n immediately without contacting the server.  This is a good approach if several unsaved records\n need to be manipulated by multiple components before they are finally saved.\n <li> use ${isc.DocUtils.linkForRef('method:DataSource.updateCaches')} with an \"add\" DSResponse to cause a new record to be\n added to the grid due to ${isc.DocUtils.linkForRef('class:ResultSet','automatic cache synchronization')}.  At this point the\n grid will believe the record exists on the server and it will be treated like any other saved\n record.  This means your server code will need to handle the fact that the ListGrid will submit\n \"update\" DSRequests for any subsequent edits.\n </ul>\n <b>NOTE about validation:</b> by design, SmartClient assumes that any record that has been\n saved is valid and does not validate field values that appear in records loaded from the\n server.  This includes records added to a clientOnly DataSource via\n ${isc.DocUtils.linkForRef('method:DataSource.setCacheData')} as well as records added due to a call to\n ${isc.DocUtils.linkForRef('method:DataSource.updateCaches')}.\n <P>\n Usually the best approach is to avoid this situation by editing such records in a form or other\n control until they are valid rather than showing invalid records in a grid.  However, if such\n records need to be considered invalid, one approach is to take field values and add them as\n editValues via ${isc.DocUtils.linkForRef('method:ListGrid.setEditValues')}.  At this point the ListGrid will consider the\n values as user edits and will validate them.",
        name:"unsavedRecords",
        seeAlso:[
        ],
        type:"group"
    },
    "method:PortalLayout.getDropPortlet":{
        ref:"method:PortalLayout.getDropPortlet",
        flags:"",
        description:" This method is called when the user drops components into the rows or columns of this\n PortalLayout.\n <P>\n Overriding this method allows you to modify drop behaviour when creating or reordering\n portlets via drag & drop. You can return the dragTarget for the standard behavior, \n or null to cancel the drop.\n <P>\n Otherwise, return the component you want to be dropped (as for ${isc.DocUtils.linkForRef('method:Layout.getDropComponent')}).\n You will generally want to return a ${isc.DocUtils.linkForRef('class:Portlet')} or subclass. However, you can return\n any ${isc.DocUtils.linkForRef('class:Canvas')}, and it will automatically be wrapped in a Portlet if necessary.\n",
        name:"getDropPortlet",
        seeAlso:[
            {
                ref:"method:PortalLayout.willAcceptPortletDrop",
                description:null
            },
            {
                ref:"method:PortalLayout.portletsChanged",
                description:null
            }
        ],
        params:[
            {
                description:"drag target",
                optional:false,
                name:"dragTarget",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"indicates which column the portlet is being dropped on.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"indicates the row number being dropped on.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Drop position within an existing row. If the dropPosition   is null, then that means that a new row will be created.",
                optional:true,
                name:"dropPosition",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"drop-component or custom Portlet to embed in the portalLayout. Returning  null will cancel the drop.",
            type:"Canvas"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('portletContentsDragging')}",
            "${isc.DocUtils.linkForExampleId('portalCrossWindowDrag')}"
        ],
        definingClass:"class:PortalLayout"
    },
    "attr:RPCRequest.useSimpleHttp":{
        ref:"attr:RPCRequest.useSimpleHttp",
        flags:"IRWA",
        description:"When set to true, assume the request is not going to the SmartClient server, and hence send\n a simple HTTP request that does not use SmartClient-specific request encoding.\n <P>\n Values specified in ${isc.DocUtils.linkForRef('attr:RPCRequest.params')} are sent to to the server as HTTP request\n parameters.  If ${isc.DocUtils.linkForRef('attr:RPCRequest.httpMethod')} is \"GET\", parameters appear in the request URL, otherwise\n if httpMethod is \"POST\", parameters are encoded in the request body (exactly like an HTML form\n does).  These parameters are then accessible via typical server-side APIs for retrieving\n HTTP parameters, eg, servletRequest.getParameter(paramName) in Java Servlets.  \n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:RPCRequest.httpMethod')} method is POST and ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} is supplied,\n ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} is assumed to be a string to post as the HTTP request body, and\n ${isc.DocUtils.linkForRef('attr:RPCRequest.params')} are sent as URL parameters instead.  This usage is for sending\n custom request bodies such as the XML payloads used for SOAP.  In this case,\n ${isc.DocUtils.linkForRef('attr:RPCRequest.contentType')} is typically also set to indicate the content type of the\n request body.\n <p>\n Setting <code>useSimpleHttp</code> to true also automatically sets\n ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')} to true as well.",
        name:"useSimpleHttp",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:ListGridField.userSummary":{
        ref:"attr:ListGridField.userSummary",
        flags:"IRW",
        description:"Summary definition for this field.\n <P>\n Advanced applications that wish to save summarys separately from a grid's\n ${isc.DocUtils.linkForRef('method:ListGrid.getViewState','viewState')} can provide a ${isc.DocUtils.linkForRef('object:UserSummary')} as part of the\n field definition, and may subsequently access the summary is updated via the\n ${isc.DocUtils.linkForRef('method:ListGrid.summaryUpdated')} notification.",
        name:"userSummary",
        seeAlso:[
        ],
        valueType:"UserSummary",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:CanvasItem.canvasDefaults":{
        ref:"attr:CanvasItem.canvasDefaults",
        flags:"IRW",
        description:"Default properties for the canvas if this.canvas is not already a canvas instance.",
        name:"canvasDefaults",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"{}",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "method:Window.removeItems":{
        ref:"method:Window.removeItems",
        flags:"",
        description:"\t\t\tRemoves an array of widgets from the window.\n",
        name:"removeItems",
        seeAlso:[
        ],
        params:[
            {
                description:"an array of widgets to be removed",
                optional:false,
                name:"items",
                defaultValue:null,
                type:"array of canvases"
            }
        ],
        returns:{
            description:"the array of widgets removed",
            type:"array"
        },
        type:"method",
        definingClass:"class:Window",
        groups:[
            "windowItems"
        ]
    },
    "attr:ResultTree.progressiveLoading":{
        ref:"attr:ResultTree.progressiveLoading",
        flags:"IRW",
        description:"Sets ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressive loading mode')} for this\n ResultTree.  The ResultTree will copy this setting onto the ${isc.DocUtils.linkForRef('class:DSRequest')}s that it\n issues, overriding the OperationBinding- and DataSource-level settings, in cases where\n the use of progressive loading does not affect the correctness of the tree's paging\n algorithm.\n <p>\n This setting is applied automatically by ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s that have their own\n explicit setting for ${isc.DocUtils.linkForRef('attr:DataBoundComponent.progressiveLoading','progressiveLoading')}.\n <p>\n <b>Note:</b>  This property only has an effect for ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"paged\"')}\n ResultTrees.",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            },
            {
                ref:"attr:OperationBinding.progressiveLoading",
                description:null
            },
            {
                ref:"attr:DSRequest.progressiveLoading",
                description:null
            },
            {
                ref:"attr:DataBoundComponent.progressiveLoading",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultTree",
        groups:[
            "progressiveLoading"
        ]
    },
    "method:SectionStack.addSection":{
        ref:"method:SectionStack.addSection",
        flags:"",
        description:"\n Add a section to the SectionStack.\n\n",
        name:"addSection",
        seeAlso:[
        ],
        params:[
            {
                description:"Initialization block                  for the section or a list of initialization blocks to add.",
                optional:false,
                name:"sections",
                defaultValue:null,
                type:"SectionStackSection Properties | List of SectionStackSection Properties"
            },
            {
                description:"index for the new section(s) (if not specified, the section                      will be added at the end of the SectionStack).",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsAddAndRemove')}"
        ],
        definingClass:"class:SectionStack"
    },
    "interface:PickList":{
        methods:[
            "method:PickList.fetchData",
            "method:PickList.getOptionDataSource",
            "method:PickList.getPickListFilterCriteria",
            "method:PickList.getValueFieldName",
            "method:PickList.getDisplayFieldName",
            "method:PickList.getClientPickListData",
            "method:PickList.dataArrived",
            "method:PickList.filterClientPickListData"
        ],
        ref:"interface:PickList",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:PickList.pickListHeight",
            "attr:PickList.emptyPickListHeight",
            "attr:PickList.emptyPickListMessage",
            "attr:PickList.hideEmptyPickList",
            "attr:PickList.pickListWidth",
            "attr:PickList.pickListMaxWidth",
            "attr:PickList.pickListBaseStyle",
            "attr:PickList.pickListTallBaseStyle",
            "attr:PickList.pickListApplyRowNumberStyle",
            "attr:PickList.animatePickList",
            "attr:PickList.animationTime",
            "attr:PickList.fetchDelay",
            "attr:PickList.pickListCellHeight",
            "attr:PickList.pickListProperties",
            "attr:PickList.pickListHeaderHeight",
            "attr:PickList.valueField",
            "attr:PickList.displayField",
            "attr:PickList.pickListFields",
            "attr:PickList.valueIconField",
            "attr:PickList.pickListCriteria",
            "attr:PickList.optionDataSource",
            "attr:PickList.showOptionsFromDataSource",
            "attr:PickList.fetchDisplayedFieldsOnly",
            "attr:PickList.optionFilterContext",
            "attr:PickList.filterLocally",
            "attr:PickList.sortField",
            "attr:PickList.useClientFiltering",
            "attr:PickList.cachePickListResults",
            "attr:PickList.textMatchStyle",
            "attr:PickList.showAllOptions",
            "attr:PickList.separatorRows"
        ],
        description:"Interface to show a drop-down list of pickable options. Used by the ${isc.DocUtils.linkForRef('class:SelectItem')} and\n ${isc.DocUtils.linkForRef('class:ComboBoxItem')} classes. The generated drop down list of options will be an instance of\n ${isc.DocUtils.linkForRef('class:PickListMenu')}.",
        name:"PickList",
        seeAlso:[
        ],
        type:"interface"
    },
    "attr:ListGridField.canEdit":{
        ref:"attr:ListGridField.canEdit",
        flags:"IRW",
        description:"Can this field be edited?  May be overridden by setting the 'canEdit' property at the\n listGrid level. If not explicitly set and this grid is bound to a dataSource, the\n ${isc.DocUtils.linkForRef('attr:ListGrid.canEditFieldAttribute')} may be used to set default editability at the field level.\n <p>\n For more dynamic control over whether fields can be edited, see\n ${isc.DocUtils.linkForRef('method:ListGrid.canEditCell')}.",
        name:"canEdit",
        seeAlso:[
            {
                ref:"attr:ListGrid.canEdit",
                description:null
            },
            {
                ref:"attr:ListGrid.recordEditProperty",
                description:null
            },
            {
                ref:"method:ListGrid.canEditCell",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('disableEditing')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:TreeGrid.getDropFolder":{
        ref:"method:TreeGrid.getDropFolder",
        flags:"",
        description:" When the user is dragging a droppable element over this grid, this method returns the folder\n which would contain the item if dropped. This is the current drop node if the user is hovering\n over a folder, or the node's parent if the user is hovering over a leaf.\n",
        name:"getDropFolder",
        seeAlso:[
        ],
        returns:{
            description:"target drop folder",
            type:"node"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "events"
        ]
    },
    "method:Chart.setData":{
        ref:"method:Chart.setData",
        flags:"",
        description:" Change the dataset for this chart on the fly.  May or may not be supported by concrete chart\n implementations.\n\n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"new dataset",
                optional:false,
                name:"newData",
                defaultValue:null,
                type:"Array of CellRecord or CellRecord"
            }
        ],
        type:"method",
        definingClass:"interface:Chart"
    },
    "attr:Tab.disabled":{
        ref:"attr:Tab.disabled",
        flags:"IRW",
        description:"If specified, this tab will initially be rendered in a disabled state. To enable or\n disable tabs on the fly use the ${isc.DocUtils.linkForRef('method:TabSet.enableTab')}, and ${isc.DocUtils.linkForRef('method:TabSet.disableTab')}\n methods.",
        name:"disabled",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "method:Canvas.dragResizeStop":{
        ref:"method:Canvas.dragResizeStop",
        flags:"A",
        description:"\n Executed when the mouse button is released at the end of the drag resize. Your\n widget can use this opportunity to fire custom code based upon where the\n mouse button was released, etc.\n <p>\n Returning true from this handler will cause the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} (or outline if\n ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')} is set to \"outline\") to be left at its current size. Returning\n false from this handler will cause it to snap back to its original location size\n\n",
        name:"dragResizeStop",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to snap the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} (or outline) back to its                   original size or true to leave it at the current cursor position.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "classAttr:Operators.iContainsTitle":{
        ref:"classAttr:Operators.iContainsTitle",
        flags:"IR",
        description:"Title for the \"iContains\" operator",
        name:"iContainsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"contains\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Class.toString":{
        ref:"method:Class.toString",
        flags:"",
        description:"\n  The default toString() for instances reports that you have an instance of a class and prints\n  the instance ID if present.\n",
        name:"toString",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:FacetChart.dataOutlineProperties":{
        ref:"attr:FacetChart.dataOutlineProperties",
        flags:"IR",
        description:"Properties for lines that outline a data shape (in filled charts such as area or radar\n charts).",
        name:"dataOutlineProperties",
        seeAlso:[
        ],
        valueType:"DrawItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:TabSet.getPaneContainerEdges":{
        ref:"method:TabSet.getPaneContainerEdges",
        flags:"A",
        description:" If the paneContainer for this tab set is showing ${isc.DocUtils.linkForRef('attr:Canvas.showEdges','edges')}, this \n method can be used to specify (dynamically) which ${isc.DocUtils.linkForRef('attr:Canvas.customEdges','customEdges')} to\n show. Called when the pane creator is created.\n <P>\n Default implementation will return null unless ${isc.DocUtils.linkForRef('attr:TabSet.showPartialEdges','showPartialEdges')}\n is true, in which case it will return the three edges opposite the\n ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')}.\n",
        name:"getPaneContainerEdges",
        seeAlso:[
        ],
        returns:{
            description:"array of custom edges to show",
            type:"array"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:ToolStripGroup.setShowTitle":{
        ref:"method:ToolStripGroup.setShowTitle",
        flags:"",
        description:" This method forcibly shows or hides this group's title after initial draw.\n \n",
        name:"setShowTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"should be show the title be shown or hidden?",
                optional:false,
                name:"showTitle",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "method:ListGrid.discardAllEdits":{
        ref:"method:ListGrid.discardAllEdits",
        flags:"A",
        description:"\n Cancel outstanding edits, discarding edit values, and hiding editors for the record[s] passed\n in if appropriate.\n <P>\n If no rows are passed in, all outstanding edit values will be dropped.  This will <b>not</b>\n automatically end editing; call ${isc.DocUtils.linkForRef('method:ListGrid.endEditing')} <b>before</b> calling discardAllEdits()\n if you also want to end editing.\n <P>\n Note that this also clears the ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved','removed')} state of any records\n that have been marked as removed.\n\n",
        name:"discardAllEdits",
        seeAlso:[
        ],
        params:[
            {
                description:"allows you to specify which row(s) to drop edits for",
                optional:true,
                name:"rows",
                defaultValue:null,
                type:"Array of Number"
            },
            {
                description:"By default this method will hide the editor if                              it is currently showing for any row in the grid. Passing in\n                              this parameter will leave the editor visible (and just reset\n                              the edit values underneath the editor).",
                optional:true,
                name:"dontHideEditor",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:DynamicForm.itemKeyPress":{
        ref:"method:DynamicForm.itemKeyPress",
        flags:"",
        description:" Handler fired when a FormItem within this form receives a keypress event.\n <P>\n Fires after the keyPress handler on the FormItem itself, and only if the item did not\n cancel the event and chooses to allow it to propagate to the form as a whole. \n \n",
        name:"itemKeyPress",
        seeAlso:[
        ],
        params:[
            {
                description:"the FormItem where the change event occurred",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"name of the key that was pressed (EG: \"A\", \"Space\")",
                optional:false,
                name:"keyName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"numeric character value of the pressed key.",
                optional:false,
                name:"characterValue",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"return false to cancel the keyPress, or true to allow it",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:TabSet.topEdgeSizes":{
        ref:"attr:TabSet.topEdgeSizes",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeSizes</code>, \n <code>rightEdgeSizes</code>, <code>topEdgeSizes</code> and <code>bottomEdgeSizes</code> \n properties allow the sizes of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge sizes where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"topEdgeSizes",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:DetailViewerField.includeFrom":{
        ref:"attr:DetailViewerField.includeFrom",
        flags:"IR",
        description:"Indicates this field's values come from another, related DataSource.  \n The individual field will inherit settings such as ${isc.DocUtils.linkForRef('attr:DetailViewerField.type','field.type')}\n and ${isc.DocUtils.linkForRef('attr:DetailViewerField.title','field.title')} from the related DataSource just like\n fields from the primary DataSource.",
        name:"includeFrom",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "method:Canvas.getContents":{
        ref:"method:Canvas.getContents",
        flags:"",
        description:"      Returns the contents of a Canvas. The contents are an HTML string.\n",
        name:"getContents",
        seeAlso:[
        ],
        returns:{
            description:"contents of this Canvas",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:FormItem.rowSpan":{
        ref:"attr:FormItem.rowSpan",
        flags:"IRW",
        description:"Number of rows that this item spans",
        name:"rowSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formLayout"
        ]
    },
    "attr:ImgButton.showSelectedIcon":{
        ref:"attr:ImgButton.showSelectedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n becomes selected.",
        name:"showSelectedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ListGrid.filterOnKeypress":{
        ref:"attr:ListGrid.filterOnKeypress",
        flags:"IRWA",
        description:"If we're showing the filterEditor (this.showFilterEditor is true), this property\n determines whether this list should be filtered every time the user modifies the value\n in a field of the filter-editor. Can also be set at the field level.",
        name:"filterOnKeypress",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:HiliteRule.hiliteForm":{
        ref:"attr:HiliteRule.hiliteForm",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:DynamicForm')} displaying the ${isc.DocUtils.linkForRef('class:FormItem','formItems')} used to \n specify the hiliting properties of this rule.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteRule.hiliteFormProperties</code>.",
        name:"hiliteForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteRule"
    },
    "attr:Operator.requiresServer":{
        ref:"attr:Operator.requiresServer",
        flags:"IR",
        description:"Whether this operator needs to be executed on the server side.\n <P>\n This implies that if a ${isc.DocUtils.linkForRef('object:Criterion')} using this operator is either introduced into\n ${isc.DocUtils.linkForRef('object:AdvancedCriteria','criteria')} or is changed, the server will need to be contacted to\n perform filtering.",
        name:"requiresServer",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:FacetChart.legendLabelProperties":{
        ref:"attr:FacetChart.legendLabelProperties",
        flags:"IR",
        description:"Properties for labels shown next to legend color swatches.",
        name:"legendLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:PortalLayout.overflow":{
        ref:"attr:PortalLayout.overflow",
        flags:"IRW",
        description:"Controls how the PortalLayout reacts when column widths or ${isc.DocUtils.linkForRef('class:Portlet')} widths\n overflow the width of the PortalLayout. By default, the PortalLayout scrolls\n when necessary. You can also use overflow: visible or overflow: hidden, with the \n usual results -- see ${isc.DocUtils.linkForRef('attr:PortalLayout.canResizePortlets')} for a further explanation of column widths.\n <p>\n Note that overflowing height is also affected by ${isc.DocUtils.linkForRef('attr:PortalLayout.columnOverflow','columnOverflow')}.\n By default, each column will scroll individually -- you can change\n columnOverflow to \"auto\" to scroll the whole PortalLayout instead.",
        name:"overflow",
        seeAlso:[
            {
                ref:"attr:PortalLayout.canResizePortlets",
                description:null
            },
            {
                ref:"attr:PortalLayout.columnOverflow",
                description:null
            },
            {
                ref:"attr:Canvas.overflow",
                description:null
            }
        ],
        valueType:"Overflow",
        defaultValue:"\"auto\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('portalLayoutColumnHeight')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:IconButton.rowSpan":{
        ref:"attr:IconButton.rowSpan",
        flags:"IRW",
        description:"When used in a ${isc.DocUtils.linkForRef('class:RibbonBar')}, the number of rows this button should consume.",
        name:"rowSpan",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "classMethod:Date.compareLogicalDates":{
        ref:"classMethod:Date.compareLogicalDates",
        flags:"",
        description:" Compare two dates, normalizing out the time elements so that only the date elements are\n considered; returns 0 if equal, -1 if the first date is greater (later), or 1 if\n the second date is greater.\n",
        name:"compareLogicalDates",
        seeAlso:[
        ],
        params:[
            {
                description:"first date to compare",
                optional:false,
                name:"date1",
                defaultValue:null,
                type:"date"
            },
            {
                description:"second date to compare",
                optional:false,
                name:"date2",
                defaultValue:null,
                type:"date"
            }
        ],
        returns:{
            description:"0 if equal, -1 if first date &gt; second date, 1 if second date &gt;                      first date.  Returns false if either argument is not a date",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:Calendar.weekEventBorderOverlap":{
        ref:"attr:Calendar.weekEventBorderOverlap",
        flags:"IR",
        description:"Augments the width of week event windows slightly to avoid duplicate adjacent borders\n between events.",
        name:"weekEventBorderOverlap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "class:MenuBar":{
        methods:[
            "method:MenuBar.setButtons",
            "method:MenuBar.setMenus",
            "method:MenuBar.addMenus",
            "method:MenuBar.removeMenus",
            "method:MenuBar.showMenu"
        ],
        ref:"class:MenuBar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:MenuBar.menus",
            "attr:MenuBar.tabIndex"
        ],
        description:"A MenuBar is a bar of buttons used to show a set of menus.",
        name:"MenuBar",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Snapbar.gripImgSuffix":{
        ref:"attr:Snapbar.gripImgSuffix",
        flags:"IRA",
        description:"Overridden from ${isc.DocUtils.linkForRef('attr:Splitbar.gripImgSuffix')} to simplify providing custom grip media\n for this widget.",
        name:"gripImgSuffix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"snap\"",
        type:"attr",
        definingClass:"class:Snapbar"
    },
    "attr:Menu.submenuFieldDefaults":{
        ref:"attr:Menu.submenuFieldDefaults",
        flags:"IR",
        description:"Default properties for the automatically generated submenu column.\n Default object includes properties to set width, align and to show submenu icon for this\n column.\n <P>\n To modify the behavior or appearance of this column, developers may set\n ${isc.DocUtils.linkForRef('attr:Menu.submenuFieldProperties')} at the instance level, or override this\n object at the class level. If overriding this object, we recommend using\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} rather than replacing this object entirely.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Menu.showSubmenus')} for an overview of the submenu column.",
        name:"submenuFieldDefaults",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"object",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:ListGrid.removedCSSText":{
        ref:"attr:ListGrid.removedCSSText",
        flags:"IRWA",
        description:"Custom CSS text to be applied to records that have been\n ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved','marked for removal')}.\n <P>\n This CSS text will be applied on top of standard disabled styling for the cell.",
        name:"removedCSSText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"text-decoration:line-through;\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:Applet.pluginID":{
        ref:"attr:Applet.pluginID",
        flags:"IR",
        getter:[
            "getPluginID"
        ],
        description:"ID used for the &lt;applet&gt; tag generated by this component.",
        name:"pluginID",
        setter:[
            "setPluginID"
        ],
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:ListGrid.sorterProperties":{
        ref:"attr:ListGrid.sorterProperties",
        flags:"IRA",
        description:"Properties to apply to the sorter button. Overrides defaults applied via\n ${isc.DocUtils.linkForRef('attr:ListGrid.sorterDefaults')}.",
        name:"sorterProperties",
        seeAlso:[
        ],
        valueType:"Button Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "attr:ColorItem.pickerIconPrompt":{
        ref:"attr:ColorItem.pickerIconPrompt",
        flags:"IR",
        description:"Prompt to show when the user hovers the mouse over the picker icon.",
        name:"pickerIconPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Click to select a new color\"",
        type:"attr",
        definingClass:"class:ColorItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DateItem.endDate":{
        ref:"attr:DateItem.endDate",
        flags:"IRW",
        description:"Maximum date the selectors will allow the user to pick.\n <P>\n See ${isc.DocUtils.linkForRef('attr:DateItem.startDate')} for details on how this restriction works.",
        name:"endDate",
        setter:[
            "setEndDate"
        ],
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"12/31/2020",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "appearance"
        ]
    },
    "attr:OperationBinding.recordXPath":{
        ref:"attr:OperationBinding.recordXPath",
        flags:"IR",
        description:"For an XML or JSON DataSource, XPath expression used to retrieve the objects that will\n become DataSource records.\n <p>\n For example, an \"ItemSearch\" web service might return a \"Results\" structure containing\n metadata along with the set of Items that one might want to display in a grid.  An XPath\n expression like \"/Results/Items\" could be used to retrieve just the Items, which would then\n become DataSource records.\n <p>\n For a JSON web service, the <code>recordXPath</code> is applied to the returned JSON data\n via ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectObjects')}.  Only limited XPath syntax is allowed; see \n ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectObjects','selectObjects()')} for details.\n <P>\n For processing XML results, see ${isc.DocUtils.linkForRef('attr:OperationBinding.xmlNamespaces')} for information\n on the namespaces that are available in this XPath expression.  If you are contacting a WSDL\n web service, note that ${isc.DocUtils.linkForRef('attr:OperationBinding.recordName')} is an alternative way to specify\n which records should be selected by their tagName or type, and this is usually simpler.\n <P>\n To learn about XPath, try the following search:\n <a href=\"http://www.google.com/search?q=xpath+tutorial\" target=\"_blank\"\n >http://www.google.com/search?q=xpath+tutorial</a>",
        name:"recordXPath",
        seeAlso:[
        ],
        valueType:"XPathExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:TabBar.buttonConstructor":{
        ref:"attr:TabBar.buttonConstructor",
        flags:"AIRW",
        description:"SmartClient component used for the tabs of the tabBar. \n Must be Button or Button subclass.",
        name:"buttonConstructor",
        seeAlso:[
        ],
        valueType:"class",
        defaultValue:"ImgTab",
        type:"attr",
        definingClass:"class:TabBar"
    },
    "method:PortalLayout.portletMaximized":{
        ref:"method:PortalLayout.portletMaximized",
        flags:"",
        description:" Notification method called after a portlet has been maximized (whether by\n user action or programmatically).\n\n",
        name:"portletMaximized",
        seeAlso:[
            {
                ref:"method:PortalLayout.willMaximizePortlet",
                description:null
            }
        ],
        params:[
            {
                description:"the Portlet which was maximized",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:CubeGrid.facetValuesSelected":{
        ref:"method:CubeGrid.facetValuesSelected",
        flags:"",
        description:" Return whether the header indicated by the set of facetValues is selected.\n\n",
        name:"facetValuesSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValues to test",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"true if the header is selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Slider.sliderTarget":{
        ref:"attr:Slider.sliderTarget",
        flags:"IRW",
        description:"The target widget for the <code>sliderMove</code> event generated when the slider thumb \n is moved.",
        name:"sliderTarget",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:TabSet.pickerButtonSrc":{
        ref:"attr:TabSet.pickerButtonSrc",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker')} is true, this property governs the base URL for the picker\n button image, when ${isc.DocUtils.linkForRef('attr:TabSet.symmetricPickerButton')} is set to false\n <P>\n Note that if <code>symmetricPickerButton</code> is true, the ${isc.DocUtils.linkForRef('attr:TabSet.pickerButtonHSrc')} \n and ${isc.DocUtils.linkForRef('attr:TabSet.pickerButtonVSrc')} properties will be used instead.\n <P>\n To get the path to the image to display, this base URL will be modified as follows:\n <ul>\n <li>If appropriate a state suffix of <code>\"Down\"</code> or <code>\"Disabled\"</code> will be\n     appended.</li>\n <li>The ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} for this tabSet will be appended.</li>\n </ul>",
        name:"pickerButtonSrc",
        seeAlso:[
            {
                ref:"attr:TabSet.symmetricPickerButton",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/picker.gif\"",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "attr:FormItem.showClippedTitleOnHover":{
        ref:"attr:FormItem.showClippedTitleOnHover",
        flags:"IRW",
        description:"If true and the title is clipped, then a hover containing the full title of this item\n is enabled.\n <p>\n <smartclient>The ${isc.DocUtils.linkForRef('method:FormItem.titleHover')} method is called before the\n hover is displayed, allowing the hover to be canceled if desired. The HTML shown in the\n hover can be customized by overriding ${isc.DocUtils.linkForRef('method:FormItem.titleHoverHTML')}.</smartclient>\n <smartgwt>A <code>TitleHoverEvent</code> is fired before the hover is displayed,\n allowing the hover to be canceled if desired. The HTML shown in the hover can be customized\n by setting a <code>FormItemHoverFormatter</code> on either this <code>FormItem</code>\n or the <code>DynamicForm</code>. See <code>setItemTitleHoverFormatter()</code>.</smartgwt>",
        name:"showClippedTitleOnHover",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:DateRangeDialog.rangeItem":{
        ref:"attr:DateRangeDialog.rangeItem",
        flags:"IR",
        description:null,
        name:"rangeItem",
        seeAlso:[
        ],
        valueType:"AutoChild DateRangeItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeDialog"
    },
    "attr:DataSource.titleField":{
        ref:"attr:DataSource.titleField",
        flags:"IR",
        description:"Best field to use for a user-visible title for an individual record from this dataSource.\n <p>\n For example, for a DataSource of employees, a \"full name\" field would probably most clearly\n label an employee record.\n <p>\n If not explicitly set, titleField looks for fields named \"title\", \"label\", \"name\", and \"id\"\n in that order.  If a field exists with one of those names, it becomes the titleField.  If not,\n then the first field is designated as the titleField.",
        name:"titleField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"see below",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "titles",
            "dsSpecialFields"
        ]
    },
    "attr:DetailViewer.cellStyle":{
        ref:"attr:DetailViewer.cellStyle",
        flags:"IRW",
        getter:[
            "getCellStyle"
        ],
        description:"CSS style for a normal value",
        name:"cellStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"detail\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "classMethod:Validator.addValidatorDefinition":{
        ref:"classMethod:Validator.addValidatorDefinition",
        flags:"A",
        description:" Add a new validator type that can be specified as ${isc.DocUtils.linkForRef('attr:Validator.type')} anywhere\n validators are declared, such as ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')} or\n ${isc.DocUtils.linkForRef('attr:FormItem.validators')}.\n\n",
        name:"addValidatorDefinition",
        seeAlso:[
            {
                ref:"classMethod:Validator.addValidatorDefinitions",
                description:null
            }
        ],
        params:[
            {
                description:"type name for the new validator",
                optional:false,
                name:"type",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the validator definition",
                optional:false,
                name:"definition",
                defaultValue:null,
                type:"ValidatorDefinition"
            }
        ],
        type:"classMethod",
        definingClass:"class:Validator",
        groups:[
            "validation"
        ]
    },
    "attr:DSResponse.httpHeaders":{
        ref:"attr:DSResponse.httpHeaders",
        flags:"R",
        description:"HTTP headers returned by the server as a map from header name to header value.\n <P>\n Headers are available only when the default ${isc.DocUtils.linkForRef('type:RPCTransport')} \"xmlHttpRequest\" is in use,\n and browsers may limit access to headers for cross-domain requests or in other\n security-sensitive scenarios.",
        name:"httpHeaders",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse"
    },
    "method:List.getLength":{
        ref:"method:List.getLength",
        flags:"",
        description:" Return the number of items in this list\n\n",
        name:"getLength",
        seeAlso:[
        ],
        returns:{
            description:"number of items in the list",
            type:"Number"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "method:StretchImgButton.select":{
        ref:"method:StretchImgButton.select",
        flags:"",
        description:" Select this object.\n",
        name:"select",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "class:Scrollbar":{
        methods:[
            "method:Scrollbar.setScrollTarget"
        ],
        ref:"class:Scrollbar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:Scrollbar.btnSize",
            "attr:Scrollbar.autoEnable",
            "attr:Scrollbar.showCorner",
            "attr:Scrollbar.allowThumbDownState",
            "attr:Scrollbar.allowThumbOverState",
            "attr:Scrollbar.showTrackEnds",
            "attr:Scrollbar.showTrackButtons",
            "attr:Scrollbar.thumbMinSize",
            "attr:Scrollbar.trackEndWidth",
            "attr:Scrollbar.trackEndHeight",
            "attr:Scrollbar.thumbOverlap",
            "attr:Scrollbar.startThumbOverlap",
            "attr:Scrollbar.endThumbOverlap",
            "attr:Scrollbar.thumbInset",
            "attr:Scrollbar.skinImgDir",
            "attr:Scrollbar.cornerSrc",
            "attr:Scrollbar.cornerSize",
            "attr:Scrollbar.hSrc",
            "attr:Scrollbar.vSrc",
            "attr:Scrollbar.startImg",
            "attr:Scrollbar.trackStartImg",
            "attr:Scrollbar.trackImg",
            "attr:Scrollbar.trackEndImg",
            "attr:Scrollbar.endImg",
            "attr:Scrollbar.cornerImg",
            "attr:Scrollbar.scrollTarget"
        ],
        description:"The Scrollbar widget implements cross-platform, image-based scrollbars that control the\n scrolling of content in other widgets.  Scrollbar widgets are created and displayed\n automatically for widgets that require them, based on settings for ${isc.DocUtils.linkForRef('attr:Canvas.overflow')}.\n <P>\n The scrollbar's appearance is based on a ${isc.DocUtils.linkForRef('class:StretchImg')} for the \"track\", which consists\n of two fixed size buttons and a stretchable center segment, and the ${isc.DocUtils.linkForRef('class:ScrollThumb')},\n the draggable portion of the scrollbar, also a StretchImg, with an optional\n ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip','grip')}.",
        name:"Scrollbar",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:Date.setNormalDisplayFormat":{
        ref:"classMethod:Date.setNormalDisplayFormat",
        flags:"",
        description:" Set the default formatter for date objects to the method name passed in.  After calling this\n method, subsequent calls to ${isc.DocUtils.linkForRef('method:Date.toNormalDate')} will return a string formatted\n according to this format specification. Note: this will be the standard long date format used\n by SmartClient components.\n <p>\n The <code>format</code> parameter may be a ${isc.DocUtils.linkForRef('type:FormatString')}, a ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} \n string, or a function. If passed a function, this function will be executed in the scope of\n the Date and should return the formatted string.<br>\n <p>\n Initial default normalDisplayFormat is <code>\"toLocaleString\"</code>\n",
        name:"setNormalDisplayFormat",
        seeAlso:[
        ],
        params:[
            {
                description:"new formatter",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"FormatString | DateDisplayFormat | function"
            }
        ],
        type:"classMethod",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:ListGrid.checkboxFieldImageHeight":{
        ref:"attr:ListGrid.checkboxFieldImageHeight",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is set to <code>\"checkbox\"</code> this property\n may be set to govern the height of the checkbox image displayed to indicate whether a row is\n selected. If unset, the checkboxField image will be sized to match the\n ${isc.DocUtils.linkForRef('attr:ListGrid.booleanImageHeight')} for this grid.",
        name:"checkboxFieldImageHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "classMethod:isc.setScreenReaderMode":{
        ref:"classMethod:isc.setScreenReaderMode",
        flags:"",
        description:" Enables full screen reader mode.  Must be called before any components are created.  See\n ${isc.DocUtils.linkForRef('group:accessibility')}.\n",
        name:"setScreenReaderMode",
        seeAlso:[
        ],
        params:[
            {
                description:"new setting",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:ServerObject.methodName":{
        ref:"attr:ServerObject.methodName",
        flags:"IR",
        description:"Specifies the name of the method to call for operations using this ServerObject.  This is \n a DataSource-level default; you can override it for individual operations either by \n specifying the ${isc.DocUtils.linkForRef('attr:OperationBinding.serverMethod')} attribute, or by declaring an \n operation-level serverObject that specifies a different methodName (if you specify both \n an operationBinding.serverMethod and an operation-level serverObject.methodName, the \n latter takes precedence)",
        name:"methodName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "method:Class.addAutoChild":{
        ref:"method:Class.addAutoChild",
        flags:"",
        description:" Creates a component according to the \"AutoChild\" pattern, and adds it to this component.\n <P>\n See the ${isc.DocUtils.linkForRef('group:autoChildren','AutoChild usage overview')} to understand the general\n purpose and usage of this method.\n <P>\n <code>addAutoChild()</code> takes the following actions:\n <ol>\n <li> checks whether this.<i>autoChildName</i> is already populated, and returns it if so\n <li> checks when there is a show<i>AutoChildName</i> with the value false, and if so\n returns without creating a component\n <li> calls ${isc.DocUtils.linkForRef('method:Class.createAutoChild')} to create the component\n <li> sets this.<i>autoChildName</i> to the created component\n <li> adds the component either to this component, or to some other parent, specified\n by the \"autoParent\" property in the autoChild's defaults.  The \"autoParent\" property may\n be \"none\" indicating the autoChild should not be automatically added.\n </ol>\n <P>\n When adding an autoChild to a ${isc.DocUtils.linkForRef('class:Layout')} subclass,\n ${isc.DocUtils.linkForRef('method:Layout.addMember','addMember()')} will be called instead of the normal\n ${isc.DocUtils.linkForRef('method:Canvas.addChild','addChild()')}.  To prevent this behavior,\n <code>addAsChild:true</code> can be set in the autoChild defaults.  Similarly,\n <code>addAsPeer:true</code> may be set to add an autoChild as a peer.\n <P>\n <b>Tip:</b> because <code>addAutoChild()</code>\n checks specifically for show<i>AutoChildName</i>:false, you do not have to add\n show<i>AutoChildName</i>:true in order for an autoChild to be shown by default; leaving\n the property undefined is sufficient.\n <P>\n Note that by default the child created by this method will be destroyed when\n ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} is called on this instance. To disable this behavior,\n set <code>dontAutoDestroy</code> to true on the auto child.\n\n",
        name:"addAutoChild",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the autoChild",
                optional:false,
                name:"childName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"dynamic properties for the autoChild",
                optional:false,
                name:"defaults",
                defaultValue:null,
                type:"Properties"
            }
        ],
        returns:{
            description:"created autoChild",
            type:"Class"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "autoChildren"
        ]
    },
    "classAttr:Validator.notOneOf":{
        ref:"classAttr:Validator.notOneOf",
        flags:"IRA",
        description:"Default error message to display when standard <code>isOneOf</code> type validator\n is not passed.",
        name:"notOneOf",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Not a valid option\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TreeMenuButton.dataProperties":{
        ref:"attr:TreeMenuButton.dataProperties",
        flags:"IR",
        description:"For a <code>TreeMenuButton</code> that uses a DataSource, these properties will be passed to\n the automatically-created ResultTree.  This can be used for various customizations such as\n modifying the automatically-chosen ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}.",
        name:"dataProperties",
        seeAlso:[
        ],
        valueType:"Tree",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeMenuButton",
        groups:[
            "databinding"
        ]
    },
    "attr:FacetValue.titleHilite":{
        ref:"attr:FacetValue.titleHilite",
        flags:"IR",
        description:"Hilite style to apply to the title for this facetValue.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.  See\n ${isc.DocUtils.linkForRef('attr:CubeGrid.hilites')}.",
        name:"titleHilite",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "method:ValuesManager.resetValues":{
        ref:"method:ValuesManager.resetValues",
        flags:"",
        description:"\n Same as ${isc.DocUtils.linkForRef('method:DynamicForm.reset')}.\n\n",
        name:"resetValues",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:FormItemIcon.hspace":{
        ref:"attr:FormItemIcon.hspace",
        flags:"IR",
        description:"If set, this property determines the number of pixels space to be displayed on \n      the left of this form item icon.<br>\n      If unset the form item's <code>iconHSpace</code> property will be used instead.",
        name:"hspace",
        seeAlso:[
            {
                ref:"attr:FormItem.iconHSpace",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "attr:DynamicForm.showDetailFields":{
        ref:"attr:DynamicForm.showDetailFields",
        flags:"IR",
        description:"For databound forms, whether to show fields marked as detail fields.",
        name:"showDetailFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:Canvas.animateFadeTime":{
        ref:"attr:Canvas.animateFadeTime",
        flags:"IRWA",
        description:"Default time for performing an animated fade.  If unset, <code>this.animateTime</code>\n will be used by default instead",
        name:"animateFadeTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "method:CubeGrid.getRollupValue":{
        ref:"method:CubeGrid.getRollupValue",
        flags:"",
        description:" Get the facetValue definition for the facetValue to show when this facet is \"rolled up\" under\n another facet, during a breakout.<br><br>\n\n A facet is not required to have a rollup value, and if it does not have one, then rollups will\n simply be blank rows.  The facetValueId of the rollup value can be declared as\n cubeGrid.rollupValue or facet.rollupValue.  \n\n",
        name:"getRollupValue",
        seeAlso:[
            {
                ref:"attr:CubeGrid.rollupValue",
                description:null
            }
        ],
        returns:{
            description:"rolled up facet value definition",
            type:"facetValue"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "method:ComboBoxItem.setCriterion":{
        ref:"method:ComboBoxItem.setCriterion",
        flags:"",
        description:" Overridden to support editing criterion against the display field or value field when\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} is true.\n",
        name:"setCriterion",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ComboBoxItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:MultiComboBoxItem.buttonProperties":{
        ref:"attr:MultiComboBoxItem.buttonProperties",
        flags:"IRA",
        description:"Properties to be used in creating each option button.",
        name:"buttonProperties",
        seeAlso:[
        ],
        valueType:"IButton Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:Progressbar.breadth":{
        ref:"attr:Progressbar.breadth",
        flags:"IRW",
        getter:[
            "getBreadth"
        ],
        description:"Thickness of the progressbar in pixels. This is effectively width for a vertical\n progressbar, or height for a horizontal progressbar.\n <P>\n This property must be set instead of setting <code>width</code> or <code>height</code>.",
        name:"breadth",
        setter:[
            "setBreadth"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Progressbar",
        groups:[
            "appearance"
        ]
    },
    "method:PortalLayout.setColumnWidth":{
        ref:"method:PortalLayout.setColumnWidth",
        flags:"",
        description:" Sets the width of a column in the PortalLayout.\n <p>\n Note that this sets the intrinsic width of the column. Columns may also\n automatically stretch and shrink to accomodate the width of\n ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}.\n",
        name:"setColumnWidth",
        seeAlso:[
            {
                ref:"method:Canvas.setWidth",
                description:null
            }
        ],
        params:[
            {
                description:"Which column's width to set.",
                optional:false,
                name:"colNumber",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"How wide to make the column",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"Number or String"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:Date.toNormalDate":{
        ref:"method:Date.toNormalDate",
        flags:"",
        description:" Returns the date as a formatted string using the format set up via the\n <code>setNormalDisplayFormat()</code> method. Note that the default formatter for this\n method is <code>\"toLocaleString\"</code>.\n",
        name:"toNormalDate",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional Format for the date returned",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"DateDisplayFormat"
            }
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:Img.imageHeight":{
        ref:"attr:Img.imageHeight",
        flags:"IR",
        description:"Explicit size for the image, for ${isc.DocUtils.linkForRef('attr:Img.imageType')} settings that would normally use the\n image's natural size (applies to ${isc.DocUtils.linkForRef('attr:Img.imageType')} \"center\" and \"normal\" only).",
        name:"imageHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Img"
    },
    "method:StatefulCanvas.setSelected":{
        ref:"method:StatefulCanvas.setSelected",
        flags:"",
        description:" Set this object to be selected or deselected.\n",
        name:"setSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"new boolean value of whether or not the object is                                          selected.",
                optional:false,
                name:"newIsSelected",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "attr:DateRangeDialog.okButton":{
        ref:"attr:DateRangeDialog.okButton",
        flags:"IR",
        description:"Button used for accepting the values entered into the dialog.  Note that, since this is an \n ${isc.DocUtils.linkForRef('type:AutoChild')}, it can be configured using okButtonDefaults and okButtonProperties.",
        name:"okButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeDialog"
    },
    "attr:TableView.tableMode":{
        ref:"attr:TableView.tableMode",
        flags:"IRW",
        description:"The display mode of the table.",
        name:"tableMode",
        seeAlso:[
        ],
        valueType:"TableMode",
        defaultValue:"\"plain\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "method:HibernateBrowser.getResults":{
        ref:"method:HibernateBrowser.getResults",
        flags:"",
        description:" \n",
        name:"getResults",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:HibernateBrowser"
    },
    "attr:MetricSettings.logGradations":{
        ref:"attr:MetricSettings.logGradations",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:MetricSettings.useLogGradations')} is set, gradation lines to show in between powers,\n expressed as a series of integer or float values between 1 and ${isc.DocUtils.linkForRef('attr:MetricSettings.logBase')}.\n <P>\n Some common possibilities (for base 10):\n <pre>\n    [ 1 ] // show only orders of magnitude (0.1, 1, 10, 100, etc)\n    [ 1, 5 ] // show only orders of magnitude plus halfway mark\n    [ 1, 2, 4, 8 ] // show powers of 2 between orders\n    [ 1, 2.5, 5, 7.5 ] // show quarters\n </pre>\n Or base 2:\n <pre>\n    [ 1 ]\n    [ 1, 1.5 ]\n </pre>",
        name:"logGradations",
        seeAlso:[
        ],
        valueType:"Array of Float",
        defaultValue:"[ 1,2,4,6,8 ]",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:StretchItem.width":{
        ref:"attr:StretchItem.width",
        flags:"IR",
        description:"The width of the image. This can either be a number (for the number of pixels wide), the string\n \"*\" (remaining space, divided amongst all items that specify width:\"*\"), or the name of a property\n on the StretchImg component, such as \"capSize\" for the StretchImg's ${isc.DocUtils.linkForRef('attr:StretchImg.capSize','capSize')}.\n <p>\n <b>NOTE:</b> The width is only used if the StretchImg stacks its images horizontally\n (${isc.DocUtils.linkForRef('attr:StretchImg.vertical')} is false).",
        name:"width",
        seeAlso:[
        ],
        valueType:"number or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:StretchItem"
    },
    "attr:StatefulCanvas.icon":{
        ref:"attr:StatefulCanvas.icon",
        flags:"IRW",
        description:"Optional icon to be shown with the button title text.  \n <P>\n Specify as the partial URL to an image, relative to the imgDir of this component.",
        name:"icon",
        setter:[
            "setIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Layout.reorderMember":{
        ref:"method:Layout.reorderMember",
        flags:"",
        description:" Shift a member of the layout to a new position\n\t\t    \n",
        name:"reorderMember",
        seeAlso:[
        ],
        params:[
            {
                description:"current position of the member to move to a new position",
                optional:false,
                name:"memberNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new position to move the member to",
                optional:false,
                name:"newPosition",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "method:ToolStripGroup.addControls":{
        ref:"method:ToolStripGroup.addControls",
        flags:"",
        description:" Adds an array of controls to this group, creating new columns as necessary\n according to each control's rowSpan attribute and the group's numRows attribute.\n \n",
        name:"addControls",
        seeAlso:[
        ],
        params:[
            {
                description:"an array of widgets to add to this group",
                optional:false,
                name:"controls",
                defaultValue:null,
                type:"Array of Canvas"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "attr:StretchImgButton.iconAlign":{
        ref:"attr:StretchImgButton.iconAlign",
        flags:"IR",
        description:"If this button is showing an icon should it be right or left aligned?",
        name:"iconAlign",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:TreeNode.canDrag":{
        ref:"attr:TreeNode.canDrag",
        flags:"IRA",
        description:"Governs whether this node can be dragged. Only has an effect if this node is displayed in\n a ${isc.DocUtils.linkForRef('class:TreeGrid')} where ${isc.DocUtils.linkForRef('attr:TreeGrid.canDragRecordsOut')}, ${isc.DocUtils.linkForRef('attr:TreeGrid.canReorderRecords')}\n or ${isc.DocUtils.linkForRef('attr:TreeGrid.canReparentNodes')} is <code>true</code>.",
        name:"canDrag",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "attr:MultiSortDialog.propertyFieldTitle":{
        ref:"attr:MultiSortDialog.propertyFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"property\" field.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"propertyFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.headerBackground":{
        ref:"attr:Window.headerBackground",
        flags:"R",
        description:"Img background component for the header, for gradient or image-based display",
        name:"headerBackground",
        seeAlso:[
        ],
        valueType:"AutoChild Img",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "method:Gauge.reformatLabelContents":{
        ref:"method:Gauge.reformatLabelContents",
        flags:"A",
        description:" Resets the contents of all labels. This involves calling ${isc.DocUtils.linkForRef('method:Gauge.formatLabelContents')}\n to get the label contents for each corresponding value and repositioning the label.\n\n",
        name:"reformatLabelContents",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:ImgButton.showRollOverIcon":{
        ref:"attr:ImgButton.showRollOverIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image on mouse rollover.",
        name:"showRollOverIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:DataSource.serverObject":{
        ref:"attr:DataSource.serverObject",
        flags:"IR",
        description:"For Direct Method Invocation (DMI) binding, declares the ServerObject to use as the default\n target for all ${isc.DocUtils.linkForRef('attr:DataSource.operationBindings')}.  Specifying this\n attribute in an XML DataSource stored on the server enables DMI for this DataSource.",
        name:"serverObject",
        seeAlso:[
        ],
        valueType:"ServerObject",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:DataSource.splitCriteria":{
        ref:"method:DataSource.splitCriteria",
        flags:"",
        description:" Split a criteria apart based on <code>fields</code>. A new simple criteria\n is returned with any criteria applicable to the specified fields. The passed\n <code>criteria</code> is then <u>modified</u> to remove these fields resulting in\n two distinct criteria.\n <P>\n Incoming criteria can be a simple or advanced criteria. For an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}\n only a single level of criteria with a top-level operator of \"and\" is supported.\n <P>\n To avoid modifying an original criteria, use ${isc.DocUtils.linkForRef('classMethod:DataSource.copyCriteria')} to\n make a copy to be passed in.\n\n",
        name:"splitCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria to be split. May be modified if criteria is                            extracted.",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"list of fields to extract from criteria",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        returns:{
            description:"extracted criteria",
            type:"Criteria"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:FacetChart.useLogGradations":{
        ref:"attr:FacetChart.useLogGradations",
        flags:"IR",
        description:"Whether to use classic logarithmic gradations, where each order of magnitude is shown as\n a gradation as well as a few intervening lines.   Gradations also begin and end on an order\n of magnitude.  For example, 1,2,4,6,8,10,20,40,60,80,100.\n <P>\n Default gradations can be overridden via ${isc.DocUtils.linkForRef('attr:FacetChart.logBase')} and ${isc.DocUtils.linkForRef('attr:FacetChart.logGradations')}.",
        name:"useLogGradations",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:StretchImg.setIgnoreRTL":{
        ref:"method:StretchImg.setIgnoreRTL",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:StretchImg.ignoreRTL')}.\n",
        name:"setIgnoreRTL",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for ignoreRTL.",
                optional:false,
                name:"ignoreRTL",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:StretchImg"
    },
    "attr:Portlet.closeConfirmationDialogProperties":{
        ref:"attr:Portlet.closeConfirmationDialogProperties",
        flags:"IRW",
        description:"If specified, this properties block will be passed to ${isc.DocUtils.linkForRef('classMethod:isc.confirm')} as the\n properties parameter when the ${isc.DocUtils.linkForRef('attr:Portlet.closeConfirmationMessage')} is shown, \n allowing developers to customize the appear of the confirmation\n dialog (modifying its title, etc).",
        name:"closeConfirmationDialogProperties",
        seeAlso:[
        ],
        valueType:"Dialog Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Portlet",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HTMLFlow.contentsType":{
        ref:"attr:HTMLFlow.contentsType",
        flags:"IR",
        description:"The default setting of 'null' or 'fragment' indicates that HTML loaded from\n ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL')} is assumed to be an HTML fragment rather than a complete page.  Set to\n \"page\" to load HTML as a standalone page, via an IFRAME.  \n <P>\n <code>contentsType:\"page\"</code> should only be used for controlled HTML content, and only\n when such content cannot be delivered as an HTML fragment instead (the default).  To\n dynamically load SmartClient components, use ${isc.DocUtils.linkForRef('class:ViewLoader')}, <b>never</b> this mechanism\n (click ${isc.DocUtils.linkForRef('group:noFrames','here')} for why).\n <P>\n Loading HTML content as a fragment is less resource intensive and avoids visual artifacts\n such as translucent media becoming opaque or disappearing when placed over an IFRAME.  \n <P>\n Loading third-party, uncontrolled content could lead to the surrounding page disappearing if\n a user clicks on an HTML link with <code>target=_top</code>.\n <P>\n With <code>contentsType:\"page\"</code>, ${isc.DocUtils.linkForRef('attr:HTMLFlow.loadingMessage')} is not supported, and only\n \"GET\" is supported for ${isc.DocUtils.linkForRef('attr:HTMLFlow.httpMethod','httpMethod')}.\n <P>\n Note that a native bug has been observed in Internet Explorer version 10 whereby\n if an HTMLFlow with <code>contentsType</code> set to <code>\"page\"</code>\n loads a page containing an HTML <code>&lt;frameset&gt;</code>, when the HTMLFlow\n is ${isc.DocUtils.linkForRef('method:Canvas.hide','hidden')}, it can interfere with the rendering of other elements on\n the page. Setting ${isc.DocUtils.linkForRef('attr:Canvas.shrinkElementOnHide')} to <code>true</code> will work\n around this behavior.",
        name:"contentsType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "attr:CubeGrid.facetTitleAlign":{
        ref:"attr:CubeGrid.facetTitleAlign",
        flags:"IRW",
        description:"Default alignment for facet labels.",
        name:"facetTitleAlign",
        setter:[
            "setFacetTitleAlign"
        ],
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "method:Tree.getFilteredTree":{
        ref:"method:Tree.getFilteredTree",
        flags:"",
        description:" Filters this tree by the provided criteria, returning a new Tree containing just the nodes\n that match the criteria.\n <P>\n If <code>filterMode</code> is \"keepParents\", parents are retained if\n any of their children match the criteria even if those parents do not match the criteria.\n \n",
        name:"getFilteredTree",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria to filter by",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria or AdvancedCriteria"
            },
            {
                description:"mode to use for filtering, defaults to \"strict\"",
                optional:true,
                name:"filterMode",
                defaultValue:null,
                type:"TreeFilterMode"
            },
            {
                description:"dataSource to use for filtering, if this Tree does not                                  already have one",
                optional:true,
                name:"dataSource",
                defaultValue:null,
                type:"DataSource"
            },
            {
                description:"Request properties block. This allows developers to specify  properties that would impact the filter such as ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')}",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        returns:{
            description:"filtered tree",
            type:"Tree"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "treeFilter"
        ]
    },
    "attr:ListGrid.rowSpanSelectionMode":{
        ref:"attr:ListGrid.rowSpanSelectionMode",
        flags:"IR",
        description:"Chooses the selection mode when ${isc.DocUtils.linkForRef('attr:ListGrid.useRowSpanStyling')} is enabled.  See\n ${isc.DocUtils.linkForRef('type:RowSpanSelectionMode')}.",
        name:"rowSpanSelectionMode",
        seeAlso:[
        ],
        valueType:"RowSpanSelectionMode",
        defaultValue:"\"forward\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.getRecordIndex":{
        ref:"method:ListGrid.getRecordIndex",
        flags:"",
        description:" Get the index of the provided record.\n <P>\n This is essentially the same as calling listGrid.data.indexOf(record), except that\n the currently visible range of records is checked first.  This is important for\n responsiveness in functions that respond to user actions when the user is working near the\n end of a very large dataset (eg 500k records).\n\n",
        name:"getRecordIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"the record whose index is to be retrieved",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"indexindex of the record, or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:StretchImgButton.titleHover":{
        ref:"method:StretchImgButton.titleHover",
        flags:"",
        description:" Optional stringMethod to fire when the user hovers over this button and the title is\n clipped. If ${isc.DocUtils.linkForRef('attr:StretchImgButton.showClippedTitleOnHover')} is true, the default behavior is to\n show a hover canvas containing the HTML returned by ${isc.DocUtils.linkForRef('method:StretchImgButton.titleHoverHTML')}.\n Return false to suppress this default behavior.\n",
        name:"titleHover",
        seeAlso:[
            {
                ref:"method:StretchImgButton.titleClipped",
                description:null
            }
        ],
        returns:{
            description:"false to suppress the standard hover",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "hovers"
        ]
    },
    "attr:DataSourceField.editRequiresAuthentication":{
        ref:"attr:DataSourceField.editRequiresAuthentication",
        flags:"IR",
        description:"Whether a user must be authenticated in order to write to this field.  If this property is \n set and the user is not authenticated, the SmartClient Server will not allow this field to\n be updated or initialized.\n <p>\n This property affects two things.  Firstly, the server determines when the DataSource is \n first loaded if we have an authenticated user; if we don't, the field is marked \n <code>canEdit: false</code>.  Secondly, when an insert or update request is received from \n the client, the server removes the field from the <code>values</code> clause before the\n request is processed.\n <p>\n Note that you can override this behavior.  The <code>canEdit</code> setting can be overridden \n on the the client-side DataSource like any other client-side property.  The value-removing \n behavior can be overridden on a per-request basis by providing a DMI that re-adds values for\n the fields you want for that particular request to the values object (the values originally \n sent up by the client are available on the DSRequest).  See the server-side Javadocs for \n <code>DSRequest.getValues()</code> and <code>DSRequest.getClientSuppliedValues()</code>.",
        name:"editRequiresAuthentication",
        seeAlso:[
            {
                ref:"attr:DataSourceField.viewRequiresAuthentication",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:DetailViewerField.height":{
        ref:"attr:DetailViewerField.height",
        flags:"IR",
        description:"For ${isc.DocUtils.linkForRef('attr:DetailViewerField.type')}: <code>\"separator\"</code>, this attribute specifies\n the height of the separator.",
        name:"height",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "group:cursor":{
        ref:"group:cursor",
        refs:[
            "attr:Splitbar.cursor",
            "attr:Splitbar.vResizeCursor",
            "attr:Splitbar.hResizeCursor"
        ],
        name:"cursor",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.showTitle":{
        ref:"attr:FacetChart.showTitle",
        flags:"IRW",
        description:"Whether to show a title.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ImgButton.actionType":{
        flags:"IRW",
        getter:[
            "getActionType"
        ],
        type:"attr",
        ref:"attr:ImgButton.actionType",
        description:"Behavior on state changes -- BUTTON, RADIO or CHECKBOX",
        name:"actionType",
        setter:[
            "setActionType"
        ],
        valueType:"SelectionType",
        seeAlso:[
        ],
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonRadioToggle')}"
        ],
        defaultValue:"\"button\"",
        definingClass:"class:ImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "class:DateRangeItem":{
        methods:[
            "method:DateRangeItem.setFromDate",
            "method:DateRangeItem.setToDate",
            "method:DateRangeItem.hasAdvancedCriteria",
            "method:DateRangeItem.getCriterion",
            "method:DateRangeItem.validateRange",
            "method:DateRangeItem.canEditCriterion",
            "method:DateRangeItem.setCriterion",
            "method:DateRangeItem.setValue",
            "method:DateRangeItem.getValue"
        ],
        ref:"class:DateRangeItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:DateRangeItem.shouldSaveValue",
            "attr:DateRangeItem.fromTitle",
            "attr:DateRangeItem.toTitle",
            "attr:DateRangeItem.innerTitleOrientation",
            "attr:DateRangeItem.allowRelativeDates",
            "attr:DateRangeItem.fromField",
            "attr:DateRangeItem.toField",
            "attr:DateRangeItem.fromDate",
            "attr:DateRangeItem.toDate",
            "attr:DateRangeItem.dateInputFormat",
            "attr:DateRangeItem.inputFormat",
            "attr:DateRangeItem.dateDisplayFormat",
            "attr:DateRangeItem.validateCriteria",
            "attr:DateRangeItem.dateRangeForm",
            "attr:DateRangeItem.relativeItemConstructor",
            "attr:DateRangeItem.absoluteItemConstructor",
            "attr:DateRangeItem.invalidRangeErrorMessage"
        ],
        description:"Allows a user to select an absolute or relative range of dates via two\n ${isc.DocUtils.linkForRef('class:RelativeDateItem')}s (if ${isc.DocUtils.linkForRef('attr:DateRangeItem.allowRelativeDates')} is true) or two\n ${isc.DocUtils.linkForRef('class:DateItem','DateItems')}.\n <P>\n The item's ${isc.DocUtils.linkForRef('attr:FormItem.type','data type')} is expected to be one of \"date\" or \"datetime\" and\n dictates whether the dates in the range include a time portion.  If unset and the item's \n form is databound, the data type is detected from the associated \n ${isc.DocUtils.linkForRef('class:DataSourceField','dataSource field')}.  If there is no such field, or the form is not \n databound, the default data type value is \"date\".\n <P>\n DateRangeItem is just a convenience relative to using two ${isc.DocUtils.linkForRef('class:RelativeDateItem')} or\n ${isc.DocUtils.linkForRef('class:DateItem')} controls in a form, then using ${isc.DocUtils.linkForRef('attr:FormItem.operator')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.criteriaField')} to cause them to produce a date range.  If you need more\n control over layout, validation, event handling or any other aspect of appearance or\n behavior, stop using DateRangeItem and use two DateItem/RelativeDateItem controls directly\n instead.",
        name:"DateRangeItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FormItemEventInfo.icon":{
        ref:"attr:FormItemEventInfo.icon",
        flags:"IR",
        description:"If this event occurred over a formItemIcon this attribute contains the \n ${isc.DocUtils.linkForRef('attr:FormItemIcon.name')} for the icon.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemEventInfo"
    },
    "method:Menu.showSubmenu":{
        ref:"method:Menu.showSubmenu",
        flags:"A",
        description:" Show the submenu for the specified item, if it has one.\n <P>\n Normally triggered automatically by user interaction.\n\n",
        name:"showSubmenu",
        seeAlso:[
        ],
        params:[
            {
                description:"the item in question, or it's index",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem | number"
            }
        ],
        type:"method",
        definingClass:"class:Menu",
        groups:[
            "visibility"
        ]
    },
    "group:skinning":{
        ref:"group:skinning",
        title:"Skinning / Theming",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"Skinning (aka \"theming\" or \"branding\") is the process of modifying SmartClient's default\n look and feel to match the desired look and feel for your application.  SmartClient supports\n an extremely powerful and simple skinning system that allows designers with a basic grasp of\n CSS and JSON to skin any SmartClient component.\n <P>\n <h4>Basics</h4>\n <P>\n <ul>\n <li> SmartClient components create their visual appearance by dynamically generating HTML,\n within the browser, using JavaScript.\n\n <li> the HTML generated by SmartClient components contains CSS style names and URLs to\n images\n\n <li> SmartClient components can be skinned by replacing the CSS styles and images that\n the components use by default, or by setting properties on components to configure\n them to use new CSS styles and new image URLs.\n\n <li> You can change the appearance of an individual SmartClient component by\n <smartclient>\n passing properties to ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')}, or you can skin all\n components of the same class at once, by using ${isc.DocUtils.linkForRef('classMethod:Class.addProperties','addProperties()')}\n and ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults','changeDefaults()')} to change the defaults for the class.\n </smartclient>\n <smartgwt>\n calling setter methods such as ${isc.DocUtils.linkForRef('attr:Canvas.styleName','setStyleName()')} or\n ${isc.DocUtils.linkForRef('attr:Canvas.backgroundColor','setBackgroundColor()')}, or you can skin all\n components of the same class at once, by using Canvas.setDefaultProperties()\n to change the defaults for the class.\n </smartgwt>\n\n\n <li> CSS is used to control details of appearance such as fonts, borders and background\n      colors and gradients, but component properties are used to control layout and\n      positioning of components.  See ${isc.DocUtils.linkForRef('type:CSSStyleName')} for more details about correct\n      usage.\n <li> A \"skin\" consists of:\n <ul>\n <li> a single CSS stylesheet containing all CSS styles used by SmartClient components\n (<code>skin_styles.css</code>)\n <li> a single JavaScript file that sets component defaults (<code>load_skin.js</code>)\n <li> a directory tree of images organized by component\n </ul>\n\n <li>\n The example skins that come with SmartClient are\n <smartclient>in <code>smartclientSDK/isomorphic/skins</code>.</smartclient>\n <smartgwt>inside smartgwt.jar and smartgwt-skins.jar as GWT modules.</smartgwt>\n The standard directory layout for a skin is:\n <pre>\n        skin_styles.css\n        load_skin.js\n        images/\n            ListGrid/\n                sort_ascending.gif\n                ...\n            Tab/\n            ... other directories containing\n                component or shared media ...\n </pre>\n <li>\n <smartclient>\n A skin is loaded via a &lt;SCRIPT SRC=&gt; tag that loads load_skin.js, or, if using\n the SmartClient server, by specifying the \"skin\" property of the ${isc.DocUtils.linkForRef('group:loadISCTag')}.\n </smartclient>\n <smartgwt>\n A skin is implicitly loaded when you add an &lt;inherits&gt; tag in your .gwt.xml file to\n include SmartGWT components (name=\"com.smartgwt(ee).SmartGWT(Pro|Power|EE)\").  To switch skins,\n add the \"NoTheme\" suffix to the \"name\" attribute of this &lt;inherits&gt; tag, then add\n &lt;inherits name=\"com.smartclient.theme.enterpriseblue.<i>SkinName</i>\"/&gt;.  These\n tags cause a &lt;SCRIPT SRC=&gt; tag to be injected into your bootstrap .html page, which loads\n load_skin.js for the appropriate skin.\n </smartgwt>\n load_skin.js loads the stylesheet and sets the CSS styleNames and media URLs that\n SmartClient components will use.\n </ul>\n <P>\n <h4>CSS3 mode</h4>\n <P>\n Three of SmartClient's most commonly used skins - Enterprise, EnterpriseBlue and Graphite - now\n have a \"CSS3 mode\" in which almost all images required by the skin are replaced with CSS3\n settings that appear nearly identical to the image-based appearance.  This results in a\n performance boost through both a simplified DOM and far few images being loaded.\n <P>\n By default CSS3 mode is automatically used in modern browsers such as Firefox, Chrome, Safari,\n IE 9 in standards mode, and IE 10+.  Internet Explorer version 8 and earlier does not have sufficient\n CSS support to create a close match to the existing image-based skin, so CSS3 mode is not\n enabled by default. If CSS3 mode is manually enabled for IE when not automatically enabled,\n this will result in a degraded appearance that is similar across IE6, 7, and 8: rounded elements\n such as tabs will become square, and backgrounds will have lower quality if not disappear.\n <P>\n To override the default decision on whether to use CSS3 support, set the JavaScript global\n variable <code>isc_css3Mode</code> before any of the SmartClient libraries are loaded.  For\n example:\n <pre>\n   &lt;script&gt;isc_css3Mode = \"on\";&lt;/script&gt;\n </pre>\n <P>\n Possible settings are:\n <P>\n <ul>\n   <li>\"supported\" :<br><i>(default setting)</i> CSS3 mode will be used for browsers that fully\n       support it (including rounded edges and full gradient support)</li>\n   <li>\"off\" :<br>CSS3 mode will never be used</li>\n   <li>\"on\" :<br>CSS3 mode will be used for all browsers</li>\n </ul>\n <P>\n For more control than the above settings provide, you can create a custom skin based on one\n of the above 3 skins and modify load_skin.js - whether CSS3 mode is used is controlled by a\n JavaScript variable <code>useCSS3</code> defined in this file.\n <P>\n <b>NOTE</b>: we are working on improving IE9 support using the limited CSS3 features\n provided by this browser, but at the moment, the well-published workarounds for IE9's CSS3\n bugs create other bugs of their own that are, as yet, unresolved.\n <P>\n <h4>Spriting</h4>\n <p>\n In addition to having a CSS3 mode, the Enterprise, EnterpriseBlue, and Graphite skins also\n support spriting of user interface images. This typically results in reduced load times and\n eliminates noticeable delays in changes of component appearance while the browser downloads\n a required image. Because of these benefits, spriting is enabled by default in all browsers\n except for Internet&nbsp;Explorer 6.\n <p>\n When spriting is enabled, SmartClient uses images which have several of the smaller images\n combined into one. For example, the up and down arrow images of a ${isc.DocUtils.linkForRef('class:SpinnerItem')} in\n the normal, \"Focused\", and \"Disabled\" states are combined into one image. The file size of\n the combined image is 65% smaller than the sum of the file sizes of the 6 constituent images,\n and the browser does not have to make 6 separate HTTP requests.\n <p>\n If certain component metrics (such as the height of a component or padding) are changed,\n then the Enterprise, EnterpriseBlue, and Graphite skins' image sprites might not work in the\n customized skin. In this case, spriting can be disabled by setting the JavaScript global\n variable <code>isc_spriting</code> to \"off\" before any of the SmartClient libraries are loaded.\n For example:\n <pre>\n   &lt;script&gt;isc_spriting = \"off\";&lt;/script&gt;\n </pre>\n Possible settings are:\n <P>\n <ul>\n   <li>\"supported\" :<br><i>(default setting)</i> Spriting will be used in browsers that fully\n       support it</li>\n   <li>\"off\" :<br>Spriting will not be used</li>\n </ul>\n <h4>Modifying Skins</h4>\n <P>\n To modify a skin, first create a copy of one of the skins that comes with the SmartClient\n SDK, then modify the copy.  Full instructions are provided in Chapter 9 of the\n <smartclient>\n ${isc.DocUtils.linkForDocNode('QuickStartGuide', 'QuickStart Guide')}.\n </smartclient>\n <smartgwt>\n <a href='http://docs.smartclient.com' target='_blank'>QuickStart Guide</a>.\n </smartgwt>\n <P>\n <h4>Locating Skinning Properties</h4>\n <P>\n <b>Starting from the name of the component</b>\n <P>\n <smartclient>\n Given a SmartClient component that you want to skin, use the search feature of the SmartClient\n Reference to locate it, and open the \"Instance APIs\" tab:\n </smartclient>\n <smartgwt>\n Given a Smart GWT component that you want to skin, open its JavaDoc:\n </smartgwt>\n <ul>\n <li> for properties that set CSS styles, look for properties whose name includes \"style\", eg\n ${isc.DocUtils.linkForRef('attr:Button.baseStyle')}\n <li> for properties that control URLs to media, look for properties whose name includes\n \"src\", \"image\" or \"icon\", such as ${isc.DocUtils.linkForRef('attr:Img.src')}\n <li> for subcomponents that also support skinning, look for properties that are documented\n as being ${isc.DocUtils.linkForRef('group:autoChildUsage','\"AutoChildren\"')} and check the reference for the type of\n the AutoChild for settable properties.  For example, ${isc.DocUtils.linkForRef('attr:Window.minimizeButton')} is an\n ImgButton and therefore supports ${isc.DocUtils.linkForRef('attr:ImgButton.src')}.  \n </ul>\n <smartclient>\n <b>TIP</b>: the Instance APIs tab allows you to search within just the current class, limit\n the display to just properties or methods, and sort by type.\n </smartclient>\n <P>\n <b>Starting from a running example</b>\n <P>\n <smartclient>\n Open the Developer Console and use the Watch Tab to locate the component or subcomponent you\n want to skin, then locate it in the documentation, as above.\n <P>\n If you don't find the component in the documentation, it may be a custom component specific\n to your organization.  To find the base SmartClient component for a component named\n \"MyComponent\", use the following code to find out the name of the superclass:\n <pre>\n     isc.<i>MyComponent</i>.getSuperClass().getClassName()\n </pre>\n Repeat this until you arrive at a SmartClient built-in class.  You can execute this code in\n the \"Eval JS\" area of the Results pane of the Developer Console.\n </smartclient>\n <P>\n Specific browsers offer alternate approaches to quickly discover the images or style names\n being used for a part of a SmartClient component's appearance:\n <ul>\n <li> the Firefox browser offers a dialog via Tools->\"Page Info\" that gives a manifest of\n media used in the page.\n <li> the <a href='http://www.getfirebug.com/' target='_blank'>Firebug</a> extension for Firefox has an\n \"Inspect\" feature that allows you to see the HTML, CSS and media in use for a given area of\n the screen\n <li> right clicking (option-click on a Mac) on an image and choosing \"Properties\" shows a\n dialog that provides the image URL in most browsers.  Tips:\n <ul>\n <li> if a SmartClient component is showing text over an image, right-click at the very edge of\n the underlying image to get image properties rather than information about the text label\n <li> on some browsers, in order to see the full image URL, you may need to drag select the\n partial URL of the image shown in the properties dialog\n </ul>\n </ul>\n <P>\n <h4>Image URLs in SmartClient</h4>\n <P>\n Properties that refer to images by URL, such as ${isc.DocUtils.linkForRef('attr:Img.src')} and ${isc.DocUtils.linkForRef('attr:Button.icon')}, are\n specially interpreted in SmartClient to allow for simpler and more uniform image URLs,\n and to allow applications to be restructured more easily.\n <P>\n Unlike the URL used with an HTML &lt;IMG&gt; element, the image URL passed to a SmartClient\n component is not assumed to be relative to the current page.  See ${isc.DocUtils.linkForRef('type:SCImgURL')} for a\n full explanation of the default application image directory, and the meaning of the \"[SKIN]\"\n prefix.\n <P>\n <h4>Specifying Image URLs</h4>\n <P>\n Default image URLs for SmartClient components are specified in <code>load_skin.js</code> via\n JavaScript, using calls to ${isc.DocUtils.linkForRef('classMethod:Class.addProperties')} and\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')}.  For example, the <code>load_skin.js</code> file\n from the \"Enterprise\" skin includes the following code to establish the media used by\n ${isc.DocUtils.linkForRef('attr:Window.minimizeButton')}:\n <pre>\n    isc.Window.changeDefaults(\"minimizeButtonDefaults\", {\n         src:\"[SKIN]/Window/minimize.png\"\n    });\n </pre>\n <P>\n <smartgwt><b>NOTE:</b> These are JavaScript APIs and hence do not appear in SmartGWT\n JavaDoc - you may want to refer to the &#83;martClient Reference available at\n <a href='http://www.smartclient.com/product/documentation.jsp' target='_blank'>Isomorphic.com</a> for these specific\n APIs.</smartgwt>\n\n <h4>Specifying Image Sizes</h4>\n <P>\n Many SmartClient components must know some image sizes in advance, in order to allow those\n components to autosize to data or content.\n <P>\n For example, the ${isc.DocUtils.linkForRef('class:ImgTab')}s used in ${isc.DocUtils.linkForRef('class:TabSet')}s are capable of automatically sizing\n to a variable length ${isc.DocUtils.linkForRef('attr:Tab.title')}.  To make this possible, SmartClient must know the\n sizes of the images used as \"endcaps\" on each tab in advance.\n <P>\n Like image URLs, image sizes are specified in <code>load_skin.js</code>.  The following code\n sample establishes the default size of the \"endcaps\" for tabs, by setting a default value\n for ${isc.DocUtils.linkForRef('attr:ImgTab.capSize')}:\n <pre>\n     isc.ImgTab.addProperties({\n         capSize:4\n     })\n </pre>\n <P>\n <h4>Statefulness and Suffixes</h4>\n <P>\n Some components or areas within components, including buttons and the cells within a grid, are\n \"stateful\", meaning that they can be in one of a set of states each of which has a distinct\n visual appearance.\n <P>\n Stateful components switch the CSS styles or image URLs they are using as they transition\n from state to state, appending state information as suffixes on the style names or URL.\n See ${isc.DocUtils.linkForRef('attr:Img.src')} and ${isc.DocUtils.linkForRef('attr:Button.baseStyle')} for details and examples.\n <P>\n SmartClient has built-in logic to manage a series of state transitions, such as:\n <ul>\n <li> \"rollover\": showing a different appearance when the mouse is over a component\n <li> \"button down\": showing a different appearance when the mouse is pressed over a\n component\n <li> \"disabled\": showing a different appearance when a component cannot be interacted with\n <li> \"selected\": showing one of a set of components in a different state to indicate\n selection\n </ul>\n Flags on some components, such as ${isc.DocUtils.linkForRef('attr:ImgButton.showRollOver')}, allow you to control whether the\n component will switch CSS style or image URL when the component transitions into a given state.\n <P>\n <h4>StretchImg: 3-segment stretchable images</h4>\n <P>\n A ${isc.DocUtils.linkForRef('class:StretchImg')} is SmartClient component that renders out a compound image composed of 3\n image files: two fixed-size endcaps images and a stretchable center segment.  Like stateful\n components, the names of each image segment is appended to the image URL as a suffix.  See\n ${isc.DocUtils.linkForRef('attr:StretchImg.src')} for details.\n <P>\n <h4>EdgedCanvas</h4>\n <P>\n Similar to a StretchImg, an ${isc.DocUtils.linkForRef('class:EdgedCanvas')} provides an image-based decorative edge\n around and/or behind another component, with up to 9 segments (a 3x3 grid).  Decorative\n edges can be added to any component by setting ${isc.DocUtils.linkForRef('attr:Canvas.showEdges','showEdges:true')}.\n EdgedCanvas is also used to construct dropshadows, which can be enabled on any component via\n ${isc.DocUtils.linkForRef('attr:Canvas.showShadow','showShadow:true')}.\n <P>\n <smartclient>\n <!-- note: omitted from SmartGWT discussion since you just use ordinary Java subclassing -->\n <h4>Multiple looks for the same component type</h4>\n <P>\n In some cases you need to create two variations in appearance for a component with the same\n behavior.  For example, you may want to create a specialized Window, called \"PaletteWindow\",\n that behaves like a normal Window but has a very compact look & feel.  To create a\n separately skinnable component for PaletteWindow, use ${isc.DocUtils.linkForRef('classMethod:isc.defineClass')}.  For\n example:\n <pre>\n    isc.defineClass(\"PaletteWindow\", \"Window\");\n    isc.PaletteWindow.addProperties({\n        showFooter:false,\n        ...\n    })\n </pre>\n </smartclient>\n <smartgwt>\n <p>\n <h4>Advanced: setScClassName()</h4>\n <p>\n In rare situations, such as trying to share a skin between a &#83;martClient and Smart GWT\n application, you may have a &#83;martClient class that has been defined to hold certain skin\n settings where there is no corresponding Smart GWT class.  For example, you might have a \n &#83;martClient subclass of ListGrid called \"LedgerGrid\" that changes cell styles to appear\n more like a ledger.\n <p>\n In this case, you can generally use the Smart GWT class that is the nearest superclass of\n the &#83;martClient class (ListGrid in this case), then use a call to\n setScClassName(\"LedgerGrid\") to cause the &#83;martClient class to be used as the underlying\n &#83;martClient class used by the GWT ListGrid instance.\n </smartgwt>\n <P>\n <h4>Where to put skin-related JavaScript</h4>\n <P>\n If you're creating a custom skin, you can place JavaScript snippets such as those shown above in your\n custom skin's load_skin.js file.  If you prefer not to create a custom skin for small customizations,\n you can execute JavaScript via a <a href='http://www.google.com/search?q=gwt+jsni' target='_blank'>JSNI</a> method in\n your Java code.  With this latter approach, be sure to change \"isc.\" to \"$wnd.isc.\" wherever it\n appears, and to call the JSNI method before creating any SmartGWT components.\n </smartgwt>\n <p>\n <h4>Limitations</h4>\n <P>\n In most cases, using newer CSS features such as CSS3 prefix attribute selectors or CSS3\n pseudo-classes in a skin will just work, provided the browser supports those CSS features.\n However, in some cases, SmartClient needs to be able to extract style information from\n CSS style declarations. For this reason, only single class name selectors are officially\n supported (e.g. <code>.myButton, .myButtonDown</code>) and @-rules are not supported.",
        name:"skinning",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Slider.trackSrc":{
        ref:"attr:Slider.trackSrc",
        flags:"IRW",
        description:"The base filename for the slider track images.\n The filenames for the track icons are assembled from this base filename and the state of the\n slider, as follows:<br>\n Assume the trackSrc is set to <code>{baseName}.{extension}</code><br>\n The full set of images to be displayed is:<br>\n For horizontal sliders:\n <ul>\n <li><code>h{baseName}_start.{extension}</code>: start (left edge) of the track for a slider\n     that is enabled.\n <li><code>h{baseName}_stretch.{extension}</code>:  the track for an enabled slider; this may\n     be centered, tiled, or stretched.\n <li><code>h{baseName}_end.{extension}</code>:  end (right edge) of the track for a slider\n     that is enabled.\n <li><code>h{baseName}_Disabled_start.{extension}</code>: start (left edge) of the track for a slider\n     that is disabled.\n <li><code>h{baseName}_Disabled_stretch.{extension}</code>:  the track for a disabled slider; this\n     may be centered, tiled, or stretched.\n <li><code>h{baseName}_Disabled_end.{extension}</code>:  end (right edge) of the track for a slider\n     that is disabled.\n </ul>\n For vertical sliders:\n <ul>\n <li><code>v{baseName}_start.{extension}</code>: start (bottom edge) of the track for a slider\n     that is enabled.\n <li><code>v{baseName}_stretch.{extension}</code>:  the track for an enabled slider; this may\n     be centered, tiled, or stretched.\n <li><code>v{baseName}_end.{extension}</code>:  end (top edge) of the track for a slider\n     that is enabled.\n <li><code>v{baseName}_Disabled_start.{extension}</code>: start (bottom edge) of the track for a slider\n     that is disabled.\n <li><code>v{baseName}_Disabled_stretch.{extension}</code>:  the track for a disabled slider; this\n     may be centered, tiled, or stretched.\n <li><code>v{baseName}_end.{extension}</code>:  end (top edge) of the track for a slider\n     that is disabled.\n </ul>",
        name:"trackSrc",
        setter:[
            "setTrackSrc"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.trackImageType",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"track.gif\"",
        type:"attr",
        definingClass:"class:Slider"
    },
    "object:RadialGradient":{
        methods:[
        ],
        ref:"object:RadialGradient",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/Gradients"
        ],
        attrs:[
            "attr:RadialGradient.cx",
            "attr:RadialGradient.cy",
            "attr:RadialGradient.r",
            "attr:RadialGradient.fx",
            "attr:RadialGradient.fy"
        ],
        description:"Definition of a radial gradient.",
        name:"RadialGradient",
        seeAlso:[
        ],
        type:"object",
        inheritsFrom:"Gradient"
    },
    "method:ValuesManager.setDataSource":{
        ref:"method:ValuesManager.setDataSource",
        flags:"A",
        description:" Specifies a dataSource for this valuesManager.  This dataSource will then be used for\n validation and client-server flow methods.\n",
        name:"setDataSource",
        seeAlso:[
        ],
        params:[
            {
                description:"Datasource object or identifier to bind to.",
                optional:false,
                name:"dataSource",
                defaultValue:null,
                type:"string | DataSource"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "method:GridRenderer.rowOver":{
        ref:"method:GridRenderer.rowOver",
        flags:"A",
        description:" Called when the mouse pointer enters a row\n\n",
        name:"rowOver",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:ListGrid.editComplete":{
        ref:"method:ListGrid.editComplete",
        flags:"",
        description:" Callback fired when inline edits have been successfully saved.\n <P>\n No default implementation.\n\n",
        name:"editComplete",
        seeAlso:[
        ],
        params:[
            {
                description:"current index of the row that was saved",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"index of the column that was saved, if applicable",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new values that were saved",
                optional:false,
                name:"newValues",
                defaultValue:null,
                type:"Object | Record"
            },
            {
                description:"the complete original values from before the save occurred",
                optional:false,
                name:"oldValues",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"Event that led to the save",
                optional:false,
                name:"editCompletionEvent",
                defaultValue:null,
                type:"editCompletionEvent"
            },
            {
                description:"for DataSource saves, DSResponse object returned",
                optional:true,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:ListGrid.exportClientData":{
        ref:"method:ListGrid.exportClientData",
        flags:"",
        description:" Exports this component's data with client-side formatters applied, so is suitable for direct\n display to users.  This feature requires the SmartClient server.\n <P>\n Ordinarily, calls to this method go through the static classMethod \n ${isc.DocUtils.linkForRef('classMethod:DataSource.exportClientData')}.  In this case, no server-side DataSources\n are required.  However, if this component is \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.setDataSource','databound')} and you specify a valid \n ${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} in the properties passed to this method, the call\n will go through the instance method ${isc.DocUtils.linkForRef('method:DataSource.exportClientData')} instead.  As the \n documentation for that method explains, this allows you more control on the server side.  \n This approach requires both the SmartClient server and server-side DataSource definitions.\n <P>\n If your ListGrid has custom formatters, formatted values will be exported by default, with\n HTML normalized to text where possible.  Since some levels of HTML normalizing aren't \n possible, this may result in missing or incorrect export values.  In this case, you have \n two options:<ul>\n <li>Set ${isc.DocUtils.linkForRef('attr:ListGridField.exportRawValues','exportRawValues')} on the field.  This will export\n     the raw underlying value of the field; your formatter will not be called</li>\n <li>Have your formatter call ${isc.DocUtils.linkForRef('method:ListGrid.isExportingClientData','isExportingClientData()')}\n     and perform whatever alternative formatting you require if that method returns true</li>\n </ul>\n <P>\n To export data from this component's dataSource, \n see ${isc.DocUtils.linkForRef('method:DataBoundComponent.exportData','exportData')}, which does not include client-side \n formatters, but <b>does</b> include formatters declared in the <code>.ds.xml</code> file.\n <code>exportData()</code> relies on both the SmartClient server and server-side DataSources.\n",
        name:"exportClientData",
        seeAlso:[
            {
                ref:"method:DataSource.exportClientData",
                description:null
            }
        ],
        params:[
            {
                description:"Request properties for the export.  Note that specifying ${isc.DocUtils.linkForRef('attr:DSRequest.exportData','exportData')} on the request properties\n  allows the developer to pass in an explicit data set to export.",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"Optional callback.  If  you specify ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient','exportToClient')}: false in the request\n  properties, this callback will fire after export completes.  Otherwise the callback will\n  fire right before the download request is made to the server.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"RPCCallback"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "classMethod:String.isValidID":{
        ref:"classMethod:String.isValidID",
        flags:"",
        description:" Tests whether the given string is a valid JavaScript identifier.\n\n",
        name:"isValidID",
        seeAlso:[
        ],
        params:[
            {
                description:"the string to test.",
                optional:false,
                name:"string",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if string is a valid JavaScript identifier; false otherwise.",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:String"
    },
    "method:CubeGrid.getColumnFacetValues":{
        ref:"method:CubeGrid.getColumnFacetValues",
        flags:"",
        description:" Return a ${isc.DocUtils.linkForRef('object:FacetValueMap')} indicating the facet values for a specific \n column in the grid.\n",
        name:"getColumnFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"facet values for the specified column. Returns null if the specified       column is not present in the grid.",
            type:"FacetValueMap"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:DrawItem.lineColor":{
        ref:"attr:DrawItem.lineColor",
        flags:"IRW",
        description:"Line color",
        name:"lineColor",
        setter:[
            "setLineColor"
        ],
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"\"#808080\"",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "line"
        ]
    },
    "method:Canvas.bringToFront":{
        ref:"method:Canvas.bringToFront",
        flags:"",
        description:" Puts this widget at the top of the stacking order, so it appears in front of all other\n widgets in the same parent.\n",
        name:"bringToFront",
        seeAlso:[
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('layer')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "zIndex"
        ]
    },
    "attr:TimeItem.displayFormat":{
        ref:"attr:TimeItem.displayFormat",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter')}",
        flags:"IRW",
        description:"What format should this item's time string be presented in?\n <p>\n This attribute does not have an effect if a native HTML5 time input is being used.\n See ${isc.DocUtils.linkForRef('attr:TimeItem.browserInputType')}.",
        name:"displayFormat",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "class:FileLoader":{
        methods:[
        ],
        ref:"class:FileLoader",
        classAttrs:[
            "classAttr:FileLoader.modulesDir",
            "classAttr:FileLoader.defaultModules",
            "classAttr:FileLoader.defaultSkin"
        ],
        classMethods:[
            "classMethod:FileLoader.cacheISC",
            "classMethod:FileLoader.loadISC",
            "classMethod:FileLoader.loadJSFiles",
            "classMethod:FileLoader.loadModules",
            "classMethod:FileLoader.cacheFiles",
            "classMethod:FileLoader.cacheModules",
            "classMethod:FileLoader.cacheImgStates",
            "classMethod:FileLoader.cacheStretchImgStates",
            "classMethod:FileLoader.cacheEdgeImages",
            "classMethod:FileLoader.cacheShadows"
        ],
        treeLocation:[
            "Optional Modules/Network Performance"
        ],
        attrs:[
        ],
        description:"This class enables background (deferred) loading and caching of JS, CSS and Image files.  It is\n designed to work standalone from the rest of the SmartClient framework to provide a lightweight\n caching and loading mechanism for SmartClient modules as well as user-built application\n modules/fragments.\n <p>\n The most common usage scenarios are:\n <ul>\n   <li> Caching JS, CSS, Image files in the browser in anticipation of a transition to a page\n   that requires these files.  For example, a plain HTML (non-SmartClient) login page or\n   landing page can begin caching SmartClient in the background while allowing the user\n   to login, or giving the user something to read.  Normally, loading SmartClient or other\n   large JavaScript files would block page loading and display.  By loading SmartClient in\n   the background only after a simple HTML landing page has loaded, you can completely\n   eliminate perceived download time associated with loading a rich UI application, making a\n   much larger difference in user experience than any difference in framework/application size.\n   <li> Loading a multi-phase UI.  In this scenario, an initial rendering of a page is done with\n   minimal data transfer to the browser.  Then JS, CSS, and Image files are fetched in the\n   background to provide richer UI components.  During this time the user can continue to normally\n   interact with the initial page.  Once loading is complete, the UI is updated with richer\n   components.\n </ul>\n\n The recommended usage pattern is to use the <code>loadISC</code> custom tag provided as part of\n the SmartClient SDK.  You can specify <code>cacheOnly=\"true\"</code> to loadISC to cache the\n SmartClient framework in the background or alternately <code>defer=\"true\"</code> to load the\n SmartClient framework and make it available in the current page.  You can specify the\n <code>onload</code> attribute of the tag to provide a JavaScript callback to your code that will\n be called when the framework loading is complete.\n <p>\n If you're not working in a JSP environment, you can use the\n ${isc.DocUtils.linkForRef('classMethod:FileLoader.cacheISC')}/${isc.DocUtils.linkForRef('classMethod:FileLoader.loadISC')} APIs to accomplish\n the same effect as the <code>loadISC</code> JSP tag.\n <p>\n Additional APIs are provided for performing dynamic caching and loading of other JS, CSS, and\n Image files to improve the performance of your application.  See below.\n <p>\n <b>You must set <code>window.isomorphicDir</code> before loading and using this module unless the\n default of '../isomorphic/' is acceptable.  E.g. if your html file is in your toplevel webroot\n directory, then your HTML file should say (note the trailing slash):</b>\n <pre>\n &lt;SCRIPT&gt;window.isomorphicDir='isomorphic/'&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/modules/ISC_FileLoader.js&gt;&lt;/SCRIPT&gt;\n </pre>\n In addition, <b>if you are using Smart GWT</b>, you must set ${isc.DocUtils.linkForRef('classAttr:FileLoader.modulesDir','modulesDir')} to\n \"modules/\", as follows:\n <pre>\n   isc.FileLoader.modulesDir = \"modules/\";\n </pre>\n \n This module is usable independent of the rest of SmartClient - you can use it on pages that\n don't load any other modules.  In practice, the general pattern is to use this module on\n static HTML pages such as a login page to pre-cache SmartClient modules, application logic,\n skin files, and css so that once the user logs in, there's no latency to load the rich UI.\n <p>\n Note: You can also reference this class via the alias isc.FL",
        name:"FileLoader",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "NetworkPerformance"
        ]
    },
    "method:EditContext.getDefaultPalette":{
        ref:"method:EditContext.getDefaultPalette",
        flags:"",
        description:"${isc.DocUtils.linkForRef('interface:Palette')} to use when an ${isc.DocUtils.linkForRef('object:EditNode')} is being created directly by this EditContext,\n instead of being created due to a user interaction with a palette (eg dragging from\n a ${isc.DocUtils.linkForRef('class:TreePalette')}, or clicking on ${isc.DocUtils.linkForRef('class:MenuPalette')}).\n <P>\n If no defaultPalette is provided, the EditContext uses an automatically created\n ${isc.DocUtils.linkForRef('class:HiddenPalette')}.",
        name:"getDefaultPalette",
        seeAlso:[
        ],
        valueType:"Palette",
        returns:{
            description:"the default Palette",
            type:"Palette"
        },
        type:"method",
        defaultValue:"null",
        definingClass:"interface:EditContext"
    },
    "method:Class.Super":{
        ref:"method:Class.Super",
        flags:"",
        description:"\n Call the SuperClass implementation of an instance method.  For example:\n <pre>\n    isc.defineClass(\"MyButton\", \"Button\").addProperties({\n        // this override causes no change in behavior because it just\n        // calls Super and returns whatever the superclass would return\n        getTitle : function () {\n            return this.Super(\"getTitle\", arguments);\n        },\n\n        // this override would add \"foo\" to the titles of all buttons\n        getTitle : function () {\n            // add code here to take actions before the superclass method is invoked\n\n            var superResult = return this.Super(\"getTitle\", arguments);\n\n            // add code here to take action after the superclass method is invoked\n\n            return superResult + \"foo\";\n        }\n\n    })\n </pre>\n Note that Super is always called with the name of the current method.  You cannot call\n the Super class implementation of another method directly.\n <P>\n It is <b>required</b> to always pass the native 'arguments' object to Super.  Arguments\n is a JavaScript builtin that is available within any JavaScript function - see any\n JavaScript Reference for details.\n <P>\n See also ${isc.DocUtils.linkForRef('classMethod:ClassFactory.defineClass','defineClass()')} and\n ${isc.DocUtils.linkForRef('classMethod:Class.addProperties','addProperties')} for the basics of creating classes\n and overriding methods.\n\n",
        name:"Super",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the superclass method to call",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"native \"arguments\" object, or array of                                           arguments to pass to the Super call",
                optional:false,
                name:"args",
                defaultValue:null,
                type:"arguments or Array"
            },
            {
                description:"native \"arguments\" object, required if an Array is                                  passed for the \"args\" parameter in lieu of the native\n                                  arguments object",
                optional:true,
                name:"nativeArgs",
                defaultValue:null,
                type:"arguments"
            }
        ],
        returns:{
            description:"return value of the superclass call",
            type:"any"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "attr:DateRangeItem.allowRelativeDates":{
        ref:"attr:DateRangeItem.allowRelativeDates",
        flags:"IR",
        description:"Whether to allow the user to specify relative dates (via ${isc.DocUtils.linkForRef('class:RelativeDateItem')}s) or whether\n dates are absolute (via ${isc.DocUtils.linkForRef('class:DateItem')}s).",
        name:"allowRelativeDates",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:HiliteRule.advancedClauseEditButton":{
        ref:"attr:HiliteRule.advancedClauseEditButton",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:ImgButton')} displayed by an advanced hilite-rule and used to open\n it for editing in an ${isc.DocUtils.linkForRef('class:AdvancedHiliteEditor','advanced hilite editor')}.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteRule.advancedClauseEditButtonProperties</code>.",
        name:"advancedClauseEditButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteRule"
    },
    "attr:ColorItem.allowComplexMode":{
        ref:"attr:ColorItem.allowComplexMode",
        flags:"IR",
        description:"Should \"complex\" mode be allowed for the ${isc.DocUtils.linkForRef('class:ColorPicker')} window associated with  \n this ColorItem?<p>\n If false, no \"More\" button is shown on the simple picker",
        name:"allowComplexMode",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ColorItem"
    },
    "attr:StatefulCanvas.showDownIcon":{
        ref:"attr:StatefulCanvas.showDownIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the mouse goes\n down on the button.",
        name:"showDownIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:Scrollbar.startThumbOverlap":{
        ref:"attr:Scrollbar.startThumbOverlap",
        flags:"IRA",
        description:"Number of pixels the thumb is allowed to overlap the buttons at the start of the track.\n Default prevents doubling of 1px borders.  Set higher to allow media that shows curved\n joins between the track button and ScrollThumb.",
        name:"startThumbOverlap",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "thumb"
        ]
    },
    "attr:Calendar.previousButtonHoverText":{
        ref:"attr:Calendar.previousButtonHoverText",
        flags:"IR",
        description:"The text to be displayed when a user hovers over the ${isc.DocUtils.linkForRef('attr:Calendar.previousButton','previous')}\n toolbar button.",
        name:"previousButtonHoverText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Previous\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HiliteRule.removeButton":{
        ref:"attr:HiliteRule.removeButton",
        flags:"IR",
        description:"The Hilite removal ImgButton that appears before this Hilite if ${isc.DocUtils.linkForRef('attr:HiliteRule.showRemoveButton')} \n is set.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteRule.removeButtonProperties</code>.",
        name:"removeButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteRule"
    },
    "attr:OperationBinding.requiresRole":{
        ref:"attr:OperationBinding.requiresRole",
        flags:"IR",
        description:"Comma-separated list of user roles that are allowed to invoke the operation described by\n this operationBinding. If the current user has any of the roles listed, they can\n invoke the operation. Also note that <code>authentication.superuserRole</code> can be \n specified in the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file. If set this denotes a \"super user\" \n role - any user with that role will have access to all operations, regardless of the\n \"requiresRole\" settings for the operation.\n <P>\n Whether the current user has a given role is determined by calling the standard Java\n servlets method <code>httpServletRequest.isUserInRole()</code>, hence works with both simple\n J2EE security (realms and form-based authentication) and JAAS (Java Authentication &\n Authorization Service).\n <P>\n If you wish to use a role-based security scheme that does not make use of the servlet API's \n standards, SmartClient Server also implements the <code>setAuthenticated</code> and\n <code>setUserRoles</code> methods on <code>RPCManager</code>. \n You can use this API to tell SmartClient that all the requests in the queue currently \n being processed are associated with a user who has the roles you supply; in this case,\n SmartClient will not attempt to resolve the user's roles via \n <code>httpServletRequest.isUserInRole()</code>. When taking this approach, the \n <code>rpcManager.setUserRoles()</code> method should be called on the server for \n each transaction received from the client. We recommend doing this by overriding the \n special IDACall servlet and checking server side state to determine the current user's \n roles, calling the API, and then calling <code>handleDSRequest()</code> or\n <code>handleRPCRequest()</code> directly to handle the request(s) passed in.<br>\n Here's an example of this approach which assumes the current user's roles has been\n set directly on the HttpSession object as a comma-separated-string attribute \"roles\":\n <pre><code>\n  public class SecureIDACall extends IDACall {\n\t\t\n      public void processRequest(HttpServletRequest request,\n              HttpServletResponse response)\n       throws ServletException, IOException\n      {\n          HttpSession session = request.getSession();\n          Object roles = session == null ? null : session.getAttribute(\"roles\");\n \n          if (roles != null) {\n              try {\n                  RequestContext context = RequestContext.instance(this, request, response);   \n                  RPCManager rpc = new RPCManager(request, response);\n                  rpc.setAuthenticated(true);\n                  rpc.setUserRoles((String) roles); \n                  \n                  // call processRPCTransaction() to iterate through all RPCRequests and\n                  // DSRequests and execute them\n                  processRPCTransaction(rpc, context);\n \n              } catch (Throwable e) {\n                  handleError(response, e);\n              }\n          } else {\n              super.processRequest(request, response);\n          } \n      }\n  }\n </code></pre>\n <P>\n If there is an operationBinding declared for a given operationType which does not have an\n ${isc.DocUtils.linkForRef('attr:OperationBinding.operationId')}, that is, it is the default operationBinding for the type, then any other\n operationBinding of the same type is assumed to have the same setting for\n <code>requiresRole</code> as the default operationBinding for the operationType.  For\n example, given these declarations:\n <pre>\n     &lt;operationBinding operationType=\"fetch\" requiresRole=\"manager\"&gt;\n           ... settings ...\n      &lt;/operationBinding&gt;\n     &lt;operationBinding operationType=\"fetch\" operationId=\"fetchWithExtraFields\"&gt;\n           ... settings ...\n      &lt;/operationBinding&gt;\n </pre>\n The second operationBinding requires the \"manager\" role even though there is no explicit\n <code>requiresRole</code> declaration.  To prevent the \"manager\" role being required by the\n second operationBinding, add <code>requireRole=\"\"</code>.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:DataSource.requiresRole')} is set, all operations on the DataSource require\n the roles set for the DataSource as a whole, even if they declare individual\n <code>requiresRole</code> attributes.\n <P>\n This property is valid only for a server-side DataSource when using the SmartClient Server.",
        name:"requiresRole",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "auth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:MetricSettings.valueTitle":{
        ref:"attr:MetricSettings.valueTitle",
        flags:"IR",
        description:"A label for the data values, such as \"Sales in Thousands\", typically used as the label for\n the value axis.",
        name:"valueTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:DataSource.getFieldNames":{
        ref:"method:DataSource.getFieldNames",
        flags:"",
        description:" Retrieves the list of fields declared on this DataSource.\n\n",
        name:"getFieldNames",
        seeAlso:[
        ],
        params:[
            {
                description:"If true, returns only those fields that are                                 not marked as hidden",
                optional:false,
                name:"excludeHidden",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"names of all fields declared on this DataSource",
            type:"Array of String"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:ResultSet.getAllCachedRows":{
        ref:"method:ResultSet.getAllCachedRows",
        flags:"A",
        description:" Returns a list of all rows that have been cached.  This is potentially a superset of all rows\n that are available via ${isc.DocUtils.linkForRef('method:ResultSet.getAllVisibleRows')} if the ResultSet is using client-side\n filtering to display a subset of loaded rows (see the ${isc.DocUtils.linkForRef('class:ResultSet','ResultSet overview')}).\n <P>\n If ${isc.DocUtils.linkForRef('method:ResultSet.usingFilteredData')} returns false, this is the same list as would be returned by\n ${isc.DocUtils.linkForRef('method:ResultSet.getAllVisibleRows')}.\n <P>\n This method will not trigger a fetch to load more records.  getAllCachedRows() will return\n null if ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown')} is false.\n <P>\n Records are returned in a new List but the Records within it are the same\n instances that the ResultSet is holding onto.  Hence it's safe to add or remove records from\n the List without affecting the ResultSet but modifying the Records themselves is a direct\n modification of the client-side cache.\n",
        name:"getAllCachedRows",
        seeAlso:[
        ],
        returns:{
            description:"the records in the cache, possibly null",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "classMethod:XMLTools.loadWSDL":{
        ref:"classMethod:XMLTools.loadWSDL",
        flags:"A",
        description:" Load a WSDL file and create an instance of WebService that allows invoking operations and\n binding DataSources to web service operations.\n <P>\n The created WebService object is available in the callback as the single parameter\n \"service\", or can be retrieved via <code>WebService.get(serviceNamespace)</code>.\n <P>\n XML Schema present in the WSDL file will also be processed as described in\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')}.  However note that <b>imported</b> XML Schema\n (&lt;xs:import&gt; tag) will not be automatically loaded and must be loaded manually using\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')} before the loaded service will be usable.  This is because the WSDL\n spec allows but does not require a valid URL to be provided for loading imported XML Schema.\n <P>\n NOTE: unless you are building an application that dynamically contacts WSDL web services\n without prior knowledge, instead of calling loadWSDL(), you should either:\n <ul>\n <li> use the ${isc.DocUtils.linkForRef('group:loadWSDLTag')} tag to eliminate the need for an asynchronous\n download of a WSDL file as part of application startup, <b>OR</b>\n <li> use the \"WSDL\" tab in the Developer Console to obtain the WebService definition as a\n JavaScript file that can be loaded via a normal HTML &lt;SCRIPT SRC=&gt; tag and/or combined\n with other JavaScript files.\n </ul>\n Platform notes:\n <ul>\n <li> loadWSDL() is not supported in Safari 2.0 (but is supported in Safari 3.0.3 and greater)\n However, you can use either approach mentioned above (loadWSDLTag or JavaScript file) with \n Safari pre 3.0.3.\n <li> if you are using a non-Java server, in order to obtain a JavaScript file representing a\n web service, you must run the Developer Console in the Java-based SmartClient SDK\n </ul>\n\n",
        name:"loadWSDL",
        seeAlso:[
        ],
        params:[
            {
                description:"URL to load the WSDL file from",
                optional:false,
                name:"wsdlURL",
                defaultValue:null,
                type:"URL"
            },
            {
                description:"signature is callback(service)",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties to set on the RPCRequest                                         that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"RPCRequest"
            },
            {
                description:"if set, xsd:import statements will be processed                                  automatically to load dependent XSD files where a\n                                  \"location\" is specified.  The callback will not fire until\n                                  all dependencies have been loaded",
                optional:false,
                name:"autoLoadImports",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('WSDLDataSource')}"
        ],
        definingClass:"class:XMLTools",
        groups:[
            "xmlSchema"
        ]
    },
    "type:KeyIdentifier":{
        ref:"type:KeyIdentifier",
        description:"Identifiers for keys pressed by the user used by various methods.<br>\n Valid <code>keyIdentifier</code>s can be either ${isc.DocUtils.linkForRef('type:KeyName')} strings, or objects.<br>\n If a <code>keyIdentifier</code> is specified as an object, it should have the following\n properties:<br>\n - <code>keyName</code>: name of the key<br>\n - <code>ctrlKey</code>: optional boolean - true if ctrl is down.<br>\n - <code>shiftKey</code>: optional boolean - true if shift is down.<br>\n - <code>altKey</code>: optional boolean - true if alt is down.",
        name:"KeyIdentifier",
        seeAlso:[
            {
                ref:"type:KeyName",
                description:null
            }
        ],
        type:"type"
    },
    "method:FormItem.setCellStyle":{
        ref:"method:FormItem.setCellStyle",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FormItem.cellStyle')}.\n\n",
        name:"setCellStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"the new <code>cellStyle</code> value.",
                optional:false,
                name:"newCellStyle",
                defaultValue:null,
                type:"FormItemBaseStyle"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DrawPane.rotation":{
        ref:"attr:DrawPane.rotation",
        flags:"IRW",
        description:"Rotation in degrees for the <code>DrawPane</code> as a whole about the center of the\n <code>DrawPane</code>. The positive direction corresponds to clockwise rotation (for example,\n 45 is rotation clockwise by 45 degrees and -10 is rotation counterclockwise by 10 degrees).",
        name:"rotation",
        setter:[
            "setRotation"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawPane"
    },
    "attr:RelativeDateItem.monthsAgoTitle":{
        ref:"attr:RelativeDateItem.monthsAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"month\".",
        name:"monthsAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N months ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DataBoundComponent.exportData":{
        ref:"method:DataBoundComponent.exportData",
        flags:"",
        description:" Sends the current filter criteria and sort direction to the server, then exports data in the\n requested ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportFormat')}.\n <P>\n A variety of DSRequest settings, such as \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportAs')} and ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename')}, affect the \n exporting process: see ${isc.DocUtils.linkForRef('attr:DSRequest.exportResults','exportResults')} for further detail.\n <P>\n Note that data exported via this method does not include any client-side formatting and\n relies on both the SmartClient server and server-side DataSources.  To export client-data \n with formatters applied, \n see ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData')}, which still requires the\n SmartClient server but does not rely on server-side DataSource definitions (.ds.xml files).\n <P>\n For more information on exporting data, see ${isc.DocUtils.linkForRef('method:DataSource.exportData')}.\n\n",
        name:"exportData",
        seeAlso:[
        ],
        params:[
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"callback to invoke on completion.  Note that this parameter                                  only applies where ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient')} is \n                                  explicitly set to false, because  file downloads do not \n                                  provide ordinary SmartClient callbacks",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:Date.toEuropeanShortDate":{
        ref:"method:Date.toEuropeanShortDate",
        flags:"",
        description:"\t\t\tReturn this date in the format: <code>DD/MM/YYYY</code>\n",
        name:"toEuropeanShortDate",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "method:FacetChart.legendClick":{
        ref:"method:FacetChart.legendClick",
        flags:"",
        description:" Fires when the user clicks on the legend area of the chart.\n <p>\n If the user specifically clicks on a color swatch or it's label, the ${isc.DocUtils.linkForRef('class:FacetValue')}\n clicked on will be provided.\n <p>\n If the chart is a ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis chart')}, the\n ${isc.DocUtils.linkForRef('class:FacetValue')} for the clicked-on metric will also be provided.\n",
        name:"legendClick",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValue that was clicked, or null if click was in        empty space",
                optional:false,
                name:"facetValue",
                defaultValue:null,
                type:"FacetValue"
            },
            {
                description:"for a multi-axis chart, facetValue representing        the clicked metric.  Null if click is in empty space or chart is not  multi-axis",
                optional:false,
                name:"metricFacetValue",
                defaultValue:null,
                type:"FacetValue"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drillCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "classAttr:Browser.isHandset":{
        ref:"classAttr:Browser.isHandset",
        flags:"RW",
        description:"Is the application running on a handset-sized device, with a typical screen width of around\n 3-4 inches?\n <p>\n This typically implies that the application will be working with only 300-400 pixels.",
        name:"isHandset",
        setter:[
            "setIsHandset"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:null,
        type:"classAttr",
        definingClass:"class:Browser"
    },
    "attr:RadioGroupItem.wrap":{
        ref:"attr:RadioGroupItem.wrap",
        flags:"IRW",
        description:"Should the text for items within this radio group wrap?",
        name:"wrap",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RadioGroupItem",
        groups:[
            "appearance"
        ]
    },
    "method:Calendar.setTimelineRange":{
        ref:"method:Calendar.setTimelineRange",
        flags:"",
        description:" Sets the range over which the timeline will display events.\n <P>\n If the <code>end</code> parameter is not passed, the end date of the range will default to \n ${isc.DocUtils.linkForRef('attr:Calendar.defaultTimelineColumnSpan','20')} columns of the current \n ${isc.DocUtils.linkForRef('attr:Calendar.timelineGranularity','granularity')} following the start date.\n \n",
        name:"setTimelineRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start of range",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"end of range",
                optional:true,
                name:"end",
                defaultValue:null,
                type:"date"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:PaletteNode.type":{
        ref:"attr:PaletteNode.type",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:SCClassName')} this paletteNode creates, for example, \"ListGrid\".",
        name:"type",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PaletteNode"
    },
    "attr:Applet.extraHTML":{
        ref:"attr:Applet.extraHTML",
        flags:"IR",
        description:"Any additional HTML you want to throw into the tag that specifies the applet element.",
        name:"extraHTML",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:DataSourceField.childTagName":{
        ref:"attr:DataSourceField.childTagName",
        flags:"IR",
        description:"For a field that is ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple:\"true\"')}, controls the name of the XML tag used for each\n subelement during ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')}.\n <P>\n If unset, the default tag name is \"value\" for a field of simple type, and for a field of\n DataSource type, is the tagName or ID of the DataSource (as though\n <code>xmlSerialize()</code> were called on the child DataSource).",
        name:"childTagName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "xmlSerialize",
            "componentSchema"
        ]
    },
    "attr:PickList.fetchDelay":{
        ref:"attr:PickList.fetchDelay",
        flags:"IRWA",
        description:"For a ComboBox or other pickList that accepts user-entered criteria, how many\n milliseconds to wait after the last user keystroke before fetching data from the server.\n The default setting will initiate a fetch if the user stops typing or pauses briefly.",
        name:"fetchDelay",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"200",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:Process.wizard":{
        ref:"attr:Process.wizard",
        flags:"IR",
        description:"If wizard is set then current workflow will be handled as wizard. Every userTask will\n hide associated form after user finished step.",
        name:"wizard",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Process"
    },
    "attr:Calendar.canResizeTimelineEvents":{
        ref:"attr:Calendar.canResizeTimelineEvents",
        flags:"IR",
        description:"Can ${isc.DocUtils.linkForRef('class:Timeline')} events be stretched by their left and right edges?",
        name:"canResizeTimelineEvents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:TreeGrid.closeFolder":{
        ref:"method:TreeGrid.closeFolder",
        flags:"",
        description:" Closes a folder.\n\n",
        name:"closeFolder",
        seeAlso:[
            {
                ref:"method:TreeGrid.openFolder",
                description:null
            },
            {
                ref:"method:TreeGrid.folderClosed",
                description:null
            }
        ],
        params:[
            {
                description:"node to close",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:FacetChart.dataPointProperties":{
        ref:"attr:FacetChart.dataPointProperties",
        flags:"IR",
        description:"Common properties to apply for all data points (see ${isc.DocUtils.linkForRef('attr:FacetChart.showDataPoints')}).",
        name:"dataPointProperties",
        seeAlso:[
        ],
        valueType:"DrawItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:NavigationBar.leftButtonIcon":{
        ref:"attr:NavigationBar.leftButtonIcon",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:Button.icon','Icon')} for the ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButton','leftButton')}.",
        name:"leftButtonIcon",
        setter:[
            "setLeftButtonIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "method:ListGrid.getTitleField":{
        ref:"method:ListGrid.getTitleField",
        flags:"",
        description:" Method to return the fieldName which represents the \"title\" for records in this\n Component.<br>\n If this.titleField is explicitly specified it will always be used.\n Otherwise, default implementation will check ${isc.DocUtils.linkForRef('attr:DataSource.titleField')} for databound\n compounds.<br>\n For non databound components returns the first defined field name of <code>\"title\"</code>,\n <code>\"name\"</code>, or <code>\"id\"</code> where the field is visible. If we dont find any\n field-names that match these titles, the first field in the component will be used instead.\n",
        name:"getTitleField",
        seeAlso:[
        ],
        returns:{
            description:"fieldName for title field for this component.",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:FormItem.hide":{
        ref:"method:FormItem.hide",
        flags:"I",
        description:" Hide this form item.\n <BR><BR>\n This will cause the form to redraw.  If this item had an item.showIf expression, it will\n be destroyed.\n",
        name:"hide",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:ListGridField.change":{
        ref:"method:ListGridField.change",
        flags:"",
        description:" If this field is editable, any ${isc.DocUtils.linkForRef('method:FormItem.change','change')} handler specified\n on the ListGridField will be passed onto the editors for this field.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:ListGridField.canToggle')} is true, the user may change the value of\n a boolean field without going into edit mode by single clicking on the field. In this\n case the ${isc.DocUtils.linkForRef('method:ListGridField.change')} and ${isc.DocUtils.linkForRef('method:ListGridField.changed')} handlers will\n fire but the <code>form</code> and <code>item</code> parameters will be null.\n\n",
        name:"change",
        seeAlso:[
            {
                ref:"method:ListGridField.changed",
                description:null
            },
            {
                ref:"method:ListGrid.cellChanged",
                description:null
            }
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the editor (form item) itself (also available as \"this\").                              Note that in addition to the standard FormItem APIs available\n                              on the editor, it also has:<br>\n                              - a pointer back to the containing listGrid\n                              [<code>item.grid</code>]<br>\n                              - the colNum being edited [<code>item.colNum</code>]<br>\n                              - the rowNum being edited [<code>item.rowNum</code>]",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"The new value of the form item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"The previous value of the form item",
                optional:false,
                name:"oldValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"The change may be cancelled <smartclient>by returning false</smartclient>",
            type:"Boolean"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:MenuButton.rollOverMenuHideDelay":{
        ref:"attr:MenuButton.rollOverMenuHideDelay",
        flags:"IRA",
        description:"When ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuOnRollOver','showMenuOnRollOver')} is true, this is the delay \n in milliseconds before the menu is automatically hidden following mouseOut.",
        name:"rollOverMenuHideDelay",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"200",
        type:"attr",
        definingClass:"class:MenuButton",
        groups:[
            "appearance"
        ]
    },
    "attr:Applet.useTag":{
        ref:"attr:Applet.useTag",
        flags:"IR",
        values:[
            {
                description:"Use the &lt;applet&gt; tag.  Works on all browsers.",
                value:"\"applet\""
            },
            {
                description:"Use the &lt;object&gt; tag.  Works on IE.",
                value:"\"object\""
            }
        ],
        description:"Specifies the type of tag to use for the applet html.  See\n  <a href='http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/using_tags.html' target='_blank'>http://java.sun.com/j2se/1.4.2/docs/guide/plugin/developer_guide/using_tags.html</a> for a\n  discussion of different tags.",
        name:"useTag",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"applet\"",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:FacetChart.showExpectedValueLine":{
        ref:"attr:FacetChart.showExpectedValueLine",
        flags:"IR",
        description:"Display a line at the ${isc.DocUtils.linkForRef('method:FacetChart.getMean','mean value')}.\n <P>\n Note that this expected value is computed using all of the data points, pooled across all\n facets.  The computation relies only on the values of the main value axis metric and the\n ${isc.DocUtils.linkForRef('attr:FacetChart.probabilityMetric','probability metric')}.\n <P>\n See <a href=\"http://en.wikipedia.org/wiki/Expected_value\">http://en.wikipedia.org/wiki/Expected_value</a>.",
        name:"showExpectedValueLine",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.getExportRowBGColor":{
        ref:"method:ListGrid.getExportRowBGColor",
        flags:"",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData','exportData()')} or\n${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData()')}, background color to use \nfor the given rowNum.\n <p>\nSee ${isc.DocUtils.linkForRef('group:exportBGColor')} for an overview.\n\n",
        name:"getExportRowBGColor",
        seeAlso:[
        ],
        params:[
            {
                description:"row number",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"the record object behind the row being exported",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"background color to use for the row, or null to use the default                 background color",
            type:"CSSColor"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "exportBackgroundColor"
        ]
    },
    "attr:ActiveXControl.params":{
        ref:"attr:ActiveXControl.params",
        flags:"IR",
        description:"A map of key/value pairs to pass to the Active X control as parameters.",
        name:"params",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ActiveXControl"
    },
    "attr:TextExportSettings.forceText":{
        ref:"attr:TextExportSettings.forceText",
        flags:"IR",
        description:"If set, all text fields will use the indicated ${isc.DocUtils.linkForRef('type:ForceTextApproach')} unless they have\n a specific setting for ${isc.DocUtils.linkForRef('method:DataSourceField.exportForceText')}.",
        name:"forceText",
        seeAlso:[
        ],
        valueType:"ForceTextApproach",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "attr:TabSet.leftEdgeSizes":{
        ref:"attr:TabSet.leftEdgeSizes",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeSizes</code>, \n <code>rightEdgeSizes</code>, <code>topEdgeSizes</code> and <code>bottomEdgeSizes</code> \n properties allow the sizes of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge sizes where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"leftEdgeSizes",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:DataSource.qualifyColumnNames":{
        ref:"attr:DataSource.qualifyColumnNames",
        flags:"IR",
        description:"For dataSources of ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')} \"sql\", determines whether we qualify column\n names with table names in any SQL we generate.  This property can be overridden on specific\n operationBindings.",
        name:"qualifyColumnNames",
        seeAlso:[
            {
                ref:"attr:OperationBinding.qualifyColumnNames",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:TileGrid.canReorderTiles":{
        ref:"attr:TileGrid.canReorderTiles",
        flags:"IRW",
        description:"Indicates whether tiles can be reordered by dragging within this tileGrid.",
        name:"canReorderTiles",
        setter:[
            "setCanReorderTiles"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "dragging"
        ]
    },
    "group:focus":{
        ref:"group:focus",
        title:"Focus",
        refs:[
            "method:Canvas.focus",
            "method:Canvas.blur",
            "method:Canvas.containsFocus",
            "method:Canvas.setAccessKey",
            "method:Canvas.setTabIndex",
            "method:Canvas.focusInNextTabElement",
            "method:Canvas.focusInPreviousTabElement",
            "method:Canvas.focusChanged",
            "method:DynamicForm.getFocusItem",
            "method:DynamicForm.focusInItem",
            "method:FormItem.getCanFocus",
            "method:FormItem.focusInItem",
            "method:FormItem.blurItem",
            "classAttr:Canvas.TAB_INDEX_FLOOR",
            "attr:Window.canFocusInHeaderButtons",
            "attr:Canvas.canFocus",
            "attr:Canvas.tabIndex",
            "attr:Canvas.accessKey",
            "attr:DynamicForm.autoFocus",
            "attr:DynamicForm.autoFocusOnError",
            "attr:DynamicForm.selectOnFocus",
            "attr:DynamicForm.selectOnClick",
            "attr:DynamicForm.canFocus",
            "attr:FormItem.canFocus",
            "attr:FormItem.accessKey",
            "attr:FormItem.tabIndex",
            "attr:FormItem.globalTabIndex",
            "attr:FormItem.selectOnFocus",
            "attr:FormItem.selectOnClick",
            "attr:TextItem.selectOnFocus",
            "attr:TextItem.selectOnClick",
            "attr:TextAreaItem.selectOnFocus",
            "attr:TextAreaItem.selectOnClick"
        ],
        description:"Focus is the ability to become the target of keyboard input events.\n <P>\n A widget normally receives focus by being clicked on or tabbed to.",
        name:"focus",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Canvas.getZIndex":{
        ref:"method:Canvas.getZIndex",
        flags:"A",
        description:"\tGet the z-Index of this canvas.<br><br>\n\n",
        name:"getZIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"If passed <code>true</code>, for undrawn widgets, resolve \"auto\" to the next available zIndex.",
                optional:false,
                name:"resolveToNumber",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:null,
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "zIndex"
        ]
    },
    "attr:Label.iconAlign":{
        ref:"attr:Label.iconAlign",
        flags:"IR",
        description:"If this button is showing an icon should it be right or left aligned?",
        name:"iconAlign",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:DSRequest.exportFilename":{
        ref:"attr:DSRequest.exportFilename",
        flags:"IR",
        description:"The name of the file to save the exported data into.  If \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportToFilesystem','exportToFilesystem')} is set, this is the name of the \n file the server creates on its filesystem.  If ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient','exportToClient')}\n is set, this is the filename that will appear to the browser.\n <p>\n If the exportFilename that you specify does not include an extension, one will be added to\n it based on the ${isc.DocUtils.linkForRef('type:ExportFormat')} specified by ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs')}.",
        name:"exportFilename",
        seeAlso:[
            {
                ref:"attr:DSRequest.exportPath",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:ComboBoxItem.filterFields":{
        ref:"attr:ComboBoxItem.filterFields",
        flags:"IR",
        description:"As the user types into this item's textBox, a comboBoxItem will show the\n pick-list of options, and filter the set of results displayed by the current value in the\n text box. For a databound comboBoxItem, by default the entered value is filtered against\n the ${isc.DocUtils.linkForRef('attr:ComboBoxItem.displayField','displayField')} if one is specified, otherwise the\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.valueField','valueField')}.\n <P>\n This attribute allows the developer to explicitly change which fields to filter against,\n causing the user-entered text to be matched against any of the specified set of fields from \n the ${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionDataSource')}.\n <P>\n This essentially causes ${isc.DocUtils.linkForRef('method:ComboBoxItem.getPickListFilterCriteria')} to return an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}\n object representing \"field1 starts with value or field2 starts with value or ...\".  The\n ${isc.DocUtils.linkForRef('type:OperatorId','operator')} used is controlled by ${isc.DocUtils.linkForRef('type:TextMatchStyle')} as usual, that is,\n \"startsWith\" implies the operator \"iStartsWith, \"substring\" implies \"iContains\" and \"exact\"\n implies \"iEquals\".\n <P>\n The most common use case for this setting would be when a comboBoxItem is showing multiple\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.pickListFields')} - if the same set of fields is specified as\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.filterFields')}, the user can use the text-box to filter against\n whichever fields are visible in the pickList.\n <P>\n <smartclient>For finer grained control over comboBoxItem filtering, the \n ${isc.DocUtils.linkForRef('method:ComboBoxItem.getPickListFilterCriteria')} method may be overridden.</smartclient>\n <smartgwt>For finer grained control over comboBoxItem filtering, the\n ${isc.DocUtils.linkForRef('comboBoxItem.setPickListFilterCriteriaFunction')} may be specified.</smartgwt>",
        name:"filterFields",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:DynamicForm.setTarget":{
        ref:"method:DynamicForm.setTarget",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:DynamicForm.target','target')} for this form.\n",
        name:"setTarget",
        seeAlso:[
        ],
        params:[
            {
                description:"New submission target",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "classAttr:Dialog.ASK_TITLE":{
        ref:"classAttr:Dialog.ASK_TITLE",
        flags:"IRW",
        description:"Default title for the dialog displayed in response to the ${isc.DocUtils.linkForRef('classMethod:isc.ask')} method.\n Note that a custom title can be specified as the <code>title</code> attribute of the\n <code>properties</code> parameter passed to that method.",
        name:"ASK_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Question\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.rowContextClick":{
        ref:"method:ListGrid.rowContextClick",
        flags:"",
        description:" Called when a row receives a contextclick event.\n",
        name:"rowContextClick",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('recordClicks')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:TreeGrid.folderContextClick":{
        ref:"method:TreeGrid.folderContextClick",
        flags:"",
        description:"\n This method is called when a context click occurs on a folder record.\n\n",
        name:"folderContextClick",
        seeAlso:[
            {
                ref:"method:TreeGrid.nodeContextClick",
                description:null
            }
        ],
        params:[
            {
                description:"The TreeGrid on which the contextclick occurred.",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TreeGrid"
            },
            {
                description:"The folder (record) on which the contextclick occurred.",
                optional:false,
                name:"folder",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Index of the row where the contextclick occurred.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:ListGrid.rowDoubleClick":{
        ref:"method:ListGrid.rowDoubleClick",
        flags:"A",
        description:" Event handler for when a body record is double-clicked.\n <P>\n Default implementation fires 'editCell' if appropriate, and handles firing\n 'recordDoubleClick' stringMethod if defined at the field or LG level (That method has a\n different signature from this one)\n\n",
        name:"rowDoubleClick",
        seeAlso:[
            {
                ref:"method:ListGrid.recordDoubleClick",
                description:null
            }
        ],
        params:[
            {
                description:"record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"index of the row where the click occurred",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"index of the col where the click occurred",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"indicates whether this was a synthesized record                                              doubleclick in response to a keyboard event",
                optional:true,
                name:"keyboardGenerated",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"false if first click not on same record; true otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:CellSelection.anySelected":{
        ref:"method:CellSelection.anySelected",
        flags:"",
        description:" Is anything in the list selected?\n",
        name:"anySelected",
        seeAlso:[
        ],
        returns:{
            description:"true == at least one item is selected                   false == nothing at all is selected",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "type:CriteriaCombineOperator":{
        ref:"type:CriteriaCombineOperator",
        values:[
            {
                description:null,
                value:"\"and\""
            },
            {
                description:null,
                value:"\"or\""
            }
        ],
        description:"The logical operator to use when combining criteria objects with the \n ${isc.DocUtils.linkForRef('classMethod:DataSource.combineCriteria')} method.",
        name:"CriteriaCombineOperator",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:StretchImg.showRollOverGrip":{
        ref:"attr:StretchImg.showRollOverGrip",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true, this property determines whether to show the\n 'Over' state on the grip image when the user rolls over on this widget. \n Has no effect if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')} is false.",
        name:"showRollOverGrip",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "grip"
        ]
    },
    "method:ResultTree.get":{
        ref:"method:ResultTree.get",
        flags:"",
        description:" Get the item in the openList at a particular position.\n",
        name:"get",
        seeAlso:[
        ],
        params:[
            {
                description:"position of the node to get",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"node at that position",
            type:"TreeNode"
        },
        type:"method",
        definingClass:"class:ResultTree",
        groups:[
            "openList",
            "Items"
        ]
    },
    "method:DrawPane.createLinearGradient":{
        ref:"method:DrawPane.createLinearGradient",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('method:DrawPane.addGradient')}",
        flags:"",
        description:" Creates a linear gradient which can be used by any DrawItem of this DrawPane.\n Any DrawItem's ${isc.DocUtils.linkForRef('attr:DrawItem.fillGradient','fillGradient')} can reference the gradient by the\n given ID.\n\n",
        name:"createLinearGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"the ID of the linear gradient",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"identifier"
            },
            {
                description:"the linear gradient",
                optional:false,
                name:"linearGradient",
                defaultValue:null,
                type:"LinearGradient"
            }
        ],
        returns:{
            description:"id",
            type:"identifier"
        },
        type:"method",
        definingClass:"class:DrawPane"
    },
    "attr:DetailViewer.separatorStyle":{
        ref:"attr:DetailViewer.separatorStyle",
        flags:"IRW",
        description:"CSS style for a separator",
        name:"separatorStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"detail\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "method:Calendar.eventResized":{
        ref:"method:Calendar.eventResized",
        flags:"",
        description:" Called when an event is resized via dragging by a user.  The passed date value is the new\n *end* date for the event, since resizing can only be performed on the bottom edge of an event\n in normal calendar views.\n",
        name:"eventResized",
        seeAlso:[
        ],
        params:[
            {
                description:"new end date and time that event is being resized to",
                optional:false,
                name:"newDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the event as it will be after this resize",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        returns:{
            description:"return false to disallow the resize",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "method:ValuesManager.getValidatedValues":{
        ref:"method:ValuesManager.getValidatedValues",
        flags:"",
        description:" Call ${isc.DocUtils.linkForRef('method:ValuesManager.validate')} to check for validation errors. If no errors are found,\n return the current values for this valuesManager, otherwise return null.\n",
        name:"getValidatedValues",
        seeAlso:[
        ],
        returns:{
            description:"current values or null if validation failed.",
            type:"object|null"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "attr:Gauge.value":{
        ref:"attr:Gauge.value",
        flags:"IRW",
        description:"The current value on the dial.",
        name:"value",
        setter:[
            "setValue"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:FacetChart.legendSwatchSize":{
        ref:"attr:FacetChart.legendSwatchSize",
        flags:"IR",
        description:"Size of individual color swatches in legend.",
        name:"legendSwatchSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "class:CancelItem":{
        methods:[
        ],
        ref:"class:CancelItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:CancelItem.title"
        ],
        description:"Button that cancels any changes in the form, by calling ${isc.DocUtils.linkForRef('method:DynamicForm.cancelEditing')} \n when clicked.\n See ${isc.DocUtils.linkForRef('method:DynamicForm.cancelEditing')} for details on what happens when a form editing is \n cancelled.",
        name:"CancelItem",
        seeAlso:[
        ],
        type:"class"
    },
    "type:DeviceMode":{
        ref:"type:DeviceMode",
        values:[
            {
                description:"mode intended for handset-size devices (phones).  Generally only one UI                  panel will be shown at a time.",
                value:"\"handset\""
            },
            {
                description:"mode intended for tablet-size devices.  Generally, up to two panels are                 shown side by side in \"landscape\" ${isc.DocUtils.linkForRef('type:PageOrientation')}, and only one\n                 panel is shown in \"portrait\" orientation.",
                value:"\"tablet\""
            },
            {
                description:"mode intended for desktop browsers.  Three or more panels may be shown                  simultaneously.",
                value:"\"desktop\""
            }
        ],
        description:"Possible layout modes for UI components that are sensitive to the device type being used\n (a.k.a. \"responsive design\").  See for example ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode')}.",
        name:"DeviceMode",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ColorItem.supportsTransparency":{
        ref:"attr:ColorItem.supportsTransparency",
        flags:"IRW",
        description:"Determines whether the ${isc.DocUtils.linkForRef('class:ColorPicker')} associated with this ColorItem allows the user \n to set transparency/opacity information whilst selecting a color. If false, no opacity\n slider is shown and all colors are 100% opaque.<p>\n <b>Note</b> ColorItems are representations of HTML color strings, they do not implicitly\n support transparency.  Setting supportsTransparency to true just allows the user to \n set opacity with the picker; if you actually want to capture that information,  you will\n also need to override ${isc.DocUtils.linkForRef('method:ColorItem.pickerColorSelected')}.",
        name:"supportsTransparency",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ColorItem"
    },
    "attr:ImgSectionHeader.noDoubleClicks":{
        ref:"attr:ImgSectionHeader.noDoubleClicks",
        flags:"IRA",
        description:"By default doubleClicks are disabled for SectionHeaders. All mouse click\n events will be handled as single clicks. Set this property to <code>false</code>\n to enable standard double-click handling.",
        name:"noDoubleClicks",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgSectionHeader"
    },
    "attr:FilterBuilder.retainValuesAcrossFields":{
        ref:"attr:FilterBuilder.retainValuesAcrossFields",
        flags:"IRW",
        description:"Dictates whether values entered by a user should be retained in the value fields when a \n different field is selected.  Default value is true.\n <P>\n Note that, when switching between fields that have an optionDataSource or valueMap, this\n property is ignored and the values are never retained.",
        name:"retainValuesAcrossFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:ListGridField.filterEditorType":{
        ref:"attr:ListGridField.filterEditorType",
        flags:"IRWA",
        description:"If this ListGrid is showing a filter row, this property can be used to\n      specify the form item class to use for the filter form item associated with this\n      field\n      (Only used if this field is not canFilter:false).<br>\n      Note: If this is not specified, the edit-form item type may be derived from the\n      'editorType' property, typically inherited from datasource fields, or from the\n      'type' of the field (showing the appropriate form item for the data-type).",
        name:"filterEditorType",
        seeAlso:[
        ],
        valueType:"FormItem className",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "filterEditor"
        ]
    },
    "class:ITreeMenuButton":{
        methods:[
        ],
        ref:"class:ITreeMenuButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
        ],
        description:"Button used to display a hierarchical Menu group for representing / selecting tree data.\n  This is derived from the ${isc.DocUtils.linkForRef('class:IMenuButton')} and is ${isc.DocUtils.linkForRef('class:StretchImgButton')} based.\n <P>\n <i><b>Important Note:</b> this class should not be used directly - it is exposed purely for\n ${isc.DocUtils.linkForRef('group:i18nMessages','i18n reasons.')}</i>",
        name:"ITreeMenuButton",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.userSelectAllRecords":{
        ref:"method:ListGrid.userSelectAllRecords",
        flags:"",
        description:" Selects every user-selectable record in the grid. Unlike ${isc.DocUtils.linkForRef('method:ListGrid.selectAllRecords')},\n if a record is ${isc.DocUtils.linkForRef('method:ListGrid.canSelectRecord','unselectable')}, this method will not\n attempt to select it.\n",
        name:"userSelectAllRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Tree.move":{
        ref:"method:Tree.move",
        flags:"",
        description:"\n Moves the specified node to a new parent.\n\n",
        name:"move",
        seeAlso:[
        ],
        params:[
            {
                description:"node to move",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"new parent to move the node to",
                optional:false,
                name:"newParent",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Position of the new node in the children list. If not\t                                specified, the node will be added at the end of the list.",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:DetailViewerField.dataPath":{
        ref:"attr:DetailViewerField.dataPath",
        flags:"IRA",
        description:"dataPath property allows this field to display detail from nested data structures",
        name:"dataPath",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:DataSource.criteriaPolicy":{
        ref:"attr:DataSource.criteriaPolicy",
        flags:"IRWA",
        description:"Decides under what conditions the ${isc.DocUtils.linkForRef('class:ResultSet')} cache should be dropped when the\n ${isc.DocUtils.linkForRef('attr:ResultSet.criteria')} changes.",
        name:"criteriaPolicy",
        seeAlso:[
            {
                ref:"method:DataSource.compareCriteria",
                description:null
            }
        ],
        valueType:"CriteriaPolicy",
        defaultValue:"\"dropOnShortening\"",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "method:Label.setContents":{
        ref:"method:Label.setContents",
        flags:"",
        description:" Changes the contents of a widget to newContents, an HTML string.\n <P>\n When ${isc.DocUtils.linkForRef('attr:Canvas.dynamicContents','dynamicContents')} is set, <code>setContents()</code> can\n also be called with no arguments to cause contents to be re-evaluated.\n\n",
        name:"setContents",
        seeAlso:[
        ],
        params:[
            {
                description:"an HTML string to be set as the contents of this widget",
                optional:true,
                name:"newContents",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('setContents')}"
        ],
        definingClass:"class:Label"
    },
    "method:FacetChart.valueClick":{
        ref:"method:FacetChart.valueClick",
        flags:"",
        description:" Fires when a data value is clicked, and provides information about the data value that\n was clicked as a ${isc.DocUtils.linkForRef('object:DrawnValue')} object.\n <p>\n Specifically, this fires for clicks on pie slices, bars or columns, areas, lines or\n points (in a Scatter plot).\n <p>\n If there are multiple data values at the clicked position, you can use\n ${isc.DocUtils.linkForRef('method:FacetChart.getNearestDrawnValues')} to discover the full list of values at the current\n coordinate (pass in ${isc.DocUtils.linkForRef('method:Canvas.getOffsetX','getOffsetX/Y()')} for the coordinates).\n <p>\n If you want to create behaviors for clicking or moving <i>near</i> shapes without\n requiring a direct hit, implement a standard ${isc.DocUtils.linkForRef('method:Canvas.click')} handler on the\n FacetChart as a whole and use ${isc.DocUtils.linkForRef('method:FacetChart.getNearestDrawnValue')} to discover the nearest\n data values.\n",
        name:"valueClick",
        seeAlso:[
        ],
        params:[
            {
                description:"information about the value that was clicked",
                optional:false,
                name:"drawnValue",
                defaultValue:null,
                type:"DrawnValue"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drillCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "attr:Criterion.end":{
        ref:"attr:Criterion.end",
        flags:"IR",
        description:"End value of a criterion with an operator of type <code>\"valueRange\"</code>.",
        name:"end",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Criterion",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:DataSource.cacheData":{
        ref:"attr:DataSource.cacheData",
        flags:"IRW",
        getter:[
            "getCacheData"
        ],
        description:"For a ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} or client-only DataSource, a set of records to use as a dataset, \n specified as an Array of JavaScript Objects representing records.",
        name:"cacheData",
        setter:[
            "setCacheData"
        ],
        seeAlso:[
        ],
        valueType:"Array of Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "method:CubeGrid.saveEdits":{
        ref:"method:CubeGrid.saveEdits",
        flags:"A",
        description:"\n Validates and saves edits for some cell. If rowNum and colNum are not passed in, the current\n edit cell will be saved.\n <P>\n The 'callback' parameter provides a notification when the save attempt completes.\n Cases under which the callback will fire are:\n <ul><li>Save completed successfully</li>\n <li>No changes to the edited cell, so save not required</li>\n <li>Validation failure occurred on the client or on the server</li></ul>\n Note that if no rowNum/colNum were passed in and the editor is not showing for the cell,\n the callback will NOT fire - in this case, the method is a no-op.\n <P>\n Other, standard callbacks such as ${isc.DocUtils.linkForRef('method:ListGrid.editComplete','editComplete()')},\n ${isc.DocUtils.linkForRef('method:ListGrid.editFailed','editFailed()')} and ${isc.DocUtils.linkForRef('method:ListGrid.cellChanged','cellChanged()')} will\n fire normally.\n <P>\n Note this method does not hide the inline editors if they are showing - to explicitly save \n and end editing, use the method 'endEditing()'\n\n",
        name:"saveEdits",
        seeAlso:[
            {
                ref:"method:ListGrid.endEditing",
                description:null
            }
        ],
        params:[
            {
                description:"Event used to complete cell editing.          Optional, and defaults to <code>\"programmatic\"</code>.  Can be used by the \n          <code>callback</code> method to perform custom actions such as navigation when the \n          save completes.",
                optional:true,
                name:"editCompletionEvent",
                defaultValue:null,
                type:"EditCompletionEvent"
            },
            {
                description:"Callback to fire on completion of the saving process.                                    If no edits were made or client-side validation fails \n                                    the callback will be fired synchronously at the end of this\n                                    method.<br>\n                                    Takes the following parameters:\n                                    <br>- rowNum <i>(Number) edited row number</i>\n                                    <br>- colNum <i>(Number) edited column number</i>\n                                    <br>- editCompletionEvent <i>(EditCompletionEvent) event \n                                      passed in (defaults to <code>\"programmatic\"</code>)</i>\n                                    <br>- success <i>(boolean) false if the save was unable to\n                                      complete due to a validation failure or server-side \n                                      error.</i>",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"Which row should be saved. If unspecified the current edit row                            is saved by default. Note that if there is no current edit cell\n                            this method will no op.",
                optional:true,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Which row should be saved. If unspecified the current edit column                            is saved by default. Note that if there is no current edit cell\n                            this method will no op.",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "type:ListGridEditEvent":{
        ref:"type:ListGridEditEvent",
        values:[
            {
                description:"A single mouse click triggers inline editing",
                value:"\"click\""
            },
            {
                description:"A double click triggers inline editing",
                value:"\"doubleClick\""
            },
            {
                description:"No mouse event will trigger editing.  Editing must be                      programmatically started via ${isc.DocUtils.linkForRef('method:ListGrid.startEditing')}\n                      (perhaps from an external button) or may be triggered by\n                      keyboard navigation if ${isc.DocUtils.linkForRef('attr:ListGrid.editOnFocus')} is set.",
                value:"\"none\""
            }
        ],
        description:"Event that will trigger inline editing.",
        name:"ListGridEditEvent",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "editing"
        ]
    },
    "attr:IMenuButton.showMenuButtonImage":{
        ref:"attr:IMenuButton.showMenuButtonImage",
        flags:"IR",
        description:"Show menu button image (up / down arrowhead) for this menu button.",
        name:"showMenuButtonImage",
        setter:[
            "setShowMenuButtonImage"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "attr:Calendar.dateChooser":{
        ref:"attr:Calendar.dateChooser",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:DateChooser')} used to select the date for which events will be displayed.",
        name:"dateChooser",
        seeAlso:[
        ],
        valueType:"AutoChild DateChooser",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:FormItemIcon.src":{
        ref:"attr:FormItemIcon.src",
        flags:"IRW",
        description:"If set, this property determines this icon's image source.\n If unset the form item's <code>defaultIconSrc</code> property will be used\n instead.<br>\n As with <code>defaultIconSrc</code> this URL will be modified by adding\n \"_Over\" or \"_Disabled\" if appropriate to show the icon's over or disabled state.\n <p>\n If ${isc.DocUtils.linkForRef('attr:FormItemIcon.showRTL','showRTL')} is enabled, then \"_rtl\" will be added to the\n source URL before the extension.\n <p>\n The special value \"blank\" means that no image will be shown for this icon. This\n is particularly useful together with ${isc.DocUtils.linkForRef('attr:FormItemIcon.baseStyle')} to implement\n spriting of the different icon states.",
        name:"src",
        seeAlso:[
            {
                ref:"attr:FormItem.defaultIconSrc",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formIcons')}"
        ],
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "classMethod:SimpleType.applySummaryFunction":{
        ref:"classMethod:SimpleType.applySummaryFunction",
        flags:"",
        description:" Applies a ${isc.DocUtils.linkForRef('type:SummaryFunction')} to an array of records\n",
        name:"applySummaryFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"set of records to retrieve a summary value for",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Objects"
            },
            {
                description:"field for which we're picking up a summary value",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DataSourceField"
            },
            {
                description:"SummaryFunction to apply to the records  in order to retrieve the summary value. May be specified as an explicit function\n  or string of script to execute, or a SummaryFunction identifier",
                optional:false,
                name:"summaryFunction",
                defaultValue:null,
                type:"SummaryFunction"
            }
        ],
        returns:{
            description:"summary value generated from the applied SummaryFunction",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:SimpleType"
    },
    "method:HeaderLevel.titleFormatter":{
        ref:"method:HeaderLevel.titleFormatter",
        flags:"",
        description:" An optional function for providing formatted HTML for the title of a given span in this \n HeaderLevel.  If unset, Timelines use the ${isc.DocUtils.linkForRef('attr:HeaderLevel.titles','titles array')}, if one is\n set, or generate default titles based on the unit-type and date-range.\n <P>\n Note that this method will not run for spans in this headerLevel that have a non-null entry \n in the ${isc.DocUtils.linkForRef('attr:HeaderLevel.titles','titles')} array.\n \n",
        name:"titleFormatter",
        seeAlso:[
        ],
        params:[
            {
                description:"a reference to this headerLevel",
                optional:false,
                name:"headerLevel",
                defaultValue:null,
                type:"HeaderLevel"
            },
            {
                description:"the start of the date-range covered by this span in this level",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the end of the date-range covered by this span in this level - may be                        null",
                optional:false,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the default title as generated by the Timeline",
                optional:false,
                name:"defaultValue",
                defaultValue:null,
                type:"String"
            },
            {
                description:"a reference to the Calendar or Timeline",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"Calendar"
            }
        ],
        returns:{
            description:"The formatted title for the values passed in",
            type:"String"
        },
        type:"method",
        definingClass:"object:HeaderLevel"
    },
    "attr:Slider.flipValues":{
        ref:"attr:Slider.flipValues",
        flags:"IRW",
        description:"Specifies whether the value range of the slider should be flipped so that values increase as\n the thumb is moved down (for a vertical slider) or to the left (for a horizontal slider).",
        name:"flipValues",
        setter:[
            "setFlipValues"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:FacetChart.extraAxisMetrics":{
        ref:"attr:FacetChart.extraAxisMetrics",
        flags:"IR",
        description:"Defines the set of metrics that will be plotted as additional vertical axes.  See the\n main ${isc.DocUtils.linkForRef('class:FacetChart')} docs for an overview of how multi-axis charts are used.\n <p>\n Each metric corresponds to different value property\n of the data records and superimposes its drawn data onto the chart rectangle.\n The value properties are called metrics, and they can be either the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}\n or the \"id\" of a ${isc.DocUtils.linkForRef('class:FacetValue')} of the inlined ${isc.DocUtils.linkForRef('class:Facet')} (which is then called the\n metric facet).  Each value axis has its own gradations that are shown as tick marks\n along the length of the axis.  This property, extraAxisMetrics, specifies the metrics\n to use for additional value axes to the main value axis.\n <p>\n The additional value axis may have their own gradations, chart type, log scale, data colors\n and gradients, and other chart properties.  These properties are specified with\n the ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisSettings')} property.\n <p>\n Value axes, including the main value axis, are labelled in the legend along with\n representations of the charted data.  The labels are taken from the ${isc.DocUtils.linkForRef('attr:FacetValue.title')} of\n each metric's FacetValue (or the ${isc.DocUtils.linkForRef('attr:FacetChart.valueTitle')} if the metric is the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}).\n <p>\n The order of the metrics determines the position of the corresponding axes on\n the chart as well as the z-ordering of the corresponding data lines.\n The first and second extra value axes are placed to the right of the chart rectangle,\n and any remaining extra value axes are placed to the left of the main value axis\n (and therefore to the left of the chart rectangle).",
        name:"extraAxisMetrics",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"[]",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:Calendar.removeEvent":{
        ref:"method:Calendar.removeEvent",
        flags:"",
        description:" Remove an event from this calendar.\n\n",
        name:"removeEvent",
        seeAlso:[
        ],
        params:[
            {
                description:"The event object to remove from the calendar",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:Canvas.getScrollbarSize":{
        ref:"method:Canvas.getScrollbarSize",
        flags:"A",
        description:"  Returns the thickness of this widget's scrollbars.<br>\n  For canvases showing custom scrollbars this is determined from <code>this.scrollbarSize</code>\n\n",
        name:"getScrollbarSize",
        seeAlso:[
            {
                ref:"attr:Canvas.scrollbarSize",
                description:null
            }
        ],
        returns:{
            description:"thickness of the scrollbars, in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:RelativeDateItem.rangeRoundingGranularity":{
        ref:"attr:RelativeDateItem.rangeRoundingGranularity",
        flags:null,
        description:"A map from a granularity of time specified by a user to the granularity of time used for \n rounding.\n <P>\n A relative date such as \"n days from now\" is normally shifted to the end of the day when \n used as a range endpoint, and the beginning of the day when used as the beginning of a range.\n (The rounding direction on some item can be specified via \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.rangePosition')}).\n This causes the intuitive behavior that \"from yesterday to today\" is from the beginning of\n yesterday to the end of today, and that \"from today until 5 days from now\" includes the \n entirety of Friday if today is Monday.\n <P>\n This same rule <i>can</i> be applied to any time granularity, such that \"from now until \n 20 minutes from now\" is up to 5:32 if it is now 5:11:34, and \n \"from now until 2 months from now\" means end of June if it is mid-April.\n <P>\n User intuitions about where this rounding is expected for any given time period tend to\n vary based on what kind of event is being discussed and subtle phrasing differences \n (consider \"up to one year from now\", \"until next year\", \"within the next couple of years\"). \n The defaults behaviors are:\n <ul>\n <li> for days, weeks and months round to <b>day</b> end/beginning\n <li> for hours, round to <b>minute</b> end/beginning\n <li> for minutes and seconds, round to <b>second</b> end/beginning\n </ul>\n To customize this rounding behavior, this attribute may be set to a simple javascript object\n mapping each timeUnit to the granularity for that timeUnit.<br>\n For example the following config code would produce an item where the user could select\n only day or week values, and the selected value would be rounded to the beginning of the day\n if a day was selected, or the beginning of the week if a week was selected:\n <pre>\n  {\n      name:\"fromDate\", type:\"RelativeDateItem\",\n      timeUnitOptions:[\"day\", \"week\"],\n      rangePosition:\"start\",\n      rangeRoundingGranularity:{\n          \"day\":\"day\",\n          \"week\":\"week\"\n      }\n  }\n </pre>",
        name:"rangeRoundingGranularity",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"{...} ; IRWA",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:ListGridField.getGroupTitle":{
        ref:"method:ListGridField.getGroupTitle",
        flags:"",
        description:" Return the title that should be shown to the user for the group with the\n <code>groupValue</code> passed as a parameter.\n <P>\n Default title is the groupValue itself.\n\n",
        name:"getGroupTitle",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            },
            {
                ref:"method:ListGridField.getGroupValue",
                description:null
            }
        ],
        params:[
            {
                description:"the value from the group is created, the result of  ${isc.DocUtils.linkForRef('method:ListGridField.getGroupValue')}",
                optional:false,
                name:"groupValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the node in the grid containing the group.",
                optional:false,
                name:"groupNode",
                defaultValue:null,
                type:"groupNode"
            },
            {
                description:"Field object for which to get group value",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"The name of the field",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the ListGrid displaying the cell",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"Group value to which this record belongs",
            type:"any"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customGrouping')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "grouping"
        ]
    },
    "attr:ListGrid.canRemoveRecords":{
        ref:"attr:ListGrid.canRemoveRecords",
        flags:"IR",
        description:"If set, provide UI for the user to remove records from the grid as an additional field\n showing the ${isc.DocUtils.linkForRef('attr:ListGrid.removeIcon')}, which, when clicked, will call\n ${isc.DocUtils.linkForRef('method:ListGrid.removeRecordClick')} which removes the row from the data set (or if\n ${isc.DocUtils.linkForRef('attr:ListGrid.deferRemoval')} is true changes the ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')} status\n for the record). Individual records can be marked to prevent removal - see\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordCanRemoveProperty')}.\n <P>\n To add a confirmation dialog before a record is removed, set\n ${isc.DocUtils.linkForRef('attr:ListGrid.warnOnRemoval')}.\n <P>\n If deferring removal, the record will appear marked with the ${isc.DocUtils.linkForRef('attr:ListGrid.removedCSSText')}\n until the removal is committed via a call to ${isc.DocUtils.linkForRef('method:ListGrid.saveEdits')}.\n Otherwise, the record will disappear from view. If ${isc.DocUtils.linkForRef('attr:ListGrid.animateRemoveRecord')}\n is true, the removed record will appear to shrink out of view when it is removed.\n <P>\n By default the field will display the ${isc.DocUtils.linkForRef('attr:ListGrid.removeIcon')} next to each record, and\n will be rendered as the rightmost column. Two mechanisms exist to further modify this field:\n <ul>\n <li>To change the position of the remove-field, include an explicitly specified field with\n     the attribute ${isc.DocUtils.linkForRef('attr:ListGridField.isRemoveField','isRemoveField:true')} set. This will then\n     be used as the remove field instead of adding a field to the beginning of the set of\n     columns.</li>\n <li>Additional direct configuration of the remove field may be achieved by modifying\n     ${isc.DocUtils.linkForRef('attr:ListGrid.removeFieldProperties')}.</li>\n </ul>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.deferRemoval')} is true, when a record is marked as removed, the the icon will\n change to display the ${isc.DocUtils.linkForRef('attr:ListGrid.unremoveIcon')} for this row. Clicking on this icon\n will call ${isc.DocUtils.linkForRef('method:ListGrid.unmarkRecordRemoved')} to mark the record as no longer pending\n deletion.",
        name:"canRemoveRecords",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "method:ListGrid.configureGrouping":{
        ref:"method:ListGrid.configureGrouping",
        flags:"",
        description:" Open a MultiGroupDialog to configure the fields used for grouping.\n\n",
        name:"configureGrouping",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Calendar.setCurrentViewName":{
        ref:"method:Calendar.setCurrentViewName",
        flags:"",
        description:" Sets the currently visible view.\n\n",
        name:"setCurrentViewName",
        seeAlso:[
        ],
        params:[
            {
                description:"The name of the view that should be made visible.",
                optional:false,
                name:"viewName",
                defaultValue:null,
                type:"ViewName"
            }
        ],
        returns:{
            description:"The name of the visible view.",
            type:"ViewName"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:MultiComboBoxItem.valueMap":{
        ref:"attr:MultiComboBoxItem.valueMap",
        flags:"IRW",
        description:"The <code>valueMap</code> of the combo box.",
        name:"valueMap",
        seeAlso:[
            {
                ref:"attr:FormItem.valueMap",
                description:null
            }
        ],
        valueType:"Array or Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:SelectItem.hiliteOnFocus":{
        ref:"attr:SelectItem.hiliteOnFocus",
        deprecated:"As of SmartClient version 5.5, use ${isc.DocUtils.linkForRef('attr:SelectItem.showFocused')} instead.",
        flags:"IRWA",
        description:"Should this SelectItem show a hilite when it receives keyboard focus?",
        name:"hiliteOnFocus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "type:FieldType":{
        ref:"type:FieldType",
        values:[
            {
                description:"Generic text, e.g. <code>\"John Doe\"</code>. This is the default field type.                    Use <code>field.length</code> to set length.",
                value:"\"text\""
            },
            {
                description:"A boolean value, e.g. <code>true</code>",
                value:"\"boolean\""
            },
            {
                description:"A whole number, e.g. <code>123</code>",
                value:"\"integer\""
            },
            {
                description:"A floating point (decimal) number, e.g. <code>1.23</code>",
                value:"\"float\""
            },
            {
                description:"A logical date, with no time value (such as a holiday or birthday).                    Represented on the client as a JavaScript <code>Date</code> object where\n                    time values are ignored.  See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more\n                    information on date display and serialization formats. See also\n                    ${isc.DocUtils.linkForRef('class:Date')} for SmartClient extensions to\n                    the <code>Date</code> object.",
                value:"\"date\""
            },
            {
                description:"A time of day, with no date.  Represented on the client as a JavaScript                    <code>Date</code> object in UTC/GMT by default (see also\n                    ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} and the ${isc.DocUtils.linkForRef('class:Time')} class).",
                value:"\"time\""
            },
            {
                description:"A date and time, accurate to the second. Represented on the client as a                     JavaScript <code>Date</code> object. See also\n                    ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')}\n                    and ${isc.DocUtils.linkForRef('class:Date')} for\n                    SmartClient extensions to the <code>Date</code> object.",
                value:"\"datetime\""
            },
            {
                description:"A text value constrained to a set of legal values specified by the                    field's ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap','valueMap')}, as though a\n                    ${isc.DocUtils.linkForRef('type:ValidatorType')} of \"isOneOf\" had been declared.",
                value:"\"enum\""
            },
            {
                description:"An enum whose values are numeric.",
                value:"\"intEnum\""
            },
            {
                description:"If you are using the SmartClient SQL datasource connector, a                    <code>sequence</code> is a unique, increasing whole number, incremented\n                    whenever a new record is added. Otherwise, <code>sequence</code> behaves\n                    identically to <code>integer</code>. This type is typically used with\n                    <code>field.primaryKey</code> to auto-generate unique primary keys.\n                    See also ${isc.DocUtils.linkForRef('attr:DataSourceField.sequenceName')} and \n                    ${isc.DocUtils.linkForRef('attr:DataSource.sequenceMode')}",
                value:"\"sequence\""
            },
            {
                description:"A string representing a well-formed URL.  Some components                    will render this as an HTML link (using an anchor tag for example).",
                value:"\"link\""
            },
            {
                description:"A string representing a well-formed URL that points to an                    image.  Some components will render an IMG tag with the value of this field\n                    as the 'src' attribute to render the image.",
                value:"\"image\""
            },
            {
                description:"Arbitrary binary data.  When this field type is present, three additional fields are automatically generated.  They are: &lt;fieldName&gt;_filename, &lt;fieldName&gt;_filesize, and\n &lt;fieldName&gt;_date_created where &lt;fieldName&gt; is the value of the <code>name</code>\n attribute of this field.  These fields are marked as\n ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden')}<code>:true</code> to suppress their rendering by default.  You\n can show one or more of these fields by specifying the field with a <code>hidden:false</code>\n override in the fields array of the databound component.\n <i>Stream / view file support for custom DataSources</i>: a custom DataSource or ${isc.DocUtils.linkForRef('class:DMI')} \n must implement the \"viewFile\" and \"downloadFile\" operationTypes and return a single Record\n with a byte[] as the field value for the binary field.  For more detail see\n the overview of ${isc.DocUtils.linkForRef('group:binaryFields','Binary Fields')}.",
                value:"\"binary\""
            },
            {
                description:"Binary data comprising an image.  Causes ${isc.DocUtils.linkForRef('class:ViewFileItem')} to be used                    when the field is displayed in a form, allowing the image to optionally\n                    be displayed inline.",
                value:"\"imageFile\""
            },
            {
                description:"Fields of this type can contain any data value and have no default                     formatting or validation behavior. This is useful as the \n                    ${isc.DocUtils.linkForRef('attr:SimpleType.inheritsFrom','parent type')} for SimpleTypes\n                    where you do not want any of the standard validation or formatting logic\n                    to be inherited from the standard built-in types.",
                value:"\"any\""
            },
            {
                description:"Synonymous with \"any\".",
                value:"\"custom\""
            },
            {
                description:"Fields of this type are automatically populated by the SmartClient Server                     with the current authenticated userId as part of \"add\" and \"update\" \n                    operations.  By default, fields of this type are hidden and not editable;\n                    the server ignores any value that the client sends in a field of this type.\n                    Note that the \"authenticated user\" can be set explicitly on the server-side \n                    <code>RPCManager</code> using the setUserId() method, or it can come from\n                    the servlet API if you are using its built-in authentication scheme.  See\n                    the server-side Javadocs for <code>RPCManager</code>.",
                value:"\"modifier\""
            },
            {
                description:"Fields of this type are automatically populated by the SmartClient                    Server with the current date and time as part of \"add\" and \"update\" \n                    operations.  By default, fields of this type are hidden and not editable;\n                    the server ignores any value that the client sends in a field of this type.",
                value:"\"modifierTimestamp\""
            },
            {
                description:"Fields of this type are automatically populated by the SmartClient Server                     with the current authenticated userId as part of \"add\" operations.\n                    By default, fields of this type are hidden and not editable;\n                    the server ignores any value that the client sends in a field of this type.\n                    The notes about type \"modifier\" also apply to fields of this type.",
                value:"\"creator\""
            },
            {
                description:"Fields of this type are automatically populated by the SmartClient                    Server with the current date and time as part of an \"add\" operation (when\n                    the record is first created).  By default, fields of this type are hidden\n                    and not editable; the server ignores any value that the client sends in a\n                    field of this type.",
                value:"\"creatorTimestamp\""
            },
            {
                description:"Same as \"text\", but causes ${isc.DocUtils.linkForRef('class:PasswordItem')} to be used by default for                    editing (hides typed-in value).",
                value:"\"password\""
            },
            {
                description:"A special field type specifically for use with Unicode data in conjunction                    with the Microsoft SQL Server database.  Field type \"ntext\" implies the \n                    use of ${isc.DocUtils.linkForRef('attr:DataSourceField.sqlStorageStrategy','sqlStorageStrategy')} \"ntext\";\n                    other than that, this type is identical to \"text\"",
                value:"\"ntext\""
            },
            {
                description:"An integer number with locale-based formatting, e.g. <code>12,345,678</code>.                    See ${isc.DocUtils.linkForRef('group:localizedNumberFormatting','Localized Number Formatting')}\n                    for more info.",
                value:"\"localeInt\""
            },
            {
                description:"A float number with locale-based formatting, e.g. <code>12,345.67</code>.                    See ${isc.DocUtils.linkForRef('group:localizedNumberFormatting','Localized Number Formatting')}\n                    for more info.",
                value:"\"localeFloat\""
            },
            {
                description:"A float number with locale-based formatting and using currency                    symbol, e.g. <code>$12,345.67</code>.\n                    See ${isc.DocUtils.linkForRef('group:localizedNumberFormatting','Localized Number Formatting')}\n                    for more info.",
                value:"\"localeCurrency\""
            },
            {
                description:"A telephone number.  Uses ${isc.DocUtils.linkForRef('attr:FormItem.browserInputType')} \"tel\" to                    hint to the device to restrict input.  On most mobile devices that have\n                    software keyboards, this cause a specialized keyboard to appear which\n                    only allows entry of normal phone numbers.  When displayed read-only,\n                    a \"phoneNumber\" renders as an HTML link with the \"tel:\" URL scheme,\n                    which will invoke the native phone dialing interface on most mobile\n                    devices.  In addition, the CSS style \"sc_phoneNumber\" is applied.\n                    <p>\n                    By default, \"phoneNumber\" fields do not include validators, however the\n                    following validator definition would limit to digits, dashes and the\n                    \"+\" character:\n                    xml:\n                    <p>\n                    &lt;validator type=\"regexp\" expression=\"^(\\(?\\+?[0-9]*\\)?)?[0-9_\\- \\(\\)]*$\"\n                        errorMessage=\"Phone number should be in the correct format e.g. +#(###)###-##-##\" /&gt;\n                    <smartclient>\n                        <p>\n                        or directly in javascript:\n                        <p>\n <pre>\n {type:\"regexp\", expression:\"^(\\\\(?\\\\+?[0-9]*\\\\)?)?[0-9_\\\\- \\\\(\\\\)]*$\", \n     errorMessage:\"Phone number should be in the correct format e.g. +#(###)###-##-##\"}\n </pre>\n                    </smartclient>\n                    <smartgwt>\n                        <p>\n                        or directly in smartgwt:\n                        <p>\n <pre>\n RegExpValidator v = new RegExpValidator();\n v.setType(ValidatorType.REGEXP);\n v.setErrorMessage(\"Phone number should be in the correct format e.g. +#(###)###-##-##\");\n v.setExpression(\"^(\\\\(?\\\\+?[0-9]*\\\\)?)?[0-9_\\\\- \\\\(\\\\)]*$\");\n </pre>\n                    </smartgwt>\n                    and adding \"#\" and \"*\" to the regular expressions above would allow for\n                    users to enter special keys sometimes used for extension numbers or\n                    pauses",
                value:"\"phoneNumber\""
            }
        ],
        description:"The types listed below are built-in types that ${isc.DocUtils.linkForRef('interface:DataBoundComponent','databound\\n components')} understand and treat specially (using type-specific form controls, validators,\n formatters, sorting logic, etc).  \n <P>\n You can declare custom types via ${isc.DocUtils.linkForRef('class:SimpleType','SimpleType.create()')}, with settings that\n will influence DataBound components.  You can also create your own subclasses of databound\n components to add further custom, reusable behaviors based on field.type.\n <P>\n <code>field.type</code> can also be the ID of another ${isc.DocUtils.linkForRef('class:DataSource')}, which allows you to\n model nested structures such as XML documents (in fact, ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')}\n models XML schema in this way).  Nested DataSource declarations affect how XML and JSON data\n is deserialized into JavaScript objects in the \n ${isc.DocUtils.linkForRef('group:clientDataIntegration','client-side integration')} pipeline, so that you can load\n complex XML documents and have them deserialized into a correctly typed nested data\n structure.\n <P>\n Note: to declare related but <i>separate</i> objects, as in an \"Account\" object that can be\n related to both a \"Contact\" object and \"Order\" objects, use\n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')}, <b>not</b> a nested structure declaration.",
        name:"FieldType",
        seeAlso:[
            {
                ref:"type:ListGridFieldType",
                description:null
            },
            {
                ref:"type:FormItemType",
                description:null
            }
        ],
        type:"type",
        serverDS:"allowed"
    },
    "method:CubeGrid.facetLabelHoverHTML":{
        ref:"method:CubeGrid.facetLabelHoverHTML",
        flags:"",
        description:" Get the HTML for the facet label hover.  Default implementation returns null.\n <br><i>methodType</i> callback\n",
        name:"facetLabelHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"ID for the facet",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "method:DynamicForm.setMethod":{
        ref:"method:DynamicForm.setMethod",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:DynamicForm.method','method')} for this form.\n",
        name:"setMethod",
        seeAlso:[
        ],
        params:[
            {
                description:"html form submission method (get or post)",
                optional:false,
                name:"method",
                defaultValue:null,
                type:"FormMethod"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "classMethod:DataSource.combineCriteria":{
        ref:"classMethod:DataSource.combineCriteria",
        flags:"",
        description:" Combines two criteria (either simple criteria objects or AdvancedCriteria) using the \n \"outerOperator\".  Note that the combined criteria object will be an AdvancedCriteria\n unless: <ul>\n <li>both input criteria objects are simple, and</li>\n <li>the \"outerOperator\" is \"and\", and</li>\n <li>there is no collision of key names on the two criteria</li>\n </ul>\n",
        name:"combineCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"first criteria object",
                optional:false,
                name:"criteria1",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"second criteria object",
                optional:false,
                name:"criteria2",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"operator to use to combine the criteria.                                           Defaults to \"and\"",
                optional:true,
                name:"outerOperator",
                defaultValue:null,
                type:"CriteriaCombineOperator"
            },
            {
                description:"style of matching text, if it is necessary to                                          convert a simple criteria object to an \n                                          AdvancedCriteria.  Defaults to \"substring\"",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"The combined criteria",
            type:"Criteria"
        },
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('dynamicReporting')}"
        ],
        definingClass:"class:DataSource"
    },
    "attr:Canvas.noDoubleClicks":{
        ref:"attr:Canvas.noDoubleClicks",
        flags:"IRWA",
        description:"If true, this canvas will receive all mouse-clicks as single ${isc.DocUtils.linkForRef('method:Canvas.click','click')}\n events rather than as ${isc.DocUtils.linkForRef('method:Canvas.doubleClick','doubleClick')} events.",
        name:"noDoubleClicks",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "events"
        ]
    },
    "attr:SelectOtherItem.separatorValue":{
        ref:"attr:SelectOtherItem.separatorValue",
        flags:"IRWA",
        description:"Value for the separator item between normal items and the <code>Other...</code> value. \n If necessary the value may be changed to ensure it doesn't collide with any data values in\n this item's ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')}.",
        name:"separatorValue",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"----\"",
        type:"attr",
        definingClass:"class:SelectOtherItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DSRequest.exportResults":{
        ref:"attr:DSRequest.exportResults",
        flags:"IR",
        description:"When set, causes the results of the DSRequest to be exported to a file, whose name \n and format are indicated by ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename')} and \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs')} respectively.  When no exportFilename is provided, the default is\n <i>Results.csv</i> and the default value of exportAs is <i>csv</i>.  \n <P>\n The export field-list can also be configured, see ${isc.DocUtils.linkForRef('attr:DSRequest.exportFields')}.  Formats \n for exported date and numeric are controlled by several settings - see \n ${isc.DocUtils.linkForRef('group:exportFormatting')} for an overview.\n <P>\n Once the operation completes, ${isc.DocUtils.linkForRef('attr:DSRequest.exportDisplay')} specifies whether the exported\n data should be downloaded to the file-system or displayed in a new window.  The default value\n of exportDisplay is \"download\" which displays the Save As dialog.  See ${isc.DocUtils.linkForRef('type:ExportDisplay')} \n for more information.\n <P>\n You can configure the style of ${isc.DocUtils.linkForRef('type:LineBreakStyle','line-breaks')} to use when \n generating the output, the ${isc.DocUtils.linkForRef('attr:DSRequest.exportDelimiter','delimiter')} to use when exporting\n to CSV and the ${isc.DocUtils.linkForRef('attr:DSRequest.exportTitleSeparatorChar','separator-character')} to use in \n field-titles when exporting to XML.\n <P>\n Additionally, you can output arbitrary text before and after the exported data by setting \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportHeader','exportHeader')} and ${isc.DocUtils.linkForRef('attr:DSRequest.exportFooter','exportFooter')}.\n <P>\n Note that for security reasons, an export initiated using dsRequest properties does not\n provide support for JSON format (see \n <a href=\"http://forums.smartclient.com/showthread.php?t=235\">this post</a> for more detail).\n <P>\n As well as setting dsRequest.exportResults and related properties, exports can be initiated\n in two other ways, via ${isc.DocUtils.linkForRef('class:OperationBinding')}s and via custom server code which sets \n export-related properties on the ${isc.DocUtils.linkForRef('class:DSResponse')}.  Both of those methods support exporting\n to JSON format.\n <P>\n <b>Format Examples</b>\n XML format\n <pre>\n     &lt;List&gt;\n         &lt;Object&gt;\n             &lt;id&gt;10101&lt;/id&gt;\n             &lt;displayName&gt;Record 10101&lt;/displayName&gt;\n         &lt;/Object&gt;\n    &lt;/List&gt;\n </pre>\n JSON Format\n <pre>\n     [\n         { id: 10101, displayName: \"Record 10101\" }\n     ]\n </pre>\n CSV Format\n <pre>\n     id,displayName\n     10101,\"Record 10101\"\n </pre>",
        name:"exportResults",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:DrawSector.getArcMidpoint":{
        ref:"method:DrawSector.getArcMidpoint",
        flags:"",
        description:" Calculates the coordinates of the midpoint of this DrawSector's circular arc. The formula\n for this point is:\n <blockquote>\n <pre>var averageAngle = (startAngle + endAngle) / 2; // in degrees\n[centerX + radius * cosdeg(averageAngle), centerY + radius * sindeg(averageAngle)]</pre>\n </blockquote>\n",
        name:"getArcMidpoint",
        seeAlso:[
        ],
        returns:{
            description:"the coordinates of the midpoint of the arc.",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawSector"
    },
    "type:ExportImageFormat":{
        ref:"type:ExportImageFormat",
        values:[
            {
                description:"Export as PNG",
                value:"\"png\""
            },
            {
                description:"Export as JPEG",
                value:"\"jpeg\""
            }
        ],
        description:"One of the supported formats for image export.",
        name:"ExportImageFormat",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed"
    },
    "method:Array.setProperty":{
        ref:"method:Array.setProperty",
        flags:"",
        description:"\tSet item[property] = value for each item in this array.\n",
        name:"setProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to set",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            },
            {
                description:"value to set to",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"object:Array",
        groups:[
            "iteration"
        ]
    },
    "method:Canvas.scrollTo":{
        ref:"method:Canvas.scrollTo",
        flags:"",
        description:" Scrolls the content of the widget so that the origin (top-left corner) of the content\n is left pixels to the left and top pixels above the widget's top-left corner (but still\n clipped by the widget's dimensions).\n <p>\n This is guaranteed to be called whenever this Canvas is scrolled, whether scrolling is\n initiated programmatically, by custom scrollbars, or a by a native scrollbar.\n\n",
        name:"scrollTo",
        seeAlso:[
        ],
        params:[
            {
                description:"the left coordinate",
                optional:true,
                name:"left",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the top coordinate",
                optional:true,
                name:"top",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:FilterClause.fieldPickerTitle":{
        ref:"attr:FilterClause.fieldPickerTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('class:FieldPicker','field-picker')} select-item.",
        name:"fieldPickerTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Field Name\"",
        type:"attr",
        definingClass:"class:FilterClause",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Tree.closeAll":{
        ref:"method:Tree.closeAll",
        flags:"",
        description:" Close all nodes under a particular node\n\n",
        name:"closeAll",
        seeAlso:[
        ],
        params:[
            {
                description:"node from which to close folders (if not specified, the root                              node is used)",
                optional:true,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:ListGrid.unspannedHeaderVAlign":{
        ref:"attr:ListGrid.unspannedHeaderVAlign",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')} are in use, this property sets the default\n vertical alignment for for fields which do <b>not</b> have a headerSpan.",
        name:"unspannedHeaderVAlign",
        seeAlso:[
        ],
        valueType:"vAlign",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "method:Tree.unloadChildren":{
        ref:"method:Tree.unloadChildren",
        flags:"",
        description:" Unload the children of a folder, returning the folder to the \"unloaded\" state.\n\n",
        name:"unloadChildren",
        seeAlso:[
        ],
        params:[
            {
                description:"folder in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "loadState"
        ]
    },
    "group:sqlPaging":{
        ref:"group:sqlPaging",
        refs:[
            "attr:DataSource.sqlUsePagingHint",
            "attr:DataSource.useSubselectForRowCount",
            "attr:OperationBinding.sqlUsePagingHint"
        ],
        name:"sqlPaging",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TreeGrid.openerIconSize":{
        ref:"attr:TreeGrid.openerIconSize",
        flags:"IRW",
        description:"Default width and height in pixels of the opener icons, that is, the icons which show\n the open or closed state of the node, typically a [+] or [-] symbol, if not overridden\n by ${isc.DocUtils.linkForRef('attr:TreeGrid.openerIconWidth')}/${isc.DocUtils.linkForRef('attr:TreeGrid.openerIconHeight')}.\n <P>\n If ${isc.DocUtils.linkForRef('attr:TreeGrid.showConnectors')} is true, the opener icon includes the connector line, and\n defaults to ${isc.DocUtils.linkForRef('attr:ListGrid.cellHeight','cellHeight')}.\n <P>\n Otherwise, <code>openerIconSize</code> defaults to ${isc.DocUtils.linkForRef('attr:TreeGrid.iconSize')}.",
        name:"openerIconSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:DynamicForm.isPendingAsyncValidation":{
        ref:"method:DynamicForm.isPendingAsyncValidation",
        flags:"",
        description:" Is this component waiting for an asynchronous validation to complete?\n This method will return true after ${isc.DocUtils.linkForRef('method:DynamicForm.validate')} is called on a component with\n server-side validators for some field(s), until the server responds.\n <P>\n Note that the notification method ${isc.DocUtils.linkForRef('method:DynamicForm.handleAsyncValidationReply')} will be fired\n when validation completes.\n",
        name:"isPendingAsyncValidation",
        seeAlso:[
        ],
        returns:{
            description:"true if this widget has pending asynchronous validations in process",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:Canvas.canAcceptDrop":{
        ref:"attr:Canvas.canAcceptDrop",
        flags:"IRWA",
        description:"Indicates that this object can receive dropped widgets (i.e. other widgets can be\n dropped on top of it).",
        name:"canAcceptDrop",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragCreate')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DetailViewerField.dateFormatter":{
        ref:"attr:DetailViewerField.dateFormatter",
        flags:"IRW",
        description:"Display format to use for date type values within this field. \n <P>\n The ${isc.DocUtils.linkForRef('attr:DetailViewerField.timeFormatter')} may also be used to format underlying Date values as\n times (ommitting the date part entirely). If both <code>dateFormatter</code> and\n <code>timeFormatter</code> are specified on a field, for\n fields specified as ${isc.DocUtils.linkForRef('attr:DetailViewerField.type','type \"time\"')} the\n <code>timeFormatter</code> will be used, otherwise the <code>dateFormatter</code>\n <P>\n If <code>field.dateFormatter</code> and <code>field.timeFormatter</code> is unspecified,\n date display format may be defined at the component level via\n ${isc.DocUtils.linkForRef('attr:DetailViewer.dateFormatter')}, or for fields of type <code>\"datetime\"</code>\n ${isc.DocUtils.linkForRef('attr:DetailViewer.datetimeFormatter')}. Otherwise the\n default is to use the system-wide default normal date format, configured via\n ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')}.  Specify any valid ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to \n change the format used by this item.",
        name:"dateFormatter",
        seeAlso:[
            {
                ref:"attr:ListGrid.dateFormatter",
                description:null
            },
            {
                ref:"attr:ListGrid.datetimeFormatter",
                description:null
            },
            {
                ref:"attr:ListGridField.timeFormatter",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "method:SliderItem.setNumValues":{
        ref:"method:SliderItem.setNumValues",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.numValues','number of values')} for the slider \n\n",
        name:"setNumValues",
        seeAlso:[
        ],
        params:[
            {
                description:"the new number of values <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
                optional:false,
                name:"newNumValues",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:SliderItem"
    },
    "method:ListGrid.getFieldState":{
        ref:"method:ListGrid.getFieldState",
        flags:"",
        description:" Returns a snapshot of the current presentation of this listGrid's fields as\n a ${isc.DocUtils.linkForRef('type:ListGridFieldState')} object.\n <P>\n This object can later be passed to ${isc.DocUtils.linkForRef('method:ListGrid.setFieldState')} to reset this grid's\n fields to the current state.\n <P>\n Note that the information stored includes the current width and visibility of each of this\n grid's fields, as well as any ${isc.DocUtils.linkForRef('attr:ListGrid.canAddFormulaFields','formula')} or\n ${isc.DocUtils.linkForRef('attr:ListGrid.canAddSummaryFields','summary fields')} added by the user.\n\n",
        name:"getFieldState",
        seeAlso:[
            {
                ref:"method:ListGrid.setFieldState",
                description:null
            }
        ],
        returns:{
            description:"current state of this grid's fields.",
            type:"ListGridFieldState"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:SelectItem.height":{
        ref:"attr:SelectItem.height",
        flags:"IRW",
        description:"Height of the FormItem.  Can be either a number indicating a fixed height in pixels, a\n percentage indicating a percentage of the overall form's height, or \"*\" indicating take\n whatever remaining space is available. See the ${isc.DocUtils.linkForRef('group:formLayout')} overview for details.\n <p>\n <smartgwt>If height is specified as a String, getHeight() will return -1.  Use \n +sgwtLink{getHeightAsString()} in this case.<p></smartgwt>    \n For form items having a ${isc.DocUtils.linkForRef('attr:SelectItem.showPickerIcon','picker icon')} (e.g. ${isc.DocUtils.linkForRef('class:SelectItem')}, ${isc.DocUtils.linkForRef('class:ComboBoxItem')})\n and ${isc.DocUtils.linkForRef('class:SpinnerItem')}s, if ${isc.DocUtils.linkForRef('group:skinning','spriting')} is enabled, it is not recommended\n to change the height of the form item from the default because the image sprites are set up\n assuming a specific, fixed height of the item. If the item height must be changed, then\n the ${isc.DocUtils.linkForRef('attr:SelectItem.pickerIconStyle','pickerIconStyle')} should be changed to a custom CSS style name.\n Or, in the case of ${isc.DocUtils.linkForRef('class:SpinnerItem')}s, the ${isc.DocUtils.linkForRef('attr:FormItemIcon.baseStyle','baseStyle')} and\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.src','src')} of the ${isc.DocUtils.linkForRef('attr:SpinnerItem.increaseIcon')} and ${isc.DocUtils.linkForRef('attr:SpinnerItem.decreaseIcon')}\n AutoChildren should be customized.",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"19",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formLayoutFilling')}"
        ],
        definingClass:"class:SelectItem",
        groups:[
            "formLayout"
        ]
    },
    "method:Class.getStackTrace":{
        ref:"method:Class.getStackTrace",
        flags:"",
        description:" Returns a \"stack trace\" - one line per method in the current call stack, showing the method\n name and any parameters passed.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.getStackTrace\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n <P>\n Platform Notes: In Mozilla Firefox, if Firebug is enabled, a stack trace will be logged\n to the firebug console in addition to the standard stack trace string returned by\n this method.\n <br>\n In browsers other than Internet Explorer a complete stack trace may not be available - \n this occurs when a function is re-entrant (meaning it calls itself). In this case the\n stack will terminate with text indicating where the recursive function call occurred.\n <P>\n See ${isc.DocUtils.linkForRef('group:debugging')} for further information information.\n\n",
        name:"getStackTrace",
        seeAlso:[
        ],
        returns:{
            description:"stack trace.  Use eg ${isc.DocUtils.linkForRef('method:Class.logWarn')} to log to the Developer Console.",
            type:"String"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "method:Tree.reloadChildren":{
        ref:"method:Tree.reloadChildren",
        flags:"",
        description:" Reload the children of a folder.\n\n",
        name:"reloadChildren",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "loadState"
        ]
    },
    "classMethod:History.getHistoryData":{
        ref:"classMethod:History.getHistoryData",
        flags:"",
        description:"\n Returns the data associated with the specified history id.\n\n",
        name:"getHistoryData",
        seeAlso:[
        ],
        params:[
            {
                description:"The id for which to fetch history data.",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"The data associated with the specified history id.",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:History"
    },
    "method:Array.getLength":{
        ref:"method:Array.getLength",
        flags:"",
        description:" Return the number of items in this list\n\n",
        name:"getLength",
        seeAlso:[
        ],
        returns:{
            description:"number of items in the list",
            type:"Number"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "type:DisplayNodeType":{
        ref:"type:DisplayNodeType",
        values:[
            {
                description:"operate on both folders and leaves",
                value:"null/unset"
            },
            {
                description:"operate on folders only, ignoring leaves",
                value:"\"folders\""
            },
            {
                description:"operate on leaves only, ignoring folders",
                value:"\"leaves\""
            }
        ],
        description:"Flag passed to functions as displayNodeType, telling the function whether it should work on\n folders, leaves or both at once.",
        name:"DisplayNodeType",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "ancestry"
        ]
    },
    "attr:ListGrid.dropCriteriaOnHideField":{
        ref:"attr:ListGrid.dropCriteriaOnHideField",
        flags:"IRW",
        description:"For ListGrids with ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} set to true, if the user hides a field,\n should we discard the criteria for the hidden field when the user next performs a \n filter? This is an equivalent of using the AutoChild system to set \n ${isc.DocUtils.linkForRef('attr:ListGrid.discardEditsOnHideField')} on the ${isc.DocUtils.linkForRef('attr:ListGrid.filterEditor')}.",
        name:"dropCriteriaOnHideField",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:TileLayout":{
        methods:[
            "method:TileLayout.getTile",
            "method:TileLayout.addTile",
            "method:TileLayout.removeTile",
            "method:TileLayout.transferDragData",
            "method:TileLayout.getDragData",
            "method:TileLayout.setTileSize",
            "method:TileLayout.setTileWidth",
            "method:TileLayout.setTileHeight",
            "method:TileLayout.setTilesPerLine",
            "method:TileLayout.setTileMargin",
            "method:TileLayout.setTileHMargin",
            "method:TileLayout.setTileVMargin"
        ],
        ref:"class:TileLayout",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:TileLayout.tiles",
            "attr:TileLayout.layoutPolicy",
            "attr:TileLayout.tileSize",
            "attr:TileLayout.tileWidth",
            "attr:TileLayout.tileHeight",
            "attr:TileLayout.tileMargin",
            "attr:TileLayout.tileHMargin",
            "attr:TileLayout.tileVMargin",
            "attr:TileLayout.layoutMargin",
            "attr:TileLayout.paddingAsLayoutMargin",
            "attr:TileLayout.animateTileChange",
            "attr:TileLayout.orientation",
            "attr:TileLayout.tilesPerLine",
            "attr:TileLayout.overflow",
            "attr:TileLayout.expandMargins",
            "attr:TileLayout.autoWrapLines",
            "attr:TileLayout.dragLine",
            "attr:TileLayout.dragDataAction"
        ],
        description:"Lays out a series of components, calls \"tiles\", in a grid with multiple tiles per row.",
        name:"TileLayout",
        seeAlso:[
        ],
        type:"class"
    },
    "group:valueIcons":{
        ref:"group:valueIcons",
        refs:[
            "method:FormItem.setValueIcons",
            "method:FormItem.getValueIcon",
            "attr:FormItem.valueIcons",
            "attr:FormItem.emptyValueIcon",
            "attr:FormItem.showValueIconOnly",
            "attr:FormItem.suppressValueIcon",
            "attr:FormItem.valueIconWidth",
            "attr:FormItem.valueIconHeight",
            "attr:FormItem.valueIconSize",
            "attr:FormItem.valueIconLeftPadding",
            "attr:FormItem.valueIconRightPadding",
            "attr:FormItem.imageURLPrefix",
            "attr:FormItem.imageURLSuffix",
            "attr:CheckboxItem.showValueIconOver",
            "attr:CheckboxItem.showValueIconDown",
            "attr:CheckboxItem.showValueIconDisabled",
            "attr:CheckboxItem.valueIconWidth",
            "attr:CheckboxItem.valueIconHeight"
        ],
        name:"valueIcons",
        seeAlso:[
        ],
        type:"group"
    },
    "method:TreeGrid.filterData":{
        ref:"method:TreeGrid.filterData",
        flags:"",
        description:" Retrieves data that matches the provided criteria and displays the matching data in this\n component.\n <P>\n This method behaves exactly like ${isc.DocUtils.linkForRef('method:TreeGrid.fetchData')} except that\n ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')} is automatically set to \"substring\" so that String-valued\n fields are matched by case-insensitive substring comparison.\n\n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria.                       If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed in as this argument\n                      instead of a raw criteria object, will be derived by calling\n                      ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete.  Fires                                          only if server contact was required; see\n                                          ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} for details",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"for databound components only - optional                            additional properties to set on the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:Layout.membersChanged":{
        ref:"method:Layout.membersChanged",
        flags:"",
        description:" Fires once at initialization if the layout has any initial members, and then fires whenever\n members are added, removed or reordered.\n \n",
        name:"membersChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:ListGridField.displayField":{
        ref:"attr:ListGridField.displayField",
        flags:"IRW",
        description:"Specifies the ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')} field used to retrieve the display\n values that are to be mapped from the internal values specified by ${isc.DocUtils.linkForRef('attr:ListGridField.valueField')}.\n <P>\n If no <code>optionDataSource</code> is defined for the field, the cell will display\n the displayField value for the current record instead of the underlying value for\n this field.  This approach can be used for situations where field values need a stored\n value to displayed value mapping, but the set of all possible values is too large to\n load as a ${isc.DocUtils.linkForRef('type:ValueMap')} - see ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')} for more details\n on this approach.  Note that if this field is editable this will also be applied to this\n field's editors.  ${isc.DocUtils.linkForExampleId('largeValueMapSQL', 'This sample')} illustrates this\n approach achieved via a server-side SQL join.\n <p>\n The display value for a record with a specified <code>displayField</code> can be\n picked up via ${isc.DocUtils.linkForRef('method:ListGrid.getDisplayValue')}.",
        name:"displayField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "attr:SummaryBuilder.fields":{
        ref:"attr:SummaryBuilder.fields",
        flags:"IRW",
        description:"DataSource providing the available fields for the SummaryBuilder.\n <P>\n By default the SummaryBuilder will include all fields.  Set ${isc.DocUtils.linkForRef('attr:SummaryBuilder.fields')} to \n override this.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "method:TreeGrid.shouldAnimateFolder":{
        ref:"method:TreeGrid.shouldAnimateFolder",
        flags:"",
        description:" Should this folder be animated when opened / closed? Default implementation will\n return true if ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolders')} is true, the folder being actioned\n has children and the child-count is less than the result of\n ${isc.DocUtils.linkForRef('method:TreeGrid.getAnimateFolderMaxRows')}.\n",
        name:"shouldAnimateFolder",
        seeAlso:[
        ],
        params:[
            {
                description:"folder being opened or closed.",
                optional:false,
                name:"folder",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"returns true if folders should be animated when opened / closed.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "animation"
        ]
    },
    "attr:FacetChart.bandedStandardDeviations":{
        ref:"attr:FacetChart.bandedStandardDeviations",
        flags:"IR",
        description:"Whether to show color bands between the ${isc.DocUtils.linkForRef('attr:FacetChart.standardDeviations','standard deviation')}\n lines.\n <p>\n Standard deviation bands are not available for pie or radar charts.",
        name:"bandedStandardDeviations",
        seeAlso:[
            {
                ref:"attr:FacetChart.standardDeviationBandProperties",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ImgButton.showDisabledIcon":{
        ref:"attr:ImgButton.showDisabledIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image if the button becomes\n disabled.",
        name:"showDisabledIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:ListGrid.getGroupByFields":{
        ref:"method:ListGrid.getGroupByFields",
        flags:"",
        description:" Get the current grouping of this listGrid as an array of fieldNames.\n <P>\n This method returns an arry containing the names of the field(s) by which this\n grid is grouped (either from ${isc.DocUtils.linkForRef('attr:ListGrid.groupByField')} having been explicitly set or\n from a call to ${isc.DocUtils.linkForRef('method:ListGrid.groupBy')}). If this grid is not currently grouped, this method\n will return null.\n",
        name:"getGroupByFields",
        seeAlso:[
        ],
        returns:{
            description:"Current grouping for this grid. If grouped by a single field an array  with a single element will be returned.",
            type:"Array of String"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "classMethod:isc.addProperties":{
        ref:"classMethod:isc.addProperties",
        flags:"",
        description:"\n Add all properties and methods from any number of objects to a destination object, \n overwriting properties in the destination object.\n <p>\n Common uses of <code>addProperties</code> include creating a shallow copy of an object:<pre>\n\n     isc.addProperties({}, someObject);\n\n </pre>Combining settings in order of precedence:<pre>\n\n     isc.addProperties({}, defaults, overrides, skinOverrides);\n\n </pre>\n <P>\n <b>NOTE</b>: do not use <code>addProperties</code> to add defaults to an ISC class.  Use\n <code>Class.addProperties()</code>, as in: <i>MyClassName</i><code>.addProperties()</code>.\n\n",
        name:"addProperties",
        seeAlso:[
            {
                ref:"method:Class.addProperties",
                description:null
            }
        ],
        params:[
            {
                description:"object to add properties to",
                optional:false,
                name:"destination",
                defaultValue:null,
                type:"object"
            },
            {
                description:"]\t(object)\tobjects to obtain properties from.  Properties of all \t\t\t\t\t\t\t\t\t\t\targuments other than destination are applied in turn.",
                optional:false,
                name:"[",
                defaultValue:null,
                type:"arguments 1-N"
            }
        ],
        returns:{
            description:"returns the destination object",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:FieldPicker.sampleValueTitle":{
        ref:"attr:FieldPicker.sampleValueTitle",
        flags:"IR",
        description:"The title displayed for the sample value property of the current fields",
        name:"sampleValueTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Sample Value\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ValuesManager.valuesHaveChanged":{
        ref:"method:ValuesManager.valuesHaveChanged",
        flags:"",
        description:" Compares the current set of values with the values stored by the call to the\n ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')} method.  <code>rememberValues()</code> runs when the\n form is initialized and on every call to ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}.\n Returns true if the values have changed, and false otherwise.\n",
        name:"valuesHaveChanged",
        seeAlso:[
            {
                ref:"method:ValuesManager.getChangedValues",
                description:null
            },
            {
                ref:"method:ValuesManager.getOldValues",
                description:null
            }
        ],
        returns:{
            description:"true if current values do not match remembered values",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "classMethod:EventHandler.getTarget":{
        ref:"classMethod:EventHandler.getTarget",
        flags:"",
        description:" Return the canvas that is the target of the mouse event.\n Returns null if no canvas found.\n\n",
        name:"getTarget",
        seeAlso:[
        ],
        returns:{
            description:"event target canvas",
            type:"Canvas"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "mouseEvents"
        ]
    },
    "attr:SpinnerItem.increaseIconProperties":{
        ref:"attr:SpinnerItem.increaseIconProperties",
        flags:"IR",
        description:"FormItemIcon properties applied to the ${isc.DocUtils.linkForRef('attr:SpinnerItem.increaseIcon','increaseIcon')} AutoChild of this\n SpinnerItem.",
        name:"increaseIconProperties",
        seeAlso:[
        ],
        valueType:"FormItemIcon Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "method:ImgButton.setDisabled":{
        ref:"method:ImgButton.setDisabled",
        flags:"",
        description:" Enable or disable this object\n",
        name:"setDisabled",
        seeAlso:[
        ],
        params:[
            {
                description:"true if this widget is to be disabled",
                optional:false,
                name:"disabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "enable",
            "state"
        ]
    },
    "method:GridRenderer.findRowNum":{
        ref:"method:GridRenderer.findRowNum",
        flags:"",
        description:" Given a record displayed in this grid, find and return the rowNum in which the record\n appears.\n <P>\n As with ${isc.DocUtils.linkForRef('method:GridRenderer.getCellRecord')} implementing this method is optional as a valid\n grid may be created without any notion of records.\n\n",
        name:"findRowNum",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"index of the row containing the record or -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:SectionStack.getSectionNumber":{
        ref:"method:SectionStack.getSectionNumber",
        flags:"",
        description:"\n Returns the position of the specified section in the SectionStack.  The numbering is\n zero-based.  \n\n",
        name:"getSectionNumber",
        seeAlso:[
        ],
        params:[
            {
                description:"name of a section for which you want to obtain the position.",
                optional:false,
                name:"sectionName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"Position of the section in the SectionStack or -1 if the specified                      section is not a member of this SectionStack.",
            type:"number"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "attr:Canvas.dragStartDistance":{
        ref:"attr:Canvas.dragStartDistance",
        flags:"IRWA",
        description:"Number of pixels the cursor needs to move before the EventHandler starts a drag operation.",
        name:"dragStartDistance",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ToolbarItem.buttonBaseStyle":{
        ref:"attr:ToolbarItem.buttonBaseStyle",
        flags:"IRW",
        description:"If specified this baseStyle will be applied to the buttons in this toolbar.",
        name:"buttonBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolbarItem",
        groups:[
            "appearance"
        ]
    },
    "group:taskIO":{
        ref:"group:taskIO",
        title:"Task Input / Output",
        refs:[
            "method:ScriptTask.getInputData",
            "method:ScriptTask.setOutputData",
            "method:ScriptTask.getInputRecord",
            "method:ScriptTask.setOutputRecord",
            "attr:ServiceTask.criteria"
        ],
        description:"Each task has inputs, which can be thought of as copied from the \n ${isc.DocUtils.linkForRef('attr:Process.state','Process state')} when the task is started, and outputs, which can be\n thought of as atomically applied to the Process state when a task is completed.\n <P>\n Task can use ${isc.DocUtils.linkForRef('attr:Task.inputField')} to specify the field from the Process state that\n should be used as inputs, and ${isc.DocUtils.linkForRef('attr:Task.outputField')} to specify the field from the\n Process state that the task should output to.\n <P>\n More complex tasks can take multiple fields from the process state via\n ${isc.DocUtils.linkForRef('attr:Task.inputFieldList')} and write to multiple fields of the process state via\n ${isc.DocUtils.linkForRef('attr:Task.outputFieldList')}. In this case, the task is said to have an \"input Record\"\n and/or \"output Record\", which can be thought of as a copy of the process state Record\n with only the fields listed in the <code>inputFieldList</code> are copied.\n <P>\n When both <code>inputField</code> and <code>inputFieldList</code> are specified, the\n inputField is considered the \"primary\" input field and will be used automatically by\n various Task subclasses.",
        name:"taskIO",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ComboBoxItem.generateExactMatchCriteria":{
        ref:"attr:ComboBoxItem.generateExactMatchCriteria",
        flags:"IRWA",
        description:"When a comboBoxItem is used to generate search criteria in a SearchForm this property\n governs whether, if the user explicitly chose an option from the pickList, we explicitly\n generate criteria that will search for an exact match against the chosen value.\n <P>\n In order to achieve this, when this property is set to true, this item will generate\n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} in <smartclient>its ${isc.DocUtils.linkForRef('method:ComboBoxItem.getCriterion')} method</smartclient>\n <smartgwt>the default <code>FormItemCriterionGetter</code>'s <code>getCriterion()</code>\n method</smartgwt>.\n <P>\n See ${isc.DocUtils.linkForRef('method:ComboBoxItem.shouldGenerateExactMatchCriteria')} for behavior when this flag is unset.",
        name:"generateExactMatchCriteria",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:TextAreaItem.wrap":{
        ref:"attr:TextAreaItem.wrap",
        flags:"IRW",
        description:"Text wrapping style.",
        name:"wrap",
        seeAlso:[
        ],
        valueType:"TEXTAREA_WRAP",
        defaultValue:"TextAreaItem.VIRTUAL",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.originBaseStyle":{
        ref:"attr:ListGrid.originBaseStyle",
        flags:"IRW",
        description:"Name of a CSS Style to use as the ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} for a cell that\n is currently a selection origin for shifted incremental cell selection.\n Only has an effect if ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is true.\n <P>",
        name:"originBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:Validator":{
        methods:[
            "method:Validator.condition"
        ],
        ref:"class:Validator",
        classAttrs:[
            "classAttr:Validator.notABoolean",
            "classAttr:Validator.notAString",
            "classAttr:Validator.notAnInteger",
            "classAttr:Validator.notADecimal",
            "classAttr:Validator.notADate",
            "classAttr:Validator.mustBeLessThan",
            "classAttr:Validator.mustBeGreaterThan",
            "classAttr:Validator.mustBeLaterThan",
            "classAttr:Validator.mustBeLaterThanTime",
            "classAttr:Validator.mustBeEarlierThan",
            "classAttr:Validator.mustBeEarlierThanTime",
            "classAttr:Validator.mustBeShorterThan",
            "classAttr:Validator.mustBeLongerThan",
            "classAttr:Validator.mustBeExactLength",
            "classAttr:Validator.requiredField",
            "classAttr:Validator.notOneOf"
        ],
        classMethods:[
            "classMethod:Validator.create",
            "classMethod:Validator.addValidator",
            "classMethod:Validator.addValidators",
            "classMethod:Validator.addValidatorDefinition",
            "classMethod:Validator.addValidatorDefinitions"
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:Validator.type",
            "attr:Validator.applyWhen",
            "attr:Validator.dependentFields",
            "attr:Validator.serverCondition",
            "attr:Validator.serverObject",
            "attr:Validator.resultingValue",
            "attr:Validator.errorMessage",
            "attr:Validator.stopIfFalse",
            "attr:Validator.stopOnError",
            "attr:Validator.clientOnly",
            "attr:Validator.validateOnChange",
            "attr:Validator.serverOnly"
        ],
        description:"A validator describes a check that should be performed on a value the user is trying to\n save.\n <p>\n Validators are specified for DataSource fields via the ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')}\n property.  Validators that need not be run on the server can also be specified for a\n specific ${isc.DocUtils.linkForRef('class:FormItem')} or ${isc.DocUtils.linkForRef('object:ListGridField')}.\n <p>\n SmartClient supports a powerful library of ${isc.DocUtils.linkForRef('type:ValidatorType','ValidatorTypes')} which\n have identical behavior on both the client and the server.  \n <p> \n Beyond this, custom validators can be defined on the client and custom validation logic\n added on the server.  Note that the <code>regexp</code> and <code>mask</code> validator\n types are very flexible and can be used to perform virtually any kind of formatting check\n that doesn't involve some large external dataset.\n <p>\n Custom validators can be reused on the client by adding them to the global validator list,\n via the ${isc.DocUtils.linkForRef('classMethod:Validator.addValidator')} method.",
        name:"Validator",
        seeAlso:[
            {
                ref:"type:ValidatorType",
                description:null
            }
        ],
        type:"class",
        serverDS:"allowed"
    },
    "type:FormMethod":{
        ref:"type:FormMethod",
        values:[
            {
                description:"GET request -- URL encoding (~4K max)",
                value:"DynamicForm.GET"
            },
            {
                description:"POST request -- separate field encoding (no max)",
                value:"DynamicForm.POST"
            }
        ],
        description:"Form METHOD parameters - how the form fields are submitted to the server",
        name:"FormMethod",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "submitting"
        ]
    },
    "class:Slider":{
        methods:[
            "method:Slider.setValue",
            "method:Slider.getValue",
            "method:Slider.valueChanged",
            "method:Slider.valueIsChanging",
            "method:Slider.setMinValue",
            "method:Slider.setMaxValue",
            "method:Slider.setNumValues",
            "method:Slider.setTitle",
            "method:Slider.setVertical",
            "method:Slider.setThumbThickWidth",
            "method:Slider.setThumbThinWidth",
            "method:Slider.setTrackWidth",
            "method:Slider.setThumbSrc",
            "method:Slider.setTrackSrc",
            "method:Slider.setTrackCapSize",
            "method:Slider.setTrackImageType",
            "method:Slider.setShowTitle",
            "method:Slider.setShowRange",
            "method:Slider.setShowValue",
            "method:Slider.setLabelWidth",
            "method:Slider.setLabelHeight",
            "method:Slider.setLabelSpacing",
            "method:Slider.setMaxValueLabel",
            "method:Slider.setRoundValues",
            "method:Slider.setRoundPrecision",
            "method:Slider.setFlipValues",
            "method:Slider.setStepPercent"
        ],
        ref:"class:Slider",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:Slider.title",
            "attr:Slider.length",
            "attr:Slider.vertical",
            "attr:Slider.thumbThickWidth",
            "attr:Slider.thumbThinWidth",
            "attr:Slider.trackWidth",
            "attr:Slider.hThumbStyle",
            "attr:Slider.vThumbStyle",
            "attr:Slider.hTrackStyle",
            "attr:Slider.vTrackStyle",
            "attr:Slider.thumbSrc",
            "attr:Slider.trackSrc",
            "attr:Slider.trackCapSize",
            "attr:Slider.trackImageType",
            "attr:Slider.showTitle",
            "attr:Slider.showRange",
            "attr:Slider.showValue",
            "attr:Slider.labelWidth",
            "attr:Slider.labelHeight",
            "attr:Slider.labelSpacing",
            "attr:Slider.value",
            "attr:Slider.minValue",
            "attr:Slider.minValueLabel",
            "attr:Slider.maxValue",
            "attr:Slider.maxValueLabel",
            "attr:Slider.numValues",
            "attr:Slider.roundValues",
            "attr:Slider.roundPrecision",
            "attr:Slider.flipValues",
            "attr:Slider.sliderTarget",
            "attr:Slider.canFocus",
            "attr:Slider.stepPercent",
            "attr:Slider.animateThumb",
            "attr:Slider.animateThumbTime",
            "attr:Slider.animateThumbInit"
        ],
        description:"The Slider class implements a GUI slider widget allowing the user to select a numeric \n  value from within a range by dragging a visual indicator up and down a track.\n\t<p>\n  The slider will generate events as the user interacts with it and changes its value.\n  If slider.sliderTarget is specified, moving the slider thumb generates a custom\n\tevent named 'sliderMove', sent to the sliderTarget.\n  If a <code>sliderMove</code> handler stringMethod is defined on the target, it will be \n  fired when the slider is moved. The second parameter (available via the variable name\n  <code>eventInfo</code> if the handler is a string) is a pointer back to the slider.\n  <p>\n  The slider will also fire a <code>valueChanged()</code> method whenever its value is \n  changed.  This can be observed or overridden on the Slider instance to perform some action.",
        name:"Slider",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('slider')}"
        ]
    },
    "method:EditContext.setNodeProperties":{
        ref:"method:EditContext.setNodeProperties",
        flags:"",
        description:" Update an editNode's serializable \"defaults\" with the supplied properties. If you\n wish to remove a property from the defaults (rather than setting it to null), then\n use ${isc.DocUtils.linkForRef('method:EditContext.removeNodeProperties','removeNodeProperties()')} instead.\n",
        name:"setNodeProperties",
        seeAlso:[
            {
                ref:"method:EditContext.removeNodeProperties",
                description:null
            }
        ],
        params:[
            {
                description:"the editNode to update",
                optional:false,
                name:"editNode",
                defaultValue:null,
                type:"EditNode"
            },
            {
                description:"the properties to apply",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"Canvas Properties"
            },
            {
                description:"whether to skip updating the                                         ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObject')},\n                                         e.g. if you have already updated the liveObject",
                optional:true,
                name:"skipLiveObjectUpdate",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:ColorPicker.lumFieldPrompt":{
        ref:"attr:ColorPicker.lumFieldPrompt",
        flags:"IR",
        description:"The text to show when the mouse hovers over the 'Luminosity' field in the complex chooser.",
        name:"lumFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The Luminosity (brightness) of the selected color\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Facet.summaryValue":{
        ref:"attr:Facet.summaryValue",
        flags:"IR",
        description:"Value for facet summary.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"summaryValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"cubeGrid.summaryValue",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:SplitPane.detailNavigationControl":{
        ref:"attr:SplitPane.detailNavigationControl",
        flags:"IRWA",
        description:"Navigation control that appears only when the navigation pane is not showing (showing detail\n pane on handset, or portrait mode on tablet).",
        name:"detailNavigationControl",
        setter:[
            "setDetailNavigationControl"
        ],
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "group:springIntegration":{
        ref:"group:springIntegration",
        title:"Integration with Spring",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"<b>Overview</b>\n <P>\n The Spring framework has many different parts, from integration with Object Relational\n Mapping (ORM) and transaction management systems, to a Model View Controller (MVC)\n architecture.\n <P>\n If you are building a new application from scratch and/or you are trying to \n modernize the presentation layer of an existing application, most of Spring MVC is\n inapplicable in the ${isc.DocUtils.linkForRef('group:smartArchitecture','SmartClient architecture')}.  Specifically,\n SmartClient renders <b>all</b> HTML on the client, and the server is responsible only for\n retrieving data and enforcing business rules.  This means that Spring's ModelAndView and all\n functionality related to retrieving and rendering Views is unnecessary in SmartClient.\n SmartClient only needs the Model, and provides methods to deliver that Model to SmartClient\n components (the server side method DSResponse.setData()).\n <P>\n However, Spring's DispatchServlet, Handler chain, and Controller architecture is applicable\n to SmartClient.  See \"Using Spring Controllers\" below.\n <P>\n <b>Existing Spring Application</b>\n <P>\n As discussed under the general ${isc.DocUtils.linkForRef('group:clientServerIntegration','server integration')}\n topic, integrating SmartClient into your application involves finding a way to provide data\n that fulfills the ${isc.DocUtils.linkForRef('class:DSRequest','DataSource requests')} sent by SmartClient components.\n <P>\n There are 2 approaches for integrating SmartClient into an existing Spring application:\n <ul>\n <li> <b>call Spring beans via SmartClient DMI or custom DataSources</b>\n <span style=\"color:red\">[Recommended]</span>: use SmartClient Direct Method Invocation\n (DMI) to map ${isc.DocUtils.linkForRef('class:DSRequest','DataSource requests')} to beans managed by Spring, via\n ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')}:\"spring\".   Return data to the browser by either simply\n returning it from your method, or via creating a DSResponse and calling DSResponse.setData()\n (server-side method).  Or, use a similar approach based on custom DataSource implementations\n where the ${isc.DocUtils.linkForRef('attr:DataSource.serverConstructor','serverConstructor')} is of the pattern \n <b>\"spring:{bean_name}\"</b>\n <P>\n This is the easiest method and produces the best result.  A Collection of Java Beans, such\n as EJB or Hibernate-managed beans, can be directly returned to SmartClient as the result of\n a DMI method, without the need to create an intervening\n <a href='http://en.wikipedia.org/wiki/Data_transfer_object' target='_blank'>Data Transfer Object</a> to express\n which fields should be delivered to the browser - instead, only the fields declared on the\n DataSource are returned to the browser (see\n ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields','dropExtraFields')}.  In this integration scenario, the\n majority of the features of the SmartClient Server framework still apply - see this\n ${isc.DocUtils.linkForRef('group:featuresCustomPersistence','overview')}.\n <p>\n Note, there are special scoping considerations to bear in mind when using Spring-injected \n DataSources or DMIs - see ${isc.DocUtils.linkForRef('group:serverDataSourceImplementation','this discussion')} of \n caching and thread-safety issues.\n <P>\n <li> <b>configure Spring to return XML or JSON responses</b>: create variants\n on existing Spring workflows that use a different type of View in order to output XML or\n JSON data instead of complete HTML pages.  The SmartClient ${isc.DocUtils.linkForRef('class:RestDataSource')} provides a\n standard \"REST\" XML or JSON-based protocol you can implement, or you can adapt generic\n ${isc.DocUtils.linkForRef('class:DataSource','DataSources')} to existing formats.\n <P>\n In some Spring applications, all existing Spring workflows can be made callable by\n SmartClient with a generic View class capable of serializing the Model to XML or JSON,\n combined with a Controller that always uses this View.  Consider the following Java\n anonymous class, which uses the SmartClient JSTranslater class to dump the entire \n Spring Model as a JSON response.\n <pre>\n  new View() {\n        public void render(Map model, HttpServletRequest request,\n                           HttpServletResponse response) throws IOException {\n                final ServletOutputStream outputStream = response.getOutputStream();\n                response.setContentType(\"application/x-javascript\");\n                outputStream.println(JSTranslater.get().toJS(model));\n                outputStream.close();\n        }\n        public String getContentType() {\n                return \"application/x-javascript\";\n        }\n  }\n </pre>\n <P>\n If you use this approach, you do not need to install the SmartClient server, and can\n ${isc.DocUtils.linkForRef('group:iscInstall','deploy')} SmartClient as simple web content (JS/media/HTML files).  If you\n are already familiar with how to generate XML from objects that typically appear in your\n Spring Models, this may be the easiest path.\n </ul>\n <P>\n <b>Using Spring Controllers with SmartClient DMI</b>\n <P>\n You can create a Controller that invokes standard SmartClient server request processing,\n including DMI, like so:\n <pre>\n public class SmartClientRPCController extends AbstractController\n {\n     public ModelAndView handleRequest(HttpServletRequest request, \n                                       HttpServletResponse response)\n         throws Exception\n     {\n         // invoke SmartClient server standard request processing\n         com.isomorphic.rpc.RPCManager.processRequest(request, response);\n         return null; // avoid default rendering\n     }\n }\n </pre>\n This lets you use Spring's DispatchServlet, Handler chain and Controller architecture as a\n pre- and post-processing model wrapped around SmartClient DMI.",
        name:"springIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:Date.createLogicalDate":{
        ref:"classMethod:Date.createLogicalDate",
        flags:"",
        description:" Create a new Date to represent a logical date value (rather than a specific datetime value),\n typically for display in a ${isc.DocUtils.linkForRef('attr:DataSourceField.type','date type field')}. The generated\n Date value will have year, month and date set to the specified values\n (in browser native local time).\n",
        name:"createLogicalDate",
        seeAlso:[
        ],
        params:[
            {
                description:"full year",
                optional:false,
                name:"year",
                defaultValue:null,
                type:"int"
            },
            {
                description:"month (zero based, so 0 is January)",
                optional:false,
                name:"month",
                defaultValue:null,
                type:"int"
            },
            {
                description:"date within the month",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"new javascript Date object representing the Date in question",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:DateChooser.timeItem":{
        ref:"attr:DateChooser.timeItem",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:TimeItem')} for editing the time portion of dates.  Visible by default for fields \n of type \"datetime\" and can be controlled by setting ${isc.DocUtils.linkForRef('attr:DateChooser.showTimeItem')}.",
        name:"timeItem",
        seeAlso:[
        ],
        valueType:"AutoChild TimeItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classAttr:Operators.startsWithTitle":{
        ref:"classAttr:Operators.startsWithTitle",
        flags:"IR",
        description:"Title for the \"startsWith\" operator",
        name:"startsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"starts with (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ToolStrip.showGroupTitle":{
        ref:"attr:ToolStrip.showGroupTitle",
        flags:"IR",
        description:"If set, this attribute affects whether ${isc.DocUtils.linkForRef('class:ToolStripGroup','ToolStripGroups')}\n in this ToolStrip show their header control.  You can override this at the \n ${isc.DocUtils.linkForRef('method:ToolStripGroup.setShowTitle','individual ToolStripGroup')} level.",
        name:"showGroupTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "attr:StretchItem.height":{
        ref:"attr:StretchItem.height",
        flags:"IR",
        description:"The height of the image. This can either be a number (for the number of pixels tall), the string\n \"*\" (remaining space, divided amongst all items that specify height:\"*\"), or the name of a property\n on the StretchImg component, such as \"capSize\" for the StretchImg's ${isc.DocUtils.linkForRef('attr:StretchImg.capSize','capSize')}.\n <p>\n <b>NOTE:</b> The height is only used if the StretchImg stacks its images vertically\n (${isc.DocUtils.linkForRef('attr:StretchImg.vertical')} is true).",
        name:"height",
        seeAlso:[
        ],
        valueType:"number or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:StretchItem"
    },
    "attr:DateItem.useSharedPicker":{
        ref:"attr:DateItem.useSharedPicker",
        flags:"IR",
        description:"When set to true (the default), use a single shared date-picker across all widgets that\n use one.  When false, create a new picker using the autoChild system.  See \n ${isc.DocUtils.linkForRef('attr:DateItem.pickerDefaults','picker')} and \n ${isc.DocUtils.linkForRef('attr:DateItem.pickerProperties','pickerProperties')} for details on setting up an unshared\n picker.",
        name:"useSharedPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "method:List.remove":{
        ref:"method:List.remove",
        flags:"",
        description:" Remove first instance of the passed object from this array, sliding other items around to\n fill gaps.\n\n",
        name:"remove",
        seeAlso:[
        ],
        params:[
            {
                description:"item to remove",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"true if a matching object was found and removed, false if no matching object was found and the list remains unchanged.",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "attr:Menu.cellHeight":{
        ref:"attr:Menu.cellHeight",
        flags:"IRW",
        description:"The height of each item in the menu, in pixels.",
        name:"cellHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Menu",
        groups:[
            "sizing",
            "sizing"
        ]
    },
    "method:TreeGrid.openFolder":{
        ref:"method:TreeGrid.openFolder",
        flags:"A",
        description:" Opens a folder.\n <p>\n Executed when a folder node receives a 'doubleClick' event.\n <smartclient>If you override this method, the single parameter passed will be\n a reference to the relevant folder node in the tree's data.</smartclient>\n <p>\n See the ListGrid Widget Class for inherited recordClick and recordDoubleClick events.\n\n",
        name:"openFolder",
        seeAlso:[
            {
                ref:"method:TreeGrid.closeFolder",
                description:null
            },
            {
                ref:"method:TreeGrid.folderOpened",
                description:null
            },
            {
                ref:"class:ListGrid",
                description:null
            }
        ],
        params:[
            {
                description:"node to open",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "class:MathFunction":{
        methods:[
        ],
        ref:"class:MathFunction",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:MathFunction.registerFunction",
            "classMethod:MathFunction.getRegisteredFunctionIndex",
            "classMethod:MathFunction.getDefaultFunctionIndex"
        ],
        treeLocation:[
            "Client Reference/Data Binding/FormulaBuilder"
        ],
        attrs:[
            "attr:MathFunction.name",
            "attr:MathFunction.description",
            "attr:MathFunction.jsFunction",
            "attr:MathFunction.defaultSortPosition"
        ],
        description:"The definition of a function for use in the ${isc.DocUtils.linkForRef('class:FormulaBuilder')}.  A function consists of \n a name (what the user actually types to use the function), a description (shown in help) and \n an actual JavaScript function that executes the calculation.\n <P>\n The built-in functions cover all static functionality on the JavaScript Math object:\n <ul>\n <li><b>max(val1,val2)</b>: Maximum of two values</li>\n <li><b>min(val1,val2)</b>: Minimum of two values</li>\n <li><b>round(value,decimalDigits)</b>: Round a value up or down, optionally providing \n     <i>decimalDigits</i> as the maximum number of decimal places to round to.  For fixed \n     or precision rounding, use <i>toFixed()</i> and <i>toPrecision()</i> respectively.\n </li>\n <li><b>ceil(value)</b>: Round a value up</li>\n <li><b>floor(value)</b>: Round a value down</li>\n <li><b>abs(value)</b>: Absolute value</li>\n <li><b>pow(value1,value2)</b>: value1 to the power of value2</li>\n <li><b>sin(value)</b>: Sine of a value</li>\n <li><b>cos(value)</b>: Cosine of a value</li>\n <li><b>tan(value)</b>: Tangent of a value</li>\n <li><b>ln(value)</b>: natural logarithm of a value</li>\n <li><b>log(base,value)</b>: logarithm of a value with the specified <i>base</i></li>\n <li><b>asin(value)</b>: Arcsine of a value</li>\n <li><b>acos(value)</b>: Arccosine of a value</li>\n <li><b>atan(value)</b>: Arctangent of a value (-PI/2 to PI/2 radians)</li>\n <li><b>atan2(value1,value2)</b>: Angle theta of a point (-PI to PI radians)</li>\n <li><b>exp(value)</b>: The value of E<sup>value</sup></li>\n <li><b>random()</b>: Random number between 0 and 1</li>\n <li><b>sqrt(value)</b>: Square root of a value</li>\n\n <li><b>toPrecision(value,precision)</b>: Format a number to a length of <i>precision</i> digits, \n     rounding or adding a decimal point and zero-padding as necessary.  Note that the \n     values 123, 12.3 and 1.23 have an equal precision of 3.  Returns a formatted string \n     and should be used as the outermost function call in a formula. For rounding, use \n     <i>round()</i>.\n </li>\n <li><b>toFixed(value,digits)</b>: Round or zero-pad a number to <i>digits</i> decimal places.  \n     Returns a formatted string and should be used as the outermost function call in a \n     formula.  To round values or restrict precision, use <i>round()</i> and \n     <i>toPrecision()</i> respectively.\n </li>\n </ul>",
        name:"MathFunction",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "formulaFields"
        ]
    },
    "method:ValuesManager.editNewRecord":{
        ref:"method:ValuesManager.editNewRecord",
        flags:"",
        description:"\n Prepare to edit a new record by clearing the current set of values (or replacing them \n with initialValues if specified).\n <br>\n This method will also call ${isc.DocUtils.linkForRef('method:DynamicForm.setSaveOperationType')} to ensure\n subsequent calls to <code>saveData()</code> will use an <code>add</code> rather than\n an <code>update</code> operation.\n\n",
        name:"editNewRecord",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            }
        ],
        params:[
            {
                description:"initial set of values for the editor as a map of field names to their corresponding\n     values",
                optional:true,
                name:"initialValues",
                defaultValue:null,
                type:"Object | Record"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:TileGrid.fields":{
        ref:"attr:TileGrid.fields",
        flags:"IR",
        description:"Array of field definitions to control the default rendering of tiles.\n <P>\n If not specified, if the DataSource has an ${isc.DocUtils.linkForRef('attr:DataSource.iconField','iconField')}, only the\n <code>iconField</code> and ${isc.DocUtils.linkForRef('attr:DataSource.titleField','titleField')} will be shown.\n Otherwise, all non-${isc.DocUtils.linkForRef('attr:DataSourceField.hidden','hidden')}\n non-${isc.DocUtils.linkForRef('attr:DataSourceField.detail','detail')} fields will be shown, similar to the default set of\n fields shown by a ${isc.DocUtils.linkForRef('class:ListGrid')}.\n <P>\n Only applicable if using the default ${isc.DocUtils.linkForRef('class:SimpleTile')} class for tiles.\n <P>\n For SimpleTiles, it is possible to use ${isc.DocUtils.linkForRef('method:DetailViewerField.getCellStyle')} and \n ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} to make a single field statefully styled:\n <pre>\n <smartclient>\n isc.TileGrid.create({\n      fields:[\n          {name:'animalName',\n           getCellStyle : function (value, field, record, viewer) {\n               if (value == \"Tiger\") return \"tigerStyle\" + viewer.currentTile.getStateSuffix();\n               else return viewer.tileGrid.tileValueStyle + viewer.currentTile.getStateSuffix();\n           }\n          }\n      ]\n });\n </smartclient>\n <smartgwt>\n final TileGrid tileGrid = new TileGrid();\n DetailViewerField animalNameField = new DetailViewerField(\"countryName\");  \n animalNameField.setCellStyleHandler(new CellStyleHandler() {  \n     public String execute(Object value, DetailViewerField field, Record record) {\n         SimpleTile tile = tileGrid.getCurrentTile();\n         if (value == \"Tiger\") return \"tigerStyle\" + tile.getStateSuffix();\n         else return \"nonTigerStyle\" + tile.getStateSuffix();\n     }  \n });  \n tileGrid.setFields(animalNameField);  \n </smartgwt>\n </pre>",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of DetailViewerField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "classAttr:Dialog.WARN_TITLE":{
        ref:"classAttr:Dialog.WARN_TITLE",
        flags:"IRW",
        description:"Default title for the dialog displayed in response to the ${isc.DocUtils.linkForRef('classMethod:isc.warn')} method.\n Note that a custom title can be specified as the <code>title</code> attribute of the\n <code>properties</code> parameter passed to that method.",
        name:"WARN_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Warning\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Img.imageWidth":{
        ref:"attr:Img.imageWidth",
        flags:"IR",
        description:"Explicit size for the image, for ${isc.DocUtils.linkForRef('attr:Img.imageType')} settings that would normally use the\n image's natural size (applies to ${isc.DocUtils.linkForRef('attr:Img.imageType')} \"center\" and \"normal\" only).",
        name:"imageWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Img"
    },
    "attr:TestFunctionResult.emptyTestValue":{
        ref:"attr:TestFunctionResult.emptyTestValue",
        flags:"IRW",
        description:"Set to true if the formula or summary definition passed in was empty.",
        name:"emptyTestValue",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:TestFunctionResult",
        groups:[
            "formulaFields"
        ]
    },
    "type:FiscalYearMode":{
        ref:"type:FiscalYearMode",
        values:[
            {
                description:"The fiscalYear value for the date range will match the calendar year  in which the period ends. For example if the defaultDate and defaultMonth were set\n  to represent April 1st, the fiscal year starting on April 1st 2020 would end on\n  April 1st 2021. Setting the fiscalYearMode to <code>end</code> would mean the\n  fiscalYear value for this block would be 2021.",
                value:"\"end\""
            },
            {
                description:"The fiscalYear value for the date range will match the calendar year  in which the period starts. For example if the defaultDate and defaultMonth were set\n  to represent April 1st, the fiscal year starting on April 1st 2020 would end on\n  April 1st 2021. Setting the fiscalYearMode to <code>start</code> would mean the\n  fiscalYear value for this block would be 2020.",
                value:"\"start\""
            }
        ],
        description:"Strategies for calculating the FiscalYear within a ${isc.DocUtils.linkForRef('object:FiscalCalendar')} from the\n specified ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultDate')} and ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultMonth')}\n If the specified fiscal year date starts in one calendar year and ends in the next.",
        name:"FiscalYearMode",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:MenuButton.menuButtonImageUp":{
        ref:"attr:MenuButton.menuButtonImageUp",
        flags:"IRA",
        description:"Image for menu button indicating that the button expands a menu.  This image is shown\n for menus expanding up from the button.   Menu direction is controlled by\n ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuBelow')}.",
        name:"menuButtonImageUp",
        seeAlso:[
            {
                ref:"attr:MenuButton.menuButtonImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]menu_button_up.gif\"",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "method:DrawItem.getBoundingBox":{
        ref:"method:DrawItem.getBoundingBox",
        flags:"",
        description:" Calculates the bounding box of the shape in the drawing coordinate system.\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"the x1, y1, x2, y2 coordinates. When the width and height are both positive, point (x1, y1) is the top-left point of the bounding box and point (x2, y2) is the bottom-right\n point of the bounding box.",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:RangeSlider.vertical":{
        ref:"attr:RangeSlider.vertical",
        flags:"IR",
        description:"Whether the rangeSlider should be vertical or horizontal.  Default is horizontal.",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "attr:ListGridRecord.canExpand":{
        ref:"attr:ListGridRecord.canExpand",
        flags:"IR",
        description:"Default property name denoting whether this record can be expanded. Property name may be\n modified for the grid via ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecordProperty')}.",
        name:"canExpand",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord",
        groups:[
            "expansionField"
        ]
    },
    "attr:ListGrid.booleanPartialImage":{
        ref:"attr:ListGrid.booleanPartialImage",
        flags:"IRWA",
        description:"Image to display for a partially true value in a boolean field (typically selection).\n The special value \"blank\" means that no image will be shown.\n <P>\n To turn this off explicitly set ${isc.DocUtils.linkForRef('attr:ListGridField.suppressValueIcon')} to true.\n <P>\n If this, ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} and ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')}\n are unset, this will be set to the default ${isc.DocUtils.linkForRef('attr:CheckboxItem.partialSelectedImage')}.",
        name:"booleanPartialImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.booleanTrueImage",
                description:null
            },
            {
                ref:"attr:ListGrid.booleanFalseImage",
                description:null
            },
            {
                ref:"attr:ListGrid.printBooleanPartialImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:SpacerItem.height":{
        ref:"attr:SpacerItem.height",
        flags:"IRW",
        description:"default height for the spacer",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:SpacerItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Tree.childrenProperty":{
        ref:"attr:Tree.childrenProperty",
        flags:"IRW",
        description:"For trees with the modelType \"children\", this property specifies the name of the property\n that contains the list of children for a node.",
        name:"childrenProperty",
        seeAlso:[
            {
                ref:"attr:Tree.modelType",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"children\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('childrenArrays')}"
        ],
        definingClass:"class:Tree"
    },
    "method:ValuesManager.getValues":{
        ref:"method:ValuesManager.getValues",
        flags:"",
        description:" Returns the current set of values for the values manager instance.  This includes the\n values from any form managed by this manager, as well as any values explicitly applied\n via ${isc.DocUtils.linkForRef('method:ValuesManager.setValues')}.\n",
        name:"getValues",
        seeAlso:[
        ],
        returns:{
            description:"a map of the values for this manager",
            type:"object"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:DataSource.recordXPath":{
        ref:"attr:DataSource.recordXPath",
        flags:"IR",
        description:"See ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath')}.  <code>recordXPath</code> can be specified\n directly on the DataSource for a simple read-only DataSource only capable of \"fetch\"\n operations.",
        name:"recordXPath",
        seeAlso:[
        ],
        valueType:"XPathExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlDataSource')}",
            "${isc.DocUtils.linkForExampleId('jsonXPath')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:TimeItem.hourItemTitle":{
        ref:"attr:TimeItem.hourItemTitle",
        flags:"IRW",
        description:"Title to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.hourItem','hour picker')}.",
        name:"hourItemTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Hour\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "object:Point":{
        methods:[
        ],
        ref:"object:Point",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing"
        ],
        attrs:[
            "attr:Point.x",
            "attr:Point.y"
        ],
        description:"X/Y position in pixels, specified as an Array with two members, for example: [30, 50]",
        name:"Point",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:SectionItem.canCollapse":{
        ref:"attr:SectionItem.canCollapse",
        flags:"IR",
        description:"Whether this section header can be collapsed.  If set false, suppresses open/close state\n icon",
        name:"canCollapse",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionItem"
    },
    "method:FormItem.showPicker":{
        ref:"method:FormItem.showPicker",
        flags:"A",
        description:" Method to show a picker for this item. By default this method is called if the user\n clicks on a ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','pickerIcon')}.  May also be called programmatically.\n <P>\n Default implementation lazily creates and shows the ${isc.DocUtils.linkForRef('attr:FormItem.picker','Picker Autochild')}.\n May be overridden to implement some custom picker for this item.\n\n",
        name:"showPicker",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:LoginDialog.errorStyle":{
        ref:"attr:LoginDialog.errorStyle",
        flags:"IR",
        description:"Specifies the CSS style of the error text shown for a login failure.",
        name:"errorStyle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"formCellError\"",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:FormulaBuilder.invalidGeneratedFunctionPrompt":{
        ref:"attr:FormulaBuilder.invalidGeneratedFunctionPrompt",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('method:FormulaBuilder.testFunction','testFunction')} reports an attempt to generate a \n function from an invalid formula, this is the text to display in the \n ${isc.DocUtils.linkForRef('attr:FormulaBuilder.messageLabel','message-label')}.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will \n be evaluated as JS code when the message is displayed.\n <P>\n Only one dynamic variable, builderType, is available and represents the type of this \n builder, either Formula or Summary.\n <P>\n The default output is:<P>\n <code>\n <i>The generated function is invalid - Check your [Formula/Summary] and retry.</i>\n </code>",
        name:"invalidGeneratedFunctionPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"The generated function is invalid - Check your ${builderType} and retry.\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DrawLabel.contents":{
        ref:"attr:DrawLabel.contents",
        flags:"IRW",
        description:"This is the content that will exist as the label.",
        name:"contents",
        setter:[
            "setContents"
        ],
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "classAttr:Canvas.loadingImageSrc":{
        ref:"classAttr:Canvas.loadingImageSrc",
        flags:"RWA",
        description:"Image URL to be displayed while data is being loaded (if enabled for the widget\n waiting for data). Must be square; ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSize')} specifies the width\n and height.",
        name:"loadingImageSrc",
        seeAlso:[
            {
                ref:"attr:ListGrid.loadingDataMessage",
                description:null
            },
            {
                ref:"attr:DetailViewer.loadingMessage",
                description:null
            },
            {
                ref:"attr:HTMLFlow.loadingMessage",
                description:null
            },
            {
                ref:"attr:ViewLoader.loadingMessage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKINIMG]loadingSmall.gif\"",
        type:"classAttr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:FilterBuilder.modeSwitcherFlattenWarningMessage":{
        ref:"attr:FilterBuilder.modeSwitcherFlattenWarningMessage",
        flags:"IR",
        description:"Message displayed when switching to \"radio\" mode if the criteria will be logically changed.",
        name:"modeSwitcherFlattenWarningMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Criteria will be modified to fit in simpler editing interface\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:SummaryBuilder.getHelpText":{
        ref:"method:SummaryBuilder.getHelpText",
        flags:"",
        description:" Call to retrieve the text the SummaryBuilder would show by default for help, or override to\n provide alternate help text.\n\n",
        name:"getHelpText",
        seeAlso:[
        ],
        returns:{
            description:"By default, the results of getHoverText()",
            type:"String"
        },
        type:"method",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "method:ImgButton.addToRadioGroup":{
        ref:"method:ImgButton.addToRadioGroup",
        flags:"",
        description:" Add this widget to the specified mutually exclusive selection group with the ID\n passed in.\n Selecting this widget will then deselect any other StatefulCanvases with the same\n radioGroup ID.\n StatefulCanvases can belong to only one radioGroup, so this method will remove from \n any other radiogroup of which this button is already a member.\n",
        name:"addToRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- ID of the radiogroup to which this widget should be added",
                optional:false,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:DetailViewerField.hiliteIconPosition":{
        ref:"attr:DetailViewerField.hiliteIconPosition",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons')} are present, where the hilite icon will be placed \n relative to the field value.  See ${isc.DocUtils.linkForRef('type:HiliteIconPosition')}.\n Overrides ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconPosition')}",
        name:"hiliteIconPosition",
        seeAlso:[
        ],
        valueType:"HiliteIconPosition",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "hiliting"
        ]
    },
    "method:ListGrid.deselectAllRecords":{
        ref:"method:ListGrid.deselectAllRecords",
        flags:"",
        description:"\n Deselect all records\n\n",
        name:"deselectAllRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Calendar.otherDayBodyBaseStyle":{
        ref:"attr:Calendar.otherDayBodyBaseStyle",
        flags:"IRW",
        description:"The base name for the CSS class applied to the day body of the month view\n of the calendar. This style will have \"Dark\", \"Over\", \"Selected\", or \"Disabled\"\n appended to it according to the state of the cell.",
        name:"otherDayBodyBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calMonthDayBody\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "attr:RelativeDateItem.centuryThreshold":{
        ref:"attr:RelativeDateItem.centuryThreshold",
        flags:"IRW",
        description:"Only used if we're showing the date in a text field. When parsing a date, if the year\n is specified with 1 or 2 digits and is less than the centuryThreshold, then the year will\n be assumed to be 20xx; otherwise it will be interpreted according to default browser\n behaviour, which will consider it to be 19xx.\n <P>\n If you need to allow 1 and 2 digit years, set this attribute to \n <code>null</code> to have the control retain your year-value as entered.",
        name:"centuryThreshold",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"25",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.waitForSave":{
        ref:"attr:ListGrid.waitForSave",
        flags:"IRWA",
        description:"If this is an editable listGrid, this property determines whether the user will be\n able to dismiss the edit form, or navigate to another cell while the save is in\n process (before the asynchronous server response returns).",
        name:"waitForSave",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:ListGrid.configureGroupingText":{
        ref:"attr:ListGrid.configureGroupingText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid,\n and multi-grouping is enabled, this attribute is used as the title for a menu item that opens\n a ${isc.DocUtils.linkForRef('class:MultiGroupDialog')} to configure the grouping for this grid.",
        name:"configureGroupingText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Configure Grouping...\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "group:parsing":{
        ref:"group:parsing",
        refs:[
        ],
        name:"parsing",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ResultSet.initialData":{
        ref:"attr:ResultSet.initialData",
        flags:"IA",
        description:"Initial set of data for the ResultSet.\n <P>\n This data will be treated exactly as though it were the data returned from the\n ResultSet's first server fetch.\n <P>\n By default, <code>initialData</code> will be considered a complete response\n (all rows that match the ${isc.DocUtils.linkForRef('type:Criteria')} which the ResultSet was initialized with).\n <P>\n Set ${isc.DocUtils.linkForRef('attr:ResultSet.initialLength')} to treat <code>initialData</code> as a partial response,\n equivalent to receiving a ${isc.DocUtils.linkForRef('class:DSResponse')} with <code>startRow:0</code>,\n <code>endRow:initialData.length</code> and <code>totalRows:initialLength</code>.\n Normal data paging will then occur if data is requested for row indices not filled via \n <code>initialData</code>.\n <P>\n <code>initialData</code> may be provided as a \"sparse\" array, that is, slots may be left\n null indicating rows that have not been loaded.  In this way you can create a ResultSet\n that is missing rows at the beginning of the dataset, but has loaded rows toward the end,\n so that you can create a component that is scrolled to a particular position of a dataset\n without loading rows at the beginning.",
        name:"initialData",
        seeAlso:[
        ],
        valueType:"Array of Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "fetching",
            "cacheSync"
        ]
    },
    "object:Record":{
        methods:[
        ],
        ref:"object:Record",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
        ],
        description:"A Record is an ordinary JavaScript Object with properties that are treated as data to\n be displayed and edited by a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}. \n <P>\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s have a concept of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields','named fields')},\n where values for each field are found under the same-named property in a Record.\n <P>\n A Record is always an ordinary JavaScript Object regardless of how the record is \n loaded (static data, java server, XML web service, etc), and so supports the\n normal behaviors of JavaScript Objects, including accessing and assigning to properties\n via dot notation:\n <pre>\n     var fieldValue = record.<i>fieldName</i>;\n     record.<i>fieldName</i> = newValue;\n </pre>\n <P>\n The concept of working with Records is common to all ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s, although\n individual DataBoundComponents may work with singular records (${isc.DocUtils.linkForRef('class:DynamicForm')}) or\n may work with lists (${isc.DocUtils.linkForRef('class:ListGrid')}), trees (${isc.DocUtils.linkForRef('class:TreeGrid')}), or cubes\n (${isc.DocUtils.linkForRef('class:CubeGrid')}) of records.\n <P>\n Individual DataComponents may also look for special properties on Records which\n control styling or behavior for those records, such as\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordEditProperty','<code>record.canEdit</code>')}.",
        name:"Record",
        seeAlso:[
        ],
        type:"object"
    },
    "method:Calendar.getActiveTime":{
        ref:"method:Calendar.getActiveTime",
        flags:"",
        description:" Gets a date object representing the date over which the mouse is hovering for the current\n selected view. For month view, the time will be set to midnight of the active day. For day\n and week views, the time will be the rounded to the closest half hour relative to the mouse\n position.\n",
        name:"getActiveTime",
        seeAlso:[
        ],
        returns:{
            description:"the date that the mouse is over",
            type:"Date"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:Canvas.dragRepositionStop":{
        ref:"method:Canvas.dragRepositionStop",
        flags:"A",
        description:"\n Executed when the mouse button is released at the end of the drag. Your\n widget can use this opportunity to fire custom code based upon where the\n mouse button was released, etc.\n <p>\n Returning true from this handler will cause the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} (or outline if\n ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')} is set to \"outline\") to be left in its current\n location. Returning false from this handler will cause it to snap back to its\n original location.\n\n",
        name:"dragRepositionStop",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to snap the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} (or outline) back to its                   original location or true to leave it at the current cursor position.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:ListGrid.removeFieldDefaults":{
        ref:"attr:ListGrid.removeFieldDefaults",
        flags:"IR",
        description:"Default configuration properties for the \"remove field\"\n displayed when ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is enabled.\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} should be used when modifying this object.\n <P>\n The default configuration includes a ${isc.DocUtils.linkForRef('method:ListGridField.recordClick')} handler which\n calls ${isc.DocUtils.linkForRef('method:ListGrid.removeData')} to actually perform the data removal.",
        name:"removeFieldDefaults",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:RPCResponse.httpResponseText":{
        ref:"attr:RPCResponse.httpResponseText",
        flags:"R",
        description:"The actual text of the HTTP response.  Only available when the default \n ${isc.DocUtils.linkForRef('type:RPCTransport')} \"xmlHttpRequest\" transport is in use,",
        name:"httpResponseText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCResponse"
    },
    "method:DrawPane.addDrawItem":{
        ref:"method:DrawPane.addDrawItem",
        flags:"",
        description:" Add a drawItem to this drawPane (if necessary removing it from any other drawPanes)\n",
        name:"addDrawItem",
        seeAlso:[
        ],
        params:[
            {
                description:"drawItem to add",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"DrawItem"
            },
            {
                description:"If explicitly set to false, and this drawPane is drawn, don't draw   the newly added item",
                optional:false,
                name:"autoDraw",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "group:hibernateIntegration":{
        ref:"group:hibernateIntegration",
        title:"Integration with Hibernate",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"SmartClient can integrate with Hibernate in two main ways, both of which are enabled by\n creating a DataSource descriptor (.ds.xml file) with\n ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType=\"hibernate\"')}:\n <ul>\n <li> Pre-existing beans: a SmartClient DataSource can be automatically derived from either a\n Hibernate-managed bean or the Hibernate mapping.  Use\n ${isc.DocUtils.linkForRef('attr:DataSource.schemaBean','schemaBean')} to derive from the bean or\n ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema')} to derive from the mapping.  In this case you will\n initially have a very short .ds.xml per bean - no &lt;fields&gt; are required unless\n and until you want to override the automatically derived fields.\n <li> \"Beanless\" mode: SmartClient can drive Hibernate as a storage layer only, automatically\n generating Hibernate configuration from a SmartClient DataSource file\n (<i>dataSourceID</i>.ds.xml).  In this case, you do not write a Java bean or create\n Hibernate mappings; Hibernate's beanless\n <a href='http://docs.jboss.org/hibernate/orm/3.3/reference/en-US/html/persistent-classes.html#persistent-classes-dynamicmodels' target='_blank'>\"dynamic model\"</a>\n mode is used.  \n </ul>\n <P>\n Which mode to use is primarily a matter of preference and pre-existing code.  However, if\n you do not have pre-existing code or other special circumstances, the following approach is\n the most productive:\n <ol> \n <li> use \"beanless\" mode, specifying fields in SmartClient's .ds.xml format (far more\n compact than a Java bean with a getter and setter for each field)\n <li> add business logic as needed via DMI, Server Scripting, custom server validators, and\n other approaches covered in the QuickStart Guide\n <li> call any reusable DMI methods both via your SmartClient UI and via other, non-UI\n related Java logic (the DMI methods are now a reusable \"data services tier\")\n <li> only create an actual Java bean if you discover re-usable, bean-specific business\n logic that cannot be encapsulated as a data service (rare)\n </ol>\n <P>\n Note that the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')}'s\n \"Import DataSources\" section can be used to import test data into serverType:\"hibernate\"\n DataSources in the same manner as SQLDataSources.\n <p>\n HibernateDataSource supports operations with composite primary keys. Setting data source level property\n ${isc.DocUtils.linkForRef('attr:DataSource.idClassName','idClassName')} to fully qualified class name indicates,\n that entity uses composite primary key.\n <p>\n <h3>Hibernate relations</h3>\n <p>\n For Hibernate integration where Java beans have been explicitly declared,\n HibernateDataSource supports automatic handling of Hibernate relations that don't declare a\n concrete field to hold ID values - see ${isc.DocUtils.linkForRef('group:jpaHibernateRelations')}.\n <p>\n <h3>Hibernate Configuration</h3>\n <p>\n You can provide Hibernate configuration to the SmartClient server in three ways:\n <ul>\n <li>You can place a traditional <code>hibernate.cfg.xml</code> file somewhere on the \n     classpath</li>\n <li>You can have SmartClient look up a Hibernate <code>Configuration</code> to use.  This \n     works in the same way as a ${isc.DocUtils.linkForRef('class:ServerObject')}, and in fact makes use of the \n     ServerObject code, though note that lookupStyle \"attribute\" is not supported.  To look \n     up a configuration, add ServerObject-compliant properties to your \n     ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file, prefixed with <code>hibernate.config</code>.  For\n     example: <pre>\n        hibernate.config.lookupStyle: spring\n        hibernate.config.bean: mySessionFactory\n </pre></li>\n <li>You can provide a Hibernate configuration at the level of individual DataSources, by \n     specifying a ${isc.DocUtils.linkForRef('attr:DataSource.configBean','configBean')} on the dataSource (this is only \n     applicable if you are using Spring; see below)</li>\n </ul>\n If you choose to have SmartClient lookup the Hibernate configuration, and you specify a \n ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle','lookupStyle')} of \"spring\", SmartClient will make use of a\n Hibernate <code>SessionFactory</code> configured by Spring.  It is possible to set up multiple\n Hibernate configurations in Spring, and to map individual DataSources to different \n configurations by making use of the <code>dataSource.configBean</code> property mentioned\n above.  Please note the following caveats:\n <ul>\n <li>DataSource-level Hibernate configuration is intended for unusual cases, such as when the\n     physical data store for one DataSource is actually a different database.  Hibernate \n     relations between entities with different configurations do not work</li>\n <li>If you choose to configure Hibernate via Spring, \"beanless\" on-the-fly \n     mappings are not supported; all entities must be hand-mapped to a bean, either in the \n     properties of the Spring bean providing the configuration, in a <code>.cfg.xml</code>\n     file named in the Spring bean's <code>configLocation</code> property, or by use of \n     persistence annotations in the actual mapped beans themselves</li>\n </ul>\n <p>\n <h3>Manual Hibernate Integration</h3>\n <p>\n In some cases you may not be able to immediately use the built-in HibernateDataSource - in\n this case take a look at ${isc.DocUtils.linkForRef('group:manualJpaHibernate','manual Hibernate integration')}.",
        name:"hibernateIntegration",
        seeAlso:[
            {
                ref:"attr:DataSource.beanClassName",
                description:null
            },
            {
                ref:"group:sqlConnectionPooling",
                description:null
            }
        ],
        type:"group"
    },
    "attr:Tab.ID":{
        ref:"attr:Tab.ID",
        flags:"IRW",
        description:"Optional ID for the tab, which can later be used to reference the tab.\n APIs requiring a reference to a tab will accept the tab's ID \n [including  ${isc.DocUtils.linkForRef('method:TabSet.selectTab')}, ${isc.DocUtils.linkForRef('method:TabSet.updateTab')}, ${isc.DocUtils.linkForRef('method:TabSet.removeTab')}].<br>\n The ID will also be passed to the ${isc.DocUtils.linkForRef('method:TabSet.tabSelected')} and ${isc.DocUtils.linkForRef('method:TabSet.tabDeselected')}\n handler functions, if specified.\n <p>\n Note that if you provide an ID, it must be globally unique.  If you do not want a\n globally unique identifier, set ${isc.DocUtils.linkForRef('attr:Tab.name')} instead.",
        name:"ID",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "attr:TableView.iconField":{
        ref:"attr:TableView.iconField",
        flags:"IRW",
        description:"This property allows the developer to specify the icon displayed next to a record.\n Set <code>record[tableView.iconField]</code> to the URL of the desired icon to display.\n Only applies if ${isc.DocUtils.linkForRef('attr:TableView.showIconField')} is <code>true</code>.",
        name:"iconField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"icon\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "classAttr:Time.adjustForDST":{
        ref:"classAttr:Time.adjustForDST",
        flags:"RWA",
        description:"Determines whether datetime formatters should consider the effect of Daylight Saving\n Time when computing offsets from UTC.  By default, this flag is set during framework\n initialization if SmartClient detects that it is running in a locale that is observing \n DST this year.  If you do not want DST adjustments to be applied, set this flag to \n false.<p>\n Note that setting this flag to true will have no effect unless you are in a locale \n that is observing Daylight Saving Time for the date in question; this is because\n we rely on the browser for offset information, and browsers are only capable of \n returning local date and time information for the computer's current locale.\n <P>\n This setting will not have any impact on the display of fields specified as type \"time\" or\n \"date\" (logical dates and logical times) - only on datetime type values. See\n ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for information on working with dates, times and datetimes\n in SmartClient.",
        name:"adjustForDST",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true (see description)",
        type:"classAttr",
        definingClass:"class:Time"
    },
    "attr:MiniDateRangeItem.fromDate":{
        ref:"attr:MiniDateRangeItem.fromDate",
        flags:"IRW",
        description:"Initial value for the \"from\" date.",
        name:"fromDate",
        setter:[
            "setFromDate"
        ],
        seeAlso:[
        ],
        valueType:"Date or RelativeDateString or TimeUnit",
        defaultValue:"today",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "attr:FileItem.displayCanvas":{
        ref:"attr:FileItem.displayCanvas",
        flags:"RA",
        description:"The ${isc.DocUtils.linkForRef('class:Canvas')} created automatically when ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')}\n is false and the field is of any type other than \"blob\".\n <P>\n If the field is of type \"imageFile\", and ${isc.DocUtils.linkForRef('attr:FileItem.showFileInline','showFileInline')} \n is true, the contents of the canvas are set to HTML that streams the image file for \n display. Otherwise, the item renders icons that allow the file to be \n ${isc.DocUtils.linkForRef('attr:FileItem.viewIconSrc','viewed')} or ${isc.DocUtils.linkForRef('attr:FileItem.downloadIconSrc','downloaded')}.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>fileItem.displayCanvasDefaults</code> and \n <code>fileItem.displayCanvasProperties</code>.",
        name:"displayCanvas",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "upload"
        ]
    },
    "method:Toolbar.itemDoubleClick":{
        ref:"method:Toolbar.itemDoubleClick",
        flags:"A",
        description:"\tCalled when one of the buttons receives a double-click event\n",
        name:"itemDoubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"pointer to the button in question",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"button"
            },
            {
                description:"number of the button in question",
                optional:false,
                name:"itemNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar",
        groups:[
            "event handling"
        ]
    },
    "method:DataBoundComponent.findAll":{
        ref:"method:DataBoundComponent.findAll",
        flags:"",
        description:" This API is equivalent to ${isc.DocUtils.linkForRef('method:List.findAll')} but searches for a matching record among already-loaded data only.  \n Use ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData')} to load data from the server.\n",
        name:"findAll",
        seeAlso:[
        ],
        params:[
            {
                description:"AdvancedCriteria to use with",
                optional:false,
                name:"advancedCriteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        returns:{
            description:"all matching Objects or null if none found",
            type:"Array"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:DataSource.sqlUsePagingHint":{
        ref:"attr:DataSource.sqlUsePagingHint",
        flags:"IR",
        description:"If explicitly set true or left null, causes the server to use a \"hint\" in the SQL we \n generate for paged queries.  If explicitly set false, forces off the use of hints.  This\n property can be overridden per operationBinding - see \n ${isc.DocUtils.linkForRef('attr:OperationBinding.sqlUsePagingHint')}.\n <p>\n Note this property is only applicable to ${isc.DocUtils.linkForRef('attr:DataSource.serverType','SQL')} DataSources, \n only when a ${isc.DocUtils.linkForRef('attr:DataSource.sqlPaging','paging strategy')} of \"sqlLimit\" is in force,\n and it only has an effect for those specific database products where we employ a native\n hint in the generated SQL in an attempt to improve performance.",
        name:"sqlUsePagingHint",
        seeAlso:[
            {
                ref:"attr:OperationBinding.sqlUsePagingHint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "sqlPaging"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:DataSourceField.title":{
        ref:"attr:DataSourceField.title",
        flags:"IR",
        description:"Default user-visible title for this field.\n <p>\n This will be picked up by DataBound components and other views over this DataSource.\n <p>\n Note this property frequently does not need to be set since ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveTitles')} (on by\n default) usually picks an appropriate user-visible title if you have a reasonable naming convention\n for your field names.\n <P>\n Note that if this field is being displayed in a ${isc.DocUtils.linkForRef('class:ListGrid')} bound to this dataSource,\n the ${isc.DocUtils.linkForRef('attr:ListGridField.headerTitle')} attribute may be used to specify a\n different string for display in the listGrid column header.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "object:isA":{
        methods:[
        ],
        ref:"object:isA",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:isA.emptyString",
            "classMethod:isA.nonemptyString",
            "classMethod:isA.Object",
            "classMethod:isA.emptyObject",
            "classMethod:isA.emptyArray",
            "classMethod:isA.String",
            "classMethod:isA.Array",
            "classMethod:isA.Function",
            "classMethod:isA.Number",
            "classMethod:isA.Boolean",
            "classMethod:isA.Date",
            "classMethod:isA.RegularExpression",
            "classMethod:isA.Instance",
            "classMethod:isA.ClassObject",
            "classMethod:isA.Interface",
            "classMethod:isA.List"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"A library of functions for determining the types of other objects.<br><br>\n\n  The \"isA\" methods for the basic JavaScript types are much faster and more consistent across\n  platforms than JavaScript's \"typeof\" operator.<br><br>\n\n  An isA method is automatically created for every ISC Class and Interface definition, for\n  example, isA.Canvas().<br><br>",
        name:"isA",
        seeAlso:[
        ],
        type:"object",
        examples:[
            "<code>if (isA.Number(myVariable)) ...</code>\n\tNote: <code>is</code> and <code>isAn</code> are synonyms of <code>isA</code> and can be used\n\t\t\tinterchangably when it looks better syntactically, eg:\n\t\t\t\t<code>if (myObject == null) ...</code>\n\t\t\tor\n\t\t\t\t<code>if (isAn.Array(myObject)) ...</code>"
        ]
    },
    "method:TileGrid.setCanAcceptDroppedRecords":{
        ref:"method:TileGrid.setCanAcceptDroppedRecords",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:TileGrid.canAcceptDroppedRecords')}.\n",
        name:"setCanAcceptDroppedRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dragging"
        ]
    },
    "group:server_properties":{
        ref:"group:server_properties",
        title:"<code>server.properties</code> file",
        treeLocation:[
            "Concepts/Deploying SmartClient"
        ],
        refs:[
        ],
        description:"The <code>server.properties</code> file is a configuration file read by the SmartClient\n server. It contains miscellaneous server settings - see the file itself for documentation \n and default or sample settings.\n <P>\n Note that this is a standard Java Properties file, except it allows variable substitution\n from other properties defined earlier in the file.\n <P>\n It's loaded from the <code>CLASSPATH</code>, so it can be anywhere in the \n <code>CLASSPATH</code>, but is typically either in the projects java \"src\" directory or\n in <code>WEB-INF/classes</code>.\n <P>\n Server side code can access and modify the properties specified in this file via the\n <code>com.isomorphic.base.Config</code> class",
        name:"server_properties",
        seeAlso:[
        ],
        type:"group"
    },
    "class:HibernateBrowser":{
        methods:[
            "method:HibernateBrowser.getGeneratedDataSource",
            "method:HibernateBrowser.getResults"
        ],
        ref:"class:HibernateBrowser",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:HibernateBrowser.mappingTree",
            "attr:HibernateBrowser.dataGrid",
            "attr:HibernateBrowser.title",
            "attr:HibernateBrowser.selectButton",
            "attr:HibernateBrowser.includeSubstring",
            "attr:HibernateBrowser.excludeSubstring"
        ],
        description:"A component that connects to a Hibernate configuration and displays the currently-mapped \n entities.  It also allows you to view the bean properties of a selected entity, and optionally \n retrieves and displays the data currently in the corresponding database table.\n <p>\n The HibernateBrowser can also create a SmartClient DataSource from any existing Hibernate\n mapping.",
        name:"HibernateBrowser",
        seeAlso:[
        ],
        type:"class"
    },
    "group:multipleField":{
        ref:"group:multipleField",
        refs:[
            "attr:DataSourceField.multipleValueSeparator",
            "attr:DataSourceField.multipleStorage",
            "attr:DataSourceField.multipleStorageSeparator",
            "attr:OperationBinding.transformMultipleFields",
            "attr:DataSource.transformMultipleFields",
            "type:MultipleFieldStorage"
        ],
        name:"multipleField",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Canvas.initWidget":{
        ref:"method:Canvas.initWidget",
        flags:"",
        description:"\n For custom components, perform any initialization specific to your widget subclass.\n <P>\n When creating a subclass of any Canvas-based component, you should generally override\n this method rather than overriding ${isc.DocUtils.linkForRef('method:Class.init')}.  This is because Canvas has its own\n ${isc.DocUtils.linkForRef('method:Class.init')} override which performs some generally desirable initialization - see\n ${isc.DocUtils.linkForRef('method:Canvas.init')} for details.\n <p>\n This method is called by ${isc.DocUtils.linkForRef('method:Canvas.init')} when a component is create()d.  When\n overriding this method, You must call the superClass initWidget implementation, like\n so:\n <pre>\n    this.Super(\"initWidget\", arguments);\n </pre>\n <P>\n In general, if you are going to call functionality supported by your superclass (eg calling\n addTab() when your superclass is a TabSet), call Super() first.  However, you can generally\n assign properties to <code>this</code> before calling Super() as a way of mimicking the\n effect of the property being passed to ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')} on normal instance\n construction.  For example, when subclassing a DynamicForm, you could set this.items to a\n generated set of items before calling Super().\n <P>\n NOTE: child creation: if you are creating a component that auto-creates certain children (eg\n a Window which creates a Header child), typical practice is to create those children\n immediately before drawing by overriding draw().  This postpones work until it is really\n necessary and avoids having to update children if settings are changed between creation and\n draw().  Alternatively, if you prefer callers to directly manipulate auto-created children,\n it's best to create them earlier in initWidget(), in order to allow manipulation before\n draw.\n\n",
        name:"initWidget",
        seeAlso:[
        ],
        params:[
            {
                description:"All arguments initially passed to ${isc.DocUtils.linkForRef('classMethod:Class.create')}",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:LoginDialog.dismissOnEscape":{
        ref:"attr:LoginDialog.dismissOnEscape",
        flags:"IRW",
        description:"Do not set LoginDialog.dismissOnEscape; it is controlled by the\n ${isc.DocUtils.linkForRef('attr:LoginDialog.dismissable')}\n property.",
        name:"dismissOnEscape",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:FacetChart.getChartHeight":{
        ref:"method:FacetChart.getChartHeight",
        flags:"",
        description:" Get the height the central chart area, where data elements appear.\n <P> \n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getChartHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"if false then cached value will be returned,  otherwise will be recalculated.",
                optional:false,
                name:"recalc",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"the width of the central chart area.",
            type:"float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:DSRequestModifier.value":{
        ref:"attr:DSRequestModifier.value",
        flags:"IR",
        description:"The value to assign to the field named by ${isc.DocUtils.linkForRef('attr:DSRequestModifier.fieldName')}.  This value can be static, and \n for Pro licenses that is the only option.  With Power and better licenses, this value \n can be an expression in the Velocity template language.  In this latter case, there are a \n number of context variables available to you:\n <ul><li><b>dsRequest</b>. The DSRequest object being processed</li>\n <li><b>servletRequest</b>. The HttpServletRequest object representing the queue of requests\n sent from the client</li>\n <li><b>responseData</b>. The data member of a DSResponse object associated with an earlier \n DSRequest in the same queue</li></ul>\n (Note that the standard Velocity context variables provided by SmartClient Server are also \n available to you - see ${isc.DocUtils.linkForRef('group:velocitySupport')}).\n <p>\n The most interesting of these is the last. An example of when this might be useful would be a\n queued batch of \"add\" operations for an order header and its details - the detail additions need\n to know the unique primary key that was assigned to the order.  This value will be in the \n response to the DSRequest that added the order header.  See this example:\n ${isc.DocUtils.linkForExampleId('queuedAdd')}.\n <p>\n You can obtain the responseData of prior responses using the following Velocity syntax:<p>\n <code>$responseData.first.myField</code> is the myField property of the first response in the queue<br>\n <code>$responseData.first('order').myField</code> is the myField property of the first response to an \n operation (any operation) on the \"order\" DataSource<br>\n <code>$responseData.first('order', 'add').myField</code> is the myField property of the first \n response to an \"add\" operation on the \"order\" DataSource<p>\n All of these syntactic variations are also available on the <code>$responseData.last</code> object - \n \"last\" here meaning the most recent response matching the DataSource and operation type (if \n applicable).  Please see the server-side Javadoc for the\n <code>com.isomorphic.velocity.ResponseDataHandler</code> class.",
        name:"value",
        seeAlso:[
            {
                ref:"group:velocitySupport",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"object:DSRequestModifier"
    },
    "attr:ListPropertiesPane.sampleTileLayout":{
        ref:"attr:ListPropertiesPane.sampleTileLayout",
        flags:"R",
        description:"Shows available bullet options as a series of tiles.",
        name:"sampleTileLayout",
        seeAlso:[
        ],
        valueType:"AutoChild TileLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesPane"
    },
    "class:Progressbar":{
        methods:[
            "method:Progressbar.setPercentDone",
            "method:Progressbar.percentChanged",
            "method:Progressbar.getLength",
            "method:Progressbar.getBreadth",
            "method:Progressbar.setLength",
            "method:Progressbar.setBreadth"
        ],
        ref:"class:Progressbar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:Progressbar.percentDone",
            "attr:Progressbar.length",
            "attr:Progressbar.breadth",
            "attr:Progressbar.vertical",
            "attr:Progressbar.src"
        ],
        description:"The Progressbar widget class extends the StretchImg class to implement image-based progress\n bars (graphical bars whose lengths represent percentages, typically of task completion).",
        name:"Progressbar",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ImgSplitbar.vertical":{
        ref:"attr:ImgSplitbar.vertical",
        flags:"R",
        description:"Is this split bar vertically orientated?<br>\n When a <code>Splitbar</code> is created by a layout to be the resizeBar for some\n member of the layout, the <code>vertical</code> property will be set to <code>true</code>\n if the layout is horizontal, meaning this resizeBar will be taller than it is wide, \n and will allow horizontal resizing of the member.",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSplitbar"
    },
    "attr:CalendarEvent.canEdit":{
        ref:"attr:CalendarEvent.canEdit",
        flags:"IRW",
        description:"Optional boolean value controlling the editability of this particular calendarEvent.\n  The name of this field within the CalendarEvent can be changed via\n  ${isc.DocUtils.linkForRef('attr:Calendar.canEditField')}.",
        name:"canEdit",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "attr:DSRequest.validationMode":{
        ref:"attr:DSRequest.validationMode",
        flags:"IR",
        description:"Mode of validation for entered data.",
        name:"validationMode",
        seeAlso:[
        ],
        valueType:"ValidationMode",
        defaultValue:"\"full\"",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:ValuesManager.saveOperationType":{
        ref:"attr:ValuesManager.saveOperationType",
        flags:"IRW",
        getter:[
            "getSaveOperationType"
        ],
        description:"Default ${isc.DocUtils.linkForRef('type:DSOperationType')} to be performed when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is called.\n This property is automatically set on a call to ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')} or\n ${isc.DocUtils.linkForRef('method:DynamicForm.editNewRecord')}, or may be set directly via \n ${isc.DocUtils.linkForRef('method:DynamicForm.setSaveOperationType')}.\n <P>\n If <code>saveOperationType</code> is unset, the form will heuristically determine\n whether an \"add\" or \"update\" operation is intended based on whether the primaryKey field\n is present and editable.",
        name:"saveOperationType",
        setter:[
            "setSaveOperationType"
        ],
        seeAlso:[
        ],
        valueType:"DSOperationType",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager"
    },
    "attr:MultiComboBoxItem.autoFitButtons":{
        ref:"attr:MultiComboBoxItem.autoFitButtons",
        flags:"IR",
        description:"Specifies whether to autofit the buttons in the MultiComboBoxItem.  The\n default value is true if ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.layoutStyle')} is \"flow\", but false for a\n layoutStyle of \"vertical\" or \"verticalReverse\".  If the <code>layoutStyle</code>\n is \"horizontal\" or \"horizontalReverse\" then the buttons will autofit regardless\n of the setting of this property.",
        name:"autoFitButtons",
        setter:[
            "setAutoFitButtons"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:ToolStripGroup.numRows":{
        ref:"attr:ToolStripGroup.numRows",
        flags:"IRW",
        description:"The number of rows of controls to display in each column.",
        name:"numRows",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "attr:FacetChart.useAutoGradients":{
        ref:"attr:FacetChart.useAutoGradients",
        flags:"IR",
        description:"Causes the chart to use the colors specified in ${isc.DocUtils.linkForRef('attr:FacetChart.dataColors')} but specify chart-specific \n gradients based on the primary data color per chart type.",
        name:"useAutoGradients",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:PortalLayout.portlets":{
        ref:"attr:PortalLayout.portlets",
        flags:"I",
        getter:[
            "getPortlets"
        ],
        description:"A convenience attribute which you can use to populate a PortalLayout with ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}\n on initialization. After initialization, use ${isc.DocUtils.linkForRef('method:PortalLayout.addPortlet','addPortlet()')} or drag-and-drop to add\n Portlets, and ${isc.DocUtils.linkForRef('method:PortalLayout.getPortlets','getPortlets()')} or ${isc.DocUtils.linkForRef('method:PortalLayout.getPortletArray','getPortletArray()')}\n to get Portlets.\n <p>\n To create one column, you can provide an array of Portlets.\n <p>\n To create multiple columns, provide an array of arrays (where the first level represents columns,\n and the second represents Portlets).\n <p>\n To put multiple portlets in the same row, provide a third level to the array.\n <p>\n Note that ${isc.DocUtils.linkForRef('attr:PortalLayout.numColumns','numColumns')} is ignored if you provide the portlets attribute, since\n the array will indicate how many columns to create. You can provide an empty second-level\n array to create a blank column, if needed.",
        name:"portlets",
        seeAlso:[
            {
                ref:"method:PortalLayout.getPortlets",
                description:null
            },
            {
                ref:"method:PortalLayout.getPortletArray",
                description:null
            },
            {
                ref:"method:PortalLayout.addPortlet",
                description:null
            },
            {
                ref:"attr:PortalLayout.numColumns",
                description:null
            }
        ],
        valueType:"Array of Portlet",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('repositionPortlets')}"
        ],
        definingClass:"class:PortalLayout"
    },
    "class:TextItem":{
        methods:[
            "method:TextItem.getHint",
            "method:TextItem.getSelectionRange",
            "method:TextItem.setSelectionRange",
            "method:TextItem.selectValue",
            "method:TextItem.deselectValue",
            "method:TextItem.getEnteredValue",
            "method:TextItem.setKeyPressFilter",
            "method:TextItem.setMask"
        ],
        exampleConfig:"TextItem.xml",
        ref:"class:TextItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:TextItem.width",
            "attr:TextItem.height",
            "attr:TextItem.textBoxStyle",
            "attr:TextItem.length",
            "attr:TextItem.emptyStringValue",
            "attr:TextItem.browserAutoCapitalize",
            "attr:TextItem.browserAutoCorrect",
            "attr:TextItem.browserInputType",
            "attr:TextItem.selectOnFocus",
            "attr:TextItem.selectOnClick",
            "attr:TextItem.changeOnKeypress",
            "attr:TextItem.showHintInField",
            "attr:TextItem.printFullText",
            "attr:TextItem.saveOnEnter",
            "attr:TextItem.characterCasing",
            "attr:TextItem.keyPressFilter",
            "attr:TextItem.formatOnBlur",
            "attr:TextItem.formatOnFocusChange",
            "attr:TextItem.mask",
            "attr:TextItem.maskOverwriteMode",
            "attr:TextItem.maskSaveLiterals",
            "attr:TextItem.maskPadChar",
            "attr:TextItem.maskPromptChar"
        ],
        description:"FormItem for managing a text field.",
        name:"TextItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('textItem')}"
        ]
    },
    "attr:FormItem.textBoxStyle":{
        ref:"attr:FormItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's text box element.\n <P>\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special\n skinning considerations.",
        name:"textBoxStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:MiniDateRangeItem.rangeDialog":{
        ref:"attr:MiniDateRangeItem.rangeDialog",
        flags:"IR",
        description:"Pop-up ${isc.DocUtils.linkForRef('class:DateRangeDialog')} for entering a date range.",
        name:"rangeDialog",
        seeAlso:[
        ],
        valueType:"AutoChild DateRangeDialog",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "method:StatefulCanvas.setState":{
        ref:"method:StatefulCanvas.setState",
        flags:"A",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')} of this object, changing its appearance.\n Note: <code>newState</code> cannot be\n <smartclient><code>\"Disabled\"</code></smartclient>\n <smartgwt>{@link com.smartgwt.client.types.State#STATE_DISABLED}</smartgwt>\n if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled','this.showDisabled')} is <code>false</code>.\n\n",
        name:"setState",
        seeAlso:[
        ],
        params:[
            {
                description:"the new state.",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"State"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state",
            "appearance"
        ]
    },
    "attr:ListGrid.showDetailFields":{
        ref:"attr:ListGrid.showDetailFields",
        flags:"IR",
        description:"Whether to include fields marked <code>detail:true</code> from this component's\n <code>DataSource</code>.\n <P>\n Fields may also be included directly in this component's <code>fields</code> array in\n which case they will be present regardless of the <code>detail</code> attribute.\n <p>\n When this property is <code>true</code>, <code>ListGrid</code>s will include all\n detail fields, but they will be initially hidden.  The user may show\n these fields via the default header context menu (${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu')}).\n Setting this property to false will completely exclude all detail fields from the list\n grid's fields array, such that they cannot be shown by the user or programmatically.\n <P>\n To override the visibility of individual fields, use the standard\n ${isc.DocUtils.linkForRef('method:ListGrid.showField')}, ${isc.DocUtils.linkForRef('method:ListGrid.hideField')} and ${isc.DocUtils.linkForRef('method:ListGridField.showIf')}\n APIs, for example, set showIf:\"true\" to show a detail field initially.",
        name:"showDetailFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "attr:Canvas.snapOffsetLeft":{
        ref:"attr:Canvas.snapOffsetLeft",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','snapTo')} is defined for this widget, this property can be used to\n specify an offset in px or percentage for the left coordinate of this widget.\n <P>\n For example if <code>snapTo</code> is specified as <code>\"L\"</code> and\n <code>snapOffsetLeft</code> is set to 6, this widget will be rendered 6px inside the left\n edge of its parent or master element. Alternatively if <code>snapTo</code> was set\n to <code>\"R\"</code>, a <code>snapOffsetLeft</code> value of -6 would cause the\n component to be rendered 6px inside the right edge of its parent or ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master canvas')}.",
        name:"snapOffsetLeft",
        seeAlso:[
            {
                ref:"attr:Canvas.snapTo",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:FacetChart.styleName":{
        ref:"attr:FacetChart.styleName",
        flags:"IRW",
        description:"Default styleName for the chart.",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"scChart\"",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DrawPane.zoom":{
        ref:"method:DrawPane.zoom",
        flags:"",
        description:" Synonym of ${isc.DocUtils.linkForRef('method:DrawPane.setZoomLevel')}.\n",
        name:"zoom",
        seeAlso:[
        ],
        params:[
            {
                description:"Desired zoom level as a float where <code>1.0</code> is equivalent to 100% magnification. Must be greater than 0.",
                optional:false,
                name:"zoomLevel",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "group:webService":{
        ref:"group:webService",
        refs:[
            "method:WebService.getOperationNames",
            "method:WebService.getSchema",
            "method:WebService.callOperation",
            "method:WebService.getFetchDS",
            "method:WebService.setLocation",
            "class:WebService",
            "classMethod:WebService.get",
            "classMethod:WebService.getByName",
            "attr:SchemaSet.schemaNamespace",
            "attr:WebService.serviceNamespace"
        ],
        name:"webService",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Calendar.canCreateEvents":{
        ref:"attr:Calendar.canCreateEvents",
        flags:"IR",
        description:"If true, users can create new events.",
        name:"canCreateEvents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "allowedOperations"
        ]
    },
    "class:EditPane":{
        methods:[
            "method:EditPane.getSaveData"
        ],
        ref:"class:EditPane",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools/EditContext"
        ],
        attrs:[
        ],
        description:"A container that allows drag and drop instantiation of visual components from a\n ${isc.DocUtils.linkForRef('interface:Palette')}, and direct manipulation of the position and size of those components.\n <P>\n Any drag onto an EditPane from a Palette will add an EditNode created from the dragged\n PaletteNode.",
        name:"EditPane",
        implementsInterfaces:[
            "EditContext"
        ],
        seeAlso:[
        ],
        type:"class",
        groups:[
            "devTools"
        ]
    },
    "method:ColorPicker.getRed":{
        ref:"method:ColorPicker.getRed",
        flags:"",
        description:" Returns the Red element of the currently-selected color, as an integer from 0-255\n",
        name:"getRed",
        seeAlso:[
            {
                ref:"method:ColorPicker.setRed",
                description:null
            }
        ],
        returns:{
            description:"red color component",
            type:"int"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "method:Tree.setSeparateFolders":{
        ref:"method:Tree.setSeparateFolders",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:Tree.separateFolders')}.\n",
        name:"setSeparateFolders",
        seeAlso:[
        ],
        params:[
            {
                description:"new <code>separateFolders</code> value",
                optional:false,
                name:"separateFolders",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "method:ValuesManager.getMember":{
        ref:"method:ValuesManager.getMember",
        flags:"",
        description:"  Returns a pointer to a specific member.\n",
        name:"getMember",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of the member component to retrieve",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"member (or null if unable to find a member with the  specified ID).",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "members"
        ]
    },
    "attr:HibernateBrowser.selectButton":{
        ref:"attr:HibernateBrowser.selectButton",
        flags:"IR",
        description:"Instance of Button used to continue once a table has been selected.",
        name:"selectButton",
        seeAlso:[
        ],
        valueType:"AutoChild Button",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HibernateBrowser"
    },
    "attr:Canvas.useBackMask":{
        ref:"attr:Canvas.useBackMask",
        flags:"IRWA",
        description:"In earlier versions of Internet Explorer (pre IE9), a native limitation\n exists  whereby if HTML elements are\n overlapping on the page, certain elements can appear to \"burn through\"\n elements in the same position with a higher z-index.\n Specific cases in which this have been observed include Applets,\n &lt;IFRAME&gt; elements, and for\n older versions of IE, native &lt;SELECT&gt; items.\n <P>\n The backMask is a workaround for this issue. If <code>useBackMask</code> is\n set to <code>true</code>, the component will render an empty &lt;IFRAME&gt; element\n behind the canvas, which prevents this effect in all known cases.\n <P>\n Has no effect in other browsers.",
        name:"useBackMask",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:ListGrid.spanContextMenu":{
        ref:"attr:ListGrid.spanContextMenu",
        flags:"R",
        description:"The menu displayed when a cell is right clicked on.",
        name:"spanContextMenu",
        seeAlso:[
        ],
        valueType:"AutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "method:Calendar.setEventStyle":{
        ref:"method:Calendar.setEventStyle",
        flags:"",
        description:" Update the styleName for the passed event.  Refreshes the event's canvas in the current view.\n Has no effect in the ${isc.DocUtils.linkForRef('attr:Calendar.monthView','monthView')}.\n\n",
        name:"setEventStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"The event object to refresh in the current view",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"The new CSS style to apply to the windows for this event",
                optional:false,
                name:"styleName",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:FilterBuilder.topOperatorForm":{
        ref:"attr:FilterBuilder.topOperatorForm",
        flags:"IR",
        description:"With ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')} \"bracket\" and \"inline\", a form that appears to the left\n of the stack of clauses and allows picking the ${isc.DocUtils.linkForRef('type:LogicalOperator')} for the overall \n FilterBuilder (or for that specific FilterClause, in the case of \"inline\")\n <P>\n By default, consists of a CheckboxItem if ${isc.DocUtils.linkForRef('attr:FilterBuilder.showSelectionCheckbox')} is true, and a \n simple SelectItem containing the available logical operators.\n <P>\n If this FilterBuilder shows nested sub-clauses, the same defaults will be applied to the\n top-operator item for each sub-clause.",
        name:"topOperatorForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:DateChooser.buttonLayout":{
        ref:"attr:DateChooser.buttonLayout",
        flags:"IR",
        description:"An ${isc.DocUtils.linkForRef('type:AutoChild')} ${isc.DocUtils.linkForRef('class:HLayout')}, rendered below the ${isc.DocUtils.linkForRef('class:DateGrid','date grid')},\n and showing the ${isc.DocUtils.linkForRef('attr:DateChooser.todayButton','Today')},\n ${isc.DocUtils.linkForRef('attr:DateChooser.cancelButton','Cancel')} and, when working with \"datetime\" values, \n ${isc.DocUtils.linkForRef('attr:DateChooser.applyButton','Apply')} buttons.",
        name:"buttonLayout",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DataBoundComponent.preventDuplicates":{
        ref:"attr:DataBoundComponent.preventDuplicates",
        flags:"IR",
        description:"If set, detect and prevent duplicate records from being transferred to this component, either via\n drag and drop or via ${isc.DocUtils.linkForRef('method:DataBoundComponent.transferSelectedData')}.  When a duplicate transfer is detected,\n a dialog will appear showing the ${isc.DocUtils.linkForRef('attr:DataBoundComponent.duplicateDragMessage')}.\n <P>\n If the component either does not have a ${isc.DocUtils.linkForRef('class:DataSource')} or has a DataSource with no\n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} declared, duplicate checking is off by\n default.  If duplicate checking is enabled, it looks for an existing record in the dataset\n that has <b>all</b> of the properties of the dragged record, and considers that a duplicate.\n <P>\n For ${isc.DocUtils.linkForRef('type:DragDataAction')}:\"copy\" where the target DataSource is related to the source\n DataSource by foreignKey, a duplicate means that the target list, as filtered by the current\n criteria, already has a record whose value for the foreignKey field matches the\n primaryKey of the record being transferred.\n <P>\n For example, consider dragging \"employees\" to \"teams\", where \"teams\" has a field\n \"teams.employeeId\" which is a foreignKey pointing to \"employees.id\", and the target\n grid has search criteria causing it to show all the members of one team.  A duplicate -\n adding an employee to the same team twice - is when the target grid's dataset contains an\n record with \"employeeId\" matching the \"id\" field of the dropped employee.",
        name:"preventDuplicates",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:DrawGroup.useGroupRect":{
        ref:"attr:DrawGroup.useGroupRect",
        flags:"IR",
        description:"When should this drawGroup receive event notifications?\n If set to <code>true</code>, the developer can specify an explicit \n ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','set of coordinates')}. Whenever the user interacts with this\n rectangle, the drawGroup will be notified and the appropriate event handlers will be\n fired. Note that rectangle need not contain all DrawItems within the group, and \n is manually managed by the developer.<br>\n If set to <code>false</code>, the ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','event rectangle')} \n coordinates are unused - instead\n as a user interacts with specific drawItems within this group, the appropriate event handler\n would be fired on the item, then the event would \"bubble\" to the\n drawGroup, firing the appropriate event handler at the group level as well.",
        name:"useGroupRect",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DrawGroup"
    },
    "attr:FacetChart.allowedChartTypes":{
        ref:"attr:FacetChart.allowedChartTypes",
        flags:"IRW",
        description:"Other ${isc.DocUtils.linkForRef('type:ChartType','chart types')} that the end user will be allowed to switch to, using\n the built-in context menu.\n <P>\n The actual list of ChartTypes displayed in the context menu may be a subset of\n <code>allowedChartTypes</code>, since the FacetChart will automatically disallow certain\n modes that are clearly invalid, for example, not allowing switching to Pie mode if\n either ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom')} is enabled, or if the chart is ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis')}.",
        name:"allowedChartTypes",
        seeAlso:[
        ],
        valueType:"Array of ChartType",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:HiliteRule.foregroundColorTitle":{
        ref:"attr:HiliteRule.foregroundColorTitle",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('attr:FormItem.title','title')} of the 'Text' color picker.",
        name:"foregroundColorTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Text\"",
        type:"attr",
        definingClass:"class:HiliteRule",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:Validator.notABoolean":{
        ref:"classAttr:Validator.notABoolean",
        flags:"IRA",
        description:"Default error message to display when standard <code>isBoolean</code> type validator\n  returns false.",
        name:"notABoolean",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be a true/false value\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColorPicker.hueFieldPrompt":{
        ref:"attr:ColorPicker.hueFieldPrompt",
        flags:"IR",
        description:"The text to show when the mouse hovers over the 'Hue' field in the complex chooser.",
        name:"hueFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The Hue (base tone) of the selected color\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:CanvasItem.readOnlyDisplayChanged":{
        ref:"method:CanvasItem.readOnlyDisplayChanged",
        flags:"",
        description:" Notification method called when the ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay','readOnlyDisplay')} setting\n is modified. Developers may make use of this to toggle between an editable and a read-only\n appearance of the ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas','canvas')}.\n <p>\n The default behavior is: when the <code>canvas</code> is a ${isc.DocUtils.linkForRef('class:DynamicForm')}, the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.readOnlyDisplay')} setting is set to <code>appearance</code>.\n <p>\n Standard <code>CanvasItem</code>-based form items may customize the default behavior.\n",
        name:"readOnlyDisplayChanged",
        seeAlso:[
            {
                ref:"method:CanvasItem.canEditChanged",
                description:null
            }
        ],
        returns:{
            description:"<code>false</code> to cancel the default behavior.",
            type:"boolean"
        },
        params:[
            {
                description:"new <code>readOnlyDisplay</code> value",
                optional:false,
                name:"appearance",
                defaultValue:null,
                type:"ReadOnlyDisplayAppearance"
            }
        ],
        type:"method",
        definingClass:"class:CanvasItem"
    },
    "attr:Calendar.workdayEnd":{
        ref:"attr:Calendar.workdayEnd",
        flags:"IR",
        getter:[
            "getWorkdayEnd"
        ],
        description:"When using ${isc.DocUtils.linkForRef('attr:Calendar.showWorkday')}:true, <code>workdayStart</code> and <code>workdayEnd</code>\n specify the time of day when the workday starts and ends, specified as a\n String acceptable to ${isc.DocUtils.linkForRef('classMethod:Time.parseInput')}.\n <P>\n Both start and end time must fall on a 30 minute increment (eg 9:30, but not 9:45).\n <P>\n The hours of the workday can be customized for particular dates by providing implementations\n of ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayStart')} and ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayEnd')}.",
        name:"workdayEnd",
        seeAlso:[
        ],
        valueType:"Time",
        defaultValue:"\"5:00pm\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "workday",
            "date"
        ]
    },
    "classMethod:Offline.useNativeOfflineDetection":{
        ref:"classMethod:Offline.useNativeOfflineDetection",
        flags:"",
        description:" Tells the Offline system to query the browser for the current online/offline state.\n Calling this method switches off the explicit offline mode setting switched on by \n calling ${isc.DocUtils.linkForRef('classMethod:Offline.goOnline')} or ${isc.DocUtils.linkForRef('classMethod:Offline.goOffline')}.\n <p>\n It is important to note that browsers vary quite considerably in their ability to \n detect that they are offline.  Many older browsers simply can't do it; HTML5 browsers\n expose the <code>navigator.onLine</code> property, but each browser's implementation \n is different.  Some browsers have a manual \"Work Offline\" mode which allows the user \n to make the decision, and SmartClient provides an equivalent mechanism with the \n <code>goOffline</code> and <code>goOnline</code> methods.  Generally speaking, these \n methods are more reliable than allowing the browser to decide whether your application\n is offline.\n \n",
        name:"useNativeOfflineDetection",
        seeAlso:[
            {
                ref:"classMethod:Offline.goOnline",
                description:null
            },
            {
                ref:"classMethod:Offline.goOffline",
                description:null
            }
        ],
        type:"classMethod",
        definingClass:"class:Offline"
    },
    "attr:HibernateBrowser.title":{
        ref:"attr:HibernateBrowser.title",
        flags:"IR",
        description:"A title to show in the header button of the HibernateBrowser's mapping tree.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Hibernate Mappings\"",
        type:"attr",
        definingClass:"class:HibernateBrowser"
    },
    "classAttr:Date.monthNames":{
        ref:"classAttr:Date.monthNames",
        flags:"IRWA",
        description:"This property may be set to an array of names of months.<br>\n For example:\n <pre>\n [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \n  \"August\", \"September\", \"October\", \"November\", \"December\"]\n </pre>\n The appropriate month name will then be returned from ${isc.DocUtils.linkForRef('method:Date.getMonthName')},\n and may be used whenever SmartClient components display month-names (for example in the\n ${isc.DocUtils.linkForRef('class:DateItem','DateItem class')}).",
        name:"monthNames",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:Date",
        groups:[
            "i18nMessages"
        ]
    },
    "type:TitleOrientation":{
        ref:"type:TitleOrientation",
        values:[
            {
                description:null,
                value:"\"left\""
            },
            {
                description:null,
                value:"\"top\""
            },
            {
                description:null,
                value:"\"right\""
            }
        ],
        description:"Orientation of titles relative to the FormItem being labeled.  Can be set a the\n DynamicForm level as a default, or on individual items.",
        name:"TitleOrientation",
        seeAlso:[
            {
                ref:"attr:DynamicForm.titleOrientation",
                description:null
            },
            {
                ref:"attr:FormItem.titleOrientation",
                description:null
            }
        ],
        type:"type",
        groups:[
            "formTitles"
        ]
    },
    "attr:DrawLinePath.endArrow":{
        ref:"attr:DrawLinePath.endArrow",
        flags:"IRW",
        description:"Style of arrowhead to draw at the end of the line or path.",
        name:"endArrow",
        seeAlso:[
        ],
        valueType:"ArrowStyle",
        defaultValue:"\"open\", IRW",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "method:ListGrid.handleGroupBy":{
        ref:"method:ListGrid.handleGroupBy",
        flags:"",
        description:" Callback fired when the user attempts to group or ungroup the listGrid, or when\n ${isc.DocUtils.linkForRef('method:ListGrid.groupBy')} is called programmatically.\n <smartclient>Return false to cancel grouping.</smartclient>\n <smartgwt>This event may be cancelled.</smartgwt>\n <P>\n This notification is fired before the ${isc.DocUtils.linkForRef('attr:ListGrid.groupTree','data')} is updated to\n reflect the grouping. See also ${isc.DocUtils.linkForRef('method:ListGrid.groupByComplete')}.\n\n",
        name:"handleGroupBy",
        seeAlso:[
        ],
        params:[
            {
                description:"ListGrid field names by which the grid is being grouped.   If the user is ungrouping the grid, this param will be an empty array.",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        returns:{
            description:"return false to cancel groupBy change.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DataSource.getFieldForDataPath":{
        ref:"method:DataSource.getFieldForDataPath",
        flags:"",
        description:" Return the field definition object corresponding to the supplied dataPath\n",
        name:"getFieldForDataPath",
        seeAlso:[
        ],
        params:[
            {
                description:"dataPath of the field to retrieve",
                optional:false,
                name:"dataPath",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"field object, or null if no field corresponds to the                            supplied dataPath",
            type:"DataSourceField"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:HeaderSpan.fields":{
        ref:"attr:HeaderSpan.fields",
        flags:"IR",
        description:"List of fields that this header spans.  Fields should be identified by their value for\n ${isc.DocUtils.linkForRef('attr:ListGridField.name')}.\n <P>\n Developers may define multiple levels of header-spans by specifying ${isc.DocUtils.linkForRef('attr:HeaderSpan.spans')}\n however a span cannot be specified with both <code>fields</code> and <code>spans</code>.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "method:DynamicForm.clearValues":{
        ref:"method:DynamicForm.clearValues",
        flags:"",
        description:" Reset to default form values and clear errors\n",
        name:"clearValues",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "method:Button.getState":{
        ref:"method:Button.getState",
        flags:"",
        description:" Return the state of this StatefulCanvas\n",
        name:"getState",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"State"
        },
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "method:ListGrid.getHeaderContextMenuItems":{
        ref:"method:ListGrid.getHeaderContextMenuItems",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu')} is <code>true</code> this method returns\n the menu items to be displayed in the default header context menu.\n <P>\n This method will be called each time the menu is displayed, allowing for dynamic content\n depending on the current state of the fields.\n <P>\n The default set of menu items will includes menu items for freezing fields, showing and\n hiding fields, grouping by fields, or other listGrid features\n\n",
        name:"getHeaderContextMenuItems",
        seeAlso:[
        ],
        params:[
            {
                description:"Index of the field the user clicked in the    ${isc.DocUtils.linkForRef('attr:ListGrid.fields','fields')} array. <b>Note:</b> if the user right-clicked the sorter button\n    this parameter will be <code>null</code>.",
                optional:true,
                name:"fieldNum",
                defaultValue:null,
                type:"integer"
            }
        ],
        returns:{
            description:null,
            type:"Array of MenuItem"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "attr:SelectOtherItem.selectOtherPrompt":{
        ref:"attr:SelectOtherItem.selectOtherPrompt",
        flags:"IR",
        description:"Title to show in prompt for \"other\" value.\n Note this is a dynamic string. JavaScript content is supported within <code>&#36;{...}</code>\n tags, with local variables for <code>item</code> (a pointer to this item) and \n <code>value</code> a pointer to the currently selected item value.",
        name:"selectOtherPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Other value for &lt;br&gt;${item.getTitle()}?\"",
        type:"attr",
        definingClass:"class:SelectOtherItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataBoundComponent.hiliteProperty":{
        ref:"attr:DataBoundComponent.hiliteProperty",
        flags:"IRW",
        description:"Marker that can be set on a record to flag that record as hilited.  Should be set to a value\n that matches ${isc.DocUtils.linkForRef('attr:Hilite.id')} for a hilite defined on this component.",
        name:"hiliteProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"_hilite\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:CubeGrid.bodyStyleName":{
        ref:"attr:CubeGrid.bodyStyleName",
        flags:"IRW",
        description:"CSS class for the CubeGrid body",
        name:"bodyStyleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"cubeGridBody\"",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:SimpleType.fieldProperties":{
        ref:"attr:SimpleType.fieldProperties",
        flags:"IR",
        description:"These are properties that are essentially copied onto any DataSourceField where the\n property is applied. The supported properties are only client-side properties.",
        name:"fieldProperties",
        seeAlso:[
        ],
        valueType:"DataSourceField Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SimpleType"
    },
    "attr:DataSourceField.editRequires":{
        ref:"attr:DataSourceField.editRequires",
        flags:"IR",
        description:"Indicates that the specified ${isc.DocUtils.linkForRef('type:VelocityExpression')} must evaluate to true if\n writes to this field are to be allowed.  If the specified expression does not evaluate\n to true, the field will be removed from the request as described for \n ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresAuthentication','editRequiresAuthentication')}.\n <p>\n In addition to the normal context variables available to Velocity expressions in SmartClient,\n expressions you write for field-level <code>requires</code> clauses - <code>editRequires</code>, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequires','viewRequires')}, ${isc.DocUtils.linkForRef('attr:DataSourceField.initRequires','initRequires')} and \n ${isc.DocUtils.linkForRef('attr:DataSourceField.updateRequires','updateRequires')} - can reference two additional variables: \n <code>$fieldName</code> and <code>$dsName</code>.  These are the names of the dataSource and \n field currently undergoing <code>requires</code> checks.  They are helpful because they allow\n you to write a generic checker function that can be used to handle <code>requires</code>\n checks for multiple fields and dataSources.\n <p>\n <b>NOTE:</b> This property prevents both initialization and updates for a field.  If you \n have a need to prevent <em>just</em> initialization or <em>just</em> updates, you can use\n ${isc.DocUtils.linkForRef('attr:DataSourceField.initRequires')} or ${isc.DocUtils.linkForRef('attr:DataSourceField.updateRequires')}.",
        name:"editRequires",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.editRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.viewRequires",
                description:null
            }
        ],
        valueType:"VelocityExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:GridRenderer.getEventRow":{
        ref:"method:GridRenderer.getEventRow",
        flags:"",
        description:" Returns the row number of the most recent mouse event.\n",
        name:"getEventRow",
        seeAlso:[
        ],
        params:[
            {
                description:"optional y-coordinate to obtain row number, in lieu of the y                        coordinate of the last mouse event",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"row number, or -2 if beyond last drawn row",
            type:"int"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events",
            "selection"
        ]
    },
    "attr:ListGrid.filterByCell":{
        ref:"attr:ListGrid.filterByCell",
        flags:"IRWA",
        description:"If we're showing the filterEditor (this.showFilterEditor is true), this property\n determines whether this list should be filtered every time the user puts focus in\n a different field in the filter editor.",
        name:"filterByCell",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:RowSpacerItem.endRow":{
        ref:"attr:RowSpacerItem.endRow",
        flags:"IRW",
        description:"these items are in a row by themselves by default",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RowSpacerItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ImgSplitbar.target":{
        ref:"attr:ImgSplitbar.target",
        flags:"R",
        description:"When a <code>Splitbar</code> is created by a layout, the <code>target</code> property\n of the Splitbar will be a pointer to the member for which it is acting as a resizeBar.\n The Splitbar will be positioned next to its target, and will resize it on drag completion.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass')},  ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar')} and \n ${isc.DocUtils.linkForRef('attr:Canvas.resizeBarTarget')} for details on configuring the resize bars shown in Layouts.",
        name:"target",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSplitbar"
    },
    "group:items":{
        ref:"group:items",
        title:"Form Items",
        refs:[
            "method:DynamicForm.getItem",
            "method:DynamicForm.getField",
            "attr:DynamicForm.items",
            "attr:DynamicForm.fields",
            "attr:ToolbarItem.buttons"
        ],
        description:"Manipulating the items that belong to a form.\n <BR><br>\n An item manages an atomic value (eg a String, Number, Date, etc) that appears as one of the\n properties in the overall form's values.  Some items exist purely for layout or appearance\n purposes (eg SpacerItem) and do not manage a value.",
        name:"items",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.showRollOverCanvas":{
        ref:"attr:ListGrid.showRollOverCanvas",
        flags:"IRWA",
        description:"When enabled, when the mouse moves over a row or cell (depending on\n ${isc.DocUtils.linkForRef('attr:ListGrid.useCellRollOvers')}), an arbitrary Canvas can be shown layered on top of the row or\n cell (the ${isc.DocUtils.linkForRef('attr:ListGrid.rollOverCanvas')}), layered underneath the row or cell (the\n ${isc.DocUtils.linkForRef('attr:ListGrid.rollUnderCanvas')}), or both. \n <P>\n This can be used to dynamically show controls or informational displays only on\n rollover.  For example, controls to delete a row might appear only on rollover so they\n do not clutter the static display, or a \"rollunder\" Canvas could be used to display\n additional information that can appear behind normal cell values (like displaying\n percent complete via as a bar of color that appears behind text values).\n <p>\n ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','snapTo positioning')} can be used to place the\n rollOver/rollUnderCanvas.  With <code>useCellRollOvers</code>, positioning is relative\n to the cell, for row-level rollOver, position is relative to the portion of the\n row that is scrolled into view (this implies a row-level rollOver/UnderCanvas can never\n be placed horizontally scrolled out of view, but this is possible for a cell-level\n rollOver).  \n <p>\n <code>snapTo</code> positioning makes it easy to do something like place a button at the\n right edge of the grid, next to the scrollbar: just set snapTo:\"R\" on the\n <code>rollOverCanvas</code>.\n <p>\n The rollOver/rollUnder Canvas can be a single static component (the same for all\n cells/rows) configured via the ${isc.DocUtils.linkForRef('type:AutoChild')} system, or can instead be provided\n dynamically by implementing ${isc.DocUtils.linkForRef('method:ListGrid.getRollOverCanvas')} and/or ${isc.DocUtils.linkForRef('method:ListGrid.getRollUnderCanvas')}.\n <p>\n With row-level rollOvers with ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen fields')}, the \n <code>rollOverCanvas</code> and <code>rollUnderCanvas</code> appear only for non-frozen\n fields.  This is usually not an issue for something like rollOver controls for row\n deletion, but will prevent certain scenarios of using rollOverCanvas/rollUnderCanvas for\n visual styling.\n <p>\n <code>showRollOverCanvas</code> has no effect if ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOver')} is <code>false</code>.",
        name:"showRollOverCanvas",
        seeAlso:[
            {
                ref:"attr:ListGrid.showRollUnderCanvas",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridRollOverReticleEffect')}",
            "${isc.DocUtils.linkForExampleId('rolloverControls')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "attr:TimeItem.showHourItem":{
        ref:"attr:TimeItem.showHourItem",
        flags:"IRW",
        description:"Controls whether to display the ${isc.DocUtils.linkForRef('attr:TimeItem.hourItem')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is false.",
        name:"showHourItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:ImgButton.getState":{
        ref:"method:ImgButton.getState",
        flags:"",
        description:" Return the state of this StatefulCanvas\n",
        name:"getState",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"State"
        },
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "classAttr:DataSource.loaderURL":{
        ref:"classAttr:DataSource.loaderURL",
        flags:"RW",
        getter:[
            "getLoaderURL"
        ],
        description:"The URL where the DataSourceLoader servlet has been installed.  Defaults to the\n ${isc.DocUtils.linkForRef('classMethod:Page.setIsomorphicDir','isomorphicDir')} plus \"/DataSourceLoader\".  Change by calling\n calling ${isc.DocUtils.linkForRef('classMethod:DataSource.setLoaderURL')}",
        name:"loaderURL",
        setter:[
            "setLoaderURL"
        ],
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"DataSource.loaderURL",
        type:"classAttr",
        definingClass:"class:DataSource"
    },
    "attr:FormulaBuilder.formulaField":{
        ref:"attr:FormulaBuilder.formulaField",
        flags:"IR",
        description:"TextItem that users type into when entering a formula.",
        name:"formulaField",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Calendar.workdayBaseStyle":{
        ref:"attr:Calendar.workdayBaseStyle",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:Calendar.showWorkday')} is set, this is the style used for cells that are within the workday, \n as defined by ${isc.DocUtils.linkForRef('attr:Calendar.workdayStart')} and ${isc.DocUtils.linkForRef('attr:Calendar.workdayEnd')}, or by a date-specific range \n provided in ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayStart')} and ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayEnd')} implementations.",
        name:"workdayBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calendarWorkday\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "workday",
            "appearance"
        ]
    },
    "attr:SliderItem.slider":{
        ref:"attr:SliderItem.slider",
        flags:"R",
        description:"This item is an autoChild generated ${isc.DocUtils.linkForRef('class:Canvas')} displayed by\n the SliderItem and is an instance of ${isc.DocUtils.linkForRef('class:Slider')} by default. It is customizable \n via the standard ${isc.DocUtils.linkForRef('type:AutoChild')} pattern, by customizing ${isc.DocUtils.linkForRef('attr:SliderItem.sliderProperties')}\n and ${isc.DocUtils.linkForRef('attr:SliderItem.sliderConstructor')}.",
        name:"slider",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SliderItem"
    },
    "attr:ImgSectionHeader.iconOrientation":{
        ref:"attr:ImgSectionHeader.iconOrientation",
        flags:"IR",
        description:"If this button is showing an icon should it appear to the left or right of the title?\n valid options are <code>\"left\"</code> and <code>\"right\"</code>.",
        name:"iconOrientation",
        setter:[
            "setIconOrientation"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"left\"",
        type:"attr",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "buttonIcon"
        ]
    },
    "method:FacetChart.getChartWidth":{
        ref:"method:FacetChart.getChartWidth",
        flags:"",
        description:" Get the width of the central chart area, where data elements appear.\n <P> \n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getChartWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"if false then cached value will be returned,  otherwise will be recalculated.",
                optional:false,
                name:"recalc",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"the width of the central chart area.",
            type:"float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:MultiComboBoxItem.comboBoxDefaults":{
        ref:"attr:MultiComboBoxItem.comboBoxDefaults",
        flags:"RA",
        description:"Default properties for the ${isc.DocUtils.linkForRef('class:ComboBoxItem')} in a MultiComboBoxItem.",
        name:"comboBoxDefaults",
        seeAlso:[
        ],
        valueType:"ComboBoxItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "method:DrawItem.setEndArrow":{
        ref:"method:DrawItem.setEndArrow",
        flags:"",
        description:" Set the arrowhead at the end of this path.\n <p>\n <b>NOTE:</b> Not all DrawItem classes support arrowheads. You can use ${isc.DocUtils.linkForRef('method:DrawItem.supportsEndArrow')}\n to dynamically check whether a DrawItem instance supports this method.\n",
        name:"setEndArrow",
        seeAlso:[
        ],
        params:[
            {
                description:"style of arrow to use",
                optional:false,
                name:"arrowStyle",
                defaultValue:null,
                type:"ArrowStyle"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:TabSet.destroyPanes":{
        ref:"attr:TabSet.destroyPanes",
        flags:"IR",
        description:"Whether ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} should be called on ${isc.DocUtils.linkForRef('attr:Tab.pane')} when it a tab is\n removed via ${isc.DocUtils.linkForRef('method:TabSet.removeTab')}}.  \n <P>\n An application might set this to false in order to re-use panes in different tabs or in\n different parts of the application.",
        name:"destroyPanes",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:Layout.layoutRightMargin":{
        ref:"attr:Layout.layoutRightMargin",
        flags:"IRW",
        description:"Space outside of all members, on the right-hand side.  Defaults to ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')}.\n <P>\n Requires a manual call to <code>setLayoutMargin()</code> if changed on the fly.",
        name:"layoutRightMargin",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:SectionStack.getSections":{
        ref:"method:SectionStack.getSections",
        flags:"",
        description:"\n Returns a list of all ${isc.DocUtils.linkForRef('attr:SectionStackSection.name','section names')} in the order in which \n they appear in the SectionStack.\n\n",
        name:"getSections",
        seeAlso:[
        ],
        returns:{
            description:"list of all section names in the order in which they appear in the SectionStack.",
            type:"List"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "attr:ListGrid.missingSummaryFieldValue":{
        ref:"attr:ListGrid.missingSummaryFieldValue",
        flags:"IRW",
        description:"If a summary format string contains an invalid field reference, replace the reference\n with the missingSummaryFieldValue. The default value is \"-\".",
        name:"missingSummaryFieldValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"-\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "summaryFields"
        ]
    },
    "attr:MultiComboBoxItem.comboBoxWidth":{
        ref:"attr:MultiComboBoxItem.comboBoxWidth",
        flags:"IRW",
        description:"Specifies the size of the combo box field.\n <P>\n Note that this attribute only has an effect in \"flow\", \"horizontal\", and\n \"horizontalReverse\" ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.layoutStyle','modes')}.  In the other modes, the combo box\n is as wide as the overall MultiComboBoxItem.",
        name:"comboBoxWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"130",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:CubeGrid.valueProperty":{
        ref:"attr:CubeGrid.valueProperty",
        flags:"IR",
        description:"Name of the property in a cell record that holds the cell value.",
        name:"valueProperty",
        seeAlso:[
        ],
        valueType:"id",
        defaultValue:"\"_value\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:ListGrid.instantScrollTrackRedraw":{
        ref:"attr:ListGrid.instantScrollTrackRedraw",
        flags:"IRW",
        description:"If true, if the user clicks on the scroll buttons at the end of the track or clicks once on\n the scroll track, there will be an instant redraw of the grid content so that the user\n doesn't see any blank space.  For drag scrolling or other types of scrolling, the\n ${isc.DocUtils.linkForRef('attr:ListGrid.scrollRedrawDelay')} applies.",
        name:"instantScrollTrackRedraw",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "method:NativeScrollbar.setScrollTarget":{
        ref:"method:NativeScrollbar.setScrollTarget",
        flags:"",
        description:"          Sets or clears the scrollbar's scrollTarget. If no argument is provided, then the\n          scrollTarget will be set to the scrollbar itself.\n\n",
        name:"setScrollTarget",
        seeAlso:[
        ],
        params:[
            {
                description:"target canvas to be scrolled",
                optional:true,
                name:"newTarget",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:NativeScrollbar",
        groups:[
            "scroll"
        ]
    },
    "group:localizedNumberFormatting":{
        ref:"group:localizedNumberFormatting",
        title:"Localized Number Formatting",
        refs:[
        ],
        description:"Use the special ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field types')} \"localeInt\", \"localeFloat\" and\n \"localeCurrency\" to have locale-specific formatting applied to numeric values, as well as\n automatic parsing of user inputs that use locale-specific decimal and grouping separators.\n <p>\n <smartclient>\n These special types rely on the settings ${isc.DocUtils.linkForRef('classAttr:NumberUtil.decimalSymbol')},\n ${isc.DocUtils.linkForRef('classAttr:NumberUtil.groupingSymbol')} and ${isc.DocUtils.linkForRef('classAttr:NumberUtil.currencySymbol')}.  These are normally\n set automatically when you load a language pack for the current locale.\n <p>\n See ${isc.DocUtils.linkForRef('group:i18n')} for more background on internationalization and loading language packs\n for the current locale.\n </smartclient>\n <smartgwt>\n These special types automatically use GWT's NumberFormat logic, using the default locale.\n Additional ${isc.DocUtils.linkForRef('class:SimpleType','SimpleTypes')} can be created that call GWT's NumberFormat if more\n variations are needed.\n <p>\n Note that language packs shipped with SmartGWT contain properties such as \"decimalSymbol\"\n that seemingly would control localized number formatting.  These are inactive for SmartGWT\n and should be ignored.\n <p>\n See ${isc.DocUtils.linkForRef('group:i18n')} for more background on internationalization.\n </smartgwt>",
        name:"localizedNumberFormatting",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Slider.stepPercent":{
        ref:"attr:Slider.stepPercent",
        flags:"IRW",
        description:"The percentage of the total slider that constitutes one discrete step. The slider will move\n one step when the appropriate arrow key is pressed.",
        name:"stepPercent",
        setter:[
            "setStepPercent"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:Slider"
    },
    "method:RelativeDateItem.getCriterion":{
        ref:"method:RelativeDateItem.getCriterion",
        flags:"",
        description:" Get the criterion based on the values the user has entered.\n",
        name:"getCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to use an absolute date in the Criterion produced.                               By default a ${isc.DocUtils.linkForRef('object:RelativeDate')} will be used if the user \n                             entered a relative date value",
                optional:true,
                name:"absolute",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"Criterion",
            type:null
        },
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "method:ListGrid.getEventColumn":{
        ref:"method:ListGrid.getEventColumn",
        flags:"",
        description:" Returns the column number of the most recent mouse event.\n",
        name:"getEventColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"optional x-coordinate to obtain column number for, in lieu of the x                        coordinate of the last mouse event",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"column number, or -2 if beyond last drawn column",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "classMethod:isA.Number":{
        ref:"classMethod:isA.Number",
        flags:"",
        description:"\n\tIs <code>object</code> a Number object?<br><br>\n\n\tNOTE: this returns false if <code>object</code> is an invalid number (<code>isNaN(object) == true</code>)\n\n",
        name:"Number",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a Number",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "method:Calendar.previous":{
        ref:"method:Calendar.previous",
        flags:"",
        description:" Move to the previous day, week, month, or timeline range depending on which tab is selected.\n\n",
        name:"previous",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:Date.toDateStamp":{
        ref:"method:Date.toDateStamp",
        flags:"",
        description:"\t\t\tReturn this date in the format (UTC timezone):\n\t\t\t\t<code><i>YYYYMMDD</i>T<i>HHMMSS</i>[Z]</code>\n",
        name:"toDateStamp",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "method:Toolbar.removeButtons":{
        ref:"method:Toolbar.removeButtons",
        flags:"",
        description:"\tRemove a list of buttons from the toolbar\n\n",
        name:"removeButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of buttons to remove. Buttons may be specified as pointers to  the button instances contained in this toolbar, or numbers indicating the index of the buttons\n in <code>this.buttons</code>.",
                optional:true,
                name:"buttons",
                defaultValue:null,
                type:"Array"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar"
    },
    "attr:TreeNode.children":{
        ref:"attr:TreeNode.children",
        flags:"IRW",
        description:"For trees with the modelType \"children\", this property specifies the children of this\n TreeNode.\n <p>\n Note: the name of this property can be changed by setting ${isc.DocUtils.linkForRef('attr:Tree.childrenProperty')}",
        name:"children",
        seeAlso:[
            {
                ref:"attr:Tree.modelType",
                description:null
            },
            {
                ref:"attr:Tree.childrenProperty",
                description:null
            }
        ],
        valueType:"List of TreeNode",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "attr:Calendar.workdayStart":{
        ref:"attr:Calendar.workdayStart",
        flags:"IR",
        getter:[
            "getWorkdayStart"
        ],
        description:"When using ${isc.DocUtils.linkForRef('attr:Calendar.showWorkday')}:true, <code>workdayStart</code> and <code>workdayEnd</code>\n specify the time of day when the workday starts and ends, specified as a\n String acceptable to ${isc.DocUtils.linkForRef('classMethod:Time.parseInput')}.\n <P>\n Both start and end time must fall on a 30 minute increment (eg 9:30, but not 9:45).\n <P>\n The hours of the workday can be customized for particular dates by providing implementations\n of ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayStart')} and ${isc.DocUtils.linkForRef('method:Calendar.getWorkdayEnd')}.",
        name:"workdayStart",
        seeAlso:[
        ],
        valueType:"Time",
        defaultValue:"\"9:00am\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "workday",
            "date"
        ]
    },
    "classAttr:RPCManager.allowCrossDomainCalls":{
        ref:"classAttr:RPCManager.allowCrossDomainCalls",
        flags:"IRWA",
        description:"By default SmartClient will show a warning message on attempted requests to another domain as\n this is usually not supported at the browser level by default due to \n security considerations.\n <P>\n Some browsers now do support cross domain requests through the use of Http Access Control headers\n (See the <a href='http://www.w3.org/TR/cors/' target='_blank'>W3C Cross-Origin Resource Sharing recommendation</a>).\n If your application intends to rely on this behavior to perform cross-domain requests, \n you can set <code>allowCrossDomainCalls</code> to true to disable the standard SmartClient \n warning when such calls occur.\n <P>\n Note also that this is typically not an issue if you are using the SmartClient server \n (part of Pro, Power and Enterprise editions of SmartClient), as this includes the \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendProxied','HTTPProxy servlet')}.",
        name:"allowCrossDomainCalls",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "attr:ListGridField.summaryValueTitle":{
        ref:"attr:ListGridField.summaryValueTitle",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} or ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true and the\n ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')} is set to <code>\"title\"</code>, this attribute may be\n set to a string to display in the group and/or grid summary. If unspecified the\n ${isc.DocUtils.linkForRef('attr:ListGridField.title')} will show up in the summary.",
        name:"summaryValueTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:TextAreaItem.selectOnFocus":{
        ref:"attr:TextAreaItem.selectOnFocus",
        flags:"IRW",
        description:"Allows the ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnFocus','selectOnFocus')} behavior to be configured on a\n per-FormItem basis.  Normally all items in a form default to the value of\n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnFocus')}.",
        name:"selectOnFocus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "focus"
        ]
    },
    "attr:Operator.hidden":{
        ref:"attr:Operator.hidden",
        flags:"IR",
        description:"Whether this operator should be offered to users by default in interfaces such as the\n ${isc.DocUtils.linkForRef('class:FilterBuilder')}.  \n <P>\n Setting hidden:true means the operator can be used in a programmatic search, for example,\n by calling ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria')}, but does not appear in the UI.",
        name:"hidden",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:ListGrid.editFailedBaseStyle":{
        ref:"attr:ListGrid.editFailedBaseStyle",
        flags:"IRWA",
        description:"A base name for the CSS class applied to cells when editing has failed.<br>\n  If this listGrid is editable, this style will be applied to any edited cells for which\n  validation failed.<br>\n  As with the default 'baseStyle' property, this style will have \"Dark\", \"Over\", \"Selected\",\n  or \"Disabled\" appended to it according to the state of the cell.<br>\n If null, cells for which editing has failed will be rendered using the normal base style\n classNames, but with custom CSSText applied as derived from <code>this.editFailedCSSText</code>",
        name:"editFailedBaseStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.baseStyle",
                description:null
            },
            {
                ref:"attr:ListGrid.editFailedCSSText",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:RPCRequest.httpMethod":{
        ref:"attr:RPCRequest.httpMethod",
        flags:"IRW",
        description:"Selects the HTTP method that will be used for the request.  Typical values are \"POST\" and\n \"GET\".\n <P>\n The more obscure \"PUT\", \"DELETE\" and \"HEAD\" methods are also valid, however, none of these\n are supported by the Safari browser previous to version 3.0.",
        name:"httpMethod",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"POST\"",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:CheckboxItem.checkedImage":{
        ref:"attr:CheckboxItem.checkedImage",
        flags:"IRW",
        description:"URL for the image to display when this checkbox is selected, or checked.\n <P>\n This image is implemented using the ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons','valueIcons subsystem')},\n and may be modified via the standard valueIcons properties such as\n ${isc.DocUtils.linkForRef('attr:CheckboxItem.valueIconWidth')}\n <P>\n Note that this is the base image name - if ${isc.DocUtils.linkForRef('attr:CheckboxItem.showValueIconOver')} et al are set, the\n state (<code>\"Over\"</code>, <code>\"Down\"</code> and <code>\"Disabled\"</code>) will be\n added to this name as the user interacts with the checkbox, as well as the \n <code>\".gif\"</code> extension",
        name:"checkedImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/checked.gif\"",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "appearance"
        ]
    },
    "method:CanvasItem.createCanvas":{
        ref:"method:CanvasItem.createCanvas",
        flags:"",
        description:" This method allows dynamic creation of a CanvasItem's canvas, rather than\n setting ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')} statically.\n If specified this ${isc.DocUtils.linkForRef('group:stringMethods','StringMethod')} will be called when the form item is \n initialized and should return the Canvas to display for this item.\n",
        name:"createCanvas",
        seeAlso:[
        ],
        params:[
            {
                description:"the dynamicForm in which this item is contained",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the live form item instance",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"CanvasItem"
            }
        ],
        returns:{
            description:"the canvas to be rendered inside this CanvasItem",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:CanvasItem"
    },
    "attr:FormulaBuilder.saveConfirmationPrompt":{
        ref:"attr:FormulaBuilder.saveConfirmationPrompt",
        flags:"IRWA",
        description:"The text to display in the dialog that opens when there are unsaved changes and the user \n cancels the builder.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will \n be evaluated as JS code when the message is displayed.\n <P>\n Only one dynamic variable, builderType, is available and represents the type of this \n builder, either Formula or Summary.\n <P>\n The default output is:<P>\n <code>\n <i>Save changes to this [Formula/Summary]?</i>\n </code>",
        name:"saveConfirmationPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Save changes to this ${builderType}?\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FormItem.hideIcon":{
        ref:"method:FormItem.hideIcon",
        flags:"",
        description:" This method will hide some icon in this item's ${isc.DocUtils.linkForRef('attr:FormItem.icons')} array, if it is \n currently visible. Note that once this method has been called, andy previously specified\n ${isc.DocUtils.linkForRef('method:FormItemIcon.showIf')} will be discarded.\n\n",
        name:"hideIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"${isc.DocUtils.linkForRef('attr:FormItemIcon.name','Name')} of the icon to be hidden.",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:Operator.editorType":{
        ref:"attr:Operator.editorType",
        flags:"IR",
        description:"For an operator with ${isc.DocUtils.linkForRef('attr:Operator.valueType')}:\"custom\", indicates what kind of FormItem to use to\n provide a user interface for creating a valid ${isc.DocUtils.linkForRef('object:Criterion')}.  The default of\n <code>null</code> means an ordinary TextItem is fine.",
        name:"editorType",
        seeAlso:[
        ],
        valueType:"FormItem classname",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "method:RelativeDateItem.setFiscalCalendar":{
        ref:"method:RelativeDateItem.setFiscalCalendar",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('object:FiscalCalendar')} object that will be used by this item's DateChooser.  If \n unset, the _link{Date.getFiscalCalendar, global fiscal calendar} is used.\n\n",
        name:"setFiscalCalendar",
        seeAlso:[
        ],
        params:[
            {
                description:"the fiscal calendar for this chooser, if set, or the global            one otherwise",
                optional:true,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "attr:TabSet.titleEditEvent":{
        ref:"attr:TabSet.titleEditEvent",
        flags:"IRW",
        description:"The event that triggers title editing on this TabSet.",
        name:"titleEditEvent",
        seeAlso:[
            {
                ref:"attr:TabSet.canEditTabTitles",
                description:null
            },
            {
                ref:"attr:Tab.canEditTitle",
                description:null
            }
        ],
        valueType:"TabTitleEditEvent",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('userEditableTitles')}"
        ],
        definingClass:"class:TabSet"
    },
    "attr:DateRangeItem.toDate":{
        ref:"attr:DateRangeItem.toDate",
        flags:"IRW",
        description:"Initial value for the \"to\" date.",
        name:"toDate",
        setter:[
            "setToDate"
        ],
        seeAlso:[
        ],
        valueType:"Date or RelativeDateString or TimeUnit",
        defaultValue:"today",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:TreeGrid.canReorderRecords":{
        ref:"attr:TreeGrid.canReorderRecords",
        flags:"IRWA",
        description:"Indicates whether records can be reordered by dragging within this listGrid.",
        name:"canReorderRecords",
        seeAlso:[
            {
                ref:"attr:TreeNode.canDrag",
                description:null
            },
            {
                ref:"attr:TreeNode.canAcceptDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragReparent')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ColorItem.pickerIconHeight":{
        ref:"attr:ColorItem.pickerIconHeight",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ColorItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n size of the picker icon. If unset, the picker icon will be sized as a square to fit in the\n available height for the icon.\n <p>\n It is not recommended to change the pickerIconHeight from the default value if ${isc.DocUtils.linkForRef('group:skinning','spriting')}\n is enabled because the image sprites are set up assuming specific, fixed dimensions of the picker\n icon. If the pickerIconHeight must be changed, then the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')}\n should be changed to a custom CSS style name.",
        name:"pickerIconHeight",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"18",
        type:"attr",
        definingClass:"class:ColorItem",
        groups:[
            "pickerIcon"
        ]
    },
    "group:auth":{
        ref:"group:auth",
        refs:[
            "attr:DataSource.requiresAuthentication",
            "attr:DataSource.requiresRole",
            "attr:DataSource.requires",
            "attr:OperationBinding.requiresAuthentication",
            "attr:OperationBinding.requiresRole",
            "attr:OperationBinding.requires"
        ],
        name:"auth",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Button.setSelected":{
        ref:"method:Button.setSelected",
        flags:"",
        description:" Select this object.\n",
        name:"setSelected",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "method:Tree.closeFolder":{
        ref:"method:Tree.closeFolder",
        flags:"",
        description:"\n Closes a folder\n\n",
        name:"closeFolder",
        seeAlso:[
        ],
        params:[
            {
                description:"folder to close",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:Window.headerControls":{
        ref:"attr:Window.headerControls",
        flags:"IR",
        description:"Array of members to show in the Window header.  \n <P>\n The default value of <code>headerControls</code> is an Array of Strings listing the\n standard header controls in their default order:\n <pre>\n    headerControls : [\"headerIcon\", \"headerLabel\", \n                      \"minimizeButton\", \"maximizeButton\", \"closeButton\"]\n </pre>\n You can override <code>headerControls</code> to change the order of standard controls in\n the header.  You can also omit standard controls this way, although it more efficient to\n use the related \"show\" property if available (eg ${isc.DocUtils.linkForRef('attr:Window.showMinimizeButton')}).  \n <P>\n By embedding a Canvas directly in this list you can add arbitrary additional controls to\n the header, for example, an additional button (eg return to dock) or a DynamicForm with\n various kinds of input controls.  \n <P>\n Note that having added controls to headerControls, you can still call APIs directly on\n those controls to change their appearance, and you can also show() and hide() them if\n they should not be shown in some circumstances.\n <P>\n Tip: custom controls need to set layoutAlign:\"center\" to appear vertically centered.",
        name:"headerControls",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"(see below)",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('windowHeaderControls')}"
        ],
        definingClass:"class:Window"
    },
    "classMethod:Array.compareAscending":{
        ref:"classMethod:Array.compareAscending",
        flags:"A",
        description:" Compare two values for an ascending order sort, using locale-sensitive comparison.\n",
        name:"compareAscending",
        seeAlso:[
        ],
        params:[
            {
                description:"first value to compare",
                optional:false,
                name:"a",
                defaultValue:null,
                type:"any"
            },
            {
                description:"second value to compare",
                optional:false,
                name:"b",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"negative == second is larger, 0 == same value, positive == first is larger",
            type:"number"
        },
        type:"classMethod",
        definingClass:"object:Array",
        groups:[
            "sorting"
        ]
    },
    "method:ImgButton.setActionType":{
        ref:"method:ImgButton.setActionType",
        flags:"",
        description:" Update the 'actionType' for this canvas (radio / checkbox / button)\n If the canvas is currently selected, and the passed in actionType is 'button'\n this method will deselect the canvas.\n",
        name:"setActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:Canvas.isVisible":{
        ref:"method:Canvas.isVisible",
        flags:"",
        description:" Returns true if the widget is visible, taking all parents into account, so that a widget\n which is not hidden might still report itself as not visible if it is within a hidden\n parent.\n <P>\n NOTE: Undrawn widgets will report themselves as visible if they would be visible if drawn.\n\n",
        name:"isVisible",
        seeAlso:[
        ],
        returns:{
            description:"true if the widget is visible, false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "visibility"
        ]
    },
    "attr:DSRequest.startRow":{
        ref:"attr:DSRequest.startRow",
        flags:"IR",
        description:"Starting row of requested results, used only with fetch operations.  If unset, 0 is assumed.\n <p>\n Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at\n the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "paging"
        ]
    },
    "method:Array.dataChanged":{
        ref:"method:Array.dataChanged",
        flags:"A",
        description:" Method called when this array changes in some way.  Observe the method to react to changes in\n this list.\n <P>\n Note: dataChanged() will only fire when items are added, removed or rearranged.  If a list\n contains objects, dataChanged() will not fire if changes are made to objects within the list\n without changing their position within the list.  If an observer of dataChanged() needs to react\n to such a change, you can manually fire dataChanged() by simply calling it.\n <P>\n Note: may be called multiple times as the result of a multi-item add or remove, etc.\n\n",
        name:"dataChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "attr:FieldPicker.dataBoundComponent":{
        ref:"attr:FieldPicker.dataBoundComponent",
        flags:"IR",
        description:"The component whose fields should be edited.",
        name:"dataBoundComponent",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FieldPicker"
    },
    "type:Orientation":{
        ref:"type:Orientation",
        values:[
            {
                description:"members laid out vertically",
                value:"Layout.VERTICAL"
            },
            {
                description:"members laid out horizontally",
                value:"Layout.HORIZONTAL"
            }
        ],
        description:null,
        name:"Orientation",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "orientation"
        ]
    },
    "method:DrawItem.setFillOpacity":{
        ref:"method:DrawItem.setFillOpacity",
        flags:"",
        description:" Update fillOpacity for this drawItem.\n",
        name:"setFillOpacity",
        seeAlso:[
        ],
        params:[
            {
                description:"new opacity, as a number between 0 (transparent) and 1 (opaque).",
                optional:false,
                name:"opacity",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:GridRenderer.getNearestRowToEvent":{
        ref:"method:GridRenderer.getNearestRowToEvent",
        flags:"",
        description:"\t\t\tReturns the nearest row to the event coordinates\n",
        name:"getNearestRowToEvent",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events",
            "selection"
        ]
    },
    "method:SectionStack.removeSection":{
        ref:"method:SectionStack.removeSection",
        flags:"",
        description:"\n Remove a section or set of sections from the SectionStack.  The removed sections' header\n and items (if any) are automatically destroyed.\n\n",
        name:"removeSection",
        seeAlso:[
        ],
        params:[
            {
                description:"Section(s) to remove.                  For this parameter, you can pass the position of the section in the\n                  SectionStack, the <code>name</code> of the section, or a List of \n                  section <code>name</code>s or indices.",
                optional:false,
                name:"sections",
                defaultValue:null,
                type:"int | String | Array of int | Array of String"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsAddAndRemove')}"
        ],
        definingClass:"class:SectionStack"
    },
    "attr:FieldPicker.removeText":{
        ref:"attr:FieldPicker.removeText",
        flags:"IR",
        description:null,
        name:"removeText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"You are about to remove the field. Are you sure?\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:PickTreeItem.dataSource":{
        ref:"attr:PickTreeItem.dataSource",
        flags:"IRA",
        description:"If specified, the tree of possible options will be derived from the dataSource as a\n ResultTree, rather than using this.valueTree.  Options can be loaded on demand or up\n front according tp ${isc.DocUtils.linkForRef('attr:PickTreeItem.loadDataOnDemand')}.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"Datasource | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PickTreeItem"
    },
    "classMethod:Class.markAsFrameworkClass":{
        ref:"classMethod:Class.markAsFrameworkClass",
        flags:"",
        description:" Mark this class as a framework class (member of the SmartClient framework).\n Sets ${isc.DocUtils.linkForRef('classAttr:Class.isFrameworkClass')}. May be used in debugging and by the\n AutoTest subsystem\n",
        name:"markAsFrameworkClass",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Class",
        groups:[
            "autoTest"
        ]
    },
    "attr:GridRenderer.showOfflineMessage":{
        ref:"attr:GridRenderer.showOfflineMessage",
        flags:"IRW",
        description:"Indicates whether the text of the offlineMessage property should be displayed if no data\n is available because we are offline and there is no suitable cached response",
        name:"showOfflineMessage",
        seeAlso:[
            {
                ref:"attr:GridRenderer.offlineMessage",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "emptyMessage",
            "offlineGroup"
        ]
    },
    "class:DetailViewer":{
        methods:[
            "method:DetailViewer.viewSelectedData",
            "method:DetailViewer.exportData",
            "method:DetailViewer.exportClientData",
            "method:DetailViewer.isExportingClientData",
            "method:DetailViewer.setData",
            "method:DetailViewer.fieldIsVisible",
            "method:DetailViewer.getCellCSSText",
            "method:DetailViewer.getCellStyle",
            "method:DetailViewer.formatCellValue",
            "method:DetailViewer.getRecordIndex",
            "method:DetailViewer.emptyMessageHTML",
            "method:DetailViewer.getViewState",
            "method:DetailViewer.setViewState"
        ],
        exampleConfig:"DetailViewer.xml",
        ref:"class:DetailViewer",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:DetailViewer.data",
            "attr:DetailViewer.dataFetchMode",
            "attr:DetailViewer.fields",
            "attr:DetailViewer.hiliteIcons",
            "attr:DetailViewer.hiliteIconPosition",
            "attr:DetailViewer.hiliteIconSize",
            "attr:DetailViewer.hiliteIconWidth",
            "attr:DetailViewer.hiliteIconHeight",
            "attr:DetailViewer.hiliteIconLeftPadding",
            "attr:DetailViewer.hiliteIconRightPadding",
            "attr:DetailViewer.fieldIdProperty",
            "attr:DetailViewer.recordsPerBlock",
            "attr:DetailViewer.blockSeparator",
            "attr:DetailViewer.showEmptyField",
            "attr:DetailViewer.emptyCellValue",
            "attr:DetailViewer.labelPrefix",
            "attr:DetailViewer.labelSuffix",
            "attr:DetailViewer.labelAlign",
            "attr:DetailViewer.valueAlign",
            "attr:DetailViewer.wrapLabel",
            "attr:DetailViewer.wrapValues",
            "attr:DetailViewer.styleName",
            "attr:DetailViewer.blockStyle",
            "attr:DetailViewer.labelStyle",
            "attr:DetailViewer.cellStyle",
            "attr:DetailViewer.headerStyle",
            "attr:DetailViewer.printCellStyle",
            "attr:DetailViewer.printLabelStyle",
            "attr:DetailViewer.printHeaderStyle",
            "attr:DetailViewer.separatorStyle",
            "attr:DetailViewer.dateFormatter",
            "attr:DetailViewer.datetimeFormatter",
            "attr:DetailViewer.timeFormatter",
            "attr:DetailViewer.linkTextProperty",
            "attr:DetailViewer.showEmptyMessage",
            "attr:DetailViewer.emptyMessage",
            "attr:DetailViewer.emptyMessageStyle",
            "attr:DetailViewer.loadingMessage",
            "attr:DetailViewer.loadingMessageStyle",
            "attr:DetailViewer.showDetailFields",
            "attr:DetailViewer.fieldPickerWindow",
            "attr:DetailViewer.canPickFields",
            "attr:DetailViewer.configureFieldsText",
            "attr:DetailViewer.fieldPickerFieldProperties"
        ],
        description:"Displays one or more records \"horizontally\" with one property per line.",
        name:"DetailViewer",
        implementsInterfaces:[
            "DataBoundComponent"
        ],
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGridField.editorIconHeight":{
        ref:"attr:ListGridField.editorIconHeight",
        flags:"IRA",
        description:"If this field is editable, this property will be passed to editors displayed for\n cells within this field as ${isc.DocUtils.linkForRef('attr:FormItem.iconHeight')}.<br>\n If this property unset, the iconHeight property from the editor can be picked up from\n ${isc.DocUtils.linkForRef('attr:ListGridField.iconHeight')} instead.",
        name:"editorIconHeight",
        seeAlso:[
            {
                ref:"attr:ListGridField.icons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:ListGrid.emptyCellValue":{
        ref:"attr:ListGrid.emptyCellValue",
        flags:"IRW",
        description:"The value to display for cells whose value is null or the empty string after applying\n ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue','formatting')} and valueMap (if any).\n <p>\n This is the grid-wide attribute.  You may also set the emptyCellValue on a per-field basis.",
        name:"emptyCellValue",
        seeAlso:[
            {
                ref:"attr:ListGridField.emptyCellValue",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('emptyValues')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "attr:FormItem.accessKey":{
        ref:"attr:FormItem.accessKey",
        flags:"IRW",
        description:"If specified this governs the HTML accessKey for the item.\n <P>\n This should be set to a character - when a user hits the html accessKey modifier for\n the browser, plus this character, focus will be given to the item.\n The accessKey modifier can vary by browser and platform. \n <P>\n The following list of default behavior is for reference only, developers should also\n consult browser documentation for additional information.\n <ul>\n <li><b>Internet Explorer (all platforms)</b>: <code>Alt</code> + <i>accessKey</i></li>\n <li><b>Mozilla Firefox (Windows, Unix)</b>: <code>Alt+Shift</code> + <i>accessKey</i></li>\n <li><b>Mozilla Firefox (Mac)</b>: <code>Ctrl+Opt</code> + <i>accessKey</i></li>\n <li><b>Chrome and Safari (Windows, Unix)</b>:  <code>Alt</code> + <i>accessKey</i></li>\n <li><b>Chrome and Safari (Mac)</b>:  <code>Ctrl+Opt</code> + <i>accessKey</i></li>\n </ul>",
        name:"accessKey",
        seeAlso:[
        ],
        valueType:"keyChar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "focus"
        ]
    },
    "method:DynamicForm.resetValues":{
        ref:"method:DynamicForm.resetValues",
        flags:"",
        description:"\n Same as ${isc.DocUtils.linkForRef('method:DynamicForm.reset')}.\n\n",
        name:"resetValues",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "attr:SelectItem.defaultValue":{
        ref:"attr:SelectItem.defaultValue",
        flags:"IRW",
        description:"Static default value for this SelectItem. To default to the first option use\n ${isc.DocUtils.linkForRef('attr:SelectItem.defaultToFirstOption')} instead.",
        name:"defaultValue",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "classAttr:RPCResponse.STATUS_MAX_POST_SIZE_EXCEEDED":{
        ref:"classAttr:RPCResponse.STATUS_MAX_POST_SIZE_EXCEEDED",
        flags:"R",
        description:"Indicates that the total size of the data sent to the server was more than the server is\n configured to allow.  Most servers limit the post size to prevent out of memory style\n attack vectors that push a bunch of data at the server.  Apache Tomcat, for example,\n is pre-configured to limit post size to 2mb.\n <P>\n On internal networks, these limits can typically be safely raised or removed.  With\n Tomcat, for example, you can remove the post limit by specifying the following attribute\n on the &lt;Connector&gt; element in conf/server.xml:\n <br><pre>\n maxPostSize=\"-1\"\n </pre>\n <p>\n <b>NOTE</b>: this status code is used whenever the server framework receives a request\n where the POST data has been removed, however, there are other possible causes,\n including:\n <ul>\n <li> security software installed on the server or network that erroneously detects some\n      kind of exploit attempt, if its behavior is to just strip the POST data but allow\n      the rest of the request through (SiteMinder is one product known to do this)\n <li> incorrectly written filter servlets that drop POST'd data\n </ul>",
        name:"STATUS_MAX_POST_SIZE_EXCEEDED",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-12",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:ListGridRecord.isSeparator":{
        ref:"attr:ListGridRecord.isSeparator",
        flags:"IR",
        description:"Default property name denoting a separator row.<br>\n When set to <code>true</code>, defines a horizontal separator in the listGrid\n object. Typically this is specified as the only property of a record object, since a\n record with <code>isSeparator:true</code> will not display any values.<br>\n Note: this attribute name is governed by ${isc.DocUtils.linkForRef('attr:ListGrid.isSeparatorProperty')}.",
        name:"isSeparator",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "method:DataSource.recordsFromText":{
        ref:"method:DataSource.recordsFromText",
        flags:"",
        description:" Derive a list of Records from Microsoft Excel-compatible tab-separated-values format, using\n the current DataSource field order, or an explicitly specified list of fields.\n <P>\n If a specified field does not exist in the DataSource, it's assumed the values for that\n field should end up as Strings.\n \n",
        name:"recordsFromText",
        seeAlso:[
        ],
        params:[
            {
                description:"records as CSV/TSV (separator can be specified)",
                optional:false,
                name:"text",
                defaultValue:null,
                type:"String"
            },
            {
                description:"optional settings for the import",
                optional:true,
                name:"settings",
                defaultValue:null,
                type:"TextImportSettings Properties"
            }
        ],
        returns:{
            description:"records derived from TSV",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:DrawLinePath.setStartPoint":{
        ref:"method:DrawLinePath.setStartPoint",
        flags:"",
        description:" Update the startPoint\n\n",
        name:"setStartPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for start point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for start point, in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLinePath"
    },
    "attr:DSResponse.operationType":{
        ref:"attr:DSResponse.operationType",
        flags:"IR",
        description:"The operation type of the request corresponding to this DSResponse.",
        name:"operationType",
        seeAlso:[
        ],
        valueType:"DSOperationType",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "dsResponse"
        ]
    },
    "method:Date.toShortDate":{
        ref:"method:Date.toShortDate",
        flags:"",
        description:" Returns the date as a formatted string using the format set up via the\n <code>setShortDisplayFormat()</code> method.\n",
        name:"toShortDate",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional Format for the date returned",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"DateDisplayFormat"
            },
            {
                description:"If a custom timezone has been set via   Time.setDefaultDisplayTimezone(), by default date formatters will respect this timezone.\n   to suppress this behavior, this parameter should be set to false.",
                optional:true,
                name:"useCustomTimezone",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:DSRequest.exportToFilesystem":{
        ref:"attr:DSRequest.exportToFilesystem",
        flags:"IR",
        description:"If set, SmartClient Server will export data to a file on the <b>server</b> filesystem.  The\n file we export to is determined by the ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename','exportFilename')} and \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportPath','exportPath')}.  Note that filesystem exports are disabled by \n default, for security reasons.  To enable them, set <code>export.allow.filesystem</code> to\n true in your <code>server.properties</code> file.  If you enable filesystem exports, you \n should also consider setting a default export path, as described in the \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportPath','exportPath')} documentation.\n <p>\n Note that it is perfectly valid to specify both this property and \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient','exportToClient')}; in this case the data is both exported to a\n file on the server filesystem <em>and</em> downloaded to the client.  If you specify \n <em>neither</em> property, the export no-ops.\n <p>\n It is possible to redirect the filesystem export to make use of an <code>OutputStream</code>\n you provide.  You use this when you want to make some use of the export document other than \n writing it to a disk file - for example, attaching it to an email or writing it to a \n database table.  See the server-side Javadocs for <code>DSRequest.setExportTo()</code>.",
        name:"exportToFilesystem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:Menu.hideContextMenu":{
        ref:"method:Menu.hideContextMenu",
        flags:"",
        description:" Hide the context menu - alias for hide()\n",
        name:"hideContextMenu",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Menu",
        groups:[
            "visibility"
        ]
    },
    "classAttr:Page.unsupportedBrowserAction":{
        ref:"classAttr:Page.unsupportedBrowserAction",
        flags:"IRA",
        description:"Action to take when ${isc.DocUtils.linkForRef('classMethod:Page.checkBrowserAndRedirect')} is called in a browser for which\n support is not guaranteed. Valid settings are:\n <ul>\n <li><code>\"continue\"</code> Load the page without notifying the user of potential issues</li>\n <li><code>\"confirm\"</code> Notify the user via a standard confirm dialog that their browser is\n  not supported. Provide options to continue anyway, or redirect to another page.\n <li><code>\"redirect\"</code> Automatically redirect to the another URL\n </ul>",
        name:"unsupportedBrowserAction",
        seeAlso:[
            {
                ref:"classMethod:Page.checkBrowserAndRedirect",
                description:null
            },
            {
                ref:"classAttr:Page.defaultUnsupportedBrowserURL",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"continue\"",
        type:"classAttr",
        definingClass:"class:Page"
    },
    "method:CanvasItem.setPrompt":{
        ref:"method:CanvasItem.setPrompt",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:FormItem.prompt')} for this item. Default implementation will also apply the\n prompt to ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')} if ${isc.DocUtils.linkForRef('attr:CanvasItem.applyPromptToCanvas')} is true.\n",
        name:"setPrompt",
        seeAlso:[
        ],
        params:[
            {
                description:"new prompt for the item.",
                optional:false,
                name:"prompt",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:CanvasItem"
    },
    "method:Canvas.draw":{
        ref:"method:Canvas.draw",
        flags:"",
        description:"      Draws the widget on the page.\n",
        name:"draw",
        seeAlso:[
        ],
        returns:{
            description:"Pointer to this canvas.  Returned so statements like the following will\t\t\t\t\t\twork:<br>\n                          var myCanvas = Canvas.newInstance({...}).draw();",
            type:"canvas"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "attr:RelativeDateItem.minutesAgoTitle":{
        ref:"attr:RelativeDateItem.minutesAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"minute\".",
        name:"minutesAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N minutes ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Slider.showRange":{
        ref:"attr:Slider.showRange",
        flags:"IRW",
        description:"Indicates whether labels for the min and max values of the slider should be displayed. The\n default positions for these labels are below the start/end of a horizontal slider, or to the\n right of the start/end of a vertical slider.",
        name:"showRange",
        setter:[
            "setShowRange"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.minValueLabel",
                description:null
            },
            {
                ref:"attr:Slider.maxValueLabel",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:FacetChart.showShadows":{
        ref:"attr:FacetChart.showShadows",
        flags:"IR",
        description:"Whether to automatically show shadows for various charts.",
        name:"showShadows",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "type:DateInputFormat":{
        ref:"type:DateInputFormat",
        description:"3 character string containing the <code>\"M\"</code>, <code>\"D\"</code> and <code>\"Y\"</code>\n  characters to indicate the format of strings being parsed into Date instances via\n  <code>Date.parseInput()</code>.\n  <P>\n  As an example - an input format of \"MDY\" would parse \"01/02/1999\" to Jan 2nd 1999\n <smartclient>\n  <P>\n  Note: In addition to these standard formats, a custom date string parser function may be\n  passed directly to ${isc.DocUtils.linkForRef('classMethod:Date.setInputFormat')} or passed into ${isc.DocUtils.linkForRef('classMethod:Date.parseInput')} as\n  the inputFormat parameter.\n </smartclient>",
        name:"DateInputFormat",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:StaticTextItem.textBoxStyle":{
        ref:"attr:StaticTextItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class for this item",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"staticTextItem\"",
        type:"attr",
        definingClass:"class:StaticTextItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSource.schemaBean":{
        ref:"attr:DataSource.schemaBean",
        flags:"IR",
        description:"For DataSources that specify ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema')}, this property indicates the name\n of the Spring bean, Hibernate mapping or fully-qualified Java class to use as parent \n schema.",
        name:"schemaBean",
        seeAlso:[
            {
                ref:"attr:DataSource.autoDeriveSchema",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "attr:DataSourceField.relatedTableAlias":{
        ref:"attr:DataSourceField.relatedTableAlias",
        flags:"IR",
        description:"In ${isc.DocUtils.linkForRef('group:sqlDataSource','SQL DataSource')} for a field that uses \n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} specifies table alias name to use in generated SQL.\n <p/>\n Note that using ${isc.DocUtils.linkForRef('attr:DataSourceField.includeVia','Multiple <code>includeFrom</code> fields referring to the same \\n related DataSource')} feature can affect aliases in different ways, see its description for details.",
        name:"relatedTableAlias",
        seeAlso:[
            {
                ref:"attr:DataSourceField.includeVia",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sqlIncludeVia')}"
        ],
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:FileItem.downloadIconSrc":{
        ref:"attr:FileItem.downloadIconSrc",
        flags:"IR",
        description:"Returns the URL for an Icon that will allow the file to be downloaded",
        name:"downloadIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"“[SKIN]actions/download.png”",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "images"
        ]
    },
    "method:FormItem.getCriterion":{
        ref:"method:FormItem.getCriterion",
        flags:"A",
        description:" Override this method if you need to provide a specialized criterion from this formItem\n when creating an AdvancedCriteria via ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}.\n <P>\n This API is provided to allow you to specify a more complex criterion than the \n \"field-operator-value\" criterions that are built-in.  Note that the built-in behavior is\n generally quite flexible and powerful enough for most requirements.  An example of a case\n where you might want to override this method is if you wanted to implement a date range \n selection (ie, date &gt; x AND date &lt; y) on a form that was combining its other criteria \n fields with an \"or\" operator.\n <P>\n Note that this method is part of the criteria editing subsystem: if overridden, it\n is likely that you will want to also override ${isc.DocUtils.linkForRef('method:FormItem.hasAdvancedCriteria')} to\n ensure this method is called by the form, and to support editing of existing advanced\n criteria you may also need to override ${isc.DocUtils.linkForRef('method:FormItem.canEditCriterion')} and \n ${isc.DocUtils.linkForRef('method:FormItem.setCriterion')}.\n <P>\n The default implementation will return a criterion including the form item value, fieldName\n and specified ${isc.DocUtils.linkForRef('attr:FormItem.operator')}, or a default operator derived from the\n form item data type if no explicit operator is specified.\n\n",
        name:"getCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"If passed assume the textMatchStyle   will be used when performing a fetch operation with these criteria. This may impact\n   the criterion's operator property.",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"criterion object based on this fields current edited value(s).",
            type:"Criterion"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:Canvas.addPeer":{
        ref:"method:Canvas.addPeer",
        flags:"",
        description:" Adds newPeer as a peer of this widget (also making it a child of this widget's parent, if\n any), set up a named object reference (i.e., this[name]) to the new widget if name is\n provided, and draw the peer if this widget has been drawn already.<br>\n <P>\n The widget to be added as a peer will be removed from its old master and/or parent, if any,\n and it will be added as a child to the parent of this canvas (if any)\n\n",
        name:"addPeer",
        seeAlso:[
        ],
        params:[
            {
                description:"new peer widget to add",
                optional:false,
                name:"newPeer",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"name to assign to peer (eg: this[peer] == child)",
                optional:true,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"if true, peer will not automatically be drawn (only                             for advanced use)",
                optional:true,
                name:"autoDraw",
                defaultValue:null,
                type:"Boolean"
            },
            {
                description:"if true, when draw is called on the master widget, the peer                            will be drawn before the master",
                optional:true,
                name:"preDraw",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"the new peer, or null if it couldn't be added",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:DateItem.showHintInField":{
        ref:"attr:DateItem.showHintInField",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField','useTextField')} is true and a ${isc.DocUtils.linkForRef('attr:FormItem.hint','hint')} is\n set, should the hint be shown within the field?\n <p>\n Note that when using a native HTML5 date input (see ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}),\n in-field hints are currently supported, but future browser changes might not allow\n in-field hints to be supported. Therefore, it is safest to <em>not</em> use in-field\n hints in conjunction with a native HTML5 date input.\n <p>\n To change this attribute after being drawn, it is necessary to call ${isc.DocUtils.linkForRef('method:FormItem.redraw')}\n or redraw the form.",
        name:"showHintInField",
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.groupState":{
        ref:"attr:ListGrid.groupState",
        flags:"IRW",
        getter:[
            "getGroupState"
        ],
        description:"Initial group state for the grid.\n <P>\n ${isc.DocUtils.linkForRef('attr:ListGrid.viewState')} can be used to initialize all view properties of the grid.\n When doing so, <code>groupState</code> is not needed because <code>viewState</code>\n includes it as well. If both are provided, <code>groupState</code> has priority for\n group state.\n <smartclient>\n <P>\n To retrieve current state call ${isc.DocUtils.linkForRef('method:ListGrid.getGroupState','getGroupState')}.\n </smartclient>",
        name:"groupState",
        setter:[
            "setGroupState"
        ],
        seeAlso:[
        ],
        valueType:"ListGridGroupState",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:SelectItem.pickButtonSrc":{
        ref:"attr:SelectItem.pickButtonSrc",
        deprecated:"As of SmartClient version 5.5, pickButtonSrc has been deprecated in   favor of ${isc.DocUtils.linkForRef('attr:SelectItem.pickerIconSrc')}.",
        flags:"IRWA",
        description:"Source for image to show for the pick button",
        name:"pickButtonSrc",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:ListGrid.exportDefaultBGColor":{
        ref:"attr:ListGrid.exportDefaultBGColor",
        flags:"IR",
        description:"Default background color to use when exporting data to Excel/OpenOffice format using\n${isc.DocUtils.linkForRef('method:ListGrid.exportData','exportData()')} or \n${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData()')}.\n <p>\nIf unset (the default), cells that are not provided a background color by more specific APIs\nwill be the default background color used by the spreadsheet program where they are viewed.\n <p>\nSee ${isc.DocUtils.linkForRef('group:exportBGColor')} for an overview.",
        name:"exportDefaultBGColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "exportBackgroundColor"
        ]
    },
    "method:DrawItem.click":{
        ref:"method:DrawItem.click",
        flags:"",
        description:" Notification fired when the user clicks on this DrawItem.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"click",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:RPCRequest.callbackParam":{
        ref:"attr:RPCRequest.callbackParam",
        flags:"IRW",
        description:"For use only with the ${isc.DocUtils.linkForRef('type:RPCTransport','scriptInclude')} transport, this attribute\n specifies the name of the URL parameter which is used to specify the callback function that\n the server is expected to call by writing out JavaScript code.  The actual function to call\n is automatically generated and differs for every request (to allow concurrency).\n <P>\n For example, with <code>callbackParam</code> set to it's default value of \"callback\", the\n server might be contacted with a URL like:\n <pre>\n    loadData?callback=isc_scriptIncludeCallback_5\n </pre>\n .. then the server's response should look like:\n <pre>\n    isc_scriptIncludeCallback_5({ .. data .. });\n </pre>\n The name \"isc_scriptIncludeCallback_5\" is automatically generated and will differ each time\n the server is contacted.\n <P>\n SmartClient makes of this server-provided callback mechanism, then calls\n ${isc.DocUtils.linkForRef('attr:RPCRequest.callback')} normally.\n <p>\n <code>rpcRequest.callbackParam</code> is ignored by all transport other than\n <code>scriptInclude</code>.",
        name:"callbackParam",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"callback\"",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:ListGridField.editorIconWidth":{
        ref:"attr:ListGridField.editorIconWidth",
        flags:"IRA",
        description:"If this field is editable, this property will be passed to editors displayed for\n cells within this field as ${isc.DocUtils.linkForRef('attr:FormItem.iconWidth')}.<br>\n If this property unset, the iconWidth property from the editor can be picked up from\n ${isc.DocUtils.linkForRef('attr:ListGridField.iconWidth')} instead.",
        name:"editorIconWidth",
        seeAlso:[
            {
                ref:"attr:ListGridField.icons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:ListGrid.cellValueHoverHTML":{
        ref:"method:ListGrid.cellValueHoverHTML",
        flags:"",
        description:" Returns the HTML that is displayed by the default cellValueHover handler. Return null or\n an empty string to cancel the hover.\n <smartgwt><p>Use <code>setCellValueHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n\n",
        name:"cellValueHoverHTML",
        seeAlso:[
            {
                ref:"method:ListGrid.cellValueHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:FormulaBuilder.autoTest":{
        ref:"attr:FormulaBuilder.autoTest",
        flags:"IRWA",
        description:"When set to true, automatically tests the formula by calling \n ${isc.DocUtils.linkForRef('method:FormulaBuilder.testFunction','testFunction()')} whenever typing into the \n ${isc.DocUtils.linkForRef('attr:FormulaBuilder.formulaField','formulaField')} pauses.\n <P>\n The default is true.",
        name:"autoTest",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:TileLayout.removeTile":{
        ref:"method:TileLayout.removeTile",
        flags:"",
        description:" Remove a tile from the layout.\n\n",
        name:"removeTile",
        seeAlso:[
        ],
        params:[
            {
                description:"index or String ID of the tile",
                optional:false,
                name:"tileID",
                defaultValue:null,
                type:"Canvas or int or ID"
            }
        ],
        returns:{
            description:"whether a tile was found and removed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TileLayout"
    },
    "attr:FilterBuilder.topOperatorOptions":{
        ref:"attr:FilterBuilder.topOperatorOptions",
        flags:"IR",
        description:"Logical operators to allow for ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')}s of \"radio\" and \"bracket\".\n <P> Note that this list may be further limited according to the \n ${isc.DocUtils.linkForRef('method:DataSource.getTypeOperatorMap','available operators')} returned by the \n ${isc.DocUtils.linkForRef('class:DataSource')}.",
        name:"topOperatorOptions",
        seeAlso:[
        ],
        valueType:"Array of OperatorId",
        defaultValue:"[\"and\", \"or\", \"not\"]",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:ListGrid.printBooleanFalseImage":{
        ref:"attr:ListGrid.printBooleanFalseImage",
        flags:"IRWA",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')} to use when ${isc.DocUtils.linkForRef('groupDef:printing','printing')}.",
        name:"printBooleanFalseImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.booleanFalseImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns",
            "printing"
        ]
    },
    "method:Canvas.scrolled":{
        ref:"method:Canvas.scrolled",
        flags:"",
        description:" Notification that this component has just scrolled.  Use with\n ${isc.DocUtils.linkForRef('method:Class.observe','observation')}.\n <P>\n Fires for both CSS and ${isc.DocUtils.linkForRef('class:Scrollbar','\"synthetic\" scrollbars')}.\n\n",
        name:"scrolled",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:DateTimeItem.displayFormat":{
        ref:"attr:DateTimeItem.displayFormat",
        flags:"IRW",
        description:"This property can be used to customize the format in which datetimes are displayed.<br>\n Should be set to a standard ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} or\n a function which will return a formatted date time string.\n <P>\n If unset, the standard shortDateTime format as set up in \n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat')} will be used.\n <P>\n <B>NOTE: you may need to update the ${isc.DocUtils.linkForRef('attr:DateTimeItem.inputFormat','inputFormat')}\n to ensure the DateItem is able to parse user-entered date strings back into Dates</B>",
        name:"displayFormat",
        seeAlso:[
            {
                ref:"attr:DateTimeItem.inputFormat",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateTimeItem"
    },
    "method:PortalLayout.setCanStretchColumnWidths":{
        ref:"method:PortalLayout.setCanStretchColumnWidths",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.canStretchColumnWidths')} and reflows to reflect the new setting.\n",
        name:"setCanStretchColumnWidths",
        seeAlso:[
            {
                ref:"attr:PortalLayout.canStretchColumnWidths",
                description:null
            },
            {
                ref:"attr:PortalLayout.canShrinkColumnWidths",
                description:null
            }
        ],
        params:[
            {
                description:"Whether columns can stretch to accommodate ${isc.DocUtils.linkForRef('class:Portlet')} widths.",
                optional:false,
                name:"canStretch",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "method:ListGrid.scrollToCell":{
        ref:"method:ListGrid.scrollToCell",
        flags:"A",
        description:" Will scroll the listGrid body such that the specified cell is visible close to the\n centre of the viewport.\n <P>\n This method has no effect if the cell is already visible in the viewport.\n <P>\n When scrolling vertically, this will cause data to be automatically loaded\n if ${isc.DocUtils.linkForRef('attr:ListGrid.dataFetchMode','paging is active')} and you scroll into an area of\n the data that isn't loaded.  Only rows around the target row will be\n loaded, not all intervening rows.  See also ${isc.DocUtils.linkForRef('class:ResultSet')}.\n <P>\n Scrolling into an undrawn area will cause the body area of the grid to\n redraw, but this won't happen synchronously unless you explicitly call\n redraw().  Scrolling into an area of the data that is not yet loaded\n will never synchronously draw new rows, even if you call redraw() -\n wait for ${isc.DocUtils.linkForRef('method:ListGrid.dataArrived')} to be notified when new rows have been\n loaded.\n <P>\n Calling this method with a row index larger than the\n current dataset will clamp to the end of the dataset (similarly horizontal\n scrolling will clamp to the last column).\n <P>\n If a call to this method is made while data is still loading, such\n that the last row of the dataset is not yet known the grid will attempt to compensate\n by scrolling the record into view when data arrives, if it is valid.\n For better control over scrolling, developers should consider\n calling <code>scrollToRow()</code> or <code>scrollToCell</code>\n from ${isc.DocUtils.linkForRef('method:ListGrid.dataArrived')} if data is still loading.\n <P>\n With mixed-height rows it will only reliably work if virtualScrolling\n is enabled.\n\n",
        name:"scrollToCell",
        seeAlso:[
        ],
        params:[
            {
                description:"Row index of the cell to scroll into view",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Column index of the cell to scroll into view",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Horizontal position of scrolled cell (optional)",
                optional:true,
                name:"xPosition",
                defaultValue:null,
                type:"Alignment"
            },
            {
                description:"Vertical position of scrolled cell (optional)",
                optional:true,
                name:"yPosition",
                defaultValue:null,
                type:"VerticalAlignment"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "scrolling"
        ]
    },
    "method:RelativeDateItem.getEnteredValue":{
        ref:"method:RelativeDateItem.getEnteredValue",
        flags:"",
        description:" Returns the raw text value typed into this items value text field\n",
        name:"getEnteredValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "classAttr:Hover.hoverCanvasDefaults":{
        ref:"classAttr:Hover.hoverCanvasDefaults",
        flags:"IRW",
        description:"Defaults to apply to the Hover canvas shown when the user hovers over some widget.\n By default this property is set to this object:<br><pre>\n       { defaultWidth:100, \n         defaultHeight:1,\n         baseStyle:\"canvasHover\",\n         align:\"left\",\n         valign:\"top\",\n         opacity:null\n        }\n </pre><br>\n Note that these properties can be overridden by individual widgets showing hovers, by\n modifying ${isc.DocUtils.linkForRef('attr:Canvas.hoverWidth')}, ${isc.DocUtils.linkForRef('attr:Canvas.hoverHeight')}, \n ${isc.DocUtils.linkForRef('attr:Canvas.hoverStyle')}, ${isc.DocUtils.linkForRef('attr:Canvas.hoverAlign')}, ${isc.DocUtils.linkForRef('attr:Canvas.hoverVAlign')}, \n ${isc.DocUtils.linkForRef('attr:Canvas.hoverOpacity')}, and ${isc.DocUtils.linkForRef('attr:Canvas.hoverWrap')}.",
        name:"hoverCanvasDefaults",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"{...}",
        type:"classAttr",
        definingClass:"class:Hover"
    },
    "attr:CanvasItem.canvasConstructor":{
        ref:"attr:CanvasItem.canvasConstructor",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas','this.canvas')} is not specified as a canvas instance at init\n time, a canvas will be created instead. This property denotes the class of that widget\n (Should be set to the name of a subclass of Canvas).",
        name:"canvasConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Canvas\"",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "attr:RelativeDateItem.calculatedDateField":{
        ref:"attr:RelativeDateItem.calculatedDateField",
        flags:"IR",
        description:"Field that shows the current calculated date by adding the user-entered relative date to\n the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.baseDate')}.",
        name:"calculatedDateField",
        seeAlso:[
        ],
        valueType:"AutoChild BlurbItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:FacetChart.minDataSpreadPercent":{
        ref:"attr:FacetChart.minDataSpreadPercent",
        flags:"IR",
        description:"If all data values would be spread across less than ${isc.DocUtils.linkForRef('attr:FacetChart.minDataSpreadPercent')} of the\n axis, the start values of axes will be automatically adjusted to make better use of\n space.\n <p>\n For example, if a column chart has all data values between 500,000 and 500,100, if the\n axis starts at 0, differences in column heights will be visually indistinguishable.\n In this case, since all data values appear in well under 30% of the axis length, the\n default <code>minDataSpreadPercent</code> setting would cause the axis to start at a\n value that would make the column heights obviously different (for example, starting the\n axis as 500,000).\n <p>\n Setting an explicit ${isc.DocUtils.linkForRef('attr:FacetChart.axisStartValue')} disables this behavior, as does setting\n <code>minDataSpreadPercent</code> to 0.\n <p>\n For multi-axis charts, use ${isc.DocUtils.linkForRef('attr:MetricSettings.minDataSpreadPercent')} for per-axis\n settings.\n <p>\n For Scatter charts, <code>minDataSpreadPercent</code> affects only the y-axis of the\n chart.  The property ${isc.DocUtils.linkForRef('attr:FacetChart.minXDataSpreadPercent')} must be used to enable the\n corresponding feature for the x-axis.",
        name:"minDataSpreadPercent",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"30",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.deselectRecords":{
        ref:"method:ListGrid.deselectRecords",
        flags:"",
        description:"\n Deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecords(records, false)</code>\n <P>\n Note that developers may wish to use ${isc.DocUtils.linkForRef('method:ListGrid.deselectRange')} to select a single\n contiguous range.\n\n",
        name:"deselectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to deselect",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:DrawLabel.left":{
        ref:"attr:DrawLabel.left",
        flags:"IR",
        description:"Sets the amount from the left of its positioning that the element should be placed.",
        name:"left",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "attr:TimeItem.textBoxStyle":{
        ref:"attr:TimeItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class for this item's text box.\n If specified this style will be applied to the ${isc.DocUtils.linkForRef('attr:TimeItem.textField')} if \n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is set to <code>true</code>.",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:FormulaBuilder.getHelpText":{
        ref:"method:FormulaBuilder.getHelpText",
        flags:"",
        description:" Call to retrieve the text the FormulaBuilder would show by default for help, or override to\n provide alternate help text.\n\n",
        name:"getHelpText",
        seeAlso:[
        ],
        returns:{
            description:"The results of getHoverText()",
            type:"String"
        },
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Button.showDisabled":{
        ref:"attr:Button.showDisabled",
        flags:"IRW",
        description:"Should we visibly change state when disabled?",
        name:"showDisabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonStates')}"
        ],
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "attr:TreeGrid.showFullConnectors":{
        ref:"attr:TreeGrid.showFullConnectors",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeGrid.showConnectors')} is true, this property determines whether we should show\n vertical continuation lines for each level of indenting within the tree. Setting to\n false will show only the hierarchy lines are only shown for the most indented path (\"sparse\"\n connectors).",
        name:"showFullConnectors",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:DSRequest.exportDisplay":{
        ref:"attr:DSRequest.exportDisplay",
        flags:"IR",
        description:"Specifies whether the exported data will be downloaded as an attachment or displayed in a \n new browser window. See ${isc.DocUtils.linkForRef('type:ExportDisplay')} for more information.",
        name:"exportDisplay",
        seeAlso:[
        ],
        valueType:"ExportDisplay",
        defaultValue:"\"download\"",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "class:FilterClause":{
        methods:[
            "method:FilterClause.getFilterBuilder",
            "method:FilterClause.getValueFieldProperties",
            "method:FilterClause.remove",
            "method:FilterClause.getCriterion",
            "method:FilterClause.validate",
            "method:FilterClause.getFieldOperators"
        ],
        ref:"class:FilterClause",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:FilterClause.criterion",
            "attr:FilterClause.showFieldTitles",
            "attr:FilterClause.validateOnChange",
            "attr:FilterClause.fieldPicker",
            "attr:FilterClause.fieldPickerTitle",
            "attr:FilterClause.fieldPickerProperties",
            "attr:FilterClause.operatorPicker",
            "attr:FilterClause.operatorPickerProperties",
            "attr:FilterClause.operatorPickerTitle",
            "attr:FilterClause.valueItemTitle",
            "attr:FilterClause.valueSetHint",
            "attr:FilterClause.clause",
            "attr:FilterClause.showRemoveButton",
            "attr:FilterClause.removeButtonPrompt",
            "attr:FilterClause.removeButton"
        ],
        description:"A horizontal, Layout-based widget that allows a user to input a single criterion based on \n one field and one operator.\n <P>\n Note that FilterClauses must be used in conjunction with a ${isc.DocUtils.linkForRef('class:FilterBuilder')}. By default\n the FilterBuilder will auto-generate its clauses based on specified criteria, but for advanced\n usage a FilterClause may be instantiated directly and passed to a filterBuilder via \n ${isc.DocUtils.linkForRef('method:FilterBuilder.addClause')}.",
        name:"FilterClause",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:TextAreaItem.iconVAlign":{
        ref:"attr:TextAreaItem.iconVAlign",
        flags:"IR",
        description:"Align icons with the top edge of text area icons by default.",
        name:"iconVAlign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.TOP",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:RichTextEditor.value":{
        ref:"attr:RichTextEditor.value",
        flags:"IRW",
        getter:[
            "getValue"
        ],
        description:"Initial value for the edit area.    Use <code>getValue()</code> and \n <code>setValue()</code> to update at runtime.",
        name:"value",
        setter:[
            "setValue"
        ],
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "attr:TileGrid.detailViewerProperties":{
        ref:"attr:TileGrid.detailViewerProperties",
        flags:"IR",
        description:"Properties for the ${isc.DocUtils.linkForRef('class:DetailViewer')} that is automatically created to render the contents of tiles\n by default.",
        name:"detailViewerProperties",
        seeAlso:[
        ],
        valueType:"DetailViewer Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:PortalLayout.canResizeRows":{
        ref:"attr:PortalLayout.canResizeRows",
        deprecated:"Use ${isc.DocUtils.linkForRef('attr:PortalLayout.canResizePortlets','canResizePortlets')} instead.",
        flags:"IRW",
        description:"Should vertical drag-resize of portlets within columns be allowed?",
        name:"canResizeRows",
        setter:[
            "setCanResizeRows"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:PortalLayout"
    },
    "attr:TimeItem.secondMinValue":{
        ref:"attr:TimeItem.secondMinValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondValues','secondValues')} is unset, this attribute specifies the minimum\n value present in the second picker.\n <P>Used for specifying a limited set of valid Second values, or when using the \n TimeItem to record duration, rather than time per-se.  The default is zero in all cases.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.secondMaxValue','secondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondIncrement','secondIncrement')}.",
        name:"secondMinValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:ViewLoader.loadingMessage":{
        ref:"attr:ViewLoader.loadingMessage",
        flags:"IR",
        description:"Message to show while the view is loading.\n Use <code>\"&#36;{loadingImage}\"</code> to include ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSrc','a loading image')}.",
        name:"loadingMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Loading View...&amp;nbsp;${loadingImage}\"",
        type:"attr",
        definingClass:"class:ViewLoader",
        groups:[
            "viewLoading"
        ]
    },
    "attr:RelativeDateItem.hoursAgoTitle":{
        ref:"attr:RelativeDateItem.hoursAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"hour\".",
        name:"hoursAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N hours ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:CubeGrid.sortByFacetValues":{
        ref:"method:CubeGrid.sortByFacetValues",
        flags:"",
        description:" Called when a sort control is clicked on a FacetValueHeader.  Does nothing by default.\n \n",
        name:"sortByFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValues to sort",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            },
            {
                description:"true for ascending",
                optional:false,
                name:"sortDirection",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "columnControls"
        ]
    },
    "attr:FormulaBuilder.helpWindowTitle":{
        ref:"attr:FormulaBuilder.helpWindowTitle",
        flags:"IRWA",
        description:"The title for the window that opens when the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.helpIcon','Help icon')}\n is clicked.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will\n be evaluated as JS code when the message is displayed.\n <P>\n Only one dynamic variable, builderType, is available and represents the type of this \n builder, either Formula or Summary.\n <P>\n The default output is:<P>\n <code>\n <i>[Formula/Summary] Help</i>\n </code>",
        name:"helpWindowTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"${builderType} Help\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HiliteEditor.addAdvancedRuleButton":{
        ref:"attr:HiliteEditor.addAdvancedRuleButton",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:IButton')} that opens an ${isc.DocUtils.linkForRef('class:AdvancedHiliteEditor')} to create a new\n advanced rule.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteEditor.addAdvancedRuleButtonProperties</code>.",
        name:"addAdvancedRuleButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteEditor"
    },
    "attr:SimpleType.exportFormat":{
        ref:"attr:SimpleType.exportFormat",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} used during exports for numeric or date formatting.  See\n ${isc.DocUtils.linkForRef('attr:DataSourceField.exportFormat')}.",
        name:"exportFormat",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SimpleType",
        groups:[
            "exportFormatting"
        ]
    },
    "method:Calendar.getPeriodEndDate":{
        ref:"method:Calendar.getPeriodEndDate",
        flags:"",
        description:" Returns the end of the selected week or month depending on the current calendar view.  \n For the month view, and for the week view when not showing weekends, this will often be a \n different date than that returned by ${isc.DocUtils.linkForRef('method:Calendar.getVisibleEndDate')}.\n",
        name:"getPeriodEndDate",
        seeAlso:[
        ],
        returns:{
            description:"period end date",
            type:"Date"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:DrawLine.endLeft":{
        ref:"attr:DrawLine.endLeft",
        flags:"IR",
        description:"Ending left coordinate of the line.  Overrides left coordinate of ${isc.DocUtils.linkForRef('attr:DrawLine.endPoint')} if\n both are set.",
        name:"endLeft",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DrawLine"
    },
    "attr:TreeGrid.canDragRecordsOut":{
        ref:"attr:TreeGrid.canDragRecordsOut",
        flags:"IRW",
        description:"Indicates whether records can be dragged from this listGrid and dropped elsewhere.",
        name:"canDragRecordsOut",
        seeAlso:[
            {
                ref:"attr:TreeNode.canDrag",
                description:null
            },
            {
                ref:"attr:TreeNode.canAcceptDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('treeDropEvents')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "dragdrop"
        ]
    },
    "attr:validatorDefinition.type":{
        ref:"attr:validatorDefinition.type",
        flags:"IR",
        description:"Type of the validator unique in ${isc.DocUtils.linkForRef('type:ValidatorType')}.",
        name:"type",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:validatorDefinition"
    },
    "attr:StretchImg.vertical":{
        ref:"attr:StretchImg.vertical",
        flags:"IRW",
        description:"Indicates whether the list of images is drawn vertically from top to bottom (true),\n or horizontally from left to right (false).",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "method:TextAreaItem.getSelectionRange":{
        ref:"method:TextAreaItem.getSelectionRange",
        flags:"",
        description:" For text-based items, this method returns the indices of the start/end of the current\n selection if the item currently has the focus. In browsers other than Internet Explorer 6-9,\n if this item does not have focus, then this method returns the indices of the start/end\n of the selection the last time that this item had focus. In IE 6-9, returns null if the\n item does not have focus.\n <P>\n In all browsers, clicking anywhere outside of the item causes the item to lose focus;\n hence, in IE 6-9, this method will not work in other components' event handlers for\n certain events. For example, within the ${isc.DocUtils.linkForRef('method:Canvas.click','click()')} handler of a button,\n this item will have already lost focus, so in IE 6-9, this method will return null\n if called within the button's click() handler. One cross-browser solution to this issue\n is to save the selection range for later in a ${isc.DocUtils.linkForRef('method:Canvas.mouseDown','mouseDown()')} or\n ${isc.DocUtils.linkForRef('method:Canvas.mouseOver','mouseOver()')} handler.\n <P>\n Notes:\n <UL>\n   <LI>In browsers other than IE 6-9, calling ${isc.DocUtils.linkForRef('method:FormItem.setValue','setValue()')}\n or otherwise changing the ${isc.DocUtils.linkForRef('method:TextAreaItem.getEnteredValue','entered value')} invalidates the past\n selection range.</LI>\n   <LI>The returned indices are indices within the entered value rather than the item's\n value as returned by ${isc.DocUtils.linkForRef('method:FormItem.getValue','getValue()')}.\n The distinction is particularly important for ${isc.DocUtils.linkForRef('class:TextAreaItem')}s because browsers\n normalize the line endings in the <code>&lt;textarea&gt;</code> element's value.\n Internet Explorer 6, 7, and 8 convert line endings to \"\\r\\n\" while other browsers\n convert line endings to \"\\n\"\n <a href='http://www.w3.org/TR/html5/forms.html#concept-textarea-api-value' target='_blank'>as specified by the HTML5 standard</a>.</LI>\n </UL>\n",
        name:"getSelectionRange",
        seeAlso:[
        ],
        returns:{
            description:"2 element array showing character index of the current or past selection's start and end points within this item's ${isc.DocUtils.linkForRef('method:TextItem.getEnteredValue','entered value')}.\n In IE 6-9, returns null if the item does not have focus.",
            type:"Array of int"
        },
        type:"method",
        definingClass:"class:TextAreaItem"
    },
    "method:CubeGrid.facetValueOver":{
        ref:"method:CubeGrid.facetValueOver",
        flags:"",
        description:" StringMethod handler fired when mouseover occurs over a facetValues header button\n \n",
        name:"facetValueOver",
        seeAlso:[
        ],
        params:[
            {
                description:"FacetValueMap for the appropriate header button",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events"
        ]
    },
    "attr:Calendar.lanes":{
        ref:"attr:Calendar.lanes",
        flags:"IRW",
        description:"An array of ${isc.DocUtils.linkForRef('object:Lane')} definitions that represent the rows of the ${isc.DocUtils.linkForRef('attr:Calendar.timelineView')}, or\n the columns of the ${isc.DocUtils.linkForRef('attr:Calendar.dayView','dayView')} if ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes','showDayLanes')} is true.",
        name:"lanes",
        setter:[
            "setLanes"
        ],
        seeAlso:[
        ],
        valueType:"Array of Lane",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:ListGrid.summaryRowCriteria":{
        ref:"attr:ListGrid.summaryRowCriteria",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true, and a ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRowDataSource')} is specified\n this property may be used to specify fetch criteria to apply when retrieving summary data\n to show in the summary row. If unset, and any filter criteria have been specified for the\n grid, they will be used.",
        name:"summaryRowCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classAttr:FacetChart.polynomialDegreePrompt":{
        ref:"classAttr:FacetChart.polynomialDegreePrompt",
        flags:"IRW",
        description:"Message of the prompt created by the <code>\"Polynomial Degree...\"</code> option in the context menu\n for scatter plots to ask the user for a polynomial degree to use for polynomial regression.",
        name:"polynomialDegreePrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Enter a degree for the polynomial regression curve (must be a positive integer):\"",
        type:"classAttr",
        definingClass:"class:FacetChart",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Array.slideRange":{
        ref:"method:Array.slideRange",
        flags:"A",
        description:" Slide a range of elements from start to end to position destination, moving all the other\n elements to cover the gap.\n\n",
        name:"slideRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start position",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end position (exclusive, like substring() and slice())",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            },
            {
                description:"destination position for the range",
                optional:false,
                name:"destination",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"object:Array"
    },
    "attr:DSRequest.exportTitleSeparatorChar":{
        ref:"attr:DSRequest.exportTitleSeparatorChar",
        flags:"IR",
        description:"The character with which to replace spaces in field-titles when exporting to XML.",
        name:"exportTitleSeparatorChar",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:Canvas.children":{
        ref:"attr:Canvas.children",
        flags:"IR",
        description:"Array of all Canvii that are immediate children of this Canvas.\n <P>\n Use ${isc.DocUtils.linkForRef('method:Canvas.addChild')} and ${isc.DocUtils.linkForRef('method:Canvas.removeChild')} to add and remove children after a Canvas\n has been created/drawn.",
        name:"children",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:DataBoundComponent.hiliteIconLeftPadding":{
        ref:"attr:DataBoundComponent.hiliteIconLeftPadding",
        flags:"IRW",
        description:"How much padding should there be on the left of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons','hilite icons')} by default?\n Can be overridden at the field level",
        name:"hiliteIconLeftPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "method:ListGrid.autoFitField":{
        ref:"method:ListGrid.autoFitField",
        flags:"",
        description:" Programmatically cause a field to auto-fit horizontally to it's contents or title.\n <P>\n Does not establish permanent auto-fitting - use ${isc.DocUtils.linkForRef('method:ListGrid.setAutoFitWidth')} to do so.\n",
        name:"autoFitField",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"new width in pixels",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "method:ValuesManager.filterData":{
        ref:"method:ValuesManager.filterData",
        flags:"",
        description:" Retrieve data that matches the provided criteria, and edit the first record returned.<br>\n Differs from ${isc.DocUtils.linkForRef('method:DynamicForm.fetchData')} in that a case insensitive substring match\n will be performed against the criteria to retrieve the data.\n \n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"search criteria",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:DataSource.resultTreeClass":{
        ref:"attr:DataSource.resultTreeClass",
        flags:"IRA",
        description:"Class for ResultTrees used by this datasource.  If null, defaults to using\n ${isc.DocUtils.linkForRef('class:ResultTree')}.\n <P>\n This can be set to a custom subclass of ResultTree that, for example, hangs on to extra\n information necessary for integration with web services.",
        name:"resultTreeClass",
        seeAlso:[
        ],
        valueType:"Class Object",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "group:visualBuilder":{
        ref:"group:visualBuilder",
        title:"Visual Builder",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"The SmartClient Visual Builder tool is intended for:\n <ul>\n <li> business analysts and others doing functional application design, who want to create\n functional prototypes in a codeless, \"what you see is what you get\" environment\n <li> developers new to SmartClient who want to get a basic familiarity with component\n layout, component properties and SmartClient code structure\n <li> developers building simple applications that can be completed entirely within Visual\n Builder\n </ul>\n <P>\n <b>Visual Builder for Functional Design</b>\n <P>\n Visual Builder has several advantages over other tools typically used for functional design:\n <ul>\n <li> Visual Builder allows simple drag and drop manipulation of components, form-based\n editing of component properties, and simple connection of events to actions - all without\n requiring any code to be written.  It is actually simpler to use than\n DreamWeaver or other code-oriented prototyping tools\n <li> because Visual Builder generates clean code, designs will not have to be converted to\n another technology before development can proceed.  This reduces both effort and the\n potential for miscommunication\n <li> developers can add custom skinning, components with custom behaviors, and custom\n DataSources with sample datasets to Visual Builder so that the design environment is an even\n closer match to the final application.  This helps eliminate many types of unimplementable\n designs \n <li> because Visual Builder is built in SmartClient itself, Visual Builder is simply a \n web page, and does not require installation.  Visual Builder can be deployed to \n an internal network to allow teams with a mixture of technical and semi-technical \n users to collaboratively build and share prototypes of SmartClient-based applications.  \n </ul>\n <P>\n <h4>Launching &amp; Using Visual Builder</h4>\n <P>\n <smartclient>The SmartClient SDK already has Visual Builder installed - access\n it from the SDK Explorer under Tools -&gt; Visual Builder (see QuickStart Guide for how to\n access the SDK Explorer).\n </smartclient>\n <smartgwt>Instructions for launching Visual Builder are in the \n <a href='http://forums.smartclient.com/showthread.php?t=8159#aVisualBuilder' target='_blank'>Smart GWT FAQ</a>.\n </smartgwt>\n <P>\n Basic usage instructions are embedded in Visual Builder itself, in the \"About Visual\n Builder\" pane.  Click on it to open it.\n <P>\n <b>Loading and Saving</b>\n <P>\n The \"Project\" pane within Visual Builder allows screens to be saved and reloaded for further\n editing.  Saved screens <b>can</b> be edited outside of Visual Builder and successfully\n reloaded, however, as with any design tool that provides a drag and drop, dialog-driven\n approach to screen creation, Visual Builder cannot work with entirely free-form code.  In\n particular, when a screen is loaded and then re-saved:\n <ul>\n <li> any indenting or spacing changes are not preserved \n <li> order of property or method definitions will revert to Visual Builder's default\n <li> while method definitions on components are preserved, any code <b>outside of</b>\n      component definitions will be dropped (in some cases adding such code will cause\n      loading to fail)\n <li> each Canvas-based component will be output separately, in the order these components\n      appear in the project tree, deepest first\n </ul>\n Generally speaking, screen definitions that you edit within Visual Builder should consist of\n purely declarative code.  Rather than appearing in screen definitions, custom components and\n JavaScript libraries should be added to Visual Builder itself via the customization\n facilities described below.\n <P>\n <smartclient>\n <!-- applies only to SmartClient since SmartGWT has a GWT module listing these resources -->\n <h4>Installing Visual Builder</h4>\n <P>\n Visual Builder comes already installed and working in the SDK, and can be used from there out\n of the box.  This is the simplest thing to do during initial prototyping.\n <P>\n Further on in the development cycle, it may be advantageous to have Visual Builder available \n outside the SDK, for example in your test environment.  Installing Visual Builder into \n such an environment is very easy:\n <ul>\n <li>Perform a normal installation procedure, as discussed ${isc.DocUtils.linkForRef('group:iscInstall','here')}</li>\n <li>Copy the following .jar files from the SDK <code>lib</code> folder to the target \n <code>WEB-INF/lib</code> folder: \n <ul>\n <li><code>isomorphic_tools.jar</code></li>\n <li><code>isomorphic_sql.jar</code></li>\n <li><code>isomorphic_hibernate.jar</code></li>\n </ul></li>\n <li>Copy the SDK <code>tools</code> folder to the target application root</li>\n </ul>\n Note that it is safe to include Visual Builder even in a production environment, so long \n as you ensure that the <code>tools</code> folder is protected with any normal HTTP\n authentication/authorization mechanism - for example, an authentication filter.\n </smartclient>\n <P>\n <h4>Customizing Visual Builder</h4>\n <P>\n The rest of this topic focuses on how Visual Builder can be customized and deployed by\n developers to make it more effective as a functional design tool for a particular\n organization.\n <P>\n <b>Adding Custom DataSources to Visual Builder</b>\n <P>\n DataSources placed in the project dataSources directory ([webroot]/shared/ds by default)\n will be detected by Visual Builder whenever it is started, and appear in the DataSource\n listing in the lower right-hand corner automatically.\n <P>\n If you have created a custom subclass of DataSource (eg, as a base class for several\n DataSources that contact the same web service), you can use it with Visual Builder by:\n <ul>\n <li> creating an XML version of the DataSource using the XML tag &lt;DataSource&gt; and the\n <code>constructor</code> property set to the name of your custom DataSource subclass (as\n described ${isc.DocUtils.linkForRef('group:componentXML')} under the heading <i>Custom Components</i>)\n <li> modifying [webroot]/tools/visualBuilder/globalDependencies.xml to load the JavaScript\n code for your custom DataSource class.  See examples in that file.\n </ul>\n <P>\n <b>Adding Custom Components to Visual Builder</b>\n <P>\n The Component Library on the right hand side of Visual Builder loads component definitions\n from two XML files in the [webroot]/tools/visualBuilder directory: customComponents.xml and\n defaultComponents.xml.  customComponents.xml is empty and is intended for developers to add\n their own components.  defaultComponents.xml can also be customized, but the base version\n will change between SmartClient releases.\n <P>\n As can be seen by looking at defaultComponents.xml, components are specified using a tree\n structure similar to that shown in the \n ${isc.DocUtils.linkForExampleId('treeLoadXML', 'tree XML loading example')}.  The properties that can be set on\n nodes are:\n <ul>\n <li> <code>type</code>: name of the SmartClient Class on which ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')} will be\n called in order to construct the component.  <code>type</code> can be omitted to create\n a folder that cannot be dropped\n <li> <code>title</code>: title for the node\n <li> <code>defaults</code>: an Object specifying defaults to be passed to\n ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')}.\n For example, you could add an \"EditableGrid\" node by using <code>type: \"ListGrid\"</code>\n and specifying:\n <pre>\n &lt;defaults canEdit=\"true\"/&gt;</pre>\n NOTE: if you set any defaults that are not Canvas properties, you need to provide explicit\n type as documented under <i>Custom Properties</i> for ${isc.DocUtils.linkForRef('group:componentXML')}.\n <li> <code>children</code>: components that should appear as children in the tree under this\n node\n <li> <code>icon</code>: icon to show in the Visual Builder component tree (if desired)\n <li> <code>iconWidth/Height/Size</code>: dimensions of the icon in pixels (\"iconSize\" sets\n both)\n <li> <code>showDropIcon</code>: for components that allow children, whether to show a\n special drop icon on valid drop (like ${isc.DocUtils.linkForRef('attr:TreeGrid.showDropIcons')}).\n </ul>\n <P>\n In order to use custom classes in Visual Builder, you must modify\n <code>[webroot]/tools/visualBuilder/globalDependencies.xml</code> to include:\n <ul>\n <li> the JavaScript class definition for the custom class (in other words, the\n ${isc.DocUtils.linkForRef('classMethod:isc.defineClass','defineClass()')} call)\n <li> a ${isc.DocUtils.linkForRef('group:componentSchema','component schema')} for the custom component\n </ul>\n See globalDependencies.xml for examples.\n <P>\n <h4>Component Schema and Visual Builder</h4>\n <P>\n When you provide ${isc.DocUtils.linkForRef('group:componentSchema','custom schema')} for a component, Visual Builder\n uses that schema to drive component editing (Component Properties pane) and to drive drag\n and drop screen building functionality.\n <P>\n <b>Component Editing</b>\n <P>\n Newly declared fields will appear in the Component Editor in the \"Other\" category at the\n bottom by default.  You can create your own category by simply setting field.group to the\n name of a new group and using this on multiple custom fields.\n <P>\n The ComponentEditor will pick a FormItem for a custom field by the\n ${isc.DocUtils.linkForRef('type:FormItemType','same rules')} used for ordinary databinding, including the ability to\n set field.editorType to use a custom FormItem.\n <P>\n When the \"Apply\" button is clicked, Visual Builder will look for an appropriate \"setter\n function\" for the custom field, for example, for a field named \"myProp\", Visual Builder will\n look for \"setMyProp\".  The target component will also be ${isc.DocUtils.linkForRef('method:Canvas.redraw','redrawn')}.\n <P>\n <b>Event -&gt; Action Bindings</b>\n <P>\n The Component Properties pane contains an Events tab that allows you wire components events\n to actions on any other component currently in the project.\n <P>\n Events are simply ${isc.DocUtils.linkForRef('group:stringMethods','StringMethods')} defined on the component.  In\n order to be considered events, method definitions must have been added to the class via\n ${isc.DocUtils.linkForRef('classMethod:Class.registerStringMethods')} and either be publicly documented SmartClient methods or,\n for custom classes, have a methods definition in the ${isc.DocUtils.linkForRef('group:componentSchema','component schema')}.\n Examples of events are: ${isc.DocUtils.linkForRef('method:ListGrid.recordClick')} and ${isc.DocUtils.linkForRef('method:DynamicForm.itemChange')}.\n <P>\n Actions are methods on any component that have a method definition in the\n ${isc.DocUtils.linkForRef('group:componentSchema','component schema')} and specify action=\"true\".\n <P>\n All available events (stringMethods) on a component are shown in the Events tab of the\n Component Editor.  Clicking the plus (+) sign next to the event name brings up a menu that\n shows a list of all components currently in the project and their available actions.\n Selecting an action from this submenu binds the action to the selected event.  When an event\n is bound to an action in this manner, automatic type matching is performed to pass arguments\n from the event to the action as follows:\n <ul>\n <li>Only non-optional parameters of the action are bound.\n <li>For each non-optional parameter of the action method, every parameter of the\n event method is inspected in order to either directly match the type (for non-object types)\n or to match an isAssignableFrom type check via a SmartClient schema inheritance check.\n <li>The 'type' of a parameter is determined from the type documented in the SmartClient\n reference for built-in components, or from the <code>type</code> attribute on the method\n param in the ${isc.DocUtils.linkForRef('group:componentSchema','component schema')} definition of a custom component.\n <li>When a matching parameter is found, it is assigned to the current slot of the action and\n not considered for further parameter matching.\n <li>The above pattern is repeated until all non-optional parameters are exhausted, all\n event parameters are exhausted, or until no further type matches can be inferred.\n </ul>\n The \"actionBinding\" log category can be enabled in the Developer Console to troubleshoot\n issues with automatic binding for custom methods.\n <P>\n <b>Component Drag and Drop</b>\n <P>\n Visual Builder uses component schema to determine whether a given drop is allowed and what\n methods should be called to accomplish the drop.  For example, any Canvas-based component\n can be dropped on a VLayout because VLayout has a \"members\" field of type \"Canvas\", and an \n ${isc.DocUtils.linkForRef('method:Layout.addMember','addMember()')} function.\n <P>\n Because of these rules, any subclass of Canvas will be automatically eligible to be dropped\n into any container that accepts a Canvas (eg, a Layout or Tab).  Any subclass of a FormItem\n will be, likewise, automatically eligible to be dropped into a DynamicForm.\n <P>\n You can declare custom containment relations, such as a custom class \"Wizard\" that accepts\n instances of the custom class \"Pane\" by simply declaring a\n ${isc.DocUtils.linkForRef('group:componentSchema','component schema')} that says that Wizard has a property called\n \"panes\" of type \"Pane\".  Then, provide methods that allow components to be added and removed:\n <ul>\n <li> for a ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple')} field, provide \"add\" and \"remove\"\n functions based on the name of the field.  For example, for a field \"panes\" of type \"Pane\",\n provide \"addPane()\" that takes a Pane instance, and \"removePane()\" that takes a pane\n instance or pane ID \n <li> for a singular field (such as ${isc.DocUtils.linkForRef('attr:Canvas.contextMenu')} or ${isc.DocUtils.linkForRef('attr:Tab.pane')}), provide a\n setter method named after the field (eg setContextMenu()) that takes either an instance of\n the component or null for removal\n </ul>\n <P>\n The \"editing\" log category can be enabled in the Developer Console to troubleshoot issues\n with schema-driven drag and drop and automatic lookup of getter/setter and adder/remover\n methods.\n <P>\n <B>NOTE:</B> after modifying component schema, it may be necessary to restart the servlet\n engine and reload Visual Builder\n <P>\n <b>Presenting simplified components</b>\n <P>\n SmartClient components expose many methods and properties.  For some environments, it is\n more appropriate to provide a simplified list of properties, events, and actions on either\n built-in SmartClient components or your custom components.  This can be done by providing a\n custom ${isc.DocUtils.linkForRef('group:componentSchema','component schema')} for an existing component that exposes\n your minimal set.  You also need to provide a trivial subclass of the class you're exposing\n so that it can be instantiated.\n <P>\n For example, let's say you want to make a simplified button called EButton that exposes only\n the 'title' property and the 'click' event of a standard Button.  The following steps will\n accomplish this:\n <p>\n 1. Edit /tools/visualBuilder/customComponents.xml and add a block similar to the following\n to make your custom component appear in the Component Library:\n <pre>\n &lt;PaletteNode&gt;\n     &lt;title&gt;EButton&lt;/title&gt;\n     &lt;type&gt;EButton&lt;/type&gt;\n     &lt;icon&gt;button.gif&lt;/icon&gt;\n &lt;/PaletteNode&gt;\n </pre>\n 2. Next, create a custom schema: /isomorphic/system/schema/EButton.ds.xml as follows:\n <pre>\n &lt;DataSource ID=\"EButton\" inheritsFrom=\"Button\" Constructor=\"EButton\"\n             showLocalFieldsOnly=\"true\" showSuperClassActions=\"false\"\n             showSuperClassEvents=\"false\"&gt;\n \t   &lt;fields&gt;\n         &lt;field name=\"title\"  type=\"HTML\"/&gt;\n     &lt;/fields&gt;\n     &lt;methods&gt;\n         &lt;method name=\"click\"&gt;\n             &lt;description&gt;Fires when this button is clicked.&lt;/description&gt;\n         &lt;/method&gt;\n     &lt;/methods&gt;\n &lt;/DataSource&gt;\n </pre>\n See documentation above and also ${isc.DocUtils.linkForRef('group:componentSchema','component schema')} for what the\n properties above do.\n 3.  Finally, you'll need to define an EButton class as a simple subclass of Button, as\n follows:\n <pre>\n isc.defineClass(\"EButton\", \"Button\");\n </pre>\n To make sure that the Visual Builder will load the above definition, you'll need to place it\n into a JavaScript file being loaded by the Visual Builder.  If you do not already have\n such a file, you can create one and add it to the list of Visual Builder dependencies by\n adding an entry in /tools/visualBuilder/globalDependencies.xml.  See examples in that file\n for specifics.",
        name:"visualBuilder",
        seeAlso:[
            {
                ref:"group:toolsDeployment",
                description:null
            }
        ],
        type:"group"
    },
    "method:Callbacks.DSCallback":{
        ref:"method:Callbacks.DSCallback",
        flags:"",
        description:" Callback fired when DataSource methods that send DSRequests complete (such as ${isc.DocUtils.linkForRef('method:DataSource.fetchData')}).\n\n",
        name:"DSCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"a ${isc.DocUtils.linkForRef('class:DSResponse')} instance with metadata about the returned data",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            },
            {
                description:"data returned to satisfy the DataSource request. See the         ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource operations')} topic for expected results\n        for each type of DataSource operation",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the ${isc.DocUtils.linkForRef('class:DSRequest')} that was sent. You can use        ${isc.DocUtils.linkForRef('attr:DSRequest.clientContext')} to track state during the server turnaround.",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:DataSourceField.encodeInResponse":{
        ref:"attr:DataSourceField.encodeInResponse",
        flags:"IRW",
        description:"When set for a field with binary data, binary data will be delivered as a Base64 encoded\n string.  \n <P>\n When <code>encodeInResponse</code> is not set normal responses will not contain values for\n binary fields at all.  Instead, UI components, such as ${isc.DocUtils.linkForRef('class:TileGrid')} issue a second\n binary fetch for binary data when appropriate, and APIs such as ${isc.DocUtils.linkForRef('method:DataSource.downloadFile','downloadFile()')} and\n ${isc.DocUtils.linkForRef('method:DataSource.viewFile','viewFile()')} can be used to programmatically trigger downloads.\n <p>\n Only applicable to fields of a type that are represented by binary data (currently \"binary\"\n and \"imageFile\", see ${isc.DocUtils.linkForRef('type:FieldType')}).",
        name:"encodeInResponse",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "method:ResultTree.invalidateCache":{
        ref:"method:ResultTree.invalidateCache",
        flags:"A",
        description:" Manually invalidate this ResultTree's cache.\n <P>\n Generally a ResultTree will observe and incorporate updates to the DataSource that provides its\n records, but when this is not possible, <code>invalidateCache()</code> allows manual cache\n invalidation.\n <P>\n Components bound to this ResultTree will typically re-request the currently visible portion\n of the dataset, causing the ResultTree to re-fetch data from the server.\n",
        name:"invalidateCache",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ResultTree"
    },
    "method:TileLayout.setTileHMargin":{
        ref:"method:TileLayout.setTileHMargin",
        flags:"",
        description:" Sets the horizontal margin of tiles.\n",
        name:"setTileHMargin",
        seeAlso:[
        ],
        params:[
            {
                description:"width",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "tileLayout"
        ]
    },
    "method:CubeGrid.closeFacet":{
        ref:"method:CubeGrid.closeFacet",
        flags:"",
        description:"\n  Handler fired when facet is closed\n\n      <br><i>methodType</i> handler\n",
        name:"closeFacet",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of facet that was closed",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "columnControls"
        ]
    },
    "method:Calendar.timelineEventMoved":{
        ref:"method:Calendar.timelineEventMoved",
        flags:"",
        description:" Called when a Timeline event is moved via dragging by a user.  Return false to disallow the \n move.\n",
        name:"timelineEventMoved",
        seeAlso:[
        ],
        params:[
            {
                description:"the event that was moved",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"new start date of the passed event",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"new end date of the passed event",
                optional:false,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the Lane in which this event has been dropped",
                optional:false,
                name:"lane",
                defaultValue:null,
                type:"Lane"
            }
        ],
        returns:{
            description:"return false to disallow the move.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:DynamicForm.autoFetchTextMatchStyle":{
        ref:"attr:DynamicForm.autoFetchTextMatchStyle",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DynamicForm.autoFetchData')} is <code>true</code>, this attribute allows the developer to\n specify a textMatchStyle for the initial ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} call.",
        name:"autoFetchTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "databinding"
        ]
    },
    "class:Flashlet":{
        methods:[
            "method:Flashlet.setSrc",
            "method:Flashlet.getPluginHandle"
        ],
        ref:"class:Flashlet",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:Flashlet.flashAvailable",
            "classMethod:Flashlet.getFlashVersion"
        ],
        treeLocation:[
            "Client Reference/Client Bridges"
        ],
        attrs:[
            "attr:Flashlet.name",
            "attr:Flashlet.params",
            "attr:Flashlet.classID",
            "attr:Flashlet.codeBase",
            "attr:Flashlet.pluginsPage",
            "attr:Flashlet.src"
        ],
        description:"ISC abstraction for Flashlets.",
        name:"Flashlet",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "PluginBridges"
        ]
    },
    "method:ColorPicker.getGreen":{
        ref:"method:ColorPicker.getGreen",
        flags:"",
        description:" Returns the Green element of the currently-selected color, as an integer from 0-255\n",
        name:"getGreen",
        seeAlso:[
            {
                ref:"method:ColorPicker.setGreen",
                description:null
            }
        ],
        returns:{
            description:"green color component",
            type:"int"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:DataSourceField.format":{
        ref:"attr:DataSourceField.format",
        flags:"IRW",
        description:"Format string to use when rendering the value in any ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} or when\n exporting via ${isc.DocUtils.linkForRef('method:DataSource.exportData')} or ${isc.DocUtils.linkForRef('method:ListGrid.exportData')} or \n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}.\n <P>\n Supported for fields of type \"date\", \"time\", \"datetime\", \"int\", \"float\" or any derived\n ${isc.DocUtils.linkForRef('class:SimpleType')}. \n <p>\n To configure a different format for export, use ${isc.DocUtils.linkForRef('attr:DataSourceField.exportFormat')}.\n <p>\n This is a per-field setting; you can alternatively set a default format for all \"date\",\n \"time\" or \"datetime\" fields via \n <smartclient>\n ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDatetimeDisplayFormat')} and related methods on ${isc.DocUtils.linkForRef('class:Date')}.\n </smartclient>\n <smartgwt>\n ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDatetimeDisplayFormat')} and related methods on\n ${isc.DocUtils.linkForRef('class:Date')}.\n </smartgwt>\n See also ${isc.DocUtils.linkForRef('group:localizedNumberFormatting')} for built-in ${isc.DocUtils.linkForRef('type:FieldType','FieldTypes')}\n that handle localized currency formatting.\n <p>\n Also note, this property takes precedence over any specified \n ${isc.DocUtils.linkForRef('attr:DataSourceField.dateFormatter','dateFormatter')}, but can be overridden on a per-component\n basis by providing a formatter directly on the component, for example, via\n ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue')} or ${isc.DocUtils.linkForRef('method:FormItem.formatValue')}.",
        name:"format",
        seeAlso:[
            {
                ref:"attr:DataSourceField.exportFormat",
                description:null
            }
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:NavigationBar.rightButtonTitle":{
        ref:"attr:NavigationBar.rightButtonTitle",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:Button.title','Title')} for the ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButton','rightButton')}.",
        name:"rightButtonTitle",
        setter:[
            "setRightButtonTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "attr:CubeGrid.facetValueHoverAlign":{
        ref:"attr:CubeGrid.facetValueHoverAlign",
        flags:"IRWA",
        description:"Allows the developer to override the horizontal text alignment of hover tips shown for\n facet values.  If unspecified the hover canvas content alignment will be set by\n <code>this.hoverAlign</code> if specified.",
        name:"facetValueHoverAlign",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverAlign",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "method:Canvas.mouseStillDown":{
        ref:"method:Canvas.mouseStillDown",
        flags:"A",
        description:"\n Repeating notification method for the user holding the left mouse button down over this\n canvas.\n <P>\n The <code>mouseStillDown</code> event is fired immediately when the mouse goes down.\n If the user holds the mouse down, after a pause of\n  ${isc.DocUtils.linkForRef('attr:Canvas.mouseStillDownInitialDelay')}, it will begin to fire repeatedly every \n ${isc.DocUtils.linkForRef('attr:Canvas.mouseStillDownDelay')} milliseconds.\n <P>\n This provides developers with a simple way to handle the common \"repeated action\" \n use case where a user can click a UI element to perform an action once, or click \n and hold to perform the action repeatedly.<br>\n Examples of this include standard scrollbar button behavior and buttons \n to increase or decrease the value in a spinner type input element.\n <P>\n This event is not native to JavaScript, but is provided by the ISC system.\n\n",
        name:"mouseStillDown",
        seeAlso:[
            {
                ref:"attr:Canvas.mouseStillDownInitialDelay",
                description:null
            },
            {
                ref:"attr:Canvas.mouseStillDownDelay",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        platformNotes:"Some end user systems only have one mouse button.",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:DSRequestModifier.fieldName":{
        ref:"attr:DSRequestModifier.fieldName",
        flags:"IR",
        description:"The name of the field to add or replace on the DSRequest - whether this appears in the DSRequest's\n values or criteria depends on whether this is part of a ${isc.DocUtils.linkForRef('attr:OperationBinding.values')} or\n ${isc.DocUtils.linkForRef('attr:OperationBinding.criteria')} attribute.",
        name:"fieldName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"object:DSRequestModifier"
    },
    "attr:ColumnTree.autoFetchTextMatchStyle":{
        ref:"attr:ColumnTree.autoFetchTextMatchStyle",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ColumnTree.autoFetchData')} is <code>true</code>, this attribute allows the developer to\n specify a textMatchStyle for the initial ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} call.",
        name:"autoFetchTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "attr:ListGrid.offlineMessageStyle":{
        ref:"attr:ListGrid.offlineMessageStyle",
        flags:"IRW",
        description:"The CSS style name applied to the ${isc.DocUtils.linkForRef('attr:DataBoundComponent.offlineMessage','offlineMessage')} if displayed.",
        name:"offlineMessageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"offlineMessage\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "offlineGroup"
        ]
    },
    "attr:ListGrid.frozenHeaderBaseStyle":{
        ref:"attr:ListGrid.frozenHeaderBaseStyle",
        flags:"IR",
        description:"If this listGrid contains any frozen fields, this property can be used to apply a custom\n headerBaseStyle to the frozen set of fields. If unset, the standard headerBaseStyle\n will be used for both frozen and unfrozen cells.",
        name:"frozenHeaderBaseStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.headerBaseStyle",
                description:null
            },
            {
                ref:"attr:ListGridField.frozen",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance",
            "frozenFields"
        ]
    },
    "method:ListGrid.getEventRow":{
        ref:"method:ListGrid.getEventRow",
        flags:"",
        description:" Returns the row number of the most recent mouse event.\n",
        name:"getEventRow",
        seeAlso:[
        ],
        params:[
            {
                description:"optional y-coordinate to obtain row number, in lieu of the y                        coordinate of the last mouse event",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"row number, or -2 if beyond last drawn row",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:TileGrid.initialCriteria":{
        ref:"attr:TileGrid.initialCriteria",
        flags:"IR",
        description:"Criteria to be used when ${isc.DocUtils.linkForRef('attr:TileGrid.autoFetchData')} is set.",
        name:"initialCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:PickTreeItem.optionDataSource":{
        ref:"attr:PickTreeItem.optionDataSource",
        flags:"IRW",
        getter:[
            "getOptionDataSource"
        ],
        description:"If set, this FormItem will map stored values to display values as though a\n ${isc.DocUtils.linkForRef('type:ValueMap')} were specified, by fetching records from the \n specified <code>optionDataSource</code> and extracting the\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')} and \n ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} in loaded records, to derive one\n valueMap entry per record loaded from the optionDataSource.\n <P>\n With the default setting of ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')}, fetches will be initiated against\n the optionDataSource any time the FormItem has a non-null value and no corresponding\n display value is available.  This includes when the form is first initialized, as well\n as any subsequent calls to ${isc.DocUtils.linkForRef('method:FormItem.setValue')}, such as may happen when\n ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')} is called.  Retrieved values are automatically cached by\n the FormItem.\n <P>\n Note that if a normal, static ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} is <b>also</b> specified for\n the field (either directly in the form item or as part of the field definition in the\n dataSource), it will be preferred to the data derived from the optionDataSource for\n whatever mappings are present.\n <P>\n In a databound form, if ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} is specified for a FormItem and \n <code>optionDataSource</code> is unset, <code>optionDataSource</code> will default to\n the form's current DataSource",
        name:"optionDataSource",
        seeAlso:[
            {
                ref:"method:FormItem.invalidateDisplayValueCache",
                description:null
            }
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('listComboBox')}"
        ],
        definingClass:"class:PickTreeItem",
        groups:[
            "display_values"
        ]
    },
    "classMethod:RPCManager.sendProxied":{
        ref:"classMethod:RPCManager.sendProxied",
        flags:"",
        description:" Send an HTTP request to a remote host, potentially through the HttpProxy servlet installed\n on the SmartClient Server.\n <P>\n This API allows contacting services which are hosted on servers other than the origin server\n if the HttpProxy servlet is enabled on the SmartClient Server.\n <P>\n The HttpProxy will be used if the ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL')} starts with \"http\" and uses a\n hostname other than \"localhost\" or <code>window.location.hostname</code>, or if the port\n number differs, or if <code>request.useHttpProxy</code> is explicitly set.  Otherwise the\n request goes to the origin server (the server that returned the current page).\n <P>\n The ${isc.DocUtils.linkForRef('class:RPCRequest')} properties that will be respected when relaying requests via the\n HttpProxy are: \n ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL','actionURL')}, ${isc.DocUtils.linkForRef('attr:RPCRequest.httpMethod','httpMethod')}, \n ${isc.DocUtils.linkForRef('attr:RPCRequest.params','params')}, ${isc.DocUtils.linkForRef('attr:RPCRequest.contentType','contentType')}, \n ${isc.DocUtils.linkForRef('attr:RPCRequest.httpHeaders','httpHeaders')}, and ${isc.DocUtils.linkForRef('attr:RPCRequest.data','data')}.  In this case\n \"data\", if set, will be used as the request body for an HTTP POST.\n <P>\n Higher-level APIs like ${isc.DocUtils.linkForRef('class:DataSource')} or ${isc.DocUtils.linkForRef('class:WebService')} call through this API, and so\n automatically use the HttpProxy if ${isc.DocUtils.linkForRef('attr:DataSource.dataURL')} or\n ${isc.DocUtils.linkForRef('method:WebService.setLocation','webService.location')} is set to a foreign server.\n <P>\n This API is only suitable for direct use when loading unstructured data that will not be\n shown in a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}.  For a WSDL-described web service, use\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadWSDL')} instead.  For other web services, use a ${isc.DocUtils.linkForRef('class:DataSource')} with\n ${isc.DocUtils.linkForRef('attr:DataSource.dataURL','dataURL')}, and use ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} and\n ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')} as necessary to form requests for the service and\n transform responses for display.\n\n",
        name:"sendProxied",
        seeAlso:[
        ],
        params:[
            {
                description:"rpcRequest to be routed through the HttpProxy",
                optional:false,
                name:"request",
                defaultValue:null,
                type:"RPCRequest Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ListGrid.baseStyle":{
        ref:"attr:ListGrid.baseStyle",
        flags:"IR",
        getter:[
            "getBaseStyle"
        ],
        description:"${isc.DocUtils.linkForRef('attr:GridRenderer.baseStyle','base cell style')} for this listGrid.\n If this property is unset, base style may be derived from ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')}\n or ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')} as described in\n ${isc.DocUtils.linkForRef('method:ListGrid.getBaseStyle')}.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "method:Tree.openFolders":{
        ref:"method:Tree.openFolders",
        flags:"",
        description:"\n Open a set of folders, specified by path or as pointers to nodes.\n\n",
        name:"openFolders",
        seeAlso:[
            {
                ref:"method:ResultTree.dataArrived",
                description:null
            }
        ],
        params:[
            {
                description:"List of nodes or node paths.",
                optional:false,
                name:"nodeList",
                defaultValue:null,
                type:"List of TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:Menu.canSelectParentItems":{
        ref:"attr:Menu.canSelectParentItems",
        flags:"IRW",
        description:"If true, clicking or pressing Enter on a menu item that has a submenu will\n\t\tselect that item (with standard behavior of hiding the menus, calling click\n\t\thandlers, etc) instead of showing the submenu.",
        name:"canSelectParentItems",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('treeBinding')}"
        ],
        definingClass:"class:Menu",
        groups:[
            "selection"
        ]
    },
    "method:ListGrid.getCellCSSText":{
        ref:"method:ListGrid.getCellCSSText",
        flags:"",
        description:" Return CSS text for styling this cell, which will be applied in addition to the CSS class\n for the cell, as overrides.\n <p>\n \"CSS text\" means semicolon-separated style settings, suitable for inclusion in a CSS\n stylesheet or in a STYLE attribute of an HTML element.\n\n",
        name:"getCellCSSText",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellStyle",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS text for this cell",
            type:"string"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('addStyle')}"
        ],
        definingClass:"class:ListGrid"
    },
    "interface:EditContext":{
        methods:[
            "method:EditContext.getDefaultPalette",
            "method:EditContext.setDefaultPalette",
            "method:EditContext.addNode",
            "method:EditContext.nodeAdded",
            "method:EditContext.addFromPaletteNode",
            "method:EditContext.makeEditNode",
            "method:EditContext.removeAll",
            "method:EditContext.destroyAll",
            "method:EditContext.serializeAllEditNodes",
            "method:EditContext.serializeAllEditNodesAsJSON",
            "method:EditContext.serializeEditNodes",
            "method:EditContext.serializeEditNodesAsJSON",
            "method:EditContext.addPaletteNodesFromXML",
            "method:EditContext.addPaletteNodesFromJSON",
            "method:EditContext.getPaletteNodesFromXML",
            "method:EditContext.addPaletteNodesFromJS",
            "method:EditContext.getPaletteNodesFromJS",
            "method:EditContext.addFromPaletteNodes",
            "method:EditContext.setNodeProperties",
            "method:EditContext.removeNodeProperties"
        ],
        ref:"interface:EditContext",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools"
        ],
        attrs:[
            "attr:EditContext.defaultPalette",
            "attr:EditContext.extraPalettes",
            "attr:EditContext.persistCoordinates"
        ],
        description:"An EditContext provides an editing environment for a set of components.\n <P>\n An EditContext is typically populated by adding a series of ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} created via a\n ${isc.DocUtils.linkForRef('interface:Palette')}, either via drag and drop creation, or when loading from a saved version,\n via ${isc.DocUtils.linkForRef('method:EditContext.addFromPaletteNode','addFromPaletteNode()')} or \n ${isc.DocUtils.linkForRef('method:EditContext.addPaletteNodesFromXML','addPaletteNodesFromXML()')}.\n <P>\n An EditContext then provides interfaces for further editing of the components represented\n by EditNodes.",
        name:"EditContext",
        seeAlso:[
        ],
        type:"interface",
        groups:[
            "devTools"
        ]
    },
    "attr:DataBoundComponent.removeFormulaFieldText":{
        ref:"attr:DataBoundComponent.removeFormulaFieldText",
        flags:"IRW",
        description:"Text for a menu item allowing users to remove a formula field",
        name:"removeFormulaFieldText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Remove formula\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Menu.alternateRecordStyles":{
        ref:"attr:Menu.alternateRecordStyles",
        flags:"IRW",
        description:"Explicitly disable alternateRecordStyles at the menu level by default so setting\n to true for all ListGrids will not impact menus' appearance.",
        name:"alternateRecordStyles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:DrawPane.destroyItems":{
        ref:"method:DrawPane.destroyItems",
        flags:"",
        description:" Permanently ${isc.DocUtils.linkForRef('method:DrawItem.destroy','destroy')} all DrawItems currently associated with this DrawPane,\n leaving the DrawPane itself intact\n",
        name:"destroyItems",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "attr:TimeItem.showMillisecondItem":{
        ref:"attr:TimeItem.showMillisecondItem",
        flags:"IRW",
        description:"Controls whether to display the ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondItem')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is false.",
        name:"showMillisecondItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:ListGrid.applyRecordData":{
        ref:"method:ListGrid.applyRecordData",
        flags:"",
        description:" Applies a list of Records as changes to the current selection.\n <P>\n Values found in each of the passed records will be applied to the same-named fields in the\n Records starting from the top-left of the current selection, in order.\n <P>\n Will only modify cells in the grid which are editable, and changes will be applied\n as editValues, exactly as though the user had typed the values in (see\n ${isc.DocUtils.linkForRef('group:editing','Grid Editing Overview')}).\n <P>\n See also ${isc.DocUtils.linkForRef('method:ListGrid.applyCellData')}.\n\n",
        name:"applyRecordData",
        seeAlso:[
        ],
        params:[
            {
                description:"list of Records as described above",
                optional:false,
                name:"recordData",
                defaultValue:null,
                type:"RecordList"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:SelectItem.pickListCriteria":{
        ref:"attr:SelectItem.pickListCriteria",
        flags:"IRWA",
        description:"If this item has a databound pickList (for example ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')} is\n set), this property can be used to provide static filter criteria when retrieving the data\n for the pickList.",
        name:"pickListCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:OperationBinding.exportResults":{
        ref:"attr:OperationBinding.exportResults",
        flags:"IR",
        description:"When set, causes the results of the DataSource Operation to be exported to a file, whose \n name and format are indicated by ${isc.DocUtils.linkForRef('attr:OperationBinding.exportFilename')} and \n ${isc.DocUtils.linkForRef('attr:OperationBinding.exportAs')} respectively.  When no exportFilename is provided, the \n default is <i>Results</i> and the default value of exportAs is <i>csv</i>.  Once the Operation \n completes, ${isc.DocUtils.linkForRef('attr:DSRequest.exportDisplay')} specifies whether the \n exported data will be downloaded to the file-system or displayed in a new window.   The \n default value of exportDisplay is \"download\" which displays the Save As dialog.  See \n ${isc.DocUtils.linkForRef('type:ExportDisplay')} for more information.\n <P>\n The export field-list can also be configured, see ${isc.DocUtils.linkForRef('attr:DSRequest.exportFields')}.\n <P>\n You can also configure the style of line-breaks to use when generating the output.  See\n ${isc.DocUtils.linkForRef('type:LineBreakStyle')} for more information.\n <P>\n As well as setting this and other properties on the ${isc.DocUtils.linkForRef('class:OperationBinding')}, Exports can be \n initiated in two other ways.  You can set properties on the dsRequest by passing \n <i>requestProperties</i> into ${isc.DocUtils.linkForRef('method:DataSource.exportData')}.  Note that this method does\n not support exporting to JSON format (see \n <a href=\"http://forums.smartclient.com/showthread.php?t=235\">this post</a> for more detail).\n Additionally, custom server code may set export-related properties on the \n ${isc.DocUtils.linkForRef('class:DSResponse')}.\n <P>\n <b>Format Examples</b>\n <P>\n XML format\n <pre>\n     &lt;List&gt;\n         &lt;Object&gt;\n             &lt;id&gt;10101&lt;/id&gt;\n             &lt;displayName&gt;Record 10101&lt;/displayName&gt;\n         &lt;/Object&gt;\n    &lt;/List&gt;\n </pre>\n JSON Format\n <pre>\n     [\n         { id: 10101, displayName: \"Record 10101\" }\n     ]\n </pre>\n CSV Format\n <pre>\n     id,displayName\n     10101,\"Record 10101\"\n </pre>",
        name:"exportResults",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "attr:DrawPath.knobs":{
        ref:"attr:DrawPath.knobs",
        flags:"IR",
        description:"<b>NOTE:</b> DrawPath items do not support knobs.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawPath"
    },
    "attr:TextItem.selectOnFocus":{
        ref:"attr:TextItem.selectOnFocus",
        flags:"IRW",
        description:"Allows the ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnFocus','selectOnFocus')} behavior to be configured on a\n per-FormItem basis.  Normally all items in a form default to the value of\n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnFocus')}.",
        name:"selectOnFocus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "focus"
        ]
    },
    "object:UserFormula":{
        methods:[
        ],
        ref:"object:UserFormula",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:UserFormula.text",
            "attr:UserFormula.formulaVars"
        ],
        description:"An object representing a user-created and user-modifiable formula, which can be created and\n edited with a ${isc.DocUtils.linkForRef('class:FormulaBuilder')} either directly or via the\n ${isc.DocUtils.linkForRef('attr:ListGrid.canAddFormulaFields')} behavior.",
        name:"UserFormula",
        seeAlso:[
        ],
        type:"object"
    },
    "method:DateRangeItem.setCriterion":{
        ref:"method:DateRangeItem.setCriterion",
        flags:"",
        description:" Applies the specified criterion to this item for editing. Applies any specified \n \"greaterOrEqual\" operator criterion or sub-criterion to our ${isc.DocUtils.linkForRef('attr:DateRangeItem.fromField','fromField')} and any\n specified \"lessOrEqual\" operator criterion or sub-criterion to our ${isc.DocUtils.linkForRef('attr:DateRangeItem.toField','toField')}.\n <P>\n Note that a single \"equals\" criterion can also be passed.  See \n ${isc.DocUtils.linkForRef('method:DateRangeItem.canEditCriterion','canEditCriterion()')} for more detail.\n",
        name:"setCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"criterion to edit",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        type:"method",
        definingClass:"class:DateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:RichTextEditor.fontSizes":{
        ref:"attr:RichTextEditor.fontSizes",
        flags:"IRA",
        description:"ValueMap of css font size property values to font size titles to display in the font size\n selector if <code>\"fontSizeSelector\"</code> is included in \n ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')}.\n Default value for this attribute:<br>\n <code>{\n &nbsp;&nbsp;\"1\":\"1 (8 pt)\",\n &nbsp;&nbsp;\"2\":\"2 (10 pt)\",\n &nbsp;&nbsp;\"3\":\"3 (12 pt)\",\n &nbsp;&nbsp;\"4\":\"4 (14 pt)\",\n &nbsp;&nbsp;\"5\":\"5 (18 pt)\",\n &nbsp;&nbsp;\"6\":\"6 (24 pt)\",\n &nbsp;&nbsp;\"7\":\"7 (36 pt)\"}</code>",
        name:"fontSizes",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"{}",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "attr:DataSource.childrenField":{
        ref:"attr:DataSource.childrenField",
        flags:"IR",
        description:"fieldName for a field in the dataSource expected to contain an explicit array of child nodes.\n Enables loading a databound tree as a hierarchical data structure, rather than a flat list of\n nodes linked by foreignKey.<br>\n Note this is an alternative to setting ${isc.DocUtils.linkForRef('attr:DataSourceField.childrenProperty')} directly on\n the childrenField object.<P>\n By default the children field will be assumed to be ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple')},\n for XML databinding. This implies that child data should be delivered in the format:\n <pre>\n      &lt;childrenFieldName&gt;\n          &lt;item name=\"firstChild\" ...&gt;\n          &lt;item name=\"secondChild\" ...&gt;\n      &lt;/childrenFieldName&gt;\n </pre>\n However data may also be delivered as a direct list of <code>childrenFieldName</code> \n elements:\n <pre>\n      &lt;childrenFieldName name=\"firstChild\" ...&gt;\n      &lt;childrenFieldName name=\"secondChild\" ...&gt;\n </pre>\n If you want to return your data in this format, you will need to explicitly set \n <code>multiple</code> to false in the appropriate dataSource field definition.",
        name:"childrenField",
        seeAlso:[
            {
                ref:"attr:DataSourceField.childrenProperty",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "dataSourceRelations"
        ]
    },
    "attr:ListGridField.editorImageURLSuffix":{
        ref:"attr:ListGridField.editorImageURLSuffix",
        flags:"IRWA",
        description:"When some cell in this field is being edited, this property can be used to apply\n an explicit ${isc.DocUtils.linkForRef('attr:FormItem.imageURLSuffix')} to the editor in question.\n This can be used to modify the valueIcons within the editor.<br>\n If unset, but ${isc.DocUtils.linkForRef('attr:ListGridField.imageURLPrefix')} is specified, that will be used\n instead.",
        name:"editorImageURLSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:DynamicForm.errorsPreamble":{
        ref:"attr:DynamicForm.errorsPreamble",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} is <code>false</code>, all errors for the items\n in the form are rendered as a single item at the top of the form. This attribute specifies\n an introductory message rendered out before the individual error messages.",
        name:"errorsPreamble",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"The following errors were found:\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation",
            "i18nMessages"
        ]
    },
    "attr:Scrollbar.allowThumbDownState":{
        ref:"attr:Scrollbar.allowThumbDownState",
        flags:"IRA",
        description:"If true, the thumb's appearance changes when it's clicked on.",
        name:"allowThumbDownState",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "thumb"
        ]
    },
    "attr:ListGrid.showHilitesInGroupSummary":{
        ref:"attr:ListGrid.showHilitesInGroupSummary",
        flags:"IRW",
        description:"Determines whether hiliting for any field in this grid is shown in a group summary.\n This setting affects all fields of the grid.\n <P>\n To suppress hilites for a specific field see ${isc.DocUtils.linkForRef('attr:ListGridField.showHilitesInGroupSummary')}.\n <P>\n Hiliting in summary fields (columns) can be enabled by setting\n ${isc.DocUtils.linkForRef('attr:ListGrid.includeHilitesInSummaryFields','includeHiliteInSummaryField')} to true.",
        name:"showHilitesInGroupSummary",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:FormItem.invalidateDisplayValueCache":{
        ref:"method:FormItem.invalidateDisplayValueCache",
        flags:"",
        description:" If this item has a specified ${isc.DocUtils.linkForRef('attr:FormItem.displayField')}, the value displayed to the\n user for this item may be derived from another field.\n <P>\n The display field can be either another field value in the same record or a field that\n must be retrieved from a related ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')} if\n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues')} is true. In this latter case, we perform a fetch against\n the option dataSource when the item value changes in order to determine the\n display value to show (and we make the associated record available via\n ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord')}).\n <P>\n We cache this data on the form item, so if the item value changes to a new value, then reverts\n to a previously-seen value, the display value and selected record are already available \n without the need for an additional fetch. The cached values will also be kept in synch with\n the dataSource data assuming it is modified via standard add, update or delete operations.\n <P>\n This method explicitly invalidates this cache of optionDataSource data, and if the item value\n is non null and fetchMissingValues is still true, re-fetches the data.\n \n",
        name:"invalidateDisplayValueCache",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "method:MenuItem.dynamicTitle":{
        ref:"method:MenuItem.dynamicTitle",
        flags:"",
        description:" Contains the condition that will change the current items' title when met. The handler must be specified\n as a function or string of script.\n <p>\n If you don't need to set this state dynamically, use ${isc.DocUtils.linkForRef('attr:MenuItem.title')} instead.\n <p>\n May be defined as a ${isc.DocUtils.linkForRef('group:stringMethods','stringMethod')}.\n <p>\n",
        name:"dynamicTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"${isc.DocUtils.linkForRef('attr:Menu.target','target')} attribute for the top level menu.",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"${isc.DocUtils.linkForRef('class:Menu','menu')} contains the reference to the menu that contains the current item",
                optional:false,
                name:"menu",
                defaultValue:null,
                type:"Menu"
            },
            {
                description:"contains the reference to the current item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem"
            }
        ],
        returns:{
            description:"the title of this menuItem",
            type:"String"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('menuDynamicItems')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "dynamicMenuItem"
        ]
    },
    "attr:Canvas.defaultHeight":{
        ref:"attr:Canvas.defaultHeight",
        flags:"IRWA",
        description:"For custom components, establishes a default height for the component.\n <P>\n For a component that should potentially be sized automatically by a Layout, set this\n property rather than ${isc.DocUtils.linkForRef('attr:Canvas.height')} directly, because Layouts regard a height setting as\n an explicit size that shouldn't be changed.",
        name:"defaultHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "group:grip":{
        ref:"group:grip",
        refs:[
            "attr:StretchImg.showGrip",
            "attr:StretchImg.gripImgSuffix",
            "attr:StretchImg.showDownGrip",
            "attr:StretchImg.showRollOverGrip",
            "attr:Splitbar.showGrip",
            "attr:Splitbar.gripImgSuffix",
            "attr:Splitbar.showDownGrip",
            "attr:Splitbar.showRollOverGrip",
            "attr:Splitbar.showClosedGrip",
            "attr:Splitbar.invertClosedGripIfTargetAfter",
            "attr:Snapbar.showGrip",
            "attr:Snapbar.showDownGrip",
            "attr:Snapbar.showRollOverGrip",
            "attr:Snapbar.showClosedGrip"
        ],
        name:"grip",
        seeAlso:[
        ],
        type:"group"
    },
    "method:TileGrid.getTileIndex":{
        ref:"method:TileGrid.getTileIndex",
        flags:"",
        description:" Returns the index of the specified tile.\n",
        name:"getTileIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"Tile you want to get the index for",
                optional:false,
                name:"tile",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"index of the tile in this tileGrid. Will return -1 if the specified tile is not displayed within this grid.",
            type:"int"
        },
        type:"method",
        definingClass:"class:TileGrid"
    },
    "class:SectionHeader":{
        methods:[
            "method:SectionHeader.getSectionStack",
            "method:SectionHeader.titleClipped",
            "method:SectionHeader.titleHoverHTML",
            "method:SectionHeader.titleHover"
        ],
        ref:"class:SectionHeader",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/SectionStack"
        ],
        attrs:[
            "attr:SectionHeader.title",
            "attr:SectionHeader.clipTitle",
            "attr:SectionHeader.showClippedTitleOnHover",
            "attr:SectionHeader.controls",
            "attr:SectionHeader.controlsLayout",
            "attr:SectionHeader.icon",
            "attr:SectionHeader.baseStyle",
            "attr:SectionHeader.noDoubleClicks"
        ],
        description:"Simple SectionHeader class based on a Label with an icon, skinnable via CSS.",
        name:"SectionHeader",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ScriptTask.getInputRecord":{
        ref:"method:ScriptTask.getInputRecord",
        flags:"",
        description:" Get all inputs to the task as specified by the \n ${isc.DocUtils.linkForRef('attr:Task.inputFieldList','inputFieldList')}, as a Record.\n",
        name:"getInputRecord",
        seeAlso:[
        ],
        returns:{
            description:"input data",
            type:"Record"
        },
        type:"method",
        definingClass:"class:ScriptTask",
        groups:[
            "taskIO"
        ]
    },
    "attr:Splitbar.hSrc":{
        ref:"attr:Splitbar.hSrc",
        flags:"IR",
        description:"Base URL for the image if ${isc.DocUtils.linkForRef('attr:StretchImg.vertical')} is false and \n ${isc.DocUtils.linkForRef('attr:StretchImg.src')} is unset.",
        name:"hSrc",
        seeAlso:[
            {
                ref:"attr:StretchImg.src",
                description:null
            },
            {
                ref:"attr:StretchImg.vSrc",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "appearance"
        ]
    },
    "method:Menu.getSubmenu":{
        ref:"method:Menu.getSubmenu",
        flags:"A",
        description:" Get the submenu for a particular menu item.\n <P>\n Override to provide dynamic generation of submenus.\n\n",
        name:"getSubmenu",
        seeAlso:[
        ],
        params:[
            {
                description:"the item in question, or it's index",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem | number"
            }
        ],
        returns:{
            description:"the submenu",
            type:"Menu"
        },
        type:"method",
        definingClass:"class:Menu"
    },
    "method:Class.setProperties":{
        ref:"method:Class.setProperties",
        flags:"",
        description:" Set multiple properties on an object, calling the appropriate setter methods if any are\n found.\n <p>\n Whenever you set a property on an ISC component, you should call either the specific setter\n for that property, or <code>setProperty()/setProperties()</code> if it doesn't have one.\n This future-proofs your code against the later addition of required setters.\n <p>\n With <code>setProperties()</code> in particular, some classes may be able to take shortcuts\n and be more efficient when 2 or more related properties are set at the same time.\n\n",
        name:"setProperties",
        seeAlso:[
            {
                ref:"method:Class.setProperty",
                description:null
            }
        ],
        params:[
            {
                description:"objects with properties to add (think named parameters).\t\t\t\t\t\t\t\t\t\tall the properties of each argument will be applied one\n\t\t\t\t\t\t\t\t\t\tafter another so later properties will override",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:StretchImgButton.state":{
        ref:"attr:StretchImgButton.state",
        flags:"IRWA",
        getter:[
            "getState"
        ],
        description:"Current \"state\" of this widget. The state setting is automatically updated as the \n user interacts with the component (see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')}, \n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')}, ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')}).\n <P>\n StatefulCanvases will have a different appearance based\n on their current state. \n By default this is handled by changing the css className applied to\n the StatefulCanvas - see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.baseStyle')} and \n ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of how this is done.\n <P>\n For ${isc.DocUtils.linkForRef('class:Img')} or ${isc.DocUtils.linkForRef('class:StretchImg')} based subclasses of StatefulCanvas, the \n appearance may also be updated by changing the src of the rendered image. See\n ${isc.DocUtils.linkForRef('attr:Img.src')} and ${isc.DocUtils.linkForRef('attr:StretchImgButton.src')} for a description of how the URL \n is modified to reflect the state of the widget in this case.",
        name:"state",
        setter:[
            "setState"
        ],
        seeAlso:[
            {
                ref:"type:State",
                description:null
            },
            {
                ref:"group:state",
                description:null
            }
        ],
        valueType:"State",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "class:Date":{
        methods:[
            "method:Date.duplicate",
            "method:Date.getShortDayName",
            "method:Date.getDayName",
            "method:Date.getShortMonthName",
            "method:Date.getMonthName",
            "method:Date.getShortYear",
            "method:Date.getWeek",
            "method:Date.getFiscalYear",
            "method:Date.getFiscalWeek",
            "method:Date.toDateStamp",
            "method:Date.toNormalDate",
            "method:Date.toNormalDatetime",
            "method:Date.toShortDate",
            "method:Date.toShortDateTime",
            "method:Date.setDefaultDateSeparator",
            "method:Date.getDefaultDateSeparator",
            "method:Date.toUSShortDate",
            "method:Date.toUSShortDateTime",
            "method:Date.toEuropeanShortDate",
            "method:Date.toEuropeanShortDateTime",
            "method:Date.toJapanShortDate",
            "method:Date.toJapanShortDateTime",
            "method:Date.toSerializeableDate",
            "method:Date.setFormatter",
            "method:Date.toPrettyString"
        ],
        ref:"class:Date",
        classAttrs:[
            "classAttr:Date.shortDayNames",
            "classAttr:Date.dayNames",
            "classAttr:Date.shortMonthNames",
            "classAttr:Date.monthNames",
            "classAttr:Date.weekendDays"
        ],
        classMethods:[
            "classMethod:Date.create",
            "classMethod:Date.createLogicalDate",
            "classMethod:Date.createLogicalTime",
            "classMethod:Date.getLogicalDateOnly",
            "classMethod:Date.getLogicalTimeOnly",
            "classMethod:Date.combineLogicalDateAndTime",
            "classMethod:Date.compareDates",
            "classMethod:Date.compareLogicalDates",
            "classMethod:Date.setInputFormat",
            "classMethod:Date.getInputFormat",
            "classMethod:Date.parseInput",
            "classMethod:Date.setNormalDisplayFormat",
            "classMethod:Date.setNormalDatetimeDisplayFormat",
            "classMethod:Date.setShortDisplayFormat",
            "classMethod:Date.setDefaultDateSeparator",
            "classMethod:Date.getDefaultDateSeparator",
            "classMethod:Date.setShortDatetimeDisplayFormat",
            "classMethod:Date.setFiscalCalendar",
            "classMethod:Date.getFiscalCalendar",
            "classMethod:Date.getFiscalStartDate",
            "classMethod:Date.setShowChooserFiscalYearPickers",
            "classMethod:Date.setShowChooserWeekPickers",
            "classMethod:Date.setFirstDayOfWeek",
            "classMethod:Date.getFirstDayOfWeek",
            "classMethod:Date.getFiscalYear",
            "classMethod:Date.getFiscalWeek",
            "classMethod:Date.setWeekendDays",
            "classMethod:Date.getWeekendDays"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Extensions to the Date class, including added static methods on the Date object, and\n  additional instance methods available on all date instances.",
        name:"Date",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Calendar.showWeekends":{
        ref:"attr:Calendar.showWeekends",
        flags:"IR",
        description:"Suppresses the display of weekend days in the week and month views, and disallows the\n creation of events on weekends.  Which days are considered weekends is controlled by\n ${isc.DocUtils.linkForRef('classAttr:Date.weekendDays')}.",
        name:"showWeekends",
        setter:[
            "setShowWeekends"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "visibility"
        ]
    },
    "method:DataSource.copyRecord":{
        ref:"method:DataSource.copyRecord",
        flags:"",
        description:" Copies all DataSource field values of a Record (including a TreeNode) to a new \n Record, omitting component-specific metadata such as selected state from grids, \n or parent folders for TreeNodes.\n",
        name:"copyRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"The record to be copied.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"A new copy of the record provided as an argument, with  component-specific metata data removed.",
            type:"Record"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:Slider.setMinValue":{
        ref:"method:Slider.setMinValue",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.minValue','minimum value')} of the slider \n\n",
        name:"setMinValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new minimum value <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "method:DrawGroup.mouseOut":{
        ref:"method:DrawGroup.mouseOut",
        flags:"",
        description:" Notification fired when the mouse leaves this DrawGroup.\n <p>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n",
        name:"mouseOut",
        seeAlso:[
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:FacetChart.dataAxisLabelProperties":{
        ref:"attr:FacetChart.dataAxisLabelProperties",
        flags:"IRW",
        description:"Properties for labels of data axis.",
        name:"dataAxisLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:Flashlet.getFlashVersion":{
        ref:"classMethod:Flashlet.getFlashVersion",
        flags:"",
        description:" Which version of Flash is installed on this browser?\n",
        name:"getFlashVersion",
        seeAlso:[
        ],
        returns:{
            description:"flash version number, or null if flash is not installed",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Flashlet"
    },
    "attr:Applet.code":{
        ref:"attr:Applet.code",
        flags:"IR",
        description:"A URL that points to the class of the applet.",
        name:"code",
        seeAlso:[
            {
                ref:"attr:Applet.codeBase",
                description:null
            },
            {
                ref:"attr:Applet.archive",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "method:ValuesManager.clearFieldErrors":{
        ref:"method:ValuesManager.clearFieldErrors",
        flags:"",
        description:" Clear all validation errors associated with some field in this form\n",
        name:"clearFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"field for which errors should be cleared",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"if true, and the field is present in one of our member forms,                        redraw it to clear any currently visible validation errors",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "attr:DecisionGateway.defaultElement":{
        ref:"attr:DecisionGateway.defaultElement",
        flags:"IR",
        description:"Next element to pick if no criteria match.  If this gateway is part of a\n ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} and has a next element in the sequence, the\n <code>defaultElement</code> is assumed to be the next element and does not need to be\n specified.",
        name:"defaultElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DecisionGateway"
    },
    "method:FacetChart.getYCoord":{
        ref:"method:FacetChart.getYCoord",
        flags:"",
        description:"  Returns the Y coordination where the passed data value would be drawn.  \n For example, this would be the Y coordinate that a line would pass through on\n a line chart, or the top of a column on a column chart.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n <P>\n If the ${isc.DocUtils.linkForRef('type:ChartType')} is \"Area\", \"Column\", \"Line\", or \"Scatter\" then the\n <code>value</code> argument should be a number.  For \"Bar\" charts this method expects\n a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that uniquely identifies the data cell whose y-axis coordinate to\n retrieve.\n\n",
        name:"getYCoord",
        seeAlso:[
        ],
        params:[
            {
                description:"the value to be drawn.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float | FacetValueMap"
            }
        ],
        returns:{
            description:"the Y coordinate where the passed data value would be drawn.",
            type:"float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "group:treeFilter":{
        ref:"group:treeFilter",
        refs:[
            "method:Tree.getFilteredTree",
            "type:TreeFilterMode"
        ],
        name:"treeFilter",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:DateUtil.getAbsoluteDate":{
        ref:"classMethod:DateUtil.getAbsoluteDate",
        flags:"",
        description:"  Converts a ${isc.DocUtils.linkForRef('object:RelativeDate')}, ${isc.DocUtils.linkForRef('type:RelativeDateShortcut')} or ${isc.DocUtils.linkForRef('type:RelativeDateString')} \n to a concrete Date.\n",
        name:"getAbsoluteDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the relative   date to convert",
                optional:false,
                name:"relativeDate",
                defaultValue:null,
                type:"RelativeDate or RelativeDateShortcut or RelativeDateString"
            },
            {
                description:"base value for conversion.  Defaults to the current date/time.",
                optional:true,
                name:"baseDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"optional date-range position. Only has an effect   if the date passed in is a ${isc.DocUtils.linkForRef('type:RelativeDateShortcut')} where the range position \n   is not implicit, such as \"$yesterday\"",
                optional:true,
                name:"rangePosition",
                defaultValue:null,
                type:"RelativeDateRangePosition"
            },
            {
                description:"should the generated date be marked as a \"logical\" date? A   logical date object is a Date value where the time component is ignored for formatting and\n   serialization purposes - such as the date displayed within a component field of\n   specified type \"date\". See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more on logical dates vs\n   datetime type values.",
                optional:true,
                name:"isLogicalDate",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"resulting absolute date value",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:DateUtil"
    },
    "attr:ColorPicker.swatchHeight":{
        ref:"attr:ColorPicker.swatchHeight",
        flags:"IR",
        description:"Displayed height of the color swatch image. The default height is approximately\n that used by the Windows&#174; XP color picking window",
        name:"swatchHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"170",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:FormulaBuilder.mathFunctions":{
        ref:"attr:FormulaBuilder.mathFunctions",
        flags:"IR",
        description:"The list of math functions available in this FormulaBuilder, as an array of \n ${isc.DocUtils.linkForRef('class:MathFunction','MathFunction')} names.\n <P>\n The following function list is supported in FormulaBuilders by default: min(), max(), \n round(), ceil(), floor(), abs(), pow(), sin(), cos(), tan(), ln() and log().",
        name:"mathFunctions",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:TabSet.setTabProperties":{
        ref:"method:TabSet.setTabProperties",
        flags:"A",
        description:" Apply properties to an existing tab in a tabSet.\n",
        name:"setTabProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"Identifier for the tab to be modified",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | number | ID | name"
            },
            {
                description:"Javascript object containing the set of properties to be applied  to the tab.",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:Calendar.detailsButtonTitle":{
        ref:"attr:Calendar.detailsButtonTitle",
        flags:"IR",
        description:"The title for the edit button in the quick event dialog",
        name:"detailsButtonTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Edit Details\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "type:RelativeDateRangePosition":{
        ref:"type:RelativeDateRangePosition",
        values:[
            {
                description:"Indicates this relative date should be treated as the start of the specified    logical date.",
                value:"\"start\""
            },
            {
                description:"Indicates this relative date should be treated as the end of the specified logical    date.",
                value:"\"end\""
            }
        ],
        description:"When  relative dates are specified in a date range, typically in a RelativeDateItem or\n DateRangeItem, in order to make the range inclusive or exclusive, it is useful to be able \n to specify whether we're referring to the start or end of the date in question.",
        name:"RelativeDateRangePosition",
        seeAlso:[
        ],
        type:"type"
    },
    "method:FormItem.defaultDynamicValue":{
        ref:"method:FormItem.defaultDynamicValue",
        flags:"A",
        description:" Expression evaluated to determine the ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} when no value is \n provided for this item.\n <P>\n If you don't need dynamic evaluation, you can just use <code>item.defaultValue</code>.\n\n",
        name:"defaultDynamicValue",
        seeAlso:[
            {
                ref:"attr:FormItem.defaultValue",
                description:null
            }
        ],
        params:[
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the current set of values for the form as a whole",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "formValues"
        ]
    },
    "method:Class.getDefaultLogPriority":{
        ref:"method:Class.getDefaultLogPriority",
        flags:"",
        description:" Retrieves the default priority of messages for this class or instance.\n",
        name:"getDefaultLogPriority",
        seeAlso:[
        ],
        returns:{
            description:"default priority for logging messages on this object.",
            type:"LogPriority"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "object:SerializationContext":{
        methods:[
        ],
        ref:"object:SerializationContext",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
            "attr:SerializationContext.useFlatFields"
        ],
        description:"Flags for XML serialization",
        name:"SerializationContext",
        seeAlso:[
        ],
        type:"object"
    },
    "method:SelectItem.getDisplayFieldName":{
        ref:"method:SelectItem.getDisplayFieldName",
        flags:"A",
        description:" Returns the <code>displayField</code> for this item. This will typically be\n specified explicitly via the ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} attribute. However, if \n that property is unset, and the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item is \n hidden in the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}, this method\n will return the title field for the <code>optionDataSource</code>.\n\n",
        name:"getDisplayFieldName",
        seeAlso:[
        ],
        returns:{
            description:"display field name, or null if there is no separate display field to use.",
            type:"String"
        },
        type:"method",
        definingClass:"class:SelectItem"
    },
    "method:FormItem.getVisibleHeight":{
        ref:"method:FormItem.getVisibleHeight",
        flags:"A",
        description:"\tOutput the drawn height for this item in pixels.\n  Note: this is only reliable after this item has been written out into the DOM.\n",
        name:"getVisibleHeight",
        seeAlso:[
        ],
        returns:{
            description:"height of the form item",
            type:"integer"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "sizing"
        ]
    },
    "attr:SliderItem.roundValues":{
        ref:"attr:SliderItem.roundValues",
        flags:"IR",
        description:"Specifies whether the slider value should be rounded to the nearest integer.  If set to\n false, values will be rounded to a fixed number of decimal places controlled by\n ${isc.DocUtils.linkForRef('attr:SliderItem.roundPrecision')}.",
        name:"roundValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sliderItem')}"
        ],
        definingClass:"class:SliderItem"
    },
    "method:DetailViewer.emptyMessageHTML":{
        ref:"method:DetailViewer.emptyMessageHTML",
        flags:"A",
        description:" Return the message to show if the component has no data. Default implementation returns a \n centered ${isc.DocUtils.linkForRef('attr:DetailViewer.emptyMessage')} or \"&amp;nbsp;\" if showEmptyMessage is false.  If\n the component has no data because the browser is offline, we instead display the \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.offlineMessage')} or \"&amp;nbsp;\" if showOfflineMessage is false\n",
        name:"emptyMessageHTML",
        seeAlso:[
        ],
        returns:{
            description:"HTML output",
            type:"string"
        },
        type:"method",
        definingClass:"class:DetailViewer"
    },
    "attr:HTMLFlow.allowCaching":{
        ref:"attr:HTMLFlow.allowCaching",
        flags:"IR",
        description:"By default an HTMLFlow will explicitly prevent browser caching.\n <P>\n Set to true to allow browser caching <b>if the browser would normally do so</b>, in other\n words, if the HTTP headers returned with the response indicate that the response can be\n cached.",
        name:"allowCaching",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:HTMLFlow"
    },
    "attr:DetailViewer.emptyMessageStyle":{
        ref:"attr:DetailViewer.emptyMessageStyle",
        flags:"IRWA",
        description:"CSS style to display this message in",
        name:"emptyMessageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "emptyMessage"
        ]
    },
    "attr:JSONEncoder.circularReferenceMode":{
        ref:"attr:JSONEncoder.circularReferenceMode",
        flags:"IR",
        description:"What the JSONEncoder should do if it encounters a circular reference.",
        name:"circularReferenceMode",
        seeAlso:[
        ],
        valueType:"JSONCircularReferenceMode",
        defaultValue:"\"path\"",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:ListGrid.data":{
        ref:"attr:ListGrid.data",
        flags:"IRW",
        description:"A list of ListGridRecord objects, specifying the data to be used to populate the\n ListGrid.  In ListGrids, the data array specifies rows.\n <p>\n When using a ${isc.DocUtils.linkForRef('class:DataSource')}, rather than directly provide <code>data</code>, you will\n typically call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} instead, which will automatically establish\n <code>data</code> as a ${isc.DocUtils.linkForRef('class:ResultSet')} (see the ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} docs for details).\n <p>\n If you call <code>fetchData</code>, any previously supplied <code>data</code> is\n discarded.  Also, it is not necessary to call <code>setData()</code> after calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}.\n <p>\n When calling <code>setData()</code><smartgwt>,\n if <code>data</code> is provided as a RecordList or ResultSet</smartgwt>, direct changes to\n the list such as adding or removing records will be automatically observed and the\n ListGrid will redraw in response.  Direct changes to individual Records will not be\n automatically observed and require calls to ${isc.DocUtils.linkForRef('method:ListGrid.refreshCell')} or ${isc.DocUtils.linkForRef('method:ListGrid.refreshRow')}\n to cause the ListGrid to visually update.  Calling methods such as\n ${isc.DocUtils.linkForRef('method:ListGrid.updateData')}, ${isc.DocUtils.linkForRef('method:ListGrid.removeData')} or ${isc.DocUtils.linkForRef('method:ListGrid.addData')} always causes\n automatic visual refresh.",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
            {
                ref:"object:ListGridRecord",
                description:null
            }
        ],
        valueType:"List of ListGridRecord",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('inlineData')}",
            "${isc.DocUtils.linkForExampleId('localData')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "data"
        ]
    },
    "classMethod:Canvas.getById":{
        ref:"classMethod:Canvas.getById",
        flags:"",
        description:" Retrieve a Canvas by it's global ${isc.DocUtils.linkForRef('attr:Canvas.ID','ID')}.\n",
        name:"getById",
        seeAlso:[
        ],
        params:[
            {
                description:"global ID of the Canvas",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the Canvas, or null if not found",
            type:"Canvas"
        },
        type:"classMethod",
        definingClass:"class:Canvas"
    },
    "group:Hovers":{
        ref:"group:Hovers",
        refs:[
            "method:DynamicForm.itemHoverHTML",
            "method:DynamicForm.titleHoverHTML",
            "method:DynamicForm.valueHoverHTML",
            "method:FormItem.stopHover",
            "method:FormItem.itemHover",
            "method:FormItem.titleHover",
            "method:FormItem.valueHover",
            "method:FormItem.titleHoverHTML",
            "method:FormItem.valueHoverHTML",
            "method:FormItem.itemHoverHTML",
            "method:RadioGroupItem.valueHoverHTML",
            "attr:DynamicForm.itemHoverDelay",
            "attr:DynamicForm.itemHoverWidth",
            "attr:DynamicForm.itemHoverHeight",
            "attr:DynamicForm.itemHoverAlign",
            "attr:DynamicForm.itemHoverVAlign",
            "attr:DynamicForm.itemHoverStyle",
            "attr:DynamicForm.itemHoverOpacity",
            "attr:FormItem.hoverDelay",
            "attr:FormItem.hoverWidth",
            "attr:FormItem.hoverHeight",
            "attr:FormItem.hoverAlign",
            "attr:FormItem.hoverVAlign",
            "attr:FormItem.hoverStyle",
            "attr:FormItem.hoverOpacity",
            "attr:FormItem.showClippedTitleOnHover",
            "attr:FormItem.showClippedValueOnHover"
        ],
        name:"Hovers",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DataBoundComponent.includeHilitesInSummaryFields":{
        ref:"attr:DataBoundComponent.includeHilitesInSummaryFields",
        flags:"IRWA",
        description:"When assembling a value for a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.canAddSummaryFields','summary field')}, if a referenced\n field is hilited, should the hilite HTML be included in the summary field value?\n <P>\n To control hilites showing in group summaries, see ${isc.DocUtils.linkForRef('attr:ListGrid.showHilitesInGroupSummary','showHilitesInGroupSummary')}.",
        name:"includeHilitesInSummaryFields",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.shouldIncludeHiliteInSummaryField",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:Window.animateMinimize":{
        ref:"attr:Window.animateMinimize",
        flags:"IRWA",
        description:"Should this window minimize, maximize, and restore as an animation, or as a \n simple 1-step transition?",
        name:"animateMinimize",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('windowMinimize')}"
        ],
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header",
            "animation"
        ]
    },
    "attr:OperationBinding.recordName":{
        ref:"attr:OperationBinding.recordName",
        flags:"IR",
        description:"For an XML DataSource, tagName of the elements to be used as records.\n <p>\n This is a simple alternative to ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath')} when the elements to be used as\n records all share a tagName.\n <p>\n When a DataSource has a WebService, <code>recordName</code> can also be set to the name\n of any <code>complexType</code> declared within the WebService's WSDL file.",
        name:"recordName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('wsdlBinding')}"
        ],
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:Layout.resizeBarClass":{
        ref:"attr:Layout.resizeBarClass",
        flags:"AIRW",
        description:"Default class to use for creating ${isc.DocUtils.linkForRef('attr:Layout.resizeBar','resizeBars')}. This may be\n overridden by <code>resizeBarConstructor</code>.\n <p>\n Classes that are valid by default are ${isc.DocUtils.linkForRef('class:Splitbar')}, ${isc.DocUtils.linkForRef('class:ImgSplitbar')}, and\n ${isc.DocUtils.linkForRef('class:Snapbar')}.",
        name:"resizeBarClass",
        seeAlso:[
            {
                ref:"class:Splitbar",
                description:null
            },
            {
                ref:"class:ImgSplitbar",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"Splitbar\"",
        type:"attr",
        definingClass:"class:Layout"
    },
    "classMethod:Date.combineLogicalDateAndTime":{
        ref:"classMethod:Date.combineLogicalDateAndTime",
        flags:"",
        description:" Combine a logical date (a value appropriate for a DataSourceField of type \"date\") with a\n logical time (a value appropriate for a DataSourceField of type \"time\") into a datetime\n value (a value appropriate for a DataSourceField of type \"datetime\")\n <P>\n This method correctly takes into account the current\n ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone','display timezone')}, specifically, the returned datetime\n value will show the same date and time as the passed date and time objects when rendered by\n a SmartClient component that has been configured with a field of type \"datetime\".\n <P>\n For further background on date, time and datetime types, storage and transmission, see\n ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','this overview')}.\n\n",
        name:"combineLogicalDateAndTime",
        seeAlso:[
        ],
        params:[
            {
                description:"a Date instance representing logical date value",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"a Date instance representing logical time value",
                optional:false,
                name:"time",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"a Date instance representing a datetime value combining the logical date and                time passed",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:ListGrid.canEdit":{
        ref:"attr:ListGrid.canEdit",
        flags:"IRW",
        description:"Can the user edit cells in this listGrid? Can be set for the listGrid, and overridden for\n      individual fields.<br>\n      If 'canEdit' is false at the listGrid level, fields can never be edited - in this case\n      the canEdit property on individual fields will be ignored.<br>\n      If 'canEdit' is set to true at the listGrid level, setting the 'canEdit' property to\n      false at the field level will prevent the field from being edited inline.<br>\n      If 'canEdit' is not set at the listGrid level, setting 'canEdit' to true at the field\n      level enables the field to be edited inline.",
        name:"canEdit",
        seeAlso:[
            {
                ref:"method:ListGrid.startEditing",
                description:null
            },
            {
                ref:"attr:ListGridField.canEdit",
                description:null
            },
            {
                ref:"attr:ListGrid.recordEditProperty",
                description:null
            },
            {
                ref:"method:ListGrid.canEditCell",
                description:null
            },
            {
                ref:"attr:ListGrid.fields",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('editByRow')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:FacetChart.useSymmetricStandardDeviations":{
        ref:"attr:FacetChart.useSymmetricStandardDeviations",
        flags:"IR",
        description:"Whether to display both the positive and negative of the\n ${isc.DocUtils.linkForRef('attr:FacetChart.standardDeviations','standard deviations')}.",
        name:"useSymmetricStandardDeviations",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:UserSummary.text":{
        ref:"attr:UserSummary.text",
        flags:"IRW",
        description:"Summary to be evaluated.  All variables used by the summary must be all-capital letter\n names surrounded by braces and escaped with a # sign (eg #{A}).  These are derived\n from field values for the record in question - see ${isc.DocUtils.linkForRef('attr:UserSummary.summaryVars')}.",
        name:"text",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:UserSummary"
    },
    "attr:ToolStrip.formWrapperConstructor":{
        ref:"attr:ToolStrip.formWrapperConstructor",
        flags:"IRA",
        description:"SmartClient class for generated ${isc.DocUtils.linkForRef('attr:ToolStrip.formWrapper')} components.",
        name:"formWrapperConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"DynamicForm\"",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "attr:DataBoundComponent.editHilitesDialogTitle":{
        ref:"attr:DataBoundComponent.editHilitesDialogTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites','Hilite Editor')} dialog.",
        name:"editHilitesDialogTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Edit Highlights\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Menu.iconHeight":{
        ref:"attr:Menu.iconHeight",
        flags:"IRW",
        description:"The default height applied to custom icons in this menu. This is used whenever\n          item.iconHeight is not specified.",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:Menu"
    },
    "class:ToolStrip":{
        methods:[
            "method:ToolStrip.addFormItem"
        ],
        ref:"class:ToolStrip",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:ToolStrip.members",
            "attr:ToolStrip.height",
            "attr:ToolStrip.verticalStyleName",
            "attr:ToolStrip.vertical",
            "attr:ToolStrip.resizeBarClass",
            "attr:ToolStrip.resizeBarSize",
            "attr:ToolStrip.separatorClass",
            "attr:ToolStrip.separatorSize",
            "attr:ToolStrip.showGroupTitle",
            "attr:ToolStrip.groupTitleAlign",
            "attr:ToolStrip.groupTitleOrientation",
            "attr:ToolStrip.formWrapper",
            "attr:ToolStrip.formWrapperConstructor",
            "attr:ToolStrip.formWrapperDefaults",
            "attr:ToolStrip.formWrapperProperties"
        ],
        description:"Base class for creating toolstrips like those found in browsers and office applications: a\n mixed set of controls including ${isc.DocUtils.linkForRef('class:ImgButton','icon buttons')}, \n ${isc.DocUtils.linkForRef('attr:Button.radioGroup','radio button groups')}, ${isc.DocUtils.linkForRef('class:MenuButton','menus')},\n ${isc.DocUtils.linkForRef('class:ComboBoxItem','comboBoxes')}, ${isc.DocUtils.linkForRef('class:LayoutSpacer','spacers')}, ${isc.DocUtils.linkForRef('class:Label','status displays')} and \n ${isc.DocUtils.linkForRef('class:SelectItem','drop-down selects')}.  \n <P>\n All of the above components are placed in the ${isc.DocUtils.linkForRef('attr:ToolStrip.members','members array')} to form\n a ToolStrip.  Note that the ${isc.DocUtils.linkForRef('class:FormItem','FormItems')} mentioned above (ComboBox and\n drop-down selects) need to be placed within a ${isc.DocUtils.linkForRef('class:DynamicForm')} as usual.\n <P>\n The special strings \"separator\" and \"resizer\" can be placed in the members array to create\n separators and resizers respectively.\n <P>\n Also see the ${isc.DocUtils.linkForExampleId('toolstrip')} example in the Feature Explorer.",
        name:"ToolStrip",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('toolstrip')}"
        ]
    },
    "classAttr:RPCResponse.STATUS_OFFLINE":{
        ref:"classAttr:RPCResponse.STATUS_OFFLINE",
        flags:"R",
        description:"Indicates that the browser is currently offline, and that we do not hold a cached \n response for the request.",
        name:"STATUS_OFFLINE",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"1",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes",
            "offlineGroup"
        ]
    },
    "method:TextAreaItem.selectValue":{
        ref:"method:TextAreaItem.selectValue",
        flags:"",
        description:" Put focus in this item and select the entire value.\n Only applies to text based items\n",
        name:"selectValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TextAreaItem"
    },
    "method:UserTask.completeEditing":{
        ref:"method:UserTask.completeEditing",
        flags:"",
        description:" Finish editing and store edited values in ${isc.DocUtils.linkForRef('attr:Process.state','process state')}.  \n",
        name:"completeEditing",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:UserTask"
    },
    "attr:DynamicForm.action":{
        ref:"attr:DynamicForm.action",
        flags:"IRW",
        description:"The URL to which the form will submit its values.\n <p>\n <b>NOTE:</b> this is used only in the very rare case that a form is used to submit data\n directly to a URL.  Normal server contact is through RPCManager.<br>\n See ${isc.DocUtils.linkForRef('attr:DynamicForm.canSubmit')} for more on this.",
        name:"action",
        setter:[
            "setAction"
        ],
        seeAlso:[
            {
                ref:"group:operations",
                description:null
            },
            {
                ref:"class:RPCManager",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"#\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "attr:OperationBinding.defaultParams":{
        ref:"attr:OperationBinding.defaultParams",
        flags:"IRA",
        description:"HTTP parameters that should be submitted with every DSRequest.\n <P>\n Useful for authenticated services that require a sessionId with every request.\n <P>\n Can be set for all operations of a given DataSource as DataSource.defaultParams.",
        name:"defaultParams",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:DSRequest.textMatchStyle":{
        ref:"attr:DSRequest.textMatchStyle",
        flags:"IR",
        description:"For \"fetch\" operations, how search criteria should be interpreted for text fields: one of\n \"exact\" for exact match, \"exactCase\" for case-sensitive exact match, \"startsWith\" for \n matching at the beginning only, or \"substring\" for substring match.  All \n <code>textMatchStyle</code> settings except \"exactCase\" are case-insensitive; use\n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} for greater control over matching.\n <p>\n This property defaults to the value of ${isc.DocUtils.linkForRef('attr:DataSource.defaultTextMatchStyle')} if it is not\n explicitly provided on the <code>DSRequest</code>.  Note, however, that DSRequests issued \n by ${isc.DocUtils.linkForRef('class:ListGrid')}s and other ${isc.DocUtils.linkForRef('interface:DataBoundComponent','components')} will generally have a \n setting for textMatchStyle on the component itself \n (see ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle')}, for example).\n <p>\n This setting is respected by the built-in server-side connectors for SQL, JPA and Hibernate.\n A custom server-side DataSource implementation should generally respect this flag as well,\n or server-side filtering will not match client-side filtering, which will require\n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering','disabling client-side filtering')}, a huge performance\n loss.",
        name:"textMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:StretchImgButton.titleHoverHTML":{
        ref:"method:StretchImgButton.titleHoverHTML",
        flags:"",
        description:" Returns the HTML that is displayed by the default ${isc.DocUtils.linkForRef('method:StretchImgButton.titleHover','titleHover')}\n handler. Return null or an empty string to cancel the hover.\n <smartgwt><p>Use <code>setTitleHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n",
        name:"titleHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "attr:DSRequest.exportPath":{
        ref:"attr:DSRequest.exportPath",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DSRequest.exportToFilesystem','exportToFilesystem')} is set, optionally specifies a \n path to use when saving the file.  This path is relative to the default export path, which\n is set using the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} setting <code>export.location</code>; this\n is the project webRoot by default.  For example, with the default setting of \n <code>export.location</code>, an <code>exportPath</code> of <code>\"shared/ds\"</code> and \n an ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename','exportFilename')} of <code>\"exportedData.csv\"</code>,\n SmartClient Server would export to file <code>$webRoot/shared/ds/exportedData.csv</code>.\n <p>\n If you do not specify this property, SmartClient Server will export to the file indicated \n by <code>exportFilename</code> directly in the default export location.\n <p>\n This property is only applicable when ${isc.DocUtils.linkForRef('attr:DSRequest.exportToFilesystem','exportToFilesystem')}\n is set.",
        name:"exportPath",
        seeAlso:[
            {
                ref:"attr:DSRequest.exportFilename",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:SelectItem.pickerIconStyle":{
        ref:"attr:SelectItem.pickerIconStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's picker icon cell. If unset, inherits from\n this item's ${isc.DocUtils.linkForRef('attr:SelectItem.controlStyle','controlStyle')}.",
        name:"pickerIconStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"selectItemPickerIcon\"",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "pickerIcon",
            "appearance"
        ]
    },
    "attr:FormItem.errorIconHeight":{
        ref:"attr:FormItem.errorIconHeight",
        flags:"IRW",
        description:"Height of the error icon, if we're showing icons when validation errors occur.",
        name:"errorIconHeight",
        seeAlso:[
            {
                ref:"attr:FormItem.showErrorIcon",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "errorIcon"
        ]
    },
    "class:RibbonGroup":{
        methods:[
            "method:RibbonGroup.createControl"
        ],
        ref:"class:RibbonGroup",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:RibbonGroup.newControlConstructor",
            "attr:RibbonGroup.newControlDefaults"
        ],
        description:"A widget that groups other controls for use in ${isc.DocUtils.linkForRef('class:RibbonBar','RibbonBars')}.",
        name:"RibbonGroup",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:GridRenderer.scrollWheelRedrawDelay":{
        ref:"attr:GridRenderer.scrollWheelRedrawDelay",
        flags:"IRW",
        description:"While scrolling an incrementally rendered grid, using the mouseWheel, time in \n milliseconds to wait before redrawing, after the last mouseWheel movement by the user.  \n If not specified ${isc.DocUtils.linkForRef('attr:GridRenderer.scrollRedrawDelay')} will be used as a default for both\n drag scrolling and mouseWheel scrolling.\n <P>\n See also\n ${isc.DocUtils.linkForRef('attr:GridRenderer.instantScrollTrackRedraw')} for cases where this delay is skipped.",
        name:"scrollWheelRedrawDelay",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "type:MoveKnobPoint":{
        ref:"type:MoveKnobPoint",
        values:[
            {
                description:"Top Left corner",
                value:"\"TL\""
            },
            {
                description:"Top Right corner",
                value:"\"TR\""
            },
            {
                description:"Bottom Left corner",
                value:"\"BL\""
            },
            {
                description:"Bottom Right corner",
                value:"\"BR\""
            }
        ],
        description:"Specifies the starting point of a move knob with respect to its draw item. The move knob is\n positioned relative to the move knob point at the ${isc.DocUtils.linkForRef('attr:DrawItem.moveKnobOffset')}.",
        name:"MoveKnobPoint",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:NavigationButton.baseStyle":{
        ref:"attr:NavigationButton.baseStyle",
        flags:"IRW",
        description:"Default baseStyle for navigation buttons. Note that the special ${isc.DocUtils.linkForRef('attr:NavigationButton.backBaseStyle')} and\n ${isc.DocUtils.linkForRef('attr:NavigationButton.forwardBaseStyle')} are applied if ${isc.DocUtils.linkForRef('attr:NavigationButton.direction')} is set.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"navButton\"",
        type:"attr",
        definingClass:"class:NavigationButton"
    },
    "group:dsRequestEquivalence":{
        ref:"group:dsRequestEquivalence",
        refs:[
        ],
        description:"Various subsystems have a need to compare DataSource requests and understand if\n they are equivalent or affect the same data (examples include \n ${isc.DocUtils.linkForRef('class:ResultSet','automatic cache synchronization')} and \n ${isc.DocUtils.linkForRef('attr:DataSource.useOfflineStorage','offline caching and synchronization')}).  \n <P>\n Aside from basic properties that would clearly make two DSRequests non-equivalent\n (dataSource, operationType and data, as well as sortBy, startRow, endRow and textMatchStyle\n for a \"fetch\"), ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} is the only property that will cause two\n DSRequests to be considered distinct (non-equivalent) requests. \n <P>\n Bearing this in mind, the best practice is:\n <ul>\n <li> everything that will be treated as criteria or as values on the server side should be\n part of ${isc.DocUtils.linkForRef('attr:DSRequest.data')}.  Do not \"smuggle\" data that will ultimately be used as\n criteria or values in other dsRequest properties, such as \n ${isc.DocUtils.linkForRef('attr:RPCRequest.params','HTTP parameters')}.\n <li> use ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} as the sole piece of information in the request that\n modifies how the request as a whole is executed.  If two or more pieces of information are\n required, combine or encode them into a single operationId String.  If this becomes awkward\n because there are many operation variants, consider including additional fields in\n ${isc.DocUtils.linkForRef('attr:DSRequest.data')} instead.\n </ul>",
        name:"dsRequestEquivalence",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormItem.browserSpellCheck":{
        ref:"attr:FormItem.browserSpellCheck",
        flags:"IRWA",
        description:"If this browser supports spell-checking of text editing elements, do we want this\n enabled for this item? If unset the property will be inherited from the containing form.\n <P>\n Notes:<br>\n - this property only applies to text based items such as TextItem and TextAreaItem.<br>\n - this property is not supported on all browsers.",
        name:"browserSpellCheck",
        seeAlso:[
            {
                ref:"attr:DynamicForm.browserSpellCheck",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:List.getItems":{
        ref:"method:List.getItems",
        flags:"",
        description:" Return the items at a list of specified positions.\n\n",
        name:"getItems",
        seeAlso:[
        ],
        params:[
            {
                description:"array of positions",
                optional:false,
                name:"itemList",
                defaultValue:null,
                type:"List of Number"
            }
        ],
        returns:{
            description:"subset of the array, in the same order as itemList",
            type:"array"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "classMethod:DataSource.get":{
        ref:"classMethod:DataSource.get",
        flags:"",
        description:" Synonym of ${isc.DocUtils.linkForRef('classMethod:DataSource.getDataSource')}: Lookup a DataSource by ID.\n\n",
        name:"get",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource ID",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"identifier"
            }
        ],
        returns:{
            description:"the DataSource with this ID, if loaded, otherwise null.",
            type:"DataSource"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:Calendar.canRemoveEvents":{
        ref:"attr:Calendar.canRemoveEvents",
        flags:"IR",
        description:"If true, users can remove existing events. Defaults to ${isc.DocUtils.linkForRef('attr:Calendar.canEditEvents')}.",
        name:"canRemoveEvents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "allowedOperations"
        ]
    },
    "attr:ListGrid.headerHoverWrap":{
        ref:"attr:ListGrid.headerHoverWrap",
        flags:"IRW",
        description:"This property may be set to customize the <code>wrap</code> attribute for the\n hover shown on ${isc.DocUtils.linkForRef('method:ListGrid.headerHover')}.",
        name:"headerHoverWrap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:GridRenderer.showEmptyMessage":{
        ref:"attr:GridRenderer.showEmptyMessage",
        flags:"IRW",
        description:"Indicates whether the text of the emptyMessage property should be displayed if no data is\n available.",
        name:"showEmptyMessage",
        seeAlso:[
            {
                ref:"attr:GridRenderer.emptyMessage",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "emptyMessage"
        ]
    },
    "method:FacetChart.getRange":{
        ref:"method:FacetChart.getRange",
        flags:"",
        description:" Calculate the range of the data from a single metric.\n <p>\n The first argument, criteria, determines which metric is used to calculate the range.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n",
        name:"getRange",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            }
        ],
        returns:{
            description:"the range of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:ListGridField.editorProperties":{
        ref:"attr:ListGridField.editorProperties",
        flags:"IRWA",
        description:"Properties to apply the the form item created to edit this field. (Only used if\n this field is editable).\n <P>\n For example, if you have a field \"shoeSize\" with ${isc.DocUtils.linkForRef('attr:DataSourceField.editorType')} set\n to \"SpinnerItem\" in order to use a SpinnerItem as your field editor, and you want to pass the\n ${isc.DocUtils.linkForRef('attr:SpinnerItem.step')} property to the created SpinnerItem:\n <pre>\n    fields : [\n        { name:\"shoeSize\", editorType:\"SpinnerItem\",\n          editorProperties : { step:0.5 } },\n        ... other fields ...\n    ]\n </pre>",
        name:"editorProperties",
        seeAlso:[
        ],
        valueType:"FormItem properties",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customEditors')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:SimpleType.format":{
        ref:"attr:SimpleType.format",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} for numeric or date formatting.  See ${isc.DocUtils.linkForRef('attr:DataSourceField.format')}.",
        name:"format",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SimpleType",
        groups:[
            "exportFormatting"
        ]
    },
    "method:Chart.setupChart":{
        ref:"method:Chart.setupChart",
        flags:"",
        description:" General facet and data model setup, including auto-derivation of facetValues from data if\n necessary.  Should be called by any concrete charting implementation before calling any\n other Chart method.\n\n",
        name:"setupChart",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:Chart"
    },
    "class:Task":{
        methods:[
        ],
        ref:"class:Task",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:Task.inputField",
            "attr:Task.inputFieldList",
            "attr:Task.outputField",
            "attr:Task.outputFieldList"
        ],
        description:"A Task is an abstract superclass for ${isc.DocUtils.linkForRef('class:Process')} and for all Task types that can be\n involved in a Process, such as a ${isc.DocUtils.linkForRef('class:ServiceTask')}.",
        name:"Task",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.getRelatedDataSource":{
        ref:"method:ListGrid.getRelatedDataSource",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('class:DataSource')} containing data related to the passed record.  Used\n when ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is true and ${isc.DocUtils.linkForRef('type:ExpansionMode')} is \"related\". The\n default implementation returns the DataSource specified in\n ${isc.DocUtils.linkForRef('attr:ListGridRecord.detailDS')} if set, otherwise ${isc.DocUtils.linkForRef('attr:ListGrid.detailDS')}.\n\n",
        name:"getRelatedDataSource",
        seeAlso:[
        ],
        params:[
            {
                description:"The record to get the Related dataSource for.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"The related DataSource for the \"record\" param",
            type:"DataSource"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DSRequest.operationType":{
        ref:"attr:DSRequest.operationType",
        flags:"IR",
        description:"Type of operation being performed: \"fetch\", \"add\", \"remove\", \"update\" or \"custom\".\n <P>\n This property is generally automatically populated, for example when calling\n <code>fetchData()</code> on a DataSource or DataBound component the operationType is\n automatically set to \"fetch\".  Note that \"custom\" operations are never generated\n automatically, they are always fired by your code.",
        name:"operationType",
        seeAlso:[
        ],
        valueType:"DSOperationType",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "classMethod:Date.getFiscalYear":{
        ref:"classMethod:Date.getFiscalYear",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('object:FiscalYear')} object for the fiscal year in which the passed date exists.\n\n",
        name:"getFiscalYear",
        seeAlso:[
        ],
        params:[
            {
                description:"the date to get the fiscal year for",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date | int"
            },
            {
                description:"the object representing the start of the fiscal period",
                optional:true,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        returns:{
            description:"the ${isc.DocUtils.linkForRef('object:FiscalYear')} object for the passed date",
            type:"FiscalYear"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:DataSource.useFlatFields":{
        ref:"attr:DataSource.useFlatFields",
        flags:"IR",
        description:"Like ${isc.DocUtils.linkForRef('attr:DataBoundComponent.useFlatFields')}, but applies to all DataBound components\n that bind to this DataSource.",
        name:"useFlatFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "attr:FacetValue.borderAfter":{
        ref:"attr:FacetValue.borderAfter",
        flags:"IR",
        description:"CSS line style to apply as a border after this facetValue.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"borderAfter",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:ListGrid.expansionEditorSaveDialogPrompt":{
        ref:"attr:ListGrid.expansionEditorSaveDialogPrompt",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords','canExpandRecords')} is true and\n ${isc.DocUtils.linkForRef('attr:ListGrid.expansionMode','expansionMode')} is <i>editor</i>, the prompt to display\n in a dialog when an expanded row is collapsed while it's nested editor has changed values.",
        name:"expansionEditorSaveDialogPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"You have unsaved changes - do you want to save them now?\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField",
            "i18nMessages"
        ]
    },
    "attr:SortSpecifier.context":{
        ref:"attr:SortSpecifier.context",
        flags:"IR",
        description:"A DataBoundComponent providing the context for the sort-normalizer.",
        name:"context",
        seeAlso:[
        ],
        valueType:"DataBoundComponent",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SortSpecifier"
    },
    "attr:GridRenderer.fixedRowHeights":{
        ref:"attr:GridRenderer.fixedRowHeights",
        flags:"IRWA",
        description:"Should we vertically clip cell contents, or allow rows to expand vertically to show all\n contents?\n <P>\n If we allow rows to expand, the row height as derived from\n ${isc.DocUtils.linkForRef('method:GridRenderer.getRowHeight','getRowHeight()')} or the\n default ${isc.DocUtils.linkForRef('attr:GridRenderer.cellHeight')} is treated as a minimum.",
        name:"fixedRowHeights",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "attr:MultiComboBoxItem.valueLayout":{
        ref:"attr:MultiComboBoxItem.valueLayout",
        flags:"RA",
        description:"The layout used to arrange the ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.comboForm','comboForm')} and the buttons\n representing the values of the MultiComboBoxItem. Note that the constructor cannot be changed\n (setting a valueLayoutConstructor has no effect) because the exact layout class used depends\n on the current ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.layoutStyle','layout style')}.",
        name:"valueLayout",
        seeAlso:[
        ],
        valueType:"MultiAutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:TextAreaItem.minHeight":{
        ref:"attr:TextAreaItem.minHeight",
        flags:"IRW",
        description:"Minimum valid height for this TextAreaItem in px. If the specified ${isc.DocUtils.linkForRef('attr:TextAreaItem.height')}\n is less than this value, the text area will still render at this height.",
        name:"minHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:TextAreaItem"
    },
    "method:FacetChart.getChartRadius":{
        ref:"method:FacetChart.getChartRadius",
        flags:"",
        description:" Returns the radius for radar charts and pie charts.  For stacked pie charts this is radius of\n the outermost pie.\n <P>\n Note that unstacked pie charts draw multiple pies, each with their own radii.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n\n",
        name:"getChartRadius",
        seeAlso:[
        ],
        returns:{
            description:"the radius for radar charts and pie charts.",
            type:"float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Date.getDefaultDateSeparator":{
        ref:"method:Date.getDefaultDateSeparator",
        flags:"",
        description:" gets the default date separator string\n",
        name:"getDefaultDateSeparator",
        seeAlso:[
        ],
        returns:{
            description:"the default date separator",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:MultiSortDialog.levelUpButton":{
        ref:"attr:MultiSortDialog.levelUpButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n sort-levels up in the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.levelUpButtonProperties</code> and \n <code>multiSortPanel.levelUpButtonDefaults</code>.",
        name:"levelUpButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "attr:DynamicForm.titleAlign":{
        ref:"attr:DynamicForm.titleAlign",
        flags:"IRW",
        getter:[
            "getTitleAlign"
        ],
        description:"Default alignment for item titles. If unset default alignment will be derived from\n ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','text direction')} as described in ${isc.DocUtils.linkForRef('method:DynamicForm.getTitleAlign')}",
        name:"titleAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "classAttr:Operators.notContainsTitle":{
        ref:"classAttr:Operators.notContainsTitle",
        flags:"IR",
        description:"Title for the \"notContains\" operator",
        name:"notContainsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not contain (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.escapeHTML":{
        ref:"attr:ListGridField.escapeHTML",
        flags:"IRW",
        description:"By default HTML values in ListGrid cells will be interpreted by the browser.\n Setting this flag to true will causes HTML characters to be escaped, meaning the\n raw value of the field (for example <code>\"&lt;b&gt;AAA&lt;/b&gt;\"</code>) is displayed\n to the user rather than the interpreted HTML (for example <code>\"<b>AAA</b>\"</code>)",
        name:"escapeHTML",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ListGrid.expansionLayout":{
        ref:"attr:ListGrid.expansionLayout",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:VLayout')} which fills a record's expanded section\n and contains other builtin ${isc.DocUtils.linkForRef('type:ExpansionMode','expansion-components')}.  You can also\n override ${isc.DocUtils.linkForRef('method:ListGrid.getExpansionComponent','getExpansionComponent()')} to provide\n components of your own specification.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.expansionLayoutProperties</code> and\n <code>listGrid.expansionLayoutDefaults</code>.\n <P>\n Note, however, that this is a multi-instance component (potentially one per record),\n so it is created using ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')} not\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')}, and no default single instance is created by\n name on the grid.",
        name:"expansionLayout",
        seeAlso:[
        ],
        valueType:"MultiAutoChild VLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "classAttr:Dialog.APPLY_BUTTON_TITLE":{
        ref:"classAttr:Dialog.APPLY_BUTTON_TITLE",
        flags:"IRW",
        description:"Title for the <code>\"Apply\"</code> button.",
        name:"APPLY_BUTTON_TITLE",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"\"Apply\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.exportWrapHeaderTitles":{
        ref:"attr:ListGrid.exportWrapHeaderTitles",
        flags:"IRW",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}, whether titles in the\n ${isc.DocUtils.linkForRef('attr:ListGrid.header','ListGrid header')} and ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')} should be\n allowed to wrap.\n <p>\n Excel will wrap at the column boundary automatically; for explicit control over wrapping,\n insert \"&lt;br&gt;\" tags into your titles.\n <p>\n See also ${isc.DocUtils.linkForRef('attr:ListGrid.exportFieldWidths')} for replicating the widths of fields in the exported\n spreadsheet.",
        name:"exportWrapHeaderTitles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classAttr:Operators.iNotStartsWithTitle":{
        ref:"classAttr:Operators.iNotStartsWithTitle",
        flags:"IR",
        description:"Title for the \"iNotStartsWith\" operator",
        name:"iNotStartsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not start with\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "object:Hilite":{
        methods:[
        ],
        ref:"object:Hilite",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:Hilite.id",
            "attr:Hilite.cssText",
            "attr:Hilite.fieldName",
            "attr:Hilite.criteria",
            "attr:Hilite.htmlBefore",
            "attr:Hilite.htmlAfter",
            "attr:Hilite.htmlValue",
            "attr:Hilite.disabled",
            "attr:Hilite.title",
            "attr:Hilite.textColor",
            "attr:Hilite.backgroundColor",
            "attr:Hilite.icon",
            "attr:Hilite.replacementValue"
        ],
        description:"An object representing a user-created and user-modifiable hilite, which can be created and\n edited with a ${isc.DocUtils.linkForRef('class:HiliteEditor')} either directly or via the\n ${isc.DocUtils.linkForRef('attr:ListGrid.canEditHilites')} behavior.\n <P>\n See ${isc.DocUtils.linkForRef('group:hiliting')} for an overview.",
        name:"Hilite",
        seeAlso:[
        ],
        type:"object",
        groups:[
            "hiliting"
        ]
    },
    "attr:StretchImgButton.valign":{
        ref:"attr:StretchImgButton.valign",
        flags:"IRW",
        description:"Vertical alignment of this component's title.",
        name:"valign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "appearance"
        ]
    },
    "attr:MultiSortPanel.fields":{
        ref:"attr:MultiSortPanel.fields",
        flags:"IR",
        description:"The list of fields which the user can choose to sort by.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "attr:GridRenderer.virtualScrolling":{
        ref:"attr:GridRenderer.virtualScrolling",
        flags:"IRA",
        description:"When incremental rendering is switched on and there are variable record heights, the virtual\n scrolling mechanism manages the differences in scroll height calculations due to the\n unknown sizes of unrendered rows to make the scrollbar and viewport appear correctly.\n <P>\n virtualScrolling is switched on automatically when fixedRowHeights is false but you should \n switch it on any time there are variable record heights.",
        name:"virtualScrolling",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer"
    },
    "method:MiniDateRangeItem.canEditCriterion":{
        ref:"method:MiniDateRangeItem.canEditCriterion",
        flags:"",
        description:" Returns true if the specified criterion contains:\n <ul><li>A single \"lessOrEqual\" or \"greaterOrEqual\" criterion on this field</li>\n     <li>An \"and\" type criterion containing a \"lessOrEqual\" and a \"greaterOrEqual\" criterion\n         on this field</li>\n     <li>A single \"equals\" criterion.  Internally, this will be converted into a range\n         by constructing an \"and\" type criterion containing both a \"lessOrEqual\" and \n         a \"greaterOrEqual\" criterion on this field.  Note that subsequent calls to \n         ${isc.DocUtils.linkForRef('method:DateRangeItem.getCriterion','getCriterion()')} will return this more complex \n         criterion.</li>\n </ul>\n",
        name:"canEditCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"criterion to test",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        returns:{
            description:"returns true if this criterion can be edited by this item",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:Operator.valueType":{
        ref:"attr:Operator.valueType",
        flags:"IR",
        description:"Indicates the kind of value expected in a ${isc.DocUtils.linkForRef('object:Criterion')} that uses this operator.\n ${isc.DocUtils.linkForRef('type:OperatorValueType')} lists possibilities.\n <P>\n The default of <code>null</code> is equivalent to \"fieldType\", indicating that\n ${isc.DocUtils.linkForRef('attr:Criterion.value')} is expected to contain a value of the same type as the field\n indicated by ${isc.DocUtils.linkForRef('attr:Criterion.fieldName')}.",
        name:"valueType",
        seeAlso:[
        ],
        valueType:"OperatorValueType",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "method:Calendar.setData":{
        ref:"method:Calendar.setData",
        flags:"",
        description:" Initialize the data object with the given array. Observes methods of the data object\n so that when the data changes, the calendar will redraw automatically.\n \n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"data to show in the list",
                optional:false,
                name:"newData",
                defaultValue:null,
                type:"List of CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "data"
        ]
    },
    "method:DrawItem.resized":{
        ref:"method:DrawItem.resized",
        flags:"",
        description:"Observable method called whenever a DrawItem changes size.\n",
        name:"resized",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:TabSet.bottomEdgeSizes":{
        ref:"attr:TabSet.bottomEdgeSizes",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeSizes</code>, \n <code>rightEdgeSizes</code>, <code>topEdgeSizes</code> and <code>bottomEdgeSizes</code> \n properties allow the sizes of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge sizes where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"bottomEdgeSizes",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:ListGrid.headerBackgroundColor":{
        ref:"attr:ListGrid.headerBackgroundColor",
        flags:"IRW",
        description:"BackgroundColor for the header toolbar. Typically this is set to match the color\n of the header buttons.",
        name:"headerBackgroundColor",
        seeAlso:[
        ],
        valueType:"Color",
        defaultValue:"\"#CCCCCC\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "method:Process.getElement":{
        ref:"method:Process.getElement",
        flags:"",
        description:" Retrieve a ${isc.DocUtils.linkForRef('class:ProcessElement')} by it's ID\n",
        name:"getElement",
        seeAlso:[
        ],
        params:[
            {
                description:"id of the process element",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the indicated process element, or null if no such element exists",
            type:"ProcessElement"
        },
        type:"method",
        definingClass:"class:Process"
    },
    "attr:FacetChart.zoomMutePercent":{
        ref:"attr:FacetChart.zoomMutePercent",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:FacetChart.colorMutePercent')} to use for the ${isc.DocUtils.linkForRef('attr:FacetChart.zoomChart')}.",
        name:"zoomMutePercent",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"-35",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:FormItem.validate":{
        ref:"method:FormItem.validate",
        flags:"",
        description:" Validate this item.\n \n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"returns true if validation was successful (no errors encountered), false                   otherwise.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "classMethod:Class.getCallTrace":{
        ref:"classMethod:Class.getCallTrace",
        flags:"",
        description:" Returns a one-line summary of the current method call, showing method name and passed\n arguments. \n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.getCallTrace()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"getCallTrace",
        seeAlso:[
        ],
        params:[
            {
                description:"arguments object from the call to trace.  On IE, defaults to the                             calling function's arguments",
                optional:true,
                name:"args",
                defaultValue:null,
                type:"Arguments"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "attr:ListGrid.chartType":{
        ref:"attr:ListGrid.chartType",
        flags:"IRW",
        description:"Default type of chart to plot.",
        name:"chartType",
        seeAlso:[
        ],
        valueType:"ChartType",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.headerDoubleClick":{
        ref:"method:ListGrid.headerDoubleClick",
        flags:"A",
        description:" Handle a double click in the list header.\n <P>\n By default, calls ${isc.DocUtils.linkForRef('method:ListGrid.autoFitField')} if ${isc.DocUtils.linkForRef('attr:ListGrid.canAutoFitFields')} is true and\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerAutoFitEvent')} is <code>\"doubleClick\"</code>.\n\n",
        name:"headerDoubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"field number for the header that was clicked",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events",
            "gridHeader"
        ]
    },
    "attr:ListGrid.errorIconHeight":{
        ref:"attr:ListGrid.errorIconHeight",
        flags:"IRW",
        description:"Height of the error icon, if we're showing icons when validation errors occur.",
        name:"errorIconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "errorIcon"
        ]
    },
    "attr:DetailViewer.wrapValues":{
        ref:"attr:DetailViewer.wrapValues",
        flags:"IR",
        description:"Whether values should be allowed to wrap by default, or should be shown on one line\n regardless of length.",
        name:"wrapValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "labels"
        ]
    },
    "attr:UploadItem.textBoxStyle":{
        ref:"attr:UploadItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class name for this <code>UploadItem</code>'s native file input element.\n <p>\n Note that the customization via CSS of a native file input element allowable by the\n browser varies widely; in some browsers on certain platforms, it may be possible to\n customize certain CSS properties, but not in others; or, it may be that the CSS property\n (e.g. border) is applied differently in some browsers.\n <p>\n If the textBoxStyle is changed at runtime, ${isc.DocUtils.linkForRef('method:FormItem.updateState')} must be called\n to update the visual state. However, calling updateState() will clear any file selected\n by the user to be uploaded.",
        name:"textBoxStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"uploadItem\"",
        type:"attr",
        definingClass:"class:UploadItem",
        groups:[
            "appearance"
        ]
    },
    "attr:MetricSettings.showDataPoints":{
        ref:"attr:MetricSettings.showDataPoints",
        flags:"IR",
        description:"For line charts, whether to show data points for each individual data value.\n <P>\n If shown, the ${isc.DocUtils.linkForRef('method:MetricSettings.pointClick')} and ${isc.DocUtils.linkForRef('method:MetricSettings.getPointHoverHTML')} APIs can be used to create\n interactivity.",
        name:"showDataPoints",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:Gauge.maxValue":{
        ref:"attr:Gauge.maxValue",
        flags:"IRW",
        description:"The maximum dial value.",
        name:"maxValue",
        setter:[
            "setMaxValue"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:Window.headerIcon":{
        ref:"attr:Window.headerIcon",
        flags:"R",
        description:"Header icon shown at left end of header by default.",
        name:"headerIcon",
        seeAlso:[
        ],
        valueType:"AutoChild Img",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:ListGrid.groupByAsyncThreshold":{
        ref:"attr:ListGrid.groupByAsyncThreshold",
        flags:"IRW",
        description:"When grouping is requested with this number of records or more, an asynchronous approach is\n used to avoid the browser showing a \"script is running slowly..\" message prompting the\n user to stop execution of JavaScript.\n <p>\n Note that ${isc.DocUtils.linkForRef('attr:ListGrid.groupByMaxRecords')} must be set at least as high as ${isc.DocUtils.linkForRef('attr:ListGrid.groupByAsyncThreshold')}\n or asynchronous grouping will never be used.\n <p>\n During asynch grouping, interactivity is blocked and the ${isc.DocUtils.linkForRef('attr:ListGrid.asynchGroupingPrompt')} is shown\n to the user, then hidden when grouping completes; ${isc.DocUtils.linkForRef('method:ListGrid.groupByComplete')} then fires.\n <p>\n Note that this async processing covers grouping <b>only</b> - it does not cover whole grid or\n per-group summaries, client-side sort or filter, or other operations that may cause the browser\n to show the \"script is running slowly\" prompt when working with very large sets of records in a\n grid.\n <p>\n At this time, there is no generally effective way to avoid this warning dialog appearing with very\n large datasets in Microsoft's Internet Explorer (IE).  IE's severely flawed detection algorithm for\n runaway scripts has been shown to interrupt computations after only 0.2 seconds elapsed time\n even if the computation would have finished in 0.3 seconds.  Optimizations that reduce\n execution time can sometimes trigger the \"script running slowly\" dialog sooner.  Since not\n every operation can reasonably be made asychronous, the current recommendation is to avoid\n working with overly large datasets until the affected versions of IE are obsoleted.",
        name:"groupByAsyncThreshold",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"50",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DSRequest.exportRawValues":{
        ref:"attr:DSRequest.exportRawValues",
        flags:"IRW",
        description:"Whether formatting settings should be applied to data being exported.  Default behavior and\n the effect of setting of <code>exportRawValues</code> is described in the\n ${isc.DocUtils.linkForRef('group:exportFormatting','Export Formatting overview')}.",
        name:"exportRawValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "exportFormatting"
        ]
    },
    "attr:MultiSortDialog.directionFieldTitle":{
        ref:"attr:MultiSortDialog.directionFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"direction\" field.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"directionFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Order\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ToolbarItem.buttons":{
        ref:"attr:ToolbarItem.buttons",
        flags:"IRW",
        description:"List of buttons for the toolbar.\n  Each buttons should be specified as a simple JS object with properties to apply to the\n  button to be displayed. Note that any <code>click</code> stringMethod applied to the\n  button will be passed 2 parameters: <code>form</code> and <code>item</code>.",
        name:"buttons",
        seeAlso:[
        ],
        valueType:"Array of StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolbarItem",
        groups:[
            "items"
        ]
    },
    "attr:RichTextItem.controlGroups":{
        ref:"attr:RichTextItem.controlGroups",
        flags:"IA",
        description:"${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')} to display for this editor.\n Each controlGroup should be a property set either on this item or on the RichTextEditor\n prototype and should be set to an array of ${isc.DocUtils.linkForRef('type:ControlName')}s.",
        name:"controlGroups",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RichTextItem"
    },
    "attr:DrawGroup.top":{
        ref:"attr:DrawGroup.top",
        flags:"IRW",
        description:"Top coordinate of the ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} in pixels relative to the DrawPane.",
        name:"top",
        setter:[
            "setTop"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawGroup"
    },
    "attr:Calendar.otherDayBlankStyle":{
        ref:"attr:Calendar.otherDayBlankStyle",
        flags:"IR",
        description:"The CSS style applied to both the header and body of days from other months in the\n ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month view')}, when ${isc.DocUtils.linkForRef('attr:Calendar.showOtherDays')} is false.",
        name:"otherDayBlankStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calMonthOtherDayBlank\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "group:dateItemAppearance":{
        ref:"group:dateItemAppearance",
        refs:[
            "attr:DateItem.textField",
            "attr:DateItem.textFieldProperties",
            "attr:DateItem.daySelector",
            "attr:DateItem.daySelectorProperties",
            "attr:DateItem.monthSelector",
            "attr:DateItem.monthSelectorProperties",
            "attr:DateItem.yearSelector",
            "attr:DateItem.yearSelectorProperties"
        ],
        name:"dateItemAppearance",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:RelativeDateItem.operator":{
        ref:"attr:RelativeDateItem.operator",
        flags:"IR",
        description:"What operator to use when <smartclient>${isc.DocUtils.linkForRef('method:RelativeDateItem.getCriterion')}</smartclient>\n <smartgwt>the <code>FormItemCriterionGetter</code>'s <code>getCriterion()</code> method</smartgwt>\n is called.",
        name:"operator",
        seeAlso:[
        ],
        valueType:"OperatorId",
        defaultValue:"\"greaterThan\"",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:ColumnTree.autoFetchData":{
        ref:"attr:ColumnTree.autoFetchData",
        flags:"IR",
        description:"If true, when this component is first drawn, automatically call <code>this.fetchData()</code>.\n Criteria for this fetch may be picked up from ${isc.DocUtils.linkForRef('attr:ColumnTree.initialCriteria')}, and textMatchStyle may\n be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}.\n <P>\n <span style='color:red'>NOTE:</span> if <code>autoFetchData</code> is set, calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} before draw will cause two requests to be issued, one from the manual\n call to fetchData() and one from the autoFetchData setting.  The second request will use\n only ${isc.DocUtils.linkForRef('attr:ColumnTree.initialCriteria')} and not any other criteria or settings from the first request.\n Generally, turn off autoFetchData if you are going to manually call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} at any time.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "method:ValuesManager.setFieldErrors":{
        ref:"method:ValuesManager.setFieldErrors",
        flags:"",
        description:" Sets validation errors for some field in the valuesManager.<br>\n Errors passed in should be a string (for a single error message) or an array of strings.\n Pass in the showErrors parameter to immediately display the errors to the user by \n redrawing the appropriate member form item (or if no visible item is found for the field\n firing ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')}.\n",
        name:"setFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"name of field to apply errors to",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"error messages for the field",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"string | array of strings"
            },
            {
                description:"should the error(s) be immediately displayed to the user?",
                optional:false,
                name:"showErrors",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "attr:TextExportSettings.useDisplayValue":{
        ref:"attr:TextExportSettings.useDisplayValue",
        flags:"IR",
        description:"Whether to convert each field's value to the corresponding display value\n for export.  Default of false will directly export the field's value.",
        name:"useDisplayValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "method:TabSet.disableTab":{
        ref:"method:TabSet.disableTab",
        flags:"",
        description:" If the specified tab is enabled, disable it now.\n",
        name:"disableTab",
        seeAlso:[
            {
                ref:"attr:Tab.disabled",
                description:null
            }
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | number | ID | name"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "class:ViewLoader":{
        methods:[
            "method:ViewLoader.setViewURL",
            "method:ViewLoader.handleError",
            "method:ViewLoader.getView",
            "method:ViewLoader.viewLoaded"
        ],
        ref:"class:ViewLoader",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:ViewLoader.loadingMessage",
            "attr:ViewLoader.viewURL",
            "attr:ViewLoader.viewURLParams",
            "attr:ViewLoader.viewRPCProperties",
            "attr:ViewLoader.httpMethod",
            "attr:ViewLoader.allowCaching"
        ],
        description:"The ViewLoader component can be used to load new SmartClient-based user interfaces into a\n running application.\n <P>\n <b>NOTE:</b> before using a ViewLoader, be sure that you have read about and understood the\n ${isc.DocUtils.linkForRef('group:smartArchitecture','SmartClient Architecture')}.  The most responsive and\n scalable application architecture preloads views rather than using ViewLoaders.\n <P>\n A ViewLoader is a Canvas, and can be provided anywhere a Canvas can be provided: as a Tab\n pane, and Layout member, etc.  When a ViewLoader draws, it shows a\n ${isc.DocUtils.linkForRef('attr:ViewLoader.loadingMessage','loading message')}, then\n performs an RPC to the ${isc.DocUtils.linkForRef('attr:ViewLoader.viewURL','viewURL')} to load components.\n <P>\n The response from the viewURL should be SmartClient components defined in JavaScript, with no\n surrounding &lt;SCRIPT&gt; tags or other HTML framing.  The returned script can be\n dynamically generated, for example, it may be the result of a JSP containing an XML view\n description enclosed in ${isc.DocUtils.linkForRef('group:xmlTag','&lt;isomorphicXML&gt;')} tags.\n <P>\n In the returned script, the special variable \"viewLoader\" is available to refer to the\n ViewLoader instance that is loading components.  The intended usage is that the returned\n script creates a view consisting of SmartClient components, then calls\n <code>viewLoader.setView(myView)</code> to place the loaded view into the ViewLoader.\n If the view does not call setView() explicitly, the viewLoader will find the last top-level\n UI component (Canvas subclass) created by the view and set that as the current view.\n Top-level in this case means that the UI component is not contained in another UI component\n as a member or child.\n <p>\n The ViewLoader relies on the XMLHttpRequest object which can be disabled by end-users in some\n supported browsers.  See ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information.",
        name:"ViewLoader",
        seeAlso:[
            {
                ref:"attr:RPCRequest.evalResult",
                description:null
            },
            {
                ref:"group:smartArchitecture",
                description:"for general discussion of architectural best practices in      SmartClient"
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('viewLoading')}"
        ],
        groups:[
            "viewLoading"
        ]
    },
    "attr:ImgSplitbar.vSrc":{
        ref:"attr:ImgSplitbar.vSrc",
        flags:"IR",
        description:"Default src to display when ${isc.DocUtils.linkForRef('attr:ImgSplitbar.vertical')} is true, \n and ${isc.DocUtils.linkForRef('attr:ImgSplitbar.src')} is unset.",
        name:"vSrc",
        seeAlso:[
            {
                ref:"attr:ImgSplitbar.src",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"[SKIN]vgrip.png",
        type:"attr",
        definingClass:"class:ImgSplitbar"
    },
    "attr:Window.showCloseButton":{
        ref:"attr:Window.showCloseButton",
        flags:"IRW",
        description:"If true, show a close button in the header, which will dismiss this window by \n calling ${isc.DocUtils.linkForRef('method:Window.closeClick')}.",
        name:"showCloseButton",
        setter:[
            "setShowCloseButton"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "method:ListGrid.setEditorValueMap":{
        ref:"method:ListGrid.setEditorValueMap",
        flags:"A",
        description:"\n Set a valueMap to display for this field while editing.<br>\n This method sets the ${isc.DocUtils.linkForRef('attr:ListGridField.editorValueMap','field.editorValueMap')} property -\n note that if  ${isc.DocUtils.linkForRef('method:ListGrid.getEditorValueMap')} has been overridden it may not make use\n of this property.\n",
        name:"setEditorValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"Field object or identifier",
                optional:false,
                name:"fieldID",
                defaultValue:null,
                type:"object | number | field name"
            },
            {
                description:"ValueMap to apply to the field",
                optional:false,
                name:"map",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "classAttr:FieldPickerField.cellAlignTitle":{
        ref:"classAttr:FieldPickerField.cellAlignTitle",
        flags:"IR",
        description:"The title displayed for the cellAlign property",
        name:"cellAlignTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Data Alignment\"",
        type:"classAttr",
        definingClass:"class:FieldPickerField",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.animateRemoveTime":{
        ref:"attr:ListGrid.animateRemoveTime",
        flags:"IRW",
        description:"When animating record removal\n ${isc.DocUtils.linkForRef('attr:ListGrid.animateRemoveRecord','(see animateRemoveRecord)')}, if\n ${isc.DocUtils.linkForRef('attr:ListGrid.animateRemoveSpeed')} is not\n set, this property designates the duration of the animation in ms.",
        name:"animateRemoveTime",
        seeAlso:[
            {
                ref:"attr:ListGrid.animateRemoveRecord",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "animation"
        ]
    },
    "attr:FacetChart.zoomChart":{
        ref:"attr:FacetChart.zoomChart",
        flags:"IR",
        description:"Mini-chart created to allow zooming when ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom')} is enabled.\n <P>\n This chart automatically has certain visual tweaks applied, including ${isc.DocUtils.linkForRef('attr:FacetChart.showInlineLabels')},\n ${isc.DocUtils.linkForRef('attr:FacetChart.zoomMutePercent','muted colors')} and ${isc.DocUtils.linkForRef('attr:FacetChart.zoomLogScale','logarithmic scaling')}.  It can be\n further configured via ${isc.DocUtils.linkForRef('attr:FacetChart.zoomChartProperties')}.\n <P>\n The selected range from this chart defaults to being shown with distinct styling as well (if\n ${isc.DocUtils.linkForRef('attr:FacetChart.zoomShowSelection')} is set), which can be controlled via\n ${isc.DocUtils.linkForRef('attr:FacetChart.zoomSelectionChartProperties')}.",
        name:"zoomChart",
        seeAlso:[
        ],
        valueType:"FacetChart AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:DateItem.pickerProperties":{
        ref:"attr:DateItem.pickerProperties",
        flags:"IR",
        description:"Properties for the ${isc.DocUtils.linkForRef('class:DateChooser')} created by this form item.",
        name:"pickerProperties",
        seeAlso:[
        ],
        valueType:"DateChooser Properties",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "method:ListGrid.headerHoverHTML":{
        ref:"method:ListGrid.headerHoverHTML",
        flags:"A",
        description:" Returns the HTML that is displayed by the default ${isc.DocUtils.linkForRef('method:ListGrid.headerHover','headerHover')}\n handler. Return null or an empty string to cancel the hover.\n <smartgwt><p>Use <code>setHeaderHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n\n",
        name:"headerHoverHTML",
        seeAlso:[
            {
                ref:"attr:ListGrid.showClippedHeaderTitlesOnHover",
                description:null
            },
            {
                ref:"attr:ListGrid.clipHeaderTitles",
                description:null
            }
        ],
        params:[
            {
                description:"field number for the header that was hovered",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "hovers",
            "gridHeader"
        ]
    },
    "method:ListGrid.focusInCell":{
        ref:"method:ListGrid.focusInCell",
        flags:"",
        description:" Puts keyboard focus into the specified cell, showing a highlighted (roll-over style)\n appearance, and ensuring that arrow-key navigation will start from the specified cell.\n <P>\n Only applies where ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is true.\n",
        name:"focusInCell",
        seeAlso:[
            {
                ref:"method:ListGrid.focusInRow",
                description:null
            }
        ],
        params:[
            {
                description:"Index of target row",
                optional:false,
                name:"row",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Index of target col",
                optional:false,
                name:"col",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:CubeGrid.getFacetValueLayout":{
        ref:"method:CubeGrid.getFacetValueLayout",
        flags:"",
        description:" Get the current visual order and width for the facet values of a facet or facetValueGroup as\n an object of the form:\n <pre>\n [ {id:facetValueId, width:currentWidth }, ... ]\n </pre>\n\n",
        name:"getFacetValueLayout",
        seeAlso:[
        ],
        params:[
            {
                description:"Which facet do we want details for?",
                optional:false,
                name:"id",
                defaultValue:null,
                type:"facetValueGroupId | facetId"
            }
        ],
        returns:{
            description:"array of {id:facetValueId, width:width} objects",
            type:"array"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:OperationBinding.requestProperties":{
        ref:"attr:OperationBinding.requestProperties",
        flags:"IR",
        description:"Additional properties to pass through to the ${isc.DocUtils.linkForRef('class:DSRequest')} created for this operation.\n Note that these will be cumulative with and will override on a per-property basis any\n properties set via ${isc.DocUtils.linkForRef('attr:DataSource.requestProperties')}.\n <p>\n These properties are applied before ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} is called.",
        name:"requestProperties",
        seeAlso:[
            {
                ref:"class:DSRequest",
                description:null
            },
            {
                ref:"attr:DataSource.requestProperties",
                description:null
            }
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration",
            "serverDataIntegration"
        ]
    },
    "method:FormItem.setHint":{
        ref:"method:FormItem.setHint",
        flags:"",
        description:" Set the hint text for this item\n",
        name:"setHint",
        seeAlso:[
        ],
        params:[
            {
                description:"new hint for the item",
                optional:false,
                name:"hintText",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:ListGrid.setSelectionAppearance":{
        ref:"method:ListGrid.setSelectionAppearance",
        flags:"",
        description:" Changes selectionAppearance on the fly.\n",
        name:"setSelectionAppearance",
        seeAlso:[
        ],
        params:[
            {
                description:"new selection appearance",
                optional:false,
                name:"selectionAppearance",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DynamicForm.getValuesAsAdvancedCriteria":{
        ref:"method:DynamicForm.getValuesAsAdvancedCriteria",
        flags:"",
        description:" Return an AdvancedCriteria object based on the current set of values within this form.\n <p>\n Similar to ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}, except the returned criteria object\n is guaranteed to be an AdvancedCriteria object, even if none of the form's fields has a\n specified ${isc.DocUtils.linkForRef('attr:FormItem.operator')}\n\n",
        name:"getValuesAsAdvancedCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"If specified the text match style will be used to   generate the appropriate <code>operator</code> for per field criteria.",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"a ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} based on the form's current values",
            type:"AdvancedCriteria"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:DataBoundComponent.isOffline":{
        ref:"method:DataBoundComponent.isOffline",
        flags:"",
        description:" Returns true if the component's current data model is marked as offline.  This does not \n necessarily mean that the component has no data; it may have data that was supplied from\n the ${isc.DocUtils.linkForRef('class:Offline','offline cache')}.\n",
        name:"isOffline",
        seeAlso:[
        ],
        returns:{
            description:"Offline if true",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "offlineGroup"
        ]
    },
    "attr:DetailViewerField.linkURLPrefix":{
        ref:"attr:DetailViewerField.linkURLPrefix",
        flags:"IRWA",
        description:"If this field has type set to <code>\"link\"</code>, setting this property will apply a\n standard prefix to the link URL when displaying values of this field.",
        name:"linkURLPrefix",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.type",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:MultiSortPanel.levelDownButtonTitle":{
        ref:"attr:MultiSortPanel.levelDownButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Down button.",
        name:"levelDownButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Down\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "method:CubeGrid.fixedFacetValueChanged":{
        ref:"method:CubeGrid.fixedFacetValueChanged",
        flags:"",
        description:" Notification fired when a fixed facet value is set for some facet.\n",
        name:"fixedFacetValueChanged",
        seeAlso:[
            {
                ref:"method:CubeGrid.setFixedFacetValue",
                description:null
            }
        ],
        params:[
            {
                description:"facetId",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new fixed facet value",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "method:Gauge.setValue":{
        ref:"method:Gauge.setValue",
        flags:"",
        description:" Sets the value on the dial that the needle is displaying.\n\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new dial value. Must be between ${isc.DocUtils.linkForRef('attr:Gauge.minValue','minValue')} and ${isc.DocUtils.linkForRef('attr:Gauge.maxValue','maxValue')}.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "method:DynamicForm.submitForm":{
        ref:"method:DynamicForm.submitForm",
        flags:"",
        description:" Submits the form to the URL defined by ${isc.DocUtils.linkForRef('attr:DynamicForm.action')}, \n identically to how a plain HTML &lt;form&gt; element would submit data,\n as either an HTTP GET or POST as specified by ${isc.DocUtils.linkForRef('attr:DynamicForm.method')}.\n <P>\n <b>Notes:</b>\n <ul>\n <li>this is used only in the very rare case that a form is used to submit data\n directly to a URL.  Normal server contact is through \n ${isc.DocUtils.linkForRef('group:dataBoundComponentMethods','DataBound Component Methods')}.</li>\n <li>For this method to reliably include values for every field in the grid, \n      ${isc.DocUtils.linkForRef('attr:DynamicForm.canSubmit')} must be set to <code>true</code></li>\n <li>To submit values for fields that do not have an editor, use ${isc.DocUtils.linkForRef('class:HiddenItem')} \n with a ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} set.  This is analogous to &lt;input type=\"hidden\"&gt;\n in HTML forms.\n </ul>\n",
        name:"submitForm",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "method:SectionItem.isExpanded":{
        ref:"method:SectionItem.isExpanded",
        flags:"",
        description:" Returns a boolean indicating whether this SectionItem is expanded.\n\n",
        name:"isExpanded",
        seeAlso:[
        ],
        returns:{
            description:"true if the section is expanded false if not",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:SectionItem"
    },
    "method:PortalLayout.portletRestored":{
        ref:"method:PortalLayout.portletRestored",
        flags:"",
        description:" Notification method called after a portlet has been restored to its normal place\n (after having been maximized). The method is called whether the restore is\n via user action or done programmatically.\n\n",
        name:"portletRestored",
        seeAlso:[
            {
                ref:"method:PortalLayout.willRestorePortlet",
                description:null
            }
        ],
        params:[
            {
                description:"the Portlet which was restored",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:DrawPane.getPrintHTML":{
        ref:"method:DrawPane.getPrintHTML",
        flags:"A",
        description:" Retrieves printable HTML for this component and all printable subcomponents.\n <P>\n By default any Canvas with children will simply collect the printable HTML of its\n children by calling getPrintHTML() on each child that is considered\n ${isc.DocUtils.linkForRef('attr:Canvas.shouldPrint','printable')}.\n <P>\n If overriding this method for a custom component, you should <b>either</b> return a String of\n printable HTML string directly <b>or</b> return null, and fire the callback (if provided)\n using ${isc.DocUtils.linkForRef('method:Class.fireCallback')}.\n <P>\n To return an empty print representation, return an empty string (\"\") rather than null.\n <P>\n The <code>printProperties</code> argument, if passed, must be passed to any subcomponents on\n which <code>getPrintHTML()</code> is called.\n <P>\n <b>Notes on printing</b>\n <P>\n To print a <code>DrawPane</code> for export on IE8 and earlier, it is important to pass\n ${isc.DocUtils.linkForRef('object:PrintProperties')} with ${isc.DocUtils.linkForRef('attr:PrintProperties.printForExport','printForExport')}:true:\n <smartclient>\n <pre>var exportHTML = drawPane.getPrintHTML({ printForExport:true });</pre>\n </smartclient><smartgwt>\n <pre>final PrintProperties pp = new PrintProperties();\npp.setPrintForExport(true);\nfinal String exportHTML = drawPane.getPrintHTML(pp, null);</pre>\n </smartgwt>\n",
        name:"getPrintHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"properties to configure printing behavior - may be null.",
                optional:true,
                name:"printProperties",
                defaultValue:null,
                type:"PrintProperties"
            },
            {
                description:"optional callback. This is required to handle cases where HTML                  generation is asynchronous - if a method generates HTML asynchronously, it should return\n                  null, and fire the specified callback on completion of HTML generation. The\n                  first parameter <code>HTML</code> should contain the generated print HTML.\n                  The callback is only called if null is returned. Furthermore, the default\n                  getPrintHTML() implementation always returns null and fires the callback\n                  when a callback is provided.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        returns:{
            description:"null if the print HTML is being generated asynchronously and/or a callback is provided; otherwise, the direct print HTML for this component (but note that returning\n direct print HTML is a deprecated feature).",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:DrawPane",
        groups:[
            "printing"
        ]
    },
    "attr:Validator.stopOnError":{
        ref:"attr:Validator.stopOnError",
        flags:"IR",
        description:"Indicates that if this validator is not passed, the user should not be allowed to exit\n the field - focus will be forced back into the field until the error is corrected.\n <p>\n This property defaults to ${isc.DocUtils.linkForRef('attr:FormItem.stopOnError')} if unset.\n <p>\n Enabling this property also implies ${isc.DocUtils.linkForRef('attr:FormItem.validateOnExit')} is automatically\n enabled. If this is a server-based validator, setting this property also implies that\n ${isc.DocUtils.linkForRef('attr:FormItem.synchronousValidation')} is forced on.",
        name:"stopOnError",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "method:Progressbar.setPercentDone":{
        ref:"method:Progressbar.setPercentDone",
        flags:"",
        description:" Sets percentDone to newPercent.\n\n",
        name:"setPercentDone",
        seeAlso:[
        ],
        params:[
            {
                description:"percent to show as done (0-100)",
                optional:false,
                name:"newPercent",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Progressbar"
    },
    "method:Date.getFiscalWeek":{
        ref:"method:Date.getFiscalWeek",
        flags:"",
        description:" Returns the fiscal week number of the current date, according to the global\n ${isc.DocUtils.linkForRef('classMethod:Date.setFiscalCalendar','FiscalCalendar')}.\n",
        name:"getFiscalWeek",
        seeAlso:[
        ],
        params:[
            {
                description:"the object representing the starts of fiscal years",
                optional:true,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        returns:{
            description:"the week number, offset from the start of the fiscal period",
            type:"int"
        },
        type:"method",
        definingClass:"class:Date"
    },
    "attr:FormItem.timeFormatter":{
        ref:"attr:FormItem.timeFormatter",
        flags:"IRWA",
        description:"Time-format to apply to date type values within this formItem.  If specified, any\n dates displayed in this item will be formatted as times using the appropriate format.\n This is most commonly only applied to fields specified as type <code>\"time\"</code> though\n if no explicit ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} is specified it will be respected for other \n fields as well.\n <P>\n If unspecified, a timeFormatter may be defined \n ${isc.DocUtils.linkForRef('attr:DynamicForm.timeFormatter','at the component level')} and will be respected by fields\n of type <code>\"time\"</code>.",
        name:"timeFormatter",
        seeAlso:[
            {
                ref:"attr:FormItem.format",
                description:null
            }
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Tree.sortFoldersBeforeLeaves":{
        ref:"attr:Tree.sortFoldersBeforeLeaves",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Tree.separateFolders')} is true, should folders be displayed above or below leaves?\n When set to <code>true</code> folders will appear above leaves when the\n <code>sortDirection</code> applied to the tree is ${isc.DocUtils.linkForRef('type:SortDirection','\"ascending\"')}",
        name:"sortFoldersBeforeLeaves",
        setter:[
            "setSortFoldersBeforeLeaves"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Tree"
    },
    "method:FormItem.changed":{
        ref:"method:FormItem.changed",
        flags:"",
        description:" Called when a FormItem's value has been changed as the result of user interaction.  This\n method fires after the newly specified value has been stored.\n",
        name:"changed",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"The current value (after the change).",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "attr:TreeGrid.showOpener":{
        ref:"attr:TreeGrid.showOpener",
        flags:"IRW",
        description:"Should the ${isc.DocUtils.linkForRef('attr:TreeGrid.openerImage','opener icon')}\n be displayed next to folder nodes? This is an icon\n which visually indicates whether the folder is opened or closed (typically via\n a [+] or [-] image, or a turn-down arrow) and may be clicked to expand or collapse\n the folder.\n <P>\n For folders with no children, this icon is not shown unless \n ${isc.DocUtils.linkForRef('attr:TreeGrid.alwaysShowOpener')} is <code>true</code>. Note that for trees which\n ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand','load data on demand')}, we may not know if a folder\n has any descendants if it has never been opened. As such we will show the\n opener icon next to the folder. Once the user opens the icon and a fetch occurs,\n if the folder is empty, and ${isc.DocUtils.linkForRef('attr:TreeGrid.alwaysShowOpener')} is false, the opener icon\n will be hidden.\n <P>\n For more information on load on demand trees, and how we determine whether\n a node is a a folder or a leaf, please refer to the ${isc.DocUtils.linkForRef('group:treeDataBinding')}\n documentation.",
        name:"showOpener",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "classMethod:Page.updateViewport":{
        ref:"classMethod:Page.updateViewport",
        flags:"",
        description:" This method only applies to browsers that support the special viewport meta tag, such as\n Mobile Safari running on the iPhone.\n <P>\n This method will dynamically change the viewport configuration, allowing you to set an\n initial size or scale level and enable / disable user-scaling. Typically this method will\n be called with a value for scale, width or height rather than passing in values for all\n three properties.\n <P>\n See Apple's Safari Web Content Guide on configuring the viewport for more information:\n <a href='https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html' target='_blank'>https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html</a>\n <P>\n <i>Note:</i> Modifying the width/height or initial scale of the viewport has two user-visible\n effects:\n <ul>\n <li>HTML elements may reflow to fit the specified size (or the implied size calculated\n     from the specified scale level and the native device size).</li>\n <li>If the user has not scaled the application explicitly, and no other scaling or sizing\n     attributes were specified via a viewport meta tag for this page, the application will\n     zoom to specified scale level (or the scale level required to fit the specified viewport\n     size to the device's screen).</li>\n </ul>\n",
        name:"updateViewport",
        seeAlso:[
            {
                ref:"group:mobileDevelopment",
                description:null
            }
        ],
        params:[
            {
                description:"Desired scale level where 1 indicates no scaling (each css pixel    will be displayed using 1px on the physical device). Pass in null to avoid setting\n   this property.",
                optional:true,
                name:"scale",
                defaultValue:null,
                type:"float"
            },
            {
                description:"Desired viewport width in pixels. This indicates how many pixels   should fit within the device screen. Pass in null to avoid setting this property.",
                optional:true,
                name:"width",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Desired viewport height in pixels. This indicates how many pixels   should fit within the device screen. Pass in null to avoid setting this property.",
                optional:true,
                name:"height",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Should the user be able to scale the application (using   pinch gestures, double tapping, rotating the device, etc.)? Pass in null to avoid setting\n   this property.",
                optional:true,
                name:"scalable",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "mobileDevelopment"
        ]
    },
    "type:LogPriority":{
        ref:"type:LogPriority",
        values:[
            {
                description:"unrecoverable error",
                value:"Log.FATAL"
            },
            {
                description:"error, may be recoverable",
                value:"Log.ERROR"
            },
            {
                description:"apparent problem, misused API, partial result",
                value:"Log.WARN"
            },
            {
                description:"significant events in normal operation",
                value:"Log.INFO"
            },
            {
                description:"diagnostics for developers",
                value:"Log.DEBUG"
            }
        ],
        description:"Priority levels for log messages",
        name:"LogPriority",
        seeAlso:[
            {
                ref:"method:Class.logDebug",
                description:null
            }
        ],
        type:"type"
    },
    "method:CanvasItem.canEditCriterion":{
        ref:"method:CanvasItem.canEditCriterion",
        flags:"",
        description:" AdvancedCriteria objects may be edited via nested dynamicForms as described in\n ${isc.DocUtils.linkForRef('method:CanvasItem.getCriterion')}\n <P>\n This method has been overridden to return true if this item's canvas is a DynamicForm,\n where the ${isc.DocUtils.linkForRef('attr:DynamicForm.operator')} matches the operator of the criterion passed in\n and dynamicForm contains items where ${isc.DocUtils.linkForRef('method:FormItem.canEditCriterion')} returns true\n for each sub-criterion in the object passed in.\n",
        name:"canEditCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria to test",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        returns:{
            description:"returns true if the specified criterion may be edited by this item",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CanvasItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:Slider.setVertical":{
        ref:"method:Slider.setVertical",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.vertical')} property of the slider\n\n",
        name:"setVertical",
        seeAlso:[
        ],
        params:[
            {
                description:"is the slider vertical",
                optional:false,
                name:"isVertical",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "classAttr:GroupingMessages.byMonthTitle":{
        ref:"classAttr:GroupingMessages.byMonthTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a date field by month.",
        name:"byMonthTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Month\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TileGrid.tileValueAlign":{
        ref:"attr:TileGrid.tileValueAlign",
        flags:"IR",
        description:"Horizontal alignment for tile values: \"left\", \"right\" or \"center\".",
        name:"tileValueAlign",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:GaugeSector.fillColor":{
        ref:"attr:GaugeSector.fillColor",
        flags:"IR",
        description:null,
        name:"fillColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:GaugeSector"
    },
    "method:DynamicForm.completeEditing":{
        ref:"method:DynamicForm.completeEditing",
        flags:"",
        description:" Finish editing and store edited values in ${isc.DocUtils.linkForRef('attr:Process.state','process state')}.  \n",
        name:"completeEditing",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "method:Canvas.markForDestroy":{
        ref:"method:Canvas.markForDestroy",
        flags:"",
        description:" ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} this canvas on a timeout. This method should be used instead of\n calling <code>canvas.destroy()</code> directly unless there's a reason a the canvas needs to be\n destroyed synchronously. By using a timeout, this method ensures the <code>destroy()</code> will\n occur after the current thread of execution completes. This allows you to easily mark canvases\n for destruction while they're handling events, which must complete before the canvas can be\n destroyed.\n",
        name:"markForDestroy",
        seeAlso:[
            {
                ref:"method:Canvas.destroy",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:CubeGrid.bodyMinHeight":{
        ref:"attr:CubeGrid.bodyMinHeight",
        flags:"IRWA",
        description:"Minimum height for the body of this cubeGrid.",
        name:"bodyMinHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:StatefulCanvas.showDisabledIcon":{
        ref:"attr:StatefulCanvas.showDisabledIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image if the button becomes\n disabled.",
        name:"showDisabledIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "type:ExpansionComponentPoolingMode":{
        ref:"type:ExpansionComponentPoolingMode",
        values:[
            {
                description:"auto-created, built-in components are destroyed when record are        ${isc.DocUtils.linkForRef('method:ListGrid.collapseRecord','collapsed')}.",
                value:"\"destroy\""
            },
            {
                description:"all expansion components are deparented from the grid when a record is        ${isc.DocUtils.linkForRef('method:ListGrid.collapseRecord','collapsed')} but are not destroyed.  It is the responsibility\n        of the developer to handle component destruction",
                value:"\"none\""
            }
        ],
        description:"The method of pooling to employ for ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords','expansionComponents')}.\n <P>",
        name:"ExpansionComponentPoolingMode",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DataBoundComponent.getTitleFieldValue":{
        ref:"method:DataBoundComponent.getTitleFieldValue",
        flags:"",
        description:" Get the value of the titleField for the passed record\n <P>\n Override in subclasses \n\n",
        name:"getTitleFieldValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the record whose index is to be retrieved",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"valuethe value of the titleField for the passed record",
            type:"String"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ListGrid.headerSpanConstructor":{
        ref:"attr:ListGrid.headerSpanConstructor",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:SCClassName','SmartClient Class')} to use for headerSpans.  Typically a ${isc.DocUtils.linkForRef('class:Button')} or\n ${isc.DocUtils.linkForRef('class:StretchImgButton')} subclass.\n <P>\n If unset, headerSpans will be created using the ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonConstructor')}.",
        name:"headerSpanConstructor",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "attr:MiniDateRangeItem.allowRelativeDates":{
        ref:"attr:MiniDateRangeItem.allowRelativeDates",
        flags:"IR",
        description:"Whether the ${isc.DocUtils.linkForRef('class:DateRangeDialog')} opened when the \n ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.pickerIcon','pickerIcon')} is clicked should display \n ${isc.DocUtils.linkForRef('class:RelativeDateItem')}s or ${isc.DocUtils.linkForRef('class:DateItem')}s.",
        name:"allowRelativeDates",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "attr:TabSet.tabPicker":{
        ref:"attr:TabSet.tabPicker",
        flags:"R",
        description:"A button control that allows tabs to be picked directly from a popup menu. The tabPicker\n is created automatically when needed and when <code>\"tabPicker\"</code> is specified in\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarControls')}.",
        name:"tabPicker",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "method:TextItem.getSelectionRange":{
        ref:"method:TextItem.getSelectionRange",
        flags:"",
        description:" For text-based items, this method returns the indices of the start/end of the current\n selection if the item currently has the focus. In browsers other than Internet Explorer 6-9,\n if this item does not have focus, then this method returns the indices of the start/end\n of the selection the last time that this item had focus. In IE 6-9, returns null if the\n item does not have focus.\n <P>\n In all browsers, clicking anywhere outside of the item causes the item to lose focus;\n hence, in IE 6-9, this method will not work in other components' event handlers for\n certain events. For example, within the ${isc.DocUtils.linkForRef('method:Canvas.click','click()')} handler of a button,\n this item will have already lost focus, so in IE 6-9, this method will return null\n if called within the button's click() handler. One cross-browser solution to this issue\n is to save the selection range for later in a ${isc.DocUtils.linkForRef('method:Canvas.mouseDown','mouseDown()')} or\n ${isc.DocUtils.linkForRef('method:Canvas.mouseOver','mouseOver()')} handler.\n <P>\n Notes:\n <UL>\n   <LI>In browsers other than IE 6-9, calling ${isc.DocUtils.linkForRef('method:FormItem.setValue','setValue()')}\n or otherwise changing the ${isc.DocUtils.linkForRef('method:TextItem.getEnteredValue','entered value')} invalidates the past\n selection range.</LI>\n   <LI>The returned indices are indices within the entered value rather than the item's\n value as returned by ${isc.DocUtils.linkForRef('method:FormItem.getValue','getValue()')}.\n The distinction is particularly important for ${isc.DocUtils.linkForRef('class:TextAreaItem')}s because browsers\n normalize the line endings in the <code>&lt;textarea&gt;</code> element's value.\n Internet Explorer 6, 7, and 8 convert line endings to \"\\r\\n\" while other browsers\n convert line endings to \"\\n\"\n <a href='http://www.w3.org/TR/html5/forms.html#concept-textarea-api-value' target='_blank'>as specified by the HTML5 standard</a>.</LI>\n </UL>\n",
        name:"getSelectionRange",
        seeAlso:[
        ],
        returns:{
            description:"2 element array showing character index of the current or past selection's start and end points within this item's ${isc.DocUtils.linkForRef('method:TextItem.getEnteredValue','entered value')}.\n In IE 6-9, returns null if the item does not have focus.",
            type:"Array of int"
        },
        type:"method",
        definingClass:"class:TextItem"
    },
    "method:SectionStack.sectionForItem":{
        ref:"method:SectionStack.sectionForItem",
        flags:"",
        description:" \n Search for a section that contains passed item.\n\n",
        name:"sectionForItem",
        seeAlso:[
            {
                ref:"method:SectionStack.expandSection",
                description:null
            }
        ],
        params:[
            {
                description:"item to show",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"section that contains passed item.",
            type:"SectionStackSection"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "classAttr:RPCManager.ALL_GLOBALS":{
        ref:"classAttr:RPCManager.ALL_GLOBALS",
        flags:"R",
        description:"Passing this special value to ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen','loadScreen')} indicates that\n all global names should be preserved when evaluating loaded screen.<br/>",
        name:"ALL_GLOBALS",
        seeAlso:[
            {
                ref:"classMethod:RPCManager.loadScreen",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"-ALL_GLOBALS\"",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "attr:MultiGroupDialog.maxLevels":{
        ref:"attr:MultiGroupDialog.maxLevels",
        flags:"IR",
        description:"The maximum number of levels of grouping that can be applied.  Since each group-property or\n field-name can be used only once in a given multi-group operation, if no maxLevels value\n or a value larger than the total number of available properties is specified, it will \n default to the total number of available properties.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.",
        name:"maxLevels",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "attr:MultiSortDialog.levelUpButtonTitle":{
        ref:"attr:MultiSortDialog.levelUpButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Up button.",
        name:"levelUpButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Up\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:StatefulCanvas.showOverCanvas":{
        ref:"attr:StatefulCanvas.showOverCanvas",
        flags:"IRWA",
        description:"When this property is set to true, this widget will create and show the\n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.overCanvas')} on user rollover.",
        name:"showOverCanvas",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas"
    },
    "attr:PrintProperties.printForExport":{
        ref:"attr:PrintProperties.printForExport",
        flags:"IR",
        description:"If true, generates HTML for export.\n <P>\n Some components, specifically ${isc.DocUtils.linkForRef('class:DrawPane')} and ${isc.DocUtils.linkForRef('class:FacetChart')} on IE8 and earlier, need to generate\n different HTML for export versus in-browser print preview. When using ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportContent')}\n the printForExport property is set to true automatically. If not using RPCManager.exportContent(),\n but the generated HTML will be sent for export, the <code>PrintProperties</code> passed to\n ${isc.DocUtils.linkForRef('method:Canvas.getPrintHTML')} must have printForExport:true.",
        name:"printForExport",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PrintProperties",
        groups:[
            "printing"
        ]
    },
    "attr:DrawnValue.value":{
        ref:"attr:DrawnValue.value",
        flags:"IR",
        description:"Data value this <code>drawnValue</code> represents.",
        name:"value",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "attr:CheckboxItem.showValueIconDisabled":{
        ref:"attr:CheckboxItem.showValueIconDisabled",
        flags:"IRWA",
        description:"Should a \"Disabled\" state icon be shown when the item is disabled",
        name:"showValueIconDisabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "valueIcons"
        ]
    },
    "classAttr:Operators.iNotStartsWithFieldTitle":{
        ref:"classAttr:Operators.iNotStartsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"iNotStartsWithField\" operator",
        name:"iNotStartsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not start with (case insensitive) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TabSet.getSelectedTabNumber":{
        ref:"method:TabSet.getSelectedTabNumber",
        flags:"A",
        description:" Returns the index of the currently selected tab object.  \n",
        name:"getSelectedTabNumber",
        seeAlso:[
        ],
        returns:{
            description:"the index of the currently selected tab object",
            type:"number"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:IconButton.setIcon":{
        ref:"method:IconButton.setIcon",
        flags:"",
        description:" Sets a new Icon for this button after initialization.\n\n",
        name:"setIcon",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:IconButton"
    },
    "attr:ListGridField.required":{
        ref:"attr:ListGridField.required",
        flags:"IRW",
        description:"When the user edits cells in this field, is this value required to be non-empty\n in order for validation to pass.<br>\n Note: for databound listGrids, this property may be specified on the\n ${isc.DocUtils.linkForRef('class:DataSourceField')}, enabling both client and server side validation.",
        name:"required",
        seeAlso:[
            {
                ref:"attr:ListGridField.validators",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "gridValidation"
        ]
    },
    "method:ImgButton.setIconOrientation":{
        ref:"method:ImgButton.setIconOrientation",
        flags:"",
        description:" Changes the orientation of the icon relative to the text of the button.\n\n",
        name:"setIconOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"The new orientation of the icon relative to the text of the button.",
                optional:false,
                name:"orientation",
                defaultValue:null,
                type:"\"left\" or \"right\""
            }
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:RecordEditor.actionButtonProperties":{
        ref:"attr:RecordEditor.actionButtonProperties",
        flags:"IRA",
        description:"Properties to apply to the automatically generated ${isc.DocUtils.linkForRef('attr:RecordEditor.actionButton')}.\n <P>\n Note that for a recordEditor being used as a ${isc.DocUtils.linkForRef('attr:ListGrid.filterEditor')}, the\n ${isc.DocUtils.linkForRef('attr:ListGrid.filterButtonProperties')} can be used to specify actionButton properties\n directly at the grid level.",
        name:"actionButtonProperties",
        seeAlso:[
        ],
        valueType:"Button Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RecordEditor"
    },
    "attr:Canvas.dragScrollDelay":{
        ref:"attr:Canvas.dragScrollDelay",
        flags:"IRWA",
        description:"If this widget supports drag-scrolling, This property specifies how many ms the\n      user must hover over the drag-scroll threshold before scrolling begins.",
        name:"dragScrollDelay",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragging"
        ]
    },
    "method:Slider.setLabelSpacing":{
        ref:"method:Slider.setLabelSpacing",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.labelSpacing')} property of the slider\n\n",
        name:"setLabelSpacing",
        seeAlso:[
        ],
        params:[
            {
                description:"new label spacing",
                optional:false,
                name:"labelWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:RestDataSource.jsonSuffix":{
        ref:"attr:RestDataSource.jsonSuffix",
        flags:"IRW",
        description:"Allows you to specify an arbitrary suffix string to apply to all json format responses \n sent from the server to this application.  The client will expect to find this suffix \n on any JSON response received for this DataSource, and will strip it off before evaluating\n the response text.\n <p>\n The default suffix is \"//isc_JSONResponseEnd\".",
        name:"jsonSuffix",
        seeAlso:[
            {
                ref:"attr:RestDataSource.jsonPrefix",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"See below",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:RelativeDateItem.hoursFromNowTitle":{
        ref:"attr:RelativeDateItem.hoursFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"hour\".",
        name:"hoursFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N hours from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ImgSectionHeader.setIconOrientation":{
        ref:"method:ImgSectionHeader.setIconOrientation",
        flags:"",
        description:" If this header is showing an icon should it appear to the left or right of the title?\n Valid options are \"left\" and \"right\".\n",
        name:"setIconOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"the new orientation",
                optional:false,
                name:"orientation",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ImgSectionHeader"
    },
    "method:ResultSet.duplicate":{
        ref:"method:ResultSet.duplicate",
        flags:"",
        description:" Returns a clone of this ResultSet sharing the same DataSource, current criteria, sort\n direction and cache state.\n <p>\n Internal caches are copied such that methods such as ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown')},\n ${isc.DocUtils.linkForRef('method:ResultSet.allMatchingRowsCached')} and ${isc.DocUtils.linkForRef('method:ResultSet.allRowsCached')} return identical results for the\n new ResultSet.\n <p>\n Subsequent changes to criteria or sort direction on the original ResultSet with not affect\n the duplicate, and vice versa.  Outstanding fetches on the original ResultSet will likewise\n have no effect on the duplicate when they complete.  However, actual Record instances are\n shared between the original and copied ResultSet, so direct modification of Records will\n affect both ResultSets.\n <p>\n The new ResultSet will listen for DataSource changes and automatically update caches just\n as normal ResultSets do.\n <p>\n <b>NOTE:</b> if you are looking for a simple list of Records rather than a new, fully\n functional ResultSet, consider ${isc.DocUtils.linkForRef('method:ResultSet.getAllCachedRows')} or ${isc.DocUtils.linkForRef('method:ResultSet.getAllVisibleRows')}.  If\n you are looking to create a filterable, sortable subset of the current ResultSet, consider\n creating a new ResultSet and passing the results of <code>getAllCachedRows</code> or\n <code>getAllVisibleRows</code> as the initial value of ResultSet.allRows.\n",
        name:"duplicate",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:DSResponse.startRow":{
        ref:"attr:DSResponse.startRow",
        flags:"R",
        description:"Starting row of returned server results, when using paged result fetching\n <p>\n Note that startRow and endRow are zero-based - the first record is row zero.",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "paging"
        ]
    },
    "attr:StatefulCanvas.showFocusedIcon":{
        ref:"attr:StatefulCanvas.showFocusedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n receives focus.\n <P>\n If ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true, the <code>\"Over\"</code> icon will be\n displayed when the canvas has focus, otherwise a separate <code>\"Focused\"</code> icon\n will be displayed",
        name:"showFocusedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Array.find":{
        ref:"method:Array.find",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:Array.findIndex')}, but returns the object itself instead of its index.\n\n",
        name:"find",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"first matching object or null if not found",
            type:"Object"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access",
            "find"
        ]
    },
    "attr:DataSource.preventHTTPCaching":{
        ref:"attr:DataSource.preventHTTPCaching",
        flags:"IR",
        description:"If set, the DataSource will ensure that it never uses a cached HTTP response, even if the\n server marks the response as cacheable.\n <P>\n Note that this does not disable caching at higher levels in the framework, for example, the\n caching performed by ${isc.DocUtils.linkForRef('class:ResultSet')}.",
        name:"preventHTTPCaching",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:ListGrid.headerMenuButtonIconHeight":{
        ref:"attr:ListGrid.headerMenuButtonIconHeight",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, this property governs the height of the icon\n shown on the auto-generated <code>headerMenuButton</code>",
        name:"headerMenuButtonIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "classAttr:GroupingMessages.timezoneMinutesSuffix":{
        ref:"classAttr:GroupingMessages.timezoneMinutesSuffix",
        flags:"IRW",
        description:"Suffix to append to the timezoneMinutes grouping mode",
        name:"timezoneMinutesSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"minutes\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MetricSettings.gradationZeroLineProperties":{
        ref:"attr:MetricSettings.gradationZeroLineProperties",
        flags:"IR",
        description:"Properties for the gradation line drawn for zero (slightly thicker by default).",
        name:"gradationZeroLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "classMethod:Log.getStackTrace":{
        ref:"classMethod:Log.getStackTrace",
        flags:"",
        description:" Returns a \"stack trace\" - one line per method in the current call stack, showing the method\n name and any parameters passed.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.getStackTrace\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n <P>\n Platform Notes: In Mozilla Firefox, if Firebug is enabled, a stack trace will be logged\n to the firebug console in addition to the standard stack trace string returned by\n this method.\n <br>\n In browsers other than Internet Explorer a complete stack trace may not be available - \n this occurs when a function is re-entrant (meaning it calls itself). In this case the\n stack will terminate with text indicating where the recursive function call occurred.\n <P>\n See ${isc.DocUtils.linkForRef('group:debugging')} for further information information.\n\n",
        name:"getStackTrace",
        seeAlso:[
        ],
        returns:{
            description:"stack trace.  Use eg ${isc.DocUtils.linkForRef('method:Class.logWarn')} to log to the Developer Console.",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "attr:DynamicForm.autoFocusOnError":{
        ref:"attr:DynamicForm.autoFocusOnError",
        flags:"IRW",
        description:"If true, when ${isc.DocUtils.linkForRef('method:DynamicForm.validate','validation')} fails focus will automatically\n be put into the first focusable field which failed validation.",
        name:"autoFocusOnError",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "focus"
        ]
    },
    "attr:PickTreeItem.emptyMenuMessage":{
        ref:"attr:PickTreeItem.emptyMenuMessage",
        flags:"IRA",
        description:"This message will be displayed as a single, disabled option in any empty menu/submenu\n created from this item's data tree.",
        name:"emptyMenuMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"No items to display\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('pickTree')}"
        ],
        definingClass:"class:PickTreeItem"
    },
    "attr:Toolbar.vertical":{
        ref:"attr:Toolbar.vertical",
        flags:"IRW",
        description:"Indicates whether the buttons are drawn horizontally from left to right (false), or\n vertically from top to bottom (true).",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Toolbar",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.headerHoverVAlign":{
        ref:"attr:ListGrid.headerHoverVAlign",
        flags:"IRW",
        description:"This property may be set to customize the vertical alignment for the\n hover shown on ${isc.DocUtils.linkForRef('method:ListGrid.headerHover')}.",
        name:"headerHoverVAlign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:MenuButton.showMenu":{
        ref:"method:MenuButton.showMenu",
        flags:"",
        description:" Programmaticly forces this MenuButton to show it's menu.\n",
        name:"showMenu",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:MenuButton"
    },
    "method:ResultSet.get":{
        ref:"method:ResultSet.get",
        flags:"",
        description:" Returns the record at the specified position.\n <P>\n All List access methods of the ResultSet have the semantics described in <code>getRange()</code>.\n",
        name:"get",
        seeAlso:[
            {
                ref:"method:ResultSet.getRange",
                description:null
            }
        ],
        params:[
            {
                description:"position of the element to get",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"whatever's at that position, undef if not found",
            type:"object"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access"
        ]
    },
    "method:ListGrid.isSelected":{
        ref:"method:ListGrid.isSelected",
        flags:"",
        description:" Returns true if the record is selected.\n \n",
        name:"isSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"record to check",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"true if record is selected; false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Tab.canClose":{
        ref:"attr:Tab.canClose",
        flags:"IRW",
        description:"Determines whether this tab should show a close icon allowing the user to dismiss the tab\n by clicking on the close icon directly. The URL for the close icon's image will be derived from \n ${isc.DocUtils.linkForRef('attr:TabSet.closeTabIcon')} by default, but may be overridden by explicitly specifying\n ${isc.DocUtils.linkForRef('attr:Tab.closeIcon')}.\n <p>\n If unset or null, this property is derived from ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')}.\n <p>\n Note that setting <code>canClose</code> means that ${isc.DocUtils.linkForRef('attr:Tab.icon')} cannot be used,\n because it's used for the ${isc.DocUtils.linkForRef('attr:Tab.closeIcon','closeIcon')} - see\n ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')} for a workaround.\n <p>\n After the TabSet has been created, you can change a tab's canClose property by calling\n ${isc.DocUtils.linkForRef('method:TabSet.setCanCloseTab')}.",
        name:"canClose",
        seeAlso:[
            {
                ref:"method:TabSet.closeClick",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('closeableTabs')}"
        ],
        definingClass:"object:Tab"
    },
    "object:Number":{
        methods:[
            "method:Number.stringify",
            "method:Number.toCurrencyString"
        ],
        ref:"object:Number",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Extra methods added to the Number object, available on all number variables.",
        name:"Number",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:DynamicForm.cellPadding":{
        ref:"attr:DynamicForm.cellPadding",
        flags:"IRW",
        description:"The amount of empty space, in pixels, surrounding each form item within its cell in\n the layout grid.",
        name:"cellPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "class:NumberUtil":{
        methods:[
        ],
        ref:"class:NumberUtil",
        classAttrs:[
            "classAttr:NumberUtil.decimalSymbol",
            "classAttr:NumberUtil.groupingSymbol",
            "classAttr:NumberUtil.negativeSymbol",
            "classAttr:NumberUtil.currencySymbol",
            "classAttr:NumberUtil.negativeFormat",
            "classAttr:NumberUtil.groupingFormat"
        ],
        classMethods:[
            "classMethod:NumberUtil.stringify",
            "classMethod:NumberUtil.toCurrencyString",
            "classMethod:NumberUtil.toLocalizedString",
            "classMethod:NumberUtil.toUSString",
            "classMethod:NumberUtil.toUSCurrencyString",
            "classMethod:NumberUtil.parseInt",
            "classMethod:NumberUtil.parseFloat",
            "classMethod:NumberUtil.parseIfNumeric",
            "classMethod:NumberUtil.format"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Static singleton class containing APIs for interacting with Numbers.",
        name:"NumberUtil",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSource.inheritanceMode":{
        ref:"attr:DataSource.inheritanceMode",
        flags:"IR",
        description:"For dataSources of ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')} \"sql\" and \"hibrenate\", specifies the inheritance \n mode to use.  This property has no effect for any other type of DataSource.",
        name:"inheritanceMode",
        seeAlso:[
            {
                ref:"attr:DataSource.inheritsFrom",
                description:null
            }
        ],
        valueType:"DSInheritanceMode",
        defaultValue:"\"full\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "attr:ImgSectionHeader.iconSize":{
        ref:"attr:ImgSectionHeader.iconSize",
        flags:"IR",
        description:"Size in pixels of the icon image.\n <P>\n The <code>iconWidth</code> and <code>iconHeight</code> properties can be used to\n configure width and height separately.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "buttonIcon"
        ]
    },
    "method:validatorDefinition.action":{
        ref:"method:validatorDefinition.action",
        flags:"",
        description:" This method is called after every validation (i.e. call to\n ${isc.DocUtils.linkForRef('method:validatorDefinition.condition')}) whether it passed or failed. This allows the\n validator perform an operation on the field based on the validation outcome.\n <p>\n An <code>action()</code> method is not needed to report an error message only.\n\n",
        name:"action",
        seeAlso:[
        ],
        params:[
            {
                description:"The result of the validator. The value will be null if                              the validator was skipped because of conditional criteria.",
                optional:false,
                name:"result",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"FormItem or DataSourceField on which this                                           validator was declared.  NOTE: FormItem will not\n                                           be available during a save performed without a\n                                           form (eg programmatic save) or if the field \n                                           is not available in the form.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"DataSourceField or FormItem"
            },
            {
                description:"Validator declaration from eg                              ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')}.",
                optional:false,
                name:"validator",
                defaultValue:null,
                type:"Validator"
            },
            {
                description:"Record that was validated",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"The DataBoundComponent holding the item such                                       DynamicForm or ListGrid.",
                optional:false,
                name:"component",
                defaultValue:null,
                type:"DataBoundComponent"
            }
        ],
        type:"method",
        definingClass:"object:validatorDefinition"
    },
    "method:GridRenderer.rowMouseDown":{
        ref:"method:GridRenderer.rowMouseDown",
        flags:"A",
        description:" Called when a row receives a mousedown event.\n \n",
        name:"rowMouseDown",
        seeAlso:[
        ],
        params:[
            {
                description:"record object returned from 'getCellRecord()'",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:ListGrid.filterEditorHeight":{
        ref:"attr:ListGrid.filterEditorHeight",
        flags:"IRW",
        description:"Height for the filterEditor, if shown.",
        name:"filterEditorHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"22",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:ImgSectionHeader.prompt":{
        ref:"attr:ImgSectionHeader.prompt",
        flags:"IRW",
        description:"Prompt displayed in hover canvas if ${isc.DocUtils.linkForRef('attr:Canvas.showHover','showHover')} is true.",
        name:"prompt",
        setter:[
            "setPrompt"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customHovers')}"
        ],
        definingClass:"class:ImgSectionHeader",
        groups:[
            "hovers"
        ]
    },
    "attr:ListGrid.headerAutoFitEvent":{
        ref:"attr:ListGrid.headerAutoFitEvent",
        flags:"IR",
        description:"Event on a ListGrid header that triggers auto fitting to data and/or title.\n <P>\n Note that if sorting is enabled for the field and the headerAutoFitEvent is \"click\", both\n sorting and autofit occur on a click.",
        name:"headerAutoFitEvent",
        seeAlso:[
        ],
        valueType:"AutoFitEvent",
        defaultValue:"\"doubleClick\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "attr:TileLayout.tileHeight":{
        ref:"attr:TileLayout.tileHeight",
        flags:"IR",
        description:"Height of each tile in pixels.  See ${isc.DocUtils.linkForRef('attr:TileLayout.tileSize')}.\n If ${isc.DocUtils.linkForRef('type:LayoutPolicy')} is \"fit\", ${isc.DocUtils.linkForRef('attr:TileLayout.expandMargins')} is false, ${isc.DocUtils.linkForRef('attr:TileLayout.tilesPerLine')} is set, \n ${isc.DocUtils.linkForRef('type:Orientation')} is \"vertical\",\n and tileHeight is not set, tileHeight will be computed automatically based on ${isc.DocUtils.linkForRef('attr:TileLayout.tilesPerLine')}.",
        name:"tileHeight",
        setter:[
            "setTileHeight"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "sizing"
        ]
    },
    "method:DynamicForm.handleHiddenValidationErrors":{
        ref:"method:DynamicForm.handleHiddenValidationErrors",
        flags:"A",
        description:" Method to display validation error messages for fields that are not currently visible \n in this form.<br>\n This will be called when validation fails for<br>\n - a hidden field in this form<br>\n - if this form is databound, a datasource field with specified validators, for which we\n   have no specified form item.<br>\n Implement this to provide custom validation error handling for these fields.<br>\n By default hidden validation errors will be logged as warnings in the developerConsole.\n Return false from this method to suppress that behavior.\n",
        name:"handleHiddenValidationErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"The set of errors returned - this is an object of the form<br>                      &nbsp;&nbsp;<code>{fieldName:errors}</code><br>\n                      Where the 'errors' object is either a single string or an array\n                      of strings containing the error messages for the field.",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"false from this method to suppress that behavior",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "method:Layout.hideDropLine":{
        ref:"method:Layout.hideDropLine",
        flags:"A",
        description:" Calling this method hides the dropLine shown during a drag and drop interaction with a\n Layout that has ${isc.DocUtils.linkForRef('attr:Layout.canDropComponents')} set to true.  This method is only useful for\n custom implementations of ${isc.DocUtils.linkForRef('method:Layout.drop')} as the default implementation calls this\n method automatically.\n\n",
        name:"hideDropLine",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:DynamicForm.clipItemTitles":{
        ref:"attr:DynamicForm.clipItemTitles",
        flags:"IRW",
        description:"Should the titles for form items be clipped if they are too large for the available \n space?\n <p>\n Can be overridden for individual items via ${isc.DocUtils.linkForRef('attr:FormItem.clipTitle')}.",
        name:"clipItemTitles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:DataSource.quoteColumnNames":{
        ref:"attr:DataSource.quoteColumnNames",
        flags:"IR",
        description:"If set, tells the SQL engine to quote column names in all generated DML and DDL \n statements for this dataSource.  This will ensure that queries generated against\n tables that do not follow the database product's natural column-naming conventions \n will still work.\n <p>\n In general we recommend that you allow the database to use its natural naming scheme\n when creating tables (put more simply, just do not quote column names in the \n <code>CREATE TABLE</code> statement); if you do this, you will not need to worry about \n quoting column names when querying.  However, if you are dealing with pre-existing \n tables, or do not have control over the database naming conventions used, this property\n may become necessary.  This property may also be necessary if you are using field/column\n names that clash with reserved words in the underlying database (these vary by database,\n but a field called \"date\" or \"timestamp\" would have problems with most database products)\n <p>\n <b>Note:</b> Only applicable to dataSources of ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')} \"sql\".",
        name:"quoteColumnNames",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:TimeItem.hourMaxValue":{
        ref:"attr:TimeItem.hourMaxValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourValues','hourValues')} is unset, this attribute specifies the maximum\n value present in the hour picker.\n <P>Used for specifying a limited set of valid Hour values, or when using the \n TimeItem to record duration, rather than time per-se.  The default is 11 or 23, \n according to the value of ${isc.DocUtils.linkForRef('attr:TimeItem.use24HourTime','use24HourTime')} and\n ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter','timeFormatter')}.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.hourMinValue','hourMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourIncrement','hourIncrement')}.",
        name:"hourMaxValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:ListGrid.cellPadding":{
        ref:"attr:ListGrid.cellPadding",
        flags:"IRW",
        description:"The amount of empty space, in pixels, surrounding each value in its cell.",
        name:"cellPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "method:ListGrid.setDataSource":{
        ref:"method:ListGrid.setDataSource",
        flags:"",
        description:" Bind to a new DataSource.\n <P>\n Like passing the \"dataSource\" property on creation, binding to a DataSource means that the\n component will use the DataSource to provide default data for its fields.\n <P>\n When binding to a new DataSource, if the component has any existing \"fields\" or has a dataset,\n these will be discarded by default, since it is assumed the new DataSource may represent a\n completely unrelated set of objects.  If the old \"fields\" are still relevant, pass them to\n setDataSource().\n \n",
        name:"setDataSource",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource to bind to",
                optional:false,
                name:"dataSource",
                defaultValue:null,
                type:"ID or DataSource"
            },
            {
                description:"optional array of fields to use",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of Fields"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('WSDLDataSource')}"
        ],
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.bodyKeyPress":{
        ref:"method:ListGrid.bodyKeyPress",
        flags:"",
        description:" Handle a keyPress event on the body.\n <P>\n Default implementation handles navigating between records with arrow keys, and activating\n records with space and enter.\n\n",
        name:"bodyKeyPress",
        seeAlso:[
        ],
        returns:{
            description:"return false to cancel",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TreeGridField.treeField":{
        ref:"attr:TreeGridField.treeField",
        flags:"IRW",
        description:"The field containing <code>treeField: true</code> will display the ${isc.DocUtils.linkForRef('class:Tree')}.  If no\n field specifies this property, if a field named after the ${isc.DocUtils.linkForRef('attr:Tree.titleProperty')} of\n the Tree is present in ${isc.DocUtils.linkForRef('attr:TreeGrid.fields')}, that field will show the tree.  Note that\n when using a DataSource, you typically define the title field via\n ${isc.DocUtils.linkForRef('attr:DataSource.titleField')} and the generated ${isc.DocUtils.linkForRef('class:ResultTree')} automatically uses this\n field.\n\n If none of the above rules apply, the first field in ${isc.DocUtils.linkForRef('attr:TreeGrid.fields')} is assigned to\n display the ${isc.DocUtils.linkForRef('class:Tree')}.",
        name:"treeField",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"see below",
        type:"attr",
        definingClass:"object:TreeGridField",
        groups:[
            "treeField"
        ]
    },
    "class:PasswordItem":{
        methods:[
        ],
        exampleConfig:"PasswordItem.xml",
        ref:"class:PasswordItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"FormItem for password fields, where text input by the user should not be shown in readable text.",
        name:"PasswordItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Canvas.getRight":{
        ref:"method:Canvas.getRight",
        flags:"",
        description:" Return the right coordinate of this object as rendered, relative to its enclosing context,\n in pixels.\n\n",
        name:"getRight",
        seeAlso:[
        ],
        returns:{
            description:"right coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning",
            "sizing"
        ]
    },
    "method:Calendar.dateIsWorkday":{
        ref:"method:Calendar.dateIsWorkday",
        flags:"",
        description:" Should the parameter date be considered a workday? By default this method tries to find the\n parameter date day in ${isc.DocUtils.linkForRef('attr:Calendar.workdays')}, and returns true if found. Override this method to\n provide custom logic for determining workday, for example returning false on holidays.\n <P>\n Note that, when showing ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes','vertical lanes')} in the \n ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day view')}, this method is also passed the name of the associated lane.\n\n",
        name:"dateIsWorkday",
        seeAlso:[
        ],
        params:[
            {
                description:"date to check for being a workday",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the name of the lane if ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} is true, null otherwise",
                optional:false,
                name:"laneName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"true if date is a workday, false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ColorPicker.basicColorLabel":{
        ref:"attr:ColorPicker.basicColorLabel",
        flags:"IR",
        description:"The label shown above the basic color blocks.",
        name:"basicColorLabel",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Basic Colors:\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.scrollToBottom":{
        ref:"method:Canvas.scrollToBottom",
        flags:"",
        description:" Vertically scrolls the content of the widget to the end of its content\n\n",
        name:"scrollToBottom",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:ListGrid.wrapCells":{
        ref:"attr:ListGrid.wrapCells",
        flags:"IRWA",
        description:"Should content within cells be allowed to wrap?\n <P>\n Even if content is allowed to wrap, if ${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights')} is set, the content\n will be clipped off at the cell boundary.  Either set a larger, fixed ${isc.DocUtils.linkForRef('attr:ListGrid.cellHeight')}\n to reveal more content, or set ${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights')} to false to allow auto-sizing.",
        name:"wrapCells",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('autofitValues')}"
        ],
        definingClass:"class:ListGrid"
    },
    "attr:DateChooser.skinImgDir":{
        ref:"attr:DateChooser.skinImgDir",
        flags:"IRWA",
        description:"Overridden directory where images for this widget (such as the month and year button icons)\n may be found.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"images/common/\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "class:StaticTextItem":{
        methods:[
        ],
        ref:"class:StaticTextItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:StaticTextItem.applyHeightToTextBox",
            "attr:StaticTextItem.wrap",
            "attr:StaticTextItem.clipValue",
            "attr:StaticTextItem.textBoxStyle",
            "attr:StaticTextItem.canSelectText",
            "attr:StaticTextItem.outputAsHTML",
            "attr:StaticTextItem.dateFormatter",
            "attr:StaticTextItem.escapeHTML"
        ],
        description:"A FormItem that displays an uneditable value.",
        name:"StaticTextItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Canvas.percentSource":{
        ref:"attr:Canvas.percentSource",
        flags:"IRWA",
        description:"If this canvas has its size specified as a percentage, this property allows the user to\n explicitly designate another canvas upon which sizing will be based.\n <P>\n If unset percentage sizing is based on<br>\n - the ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master canvas')} if there is one and\n   ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','snapTo')} is set,<br>\n - otherwise on the amount of space available in this widget's parent canvas, if this is\n   a child of some other widget<br>\n - otherwise the page size.",
        name:"percentSource",
        setter:[
            "setPercentSource"
        ],
        seeAlso:[
            {
                ref:"attr:Canvas.percentBox",
                description:null
            }
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:DrawCurve.lineCap":{
        ref:"attr:DrawCurve.lineCap",
        flags:"IRW",
        description:"Style of drawing the endpoints of a line.\n <P>\n Note that for dashed and dotted lines, the lineCap style affects each dash or dot.",
        name:"lineCap",
        seeAlso:[
        ],
        valueType:"LineCap",
        defaultValue:"\"butt\"",
        type:"attr",
        definingClass:"class:DrawCurve",
        groups:[
            "line"
        ]
    },
    "method:FormItem.shouldFetchMissingValue":{
        ref:"method:FormItem.shouldFetchMissingValue",
        flags:"",
        description:" If this field has a specified ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}, should we perform a fetch against\n that dataSource to find the record that matches this field's value?\n <P>\n If the value is non-null, this method is called when the item is first rendered \n or whenever the value is changed via a call to ${isc.DocUtils.linkForRef('method:FormItem.setValue')}. If it returns \n true, a fetch will be dispatched against the optionDataSource to get the record\n matching the value\n <P>\n When the fetch completes, if a record was found that matches the\n data value (and the form item value has not subsequently changed again), \n the item will be re-rendered to reflect any changes to the display value,\n and the record matching the value\n will be available via ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord','this.getSelectedRecord()')}.\n <P>\n Default behavior will return false if ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','this.fetchMissingValues')} is \n set to false. Otherwise it will return true if ${isc.DocUtils.linkForRef('attr:FormItem.alwaysFetchMissingValues','this.alwaysFetchMissingValues')} is\n set to true, or if a ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} is specified for this item and the item \n value is not already present in the item's valueMap.\n\n",
        name:"shouldFetchMissingValue",
        seeAlso:[
        ],
        params:[
            {
                description:"The new data value of the item.",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"should we fetch the record matching the new value from the   item's optionDataSource?",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:TreeGrid.canEditCell":{
        ref:"method:TreeGrid.canEditCell",
        flags:"",
        description:" Overridden to disallow editing of the ${isc.DocUtils.linkForRef('attr:TreeNode.name','name')} field of this grid's data\n tree. Also disallows editing of the auto-generated tree field, which displays the result\n of ${isc.DocUtils.linkForRef('method:Tree.getTitle')} on the node.\n",
        name:"canEditCell",
        seeAlso:[
        ],
        returns:{
            description:"Whether to allow editing this cell",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:TreeGrid.nodeContextClick":{
        ref:"method:TreeGrid.nodeContextClick",
        flags:"",
        description:"\n This method is called when a context click occurs on a leaf or folder record.  Note that\n if you set up a callback for <code>nodeContextClick()</code> and\n e.g. ${isc.DocUtils.linkForRef('method:TreeGrid.leafContextClick')}, then both will fire (in that order) if a leaf\n is contextclicked - unless <code>nodeContextClick()</code> returns false, in which case\n no further contextClick callbacks will be called.\n\n",
        name:"nodeContextClick",
        seeAlso:[
            {
                ref:"method:TreeGrid.folderContextClick",
                description:null
            },
            {
                ref:"method:TreeGrid.leafContextClick",
                description:null
            }
        ],
        params:[
            {
                description:"The TreeGrid on which the contextclick occurred.",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TreeGrid"
            },
            {
                description:"The node (record) on which the contextclick occurred.",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Index of the row where the contextclick occurred.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:CellSelection.selectSingleCell":{
        ref:"method:CellSelection.selectSingleCell",
        flags:"",
        description:"   select a single cell and deselect everything else\n",
        name:"selectSingleCell",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of cell to select",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column index of cell to select",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "attr:DynamicForm.numCols":{
        ref:"attr:DynamicForm.numCols",
        flags:"IRW",
        description:"The number of columns of titles and items in this form's layout grid. A title and\n corresponding item each have their own column, so to display two form elements per\n row (each having a title and item), you would set this property to 4.",
        name:"numCols",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "attr:TileLayout.layoutMargin":{
        ref:"attr:TileLayout.layoutMargin",
        flags:"IR",
        description:"A margin left around the outside of all tiles.",
        name:"layoutMargin",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutMargin"
        ]
    },
    "classAttr:RPCResponse.STATUS_VALIDATION_ERROR":{
        ref:"classAttr:RPCResponse.STATUS_VALIDATION_ERROR",
        flags:"R",
        description:"Indicates a validation failure on the server.\n See the error handling section in ${isc.DocUtils.linkForRef('class:RPCManager','RPCManager documentation')}\n for more information.",
        name:"STATUS_VALIDATION_ERROR",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-4",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "method:ListGrid.cellDoubleClick":{
        ref:"method:ListGrid.cellDoubleClick",
        flags:"",
        description:" Called when a cell receives a double click event.\n\n",
        name:"cellDoubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('cellClicks')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:FilterBuilder.inlineOrTitle":{
        ref:"attr:FilterBuilder.inlineOrTitle",
        flags:"IR",
        description:"Title for the \"Or\" operator (only applicable to the \"inline\" appearance)",
        name:"inlineOrTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"or\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColorPicker.lessButtonTitle":{
        ref:"attr:ColorPicker.lessButtonTitle",
        flags:"IR",
        description:"The title for the button that switches to a less complex view.",
        name:"lessButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"&lt;&lt; Less\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataBoundComponent.missingSummaryFieldValue":{
        ref:"attr:DataBoundComponent.missingSummaryFieldValue",
        flags:"IRW",
        description:"If a summary format string contains an invalid field reference, replace the reference\n with the missingSummaryFieldValue. The default value is \"-\".",
        name:"missingSummaryFieldValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"-\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "summaryFields"
        ]
    },
    "attr:DateItem.use24HourTime":{
        ref:"attr:DateItem.use24HourTime",
        flags:"IRW",
        description:"When showing the ${isc.DocUtils.linkForRef('class:DateChooser')} and the field is of type \"datetime\", whether\n the ${isc.DocUtils.linkForRef('attr:DateChooser.showTimeItem','time field')} should be set to use 24-hour time.  The \n default is true.\n <P>\n Has no effect if ${isc.DocUtils.linkForRef('attr:DateItem.showPickerTimeItem')} is explicitly set to <code>false</code>.",
        name:"use24HourTime",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "classMethod:Time.createDate":{
        ref:"classMethod:Time.createDate",
        deprecated:"use ${isc.DocUtils.linkForRef('classMethod:Time.createLogicalTime')} instead.",
        flags:"",
        description:" Creates a date object with the time set to the hours, minutes and seconds passed in.\n Unless the <code>UTCTime</code> parameter is passed in, parameters are assumed\n to specify the time in native local display time.\n",
        name:"createDate",
        seeAlso:[
        ],
        params:[
            {
                description:"Hours for the date (defaults to zero)",
                optional:true,
                name:"hours",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Minutes for the date (defaults to zero)",
                optional:true,
                name:"minutes",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Seconds for the date (defaults to zero)",
                optional:true,
                name:"seconds",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Milliseconds for the date (defaults to zero)",
                optional:true,
                name:"milliseconds",
                defaultValue:null,
                type:"number"
            },
            {
                description:"If true, treat the time passed in as UTC time rather than local time",
                optional:true,
                name:"UTCTime",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Time"
    },
    "attr:TreeGrid.animateFolderTime":{
        ref:"attr:TreeGrid.animateFolderTime",
        flags:"IRW",
        description:"When animating folder opening / closing, if ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolderSpeed')} is not\n set, this property designates the duration of the animation in ms.",
        name:"animateFolderTime",
        seeAlso:[
            {
                ref:"attr:TreeGrid.animateFolderSpeed",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "animation"
        ]
    },
    "method:ListGrid.getBody":{
        ref:"method:ListGrid.getBody",
        flags:"",
        description:" Returns the primary ${isc.DocUtils.linkForRef('attr:ListGrid.body','body')}, which, when there are frozen fields, is the\n ${isc.DocUtils.linkForRef('class:GridRenderer')} used to render the non-frozen portion of the dataset; otherwise, the\n primary body (the only body) is the GridRenderer used to render the entire dataset.\n",
        name:"getBody",
        seeAlso:[
        ],
        returns:{
            description:"the primary body or null if this ListGrid has not been drawn yet.",
            type:"GridRenderer"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:SelectItem.hiliteTextColor":{
        ref:"attr:SelectItem.hiliteTextColor",
        deprecated:"As of SmartClient version 5.5, if ${isc.DocUtils.linkForRef('attr:SelectItem.showFocused')} is true,  styling will be updated for this form item on focus. The hiliting effect can therefore\n  be achieved via ${isc.DocUtils.linkForRef('attr:SelectItem.textBoxStyle')} and ${isc.DocUtils.linkForRef('attr:SelectItem.controlStyle')} \n  instead.",
        flags:"IRWA",
        description:"Text color to apply to the select item's selected value when the SelectItem \n receives focus, if <code>hiliteOnFocus</code> is true.",
        name:"hiliteTextColor",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"white\"",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:FacetChart.hoverLabelProperties":{
        ref:"attr:FacetChart.hoverLabelProperties",
        flags:"IR",
        description:"Properties for text in a floating label that represents the data value shown whenever\n the mouse moves withing the main chart area when ${isc.DocUtils.linkForRef('attr:FacetChart.showValueOnHover')} is enabled.",
        name:"hoverLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:MultiGroupDialog.cancelButtonTitle":{
        ref:"attr:MultiGroupDialog.cancelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the cancelButton",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.itemHoverVAlign":{
        ref:"attr:DynamicForm.itemHoverVAlign",
        flags:"IRW",
        description:"Vertical text alignment for hovers shown for items",
        name:"itemHoverVAlign",
        seeAlso:[
            {
                ref:"attr:FormItem.hoverVAlign",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "method:DynamicForm.getChangedValues":{
        ref:"method:DynamicForm.getChangedValues",
        flags:"",
        description:" Returns all values within this DynamicForm that have changed since \n ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')} last ran. Note that ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')}\n runs on dynamicForm initialization, and with every call to ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}\n so this will typically contain all values the user has explicitly edited since then.\n",
        name:"getChangedValues",
        seeAlso:[
            {
                ref:"method:DynamicForm.getOldValues",
                description:null
            }
        ],
        returns:{
            description:"changed values in the form",
            type:"Object"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "attr:TableView.recordInfoStyle":{
        ref:"attr:TableView.recordInfoStyle",
        flags:"IRW",
        description:"Default style for info field.",
        name:"recordInfoStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"recordInfo\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "class:DrawRect":{
        methods:[
            "method:DrawRect.setCenter",
            "method:DrawRect.getCenter",
            "method:DrawRect.getBoundingBox",
            "method:DrawRect.moveBy",
            "method:DrawRect.moveTo",
            "method:DrawRect.setLeft",
            "method:DrawRect.setTop",
            "method:DrawRect.resizeTo",
            "method:DrawRect.resizeBy",
            "method:DrawRect.setWidth",
            "method:DrawRect.setHeight",
            "method:DrawRect.setRect",
            "method:DrawRect.setRounding"
        ],
        ref:"class:DrawRect",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawRect.left",
            "attr:DrawRect.top",
            "attr:DrawRect.width",
            "attr:DrawRect.height",
            "attr:DrawRect.rounding",
            "attr:DrawRect.lineCap"
        ],
        description:"DrawItem subclass to render rectangle shapes, optionally with rounded corners.",
        name:"DrawRect",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "method:SplitPane.setAddHistoryEntries":{
        ref:"method:SplitPane.setAddHistoryEntries",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:SplitPane.addHistoryEntries')}.\n",
        name:"setAddHistoryEntries",
        seeAlso:[
        ],
        params:[
            {
                description:"the new setting.",
                optional:false,
                name:"addHistoryEntries",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "attr:DataSource.endGap":{
        ref:"attr:DataSource.endGap",
        flags:"IRW",
        description:"If we are ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','loading progressively')}, indicates the number of \n extra records SmartClient Server will advertise as being available, if it detects that \n there are more records to view (see ${isc.DocUtils.linkForRef('attr:DataSource.lookAhead','lookAhead')}).  This property has no \n effect if we are not progressive-loading.",
        name:"endGap",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            },
            {
                ref:"attr:DataSource.lookAhead",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"20",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "progressiveLoading"
        ]
    },
    "attr:PickList.cachePickListResults":{
        ref:"attr:PickList.cachePickListResults",
        flags:"IR",
        description:"For databound pickLists (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}), by default SmartClient\n will cache and re-use datasets shown by pickLists in an LRU (least recently used) caching\n pattern.\n <P>\n Setting this flag to false avoids this caching for situations where it is too aggressive.",
        name:"cachePickListResults",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:FormItem.optionFilterContext":{
        ref:"attr:FormItem.optionFilterContext",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code>, and this property is\n not null, this will be passed to the datasource as ${isc.DocUtils.linkForRef('class:RPCRequest')} properties when\n performing the fetch operation on the dataSource to obtain a data-value to display-value\n mapping",
        name:"optionFilterContext",
        seeAlso:[
        ],
        valueType:"RPCRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:DateChooser.fiscalYearChooserButton":{
        ref:"attr:DateChooser.fiscalYearChooserButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} which, \n when clicked, shows a picker for selecting a specific fiscal year.",
        name:"fiscalYearChooserButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:Layout.minMemberSize":{
        ref:"attr:Layout.minMemberSize",
        flags:"IRW",
        description:"Minimum size, in pixels, below which flexible-sized members should never be shrunk, even\n if this requires the Layout to overflow.  \n <p>\n Does not apply to members given a fixed size in pixels - such members will never be\n shrunk below their specified size in general.",
        name:"minMemberSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "class:UserTask":{
        methods:[
            "method:UserTask.goToPrevious",
            "method:UserTask.cancelEditing",
            "method:UserTask.completeEditing"
        ],
        ref:"class:UserTask",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:UserTask.targetView",
            "attr:UserTask.targetForm",
            "attr:UserTask.inlineView",
            "attr:UserTask.targetVM",
            "attr:UserTask.saveToServer",
            "attr:UserTask.wizard",
            "attr:UserTask.cancelElement",
            "attr:UserTask.previousElement"
        ],
        description:"A task that involves showing a user interface to the end user allowing the user to view and\n input data and press a button (or do some other UI gesture) to complete the task.\n <P>\n A UserTask takes the following steps:\n <ul>\n <li> Optionally show() or otherwise make visible the ${isc.DocUtils.linkForRef('attr:UserTask.targetView','targetView')}\n <li> Provide values to either a ${isc.DocUtils.linkForRef('class:DynamicForm')} designated as the ${isc.DocUtils.linkForRef('attr:UserTask.targetForm','targetForm')} or to\n      a ${isc.DocUtils.linkForRef('class:ValuesManager')} designated as the ${isc.DocUtils.linkForRef('attr:UserTask.targetVM','targetVM')}, via ${isc.DocUtils.linkForRef('method:ValuesManager.setValues','setValues()')}\n <li> Waits for notification of completion or cancellation.  The UserTask is notified of\n      completion if a ${isc.DocUtils.linkForRef('class:SubmitItem')} is pressed in either the <code>targetForm</code> or\n      any form that is a member of the <code>targetVM</code>.  Likewise a ${isc.DocUtils.linkForRef('class:CancelItem')}\n      triggers cancellation.  Direct calls to ${isc.DocUtils.linkForRef('method:DynamicForm.cancelEditing')} or\n      ${isc.DocUtils.linkForRef('method:DynamicForm.completeEditing')} achieve the same result.\n <li> if cancellation occurs, the process continues to the ${isc.DocUtils.linkForRef('attr:UserTask.cancelElement','cancelElement')}\n <li> if completion occurs, values are retrieved from the form or valuesManager and applied\n      to the process state\n </ul>",
        name:"UserTask",
        seeAlso:[
        ],
        type:"class"
    },
    "method:GridRenderer.setColumnWidth":{
        ref:"method:GridRenderer.setColumnWidth",
        flags:"",
        description:" Sets the width of a single column.\n\n",
        name:"setColumnWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"the number of the column to resize",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the new width",
                optional:false,
                name:"newWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:DynamicForm.setSaveOperationType":{
        ref:"method:DynamicForm.setSaveOperationType",
        flags:"",
        description:" Setter for the default ${isc.DocUtils.linkForRef('type:DSOperationType')} when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is called.\n Note that this property can also be set by calling ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')} or \n ${isc.DocUtils.linkForRef('method:DynamicForm.editNewRecord')}\n\n",
        name:"setSaveOperationType",
        seeAlso:[
        ],
        params:[
            {
                description:"Operation type to use as a default. Valid values are  <code>\"add\"</code> or <code>\"update\"</code>.",
                optional:false,
                name:"operationType",
                defaultValue:null,
                type:"DSOperationType"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:FormItem.titleAlign":{
        ref:"attr:FormItem.titleAlign",
        flags:"IRW",
        description:"Alignment of this item's title in its cell.\n <p>\n If null, dynamically set according to text direction.",
        name:"titleAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "class:MultiGroupDialog":{
        methods:[
            "method:MultiGroupDialog.getNumLevels",
            "method:MultiGroupDialog.getGroup",
            "method:MultiGroupDialog.validate"
        ],
        ref:"class:MultiGroupDialog",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:MultiGroupDialog.askForGrouping"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:MultiGroupDialog.title",
            "attr:MultiGroupDialog.addLevelButtonTitle",
            "attr:MultiGroupDialog.deleteLevelButtonTitle",
            "attr:MultiGroupDialog.copyLevelButtonTitle",
            "attr:MultiGroupDialog.levelUpButtonTitle",
            "attr:MultiGroupDialog.levelDownButtonTitle",
            "attr:MultiGroupDialog.invalidListPrompt",
            "attr:MultiGroupDialog.propertyFieldTitle",
            "attr:MultiGroupDialog.groupingFieldTitle",
            "attr:MultiGroupDialog.initialGrouping",
            "attr:MultiGroupDialog.maxLevels",
            "attr:MultiGroupDialog.applyButtonTitle",
            "attr:MultiGroupDialog.cancelButtonTitle",
            "attr:MultiGroupDialog.applyButton",
            "attr:MultiGroupDialog.cancelButton",
            "attr:MultiGroupDialog.addLevelButton",
            "attr:MultiGroupDialog.deleteLevelButton",
            "attr:MultiGroupDialog.copyLevelButton",
            "attr:MultiGroupDialog.levelUpButton",
            "attr:MultiGroupDialog.levelDownButton",
            "attr:MultiGroupDialog.fields",
            "attr:MultiGroupDialog.optionsGrid"
        ],
        description:"A dialog that allows the user to set up complex grouping arrangements by defining a group of\n ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.\n <P>\n Each ${isc.DocUtils.linkForRef('object:GroupSpecifier')} applies to a single property and grouping - so, for instance, in \n a grid with two columns, <code>Nationhood</code> and <code>Country</code>, you could group first \n by <code>Nationhood</code> with its selected groupingMode and then by <code>Country</code> with its selected groupingMode.\n <P>\n <i><b>Important Note:</b> this class should not be used directly - it is exposed purely for\n ${isc.DocUtils.linkForRef('group:i18nMessages','i18n reasons.')}</i>",
        name:"MultiGroupDialog",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Button.setActionType":{
        ref:"method:Button.setActionType",
        flags:"",
        description:" Update the 'actionType' for this canvas (radio / checkbox / button)\n If the canvas is currently selected, and the passed in actionType is 'button'\n this method will deselect the canvas.\n",
        name:"setActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:Facet.selectionBoundary":{
        ref:"attr:Facet.selectionBoundary",
        flags:"IR",
        description:"Selection boundary determining what facets / facetValues can be selected together by\n drag selection / shift+click selection.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"selectionBoundary",
        seeAlso:[
        ],
        valueType:"SelectionBoundary",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:DataBoundComponent.exportIncludeSummaries":{
        ref:"attr:DataBoundComponent.exportIncludeSummaries",
        flags:"IRW",
        description:"If Summary rows exist for this component, whether to include them when exporting client data.",
        name:"exportIncludeSummaries",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "method:Gauge.getDefaultFillColor":{
        ref:"method:Gauge.getDefaultFillColor",
        flags:"A",
        description:" Gets the default fill color for the sector at index <code>sectorIndex</code>. The default\n implementation cycles through ${isc.DocUtils.linkForRef('attr:Gauge.sectorColors','sectorColors')}\n using modular arithmetic.\n\n",
        name:"getDefaultFillColor",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the target sector.",
                optional:false,
                name:"sectorIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"a fill color.",
            type:"CSSColor"
        },
        type:"method",
        definingClass:"class:Gauge"
    },
    "type:Visibility":{
        ref:"type:Visibility",
        values:[
            {
                description:"The widget visibility will match that of its parent (usually visible).",
                value:"Canvas.INHERIT"
            },
            {
                description:"The widget will always be visible whether its parent is or not.",
                value:"Canvas.VISIBLE"
            },
            {
                description:"The widget will always be hidden even when its parent is visible.",
                value:"Canvas.HIDDEN"
            }
        ],
        description:null,
        name:"Visibility",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "visibility"
        ]
    },
    "attr:Canvas.redrawOnResize":{
        ref:"attr:Canvas.redrawOnResize",
        flags:"IRWA",
        description:"Should this element be redrawn in response to a resize?\n <P>\n Should be set to true for components whose ${isc.DocUtils.linkForRef('method:Canvas.getInnerHTML','inner HTML')} will not\n automatically reflow to fit the component's new size.",
        name:"redrawOnResize",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "attr:Calendar.endDateField":{
        ref:"attr:Calendar.endDateField",
        flags:"IR",
        description:"The name of the end date field in a ${isc.DocUtils.linkForRef('object:CalendarEvent')}.",
        name:"endDateField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"endDate\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:FieldPicker.availableFieldsHeaderControls":{
        ref:"attr:FieldPicker.availableFieldsHeaderControls",
        flags:"IR",
        description:"Provides a set of controls to appear as \n ${isc.DocUtils.linkForRef('attr:SectionHeader.controls','section header controls')} above the available fields grid.",
        name:"availableFieldsHeaderControls",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FieldPicker"
    },
    "attr:TileGrid.canDragTilesOut":{
        ref:"attr:TileGrid.canDragTilesOut",
        flags:"IRW",
        description:"Indicates whether tiles can be dragged from this tileGrid and dropped elsewhere.",
        name:"canDragTilesOut",
        setter:[
            "setCanDragTilesOut"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "dragging"
        ]
    },
    "method:DrawImage.setSrc":{
        ref:"method:DrawImage.setSrc",
        flags:"",
        description:" Change the URL of the image displayed.\n",
        name:"setSrc",
        seeAlso:[
        ],
        params:[
            {
                description:"new URL",
                optional:false,
                name:"src",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:DrawImage"
    },
    "method:DataBoundComponent.transferRecords":{
        ref:"method:DataBoundComponent.transferRecords",
        flags:"",
        description:"\n Transfer a list of ${isc.DocUtils.linkForRef('object:Record')}s from another component (does not have to be a databound\n component) into this component.  This method is only applicable to list-type components,\n such as ${isc.DocUtils.linkForRef('class:ListGrid','listGrid')}, ${isc.DocUtils.linkForRef('class:TreeGrid','treeGrid')} or ${isc.DocUtils.linkForRef('class:TileGrid','tileGrid')}\n <P>\n This method implements the automatic drag-copy and drag-move behaviors of components like\n ${isc.DocUtils.linkForRef('class:ListGrid')}, and calling it is equivalent to completing a drag and drop of the\n <code>dropRecords</code>.\n <P>\n Note that this method is asynchronous - it may need to perform server turnarounds to prevent\n duplicates in the target component's data.  If you wish to be notified when the transfer \n process has completed, you can either pass the optional callback to this method or implement\n the ${isc.DocUtils.linkForRef('method:DataBoundComponent.dropComplete')} method on this component.\n <P>\n See also ${isc.DocUtils.linkForRef('method:DataBoundComponent.transferSelectedData')}.\n\n",
        name:"transferRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"Records to transfer to this component",
                optional:false,
                name:"dropRecords",
                defaultValue:null,
                type:"Array of Record"
            },
            {
                description:"The target record (eg, of a drop interaction), for context",
                optional:false,
                name:"targetRecord",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"Insert point in this component's data for the transferred records",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"The databound or non-databound component from which the records                            are to be transferred.",
                optional:false,
                name:"sourceWidget",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"optional callback to be fired when the transfer process has completed",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragdrop"
        ]
    },
    "attr:FilterClause.fieldPicker":{
        ref:"attr:FilterClause.fieldPicker",
        flags:"IR",
        description:"AutoChild for the ${isc.DocUtils.linkForRef('class:FormItem')} that allows a user to pick a DataSource field when \n creating filter clauses.\n <P>\n This will be a ${isc.DocUtils.linkForRef('class:SelectItem')} by default, or a ${isc.DocUtils.linkForRef('class:ComboBoxItem')} if\n ${isc.DocUtils.linkForRef('attr:FilterBuilder.fieldDataSource')} has been specified.",
        name:"fieldPicker",
        seeAlso:[
        ],
        valueType:"AutoChild PickList",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:Canvas.snapToGrid":{
        ref:"attr:Canvas.snapToGrid",
        flags:"IRW",
        description:"Causes this canvas to snap to its parent's grid when dragging.",
        name:"snapToGrid",
        seeAlso:[
            {
                ref:"attr:Canvas.childrenSnapToGrid",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:MultiSortDialog.maxLevels":{
        ref:"attr:MultiSortDialog.maxLevels",
        flags:"IR",
        description:"The maximum number of levels of sorting that can be applied.  Since each sort-property or\n field-name can be used only once in a given multi-sort operation, if no maxLevels value\n or a value larger than the total number of available properties is specified, it will \n default to the total number of available properties.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.",
        name:"maxLevels",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "classAttr:AutoTest.implicitNetworkWait":{
        ref:"classAttr:AutoTest.implicitNetworkWait",
        flags:"IRW",
        description:"Controls whether certain AutoTest APIs wait for network operations to complete\n before returning true.  When value is true, ${isc.DocUtils.linkForRef('classMethod:AutoTest.isElementClickable')}\n will return false until all network operations have completed.",
        name:"implicitNetworkWait",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"classAttr",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "method:Canvas.setEdgeOpacity":{
        ref:"method:Canvas.setEdgeOpacity",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:Canvas.edgeOpacity')} and mark the canvas for redraw\n",
        name:"setEdgeOpacity",
        seeAlso:[
        ],
        params:[
            {
                description:"new edge-opacity level",
                optional:false,
                name:"newOpacity",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('edges')}"
        ],
        definingClass:"class:Canvas"
    },
    "group:loadDSTag":{
        ref:"group:loadDSTag",
        title:"&lt;isomorphic:loadDS&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> JavaScript\n <p>\n This tag converts a SmartClient DataSource or SimpleType defined in XML to JavaScript for\n use in databinding on the client (browser).\n <p>\n Note that this JSP tag must be surrounded by &lt;SCRIPT&gt; tags in the JSP because it\n generates JavaScript code.  Like other tags that generate JavaScript code, this tag can be\n used in a JSP that is included from your main page in order to create separate\n cacheability.  For example:\n <pre>\n &lt;SCRIPT SRC=\"myDataSources.jsp\"&gt;&lt;/SCRIPT&gt;\n </pre>\n <p>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>ID</b><br>\n <i>value format</i>: String - ID of datasource or simpleType to load<br>\n <i>default value</i>: NONE\n <p>\n This attribute specifies the name of the dataSource or simpleType that you wish to load.\n DataSources are located in <code>[webroot]/shared/ds</code> by default.  This location is\n changeable in <code>[webroot]/WEB-INF/classes/server.properties</code> by setting the config\n parameter <code>project.datasources</code> to the directory where your dataSources are\n located.\n We recommend that for prototyping, at least, you use the default directory.\n <p>\n For example:\n <pre>\n &lt;isomorphic:loadDS ID=\"supplyItem\"/&gt;\n </pre>\n Would load the <code>supplyItem</code> DataSource.\n <p>\n You can also load multiple dataSources in one go by specifying a comma-separated list of \n dataSource names as the ID.  For example:\n <pre>\n &lt;isomorphic:loadDS ID=\"supplyItem, employees, worldDS\"/&gt;\n </pre>    \n See ${isc.DocUtils.linkForRef('group:dataSourceDeclaration')} for more details on creating DataSources and an\n example.\n <p>\n See ${isc.DocUtils.linkForRef('class:SimpleType')} for more details on how to define server-side SimpleType in\n xml format.\n <p>\n <b>name</b><br>\n <i>value format</i>: String - ID of datasource to load<br>\n <i>default value</i>: NONE\n <p>\n This is a synonym for the <code>ID</code> attribute.",
        name:"loadDSTag",
        seeAlso:[
            {
                ref:"group:dataSourceDeclaration",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:MultiSortDialog.descendingTitle":{
        ref:"attr:MultiSortDialog.descendingTitle",
        flags:"IR",
        description:"The title-text to appear in the \"direction\" field's SelectItem for a \"descending\" sort\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"descendingTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Descending\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ResultSet.findNextIndex":{
        ref:"method:ResultSet.findNextIndex",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:List.findNextIndex')}.  Checks only loaded rows and will not trigger a fetch.\n",
        name:"findNextIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"first index to consider",
                optional:false,
                name:"startIndex",
                defaultValue:null,
                type:"int"
            },
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access",
            "find"
        ]
    },
    "classMethod:Date.getFiscalStartDate":{
        ref:"classMethod:Date.getFiscalStartDate",
        flags:"",
        description:" Returns the start date of the fiscal year for the passed date.\n\n",
        name:"getFiscalStartDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the date, or the year-number, to get the fiscal year for",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date | number"
            },
            {
                description:"the object representing the starts of one or more                              fiscal years",
                optional:true,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        returns:{
            description:"the start of the fiscal year for the passed date and fiscalCalendar",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "method:Canvas.dragResizeMove":{
        ref:"method:Canvas.dragResizeMove",
        flags:"A",
        description:"\n Executed every time the mouse moves while drag-resizing. If this method\n does not return false, the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} (or outline if\n ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')} is set to \"outline\") will automatically be moved as appropriate\n whenever the mouse moves.\n\n",
        name:"dragResizeMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to suppress auto-resize of the ${isc.DocUtils.linkForRef('attr:Canvas.dragTarget')} or outline.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:MultiGroupPanel.groupChanged":{
        ref:"method:MultiGroupPanel.groupChanged",
        flags:"",
        description:" Fired whenever the group configuration changes.  The single parameter is an array of\n ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s that represent the list of group-levels as they appear after \n whatever change has occurred.\n\n",
        name:"groupChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"The current group configuration, after any changes",
                optional:false,
                name:"groupLevels",
                defaultValue:null,
                type:"Array of GroupSpecifier"
            }
        ],
        type:"method",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:ListGridField.hiliteHTMLAfterFormat":{
        ref:"attr:ListGridField.hiliteHTMLAfterFormat",
        flags:"IR",
        description:"If set to true, custom HTML applied as part of hiliting will be applied after\n ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue','formatting')} for each cell in this column. If false, hilite\n HTML will be applied before formatting.\n <P>\n This attribute overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteHTMLAfterFormat')} as defined at the\n component level.",
        name:"hiliteHTMLAfterFormat",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:SectionStack.canCollapseAll":{
        ref:"attr:SectionStack.canCollapseAll",
        flags:"IRW",
        description:"In ${isc.DocUtils.linkForRef('attr:SectionStack.visibilityMode')} \"mutex\", whether to allow the last\n remaining expanded section to be collapsed.  If false, collapsing the\n last open section will open the next one (wrapping around at the end).",
        name:"canCollapseAll",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "classMethod:Class.setDefaultLogPriority":{
        ref:"classMethod:Class.setDefaultLogPriority",
        flags:"",
        description:" Set the default priority of logging for messages logged on this Class or Instance object.\n All categories for which there is no explicit, instance level logging priority set will\n log at this level on this object.<br>  \n To set the default visible log priority across the entire page, use\n <code>isc.Log.setDefaultPriority()</code> instead.\n",
        name:"setDefaultLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category for which the log priority will be updated. If not                          all logs on this canvas will be logged at the priority passed in.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"string"
            },
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:ComboBoxItem.getCriterion":{
        ref:"method:ComboBoxItem.getCriterion",
        flags:"",
        description:" Returns criterion derived from the current value of this item.\n <P>\n If ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} is true for this item, we implement the following behavior.<br>\n If the user explicitly selected an item from the pickList, we treat this as an attempt\n to explicitly match the data value. In this case returned criteria will match the\n selected (data) value against this item's fieldName.<br>\n If the user typed a value into the text field, we treat this as an attempt to do a substring\n type filter. In this case returned criteria will match the entered text value against the\n displayField for this item if one is specified.\n <P>\n If ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} is false we always match the chosen data value against the item's \n fieldName.\n <P>\n Note that ${isc.DocUtils.linkForRef('method:ComboBoxItem.shouldGenerateExactMatchCriteria')} will be called in the case when a\n value was explicitly picked from the set of options. If that method returns true, we will\n return AdvancedCriteria with an operator specified to ensure an exact match occurs.\n \n",
        name:"getCriterion",
        seeAlso:[
        ],
        returns:{
            description:"criterion object based on this fields current edited value(s).",
            type:"Criterion"
        },
        type:"method",
        definingClass:"class:ComboBoxItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:MenuBar.setMenus":{
        ref:"method:MenuBar.setMenus",
        flags:"",
        description:" Dynamically reset the set of menus displayed by this menu bar. \n",
        name:"setMenus",
        seeAlso:[
        ],
        params:[
            {
                description:"array of new menus for this menubar",
                optional:false,
                name:"menus",
                defaultValue:null,
                type:"array"
            }
        ],
        type:"method",
        definingClass:"class:MenuBar"
    },
    "attr:DataSourceField.audit":{
        ref:"attr:DataSourceField.audit",
        flags:"IR",
        description:"Setting <code>audit</code> to <code>false</code> explicitly indicates that this field will\n not be saved to the audit DataSource when ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing')} is enabled.",
        name:"audit",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:OperationBinding.wsOperation":{
        ref:"attr:OperationBinding.wsOperation",
        flags:"IR",
        description:"Name of the web service operation that will be invoked in order to execute this DataSource\n operation.\n <P>\n Valid only for a DataSource that has a WebService (${isc.DocUtils.linkForRef('attr:DataSource.serviceNamespace')} is\n set).  Otherwise, use ${isc.DocUtils.linkForRef('attr:OperationBinding.dataURL')}.\n <P>\n Setting <code>wsOperation</code> means that ${isc.DocUtils.linkForRef('attr:DSRequest.data')} will be serialized as the\n request message for the specified web service operation, with namespacing and soap encoding\n handled automatically.  See ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} for how to customize what\n data is sent to the server.",
        name:"wsOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('wsdlBinding')}"
        ],
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "method:Window.minimize":{
        ref:"method:Window.minimize",
        flags:"",
        description:" Minimize the window. Fired when the user clicks the minimize button if \n ${isc.DocUtils.linkForRef('attr:Window.showMinimizeButton','this.showMinimizeButton')} is true.<br>\n Default implementation shrinks the window to just the height of the header bar, hiding the\n body. If ${isc.DocUtils.linkForRef('attr:Window.animateMinimize','animateMinimize')} is true, the resize will be animated.\n A restore button will be displayed in place of the minimize button when the window is \n minimized.\n",
        name:"minimize",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "class:FlowLayout":{
        methods:[
        ],
        ref:"class:FlowLayout",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
        ],
        description:"Arranges a set of Canvas components into rows, flowing into available space so that\n different numbers of components may appear in each row.\n <p>\n <code>FlowLayout</code> is essentially just a subclass of ${isc.DocUtils.linkForRef('class:TileLayout')} where the\n default ${isc.DocUtils.linkForRef('attr:TileLayout.layoutPolicy')} is \"flow\" instead of \"fit\".",
        name:"FlowLayout",
        seeAlso:[
            {
                ref:"attr:TileLayout.layoutPolicy",
                description:null
            }
        ],
        type:"class"
    },
    "attr:DatabaseBrowser.selectButton":{
        ref:"attr:DatabaseBrowser.selectButton",
        flags:"IR",
        description:"Instance of Button used to continue once a table has been selected.",
        name:"selectButton",
        seeAlso:[
        ],
        valueType:"AutoChild Button",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "attr:Layout.orientation":{
        ref:"attr:Layout.orientation",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:Layout.vertical','this.vertical')}, which, if specified takes  precedence over this setting",
        flags:"AIRW",
        description:"Orientation of this layout.",
        name:"orientation",
        seeAlso:[
        ],
        valueType:"Orientation",
        defaultValue:"\"horizontal\"",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "classMethod:NumberUtil.toUSString":{
        ref:"classMethod:NumberUtil.toUSString",
        flags:"",
        description:"  Format the passed number as a US string.  Returns empty string if not passed a number.\n\n",
        name:"toUSString",
        seeAlso:[
        ],
        params:[
            {
                description:"the number object to format",
                optional:false,
                name:"number",
                defaultValue:null,
                type:"Number"
            },
            {
                description:null,
                optional:true,
                name:"decimalPrecision",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"formatted number or empty string if not passed a number",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil"
    },
    "attr:Chart.valueProperty":{
        ref:"attr:Chart.valueProperty",
        flags:"IR",
        description:"Property in each record that holds a data value.\n <P>\n Not used if there is an inline facet, see ${isc.DocUtils.linkForRef('attr:Chart.data')}.",
        name:"valueProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"_value\"",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "attr:PrintCanvas.externalStylesheet":{
        ref:"attr:PrintCanvas.externalStylesheet",
        flags:"IRWA",
        description:"Setting this property will cause the specified stylesheet to be loaded in this print\n canvas's frame.\n The stylesheet should be specified as a URL to load.",
        name:"externalStylesheet",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PrintCanvas"
    },
    "group:imageColumns":{
        ref:"group:imageColumns",
        refs:[
            "method:ListGrid.getValueIcon",
            "method:ListGrid.getEditorValueIcons",
            "attr:DetailViewerField.imageSize",
            "attr:DetailViewerField.imageWidth",
            "attr:DetailViewerField.imageHeight",
            "attr:DetailViewerField.imageURLPrefix",
            "attr:ListGridField.valueIcons",
            "attr:ListGrid.valueIconSize",
            "attr:ListGrid.valueIconWidth",
            "attr:ListGrid.valueIconHeight",
            "attr:ListGridField.valueIconSize",
            "attr:ListGridField.valueIconWidth",
            "attr:ListGridField.valueIconHeight",
            "attr:ListGridField.valueIconLeftPadding",
            "attr:ListGridField.valueIconRightPadding",
            "attr:ListGridField.editorValueIcons",
            "attr:ListGridField.editorValueIconWidth",
            "attr:ListGridField.editorValueIconHeight",
            "attr:ListGridField.showValueIconOnly",
            "attr:ListGridField.suppressValueIcon",
            "attr:ListGridField.valueIconOrientation",
            "attr:ListGrid.valueIconLeftPadding",
            "attr:ListGrid.valueIconRightPadding",
            "attr:ListGridField.imageURLPrefix",
            "attr:ListGridField.imageURLSuffix",
            "attr:ListGrid.imageSize",
            "attr:ListGridField.imageSize",
            "attr:ListGridField.imageWidth",
            "attr:ListGridField.imageHeight",
            "attr:ListGrid.booleanBaseStyle",
            "attr:ListGrid.printBooleanBaseStyle",
            "attr:ListGrid.booleanTrueImage",
            "attr:ListGrid.booleanFalseImage",
            "attr:ListGrid.booleanPartialImage",
            "attr:ListGrid.printBooleanTrueImage",
            "attr:ListGrid.printBooleanFalseImage",
            "attr:ListGrid.printBooleanPartialImage",
            "attr:ListGrid.booleanImageWidth",
            "attr:ListGrid.booleanImageHeight"
        ],
        description:"Columns that show images either as their only appearance or in addition to text.",
        name:"imageColumns",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Canvas.topElement":{
        ref:"attr:Canvas.topElement",
        flags:"RA",
        description:"The top-most Canvas (i.e., not a child of any other Canvas), if any, in this widget's\n containment hierarchy.",
        name:"topElement",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:CubeGrid.metricFacetId":{
        ref:"attr:CubeGrid.metricFacetId",
        flags:"IR",
        description:"In a CubeGrid that displays values of different types (eg \"Revenue\" and \"Income\"), the\n different types of values on display are enumerated as the facet values of the \"metric\n facet\".  \n <P>\n The metric facet is treated identically to any other facet by the CubeGrid: it can be\n represented as row or column headers, can be innermost or have other facets under it,\n can be moved around, etc.  However when a metric facet is used, ${isc.DocUtils.linkForRef('attr:CubeGrid.metricFacetId')}\n must be set to allow the CubeGrid to generate meaningful descriptions of values shown in\n cells for use in hovers and other situations; see ${isc.DocUtils.linkForRef('attr:CubeGrid.valueTitle')} for a full\n explanation.",
        name:"metricFacetId",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"metric\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:FacetChart.zoomSelectionChartProperties":{
        ref:"attr:FacetChart.zoomSelectionChartProperties",
        flags:"IR",
        description:"Properties to further configure the ${isc.DocUtils.linkForRef('attr:FacetChart.zoomSelectionChart')}.",
        name:"zoomSelectionChartProperties",
        seeAlso:[
        ],
        valueType:"FacetChart Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:Class.fireCallback":{
        ref:"method:Class.fireCallback",
        flags:"",
        description:"\n\tMethod to fire a callback. Callback will be fired in the scope of the object on\n  which this method is called.<br>\n  Falls through to ${isc.DocUtils.linkForRef('classMethod:Class.fireCallback')}\n\n",
        name:"fireCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"Callback to fire",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"comma separated string of variables",
                optional:true,
                name:"argNames",
                defaultValue:null,
                type:"string"
            },
            {
                description:"array of arguments to pass to the method",
                optional:true,
                name:"args",
                defaultValue:null,
                type:"array"
            }
        ],
        returns:{
            description:"returns the value returned by the callback method passed in.",
            type:"any"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "method:Class.logFatal":{
        ref:"method:Class.logFatal",
        flags:"",
        description:" Log a message at \"fatal\" priority\n \n",
        name:"logFatal",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:Facet.height":{
        ref:"attr:Facet.height",
        flags:"IR",
        description:"Integer number of pixels.  For column facets, specifies the height of header.\n Has no effect on row facets.\n <P>\n If this property conflicts with a ${isc.DocUtils.linkForRef('attr:Facet.labelHeight')}, the greater of the two\n properties will be used for determining the height of the affected row.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "method:Button.titleClipped":{
        ref:"method:Button.titleClipped",
        flags:"A",
        description:" Is the title of this button clipped?\n",
        name:"titleClipped",
        seeAlso:[
        ],
        returns:{
            description:"whether the title is clipped.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Button"
    },
    "attr:Canvas.backgroundRepeat":{
        ref:"attr:Canvas.backgroundRepeat",
        flags:"IR",
        description:"Specifies how the background image should be tiled if this widget\n is larger than the image. It corresponds to the CSS <code>background-repeat</code>\n attribute.\n <p>\n The default of null means no <code>background-repeat</code> CSS will be\n written out.  See ${isc.DocUtils.linkForRef('type:BackgroundRepeat')} type for details on other settings.\n <p>\n NOTE: this setting directly sets the CSS property <code>background-repeat</code> but\n does not attempt to work around various known bugs with this setting, or lack of support\n in IE6.  If you need to apply CSS-based workarounds for browser limitations with\n this setting, it's best to do so via setting ${isc.DocUtils.linkForRef('attr:Canvas.styleName')}.",
        name:"backgroundRepeat",
        seeAlso:[
        ],
        valueType:"BackgroundRepeat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "method:Canvas.rightMouseDown":{
        ref:"method:Canvas.rightMouseDown",
        flags:"A",
        description:"\n Executed when the right mouse down is pressed on this widget.  No default implementation.\n\n",
        name:"rightMouseDown",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        platformNotes:"Some end user systems only have one mouse button.",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:TextAreaItem.getEnteredValue":{
        ref:"method:TextAreaItem.getEnteredValue",
        flags:"",
        description:" Returns the raw text value that currently appears in the text field, which can differ from \n ${isc.DocUtils.linkForRef('method:FormItem.getValue')} in various cases - for example:\n <ul>\n <li>for items that constrain the value range, such as a ${isc.DocUtils.linkForRef('class:DateItem')} with\n ${isc.DocUtils.linkForRef('attr:DateItem.enforceDate','enforceDate')}:true, or a ${isc.DocUtils.linkForRef('class:ComboBoxItem')} with\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues','addUnknownValues')}:false</li>\n <li>for items with a defined valueMap or edit value formatter and parser functions\n which converts display value to data value</li>\n <li>while the item has focus if ${isc.DocUtils.linkForRef('attr:TextItem.changeOnKeypress','changeOnKeypress')} is false\n </li></ul>\n",
        name:"getEnteredValue",
        seeAlso:[
        ],
        returns:{
            description:"current entered value",
            type:"string"
        },
        type:"method",
        definingClass:"class:TextAreaItem"
    },
    "method:DataSource.getCacheData":{
        ref:"method:DataSource.getCacheData",
        flags:"",
        description:" Returns the complete set of data cached by this dataSource. Note that this may \n have been supplied via ${isc.DocUtils.linkForRef('attr:DataSource.cacheData')}, or may have been fetched\n from the server for dataSources with ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} set to true.\n",
        name:"getCacheData",
        seeAlso:[
        ],
        returns:{
            description:"entire cached set of data",
            type:"Array of Records"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:Canvas.doubleClickDelay":{
        ref:"attr:Canvas.doubleClickDelay",
        flags:"IRWA",
        description:"Amount of time (in milliseconds) between which two clicks are considered a single click",
        name:"doubleClickDelay",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"250",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "events"
        ]
    },
    "method:SimpleType.editFormatter":{
        ref:"method:SimpleType.editFormatter",
        flags:"",
        description:" Formatter for values of this type when displayed in a freeform text editor, such as\n a ${isc.DocUtils.linkForRef('class:TextItem')}.\n <P>\n See also ${isc.DocUtils.linkForRef('method:SimpleType.parseInput')} for parsing an edited text value back to\n a data value.\n",
        name:"editFormatter",
        seeAlso:[
        ],
        params:[
            {
                description:"value to be formatted",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Editor for this field",
                optional:true,
                name:"field",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"DynamicForm containing this editor",
                optional:true,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"Current edit values for this record, as displayed in      the edit component.",
                optional:true,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"formatted value",
            type:"string"
        },
        type:"method",
        definingClass:"class:SimpleType"
    },
    "method:DetailViewer.getRecordIndex":{
        ref:"method:DetailViewer.getRecordIndex",
        flags:"",
        description:" Get the index of the provided record.\n <P>\n Override in subclasses to provide more specific behavior, for instance, when data holds a\n large number of records\n\n",
        name:"getRecordIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"the record whose index is to be retrieved",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"indexindex of the record, or -1 if not found",
            type:"Number"
        },
        type:"method",
        definingClass:"class:DetailViewer"
    },
    "attr:TimeItem.timeFormatter":{
        ref:"attr:TimeItem.timeFormatter",
        flags:"IRW",
        description:"What format should this item's time string be presented in? If unset the format will be\n derived from ${isc.DocUtils.linkForRef('attr:DynamicForm.timeFormatter')} or the system-side\n <p>\n This attribute does not have an effect if a native HTML5 time input is being used.\n See ${isc.DocUtils.linkForRef('attr:TimeItem.browserInputType')}.",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"\"toShort24HourTime\"",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "class:DrawPolygon":{
        methods:[
        ],
        ref:"class:DrawPolygon",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawPolygon.points",
            "attr:DrawPolygon.lineCap"
        ],
        description:"DrawItem subclass to render polygons",
        name:"DrawPolygon",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawPath"
    },
    "method:FilterBuilder.setTopOperator":{
        ref:"method:FilterBuilder.setTopOperator",
        flags:"",
        description:" Programmatically change the ${isc.DocUtils.linkForRef('attr:FilterBuilder.topOperator')} for this FilterBuilder.\n",
        name:"setTopOperator",
        seeAlso:[
        ],
        params:[
            {
                description:"new top-level operator",
                optional:false,
                name:"operator",
                defaultValue:null,
                type:"OperatiorId"
            }
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:MultiSortDialog.fields":{
        ref:"attr:MultiSortDialog.fields",
        flags:"IR",
        description:"The list of fields which the user can choose to sort by.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "method:DrawItem.getSvgString":{
        ref:"method:DrawItem.getSvgString",
        flags:"",
        description:" Generates a string containing the SVG source of this DrawItem.\n\n <p><b>NOTE:</b> The generated SVG source assumes that the default namespace is <code>http://www.w3.org/2000/svg</code>\n and that namespace prefix <code>xlink</code> refers to namespace name <code>http://www.w3.org/1999/xlink</code>.\n\n",
        name:"getSvgString",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:DetailViewer.setData":{
        ref:"method:DetailViewer.setData",
        flags:"",
        description:" Sets the data displayed by this detail viewer.\n\n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"new data to be displayed",
                optional:false,
                name:"newData",
                defaultValue:null,
                type:"object or array"
            }
        ],
        type:"method",
        definingClass:"class:DetailViewer"
    },
    "attr:DataSource.patternSingleWildcard":{
        ref:"attr:DataSource.patternSingleWildcard",
        flags:"IR",
        description:"When using the \"matchesPattern\", \"iMatchesPattern\", \"containsPattern\" or \"iContainsPattern\"\n ${isc.DocUtils.linkForRef('type:OperatorId','search operator')}, character that matches any single character.\n <p>\n Pass multiple strings to provide multiple alternative wildcards.",
        name:"patternSingleWildcard",
        seeAlso:[
        ],
        valueType:"String | Array of String",
        defaultValue:"[\"?\",\"%\"]",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "attr:SelectItem.fetchDisplayedFieldsOnly":{
        ref:"attr:SelectItem.fetchDisplayedFieldsOnly",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code> and this property is\n <code>true</code>, the list of fields used by this pickList will be passed to\n the datasource as ${isc.DocUtils.linkForRef('attr:DSRequest.outputs')}. If the datasource supports this feature\n the returned fields will be limited to this list. A custom datasource will need to\n add code to implement field limiting.\n <P>\n This list of used fields consists of the values of ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')},\n ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} and ${isc.DocUtils.linkForRef('attr:SelectItem.pickListFields','pickListFields')}.\n <P>\n NOTE: When enabled, ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord','getSelectedRecord')} will only include the\n fetched fields.",
        name:"fetchDisplayedFieldsOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "method:ValuesManager.showErrors":{
        ref:"method:ValuesManager.showErrors",
        flags:"",
        description:" Method to explicitly show the latest set of validation errors present on this \n ValuesManager.<br>\n Will redraw all member forms to display (or clear) currently visible errors, and\n fire ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')} to allow custom handling of\n hidden errors.\n",
        name:"showErrors",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "group:rowEffects":{
        ref:"group:rowEffects",
        refs:[
            "attr:ListGrid.showRollOverCanvas",
            "attr:ListGrid.rollOverCanvas",
            "attr:ListGrid.rollUnderCanvas",
            "attr:ListGrid.animateRollOver",
            "attr:ListGrid.animateRollUnder",
            "attr:ListGrid.backgroundComponent",
            "attr:ListGrid.showSelectionCanvas",
            "attr:ListGrid.selectionCanvas",
            "attr:ListGrid.showSelectionUnderCanvas",
            "attr:ListGrid.selectionUnderCanvas",
            "attr:ListGrid.animateSelection",
            "attr:ListGrid.animateSelectionUnder",
            "attr:ListGridRecord.backgroundComponent"
        ],
        name:"rowEffects",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ToolStripGroup.titleHeight":{
        ref:"attr:ToolStripGroup.titleHeight",
        flags:"IRW",
        description:"The height of the ${isc.DocUtils.linkForRef('attr:ToolStripGroup.label','title label')} in this group.",
        name:"titleHeight",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"18",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "classMethod:isA.Array":{
        ref:"classMethod:isA.Array",
        flags:"",
        description:"\n\tIs <code>object</code> an Array object?<br><br>\n\n\tNOTE: if you prefer, you can call this as <code>isAn.Array()</code>\n\n",
        name:"Array",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is an Array",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "attr:Facet.canMinimize":{
        ref:"attr:Facet.canMinimize",
        flags:"IR",
        description:"If facet minimizing is enabled, whether this facet should show controls to minimize the\n next facet.  Generally a tree facet should not also allow minimizing the next facet -\n the interaction of the two types of collapsing can be confusing.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.  See\n ${isc.DocUtils.linkForRef('attr:CubeGrid.canMinimizeFacets')}.",
        name:"canMinimize",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"cubeGrid.canMinimizeFacets",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:DataBoundComponent.infoField":{
        ref:"attr:DataBoundComponent.infoField",
        flags:"IR",
        description:"Name of the field that has the second most pertinent piece of textual information in the\n record, for use when a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} needs to show a short summary of a record.\n <P>\n This attribute has the same function as ${isc.DocUtils.linkForRef('attr:DataSource.infoField')} but can be\n set for a component with no dataSource, or can be used to override the dataSource setting.",
        name:"infoField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "method:ListGrid.cellHasErrors":{
        ref:"method:ListGrid.cellHasErrors",
        flags:"",
        description:" Given a rowNum and a colNum or fieldName, determine whether we currently have stored\n validation errors for the record/field in question.\n",
        name:"cellHasErrors",
        seeAlso:[
            {
                ref:"method:ListGrid.hasErrors",
                description:null
            },
            {
                ref:"method:ListGrid.rowHasErrors",
                description:null
            }
        ],
        params:[
            {
                description:"index of row to check for validation errors",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"name of field, or index of column to check for validation                                      errors",
                optional:false,
                name:"fieldID",
                defaultValue:null,
                type:"string | number"
            }
        ],
        returns:{
            description:"true if we have validation errors for the row/col in question",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "attr:StretchImgButton.baseStyle":{
        ref:"attr:StretchImgButton.baseStyle",
        flags:"IRW",
        description:"Base CSS style className applied to the component. \n <P>\n As the component changes ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state')} and/or is selected, \n suffixes will be added to the base style. In some cases more than one suffix will \n be appended to reflect a combined state (\"Selected\" + \"Disabled\", for example).\n <P>\n See ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of the default set\n of suffixes which may be applied to the baseStyle",
        name:"baseStyle",
        setter:[
            "setBaseStyle"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"stretchImgButton\"",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "attr:ListGridField.includeFrom":{
        ref:"attr:ListGridField.includeFrom",
        flags:"IR",
        description:"Indicates this field's values should be fetched from another, related DataSource.\n The individual field will inherit settings such as ${isc.DocUtils.linkForRef('attr:ListGridField.type','field.type')}\n and ${isc.DocUtils.linkForRef('attr:ListGridField.title','field.title')} from the related DataSource just like\n fields from the primary DataSource.\n <P>\n When ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fechData()')} is called, the automatically created ${isc.DocUtils.linkForRef('class:DSRequest')} will\n specify ${isc.DocUtils.linkForRef('attr:DSRequest.additionalOutputs')} requesting the field, and any ${isc.DocUtils.linkForRef('type:Criteria')}\n generated by the component will likewise refer to the field from the related DataSource.\n <P>\n It's an error to use this property if the ListGrid does not have a DataSource at all.\n The related DataSource must be loaded or a warning will be logged and the field\n definition ignored.\n <P>\n This value is expected to be set to the following format\n <code>dataSourceID.fieldName</code> where <i>dataSourceID</i> is the ID of the\n related dataSource and <i>fieldName</i> is the name of the field from that dataSource\n from which you wish to retrieve values. Note that if this property is set and\n ${isc.DocUtils.linkForRef('attr:ListGridField.name','field.name')} is not explicitly specified, this field's <code>name</code> will\n default to the <i>fieldName</i> value from this property.\n <p>\n Note about automatic cache updates: \"update\" and \"add\" operations\n submitted automatically by this ListGrid will include\n <code>dsRequest.additionalOutputs</code> to ensure all data necessary\n for cache updates is returned by the server.\n <p>\n If your grid shows data that can be edited elsewhere in the UI (not by\n inline editing), to avoid problems with ${isc.DocUtils.linkForRef('class:ResultSet')} automatic\n cache synchronization, you may need to switch from using\n <code>listGridField.includeFrom</code> to\n <code>dataSourceField.includeFrom</code>.  This is because\n server responses to \"add\" and \"update\" operations which are initiated\n outside of this grid do not know about the\n <code>listGridField.includeFrom</code> setting, and so will not\n automatically return data for fields included in this way.  Switching\n to <code>dataSourceField.includeFrom</code> ensures the field is\n always included in server responses, avoiding the issue.",
        name:"includeFrom",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "type:ForceTextApproach":{
        ref:"type:ForceTextApproach",
        values:[
            {
                description:"a leading space character is added",
                value:"\"leadingSpace\""
            },
            {
                description:"text value is turned into a trivial Excel formula (eg \"car\" becomes =\"car\"). In Excel, this renders just the value \"car\" but editing the cell reveals the formula.",
                value:"\"formula\""
            }
        ],
        description:"Approach to force a text value to be interpreted as text rather than parsed as a date, time\n or other structured types, as can happen with Microsoft Excel.  For background information,\n see ${isc.DocUtils.linkForRef('group:excelPasting')}.",
        name:"ForceTextApproach",
        seeAlso:[
        ],
        type:"type"
    },
    "method:ListGrid.fieldStateChanged":{
        ref:"method:ListGrid.fieldStateChanged",
        flags:"",
        description:" Notification method executed when columns are resized or reordered, or fields are\n shown or hidden. Has no default implementation.\n\n",
        name:"fieldStateChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "fieldState"
        ]
    },
    "attr:HeaderItem.textBoxStyle":{
        ref:"attr:HeaderItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class for this item",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"headerItem\"",
        type:"attr",
        definingClass:"class:HeaderItem",
        groups:[
            "appearance"
        ]
    },
    "method:CanvasItem.setCriterion":{
        ref:"method:CanvasItem.setCriterion",
        flags:"",
        description:" Display a ${isc.DocUtils.linkForRef('object:Criterion')} object in this item for editing. Overridden from \n ${isc.DocUtils.linkForRef('method:FormItem.setCriterion')} in order to support editing nested criteria using \n nested dynamicForms as described in ${isc.DocUtils.linkForRef('method:CanvasItem.getCriterion')}.\n <P>\n Implementation checks for this.canvas being specified as a DynamicForm, and applies\n criterion directly to the embedded form via setValuesAsCriteria()\n",
        name:"setCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria to edit",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        type:"method",
        definingClass:"class:CanvasItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:GridRenderer.canHover":{
        ref:"attr:GridRenderer.canHover",
        flags:"RW",
        description:"If true, cellHover and rowHover events will fire and then a hover will be shown (if not\n canceled) when the user leaves the mouse over a row / cell unless the corresponding field has\n ${isc.DocUtils.linkForRef('attr:ListGridField.showHover','showHover')} set to false. If unset or null, the hover will be\n shown if the corresponding field has showHover:true. If false, then hovers are disabled.\n <p>\n Note that standard hovers override ${isc.DocUtils.linkForRef('attr:GridRenderer.showClippedValuesOnHover','clipped value hovers')}. Thus,\n to enable clipped value hovers, canHover must be unset or null and the corresponding field\n must have showHover unset or null as well.",
        name:"canHover",
        seeAlso:[
            {
                ref:"method:GridRenderer.cellHover",
                description:null
            },
            {
                ref:"method:GridRenderer.rowHover",
                description:null
            },
            {
                ref:"attr:GridRenderer.showHover",
                description:null
            },
            {
                ref:"attr:GridRenderer.showClippedValuesOnHover",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:ActiveXControl.uuid":{
        ref:"attr:ActiveXControl.uuid",
        flags:"IR",
        description:"Set this to the uuid of your Active X control - ISC will then generate the appropriate\n  classID entry for you.",
        name:"uuid",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ActiveXControl"
    },
    "attr:StatefulCanvas.showRollOver":{
        ref:"attr:StatefulCanvas.showRollOver",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes over this object?",
        name:"showRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "attr:MultiGroupPanel.levelUpButton":{
        ref:"attr:MultiGroupPanel.levelUpButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n group-levels up in the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.levelUpButtonProperties</code> and \n <code>multiGroupPanel.levelUpButtonDefaults</code>.",
        name:"levelUpButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:DetailViewer.wrapLabel":{
        ref:"attr:DetailViewer.wrapLabel",
        flags:"IRW",
        description:"Should the label be allowed to wrap, or be fixed to one line no matter how long",
        name:"wrapLabel",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "labels"
        ]
    },
    "method:Date.toJapanShortDate":{
        ref:"method:Date.toJapanShortDate",
        flags:"",
        description:" Return the date in this format: <code>YYYY/MM/DD</code>\n",
        name:"toJapanShortDate",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:HTMLFlow.loadingMessage":{
        ref:"attr:HTMLFlow.loadingMessage",
        flags:"IRW",
        description:"HTML to show while content is being fetched, active only if the <code>contentsURL</code>\n property has been set.\n Use <code>\"&#36;{loadingImage}\"</code> to include ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSrc','a loading image')}.\n <P>\n The loading message will show both during the initial load of content, and during reload if\n the contents are reloaded or the contentsURL changed.  For a first-time only loading\n message, initialize the <code>contents</code> property instead.<br>\n Note: the <code>loadingMessage</code> is never displayed when loading complete web pages \n rather than HTML fragments (see ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsType')}).",
        name:"loadingMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;${loadingImage}\"",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "classMethod:Validator.create":{
        ref:"classMethod:Validator.create",
        flags:"",
        description:" A Validator shouldn't be created directly. Instead pass ${isc.DocUtils.linkForRef('type:Properties')} as\n each Validator in ${isc.DocUtils.linkForRef('attr:FormItem.validators')} or wherever a Validator is needed.\n \n",
        name:"create",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Validator"
    },
    "attr:Layout.layoutTopMargin":{
        ref:"attr:Layout.layoutTopMargin",
        flags:"IRW",
        description:"Space outside of all members, on the top side.  Defaults to ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')}.\n <P>\n Requires a manual call to <code>setLayoutMargin()</code> if changed on the fly.",
        name:"layoutTopMargin",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "attr:CubeGrid.data":{
        ref:"attr:CubeGrid.data",
        flags:"IRW",
        description:"An array of \"cellRecords\", each of which represents data for one cell of the body area.",
        name:"data",
        seeAlso:[
            {
                ref:"attr:CubeGrid.fixedFacetValues",
                description:null
            }
        ],
        valueType:"Array of CellRecord",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "method:DataBoundComponent.findByKey":{
        ref:"method:DataBoundComponent.findByKey",
        flags:"",
        description:" Attempt to find the record in the resultSet that has a primary key value that matches the \n passed in parameter value. Only the locally cached data will be searched. \n Checks only loaded rows and will not trigger a fetch. Returns null if there is no match, \n data is not loaded, or there is no ${isc.DocUtils.linkForRef('attr:ResultSet.dataSource','dataSource')}.\n <p>\n Note, if you pass a simple value to this method, it will be matched against the first \n primaryKey field.  For DataSources with a composite primary key (multiple primaryKey fields),\n pass\n <smartclient>a criteria object containing just your primaryKeys, like this: \n <code>{ firstPkField: \"value\", secondPkField: 25 }</code>.</smartclient>\n <smartgwt>a Criteria instance containing just primaryKey entries.</smartgwt>\n\n",
        name:"findByKey",
        seeAlso:[
        ],
        params:[
            {
                description:"primary key value to search for",
                optional:false,
                name:"keyValue",
                defaultValue:null,
                type:"Object"
            }
        ],
        returns:{
            description:"the record with a matching primary key field, or null if not found",
            type:"Record"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ImgTab.labelSkinImgDir":{
        ref:"attr:ImgTab.labelSkinImgDir",
        flags:"IRW",
        description:"Base path for images shown within this ImgTab's label. This will be used for\n icons (such as the close icon) by default.",
        name:"labelSkinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/\"",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "attr:SpinnerItem.increaseIcon":{
        ref:"attr:SpinnerItem.increaseIcon",
        flags:"R",
        description:"Icon to increase the spinner's value (an up arrow by default).",
        name:"increaseIcon",
        seeAlso:[
        ],
        valueType:"FormItemIcon AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "classMethod:Class.modifyFrameworkDone":{
        ref:"classMethod:Class.modifyFrameworkDone",
        flags:"",
        description:" Notifies the SmartClient Class system that the developer is done making changes\n to the SmartClient framework (as originally indicated by a call to\n ${isc.DocUtils.linkForRef('classMethod:Class.modifyFrameworkStart')}).\n <P>\n New classes created or changes made to existing classes after this method call\n will be considered application code. This ensures that\n ${isc.DocUtils.linkForRef('classAttr:Class.isFrameworkClass')} will not be set to true on Classes defined after\n this method call.\n",
        name:"modifyFrameworkDone",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:FacetChart.errorBarColorMutePercent":{
        ref:"attr:FacetChart.errorBarColorMutePercent",
        flags:"IR",
        description:"This property helps specify the color of the error bars and its value must be a\n number between -100 and 100.  Error bars have the same color as the data line, but the\n colors are actually \"muted\" by this percentage by shifting them toward white (or for\n negative numbers, toward black).  The default is to darken the data colors by 60%\n to get the error bar colors.",
        name:"errorBarColorMutePercent",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"-60",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DrawRect.setTop":{
        ref:"method:DrawRect.setTop",
        flags:"",
        description:" Set the top coordinate of the drawRect\n",
        name:"setTop",
        seeAlso:[
        ],
        params:[
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:ListGrid.canExpandMultipleRecords":{
        ref:"attr:ListGrid.canExpandMultipleRecords",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is true, this property indicates whether multiple\n records can be expanded simultaneously.  If set to false, expanding a record will\n automatically collapse any record which is already expanded.  The default value is\n <code>true</code>.",
        name:"canExpandMultipleRecords",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:WebService.getInputHeaderSchema":{
        ref:"method:WebService.getInputHeaderSchema",
        flags:"",
        description:" Get the schema for each part of the SOAP header for the input message of a given\n operation, as a mapping from part name to schema.  For example, given WSDL like:\n <pre>\n     &lt;soap:header part=\"SessionHeader\" message=\"tns:HeaderMessage\"/&gt;\n     &lt;soap:header part=\"CallOptions\" message=\"tns:HeaderMessage/&gt;\n </pre>\n The following schema would be returned:\n <pre>\n     { SessionHeader : <i>sessionHeaderPartSchema</i>,\n       CallOptions : <i>callOptionsPartSchema</i> }\n </pre>\n The schema are instances of ${isc.DocUtils.linkForRef('class:DataSource')} that can be inspected to discover the\n elements and types that are legal in that header part, and can construct a valid SOAP\n header part if ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')} is invoked.\n \n",
        name:"getInputHeaderSchema",
        seeAlso:[
        ],
        params:[
            {
                description:"name of an operation from this web service",
                optional:false,
                name:"operationName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"mapping from partName to schema",
            type:"Object"
        },
        type:"method",
        definingClass:"class:WebService"
    },
    "attr:FormItem.valueIconHeight":{
        ref:"attr:FormItem.valueIconHeight",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} is specified, use this property to specify a height for the\n value icon written out.",
        name:"valueIconHeight",
        seeAlso:[
            {
                ref:"attr:FormItem.valueIconWidth",
                description:null
            },
            {
                ref:"attr:FormItem.valueIconSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "attr:Slider.canFocus":{
        ref:"attr:Slider.canFocus",
        flags:"IRW",
        description:"Indicates whether keyboard manipulation of the slider is allowed.",
        name:"canFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:CheckboxItem.labelAsTitle":{
        ref:"attr:CheckboxItem.labelAsTitle",
        flags:"IRW",
        description:"By default a checkboxItem sets ${isc.DocUtils.linkForRef('attr:CheckboxItem.showTitle')}:true, and so takes up two cells with the\n default ${isc.DocUtils.linkForRef('type:TitleOrientation')} of \"left\" (see ${isc.DocUtils.linkForRef('group:formLayout','form layout\\n overview')}).  However, the title cell is left blank by default, and the title specified\n by ${isc.DocUtils.linkForRef('attr:FormItem.title')} is shown inside the formItem's cell instead, in an element\n called the \"label\".\n <P>\n To instead show the title in it's original location, set <code>labelAsTitle:true</code>.\n You can also set ${isc.DocUtils.linkForRef('attr:CheckboxItem.showLabel')}:false to suppress the label and/or title altogether.",
        name:"labelAsTitle",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CheckboxItem"
    },
    "method:Callbacks.Function":{
        ref:"method:Callbacks.Function",
        flags:"",
        description:" Generic callback interface.\n\n",
        name:"Function",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:FilterBuilder.modeSwitcherAdvancedMessage":{
        ref:"attr:FilterBuilder.modeSwitcherAdvancedMessage",
        flags:"IR",
        description:"Title for the \"Advanced..\" mode switcher label (only applicable to the \"radio\" appearance).",
        name:"modeSwitcherAdvancedMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Advanced..\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "class:Gauge":{
        methods:[
            "method:Gauge.setMinValue",
            "method:Gauge.setMaxValue",
            "method:Gauge.setValue",
            "method:Gauge.setNumMajorTicks",
            "method:Gauge.setNumMinorTicks",
            "method:Gauge.setLabelPrefix",
            "method:Gauge.setLabelSuffix",
            "method:Gauge.setDrawnClockwise",
            "method:Gauge.formatLabelContents",
            "method:Gauge.reformatLabelContents",
            "method:Gauge.getNumSectors",
            "method:Gauge.getSectorValue",
            "method:Gauge.getDefaultFillColor",
            "method:Gauge.getSectorFillColor",
            "method:Gauge.setSectorFillColor",
            "method:Gauge.getSectorLabelContents",
            "method:Gauge.setSectors",
            "method:Gauge.addSector",
            "method:Gauge.removeSector"
        ],
        ref:"class:Gauge",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing"
        ],
        attrs:[
            "attr:Gauge.dialRadius",
            "attr:Gauge.fontSize",
            "attr:Gauge.borderWidth",
            "attr:Gauge.borderColor",
            "attr:Gauge.sectorColors",
            "attr:Gauge.minValue",
            "attr:Gauge.maxValue",
            "attr:Gauge.value",
            "attr:Gauge.numMajorTicks",
            "attr:Gauge.numMinorTicks",
            "attr:Gauge.labelPrefix",
            "attr:Gauge.labelSuffix",
            "attr:Gauge.drawnClockwise",
            "attr:Gauge.sectors",
            "attr:Gauge.pivotPoint"
        ],
        description:"The Gauge widget class implements a graphical speedometer-style gauge for displaying\n a measurement by means of a needle on a dial. The dial is divided into sectors, each having\n its own color and value.\n <P>\n <b>NOTE:</b> you must load the Drawing ${isc.DocUtils.linkForRef('group:loadingOptionalModules','Optional Module')}\n before you can use Gauge.",
        name:"Gauge",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('Gauge')}"
        ],
        inheritsFrom:"DrawPane"
    },
    "method:TabSet.tabDeselected":{
        ref:"method:TabSet.tabDeselected",
        flags:"",
        description:"  Notification fired when a tab is deselected.        \n",
        name:"tabDeselected",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the deselected tab",
                optional:false,
                name:"tabNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"pane for this deselected tab",
                optional:false,
                name:"tabPane",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"id of the deselected tab",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"id"
            },
            {
                description:"the deselected tab object (not tab button instance)",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"tab"
            },
            {
                description:"the tab object being selected",
                optional:false,
                name:"newTab",
                defaultValue:null,
                type:"tab"
            }
        ],
        returns:{
            description:"return false to cancel the tab deselection",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:FormItem.validOperators":{
        ref:"attr:FormItem.validOperators",
        flags:"IR",
        description:"Array of valid filtering operators (eg \"greaterThan\") that are legal for this FormItem.\n <P>\n Applies only to form/formItem when ${isc.DocUtils.linkForRef('attr:FormItem.allowExpressions')} is true, allowing the\n user to input expressions.",
        name:"validOperators",
        seeAlso:[
        ],
        valueType:"Array of OperatorId",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "advancedFilter"
        ]
    },
    "method:ColorPicker.setCurrentPickMode":{
        ref:"method:ColorPicker.setCurrentPickMode",
        flags:"",
        description:" Changes the pick mode of this <code>ColorPicker</code> to <code>pickMode</code>.\n <p>\n Note: It is not allowed to set the pick mode to\n <smartclient>\"complex\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.ColorPickerMode#COMPLEX}</smartgwt>\n if ${isc.DocUtils.linkForRef('attr:ColorPicker.allowComplexMode','allowComplexMode')} is <code>false</code>.\n",
        name:"setCurrentPickMode",
        seeAlso:[
        ],
        params:[
            {
                description:"the new pick mode.",
                optional:false,
                name:"pickMode",
                defaultValue:null,
                type:"ColorPickerMode"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "classMethod:ClassFactory.getClass":{
        ref:"classMethod:ClassFactory.getClass",
        flags:"",
        description:"\n\tGiven a class name, return a pointer to the Class object for that class\n\n",
        name:"getClass",
        seeAlso:[
        ],
        params:[
            {
                description:"name of a class",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"Class object, or null if not found",
            type:"Class"
        },
        type:"classMethod",
        definingClass:"object:ClassFactory"
    },
    "attr:FacetChart.zoomChartHeight":{
        ref:"attr:FacetChart.zoomChartHeight",
        flags:"IR",
        description:"Height of the ${isc.DocUtils.linkForRef('attr:FacetChart.zoomChart')}.  The zoomChart is always as wide as the main chart.",
        name:"zoomChartHeight",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:TimeItem.secondItemPrompt":{
        ref:"attr:TimeItem.secondItemPrompt",
        flags:"IRW",
        description:"The hover prompt to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.secondItem','second picker')}.",
        name:"secondItemPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Choose seconds\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Class.addClassProperties":{
        ref:"classMethod:Class.addClassProperties",
        flags:"",
        description:"\n\tAdd static (Class-level) properties and methods to this object<br><br>\n\n\tThese properties can then be accessed as MyClass.property, or for functions, called as\n  MyClass.methodName()\n\n",
        name:"addClassProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"objects with properties to add (think named parameters).\t\t\t\t\t\t\t\t\t\tall the properties of each argument will be applied\n\t\t\t\t\t\t\t\t\t\tas class-level properties.",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"the class after properties have been added to it",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:Process.setState":{
        ref:"method:Process.setState",
        flags:"",
        description:" Set process state for current process\n",
        name:"setState",
        seeAlso:[
        ],
        params:[
            {
                description:"the new process state",
                optional:false,
                name:"state",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"class:Process"
    },
    "classMethod:Page.checkBrowserAndRedirect":{
        ref:"classMethod:Page.checkBrowserAndRedirect",
        flags:"",
        description:" Check whether the browser is supported by the Isomorphic SmartClient system. Behavior depends\n upon the value of ${isc.DocUtils.linkForRef('classAttr:Page.unsupportedBrowserAction')}:\n <ul>\n <li><code>\"continue\"</code> Load the page without notifying the user of potential issues</li>\n <li><code>\"confirm\"</code> Notify the user via a standard confirm dialog that their browser is\n  not supported. Provide options to continue anyway, or redirect to another page. Text of the\n  confirm dialog is retrieved by calling ${isc.DocUtils.linkForRef('classMethod:Page.getUnsupportedBrowserPromptString')}.</li>\n <li><code>\"redirect\"</code> Automatically redirect to the another URL</li>\n </ul>\n If redirecting to another page is necessary, and no explicit URL is provided we will use\n ${isc.DocUtils.linkForRef('classAttr:Page.defaultUnsupportedBrowserURL')}.\n <p>\n This method is commonly called as part of the ${isc.DocUtils.linkForRef('group:skinning','skinning')} logic after page\n load.\n\n",
        name:"checkBrowserAndRedirect",
        seeAlso:[
            {
                ref:"classAttr:Page.unsupportedBrowserAction",
                description:null
            },
            {
                ref:"classMethod:Page.getUnsupportedBrowserPromptString",
                description:null
            },
            {
                ref:"classAttr:Page.defaultUnsupportedBrowserURL",
                description:null
            }
        ],
        params:[
            {
                description:"URL of redirect page. May include Isomorphic special directories      such as [SKIN].",
                optional:true,
                name:"URL",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:Calendar.currentViewName":{
        ref:"attr:Calendar.currentViewName",
        flags:"IRW",
        getter:[
            "getCurrentViewName"
        ],
        description:"The name of the view that should be visible initially by default.",
        name:"currentViewName",
        setter:[
            "setCurrentViewName"
        ],
        seeAlso:[
        ],
        valueType:"ViewName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:Canvas.setDataPath":{
        ref:"method:Canvas.setDataPath",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:Canvas.dataPath')} attribute. This method may be called directly at runtime\n to set the dataPath on a component, and will also be re-run automatically whenever a canvas'\n parent changes due to a call to addChild(). This method handles automatically binding\n the component to the appropriate valuesManager if necessary.\n",
        name:"setDataPath",
        seeAlso:[
        ],
        params:[
            {
                description:"new dataPath",
                optional:false,
                name:"dataPath",
                defaultValue:null,
                type:"DataPath"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:IconButton.menuIconWidth":{
        ref:"attr:IconButton.menuIconWidth",
        flags:"IRW",
        description:"The width of the icon for this button.",
        name:"menuIconWidth",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"14",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "class:AdvancedHiliteEditor":{
        methods:[
            "method:AdvancedHiliteEditor.saveHilite",
            "method:AdvancedHiliteEditor.cancelEditing"
        ],
        ref:"class:AdvancedHiliteEditor",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:AdvancedHiliteEditor.filterBuilder",
            "attr:AdvancedHiliteEditor.filterGroupTitle",
            "attr:AdvancedHiliteEditor.hiliteIcons",
            "attr:AdvancedHiliteEditor.hiliteForm",
            "attr:AdvancedHiliteEditor.appearanceGroupTitle",
            "attr:AdvancedHiliteEditor.targetFieldsItemTitle",
            "attr:AdvancedHiliteEditor.saveButton",
            "attr:AdvancedHiliteEditor.saveButtonTitle",
            "attr:AdvancedHiliteEditor.cancelButton",
            "attr:AdvancedHiliteEditor.cancelButtonTitle",
            "attr:AdvancedHiliteEditor.invalidHilitePrompt",
            "attr:AdvancedHiliteEditor.title",
            "attr:AdvancedHiliteEditor.callback"
        ],
        description:"A widget for editing a single, advanced ${isc.DocUtils.linkForRef('class:HiliteRule','hilite rule')} for use by  \n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','dataBoundComponents')}.  Where a simple hilite provides  \n configuration of a single criterion and either foreground or background color for  \n application to a single field, an advanced hilite can specify more complex criteria which can \n both test and affect multiple fields and allow both background and foreground colors to \n be specified in a single rule. \n <P>\n <i><b>Important Note:</b> this class should not be used directly - it is exposed purely for\n ${isc.DocUtils.linkForRef('group:i18nMessages','i18n reasons.')}</i>",
        name:"AdvancedHiliteEditor",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ColumnTree.showHeaders":{
        ref:"attr:ColumnTree.showHeaders",
        flags:"IR",
        description:"If set, each column in the ColumnTree will show a header with the title of the selected\n node from the column to the left.",
        name:"showHeaders",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ColumnTree"
    },
    "attr:FilterBuilder.fieldPickerTitle":{
        ref:"attr:FilterBuilder.fieldPickerTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:FilterBuilder.fieldPicker','field-picker')} select-item.",
        name:"fieldPickerTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Field Name\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.clipStaticValue":{
        ref:"attr:FormItem.clipStaticValue",
        flags:"IR",
        description:"If this item is ${isc.DocUtils.linkForRef('method:FormItem.getCanEdit','read-only')} and is using\n ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay','readOnlyDisplay')}\n <smartclient>\"static\",</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.ReadOnlyDisplayAppearance#STATIC},</smartgwt>\n should the item value be clipped if it overflows the specified size of the item?\n If set, overrides the form-level ${isc.DocUtils.linkForRef('attr:DynamicForm.clipStaticValue')} default.",
        name:"clipStaticValue",
        seeAlso:[
            {
                ref:"attr:DynamicForm.clipStaticValue",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "object:Operator":{
        methods:[
            "method:Operator.condition",
            "method:Operator.compareCriteria",
            "method:Operator.getCriterion"
        ],
        ref:"object:Operator",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
            "attr:Operator.ID",
            "attr:Operator.title",
            "attr:Operator.titleProperty",
            "attr:Operator.fieldTypes",
            "attr:Operator.requiresServer",
            "attr:Operator.hidden",
            "attr:Operator.valueType",
            "attr:Operator.editorType",
            "attr:Operator.symbol"
        ],
        description:"Specification of an operator for use in filtering, for example \"equals\".\n Use with ${isc.DocUtils.linkForRef('method:DataSource.addSearchOperator')} to define custom filtering behaviors for\n client-side filtering.",
        name:"Operator",
        seeAlso:[
        ],
        type:"object",
        serverDS:"allowed",
        groups:[
            "advancedFilter"
        ]
    },
    "method:FormItem.iconKeyPress":{
        ref:"method:FormItem.iconKeyPress",
        flags:"",
        description:"      StringMethod.\n      Default action to fire when an icon has keyboard focus and the user types a key.\n      May be overridden by setting <code>keyPress</code> on the form item icon directly.\n",
        name:"iconKeyPress",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the key pressed",
                optional:false,
                name:"keyName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"character produced by the keypress",
                optional:false,
                name:"character",
                defaultValue:null,
                type:"character"
            },
            {
                description:"a pointer to this item's form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"a pointer to this form item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"a pointer to the icon that received the click event.",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"FormItemIcon"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "classAttr:Validator.mustBeLessThan":{
        ref:"classAttr:Validator.mustBeLessThan",
        flags:"IRA",
        description:"Default error message to display when standard <code>integerRange</code> type validator\n  returns false because the value passed in is greater than the specified maximum.\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeLessThan",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be no more than ${max}\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.willAcceptDrop":{
        ref:"method:ListGrid.willAcceptDrop",
        flags:"A",
        description:"\n This method overrides ${isc.DocUtils.linkForRef('method:Canvas.willAcceptDrop')} and works as follows:<br>\n <ul>\n <li>If ${isc.DocUtils.linkForRef('method:Canvas.willAcceptDrop')} (the superclass definition) returns false, this\n     method always returns false.  This allows ${isc.DocUtils.linkForRef('attr:Canvas.dragType')} and\n     ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes')} to be used to configure eligibility for drop.  By default,\n     a ListGrid has no dropTypes configured and so this check will not prevent a drop.</li>\n <li>If this is a self-drop, that is, the user is dragging a record within this list, this is\n     an attempted drag-reorder.  If ${isc.DocUtils.linkForRef('attr:ListGrid.canReorderRecords')} is\n     false, this method returns false.</li>\n <li>If the ${isc.DocUtils.linkForRef('classMethod:EventHandler.getDragTarget','dragTarget')} is another widget, if\n     ${isc.DocUtils.linkForRef('attr:ListGrid.canAcceptDroppedRecords')} is false this method returns false.</li>\n <li>If a call to ${isc.DocUtils.linkForRef('method:ListGrid.getDragData')} on the <code>dragTarget</code> fails to return\n     an record object or an array of records, this method returns false.</li>\n <li>If the drop target record is disabled or has ${isc.DocUtils.linkForRef('attr:ListGridRecord.canAcceptDrop')}\n     set to false, return false.</li>\n </ul>\n Note that this method may be called repeatedly during a drag-drop interaction to update the\n UI and notify the user as to when they may validly drop data.\n\n",
        name:"willAcceptDrop",
        seeAlso:[
            {
                ref:"attr:ListGridRecord.canAcceptDrop",
                description:null
            },
            {
                ref:"method:ListGrid.getDragData",
                description:null
            }
        ],
        returns:{
            description:"true if this component will accept a drop of the dragData",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events",
            "dragging"
        ]
    },
    "attr:Label.iconHeight":{
        ref:"attr:Label.iconHeight",
        flags:"IR",
        description:"Height in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "classMethod:XMLTools.loadXMLSchema":{
        ref:"classMethod:XMLTools.loadXMLSchema",
        flags:"A",
        description:" Load an XML file containing XML schema definitions and create DataSource and SimpleType\n objects to represent the schema.  You can use to loaded schema to bind ISC components,\n perform validation, create editing interfaces, and build other metadata-driven interfaces.\n You can also use ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom','schema inheritance')} to overlay\n presentation-specific data (such as user-visible titles) on top of XML Schema.\n <p>\n In the loaded XML Schema, all &lt;xsd:complexType&gt; declarations become SmartClient\n DataSources, and all &lt;xsd:simpleType&gt; definitions become SmartClient\n ${isc.DocUtils.linkForRef('class:SimpleType','atomic type definitions')}.  \n <p>\n By default, named complexType definitions and named element definitions containing\n complexTypes become global DataSources, that is, they can be fetched with\n ${isc.DocUtils.linkForRef('classMethod:DataSource.getDataSource')}.  Inline complexType definitions get\n automatically generated names.\n <p>\n Named simpleType declarations become global ${isc.DocUtils.linkForRef('class:SimpleType','atomic types')}, that is,\n subsequently defined DataSources can use them for ${isc.DocUtils.linkForRef('attr:DataSourceField.type')}.  XML\n schema \"restrictions\" for simple types are automatically translated to\n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap')} or ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')} as\n appropriate.\n <P>\n The created SchemaSet object is available in the callback as the single parameter\n \"schemaSet\", or can retrieved via <code>SchemaSet.get(schemaNamespace)</code>.\n <P>\n NOTE: unless you are building an application that dynamically loads XML Schema \n without prior knowledge, instead of calling loadXMLSchema(), you should either:\n <ul>\n <li> use the ${isc.DocUtils.linkForRef('group:loadXMLSchemaTag')} tag to eliminate the need for an asynchronous\n download of an XML Schema file as part of application startup, <b>OR</b>\n <li> use the \"WSDL\" tab in the Developer Console to obtain the XML Schema definition as a\n JavaScript file that can be loaded via a normal HTML &lt;SCRIPT SRC=&gt; tag and/or\n combined with other JavaScript files.  \n </ul>\n <P>\n NOTE: required fields: the XML Schema concept of \"required\" for an attribute or subelement, \n expressed via use=\"required\" (for an attribute) or minOccurs > 0 (for a subelement), is\n that the attribute or element must be present in the XML document <i>but can have any\n value</i>, including being empty or null.  The SmartClient notion of required means\n non-null.  You can express the SmartClient notion of required in XML Schema with the\n combination of minOccurs>0 and a minLength or length \"restriction\", and SmartClient \n will recognize the field as SmartClient-required, with all of the behaviors that implies\n (eg, specially styled form titles, automatic validation, etc).\n\n",
        name:"loadXMLSchema",
        seeAlso:[
        ],
        params:[
            {
                description:"URL to load the schema from",
                optional:false,
                name:"schemaURL",
                defaultValue:null,
                type:"URL"
            },
            {
                description:"signature is callback(schemaSet)",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties to set on the RPCRequest                                         that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"RPCRequest"
            },
            {
                description:"if set, xsd:import statements will be processed                                  automatically to load dependent XSD files where a\n                                  \"location\" is specified.  The callback will not fire until\n                                  all dependencies have been loaded",
                optional:false,
                name:"autoLoadImports",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlSchemaImport')}"
        ],
        definingClass:"class:XMLTools",
        groups:[
            "xmlSchema"
        ]
    },
    "attr:CubeGrid.initialCriteria":{
        ref:"attr:CubeGrid.initialCriteria",
        flags:"IR",
        description:"Criteria to be used when ${isc.DocUtils.linkForRef('attr:CubeGrid.autoFetchData')} is set.",
        name:"initialCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:ListGridField.optionCriteria":{
        ref:"attr:ListGridField.optionCriteria",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')} is set for this ListGridField, criteria specified in this\n attribute will be passed to the dataSource when performing the fetch operation to\n determine data-value to display-value mappings",
        name:"optionCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "attr:ListGrid.neverValidate":{
        ref:"attr:ListGrid.neverValidate",
        flags:"IRWA",
        description:"If true, validation will not occur as a result of cell editing for this grid.",
        name:"neverValidate",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "method:ListGrid.willFetchData":{
        ref:"method:ListGrid.willFetchData",
        flags:"",
        description:" Compares the specified criteria with the current criteria applied to this component's\n data object and determines whether the new criteria could be satisfied from the currently cached\n set of data, or if a new filter/fetch operation will be required.\n <P>\n This is equivalent to calling <code>this.data.willFetchData(...)</code>.\n Always returns true if this component is not showing a set of data from the dataSource. \n \n",
        name:"willFetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"new criteria to test.",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"New text match style. If not passed assumes       textMatchStyle will not be modified.",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"true if server fetch would be required to satisfy new criteria.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:CubeGrid.valueTitle":{
        ref:"attr:CubeGrid.valueTitle",
        flags:"IR",
        description:"A label for the data values shown in cells, such as \"Sales in Thousands\", typically used\n when the CubeGrid must generate a description for a cell value or set of cell values.\n <P>\n For example, in a CubeGrid showing \"Revenue\" by region and product, a cell with a\n CellRecord like:\n <pre> \n {product:\"chairs\", region:\"northwest\", _value:\"$5k\"}\n </pre>\n Should be described as \"Revenue for Chairs for Northwest Region\", not \"Chairs for\n Revenue for Northwest Region\".\n <P>\n For CubeGrids that show multiple types of values at once (eg both \"Revenue\" and\n \"Income\") see ${isc.DocUtils.linkForRef('attr:CubeGrid.metricFacetId')}.",
        name:"valueTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:Flashlet.codeBase":{
        ref:"attr:Flashlet.codeBase",
        flags:"IR",
        description:"This attribute specifies the minimum version of the flash player required to show this\n  flashlet.\n  <p>\n  The default codeBase is: \"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0\"\n  <p>",
        name:"codeBase",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Flashlet"
    },
    "type:ListGridSelectedState":{
        ref:"type:ListGridSelectedState",
        description:"An object containing the stored selection information for a listGrid.\n Note that this object is not intended to be interrogated directly, but may be stored\n (for example) as a blob on the server for state persistence across sessions.",
        name:"ListGridSelectedState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "method:Array.addListAt":{
        ref:"method:Array.addListAt",
        flags:"",
        description:" Add list of items list to this array at item pos.  All items after array[pos] will slide down to\n fit new items.\n\n",
        name:"addListAt",
        seeAlso:[
        ],
        params:[
            {
                description:"new array of items",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array"
            },
            {
                description:"position in this list to put the new items",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the list of items that was added",
            type:"array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "attr:Button.hiliteAccessKey":{
        ref:"attr:Button.hiliteAccessKey",
        flags:"IRW",
        description:"If set to true, if the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.title','title')} of this button contains the\n specified ${isc.DocUtils.linkForRef('attr:Canvas.accessKey','accessKey')}, when the title is displayed to the user\n it will be modified to include HTML to underline the accessKey.<br>\n Note that this property may cause titles that include HTML (rather than simple strings)\n to be inappropriately modified, so should be disabled if your title string includes\n HTML characters.",
        name:"hiliteAccessKey",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Button"
    },
    "object:SectionStackSection":{
        methods:[
        ],
        ref:"object:SectionStackSection",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/SectionStack"
        ],
        attrs:[
            "attr:SectionStackSection.name",
            "attr:SectionStackSection.ID",
            "attr:SectionStackSection.controls",
            "attr:SectionStackSection.title",
            "attr:SectionStackSection.clipTitle",
            "attr:SectionStackSection.showClippedTitleOnHover",
            "attr:SectionStackSection.items",
            "attr:SectionStackSection.showHeader",
            "attr:SectionStackSection.canTabToHeader",
            "attr:SectionStackSection.icon",
            "attr:SectionStackSection.resizeable",
            "attr:SectionStackSection.canReorder",
            "attr:SectionStackSection.canDropBefore",
            "attr:SectionStackSection.expanded",
            "attr:SectionStackSection.hidden",
            "attr:SectionStackSection.canCollapse"
        ],
        description:"Section descriptor used by a SectionStack to describe a section of items which are shown\n or hidden together along with their associated header. \n <P>\n A section header (see ${isc.DocUtils.linkForRef('attr:SectionStack.sectionHeaderClass')}) is created from this descriptor when\n the SectionStack is drawn. Any changes after creation  must be made to the section header:\n ${isc.DocUtils.linkForRef('method:SectionStack.getSectionHeader')}.\n <P>\n Additional SectionHeader properties set on the SectionStackSection not explicitly documented such as\n \"iconAlign\" or \"prompt\" is supported<smartgwt> - use\n <code>setAttribute()</code></smartgwt>.",
        name:"SectionStackSection",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:GridRenderer.alternateColumnStyles":{
        ref:"attr:GridRenderer.alternateColumnStyles",
        flags:"IRW",
        description:"Whether alternating columns should be drawn in alternating styles, in order to create a \n vertical \"ledger\" effect for easier reading.  If enabled, the cell style for alternate \n columns will have \"Dark\" appended to it.",
        name:"alternateColumnStyles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "attr:MathFunction.description":{
        ref:"attr:MathFunction.description",
        flags:"IR",
        description:"A short description of this function",
        name:"description",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MathFunction",
        groups:[
            "formulaFields"
        ]
    },
    "method:ListGrid.editorEnter":{
        ref:"method:ListGrid.editorEnter",
        flags:"",
        description:" Callback fired when the user starts editing a new cell.\n <P>\n This callback is typically used to establish dynamic default values via\n ${isc.DocUtils.linkForRef('method:ListGrid.setEditValue')} or ${isc.DocUtils.linkForRef('method:ListGrid.setEditValues')}.\n <P>\n Can also be overridden on a per-field basis via\n ${isc.DocUtils.linkForRef('method:ListGridField.editorEnter','field.editorEnter')}.\n\n",
        name:"editorEnter",
        seeAlso:[
            {
                ref:"method:ListGridField.editorEnter",
                description:null
            }
        ],
        params:[
            {
                description:"record for the cell being edited.  <b>Will be null</b>                                for a new, unsaved record.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"value for the cell being edited",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:CubeGrid.editByCell":{
        ref:"attr:CubeGrid.editByCell",
        flags:"R",
        description:"CubeGrids only support editing by cell.",
        name:"editByCell",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "cellEditing"
        ]
    },
    "group:layoutMargin":{
        ref:"group:layoutMargin",
        refs:[
            "method:Layout.setLayoutMargin",
            "attr:TileLayout.tileMargin",
            "attr:TileLayout.tileHMargin",
            "attr:TileLayout.tileVMargin",
            "attr:TileLayout.layoutMargin",
            "attr:TileLayout.paddingAsLayoutMargin",
            "attr:TileLayout.expandMargins",
            "attr:Layout.paddingAsLayoutMargin",
            "attr:Layout.layoutMargin",
            "attr:Layout.layoutLeftMargin",
            "attr:Layout.layoutRightMargin",
            "attr:Layout.layoutTopMargin",
            "attr:Layout.layoutBottomMargin",
            "attr:Layout.membersMargin"
        ],
        name:"layoutMargin",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:AdvancedHiliteEditor.title":{
        ref:"attr:AdvancedHiliteEditor.title",
        flags:"IR",
        description:"The title text shown in the header bar of this editor's dialog.",
        name:"title",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Advanced Highlight Editor\"",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FieldPicker.callback":{
        ref:"method:FieldPicker.callback",
        flags:"",
        description:" Callback invoked when picker changes are committed, if a disposable \n ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} is present.\n",
        name:"callback",
        seeAlso:[
            {
                ref:"attr:FieldPicker.dataSource",
                description:null
            }
        ],
        params:[
            {
                description:"committed fields from disposable component",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of ListGridFields"
            },
            {
                description:"Array of hilite objects",
                optional:false,
                name:"hilites",
                defaultValue:null,
                type:"Array of Hilite"
            }
        ],
        type:"method",
        definingClass:"class:FieldPicker"
    },
    "group:arrayMath":{
        ref:"group:arrayMath",
        title:"Array Math",
        refs:[
            "method:Array.intersect",
            "method:Array.max",
            "method:Array.min",
            "method:Array.sum",
            "method:Array.and",
            "method:Array.or",
            "method:List.intersect"
        ],
        description:"Math operations on entire Arrays at once",
        name:"arrayMath",
        seeAlso:[
        ],
        type:"group"
    },
    "method:GridRenderer.getBaseStyle":{
        ref:"method:GridRenderer.getBaseStyle",
        flags:"A",
        description:" Return the base stylename for this cell.  Default implementation just returns this.baseStyle.\n See ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle','getCellStyle()')} for a general discussion of how to style cells.\n\n",
        name:"getBaseStyle",
        seeAlso:[
            {
                ref:"method:GridRenderer.getCellStyle",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS class for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "attr:MenuBar.menus":{
        ref:"attr:MenuBar.menus",
        flags:"IRW",
        description:"An array of menu object initializers or instantiated menu objects. Buttons for each\n menu item will automatically be created. See the Menu Widget Class for fundamental\n menu properties and other properties.  Titles for the buttons are derived from the \n <code>title</code> property of each menu.",
        name:"menus",
        setter:[
            "setMenus"
        ],
        seeAlso:[
            {
                ref:"class:Menu",
                description:null
            }
        ],
        valueType:"Array of Menu",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MenuBar"
    },
    "attr:Chart.stacked":{
        ref:"attr:Chart.stacked",
        flags:"IR",
        description:"Whether to use stacking for charts where this makes sense (bar, column, line and radar\n charts).  If stacked is not set and two facets are supplied, clustering is assumed.",
        name:"stacked",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "attr:Label.iconSpacing":{
        ref:"attr:Label.iconSpacing",
        flags:"IR",
        description:"Pixels between icon and title text.",
        name:"iconSpacing",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "method:FormulaBuilder.getUpdatedFieldObject":{
        ref:"method:FormulaBuilder.getUpdatedFieldObject",
        flags:"",
        description:" Returns the entire property-set for the updated field, including title and formula-related\n properties\n \n",
        name:"getUpdatedFieldObject",
        seeAlso:[
        ],
        returns:{
            description:"The original field along with the updated title and formula",
            type:"Field"
        },
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:Layout.getMemberNumber":{
        ref:"method:Layout.getMemberNumber",
        flags:"",
        description:" Given a member Canvas or member ID or name, return the index of that member within this\n layout's members array\n <p>\n If passed a number, just returns it.\n\n",
        name:"getMemberNumber",
        seeAlso:[
            {
                ref:"method:Layout.getMember",
                description:null
            }
        ],
        params:[
            {
                description:"identifier for the required member",
                optional:false,
                name:"memberID",
                defaultValue:null,
                type:"String | Canvas | int"
            }
        ],
        returns:{
            description:"index of the member canvas (or -1 if not found)",
            type:"int"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "method:Canvas.getScrollBottom":{
        ref:"method:Canvas.getScrollBottom",
        flags:"",
        description:" Returns the scrollTop required to scroll vertically to the end of this widget's content.\n",
        name:"getScrollBottom",
        seeAlso:[
        ],
        returns:{
            description:"scroll bottom coordinate",
            type:"int"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "method:DateRangeItem.canEditCriterion":{
        ref:"method:DateRangeItem.canEditCriterion",
        flags:"",
        description:" Returns true if the specified criterion contains:\n <ul><li>A single \"lessOrEqual\" or \"greaterOrEqual\" criterion on this field</li>\n     <li>An \"and\" type criterion containing a \"lessOrEqual\" and a \"greaterOrEqual\" criterion\n         on this field</li>\n     <li>A single \"equals\" criterion.  Internally, this will be converted into a range\n         by constructing an \"and\" type criterion containing both a \"lessOrEqual\" and \n         a \"greaterOrEqual\" criterion on this field.  Note that subsequent calls to \n         ${isc.DocUtils.linkForRef('method:DateRangeItem.getCriterion','getCriterion()')} will return this more complex \n         criterion.</li>\n </ul>\n",
        name:"canEditCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"criterion to test",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        returns:{
            description:"returns true if this criterion can be edited by this item",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "method:Canvas.scrollBy":{
        ref:"method:Canvas.scrollBy",
        flags:"",
        description:" Scroll this widget by some pixel increment in either (or both) direction(s).\n\n",
        name:"scrollBy",
        seeAlso:[
        ],
        params:[
            {
                description:"Number of pixels to scroll horizontally",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Number of pixels to scroll vertically",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "method:ResultSet.usingFilteredData":{
        ref:"method:ResultSet.usingFilteredData",
        flags:"",
        description:" Determine whether the ResultSet is showing a filtered, proper subset of the cached rows.\n This happens if ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering','client filtering')} is enabled.  Rows may have been\n loaded from the server when a more restrictive criteria is applied such that filtering could\n be performed on the client side.\n <P>\n This method returns false if data is not loaded yet.\n",
        name:"usingFilteredData",
        seeAlso:[
            {
                ref:"method:ResultSet.getAllCachedRows",
                description:null
            }
        ],
        returns:{
            description:"true if the ResultSet is showing a filtered subset of the cached rows, false otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "method:Layout.getMemberDefaultBreadth":{
        ref:"method:Layout.getMemberDefaultBreadth",
        flags:"A",
        description:" Return the breadth for a member of this layout which either didn't specify a breadth or\n specified a percent breadth with ${isc.DocUtils.linkForRef('attr:Layout.managePercentBreadth')}:true.\n <P>\n Called only for Layouts which have a ${isc.DocUtils.linkForRef('type:LayoutPolicy','layout policy')} for the breadth\n axis of \"fill\", since Layouts with a breadth policy of \"none\" leave all member breadths alone.\n\n",
        name:"getMemberDefaultBreadth",
        seeAlso:[
        ],
        params:[
            {
                description:"Component to be sized",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"Value of the currently calculated member breadth. This      may be returned verbatim or manipulated in this method.",
                optional:false,
                name:"defaultBreadth",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:Layout",
        groups:[
            "layoutMember"
        ]
    },
    "method:Class.echoAll":{
        ref:"method:Class.echoAll",
        flags:"",
        description:" Like echo(), except that if passed an Array, echoAll() will echo() every element of the\n Array.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echo()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"echoAll",
        seeAlso:[
            {
                ref:"method:Class.echo",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "attr:SVG.src":{
        ref:"attr:SVG.src",
        flags:"IR",
        description:"Location from which to load the SVG.\n  <p>\n  Note: if you do not specify a src value, ISC will load the special svg 'svgCanvas.svg' from\n  the helpers directory.  This SVG is simply an empty root element - essentially a blank\n  canvas.  You can use this feature to write components that programmatically manipulate the\n  SVG DOM without needing to ship placeholder SVG files.\n  <p>",
        name:"src",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"[HELPERS]svgCanvas.svg",
        type:"attr",
        definingClass:"class:SVG"
    },
    "method:Menu.getItem":{
        ref:"method:Menu.getItem",
        flags:"",
        description:" Get a particular MenuItem by index.\n <P>\n If passed a MenuItem, returns it.\n\n",
        name:"getItem",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the MenuItem",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"the MenuItem, Pointer to the item, or null if not defined",
            type:"MenuItem"
        },
        type:"method",
        definingClass:"class:Menu",
        groups:[
            "menuItems"
        ]
    },
    "attr:DataSourceField.initRequires":{
        ref:"attr:DataSourceField.initRequires",
        flags:"IR",
        description:"Indicates that the specified ${isc.DocUtils.linkForRef('type:VelocityExpression')} must evaluate to true if\n initializations of this field are to be allowed.  If the specified expression does not \n evaluate to true, the field will be removed from the request as described for \n ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresAuthentication','editRequiresAuthentication')}.\n <p>\n In addition to the normal context variables available to Velocity expressions in SmartClient,\n expressions you write for field-level <code>requires</code> clauses - <code>initRequires</code>, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequires','viewRequires')}, ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequires','editRequires')} and \n ${isc.DocUtils.linkForRef('attr:DataSourceField.updateRequires','updateRequires')} - can reference two additional variables: \n <code>$fieldName</code> and <code>$dsName</code>.  These are the names of the dataSource and \n field currently undergoing <code>requires</code> checks.  They are helpful because they allow\n you to write a generic checker function that can be used to handle <code>requires</code>\n checks for multiple fields and dataSources.\n <p>\n <b>NOTE:</b> This property only prevents initialization of a field; updates will still be \n allowed.  You should only use this property if you have a special requirement; ordinarily,\n use ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequires')}, which applies security for both types of write.",
        name:"initRequires",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.editRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.viewRequires",
                description:null
            }
        ],
        valueType:"VelocityExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:ListGrid.cellHasChanges":{
        ref:"method:ListGrid.cellHasChanges",
        flags:"",
        description:" If this listGrid can be edited, this method will return true if the cell passed in has been\n edited, but the edits have not yet been saved to the ListGrid's data object.\n",
        name:"cellHasChanges",
        seeAlso:[
        ],
        params:[
            {
                description:"index of row to check for changes",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"index of the col to check for changes",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"returns true if the cell has unsaved edits",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:ColorPicker.swatchImageURL":{
        ref:"attr:ColorPicker.swatchImageURL",
        flags:"IR",
        description:"The location of the color swatch image file",
        name:"swatchImageURL",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"[SKIN]ColorPicker/spectrum.png\"",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:CubeGrid.styleName":{
        ref:"attr:CubeGrid.styleName",
        flags:"IRW",
        description:"CSS class for the CubeGrid as a whole",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "classMethod:Log.getDefaultLogPriority":{
        ref:"classMethod:Log.getDefaultLogPriority",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.getDefaultLogPriority')} is to call the\n method directly on the Log class.\n",
        name:"getDefaultLogPriority",
        seeAlso:[
        ],
        returns:{
            description:"default priority for logging messages on this object.",
            type:"LogPriority"
        },
        type:"classMethod",
        definingClass:"class:Log"
    },
    "group:formTitles":{
        ref:"group:formTitles",
        title:"Form Titles",
        refs:[
            "method:FilterBuilder.setTopOperatorAppearance",
            "method:DynamicForm.setTitleOrientation",
            "attr:DataSource.requiredMessage",
            "attr:DynamicForm.titleOrientation",
            "attr:DynamicForm.titlePrefix",
            "attr:DynamicForm.rightTitlePrefix",
            "attr:DynamicForm.titleSuffix",
            "attr:DynamicForm.rightTitleSuffix",
            "attr:DynamicForm.titleWidth",
            "attr:DynamicForm.wrapItemTitles",
            "attr:DynamicForm.hiliteRequiredFields",
            "attr:DynamicForm.requiredTitlePrefix",
            "attr:DynamicForm.requiredRightTitlePrefix",
            "attr:DynamicForm.requiredTitleSuffix",
            "attr:DynamicForm.requiredRightTitleSuffix",
            "attr:DynamicForm.requiredMessage",
            "type:TitleOrientation"
        ],
        description:"Properties that affect form item title placement and styling.",
        name:"formTitles",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:PickTreeItem.valueTree":{
        ref:"attr:PickTreeItem.valueTree",
        flags:"IR",
        description:"A ${isc.DocUtils.linkForRef('class:Tree')} of options from which the user can select.",
        name:"valueTree",
        setter:[
            "setValueTree"
        ],
        seeAlso:[
        ],
        valueType:"Tree",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('pickTree')}"
        ],
        definingClass:"class:PickTreeItem"
    },
    "method:List.findNextIndex":{
        ref:"method:List.findNextIndex",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:List.findIndex')}, but inspects a range from startIndex to endIndex.\n\n",
        name:"findNextIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"first index to consider",
                optional:false,
                name:"startIndex",
                defaultValue:null,
                type:"int"
            },
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access",
            "find"
        ]
    },
    "attr:Tab.pane":{
        ref:"attr:Tab.pane",
        flags:"IRW",
        description:"Specifies the pane associated with this tab.  You have two options for the value of\n the pane attribute:\n <ul>\n <li><b>ID</b> - The global ID of an already created Canvas (or subclass).\n <li><b>Canvas</b> - A live instance of a Canvas (or subclass).\n </ul>\n You can change the pane associated with a given tab after the TabSet has been created by\n calling ${isc.DocUtils.linkForRef('method:TabSet.updateTab')}.",
        name:"pane",
        seeAlso:[
            {
                ref:"method:TabSet.updateTab",
                description:null
            }
        ],
        valueType:"ID or Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "classMethod:Time.toShortTime":{
        ref:"classMethod:Time.toShortTime",
        flags:"",
        description:" Given a date object, return the time associated with the date as a short string.\n If no formatter is passed, use the standard formatter set up via ${isc.DocUtils.linkForRef('classMethod:Time.setShortDisplayFormat')}\n",
        name:"toShortTime",
        seeAlso:[
        ],
        params:[
            {
                description:"Date to convert to a time string.",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"Optional custom formatter to use. Will accept  a function (which will be passed a pointer to the Date to format), or\n  a string designating a standard formatter",
                optional:true,
                name:"formatter",
                defaultValue:null,
                type:"TimeDisplayFormat | function"
            },
            {
                description:"Is the date passed in a representation of a logical time value such as  a value from a <code>\"time\"</code> type field on a dataSource or a datetime value? \n  For datetime values the formatted string will respect any custom \n ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone','display timezone')}.\n If not explicitly specified, the date passed in will be assumed to be a datetime unless\n it was created explicitly as a time via ${isc.DocUtils.linkForRef('classMethod:Time.createLogicalTime')} or similar APIs.",
                optional:true,
                name:"logicalTime",
                defaultValue:null,
                type:null
            }
        ],
        type:"classMethod",
        definingClass:"class:Time"
    },
    "method:Progressbar.percentChanged":{
        ref:"method:Progressbar.percentChanged",
        flags:"A",
        description:" This method is called when the percentDone value changes. Observe this method to be notified upon\n a change to the percentDone value.\n\n",
        name:"percentChanged",
        seeAlso:[
            {
                ref:"method:Class.observe",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Progressbar"
    },
    "classAttr:Operators.notTitle":{
        ref:"classAttr:Operators.notTitle",
        flags:"IR",
        description:"Title for the \"not\" operator",
        name:"notTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Match None\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.getCellRowSpan":{
        ref:"method:ListGrid.getCellRowSpan",
        flags:"",
        description:" When using ${isc.DocUtils.linkForRef('method:ListGrid.getRowSpan','row spanning')}, returns the number of cells spanned by the cell\n at the given coordinates.\n <P>\n If the passed coordinates are in the middle of a series of spanned cells, the row span of\n the spanning cell is returned.  For example, if row 2 col 0 spans 3 cells, calls to\n <code>getCellRowSpan()</code> for row 2 col 0, row 3 col 0, row 4 col 0 will all return 3.\n <P>\n This method returns row span information for the current rendered cells.  In contrast, if\n the grid is about to be redrawn, a call to <code>getRowSpan()</code> may return row span\n values for how the grid is about to be drawn.  Also, user-provided getRowSpan() functions\n are not required to operate properly when called outside of the grid rendering loop.\n <P>\n <b>Note:</b> This method is a utility method for developers - it is not called\n directly by the grid rendering path and therefore is not intended for override. To\n set up custom row-spanning behavior, override ${isc.DocUtils.linkForRef('method:ListGrid.getRowSpan')} instead.\n\n",
        name:"getCellRowSpan",
        seeAlso:[
        ],
        params:[
            {
                description:"row number of cell to return the row span for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of cell to return the row span for",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"number of cells spanned by the cell that spans through these coordinates",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "group:events":{
        ref:"group:events",
        refs:[
            "method:CubeGrid.getEventRow",
            "method:CubeGrid.getEventColumn",
            "method:CubeGrid.facetValueOver",
            "method:CubeGrid.facetValueOut",
            "method:CubeGrid.facetValueHover",
            "method:CubeGrid.facetValueContextClick",
            "method:CubeGrid.facetLabelOver",
            "method:CubeGrid.facetLabelOut",
            "method:CubeGrid.facetLabelHover",
            "method:Canvas.containsEvent",
            "method:Canvas.getOffsetX",
            "method:Canvas.getOffsetY",
            "method:Canvas.shouldDragScroll",
            "method:GridRenderer.getEventRow",
            "method:GridRenderer.getEventColumn",
            "method:GridRenderer.getNearestRowToEvent",
            "method:GridRenderer.getNearestColToEvent",
            "method:GridRenderer.cellOut",
            "method:GridRenderer.cellOver",
            "method:GridRenderer.rowOut",
            "method:GridRenderer.rowOver",
            "method:GridRenderer.cellContextClick",
            "method:GridRenderer.rowContextClick",
            "method:GridRenderer.cellMouseDown",
            "method:GridRenderer.rowMouseDown",
            "method:GridRenderer.cellMouseUp",
            "method:GridRenderer.rowMouseUp",
            "method:GridRenderer.cellClick",
            "method:GridRenderer.cellDoubleClick",
            "method:GridRenderer.rowClick",
            "method:GridRenderer.rowDoubleClick",
            "method:GridRenderer.cellHover",
            "method:GridRenderer.cellValueHover",
            "method:GridRenderer.rowHover",
            "method:GridRenderer.cellHoverHTML",
            "method:GridRenderer.cellValueHoverHTML",
            "method:GridRenderer.getCellHoverComponent",
            "method:ListGrid.cellOver",
            "method:ListGrid.rowOver",
            "method:ListGrid.cellOut",
            "method:ListGrid.rowOut",
            "method:ListGrid.cellHover",
            "method:ListGrid.cellValueHover",
            "method:ListGrid.rowHover",
            "method:ListGrid.cellHoverHTML",
            "method:ListGrid.cellValueHoverHTML",
            "method:ListGrid.cellContextClick",
            "method:ListGrid.rowContextClick",
            "method:ListGrid.cellMouseDown",
            "method:ListGrid.rowMouseDown",
            "method:ListGrid.cellMouseUp",
            "method:ListGrid.rowMouseUp",
            "method:ListGrid.cellClick",
            "method:ListGrid.cellDoubleClick",
            "method:ListGridField.recordClick",
            "method:ListGridField.recordDoubleClick",
            "method:ListGrid.rowClick",
            "method:ListGrid.rowDoubleClick",
            "method:ListGrid.recordClick",
            "method:ListGrid.recordDoubleClick",
            "method:ListGrid.willAcceptDrop",
            "method:ListGrid.getEventRow",
            "method:ListGrid.getEventColumn",
            "method:ListGrid.headerClick",
            "method:ListGrid.headerDoubleClick",
            "method:ListGrid.sorterContextClick",
            "method:ListGrid.sorterClick",
            "method:ListGrid.headerHover",
            "method:TreeGrid.getEventRow",
            "method:TreeGrid.getDropFolder",
            "method:TileGrid.recordClick",
            "method:TileGrid.recordDoubleClick",
            "method:TileGrid.recordContextClick",
            "attr:Canvas.canSelectText",
            "attr:Canvas.canFocus",
            "attr:Canvas.mouseStillDownInitialDelay",
            "attr:Canvas.mouseStillDownDelay",
            "attr:Canvas.doubleClickDelay",
            "attr:Canvas.noDoubleClicks",
            "attr:GridRenderer.canSelectOnRightMouse",
            "attr:GridRenderer.canHover",
            "attr:GridRenderer.showHover",
            "attr:GridRenderer.showClippedValuesOnHover",
            "attr:ListGridField.ignoreKeyboardClicks",
            "attr:ListGrid.showClippedValuesOnHover",
            "attr:ListGrid.arrowKeyAction"
        ],
        description:"Handling mouse and keyboard events generated by the user",
        name:"events",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DSRequest.progressiveLoading":{
        ref:"attr:DSRequest.progressiveLoading",
        flags:"IRW",
        description:"Sets ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressive loading mode')} for this specific\n request, overriding the OperationBinding- and DataSource-level settings.  Note that this \n setting applies only to fetch requests - it has no effect if specified on any other kind \n of request.",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            },
            {
                ref:"attr:OperationBinding.progressiveLoading",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "progressiveLoading"
        ]
    },
    "attr:DataBoundComponent.fields":{
        ref:"attr:DataBoundComponent.fields",
        flags:"IRW",
        description:"A DataBoundComponent manipulates records with one or more fields, and\n <code>component.fields</code> tells the DataBoundComponent which fields to present, in what\n order, and how to present each field.\n <p>\n When both <code>component.fields</code> and \n <code>${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataSource','component.dataSource')}</code> are set,\n any fields in <code>component.fields</code> with the same name as a DataSource field\n inherit properties of the DataSource field.  This allows you to centralize data model\n information in the DataSource, but customize presentation of DataSource fields on a\n per-component basic.  For example, in a ListGrid, a shorter title or format for a field\n might be chosen to save space.\n <p>\n By default, only fields specified on the component are shown, in the order specified on\n the component.  The ${isc.DocUtils.linkForRef('attr:DataBoundComponent.useAllDataSourceFields')} flag can be set to show all fields\n from the DataSource, with <code>component.fields</code> acting as field-by-field\n overrides and/or additional fields.\n <p>\n If a DataBoundComponent is given a DataSource, but no <code>component.fields</code>, the\n \"default binding\" is used: fields are shown in DataSource order, according\n to the properties <code>${isc.DocUtils.linkForRef('attr:DataBoundComponent.showHiddenFields')}</code> and \n <code>${isc.DocUtils.linkForRef('attr:DataBoundComponent.showDetailFields')}</code>.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of Field",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('mergedFields')}",
            "${isc.DocUtils.linkForExampleId('validationFieldBinding')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "attr:DataSourceField.viewRequiresAuthentication":{
        ref:"attr:DataSourceField.viewRequiresAuthentication",
        flags:"IR",
        description:"Whether a user must be authenticated in order to fetch this field.  If this property is \n set and the user is not authenticated, SmartClient Server will not return values for this\n field to the client.\n <p>\n The way this behavior works is to remove the field from the expressed or implied list of\n fields to return.  A list of fields can be expressed using ${isc.DocUtils.linkForRef('attr:OperationBinding.outputs')}\n or ${isc.DocUtils.linkForRef('attr:DSRequest.outputs')}; in the absence of those, the entire set of fields defined in \n the DataSource is implied.  You can override this behavior on a per-request basis by \n providing a DMI that just re-adds the names of the fields you want for that particular \n request to the \"consolidated outputs\".  See the server-side Javadoc for \n <code>DSRequest.getConsolidatedOutputs()</code>.\n <p>\n In addition to this behavior of trimming off values in fetched records, a field that fails\n a field-level security check (either this one or one of the two more specific checks, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresRole','viewRequiresRole')} and ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequires','viewRequires')}) will be \n altered in the version of the dataSource returned to the client by the \n ${isc.DocUtils.linkForRef('group:loadDSTag','&lt;loadDS&gt; JSP tag')} or \n ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','DataSourceLoader servlet')}.\n <ul>\n <li>If the field is also not editable (see the discussion of this below), it will be marked \n ${isc.DocUtils.linkForRef('attr:DataSourceField.canView','canView')}:false, and thus effectively be inert and unusable on the client</li>\n <li>If the field is editable, it will be marked ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden','hidden')}.  By default, this means\n that ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s will not show the field, though this can be overridden for \n individual components.  If you do choose to unhide the field, bear in mind that it will \n never actually show any data, because the underlying security test has still failed</li>\n </ul>\n By default, view constraints automatically imply edit constraints - almost all of the time,\n if a user is not allowed to view a field, he should not be allowed to update it either.  If\n you specify a view constraint, the system behaves as if you had also specified the \n corresponding edit constraint - so <code>viewRequiresAuthentication</code> on a field \n implies <code>${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresAuthentication','editRequiresAuthentication')}</code>.\n You override this behavior simply by specifying some kind of edit constraint for the field,\n either a different one (eg, \"users\" can view a field, but only \"managers\" can update it) or \n a blank one (if you have some unusual requirement whereby users are not allowed to view a \n field, but they can update it).",
        name:"viewRequiresAuthentication",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ListGrid.imageSize":{
        ref:"attr:ListGrid.imageSize",
        flags:"IRW",
        description:"Default size of thumbnails shown for fieldTypes image and imageFile.  Overrideable on a\n per-field basis via ${isc.DocUtils.linkForRef('attr:ListGridField.imageSize')} or\n ${isc.DocUtils.linkForRef('attr:ListGridField.imageWidth')}/${isc.DocUtils.linkForRef('attr:ListGridField.imageHeight')}",
        name:"imageSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:Canvas.edgeImage":{
        ref:"attr:Canvas.edgeImage",
        flags:"IR",
        description:"Base name of images for edges.  Extensions for each corner or edge piece will be added\n to this image URL, before the extension.  For example, with the default base name of\n \"edge.gif\", the top-left corner image will be \"edge_TL.gif\".\n <P>\n The full list of extensions is: \"_TL\", \"_TR\", \"_BL\", \"_BR\", \"_T\", \"_L\", \"_B\", \"_R\",\n \"_center\".",
        name:"edgeImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]edge.gif\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('edges')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "classMethod:isc.getIconTop":{
        ref:"classMethod:isc.getIconTop",
        flags:"A",
        description:"  Returns the (offset) top-coordinate of an icon within its containing widget.\n",
        name:"getIconTop",
        seeAlso:[
        ],
        params:[
            {
                description:"icon definition",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"icon top position in px",
            type:"number"
        },
        type:"method",
        definingClass:"class:isc"
    },
    "method:Array.findAll":{
        ref:"method:Array.findAll",
        flags:"",
        description:" Find all objects where property == value in the object.\n <P>\n Pass an Object as the <code>propertyName</code> argument to match multiple properties.\n\n",
        name:"findAll",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"all matching Objects or null if none found",
            type:"Array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access",
            "find"
        ]
    },
    "method:ListGrid.getFilterEditorCriteria":{
        ref:"method:ListGrid.getFilterEditorCriteria",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is true, this method will return the criteria currently\n displayed in the <code>filterEditor</code>. Note that these values may differ from the\n criteria returned by ${isc.DocUtils.linkForRef('method:ListGrid.getCriteria')} if the filter editor values have been modified\n without performing an actual filter.\n",
        name:"getFilterEditorCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"By default this method will include criteria applied to   fields, including criteria that are not actually visible/editable in the filterEditor for the\n   grid. Pass in this parameter to get only values for visible fields returned.",
                optional:true,
                name:"omitHiddenFields",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"criteria currently displayed in the filterEditor",
            type:"Criteria or AdvancedCriteria"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:MultiFileItem.editButtonPrompt":{
        ref:"attr:MultiFileItem.editButtonPrompt",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('attr:FormItemIcon.prompt','prompt')} of the ${isc.DocUtils.linkForRef('attr:MultiFileItem.editButton','edit button')}.",
        name:"editButtonPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add files\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Layout.getMemberOffset":{
        ref:"method:Layout.getMemberOffset",
        flags:"A",
        description:" Override point for changing the offset on the breadth axis for members, that is, the offset\n relative to the left edge for a vertical layout, or the offset relative to the top edge for\n a horizontal layout.\n <P>\n The method is passed the default offset that would be used for the member if\n getMemberOffset() were not implemented.  This default offset already takes into account\n ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')}, as well as the ${isc.DocUtils.linkForRef('attr:Layout.defaultLayoutAlign','alignment on the breadth axis')},\n which is also passed to getMemberOffset().\n <P>\n This method is an override point only; it does not exist by default and cannot be called.\n\n",
        name:"getMemberOffset",
        seeAlso:[
        ],
        params:[
            {
                description:"Component to be positioned",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"Value of the currently calculated member offset.  If this      value is returned unchanged the layout will have its default behavior",
                optional:false,
                name:"defaultOffset",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"alignment of the enclosing layout, on the breadth axis",
                optional:false,
                name:"alignment",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Layout",
        groups:[
            "layoutMember"
        ]
    },
    "attr:Canvas.animateShowAcceleration":{
        ref:"attr:Canvas.animateShowAcceleration",
        flags:"IRWA",
        description:"Default acceleration function for performing an animated show.  If unset, \n <code>this.animateAcceleration</code> will be used by default instead",
        name:"animateShowAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "method:TileLayout.setTileHeight":{
        ref:"method:TileLayout.setTileHeight",
        flags:"",
        description:" Sets the height of tiles.\n",
        name:"setTileHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"height",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "tileLayout"
        ]
    },
    "attr:DateItem.defaultChooserDate":{
        ref:"attr:DateItem.defaultChooserDate",
        flags:"IRW",
        getter:[
            "getDefaultChooserDate"
        ],
        description:"Default date to show in the date chooser. If this items value is currently unset,\n this property may be specified to set a default date to highlight in the dateChooser \n for this item. If unset, the date chooser will highlight the current date by default.\n Note that this has no effect if the item as a whole currently has a value - in that\n case the date chooser will always highlight the current value for the item.",
        name:"defaultChooserDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "method:ListGrid.anySelected":{
        ref:"method:ListGrid.anySelected",
        flags:"",
        description:" Whether at least one item is selected\n",
        name:"anySelected",
        seeAlso:[
        ],
        returns:{
            description:"true == at least one item is selected\t\t\t\t\t\t\t\tfalse == nothing at all is selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "classMethod:Hover.hide":{
        ref:"classMethod:Hover.hide",
        flags:"",
        description:" Hide hover hover Canvas shown via ${isc.DocUtils.linkForRef('classMethod:Hover.show')}\n",
        name:"hide",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Hover"
    },
    "attr:Canvas.animateMoveTime":{
        ref:"attr:Canvas.animateMoveTime",
        flags:"IRWA",
        description:"Default time for performing an animated move.  If unset, <code>this.animateTime</code>\n will be used by default instead",
        name:"animateMoveTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:SelectItem.sortField":{
        ref:"attr:SelectItem.sortField",
        flags:"IR",
        description:"Specifies the field by which this item should be initially sorted.  Can be set to \n either a ${isc.DocUtils.linkForRef('attr:ListGridField.name','field name')} or the index of the field in the fields \n Array. Note that if <code>sortField</code> is initially specified as a number, it will be\n converted to a string (field name) after the item is initialized.",
        name:"sortField",
        seeAlso:[
        ],
        valueType:"String or integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sort')}"
        ],
        definingClass:"class:SelectItem",
        groups:[
            "sorting"
        ]
    },
    "attr:Window.minimized":{
        ref:"attr:Window.minimized",
        flags:"IRW",
        description:"Is this window minimized. If true at init time, the window will be drawn minimized.\n To set this property at runtime use ${isc.DocUtils.linkForRef('method:Window.minimize')} or ${isc.DocUtils.linkForRef('method:Window.restore')}.",
        name:"minimized",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "method:ListGrid.drawAreaChanged":{
        ref:"method:ListGrid.drawAreaChanged",
        flags:"A",
        description:"  Notification method that fires when the drawArea changes due to scrolling.  Receives\n the previous drawArea co-ordinates as parameters.  Call ${isc.DocUtils.linkForRef('method:ListGrid.getDrawArea')} to\n get the new drawArea co-ordinates.\n <P>\n Note that if this grid is showing any ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen fields')}, they\n will not be included in the <code>oldStartCol</code>, <code>oldEndCol</code> range\n reported by this method. Frozen fields are assumed never to be scrolled out of view.\n\n",
        name:"drawAreaChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"the startRow from before the drawArea changed",
                optional:false,
                name:"oldStartRow",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the endRow from before the drawArea changed",
                optional:false,
                name:"oldEndRow",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the startCol from before the drawArea changed",
                optional:false,
                name:"oldStartCol",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the endCol from before the drawArea changed",
                optional:false,
                name:"oldEndCol",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Tree.setShowRoot":{
        ref:"method:Tree.setShowRoot",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:Tree.showRoot')}.\n",
        name:"setShowRoot",
        seeAlso:[
        ],
        params:[
            {
                description:"new <code>showRoot</code> value",
                optional:false,
                name:"showRoot",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:ImgSectionHeader.clipTitle":{
        ref:"attr:ImgSectionHeader.clipTitle",
        flags:"IR",
        description:"If the title for this section header is too large for the available space, should the title be\n clipped?\n <p>\n This feature is supported only in browsers that support the CSS UI text-overflow\n property (IE6+, Firefox 7+, Safari, Chrome, Opera 9+).",
        name:"clipTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgSectionHeader"
    },
    "attr:RichTextEditor.bulletControls":{
        ref:"attr:RichTextEditor.bulletControls",
        flags:"IRA",
        description:"Default HTML list control group. Consists of an array of ${isc.DocUtils.linkForRef('type:ControlName')}s and/or\n ${isc.DocUtils.linkForRef('class:Canvas')} instances. To display this group of controls for some RichTextEditor,\n include <code>\"bulletControls\"</code> in the ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')} array.",
        name:"bulletControls",
        seeAlso:[
        ],
        valueType:"Array of ControlName",
        defaultValue:"[\"indent\", \"outdent\", \"orderedList\", \"unorderedList\", \"listProperties\"]",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "attr:ListGridField.imageSize":{
        ref:"attr:ListGridField.imageSize",
        flags:"IRW",
        description:"Size of images shown for fieldTypes image and imageFile in this field.\n This setting overrides the global ListGrid default ${isc.DocUtils.linkForRef('attr:ListGrid.imageSize')}.\n <P>\n If set to a String, assumed to be a property on each record that specifies the image\n height.  For example, if <code>field.imageSize</code> is \"logoSize\",\n <code>record.logoSize</code> will control the size of the image.",
        name:"imageSize",
        seeAlso:[
            {
                ref:"attr:ListGridField.imageWidth",
                description:null
            },
            {
                ref:"attr:ListGridField.imageHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "class:String":{
        methods:[
            "method:String.contains",
            "method:String.startsWith",
            "method:String.endsWith"
        ],
        ref:"class:String",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:String.isValidID"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Generic extensions to JavaScript Strings.  You can call these on any String.",
        name:"String",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:SectionStack.itemStartIndent":{
        ref:"attr:SectionStack.itemStartIndent",
        flags:"IRW",
        description:"Size, in pixels, of indentation of all member items relative to the start of\n the alignment axis. For instance, for left-aligned members, \n itemStartIndent specifies indentation for every item from the left side of the\n section stack. Overrides ${isc.DocUtils.linkForRef('attr:SectionStack.itemIndent')}.",
        name:"itemStartIndent",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"undefined",
        type:"attr",
        definingClass:"class:SectionStack",
        groups:[
            "layoutMember"
        ]
    },
    "attr:FormItem.showPickerIcon":{
        ref:"attr:FormItem.showPickerIcon",
        flags:"IRW",
        description:"Should we show a special 'picker' ${isc.DocUtils.linkForRef('object:FormItemIcon','icon')} for this form item? Picker\n icons are customizable via ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconProperties','pickerIconProperties')}. By default\n they will be rendered inside the form item's \"control box\" area, and will call\n ${isc.DocUtils.linkForRef('method:FormItem.showPicker')} when clicked.",
        name:"showPickerIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:TabSet.tabProperties":{
        ref:"attr:TabSet.tabProperties",
        flags:"IR",
        description:"Properties to apply to all Tabs created by this TabSet.",
        name:"tabProperties",
        setter:[
            "setTabProperties"
        ],
        seeAlso:[
        ],
        valueType:"Tab Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:ColumnTree.deselectRecords":{
        ref:"method:ColumnTree.deselectRecords",
        flags:"",
        description:"\n Deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecords(records, false)</code>\n\n",
        name:"deselectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to deselect",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            },
            {
                description:"Column number",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "selection"
        ]
    },
    "attr:Calendar.laneNameField":{
        ref:"attr:Calendar.laneNameField",
        flags:"IR",
        description:"The name of the field which will determine the ${isc.DocUtils.linkForRef('attr:Calendar.lanes','lane')} in which this \n event will be displayed in ${isc.DocUtils.linkForRef('class:Timeline')}s and in the ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day view')}, if \n ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} is true.",
        name:"laneNameField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"lane\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "method:EditContext.nodeAdded":{
        ref:"method:EditContext.nodeAdded",
        flags:"",
        description:" Notification fired when an ${isc.DocUtils.linkForRef('object:EditNode')} has been added to the EditContext\n\n",
        name:"nodeAdded",
        seeAlso:[
        ],
        params:[
            {
                description:"node that was added",
                optional:false,
                name:"newNode",
                defaultValue:null,
                type:"EditNode"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:TimeItem.setSeconds":{
        ref:"method:TimeItem.setSeconds",
        flags:"A",
        description:" Set the seconds value of this TimeItem.\n",
        name:"setSeconds",
        seeAlso:[
        ],
        params:[
            {
                description:"new seconds value for this TimeItem.",
                optional:false,
                name:"seconds",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "classAttr:NumberUtil.groupingFormat":{
        ref:"classAttr:NumberUtil.groupingFormat",
        flags:"IR",
        description:"The grouping-format for numbers",
        name:"groupingFormat",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"1",
        type:"classAttr",
        definingClass:"class:NumberUtil",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Scrollbar.thumbOverlap":{
        ref:"attr:Scrollbar.thumbOverlap",
        flags:"IRA",
        description:"Number of pixels the thumb is allowed to overlap the buttons at each end of the track.\n Default prevents doubling of 1px borders.  Set higher to allow media that shows curved\n joins between the track button and ScrollThumb.",
        name:"thumbOverlap",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "thumb"
        ]
    },
    "attr:Calendar.defaultTimelineColumnSpan":{
        ref:"attr:Calendar.defaultTimelineColumnSpan",
        flags:"IR",
        description:"The number of columns of the ${isc.DocUtils.linkForRef('attr:Calendar.timelineGranularity','timelineGranularity')} to\n give the timeline by default if no ${isc.DocUtils.linkForRef('attr:Calendar.endDate','endDate')} is provided.  The \n default is 20.",
        name:"defaultTimelineColumnSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "classMethod:FileLoader.loadModules":{
        ref:"classMethod:FileLoader.loadModules",
        flags:"",
        description:"\n Loads the specified SmartClient modules into the context of the current page.\n\n",
        name:"loadModules",
        seeAlso:[
        ],
        params:[
            {
                description:"List of SmartClient modules to load.  This can either be a                                  string with comma separated module names or an Array of module\n                                  names.",
                optional:false,
                name:"modules",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when the last of the specified                                      modules has completed loading.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "attr:Calendar.dataFetchMode":{
        ref:"attr:Calendar.dataFetchMode",
        flags:"IRW",
        description:"How to fetch and manage records retrieve from the server.  See ${isc.DocUtils.linkForRef('type:FetchMode')}.\n <P>\n This setting only applies to the ${isc.DocUtils.linkForRef('class:ResultSet')} automatically created by calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')}.  If a pre-existing ResultSet is passed to setData() instead, it's\n existing setting for ${isc.DocUtils.linkForRef('attr:ResultSet.fetchMode')} applies.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"paged\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "databinding"
        ]
    },
    "attr:ListGridField.partialSummary":{
        ref:"attr:ListGridField.partialSummary",
        flags:"IR",
        description:"Only applies to fields of type <code>\"summary\"</code>.\n This attribute is set on a summary field, when calculating the summary value from\n some record, the summary function will only be passed the fields before this summary field.\n This may be useful for displaying running totals across a record.\n <P>\n Note that this feature would typically be used with\n ${isc.DocUtils.linkForRef('attr:ListGrid.canReorderFields','canReorderFields:false')}",
        name:"partialSummary",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ListGrid.expansionDetailField":{
        ref:"attr:ListGrid.expansionDetailField",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:HTMLFlow')} for displaying the contents of\n ${isc.DocUtils.linkForRef('attr:ListGrid.detailField','a specified field')} in a record's expanded section when\n ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')} is <code>detailField</code>.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.expansionDetailFieldProperties</code> and\n <code>listGrid.expansionDetailFieldDefaults</code>.\n <P>\n Note, however, that this is a multi-instance component (potentially one per record),\n so it is created using ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')} not\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')}, and no default single instance is created by\n name on the grid.",
        name:"expansionDetailField",
        seeAlso:[
        ],
        valueType:"MultiAutoChild HTMLFlow",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:ListGrid.selectAllRecords":{
        ref:"method:ListGrid.selectAllRecords",
        flags:"",
        description:" Select all records.\n <P>\n Note that this method will select records even if ${isc.DocUtils.linkForRef('method:ListGrid.canSelectRecord')} returns\n false for the record in question. See also ${isc.DocUtils.linkForRef('method:ListGrid.userSelectAllRecords')}\n",
        name:"selectAllRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:RelativeDateItem.quantityField":{
        ref:"attr:RelativeDateItem.quantityField",
        flags:"IR",
        description:"Field allowing user to pick units of time, eg, number of days.",
        name:"quantityField",
        seeAlso:[
        ],
        valueType:"AutoChild SpinnerItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:FormItem.formatValue":{
        ref:"method:FormItem.formatValue",
        flags:"",
        description:" Allows customization of how the FormItem's stored value is formatted for display.\n <p>\n By default, this formatter will only be applied to static displays such\n as ${isc.DocUtils.linkForRef('class:StaticTextItem')} or ${isc.DocUtils.linkForRef('class:SelectItem')}, and does not apply to values \n displayed in a freely editable text entry field \n (such as a ${isc.DocUtils.linkForRef('class:TextItem')} or ${isc.DocUtils.linkForRef('class:TextAreaItem')}).\n <p>\n To define formatting logic for editable text, developers may:\n <ul>\n <li>set ${isc.DocUtils.linkForRef('attr:TextItem.formatOnBlur')} to true, which causes the static formatter\n to be applied while the item does not have focus, and then be cleared when the user\n moves focus to the text field</li>\n <li>use ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} and supply a\n corresponding ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} that can convert a formatted and subsequently\n user-edited value back to a stored value.</li>\n </ul>\n",
        name:"formatValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Underlying data value to format. May be null.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"The record currently being edited by this form.      Essentially the form's current values object.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"pointer to the DynamicForm",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"pointer to the FormItem",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Display value to show.",
            type:"string"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('formatRelatedValue')}"
        ],
        definingClass:"class:FormItem"
    },
    "group:smartArchitecture":{
        ref:"group:smartArchitecture",
        title:"SmartClient Architecture",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"SmartClient can add interactivity and performance benefits to any web application with a\n variety of integration approaches.  This topic discusses the optimal architecture for a\n SmartClient application, which can be adopted in whole or in part.\n <p>\n In a typical HTML-based web application, every time a new view is shown to a user, a round\n trip to the server is required to retrieve new presentation information, such as a search\n screen.  However in an ISC-based application, showing a new view can be accomplished by\n simply hiding some components and showing others.\n <p>\n Because ISC components are expressed in a concise declarative form, and because ISC\n components have essentially no runtime performance impact until used, dozens of application\n views can be downloaded to the browser using the same bandwidth that would have been\n required to render just the initial view in plain HTML.  \n <p> \n This architectural pattern of \"preloading views\" has tremendous benefits.  View transitions\n which do not require new data from the server can be performed near-instantaneously and\n without server involvement, boosting both interactivity and scalability.\n <p>\n Showing a dialog containing a \"wizard\" is a straightforward example of showing a \"preloaded\n view\".  For example:\n <pre>\n    function showNewUserWizard() {\n        Window.create({\n            items:[\n                DynamicForm.create({ ... })\n            ]\n        });\n    }\n    Button.create({\n        title:\"New User..\",\n        click:\"showNewUserWizard()\"\n    });\n </pre>\n In this example, none of the components involved in a potentially multi-pane wizard are \n created until they are needed.  Showing the wizard has near-instantaneous response and\n causes no server load.\n <p>\n However, let's say that the first pane of the wizard is going to incorporate some dynamic\n user-specific data, such as the current user's name.  To load the username, we'll use an RPC\n operation targetting a .jsp called \"getUserName.jsp\" and show the wizard when it completes\n (see ${isc.DocUtils.linkForRef('class:RPCManager')} for information on RPCs and how to construct a .jsp that can\n send an RPC response).\n <pre>\n    function showNewUserWizard() {\n        RPCManager.sendRequest({\n            actionURL:\"getUserName.jsp\",\n            callback:\"doShow(rpcResponse)\"\n        });\n    }\n    function doShow(rpcResponse) {\n        Window.create({\n            items:[\n                Canvas.create({contents:\"Hello, \" + rpcResponse.userName}),\n                DynamicForm.create({ ... })\n            ]\n        });\n    }\n    Button.create({\n        title:\"New User..\",\n        click:\"showNewUserWizard()\"\n    });\n </pre>\n In this example, we've simply incorporated a user name into the first pane of a wizard.\n However, this pattern allows us to arbitrarily change user interactions based on data from\n the server.  For example, the RPCResponse might have contained a flag indicating that the\n wizard should skip the first two steps, or an arbitrary warning message for the user, or\n even JavaScript code to be evaluated on the client.\n <P>\n This architecture has several key advantages:\n <dl>\n\n <dt><b>Performance: Cacheable UI</b></dt>\n <dd>\n A dynamic, data-driven UI can be expressed completely in <i>cacheable</i> JavaScript.\n This is in contrast to any architecture based on server-side HTML generation, where static\n parts of the presentation are mixed in with dynamic data, preventing cacheability so that\n bandwidth and server time are wasted repeatedly delivering the same static presentation\n data.\n <br>\n Even generated JavaScript is cacheable.  For example, a SmartClient View expressed in XML\n and contained within a JSP is still a separately cacheable resource when loaded via a\n &lt;SCRIPT SRC&gt; tag and advertised as a cacheable resource via HTTP headers, because it\n is ultimately delivered to the browser as simple JavaScript.  Hence standard \n ${isc.DocUtils.linkForRef('group:i18n','internationalization')} techniques such as using JSTL tags in a JSP remain\n applicable.\n <br>\n The SmartClient Architecture even allows you to capture all the gradations of cacheability\n from completely static (changes once per application rollout) to completely dynamic\n (timestamp).  In the example above, the user name wouldn't actually change for the lifetime\n of the page, so could be loaded once only.\n <br>&nbsp;</dd>\n\n <dt><b>Performance: Minimal Server State</b></dt>\n <dd>\n Any architecture that relies on component descriptions being generated by the server\n must track a great deal of state, which, in the SmartClient Architecture, is either\n completely eliminated or greatly reduced.\n <br>&nbsp;</dd>\n\n <dt><b>True Presentation / Business Logic separation</b></dt>\n <dd>\n The RPCResponse object represents the client's exact, minimal needs for server data.\n This is much easier to understand and to audit than a slew of .jsp files which access and\n update miscellaneous state.  It is also far easier to spot reusable patterns of data access,\n which in server-side HTML generation systems often end up as duplicated code.\n <br>&nbsp;</dd>\n\n <dt><b>Parallel Development and Testability</b></dt>\n <dd>\n Using the SmartClient architecture allows you to build a complete, working application\n that can run without a server, based on sample data.  In the example above, it would be \n straightforward to create a testing mode that returned a faked RPC response consisting of\n simply <code>{ userName : \"Bob\" }</code>.\n <br>\n This allows better parallel development by enabling the client side of the system to be\n tested in isolation, and creates clearer communication between client and server-side\n developers since creation of test data tends to develop into data requirements\n specifications.\n <br>\n For more info on creating applications that support client-only testing, see\n ${isc.DocUtils.linkForRef('group:clientOnlyDataSources','Client Only DataSources')}.\n <br>&nbsp;</dd>\n </dl>\n <br>\n <h3>Refinements</h3>\n <br>\n <b>Creating vs Showing a View</b>\n <br>\n Many views will be shown to the user repeatedly, for example, the user may repeatedly switch\n back and forth between two panes of a TabSet.  In that usage it makes sense to make a\n distinction between <i>creating</i> a view and <i>showing</i> an existing view.  When\n showing an existing view, the same components and/or data may be able to be reused.\n <br>\n In the following variant on the original example, we only create the Window object and\n do the RPC to retrieve the user name the first time <code>showNewUserWizard()</code> is\n called.  Subsequently we reuse the existing window, and we assume the user name has not\n changed, so we need not do the RPC again. (<i>Note: \"New User\" button omitted for brevity\n from here on</i>)\n <pre>\n    function showNewUserWizard() {\n        if (!window.myWindow) {\n            Window.create({\n                ID:\"myWindow\",\n                autoDraw:false,\n                items:[\n                    Canvas.create({ ID: \"welcomeCanvas\" }),\n                    DynamicForm.create({ ... })\n                ]\n            });\n            RPCManager.sendRequest({\n                actionURL:\"getUserName.jsp\",\n                callback:\"doShow(rpcResponse)\"\n            });\n        } else {\n            myWindow.show();\n        }\n    }\n    function doShow(rpcResponse) {\n        welcomeCanvas.setContents(\"Hello, \" + rpcResponse.userName);\n        myWindow.show();\n    }\n </pre>\n \n <b>Batching Operations</b>\n <br>\n A view may incorporate multiple components, each of which requires data.  In the following\n example, a DataBound ListGrid has been incorporated into the wizard, and we'd like to fetch\n the user's name and the beginning dataset for the grid in the same batch.  We use \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue')} to do so.\n <pre>\n    function showNewUserWizard() {\n        if (!window.myWindow) {\n            Window.create({\n                ID:\"myWindow\",\n                autoDraw:false,\n                items:[\n                    Canvas.create({ ID: \"welcomeCanvas\" }),\n                    <b>ListGrid.create({ \n                        ID: \"myGrid\",\n                        dataSource:\"myDataSource\"\n                    }),</b>\n                    DynamicForm.create({ ... })\n                ]\n            });\n            <b>RPCManager.startQueue();\n            myGrid.fetchData();</b>\n            RPCManager.sendRequest({\n                actionURL:\"getUserName.jsp\",\n                callback:\"doShow(rpcResponse)\"\n            });\n            <b>RPCManager.sendQueue();</b>\n        } else {\n            myWindow.show();\n        }\n    }\n    function doShow(rpcResponse) {\n        welcomeCanvas.setContents(\"Hello, \" + rpcResponse.userName);\n        myWindow.show();\n    }\n </pre>\n\n <b>Segmenting very large Applications</b>\n <P>\n If an application has many hundreds of views, but only a handful of views are used by a\n given user in a typical session, for the fastest loading performance you should consider\n loading only the most commonly used views initially then loading further views on demand.\n <P>\n You can use ${isc.DocUtils.linkForRef('classMethod:FileLoader.loadJSFiles')} to load a set of JavaScript files\n compromising an application module that defines a set of related views.  The loaded\n JavaScript files may define new component classes and new DataSources in addition to\n defining new views and their associated logic.",
        name:"smartArchitecture",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.showHeader":{
        ref:"attr:ListGrid.showHeader",
        flags:"IRW",
        description:"Should we show the header for this ListGrid?",
        name:"showHeader",
        setter:[
            "setShowHeader"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "attr:RelativeDateItem.presetOptions":{
        ref:"attr:RelativeDateItem.presetOptions",
        flags:"IR",
        description:"Preset relative dates, such as \"today\" or \"tomorrow\", that the user can choose directly\n from the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.valueField')}.\n <P>\n Format is an Object mapping user-visible titles to ${isc.DocUtils.linkForRef('type:RelativeDateShortcut')} or\n ${isc.DocUtils.linkForRef('type:RelativeDateString')}s. The default value (expressed in JSON) is:\n <pre>\n {\n     \"$today\" : \"Today\",\n     \"$yesterday\" : \"Yesterday\",\n     \"$tomorrow\" : \"Tomorrow\",\n     \"$weekAgo\" : \"Current day of last week\",\n     \"$weekFromNow\" : \"Current day of next week\",\n     \"$monthAgo\" : \"Current day of last month\",\n     \"$monthFromNow\" : \"Current day of next month\"\n }\n </pre>\n In addition to these presets, options are shown for each of the \n ${isc.DocUtils.linkForRef('type:TimeUnit','timeUnit options')}.",
        name:"presetOptions",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:List.duplicate":{
        ref:"method:List.duplicate",
        flags:"A",
        description:" Return an Array that is a shallow copy of the list, that is, containing the same items.\n\n",
        name:"duplicate",
        seeAlso:[
        ],
        returns:{
            description:"new array, pointing to the same items",
            type:"Array"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "method:Calendar.showNewEventEditor":{
        ref:"method:Calendar.showNewEventEditor",
        flags:"",
        description:" Show an Event Editor for a new event.  If an ${isc.DocUtils.linkForRef('object:CalendarEvent','event')} is passed as the \n parameter, it is used as defaults for the new event.\n \n",
        name:"showNewEventEditor",
        seeAlso:[
        ],
        params:[
            {
                description:"defaults for the new event to show in the Editor",
                optional:true,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ListGrid.sortFieldDescendingText":{
        ref:"attr:ListGrid.sortFieldDescendingText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid, this\n attribute will be shown as the menu item title to sort a field in descending order.",
        name:"sortFieldDescendingText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Sort Descending\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Hilite.textColor":{
        ref:"attr:Hilite.textColor",
        flags:"IRW",
        description:"When edited via a ${isc.DocUtils.linkForRef('class:HiliteEditor')}, the value for the foreground color of this \n hilite.  If this is omitted, it will be automatically derived from the <i>textColor</i>\n attribute of ${isc.DocUtils.linkForRef('attr:Hilite.cssText')}.  When a hilite is saved in a HiliteEditor, both \n attributes are set automatically.",
        name:"textColor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListProperties.startNumber":{
        ref:"attr:ListProperties.startNumber",
        flags:"IR",
        description:"For ordered lists, the number to start the first item with. Must be non-negative.",
        name:"startNumber",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"object:ListProperties"
    },
    "attr:Tree.isFolderProperty":{
        ref:"attr:Tree.isFolderProperty",
        flags:"IRW",
        description:"Name of property that defines whether a node is a folder.  By default this is set to\n ${isc.DocUtils.linkForRef('attr:TreeNode.isFolder')}.",
        name:"isFolderProperty",
        seeAlso:[
            {
                ref:"attr:TreeNode.isFolder",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"isFolder\"",
        type:"attr",
        definingClass:"class:Tree"
    },
    "attr:CubeGrid.rowFacets":{
        ref:"attr:CubeGrid.rowFacets",
        flags:"IR",
        description:"The list of ${isc.DocUtils.linkForRef('attr:Facet.id','ids')} for facets that will appear to the left of the body.",
        name:"rowFacets",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:DataBoundComponent.offlineSaveMessage":{
        ref:"attr:DataBoundComponent.offlineSaveMessage",
        flags:"IRW",
        description:"Message to display when this DataBoundComponent attempts to save data while the application\n is offline.",
        name:"offlineSaveMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Data cannot be saved because you are not online\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('offline')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages",
            "offlineGroup"
        ]
    },
    "attr:ButtonItem.buttonProperties":{
        ref:"attr:ButtonItem.buttonProperties",
        flags:"IRA",
        description:"Custom Properties to apply to our button item.",
        name:"buttonProperties",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ButtonItem"
    },
    "classAttr:Dialog.Prompt":{
        ref:"classAttr:Dialog.Prompt",
        flags:"A",
        description:"The \"Prompt\" object on the dialog class is a singleton Dialog instance.\n  The Prompt is used to show text to the user in a modal fashion - it will expand to show\n  all the text that you put into it.\n  By default this Dialog has no end-user controls and is expected to be programmatically\n  dismissed.<br>\n  Common use-case: During server-interactions, the Prompt will be used to display a suitable\n  wait message, and suppress user input.<br><br>\n\n Notes:<br>\n  Because this is a singleton object, properties set on the Prompt directly will persist each\n  time it is shown.<br>\n  Developers should use the <code>showPrompt()</code> and <code>clearPrompt()</code> methods\n  to show and hide the prompt rather than manipulating the prompt directly.",
        name:"Prompt",
        seeAlso:[
            {
                ref:"classMethod:isc.showPrompt",
                description:null
            },
            {
                ref:"classMethod:isc.clearPrompt",
                description:null
            }
        ],
        valueType:"Dialog Properties",
        defaultValue:"dialog instance properties",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "Prompting"
        ]
    },
    "attr:Scrollbar.endImg":{
        ref:"attr:Scrollbar.endImg",
        flags:"IR",
        description:"The StretchItem for the end of a scrollbar (the \"scroll down\" or \"scroll right\" button\n image). The default is:\n <smartclient><code>{ name:\"end\", width:\"btnSize\", height:\"btnSize\" }</code></smartclient>\n <smartgwt><code>new StretchItem(\"end\", \"btnSize\", \"btnSize\")</code></smartgwt>",
        name:"endImg",
        seeAlso:[
        ],
        valueType:"StretchItem",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "attr:GridRenderer.drawAheadRatio":{
        ref:"attr:GridRenderer.drawAheadRatio",
        flags:"IRWA",
        description:"How far should we render rows ahead of the currently visible area?  This is expressed as a\n ratio from viewport size to rendered area size.\n <P>\n Tweaking drawAheadRatio allows you to make tradeoffs between continuous scrolling speed vs\n initial render time and render time when scrolling by large amounts.\n <P>\n NOTE: Only applies when showAllRows is false.",
        name:"drawAheadRatio",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1.3",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "attr:DateChooser.selectedWeekStyle":{
        ref:"attr:DateChooser.selectedWeekStyle",
        flags:"IRW",
        description:"CSS style applied to the Fiscal Year and Week columns for the currently selected week \n (the one being displayed in the ${isc.DocUtils.linkForRef('attr:DateChooser.showWeekChooser','week chooser')}).",
        name:"selectedWeekStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserSelectedWeek\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:ListGridField.hoverDelay":{
        ref:"attr:ListGridField.hoverDelay",
        flags:"IRW",
        description:"Delay in ms for hovers shown for cells in this field. If unset, the grid's\n hoverDelay will be used.\n <p>\n This property also governes the hoverDelay for the header button. Developers wishing\n to have a different delay for hovers on the header can use ${isc.DocUtils.linkForRef('attr:ListGridField.headerHoverDelay')}\n in addition to this property.",
        name:"hoverDelay",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:TimeItem.secondItemProperties":{
        ref:"attr:TimeItem.secondItemProperties",
        flags:"IRA",
        description:"Custom properties to apply to this timeItem's generated \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondItem','seconds picker')}.",
        name:"secondItemProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:ListGrid.deferRemoval":{
        ref:"attr:ListGrid.deferRemoval",
        flags:"IR",
        description:"When enabled, the field shown by ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} causes records to be\n marked for future removal via ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')} instead of immediately being\n removed.\n <P>\n When a record has been marked for removal, an icon in the\n <code>canRemoveRecords</code> field allowing it to be unmarked will be displayed.\n <P>\n If not explicitly specified by this property, removal of records will be deferred if\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')} is false for the grid.",
        name:"deferRemoval",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:StretchImgButton.showTitle":{
        ref:"attr:StretchImgButton.showTitle",
        flags:"IRW",
        description:"Determines whether any specified ${isc.DocUtils.linkForRef('method:StatefulCanvas.getTitle','title')} will be \n displayed for this component.<br>\n Applies to Image-based components only, where the title will be rendered out in a label\n floating over the component",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "attr:RPCRequest.data":{
        ref:"attr:RPCRequest.data",
        flags:"IRW",
        description:"This attribute specifies the payload of the RPCRequest.  \n <smartclient>\n When using the ${isc.DocUtils.linkForRef('group:iscServer','SmartClient server')},\n any JavaScript simple type or arbitrarily nested set of Objects and Arrays can be sent\n to server and automatically translated to Java Objects.  \n </smartclient>\n <smartgwt>\n When using the ${isc.DocUtils.linkForRef('group:iscServer','SmartClient server')}, objects sent to the server as\n <code>request.data</code> will be available on the server-side <code>RPCRequest</code>\n object as Java Objects. This is achieved by serializing the client side data\n in a JSON type format and generating Java Objects on the server from this serialized data.\n <P>\n If the client side <code>request.data</code> is set to a Java object in your SmartGWT code\n it will be serialized as JSON as follows:<br>\n - Numeric client side values (int, Integer, etc) will be serialized as JavaScript numbers.<br>\n - String values will be serialized as JavaScript strings.<br>\n - Date values will be serialized as JavaScript dates.<br>\n - Maps or Record objects will be serialized as JavaScript Objects.<br>\n - Arrays or Lists will become JavaScript arrays<br>\n Serialization of Maps and Arrays is recursive - each entry in an Array, or attribute\n on a Map will also be serialized according to the above rules.<br>\n Note that you can also set <code>request.data</code> directly to a JavaScriptObject,\n and use the <code>JSOHelper</code> class or <code><i>SomeObject.</i>getJSObj()</code> to \n perform your own data conversions on the client. The serialized JavaScript will then be\n converted back to Java on the server according to the following rules.\n </smartgwt>\n <P>\n Here are the \n mapping of JavaScript types to their corresponding server object types:<br><br>\n\n <table class='normal' border='1'>\n   <tr><td><b>JS Type</b></td>     <td><b>Java Type</b></td></tr>\n   <tr><td>Object: {}</td>         <td>Map</td></tr>\n   <tr><td>Array: []</td>          <td>List</td></tr>\n   <tr><td>String</td>             <td>String</td></tr>\n   <tr><td>Number</td>             <td>Long|Double</td></tr>\n   <tr><td>Boolean</td>            <td>Boolean</td></tr>\n   <tr><td>Date</td>               <td>java.util.Date</td></tr>\n   <tr><td>String</td>             <td>com.smartgwt.client.types.ValueEnum</td></tr>\n\n </table>\n <br><br>\n Note that the order of keys/values in the Maps created on the server is not guaranteed\n because JavaScript Object literals do not guarantee order.\n <p>\n Server->client conversion follows this table as well, with some extras.  See the toJS()\n method on JSTranslater in the server documentation for a description of additional\n behaviors.\n <P>\n When <b>not</b> communicating with the SmartClient server, <code>rpcRequest.data</code>\n becomes simple HTTP parameters or an HTTP request body - see ${isc.DocUtils.linkForRef('attr:RPCRequest.useSimpleHttp')}\n for details.",
        name:"data",
        seeAlso:[
            {
                ref:"attr:RPCResponse.data",
                description:null
            }
        ],
        valueType:"String | Record | Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:Button.valign":{
        ref:"attr:Button.valign",
        flags:"IRW",
        description:"Vertical alignment of this component's title.",
        name:"valign",
        setter:[
            "setVAlign"
        ],
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "appearance"
        ]
    },
    "method:TileGrid.selectRecord":{
        ref:"method:TileGrid.selectRecord",
        flags:"",
        description:"\n Select/deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n\n",
        name:"selectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to select",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:ListGrid.groupTitleField":{
        ref:"attr:ListGrid.groupTitleField",
        flags:"IR",
        description:"When a list grid is ${isc.DocUtils.linkForRef('method:ListGrid.groupBy','grouped')}, each group shows\n under an auto generated header node. By default the title of the group will be\n shown, with a hanging indent in this node, and will span all columns in the grid.\n Setting this property causes the titles of auto-generated group nodes to appear as\n though they were values of the designated field instead of spanning all columns\n and record values in the designated groupTitleField will appear indented under\n the group title in a manner similar to how a TreeGrid shows a Tree.\n <P>\n Note if ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummaryInHeader')} is true, the header nodes will not show\n a single spanning title value by default - instead they will show the summary values for\n each field. In this case, if groupTitleField is unset, a\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupTitleColumn','groupTitleColumn')} can be automatically generated to\n show the title for each group.",
        name:"groupTitleField",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:Dialog.applyClick":{
        ref:"method:Dialog.applyClick",
        flags:"",
        description:" Handle a click on the 'apply' button of this Dialog.\n Default implementation is to call <code>saveData()</code>, but NOT close the Dialog.\n",
        name:"applyClick",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "method:ListGrid.recordDoubleClick":{
        ref:"method:ListGrid.recordDoubleClick",
        flags:"",
        description:" Executed when the listGrid receives a 'doubleClick' event on an enabled, non-separator\n record. The default implementation does nothing -- override to perform\n some action when any record or field is double clicked.<br>\n A record event handler can be specified either as a function to execute, or as a string\n of script to evaluate. If the handler is defined as a string of script, all the\n parameters below will be available as variables for use in the script.<br>\n To do something specific if a particular field is double clicked, add a\n recordDoubleClick method or string of script to that field (same parameters) when you're\n setting up the list.<br>\n <b>Notes:</b><ul>\n <li>This will not be called if the click is below the last item of the list.</li>\n <li>This method is called from the default implementation of ${isc.DocUtils.linkForRef('method:ListGrid.rowDoubleClick')},\n so if that method is overridden this method may not be fired.</li></ul>\n",
        name:"recordDoubleClick",
        seeAlso:[
            {
                ref:"method:ListGrid.rowDoubleClick",
                description:null
            }
        ],
        params:[
            {
                description:"the listGrid that contains the doubleclick event",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"listGrid"
            },
            {
                description:"the record that was double-clicked",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"number of the record clicked on in the current set of                                  displayed records (starts with 0)",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the field that was clicked on (field definition)",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"number of the field clicked on in the listGrid.fields                                  array",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"value of the cell (after valueMap, etc. applied)",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"object"
            },
            {
                description:"raw value of the cell (before valueMap, etc applied)",
                optional:false,
                name:"rawValue",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"return false to cancel event bubbling",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:ListGrid.canSelectAll":{
        ref:"attr:ListGrid.canSelectAll",
        flags:"IRW",
        description:"Controls whether a checkbox for selecting all records appears in the header with\n ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance','selectionAppearance')} set to \"checkbox\"",
        name:"canSelectAll",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:MetricSettings.showValueOnHover":{
        ref:"attr:MetricSettings.showValueOnHover",
        flags:"IR",
        description:"Shows the value of the nearest data value in a floating label whenever the mouse moves\n within the main chart area.  The visual element representing the data\n value will also be emphasized by brightening or highlighting it (appearance differs by\n chart type).\n <p>\n Calculates nearest value based on ${isc.DocUtils.linkForRef('method:FacetChart.getNearestDrawnValue')}.\n <p>\n The data value will be formatted using ${isc.DocUtils.linkForRef('method:FacetChart.formatDataValue')}.\n The label's appearance is controlled by ${isc.DocUtils.linkForRef('attr:FacetChart.hoverLabelProperties')}.",
        name:"showValueOnHover",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "classMethod:EventHandler.getKeyEventCharacter":{
        ref:"classMethod:EventHandler.getKeyEventCharacter",
        flags:"",
        description:"\t\t\tReturn the character for the current key being pressed.\n\t\t\tNote that this is only set reliably for keyPress events on character keys.\n                  \n",
        name:"getKeyEventCharacter",
        seeAlso:[
        ],
        returns:{
            description:"Character the user entered. May be null for non-character keys.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "keyboardEvents"
        ]
    },
    "group:advancedFilter":{
        ref:"group:advancedFilter",
        refs:[
            "method:Operator.condition",
            "method:Operator.compareCriteria",
            "method:DataSource.addSearchOperator",
            "method:DataSource.getSearchOperator",
            "method:DataSource.getTypeOperators",
            "method:DataSource.setTypeOperators",
            "method:DataSource.getFieldOperators",
            "method:DataSource.getFieldOperatorMap",
            "method:DataSource.getTypeOperatorMap",
            "method:DataSource.evaluateCriterion",
            "object:AdvancedCriteria",
            "object:Criterion",
            "object:Operator",
            "classMethod:DataSource.addSearchOperator",
            "classMethod:DataSource.setTypeOperators",
            "attr:Criterion.operator",
            "attr:Criterion.fieldName",
            "attr:Criterion.value",
            "attr:Criterion.criteria",
            "attr:Criterion.start",
            "attr:Criterion.end",
            "attr:Operator.ID",
            "attr:Operator.title",
            "attr:Operator.titleProperty",
            "attr:Operator.fieldTypes",
            "attr:Operator.requiresServer",
            "attr:Operator.hidden",
            "attr:Operator.valueType",
            "attr:Operator.editorType",
            "attr:Operator.symbol",
            "attr:DataSourceField.validOperators",
            "attr:SimpleType.validOperators",
            "attr:ListGrid.allowFilterExpressions",
            "attr:DynamicForm.allowExpressions",
            "attr:FormItem.allowExpressions",
            "attr:FormItem.validOperators",
            "type:OperatorValueType",
            "type:OperatorId"
        ],
        name:"advancedFilter",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.autoFitData":{
        ref:"attr:ListGrid.autoFitData",
        flags:"IRW",
        description:"Should this ListGrid automatically expand to accommodate the size of records and fields?\n <P>\n Valid settings are\n <ul><li><code>\"vertical\"</code>: expand vertically to accommodate records.</li>\n     <li><code>\"horizontal\"</code>: expand horizontally to accommodate fields.</li>\n     <li><code>\"both\"</code>: expand horizontally and vertically to accommodate content.</li>\n </ul>\n How far the ListGrid will expand may be limited via the following properties:\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxHeight')}, ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxRecords')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxWidth')}, ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxColumns')}.\n <P>\n Note that this property causes the grid as a whole to expand to fit records or fields.\n To have the fields or records themselves expand to fit cell contents, see\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} and ${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights')}.",
        name:"autoFitData",
        setter:[
            "setAutoFitData"
        ],
        seeAlso:[
        ],
        valueType:"Autofit",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "method:FormItem.setDisabled":{
        ref:"method:FormItem.setDisabled",
        flags:"A",
        description:"  Set this item to be enabled or disabled at runtime. \n",
        name:"setDisabled",
        seeAlso:[
            {
                ref:"attr:FormItem.disabled",
                description:null
            },
            {
                ref:"method:FormItem.setCanEdit",
                description:null
            }
        ],
        params:[
            {
                description:"true if this item should be disabled",
                optional:false,
                name:"disabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "enable"
        ]
    },
    "method:FormItem.setTabIndex":{
        ref:"method:FormItem.setTabIndex",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FormItem.tabIndex')}.\n",
        name:"setTabIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"new tabIndex for the item",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:Calendar.showControlsBar":{
        ref:"attr:Calendar.showControlsBar",
        flags:"IR",
        description:"If false the controls bar at the top of the calendar will not be displayed - this means \n that the ${isc.DocUtils.linkForRef('attr:Calendar.controlsBar')} will be hidden, so the autoChildren (${isc.DocUtils.linkForRef('attr:Calendar.previousButton')}, \n ${isc.DocUtils.linkForRef('attr:Calendar.dateLabel')}, ${isc.DocUtils.linkForRef('attr:Calendar.nextButton')}, ${isc.DocUtils.linkForRef('attr:Calendar.addEventButton')}, and ${isc.DocUtils.linkForRef('attr:Calendar.datePickerButton')}) \n will not be created or shown.",
        name:"showControlsBar",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:StretchImgButton.setIcon":{
        ref:"method:StretchImgButton.setIcon",
        flags:"",
        description:" Change the icon being shown next to the title text.\n",
        name:"setIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"URL of new icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:DrawCurve.setEndPoint":{
        ref:"method:DrawCurve.setEndPoint",
        flags:"",
        description:" Update the endPoint\n\n",
        name:"setEndPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for end point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for end point, in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "classAttr:GroupingMessages.byDayTitle":{
        ref:"classAttr:GroupingMessages.byDayTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a date field by day.",
        name:"byDayTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Day\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.canFreeze":{
        ref:"attr:ListGridField.canFreeze",
        flags:"IR",
        description:"Whether this field should display freezing/unfreezing options in its header context menu.\n See ${isc.DocUtils.linkForRef('group:frozenFields')}.",
        name:"canFreeze",
        seeAlso:[
            {
                ref:"method:ListGrid.getHeaderContextMenuItems",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "frozenFields"
        ]
    },
    "method:List.removeAt":{
        ref:"method:List.removeAt",
        flags:"",
        description:" Remove the item at the specified position, rearranging all subsequent items to fill the gap\n\n",
        name:"removeAt",
        seeAlso:[
        ],
        params:[
            {
                description:"position to remove",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"item that was removed",
            type:"any"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "attr:SimpleType.valueMap":{
        ref:"attr:SimpleType.valueMap",
        flags:"IR",
        description:"List of legal values for this type, like ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap')}.",
        name:"valueMap",
        seeAlso:[
        ],
        valueType:"ValueMap",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:SimpleType",
        groups:[
            "dataType"
        ]
    },
    "classMethod:Messaging.disconnect":{
        ref:"classMethod:Messaging.disconnect",
        flags:"",
        description:" Sever the connection to the server and stop receiving messages.\n",
        name:"disconnect",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Messaging",
        groups:[
            "messaging"
        ]
    },
    "group:phonegapIntegration":{
        ref:"group:phonegapIntegration",
        title:"Integration with PhoneGap",
        treeLocation:[
            "Concepts/Mobile Application Development"
        ],
        refs:[
        ],
        description:"<P>\n PhoneGap documentation, quick start information, and programming guides are available at <a href='http://phonegap.com' target='_blank'>http://phonegap.com</a>.\n <P>\n PhoneGap exposes a Contacts API which allows one to find, create and remove contacts from the device's contacts database.\n Unlike Titanium, which provides many native UI components, PhoneGap relies on 3rd party frameworks for \n UI components. Additionally, PhoneGap provides no transitions or other animation effects normally \n accessible in native applications.\n <P>\n <em>In the following guide, the name \"MyMobileApp\" refers to a SmartClient mobile application.\n The instructions are intended to be general, and applicable to other apps by simply substituting\n the application name and the few other app-specific details.</em>\n\n <h3>Installing PhoneGap</h3>\n Beginning with PhoneGap 2.9.0, PhoneGap is an NPM (Node.js Packager Manager) package.\n You will need to install Node.js first in order to install PhoneGap. (<b>Tip for Mac users:</b>\n <a href='http://brew.sh' target='_blank'>Homebrew</a> is a simple and easy way\n to install the latest version of Node.js and npm: <code>brew install node</code>)\n\n <p>Once Node.js is installed, see <a href='http://phonegap.com/install/' target='_blank'>http://phonegap.com/install/</a> for\n instructions on installing PhoneGap.\n\n <h3>Creating the PhoneGap Project</h3>\n Use the <a href='http://docs.phonegap.com/en/edge/guide_cli_index.md.html' target='_blank'><code>phonegap</code> command line utility</a>\n to create a new folder containing the project files:\n\n <pre style=\"white-space:nowrap\">phonegap create --id com.mycompany.apps.MyMobileApp --name \"MyMobileApp\" path/to/project_folder</pre>\n\n <p>The project ID and name should be changed for your app.\n\n <h3>General Instructions</h3>\n Within the project folder, PhoneGap creates a special <code>www/</code> folder which contains\n the application JavaScript code and other assets. Within this folder, only <code>config.xml</code>\n is needed. All other files of the default \"Hello PhoneGap\" app can be deleted.\n\n <p>You will need to open the application's main HTML file in a text editor to make a few changes:\n <ul>\n   <li>Change the DOCTYPE to the HTML5 DOCTYPE: <code>&lt;!DOCTYPE html&gt;</code></li>\n   <li>Add a <code>&lt;script&gt;</code> tag to the <code>&lt;head&gt;</code> element to load <code>phonegap.js</code>:\n       <pre>&lt;script type=\"text/javascript\" charset=\"UTF-8\" language=\"JavaScript\" src=\"phonegap.js\"&gt;&lt;/script&gt;</pre>\n\n       <p><b>NOTE:</b> The <code>www/</code> folder should not contain <code>phonegap.js</code>.\n       In other words, don't try to copy <code>phonegap.js</code> into the <code>www/</code> folder.\n       PhoneGap automatically adds the appropriate version of this script, which is different for\n       each platform.</li>\n   <li>Ensure that the following <code>&lt;meta&gt;</code> tags are used, also in the <code>&lt;head&gt;</code> element:\n       <pre>&lt;meta http-equiv=\"Content-Type\" content=\"text/html;charset=UTF-8\"&gt;\n&lt;meta name=\"format-detection\" content=\"telephone=no\"&gt;\n&lt;meta name=\"viewport\" content=\"initial-scale=1, width=device-width, user-scalable=no, minimum-scale=1, maximum-scale=1\"&gt;</pre></li>\n </ul>\n\n <p>After making those changes, you will need to defer starting the application until the\n    <code><a href='http://docs.phonegap.com/en/edge/cordova_events_events.md.html#deviceready' target='_blank'>deviceready</a></code> event has fired,\n    particularly if your application invokes any PhoneGap API function.\n\n        <smartclient>In SmartClient, deferring the application can be accomplished by wrapping all application code within a 'deviceready' listener:\n        <pre class=\"sourcefile\">&lt;script type=\"text/javascript\" language=\"JavaScript\"&gt;\ndocument.addEventListener(\"deviceready\", function onDeviceReady() {\n    // application code goes here\n}, false);\n&lt;/script&gt;</pre></smartclient>\n\n        <smartgwt>To accomplish this in Smart&nbsp;GWT, it is helpful to use a utility class together with a bit of JavaScript.\n\n <p>The following utility class can be used to defer the <code>onModuleLoad</code> code until PhoneGap is ready:\n\n <pre class=\"sourcefile\">package com.mycompany.client;\n\nimport com.google.gwt.core.client.EntryPoint;\n\npublic abstract class CordovaEntryPoint implements EntryPoint {\n\n    &#x40;Override\n    public final native void onModuleLoad() &#x2F;*-{\n        var self = this;\n        if ($wnd.isDeviceReady) self.&#x40;com.mycompany.client.CordovaEntryPoint::onDeviceReady()();\n        else {\n            var listener = $entry(function () {\n                $doc.removeEventListener(\"deviceready\", listener, false);\n                self.&#x40;com.mycompany.client.CordovaEntryPoint::onDeviceReady()();\n            });\n            $doc.addEventListener(\"deviceready\", listener, false);\n        }\n    }-*&#x2F;;\n\n    protected abstract void onDeviceReady();\n}</pre>\n\n <p>The <code>CordovaEntryPoint</code> class is used in conjunction with the following JavaScript,\n        which should be added before the closing <code>&lt/body&gt;</code> tag:\n\n     <pre class=\"sourcefile\">&lt;script type=\"text/javascript\" language=\"JavaScript\"&gt;\ndocument.addEventListener(\"deviceready\", function onDeviceReady() {\n    window.isDeviceReady = true;\n    document.removeEventListener(\"deviceready\", onDeviceReady, false);\n}, false);\n&lt;/script&gt;</pre>\n\n <p>After compiling your application with PhoneGap/Cordova support, copy the compiled Smart&nbsp;GWT\n application to the <code>www/</code> folder.\n </smartgwt>\n\n <h3>iOS Platform (iPhone &amp; iPad)</h3>\n\n <ol>\n <li>Open <b>Terminal</b>, <code>cd</code> into the project folder, and run:\n <pre>phonegap build ios</pre></li>\n <li>Within the newly-created <code>platforms/ios/</code> folder, open the Xcode project <code>MyMobileApp.xcodeproj</code>.</li>\n <li>In Xcode, set the active scheme to <b>MyMobileApp &gt; iPhone Retina (4-inch) &gt; iOS 7.0</b> or some other simulator destination.\n     Then click the <b>Run</b> button. Xcode will start the iPhone Simulator and run the app.</li>\n <li>When you are finished testing the application in the simulator, click the <b>Stop</b> button.</li>\n </ol>\n\n <p>It is helpful to pay attention to the output window when testing the app within iOS Simulator.\n The output window contains all logs to <code><a href='https://developer.mozilla.org/en-US/docs/Web/API/console' target='_blank'>window.console</a></code> and messages from the Cordova\n framework itself. One common issue is <code>ERROR whitelist rejection: url='SOMEURL'</code>,\n which means that SOMEURL has not been added to <code>&lt;access origin=\"...\"/&gt;</code> in <code>config.xml</code>.\n Refer to the <a href='http://docs.phonegap.com/en/edge/guide_whitelist_index.md.html#Domain%20Whitelist%20Guide' target='_blank'>Domain Whitelist Guide</a>\n for more information.\n\n <p>Once you have completely tested the application within the simulator, you should test the app on\n real hardware. Refer to Apple's <a href='https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/Introduction/Introduction.html' target='_blank'>App Distribution Guide</a> for complete instructions on provisioning the app for testing devices, in particular, the section titled\n <a href='https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/TestingYouriOSApp/TestingYouriOSApp.html#//apple_ref/doc/uid/TP40012582-CH8-SW1' target='_blank'>Beta Testing Your iOS App</a>.\n\n <h3>Android Platform</h3>\n To begin targeting Android devices, follow the instructions on the\n <a href='http://docs.phonegap.com/en/edge/guide_platforms_android_index.md.html' target='_blank'>Android Platform Guide</a>.\n\n <p>It is helpful to monitor the LogCat view in Eclipse to verify that your application is working correctly.\n Common errors include:\n <ul>\n <li><code>Application Error The protocol is not supported. (gap://ready)</code>\n     <p>This means that the incorrect <code>phonegap.js</code> script is being used. You\n     must use the <code>phonegap.js</code> for Android.<!-- http://community.phonegap.com/nitobi/topics/error_starting_app_on_android -->\n     <p>Try updating the 'android' platform to fix the problem:\n     <pre>phonegap platform update android</pre>\n     </li>\n <li><code>Data exceeds UNCOMPRESS_DATA_MAX</code>\n     <p>In older versions of Android (pre-2.3.3), there is a 1 Megabyte limit on the size of individual\n        Android app assets. This error message means that one asset file exceeds this limit.\n        You should see a popup alert dialog containing the name of the problematic file, and then the app will crash.\n     <p>The \"Data exceeds UNCOMPRESS_DATA_MAX\" error can be seen if, for example, the SmartGWT.mobile application\n        was compiled in DETAILED or PRETTY mode.\n     </li>\n </ul>\n\n <h3>Samples</h3>\n <smartclient>\n <p>The SmartClient SDK package has a sample application called MyContacts which demonstrates how\n to work with the PhoneGap API in a SmartClient app. The main SmartClient code is located in\n <code>smartclientSDK/examples/phonegap/MyContacts</code>. An Xcode project used to package the app for iOS\n devices is located at <code>smartclientSDK/examples/phonegap/MyContacts-iOS</code>. An Eclipse project used\n to package the app for Android devices is located at <code>smartclientSDK/examples/phonegap/MyContacts-Android</code>.\n </smartclient><smartgwt>\n <p>The Smart&nbsp;GWT Google Code project has a sample application called <a href='http://code.google.com/p/smartgwt/source/browse/#svn%2Ftrunk%2Fsamples%2Fphonegap%2FMyContacts' target='_blank'>MyContacts</a> which demonstrates how\n to work with the PhoneGap API in a Smart&nbsp;GWT app. The main Smart&nbsp;GWT code is located at\n <code><a href='http://code.google.com/p/smartgwt/source/browse/#svn%2Ftrunk%2Fsamples%2Fphonegap%2FMyContacts' target='_blank'>trunk/samples/phonegap/MyContacts</a></code>. An Xcode project used to package the app for iOS\n devices is located at <code><a href='http://code.google.com/p/smartgwt/source/browse/#svn%2Ftrunk%2Fsamples%2Fphonegap%2FMyContacts-iOS' target='_blank'>trunk/samples/phonegap/MyContacts-iOS</a></code>. An Eclipse project used\n to package the app for Android devices is located at <code><a href='http://code.google.com/p/smartgwt/source/browse/#svn%2Ftrunk%2Fsamples%2Fphonegap%2FMyContacts-Android' target='_blank'>trunk/samples/phonegap/MyContacts-Android</a></code>.\n\n <p>This sample application utilizes the script changer technique to load the correct <code>cordova.js</code>.\n Additionally, GWT's <a href='http://www.gwtproject.org/doc/latest/DevGuideCodingBasicsOverlay.html' target='_blank'>JavaScript overlay types</a>\n feature is used to easily wrap the PhoneGap Contacts API for use by the Smart&nbsp;GWT app.\n </smartgwt>",
        name:"phonegapIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TextItem.saveOnEnter":{
        ref:"attr:TextItem.saveOnEnter",
        flags:"IRW",
        description:"Text items will submit their containing form on enter keypress \n if ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOnEnter','saveOnEnter')} is true. Setting this property to\n <code>false</code> will disable this behavior.",
        name:"saveOnEnter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "attr:CubeGrid.rowHeaderBaseStyle":{
        ref:"attr:CubeGrid.rowHeaderBaseStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:Button.baseStyle','baseStyle')} for the buttons in this grid's row headers.",
        name:"rowHeaderBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"rowHeader",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSource.tagName":{
        ref:"attr:DataSource.tagName",
        flags:"IRA",
        description:"Tag name to use when serializing to XML.  If unspecified, the <code>dataSource.ID</code>\n will be used.",
        name:"tagName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "classAttr:Operators.endsWithTitle":{
        ref:"classAttr:Operators.endsWithTitle",
        flags:"IR",
        description:"Title for the \"endsWith\" operator",
        name:"endsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"ends with (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.autoFitMaxColumns":{
        ref:"attr:ListGrid.autoFitMaxColumns",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData')} is set to <code>\"horizontal\"</code> or <code>\"both\"</code>\n this property provides the maximum number of columns for which the ListGrid will expand.\n If more columns are present, scrolling will be introduced to reach them as normal.\n If unset the ListGrid will expand to accommodate as many columns as are defined for the\n grid.",
        name:"autoFitMaxColumns",
        setter:[
            "setAutoFitMaxColumns"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"50",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "method:MiniDateRangeItem.getValue":{
        ref:"method:MiniDateRangeItem.getValue",
        flags:"",
        description:" Retrieves the current value of this dateRangeItem.  The return value is a \n ${isc.DocUtils.linkForRef('object:DateRange')} object that excludes start and end values if they aren't\n set.\n",
        name:"getValue",
        seeAlso:[
        ],
        returns:{
            description:"the current value of this item",
            type:"DateRange"
        },
        type:"method",
        definingClass:"class:MiniDateRangeItem"
    },
    "attr:RichTextItem.endRow":{
        ref:"attr:RichTextItem.endRow",
        flags:"IRW",
        description:"By default RichTextItems take up an entire row",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RichTextItem"
    },
    "class:Button":{
        methods:[
            "method:Button.getTitle",
            "method:Button.setTitle",
            "method:Button.setIconOrientation",
            "method:Button.setIcon",
            "method:Button.setAutoFit",
            "method:Button.setBaseStyle",
            "method:Button.select",
            "method:Button.deselect",
            "method:Button.isSelected",
            "method:Button.setSelected",
            "method:Button.addToRadioGroup",
            "method:Button.removeFromRadioGroup",
            "method:Button.setActionType",
            "method:Button.getActionType",
            "method:Button.setState",
            "method:Button.setDisabled",
            "method:Button.getState",
            "method:Button.action",
            "method:Button.titleClipped",
            "method:Button.titleHoverHTML",
            "method:Button.setWrap",
            "method:Button.setAlign",
            "method:Button.setVAlign",
            "method:Button.iconClick",
            "method:Button.titleHover"
        ],
        ref:"class:Button",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:Button.title",
            "attr:Button.hiliteAccessKey",
            "attr:Button.showClippedTitleOnHover",
            "attr:Button.icon",
            "attr:Button.iconSize",
            "attr:Button.iconWidth",
            "attr:Button.iconHeight",
            "attr:Button.iconStyle",
            "attr:Button.iconOrientation",
            "attr:Button.iconAlign",
            "attr:Button.iconSpacing",
            "attr:Button.showDisabledIcon",
            "attr:Button.showRollOverIcon",
            "attr:Button.showFocusedIcon",
            "attr:Button.showDownIcon",
            "attr:Button.showSelectedIcon",
            "attr:Button.autoFit",
            "attr:Button.baseStyle",
            "attr:Button.selected",
            "attr:Button.radioGroup",
            "attr:Button.actionType",
            "attr:Button.state",
            "attr:Button.showDisabled",
            "attr:Button.showDown",
            "attr:Button.showFocused",
            "attr:Button.showRollOver",
            "attr:Button.align",
            "attr:Button.valign",
            "attr:Button.wrap"
        ],
        description:"The Button widget class implements interactive, style-based button widgets.",
        name:"Button",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.loadingDataMessage":{
        ref:"attr:ListGrid.loadingDataMessage",
        flags:"IRW",
        description:"The string to display in the body of a listGrid while data is being loaded.\n Use <code>\"&#36;{loadingImage}\"</code> to include ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSrc','a loading image')}.",
        name:"loadingDataMessage",
        seeAlso:[
            {
                ref:"attr:ListGrid.loadingDataMessageStyle",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"${loadingImage}&amp;nbsp;Loading data...\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "emptyMessage",
            "i18nMessages"
        ]
    },
    "attr:DSRequest.parentNode":{
        ref:"attr:DSRequest.parentNode",
        flags:"R",
        description:"For advanced use in integrating trees that \n ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand','load data on demand')} with web services,\n <code>parentNode</code> is automatically set in \"fetch\" DSRequests issued by a\n databound TreeGrid that is loading children for that <code>parentNode</code>.\n <P>\n This is sometimes needed if a web service requires that additional properties beyond the\n ID of the parentNode must be passed in order to accomplished level-by-level loading.\n A custom implementation of ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} can access\n dsRequest.parentNode and add any such properties to ${isc.DocUtils.linkForRef('attr:DSRequest.data')}.\n <P>\n <code>parentNode</code> will also be automatically set by a TreeGrid performing databound\n reparenting of nodes, as implemented by ${isc.DocUtils.linkForRef('method:TreeGrid.folderDrop')}.\n <P>\n This property can only be read.  There is no meaning to setting this property\n yourself.",
        name:"parentNode",
        seeAlso:[
        ],
        valueType:"TreeNode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:ListGrid.dataArrived":{
        ref:"method:ListGrid.dataArrived",
        flags:"A",
        description:" Notification method fired when new data arrives from the server to be displayed in this\n ListGrid, (for example in response to the user scrolling a new set of rows into view).\n Only applies to databound listGrids where the ${isc.DocUtils.linkForRef('attr:ListGrid.data','data')} attribute is a\n ${isc.DocUtils.linkForRef('class:ResultSet')}. This ResultSet may have been created manually and applied to the grid via\n a call to ${isc.DocUtils.linkForRef('method:ListGrid.setData')} or may have been created and automatically assigned if\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} was used to populate the grid.  This method is fired directly in\n response to ${isc.DocUtils.linkForRef('method:ResultSet.dataArrived','dataArrived()')} firing on the data object.\n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"starting index of the newly loaded set of rows",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"ending index of the newly loaded set of rows (non inclusive).",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TabSet.moreTab":{
        ref:"attr:TabSet.moreTab",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('object:Tab')} to be shown when ${isc.DocUtils.linkForRef('attr:TabSet.showMoreTab')} is enabled\n more than ${isc.DocUtils.linkForRef('attr:TabSet.moreTabCount')} tabs are provided.",
        name:"moreTab",
        seeAlso:[
        ],
        valueType:"AutoChild Tab",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:StaticTextItem.dateFormatter":{
        ref:"attr:StaticTextItem.dateFormatter",
        flags:"IRWA",
        description:"Display format to use for date type values within this formItem.\n <P>\n Note that Fields of type <code>\"date\"</code>, <code>\"datetime\"</code> or <code>\"time\"</code> will\n be edited using a ${isc.DocUtils.linkForRef('class:DateItem')} or ${isc.DocUtils.linkForRef('class:TimeItem')} by default, but \n this can be overridden - for <code>canEdit:false</code> fields, a\n ${isc.DocUtils.linkForRef('class:StaticTextItem')} is used by default, and the developer can always specify \n a custom ${isc.DocUtils.linkForRef('attr:FormItem.editorType')} as well as ${isc.DocUtils.linkForRef('attr:FormItem.type','data type')}.\n <P>\n The ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')} may also be used to format underlying Date values as\n times (ommitting the date part entirely). If both <code>dateFormatter</code> and\n <code>timeFormatter</code> are specified on an item, for\n fields specified as ${isc.DocUtils.linkForRef('attr:FormItem.type','type \"time\"')} the\n <code>timeFormatter</code> will be used, otherwise the <code>dateFormatter</code>\n <P>\n If <code>item.dateFormatter</code> and <code>item.timeFormatter</code> is unspecified,\n date display format may be defined at the component level via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.dateFormatter')}, or for fields of type <code>\"datetime\"</code>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.datetimeFormatter')}. Otherwise for fields of type \"date\",\n default is to use the system-wide default short date format, configured via\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}. For fields of type \"datetime\" or for Date values\n in fields whose type does not inherit from the logical \"date\" type, default is to use\n the system-wide normal date format configured via ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')} \n (using \"toNormalDate()\" on logical <code>\"date\"</code> type fields is not desirable as this\n would display the time component of the date object to the user).<br>\n Specify any valid ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to \n change the format used by this item.",
        name:"dateFormatter",
        seeAlso:[
            {
                ref:"attr:FormItem.timeFormatter",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StaticTextItem",
        groups:[
            "appearance"
        ]
    },
    "method:DrawOval.setLeft":{
        ref:"method:DrawOval.setLeft",
        flags:"",
        description:" Set the left coordinate of the drawOval\n",
        name:"setLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:TextSettings.fieldList":{
        ref:"attr:TextSettings.fieldList",
        flags:"IR",
        description:"For export, a set of fields to export.  Default is to export all DataSource fields.  \n <P>\n Fields may be specified that are not in the DataSource but for which data values are present\n in the provided Records.  In this case the field is assumed to be of type \"text\".\n <p>                               \n For import, names of DataSource fields to use to parse values, in order.\n <P>\n If <code>fieldList</code> is unset, DataSource fields are used, in order.\n <P>\n If more values exist in a given Record than the listed fields or than all DataSource fields,\n remaining values are ignored.",
        name:"fieldList",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextSettings"
    },
    "attr:TabSet.paneMargin":{
        ref:"attr:TabSet.paneMargin",
        flags:"IR",
        description:"Space to leave around the panes in our paneContainer\n <P>\n Note that this property may be specified on a per-tab basis via ${isc.DocUtils.linkForRef('attr:Tab.paneMargin')}.",
        name:"paneMargin",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:ListGrid.headerTitleClipped":{
        ref:"method:ListGrid.headerTitleClipped",
        flags:"A",
        description:" Is the field title for the specified field clipped?\n\n",
        name:"headerTitleClipped",
        seeAlso:[
            {
                ref:"attr:ListGrid.clipHeaderTitles",
                description:null
            }
        ],
        params:[
            {
                description:"field number for the header button title to test",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether the field title for the specified field is clipped",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "attr:DataBoundComponent.hiliteIcons":{
        ref:"attr:DataBoundComponent.hiliteIcons",
        flags:"IR",
        description:"Specifies a list of icons that can be used in ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites','hilites')}.\n <P>\n <code>hiliteIcons</code> should be specified as an Array of ${isc.DocUtils.linkForRef('type:SCImgURL')}.\n When present, the hilite editing interface shown when ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites')} is called \n will offer the user a drop down for picking one of these icons when defining either a \n simple or advanced hilite rule.\n <P>\n If the user picks an icon, the created hiliting rule will have ${isc.DocUtils.linkForRef('attr:Hilite.icon')} set to \n the chosen icon.  ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconPosition')} controls where the icon will \n appear for that field -- the default is that it appears in front of the normal cell content.\n This can also be overriden at the field level.",
        name:"hiliteIcons",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"[\"[SKINIMG]/Dialog/notify.png\", \"[SKINIMG]/Dialog/warn.png\", \"[SKINIMG]/actions/approve.png\"]",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "method:FormItem.isVisible":{
        ref:"method:FormItem.isVisible",
        flags:"",
        description:" Return true if the form item is currently visible. Note that like the similar\n ${isc.DocUtils.linkForRef('method:Canvas.isVisible','Canvas API')}, it indicates visibility settings only and so\n will return true for an item that is not drawn.\n \n",
        name:"isVisible",
        seeAlso:[
        ],
        returns:{
            description:"true if the form item is visible",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "visibility"
        ]
    },
    "attr:Applet.params":{
        ref:"attr:Applet.params",
        flags:"IR",
        description:"A map of key/value pairs to pass to the applet as parameters.  These are typically\n  accessible within the Java applet code.",
        name:"params",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:ListGrid.clipHeaderTitles":{
        ref:"attr:ListGrid.clipHeaderTitles",
        flags:"IRA",
        description:"Whether the ListGrid should manage the clipping of titles of header buttons, showing\n ellipses if the title is clipped, and potentially showing the full title\n on ${isc.DocUtils.linkForRef('attr:ListGrid.showClippedHeaderTitlesOnHover','hover')}.\n <p>\n In some cases this may be preferable to the button component's default clipping behavior\n because if a ${isc.DocUtils.linkForRef('attr:ListGrid.showSortArrow','sort arrow')} or sort numeral is displayed for\n a header, then the button's default clipping behavior may clip the sort arrow/numeral\n whereas ListGrid-managed title clipping utilizes special HTML which keeps the sort\n arrow/numeral visible.\n <p>\n This feature is automatically enabled if supported by the browser. The only supported\n use of this attribute is to <em>disable</em> the feature by setting clipHeaderTitles\n to false.\n <P>\n Note that this feature is incompatible with ${isc.DocUtils.linkForRef('attr:ListGridField.wrap')}, and will\n automatically be disabled for wrapping fields.",
        name:"clipHeaderTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "attr:SpacerItem.showTitle":{
        ref:"attr:SpacerItem.showTitle",
        flags:"IRW",
        description:"we never show a separate title cell for spacers",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SpacerItem",
        groups:[
            "appearance"
        ]
    },
    "type:EnumTranslateStrategy":{
        ref:"type:EnumTranslateStrategy",
        values:[
            {
                description:"Translates to/from a String matching the constant name. This is the default if not set.",
                value:"\"name\""
            },
            {
                description:"Translates to/from a String matching the <code>enum.toString()</code>.",
                value:"\"string\""
            },
            {
                description:"Translates to/from an integer matching the ordinal number of the constant within \n   the enumeration",
                value:"\"ordinal\""
            },
            {
                description:"Translates to/from a Javascript object containing one property for each property defined \n   within the enum. The constant itself and the ordinal number are included in the JS object.\n   By default they are called \"_constant\" and \"_ordinal\", but this can be overridden with \n   the ${isc.DocUtils.linkForRef('attr:DataSource.enumOrdinalProperty')} and ${isc.DocUtils.linkForRef('attr:DataSource.enumConstantProperty')}\n   properties",
                value:"\"bean\""
            }
        ],
        description:"Determines how Java enums are translated to and from Javascript by the SmartClient server.",
        name:"EnumTranslateStrategy",
        seeAlso:[
            {
                ref:"attr:DataSource.enumTranslateStrategy",
                description:null
            }
        ],
        type:"type",
        serverDS:"allowed"
    },
    "attr:Img.activeAreaHTML":{
        ref:"attr:Img.activeAreaHTML",
        flags:"IRWA",
        description:"Setting this attribute configures an image map for this image.  The value is expected as a\n sequence of &lg;AREA&gt tags - e.g:\n <pre>\n Img.create({ \n     src: \"myChart.gif\",\n     activeAreaHTML:\n         \"&lt;AREA shape='rect' coords='10,50,30,200' title='30' href='javascript:alert(\\\"30 units\\\")'&gt;\" +\n         \"&lt;AREA shape='rect' coords='50,90,80,200' title='22' href='javascript:alert(\\\"22 units\\\")'&gt;\"\n });\n </pre>\n <u>Implementation notes:</u>\n <ul>\n <li>Quotes in the activeAreaHTML must be escaped or alternated appropriately.</li>\n <li>Image maps do not stretch to fit scaled images. You must ensure that the dimensions of\n your Img component match the anticipated width and height of your image map (which will typically\n match the native dimensions of your image). </li>\n <li>To change the image map of an existing Img component, first set yourImg.activeAreaHTML,\n then call yourImg.markForRedraw(). Calls to yourImg.setSrc() will not automatically update the\n image map. </li>\n <li>activeAreaHTML is not supported on tiled Img components (imageType:\"tile\").</li> \n <li>Native browser support for image map focus/blur, keyboard events, and certain AREA tag\n attributes (eg NOHREF, DEFAULT...) varies by platform. If your image map HTML uses attributes\n beyond the basics (shape, coords, href, title), you should test on all supported browsers to\n ensure that it functions as expected.</li>\n </ul>",
        name:"activeAreaHTML",
        seeAlso:[
        ],
        valueType:"String of HTML AREA tags",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Img",
        groups:[
            "appearance"
        ]
    },
    "attr:DSRequest.exportSpanTitleSeparator":{
        ref:"attr:DSRequest.exportSpanTitleSeparator",
        flags:"IR",
        description:"When you export a ${isc.DocUtils.linkForRef('class:ListGrid')} that has ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')}\n defined and ${isc.DocUtils.linkForRef('attr:DSRequest.exportShowHeaderSpanTitles')} is true, the behavior is dependent\n on the export type.  Direct exports to Excel formats (both XLS and OOXML) place the \n headerSpans in merged cells in the spreadsheet, giving the same visual effect as the \n original ListGrid.  This is not possible with exports to CSV format; instead, we alter the \n exported headers so that they contain the titles of the ancestor headerSpan(s).\n <p>\n For example, if you had a field titled \"Population\" inside a headerSpan titled \"National\",\n nested inside another headerSpan titled \"Demographics\", that would result in the exported\n field being titled \"Demographics - National - Population\".\n <p>\n The <code>exportSpanTitleSeparator</code> property allows you to override the separator \n string used when constructing these amalgamated headers.",
        name:"exportSpanTitleSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\" - \"",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "classMethod:isA.String":{
        ref:"classMethod:isA.String",
        flags:"",
        description:"\n\tIs <code>object</code> a String object?\n\n",
        name:"String",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a String",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "method:ComboBoxItem.getSelectedRecord":{
        ref:"method:ComboBoxItem.getSelectedRecord",
        flags:"",
        description:" Get the record returned from the ${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionDataSource')} when ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')}\n is true, and the missing value is fetched.\n <P>\n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues')} kicks off the fetch when the form item is initialized\n with a non null value or when setValue() is called on the item. Note that this method\n will return null before the fetch completes, or if no record is found in the\n optionDataSource matching the underlying value.\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"selected record",
            type:"ListGridRecord"
        },
        type:"method",
        definingClass:"class:ComboBoxItem",
        groups:[
            "display_values"
        ]
    },
    "attr:ListGrid.allowRowSpanning":{
        ref:"attr:ListGrid.allowRowSpanning",
        flags:"IR",
        description:"Should cells in this grid be allowed to span multiple rows?\n If set to <code>true</code>, the ${isc.DocUtils.linkForRef('method:ListGrid.getRowSpan')} method will be\n called for every cell when rendering out the listGrid to determine how many\n rows the cell should span.\n <P>\n See ${isc.DocUtils.linkForRef('method:ListGrid.getRowSpan')} for more details",
        name:"allowRowSpanning",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DateChooser.applyButtonTitle":{
        ref:"attr:DateChooser.applyButtonTitle",
        flags:"IRW",
        description:"Title for the ${isc.DocUtils.linkForRef('attr:DateChooser.applyButton','Apply')} button.",
        name:"applyButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Apply\"",
        type:"attr",
        definingClass:"class:DateChooser",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FacetChart.printZoomChart":{
        ref:"attr:FacetChart.printZoomChart",
        flags:"IRWA",
        description:"Should the ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom','zoom chart')} be printed with this <code>FacetChart</code>?\n If <code>true</code>, then the SVG string returned by ${isc.DocUtils.linkForRef('method:DrawPane.getSvgString')} will\n include the zoom chart's SVG as well.",
        name:"printZoomChart",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart",
        groups:[
            "printing"
        ]
    },
    "attr:ListGrid.canReorderFields":{
        ref:"attr:ListGrid.canReorderFields",
        flags:"IRW",
        description:"Indicates whether fields in this listGrid can be reordered by dragging and\n dropping header fields.",
        name:"canReorderFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('columnOrder')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dragging"
        ]
    },
    "attr:HeaderItem.colSpan":{
        ref:"attr:HeaderItem.colSpan",
        flags:"IRW",
        description:"by default, headers span all remaining columns",
        name:"colSpan",
        seeAlso:[
        ],
        valueType:"measure",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"class:HeaderItem",
        groups:[
            "appearance"
        ]
    },
    "attr:PortalLayout.canShrinkColumnWidths":{
        ref:"attr:PortalLayout.canShrinkColumnWidths",
        flags:"IRWA",
        description:"Controls whether the PortalLayout will shrink column widths to avoid overflowing the PortalLayout \n horizontally. If the PortalLayout would otherwise overflow its width, it will check each column\n to see whether it is wider than necessary to accommodate its ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}. If so,\n the column may shrink to avoid having to scroll the PortalLayout.",
        name:"canShrinkColumnWidths",
        setter:[
            "setCanShrinkColumnWidths"
        ],
        seeAlso:[
            {
                ref:"attr:PortalLayout.canStretchColumnWidths",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "method:Calendar.getCellDate":{
        ref:"method:Calendar.getCellDate",
        flags:"",
        description:" Return the Date instance associated with the passed co-ordinates in the current view.  If\n the cell at the passed co-ordinates is not a date-cell, returns null.\n <P>\n To determine the date at a more specific point within a cell, see ${isc.DocUtils.linkForRef('method:Calendar.getDateFromPoint')}.\n\n",
        name:"getCellDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the row number to get the date for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the column number to get the date for",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"the date, if any, associated with the passed co-ords in the current view",
            type:"Date"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "classAttr:Dialog.CANCEL_BUTTON_TITLE":{
        ref:"classAttr:Dialog.CANCEL_BUTTON_TITLE",
        flags:"IRW",
        description:"Title for the <code>\"Cancel\"</code> button.",
        name:"CANCEL_BUTTON_TITLE",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"\"Cancel\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.selectOnFocus":{
        ref:"attr:DynamicForm.selectOnFocus",
        flags:"IRW",
        description:"If this property is set to true, whenever a text-based field in this form \n (${isc.DocUtils.linkForRef('class:TextItem')}, ${isc.DocUtils.linkForRef('class:TextAreaItem')}) is given focus programmatically \n (see ${isc.DocUtils.linkForRef('method:DynamicForm.focusInItem')}), all text within the item will be selected.\n <P>\n Note that this flag affects only programmatic focus.  It's the normal behavior of text\n fields to select all text if the user navigates into them via keyboard, or if the user\n navigates via mouse, to place the text insertion point at the mouse click, and\n SmartClient preserves these behaviors.  <code>selectOnFocus</code> is only needed for\n cases like a form within a pop-up dialog that should have the first field selected.\n <P>\n If you also want the value to be selected when the user clicks on the field, set \n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnClick','selectOnClick')} instead.\n <P>\n If <code>selectOnFocus</code> is false, the selection is not modified on focus - any\n previous selection within the item will be maintained.\n <P>\n May be overridden at the form item level via ${isc.DocUtils.linkForRef('attr:FormItem.selectOnFocus')}.",
        name:"selectOnFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "focus"
        ]
    },
    "method:TileGrid.deselectRecord":{
        ref:"method:TileGrid.deselectRecord",
        flags:"",
        description:"\n Deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecord(record, false)</code>\n\n",
        name:"deselectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to deselect",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Criterion.start":{
        ref:"attr:Criterion.start",
        flags:"IR",
        description:"Start value of a criterion with an operator of type <code>\"valueRange\"</code>.",
        name:"start",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Criterion",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:ListGrid.sorterButtonTitle":{
        ref:"attr:ListGrid.sorterButtonTitle",
        flags:"IR",
        description:"The title for the corner sort button.  The title will only\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults','ListGrid.changeDefaults()')} rather than replacing with an\n entirely new object.",
        name:"sorterButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"corner menu\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages",
            "gridHeader",
            "appearance"
        ]
    },
    "attr:DynamicForm.itemHoverAlign":{
        ref:"attr:DynamicForm.itemHoverAlign",
        flags:"IRW",
        description:"Text alignment for hovers shown for items",
        name:"itemHoverAlign",
        seeAlso:[
            {
                ref:"attr:FormItem.hoverAlign",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "attr:Calendar.controlsBar":{
        ref:"attr:Calendar.controlsBar",
        flags:"IR",
        description:"An ${isc.DocUtils.linkForRef('class:HLayout','HLayout')} shown above the Calendar views and displaying a set of\n controls for interacting with the current view - namely, the ${isc.DocUtils.linkForRef('attr:Calendar.nextButton','next')},\n ${isc.DocUtils.linkForRef('attr:Calendar.previousButton','previous')} and ${isc.DocUtils.linkForRef('attr:Calendar.addEventButton','add')} buttons, \n the ${isc.DocUtils.linkForRef('attr:Calendar.dateLabel','date label')} and the ${isc.DocUtils.linkForRef('attr:Calendar.datePickerButton','date-picker')} icon.",
        name:"controlsBar",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:Chart.getFacet":{
        ref:"method:Chart.getFacet",
        flags:"",
        description:" Get a facet definition by facetId.\n",
        name:"getFacet",
        seeAlso:[
            {
                ref:"class:Facet",
                description:null
            }
        ],
        params:[
            {
                description:"the id of the facet to retrieve",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the Facet if found, or null",
            type:"Facet"
        },
        type:"method",
        definingClass:"interface:Chart"
    },
    "attr:MultiSortDialog.otherSortLevelTitle":{
        ref:"attr:MultiSortDialog.otherSortLevelTitle",
        flags:"IR",
        description:"The title-text to appear in the first column for all sort-levels other than the first.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"otherSortLevelTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Then by\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColorPicker.allowComplexMode":{
        ref:"attr:ColorPicker.allowComplexMode",
        flags:"IR",
        description:"Should the \"complex\" mode be allowed for this ColorPicker?\n If false, no \"More\" button is shown on the simple picker",
        name:"allowComplexMode",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:DynamicForm.requiredRightTitleSuffix":{
        ref:"attr:DynamicForm.requiredRightTitleSuffix",
        flags:"IRW",
        description:"The string appended to the title of every required item in this form if\n ${isc.DocUtils.linkForRef('attr:DynamicForm.hiliteRequiredFields')} is true and the ${isc.DocUtils.linkForRef('type:TitleOrientation')} property is set to \"right\".",
        name:"requiredRightTitleSuffix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&lt;/b&gt;\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "type:EdgeName":{
        ref:"type:EdgeName",
        values:[
            {
                description:"top edge",
                value:"\"T\""
            },
            {
                description:"bottom edge",
                value:"\"B\""
            },
            {
                description:"left edge",
                value:"\"L\""
            },
            {
                description:"right edge",
                value:"\"R\""
            },
            {
                description:"top-left corner",
                value:"\"TL\""
            },
            {
                description:"top-right corner",
                value:"\"TR\""
            },
            {
                description:"bottom-left corner",
                value:"\"BL\""
            },
            {
                description:"bottom-right corner",
                value:"\"BR\""
            },
            {
                description:"center",
                value:"\"C\""
            }
        ],
        description:"An edge or corner of a rectange, or it's center.  Used in APIs such as\n ${isc.DocUtils.linkForRef('attr:Canvas.resizeFrom')} and ${isc.DocUtils.linkForRef('classMethod:Canvas.getEventEdge')}.",
        name:"EdgeName",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Canvas.setSnapEdge":{
        ref:"method:Canvas.setSnapEdge",
        flags:"",
        description:" Set the snapEdge property of this canvas, and handle repositioning.\n\n",
        name:"setSnapEdge",
        seeAlso:[
        ],
        params:[
            {
                description:"new snapEdge value",
                optional:false,
                name:"snapEdge",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "group:xml serialization":{
        ref:"group:xml serialization",
        refs:[
        ],
        name:"xml serialization",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Facet.synchColumnLayout":{
        ref:"attr:Facet.synchColumnLayout",
        flags:"IR",
        description:"If true, treat all values in this facet as a facetValueGroup - causes\n synched header reorder and resize.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')} and is only\n supported when all of a facet's values are used.",
        name:"synchColumnLayout",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:Tree.reportCollisions":{
        ref:"attr:Tree.reportCollisions",
        flags:"IR",
        description:"If new nodes are added to a tree with modelType:\"parent\" which have the same\n ${isc.DocUtils.linkForRef('attr:Tree.idField','id field value')} as existing nodes, the existing nodes are removed when\n the new nodes are added.\n <P>\n If reportCollisions is true, the Tree will log a warning in the developer console about this.\n <P>\n Note that if an id collision occurs between a new node and its ancestor, the ancestor will be\n removed and the new node will not be added to the tree.",
        name:"reportCollisions",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Tree"
    },
    "method:SectionStack.moveSection":{
        ref:"method:SectionStack.moveSection",
        flags:"",
        description:"\n Moves the specified section(s) to a new position in the SectionStack order.  If you pass\n in multiple sections, then each section will be moved to <code>newPosition</code> in the\n order specified by the <code>sections</code> argument.\n\n",
        name:"moveSection",
        seeAlso:[
        ],
        params:[
            {
                description:"Section(s) to move.                  For this parameter, you can pass the position of the section in the\n                  SectionStack, the name of the section, or a List of section names/positions.",
                optional:false,
                name:"sections",
                defaultValue:null,
                type:"int | String | Array of int | Array of String"
            },
            {
                description:"new position index for the section(s).",
                optional:false,
                name:"position",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:SectionStack"
    },
    "attr:RPCRequest.paramsOnly":{
        ref:"attr:RPCRequest.paramsOnly",
        deprecated:"As of SmartClient 5.6, use ${isc.DocUtils.linkForRef('attr:RPCRequest.useSimpleHttp')} instead.",
        flags:"IRWA",
        description:"When set to true, assume the request is not going to the SmartClient server, and hence send\n a simple HTTP request.  Values specified in ${isc.DocUtils.linkForRef('attr:RPCRequest.params')} are sent to to the\n server as HTTP request parameters.  If ${isc.DocUtils.linkForRef('attr:RPCRequest.httpMethod')} method is POST and\n ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} is supplied, it is assumed to be a string to post as the HTTP\n requestBody.\n <p>\n Setting this to true automatically defaults ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')} to true\n as well.",
        name:"paramsOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:ListGrid.recordComponentPosition":{
        ref:"attr:ListGrid.recordComponentPosition",
        flags:"IRW",
        description:"if ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} is true, how should the component appear within\n the cell. Valid options are\n <ul><li><code>\"within\"</code>: the component will be rendered inside the record / cell.\n  ${isc.DocUtils.linkForRef('attr:Canvas.snapTo')} may be set to specify where the component should render within\n  the row or cell, and ${isc.DocUtils.linkForRef('attr:Canvas.snapOffsetTop')} / ${isc.DocUtils.linkForRef('attr:Canvas.snapOffsetLeft')} may\n  be set to indent recordComponents within their parent cells.\n  Note that if unset, the component will show up at the top/left edge\n  for components embedded within an entire row, or for per-cell components, cell\n  align and valign will be respected.  Note also that, when rendering components \"within\"\n  cells, specified component heights will be respected and will change the height of the\n  row.  However, if you want components to completely fill a cell at it's default height,\n  set height: \"100%\" or rows will render at the default height of the component. </li>\n <li><code>\"expand\"</code>: the component will be written into the cell below the\n  normal cell content, causing the cell to expand vertically to accommodate it.\n <li><code>null</code>: If this attribute is unset, we will default to showing\n  recordComponents with position <code>\"within\"</code> if\n  ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is true, otherwise using <code>\"expand\"</code>\n  logic.\n </ul>",
        name:"recordComponentPosition",
        seeAlso:[
            {
                ref:"attr:ListGrid.showRecordComponents",
                description:null
            }
        ],
        valueType:"EmbeddedPosition",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classAttr:Validator.mustBeEarlierThanTime":{
        ref:"classAttr:Validator.mustBeEarlierThanTime",
        flags:"IRA",
        description:"Default error message to display when standard <code>timeRange</code> type validator\n returns false because the time-portion of the date-value passed in is greater than the \n specified minimum time.\n <p> This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeEarlierThanTime",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be earlier than ${isc.Time.toShortTime(max)}\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DataSource.setCacheAllData":{
        ref:"method:DataSource.setCacheAllData",
        flags:"",
        description:" Call this method to switch cacheAllData on or off after initialization.  Passing a \n <code>shouldCache</code> value of false clears any existing client-side cache,\n cancels any outstanding requests for a full cache and issues any other pending requests\n normally.\n \n",
        name:"setCacheAllData",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')}",
                optional:false,
                name:"shouldCache",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:Layout.reverseOrder":{
        ref:"attr:Layout.reverseOrder",
        flags:"IRW",
        description:"Reverse the order of stacking for this Layout, so that the last member is shown first.\n <P>\n Requires a manual call to <code>reflow()</code> if changed on the fly.\n <P>\n In RTL mode, for horizontal Layouts the value of this flag will be flipped during\n initialization.",
        name:"reverseOrder",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "object:HeaderSpan":{
        methods:[
        ],
        ref:"object:HeaderSpan",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:HeaderSpan.name",
            "attr:HeaderSpan.fields",
            "attr:HeaderSpan.spans",
            "attr:HeaderSpan.title",
            "attr:HeaderSpan.headerTitle",
            "attr:HeaderSpan.headerBaseStyle",
            "attr:HeaderSpan.headerTitleStyle",
            "attr:HeaderSpan.height",
            "attr:HeaderSpan.valign",
            "attr:HeaderSpan.align"
        ],
        description:"A header span appears as a second level of headers in a ListGrid, spanning one or more\n ListGrid columns and their associated headers.\n <P>\n See ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans')}.\n <P>\n In addition to the properties documented here, all other properties specified on the\n headerSpan object will be passed to the ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')} method of the\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpanConstructor')}.  This allows you to set properties such as\n ${isc.DocUtils.linkForRef('attr:Button.baseStyle')} or ${isc.DocUtils.linkForRef('attr:StretchImgButton.src')} directly in a\n <code>headerSpan</code>.",
        name:"HeaderSpan",
        seeAlso:[
        ],
        type:"object",
        groups:[
            "headerSpan"
        ]
    },
    "attr:Window.statusBar":{
        ref:"attr:Window.statusBar",
        flags:"R",
        description:"Simple Canvas-based status bar, shown in the footer.  ${isc.DocUtils.linkForRef('method:Window.setStatus')} can be used to\n show text here.",
        name:"statusBar",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "method:Canvas.keyDown":{
        ref:"method:Canvas.keyDown",
        flags:"A",
        description:"\n Executed when a key is pressed on a focusable widget (${isc.DocUtils.linkForRef('attr:Canvas.canFocus')}: true).\n <P>\n Use ${isc.DocUtils.linkForRef('classMethod:EventHandler.getKey')} to find out the ${isc.DocUtils.linkForRef('type:KeyName','keyName')} of the key that\n was pressed, and use ${isc.DocUtils.linkForRef('classMethod:EventHandler.shiftKeyDown')} and related functions to determine\n whether modifier keys were down.\n\n",
        name:"keyDown",
        seeAlso:[
            {
                ref:"attr:Canvas.canFocus",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "method:CanvasItem.shouldDisableCanvas":{
        ref:"method:CanvasItem.shouldDisableCanvas",
        flags:"",
        description:" Method called to determine whether the ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas','canvas')} should be\n ${isc.DocUtils.linkForRef('method:Canvas.setDisabled','disabled')} when this <code>CanvasItem</code> is disabled\n or its ${isc.DocUtils.linkForRef('method:CanvasItem.canEditChanged','editability changes')}.\n By default, if the <code>canvas</code> is a ${isc.DocUtils.linkForRef('class:DynamicForm')}, then it is disabled if\n and only if this <code>CanvasItem</code> is disabled; otherwise, the <code>canvas</code>\n is disabled if and only if this <code>CanvasItem</code> is disabled or\n ${isc.DocUtils.linkForRef('method:FormItem.getCanEdit','read-only')}.\n <smartclient><p>\n This method may be overridden to customize the default return value.</smartclient>\n",
        name:"shouldDisableCanvas",
        seeAlso:[
        ],
        returns:{
            description:"<code>true</code> if the <code>canvas</code> should be disabled; <code>false</code> otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CanvasItem"
    },
    "attr:PickListMenu.styleName":{
        ref:"attr:PickListMenu.styleName",
        flags:"IRW",
        description:"Default CSS class for the ListGrid as a whole.",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"pickListMenu\"",
        type:"attr",
        definingClass:"class:PickListMenu",
        groups:[
            "appearance"
        ]
    },
    "type:TreeFilterMode":{
        ref:"type:TreeFilterMode",
        values:[
            {
                description:"only nodes that actually match criteria are shown.  If a parent does not                 match the criteria, it will not be shown, even if it has children that do\n                 match the criteria",
                value:"\"strict\""
            },
            {
                description:"parent nodes are kept if they have children which match the criteria,                      or, in a tree with\n                      ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand','loadDataOnDemand:true')}, if they have\n                      not loaded children yet.",
                value:"\"keepParents\""
            }
        ],
        description:"Mode for applying criteria to a tree.",
        name:"TreeFilterMode",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "treeFilter"
        ]
    },
    "attr:ListGridField.summaryValue":{
        ref:"attr:ListGridField.summaryValue",
        flags:"IRW",
        description:"The value to display for a ListGridField when it appears in the ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRow','summaryRow')}.  The\n default for normal fields is null and for special fields, like the ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxField','checkboxField')},\n the default is to show a blank value (a non-breaking space).",
        name:"summaryValue",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:ListGrid.isCheckboxField":{
        ref:"method:ListGrid.isCheckboxField",
        flags:"",
        description:" Identifies whether the passed-in field is the specially generated\n ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxField','checkboxField')} used when ${isc.DocUtils.linkForRef('type:SelectionAppearance')} is\n \"checkbox\".  Use this method in your custom event handlers to avoid inappropriately\n performing actions when the checkboxField is clicked on.\n\n",
        name:"isCheckboxField",
        seeAlso:[
        ],
        params:[
            {
                description:"field to test",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"whether the provided field is the checkbox field",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "attr:DataSource.nullStringValue":{
        ref:"attr:DataSource.nullStringValue",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DataSource.noNullUpdates')} is set, the value to use for any text field that has a null\n value assigned on an update operation, and does not specify an explicit\n ${isc.DocUtils.linkForRef('attr:DataSourceField.nullReplacementValue','nullReplacementValue')}.",
        name:"nullStringValue",
        seeAlso:[
            "noNullUpdates,noNullUpdates",
            {
                ref:"attr:DataSourceField.nullReplacementValue",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "class:Calendar":{
        methods:[
            "method:Calendar.scrollToTime",
            "method:Calendar.setHeaderLevels",
            "method:Calendar.getWorkdayStart",
            "method:Calendar.getWorkdayEnd",
            "method:Calendar.getVisibleStartDate",
            "method:Calendar.getVisibleEndDate",
            "method:Calendar.getPeriodStartDate",
            "method:Calendar.getPeriodEndDate",
            "method:Calendar.fetchData",
            "method:Calendar.filterData",
            "method:Calendar.setLanes",
            "method:Calendar.addLane",
            "method:Calendar.removeLane",
            "method:Calendar.setShowDayLanes",
            "method:Calendar.eventsRendered",
            "method:Calendar.setData",
            "method:Calendar.getCurrentViewName",
            "method:Calendar.setCurrentViewName",
            "method:Calendar.setShowWeekends",
            "method:Calendar.addLaneEvent",
            "method:Calendar.addEvent",
            "method:Calendar.removeEvent",
            "method:Calendar.updateEvent",
            "method:Calendar.refreshEvent",
            "method:Calendar.setEventStyle",
            "method:Calendar.getEventHoverHTML",
            "method:Calendar.setChosenDate",
            "method:Calendar.dateIsWorkday",
            "method:Calendar.next",
            "method:Calendar.previous",
            "method:Calendar.getLaneFromPoint",
            "method:Calendar.getDateLabelText",
            "method:Calendar.showEventDialog",
            "method:Calendar.showNewEventDialog",
            "method:Calendar.showEventEditor",
            "method:Calendar.showNewEventEditor",
            "method:Calendar.getDateCSSText",
            "method:Calendar.getDateStyle",
            "method:Calendar.getCellDate",
            "method:Calendar.getDateFromPoint",
            "method:Calendar.currentViewChanged",
            "method:Calendar.getDayBodyHTML",
            "method:Calendar.getMonthViewHoverHTML",
            "method:Calendar.dayBodyClick",
            "method:Calendar.dayHeaderClick",
            "method:Calendar.eventChanged",
            "method:Calendar.eventRemoved",
            "method:Calendar.eventAdded",
            "method:Calendar.eventClick",
            "method:Calendar.eventRemoveClick",
            "method:Calendar.eventMoved",
            "method:Calendar.eventResized",
            "method:Calendar.timelineEventMoved",
            "method:Calendar.timelineEventResized",
            "method:Calendar.selectTab",
            "method:Calendar.dateChanged",
            "method:Calendar.getActiveDay",
            "method:Calendar.getActiveTime",
            "method:Calendar.setTimelineRange",
            "method:Calendar.backgroundClick",
            "method:Calendar.backgroundMouseDown",
            "method:Calendar.backgroundMouseUp"
        ],
        ref:"class:Calendar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Calendar"
        ],
        attrs:[
            "attr:Calendar.chosenDate",
            "attr:Calendar.firstDayOfWeek",
            "attr:Calendar.baseStyle",
            "attr:Calendar.dayHeaderBaseStyle",
            "attr:Calendar.dayBodyBaseStyle",
            "attr:Calendar.otherDayHeaderBaseStyle",
            "attr:Calendar.otherDayBodyBaseStyle",
            "attr:Calendar.otherDayBlankStyle",
            "attr:Calendar.minimumDayHeight",
            "attr:Calendar.selectedCellStyle",
            "attr:Calendar.eventWindowStyle",
            "attr:Calendar.workdayBaseStyle",
            "attr:Calendar.workdayStart",
            "attr:Calendar.workdayEnd",
            "attr:Calendar.showWorkday",
            "attr:Calendar.workdays",
            "attr:Calendar.scrollToWorkday",
            "attr:Calendar.nameField",
            "attr:Calendar.descriptionField",
            "attr:Calendar.startDateField",
            "attr:Calendar.endDateField",
            "attr:Calendar.leadingDateField",
            "attr:Calendar.trailingDateField",
            "attr:Calendar.eventDragGap",
            "attr:Calendar.laneNameField",
            "attr:Calendar.eventWindowStyleField",
            "attr:Calendar.canEditField",
            "attr:Calendar.canEditLaneField",
            "attr:Calendar.canRemoveField",
            "attr:Calendar.canDragEventField",
            "attr:Calendar.weekEventBorderOverlap",
            "attr:Calendar.headerLevels",
            "attr:Calendar.eventSnapGap",
            "attr:Calendar.showQuickEventDialog",
            "attr:Calendar.eventEditorFields",
            "attr:Calendar.eventDialogFields",
            "attr:Calendar.canCreateEvents",
            "attr:Calendar.canEditEvents",
            "attr:Calendar.canDeleteEvents",
            "attr:Calendar.canRemoveEvents",
            "attr:Calendar.canDragEvents",
            "attr:Calendar.showDateChooser",
            "attr:Calendar.disableWeekends",
            "attr:Calendar.showWeekends",
            "attr:Calendar.showDayHeaders",
            "attr:Calendar.showOtherDays",
            "attr:Calendar.eventAutoArrange",
            "attr:Calendar.bringEventsToFront",
            "attr:Calendar.eventOverlap",
            "attr:Calendar.eventOverlapPercent",
            "attr:Calendar.eventOverlapIdenticalStartTimes",
            "attr:Calendar.mainView",
            "attr:Calendar.dayView",
            "attr:Calendar.weekView",
            "attr:Calendar.monthView",
            "attr:Calendar.dateChooser",
            "attr:Calendar.alternateLaneStyles",
            "attr:Calendar.data",
            "attr:Calendar.autoFetchData",
            "attr:Calendar.autoFetchTextMatchStyle",
            "attr:Calendar.initialCriteria",
            "attr:Calendar.showDetailFields",
            "attr:Calendar.dataFetchMode",
            "attr:Calendar.showTimelineView",
            "attr:Calendar.timelineView",
            "attr:Calendar.timelineGranularity",
            "attr:Calendar.timelineUnitsPerColumn",
            "attr:Calendar.canResizeTimelineEvents",
            "attr:Calendar.canEditLane",
            "attr:Calendar.canReorderLanes",
            "attr:Calendar.startDate",
            "attr:Calendar.defaultTimelineColumnSpan",
            "attr:Calendar.columnsPerPage",
            "attr:Calendar.endDate",
            "attr:Calendar.weekPrefix",
            "attr:Calendar.dateEditingStyle",
            "attr:Calendar.lanes",
            "attr:Calendar.laneFields",
            "attr:Calendar.showDayLanes",
            "attr:Calendar.minLaneWidth",
            "attr:Calendar.overlapSortSpecifiers",
            "attr:Calendar.todayBackgroundColor",
            "attr:Calendar.showEventDescriptions",
            "attr:Calendar.sizeEventsToGrid",
            "attr:Calendar.dayViewTitle",
            "attr:Calendar.weekViewTitle",
            "attr:Calendar.monthViewTitle",
            "attr:Calendar.timelineViewTitle",
            "attr:Calendar.eventNameFieldTitle",
            "attr:Calendar.eventStartDateFieldTitle",
            "attr:Calendar.eventEndDateFieldTitle",
            "attr:Calendar.eventDescriptionFieldTitle",
            "attr:Calendar.eventLaneFieldTitle",
            "attr:Calendar.saveButtonTitle",
            "attr:Calendar.detailsButtonTitle",
            "attr:Calendar.cancelButtonTitle",
            "attr:Calendar.previousButtonHoverText",
            "attr:Calendar.nextButtonHoverText",
            "attr:Calendar.addEventButtonHoverText",
            "attr:Calendar.datePickerHoverText",
            "attr:Calendar.invalidDateMessage",
            "attr:Calendar.eventDialog",
            "attr:Calendar.eventEditorLayout",
            "attr:Calendar.eventEditor",
            "attr:Calendar.showAddEventButton",
            "attr:Calendar.addEventButton",
            "attr:Calendar.showDatePickerButton",
            "attr:Calendar.datePickerButton",
            "attr:Calendar.showControlsBar",
            "attr:Calendar.controlsBar",
            "attr:Calendar.showPreviousButton",
            "attr:Calendar.previousButton",
            "attr:Calendar.showNextButton",
            "attr:Calendar.nextButton",
            "attr:Calendar.dateLabel",
            "attr:Calendar.rowHeight",
            "attr:Calendar.currentViewName",
            "attr:Calendar.dateFormatter",
            "attr:Calendar.timeFormatter",
            "attr:Calendar.eventWindow"
        ],
        description:"The Calendar component provides several different ways for a user to view and\n edit a set of events. Note that the <b>ISC_Calendar.js</b> module must be \n loaded to make use of the Calendar class.\n <P>\n <b>CalendarEvents</b>\n <P>\n Events are represented as ordinary JavaScript Objects (see ${isc.DocUtils.linkForRef('object:CalendarEvent')}).  \n The Calendar expects to be able to read and write a basic set of properties \n on events: name, startDate, endDate, description, etc, which can be stored \n under configurable property names (see eg ${isc.DocUtils.linkForRef('attr:Calendar.startDateField')}).\n <P>\n Much like a ${isc.DocUtils.linkForRef('class:ListGrid')} manages it's ListGridRecords, the Calendar can \n either be passed an ordinary Array of CalendarEvents or can fetch data from a \n DataSource.\n <P>\n If the calendar is bound to a DataSource, event changes by user action or by \n calling methods will be saved to the DataSource.\n <P>\n <b>Navigation</b>\n <P>\n The calendar supports a number of views by default: ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day')},\n ${isc.DocUtils.linkForRef('attr:Calendar.weekView','week')}, ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month')} and \n ${isc.DocUtils.linkForRef('attr:Calendar.timelineView','timeline')}.  The user can navigate using back and forward buttons or \n via an attached ${isc.DocUtils.linkForRef('attr:Calendar.dateChooser','DateChooser')}.\n <P>\n <b>Event Manipulation</b>\n <P>\n Events can be created by clicking directly onto one of the views, or via the \n ${isc.DocUtils.linkForRef('attr:Calendar.addEventButton','Add Event')} button.  In the day, week and timeline views, the user may \n click and drag to create an event of a specific duration.\n <P>\n Creating an event via click or click and drag pops up the\n ${isc.DocUtils.linkForRef('attr:Calendar.eventDialog','EventDialog')}, which provides a simple form for \n quick event entry (for normal events, only the description is required by default - for \n events that are shown in a ${isc.DocUtils.linkForRef('attr:Calendar.lanes','lane')}, that field is also required).\n <P>\n A separate editor called the ${isc.DocUtils.linkForRef('attr:Calendar.eventEditor','EventEditor')} provides \n an interface for editing all possible properties of an event, including custom \n properties.  The EventEditor is used whenever a pre-existing event is being \n edited, and can also be invoked\n by the user wherever the simpler EventDialog appears.\n <P>\n Events can also be programmatically ${isc.DocUtils.linkForRef('method:Calendar.addEvent','added')},\n ${isc.DocUtils.linkForRef('method:Calendar.removeEvent','removed')}, or ${isc.DocUtils.linkForRef('method:Calendar.updateEvent','updated')}.",
        name:"Calendar",
        implementsInterfaces:[
            "DataBoundComponent"
        ],
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('simpleCalendar')}"
        ]
    },
    "attr:DatabaseBrowser.schema":{
        ref:"attr:DatabaseBrowser.schema",
        flags:"IR",
        description:"The name of the database schema to use.  Leave this property unset to include all \n schemata.  Note that this property is not applicable to the MySQL database, which\n does not recognize the concept of multiple schemata within a database.\n <p>\n Note that this property only applies where ${isc.DocUtils.linkForRef('attr:DatabaseBrowser.serverType')} is \"sql\"",
        name:"schema",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "object:PrintProperties":{
        methods:[
        ],
        ref:"object:PrintProperties",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:PrintProperties.omitControls",
            "attr:PrintProperties.includeControls",
            "attr:PrintProperties.printForExport"
        ],
        description:"Settings for generating printable HTML for components.",
        name:"PrintProperties",
        seeAlso:[
        ],
        type:"object",
        groups:[
            "printing"
        ]
    },
    "type:SelectionType":{
        ref:"type:SelectionType",
        values:[
            {
                description:"object moves to \"down\" state temporarily (normal button)",
                value:"StatefulCanvas.BUTTON"
            },
            {
                description:"object remains in \"down\" state until clicked again (checkbox)",
                value:"StatefulCanvas.CHECKBOX"
            },
            {
                description:"object moves to \"down\" state, causing another object to go up (radio)",
                value:"StatefulCanvas.RADIO"
            }
        ],
        description:"Controls how an object changes state when clicked",
        name:"SelectionType",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:DateItem.invalidDateStringMessage":{
        ref:"attr:DateItem.invalidDateStringMessage",
        flags:"IRW",
        description:"Validation error message to display if the user enters an invalid date",
        name:"invalidDateStringMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Invalid date\"",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:RelativeDateItem.getAbsoluteDate":{
        ref:"classMethod:RelativeDateItem.getAbsoluteDate",
        flags:"",
        description:"  Converts a ${isc.DocUtils.linkForRef('object:RelativeDate')}, ${isc.DocUtils.linkForRef('type:RelativeDateShortcut')} or ${isc.DocUtils.linkForRef('type:RelativeDateString')} \n to a concrete Date.\n",
        name:"getAbsoluteDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the relative date to convert",
                optional:false,
                name:"relativeDate",
                defaultValue:null,
                type:"RelativeDate"
            },
            {
                description:"base value for conversion.  Defaults to today",
                optional:true,
                name:"baseDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"resulting absolute date value",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:RelativeDateItem"
    },
    "attr:Calendar.addEventButton":{
        ref:"attr:Calendar.addEventButton",
        flags:"IR",
        description:"An ${isc.DocUtils.linkForRef('class:ImgButton')} that appears in a Calendar's week/day/month views and offers an \n alternative way to create a new ${isc.DocUtils.linkForRef('object:CalendarEvent','event')}.",
        name:"addEventButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:CubeGrid.getBaseStyle":{
        ref:"method:CubeGrid.getBaseStyle",
        flags:"",
        description:" Return the base stylename for this cell.  Default implementation just returns this.baseStyle.\n See ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle','getCellStyle()')} for a general discussion of how to style cells.\n\n",
        name:"getBaseStyle",
        seeAlso:[
            {
                ref:"method:CubeGrid.getCellStyle",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS class for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:DrawItem.resizeKnobPoints":{
        ref:"attr:DrawItem.resizeKnobPoints",
        flags:"IR",
        description:"If this item is showing\n <smartclient>\"resize\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.KnobType#RESIZE}</smartgwt>\n ${isc.DocUtils.linkForRef('attr:DrawItem.knobs','control knobs')}, this attribute\n specifies the points with respect to the draw item where resize knobs should appear.",
        name:"resizeKnobPoints",
        seeAlso:[
        ],
        valueType:"Array of ResizeKnobPoint",
        defaultValue:"[\"TL\",\"TR\",\"BL\",\"BR\"]",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:TreeNode.title":{
        ref:"attr:TreeNode.title",
        flags:"IR",
        description:"The title of the node as it should appear next to the node icon in the ${isc.DocUtils.linkForRef('class:Tree')}.  If left\n unset, the value of ${isc.DocUtils.linkForRef('attr:TreeNode.name')} is used by default.  See the description in\n ${isc.DocUtils.linkForRef('method:Tree.getTitle')} for full details.\n <p>\n Note: the name of this property can be changed by setting ${isc.DocUtils.linkForRef('attr:Tree.titleProperty')}.",
        name:"title",
        seeAlso:[
            {
                ref:"attr:Tree.titleProperty",
                description:null
            },
            {
                ref:"method:Tree.getTitle",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "attr:MenuItem.keyTitle":{
        ref:"attr:MenuItem.keyTitle",
        flags:"IR",
        description:"A string to display in the shortcut-key column for this item. If not\n specified, the first KeyName value in ${isc.DocUtils.linkForRef('attr:MenuItem.keys')} will be used by default.",
        name:"keyTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"see below",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "menuKeys"
        ]
    },
    "attr:ListGrid.sortFieldAscendingText":{
        ref:"attr:ListGrid.sortFieldAscendingText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid, this\n attribute will be shown as the menu item title to sort a field in ascending order.",
        name:"sortFieldAscendingText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Sort Ascending\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TabSet.topEdgeOffsets":{
        ref:"attr:TabSet.topEdgeOffsets",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeOffsets</code>, \n <code>rightEdgeOffsets</code>, <code>topEdgeOffsets</code> and <code>bottomEdgeOffsets</code> \n properties allow the offsets of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge offsets where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"topEdgeOffsets",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:Callbacks.MessagingCallback":{
        ref:"method:Callbacks.MessagingCallback",
        flags:"",
        description:" Callback executed when a message is sent to a channel that you have\n ${isc.DocUtils.linkForRef('classMethod:Messaging.subscribe','subscribed')} to.\n",
        name:"MessagingCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"data contained in the message",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:CalendarEvent.textColor":{
        ref:"attr:CalendarEvent.textColor",
        flags:"IRW",
        description:"An optional text color for this event's window.",
        name:"textColor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "attr:ListGrid.recordDetailDSProperty":{
        ref:"attr:ListGrid.recordDetailDSProperty",
        flags:"IRWA",
        description:"The name of the ListGridRecord property that specifies the DataSource to use when\n ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')} is \"related\".  The default is\n ${isc.DocUtils.linkForRef('attr:ListGridRecord.detailDS')}. Note that you can set the ${isc.DocUtils.linkForRef('attr:ListGrid.detailDS')} at the\n grid level instead if the same dataSource is to be used for all records.",
        name:"recordDetailDSProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"detailDS\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DOMGrid.rootElement":{
        ref:"attr:DOMGrid.rootElement",
        flags:"IRW",
        description:"Root element (or document) to view in the tree.",
        name:"rootElement",
        setter:[
            "setRootElement"
        ],
        seeAlso:[
        ],
        valueType:"DOMElement",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DOMGrid"
    },
    "classAttr:Operators.iEqualsTitle":{
        ref:"classAttr:Operators.iEqualsTitle",
        flags:"IR",
        description:"Title for the \"iEquals\" operator",
        name:"iEqualsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"equals (ignore case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Lane.title":{
        ref:"attr:Lane.title",
        flags:"IR",
        description:"Title to show for this lane.",
        name:"title",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Lane"
    },
    "attr:RelativeDate.rangePosition":{
        ref:"attr:RelativeDate.rangePosition",
        flags:"IR",
        description:"If this relative date has its value specified as a ${isc.DocUtils.linkForRef('type:RelativeDateShortcut')} which doesn't\n specify an exact time-period boundary - for example <code>\"$yesterday\"</code>, this attribute\n may be set to specify whether the date should be interpreted as the start or end boundary of\n the time period.",
        name:"rangePosition",
        seeAlso:[
        ],
        valueType:"RelativeDateRangePosition",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:RelativeDate"
    },
    "attr:Slider.animateThumbTime":{
        ref:"attr:Slider.animateThumbTime",
        flags:"IRW",
        description:"Duration of thumb animation, in milliseconds.",
        name:"animateThumbTime",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"250",
        type:"attr",
        definingClass:"class:Slider",
        groups:[
            "animation"
        ]
    },
    "attr:TreeGrid.manyItemsImage":{
        ref:"attr:TreeGrid.manyItemsImage",
        flags:"IRW",
        description:"The filename of the icon displayed use as the default drag tracker when for multiple\n files and/or folders are being dragged.",
        name:"manyItemsImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]folder_file.gif\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "dragdrop"
        ]
    },
    "attr:FileItem.editForm":{
        ref:"attr:FileItem.editForm",
        flags:"RA",
        description:"The ${isc.DocUtils.linkForRef('class:DynamicForm')} created automatically when ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')}\n is true. Displays a single ${isc.DocUtils.linkForRef('attr:FileItem.uploadItem','item')} for manipulating a file.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>fileItem.editFormDefaults</code> and\n <code>fileItem.editFormProperties</code>.\n <P>",
        name:"editForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "upload"
        ]
    },
    "attr:FormItem.showClippedValueOnHover":{
        ref:"attr:FormItem.showClippedValueOnHover",
        flags:"IRW",
        description:"If true and the value is clipped, then a hover containing the full value of this item\n is enabled.\n <p>\n <smartclient>The ${isc.DocUtils.linkForRef('method:FormItem.valueHover')} method is called before the\n hover is displayed, allowing the hover to be canceled if desired. The HTML shown in the\n hover can be customized by overriding ${isc.DocUtils.linkForRef('method:FormItem.valueHoverHTML')}.</smartclient>\n <smartgwt>A <code>ValueHoverEvent</code> is fired before the hover is displayed,\n allowing the hover to be canceled if desired. The HTML shown in the hover can be customized\n by setting a <code>FormItemHoverFormatter</code> on either this <code>FormItem</code>\n or the <code>DynamicForm</code>. See <code>setItemValueHoverFormatter()</code>.</smartgwt>",
        name:"showClippedValueOnHover",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:FacetChart.dataLabelProperties":{
        ref:"attr:FacetChart.dataLabelProperties",
        flags:"IRW",
        description:"Properties for data label",
        name:"dataLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ListGridField.autoFetchDisplayMap":{
        ref:"attr:ListGridField.autoFetchDisplayMap",
        flags:"IRW",
        description:"If true, automatically fetches records and derives a valueMap from\n ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')}.\n <p>\n Same as ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchDisplayMap')}, but defined on a per-field basis.",
        name:"autoFetchDisplayMap",
        seeAlso:[
            {
                ref:"attr:ListGrid.autoFetchDisplayMap",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "method:ListGrid.chartRow":{
        ref:"method:ListGrid.chartRow",
        flags:"",
        description:" Chart a single row of data, with each cell value labeled by the column header.\n\n",
        name:"chartRow",
        seeAlso:[
        ],
        params:[
            {
                description:"row to chart",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"optional list of fields to use as labels.  By      default, all fields are used.",
                optional:true,
                name:"dataFields",
                defaultValue:null,
                type:"Array of String"
            },
            {
                description:"properties to pass to the created chart",
                optional:true,
                name:"chartProperties",
                defaultValue:null,
                type:"Chart Properties"
            }
        ],
        returns:{
            description:"created Chart instance",
            type:"Chart"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.isGroupNode":{
        ref:"method:ListGrid.isGroupNode",
        flags:"",
        description:" If this listGrid is ${isc.DocUtils.linkForRef('method:ListGrid.groupBy','grouped')}, is the record\n passed in a group header node.\n",
        name:"isGroupNode",
        seeAlso:[
        ],
        params:[
            {
                description:"record to test",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"returns true if the record passed in is a group header node",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Canvas.setHeight":{
        ref:"method:Canvas.setHeight",
        flags:"",
        description:" Resizes the widget vertically to the specified height (moves the bottom side of the\n widget). The height parameter can be expressed as a percentage of viewport size or as\n the number of pixels.\n <P>\n NOTE: if you're setting multiple coordinates, use resizeTo() or setRect() instead\n\n",
        name:"setHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:FilterBuilder.matchNoneTitle":{
        ref:"attr:FilterBuilder.matchNoneTitle",
        flags:"IR",
        description:"Title for the \"Match None\" (not) operator\n when using ${isc.DocUtils.linkForRef('type:TopOperatorAppearance','topOperatorAppearance')}:\"radio\".",
        name:"matchNoneTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Match None\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Selection.isSelected":{
        ref:"method:Selection.isSelected",
        flags:"",
        description:" Return true if a particular item is selected\n\n",
        name:"isSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"object to check",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == object is selected, false == object is not selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "method:Selection.selectItem":{
        ref:"method:Selection.selectItem",
        flags:"",
        description:" Select a particular item by its position in the list\n\n",
        name:"selectItem",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the item to be selected",
                optional:false,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:RelativeDateItem.secondsFromNowTitle":{
        ref:"attr:RelativeDateItem.secondsFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"second\".",
        name:"secondsFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N seconds from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Calendar.weekView":{
        ref:"attr:Calendar.weekView",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:ListGrid')} used to display events that pertain to a given week.",
        name:"weekView",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:Class.isObserving":{
        ref:"method:Class.isObserving",
        flags:"A",
        description:null,
        name:"isObserving",
        seeAlso:[
        ],
        params:[
            {
                description:"object we may be observing",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"name of the method to observed",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true == already observing that method",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "observation"
        ]
    },
    "method:List.get":{
        ref:"method:List.get",
        flags:"",
        description:" Return the item at a particular position\n",
        name:"get",
        seeAlso:[
        ],
        params:[
            {
                description:"position of the element to get",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"whatever's at that position, undef if not found",
            type:"object"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "attr:DetailViewer.hiliteIconLeftPadding":{
        ref:"attr:DetailViewer.hiliteIconLeftPadding",
        flags:"IRW",
        description:"How much padding should there be on the left of ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons','hilite icons')} by default?\n Can be overridden at the field level",
        name:"hiliteIconLeftPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "hiliting"
        ]
    },
    "method:RichTextEditor.setMoveFocusOnTab":{
        ref:"method:RichTextEditor.setMoveFocusOnTab",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:RichTextEditor.moveFocusOnTab')}.\n",
        name:"setMoveFocusOnTab",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for moveFocusOnTab",
                optional:false,
                name:"moveFocusOnTab",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:RichTextEditor"
    },
    "method:HTMLFlow.loadingContent":{
        ref:"method:HTMLFlow.loadingContent",
        flags:"A",
        description:" Returns true if this htmlFlow is currently loading content from the server.<br>\n Note: Does not apply to htmlFlows with ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsType','contentsType')} set to \n <code>\"page\"</code>\n\n",
        name:"loadingContent",
        seeAlso:[
            {
                ref:"method:HTMLFlow.contentLoaded",
                description:null
            }
        ],
        returns:{
            description:"whether content is currently being loaded",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "attr:Slider.minValue":{
        ref:"attr:Slider.minValue",
        flags:"IRW",
        description:"The minimum slider value. The slider value is equal to minValue when the thumb is at the\n bottom or left of the slider (unless flipValues is true, in which case the minimum value\n is at the top/right of the slider)",
        name:"minValue",
        setter:[
            "setMinValue"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.flipValues",
                description:null
            }
        ],
        valueType:"float",
        defaultValue:"1",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('slider')}"
        ],
        definingClass:"class:Slider"
    },
    "attr:FacetChart.dataGradients":{
        ref:"attr:FacetChart.dataGradients",
        flags:"IR",
        description:"A dictionary of gradients to use for a series of visual elements representing data (eg columns,\n bars, pie slices), any of which may be adjacent to any other.",
        name:"dataGradients",
        seeAlso:[
        ],
        valueType:"Map Gradient",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Mail.from":{
        ref:"attr:Mail.from",
        flags:"IR",
        description:"The email address the message will appear to come from.  Like all other <code>String</code> \n properties of <code>Mail</code>, you can use Velocity substitution variables in this property.\n <p>\n If you specify a \"From:\" line in the body of your email, the from address will be parsed \n and this property will be ignored.\n <p>\n Ordinarily, this property (or the parsed equivalent in the email body) is mandatory for all\n emails.  However, if you specify the property <code>mail.system.mail.smtp.from</code> in \n <code>server.properties</code>, it will become the default \"from\" address, and this property\n becomes optional.",
        name:"from",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "classMethod:DataSource.addSearchOperator":{
        ref:"classMethod:DataSource.addSearchOperator",
        flags:"",
        description:" Add a new search operator to all DataSources.  \n <P>\n See also ${isc.DocUtils.linkForRef('method:DataSource.addSearchOperator')} for adding operators to specific\n DataSources only.\n\n",
        name:"addSearchOperator",
        seeAlso:[
        ],
        params:[
            {
                description:"definition of the operator to add",
                optional:false,
                name:"operator",
                defaultValue:null,
                type:"Operator"
            }
        ],
        type:"classMethod",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:Calendar.disableWeekends":{
        ref:"attr:Calendar.disableWeekends",
        flags:"IR",
        description:"If set, weekend days appear in disabled style and events cannot be created on weekends.\n Which days are considered weekends is controlled by ${isc.DocUtils.linkForRef('classAttr:Date.weekendDays')}.",
        name:"disableWeekends",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "visibility"
        ]
    },
    "method:ResultSet.setCriteria":{
        ref:"method:ResultSet.setCriteria",
        flags:"",
        description:" Set the filter criteria to use when fetching rows.\n <P>\n Depending on the result of ${isc.DocUtils.linkForRef('method:ResultSet.compareCriteria')} and settings for\n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering')} / ${isc.DocUtils.linkForRef('type:FetchMode')}, setting criteria may cause a trip to the\n server to get a new set of rows, or may simply cause already-fetched rows to be re-filtered\n according to the new Criteria.  In either case, the dataset length available from\n ${isc.DocUtils.linkForRef('method:ResultSet.getLength')} may change and rows will appear at different indices.\n <P>\n Note: for simple Criteria, any field values in the criteria explicitly specified as null\n will be passed to the server.  By default the server then returns only records whose value\n is null for that field. This differs from certain higher level methods such as \n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} which prune null criteria fields before performing a fetch\n operation.\n\n",
        name:"setCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"the filter criteria",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            }
        ],
        returns:{
            description:"Returns false if the new criteria match the previous criteria, implying    the data is unchanged.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:DetailViewer.fieldIdProperty":{
        ref:"attr:DetailViewer.fieldIdProperty",
        flags:"IRWA",
        description:"Name of the field in the DetailViewerRecord which specifies the data property for that record.",
        name:"fieldIdProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"name\"",
        type:"attr",
        definingClass:"class:DetailViewer"
    },
    "method:CubeGrid.getEventColumn":{
        ref:"method:CubeGrid.getEventColumn",
        flags:"",
        description:" Returns the column number of the most recent mouse event.\n",
        name:"getEventColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"optional x-coordinate to obtain column number for, in lieu of the x                        coordinate of the last mouse event",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"column number, or -2 if beyond last drawn column",
            type:"int"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events",
            "selection"
        ]
    },
    "attr:RestDataSource.jsonPrefix":{
        ref:"attr:RestDataSource.jsonPrefix",
        flags:"IRW",
        description:"Allows you to specify an arbitrary prefix string to apply to all json format responses \n sent from the server to this application.  The client will expect to find this prefix \n on any JSON response received for this DataSource, and will strip it off before evaluating\n the response text.\n <p>\n The default prefix is \"&lt;SCRIPT&gt;//'\\\"]]&gt;&gt;isc_JSONResponseStart&gt;&gt;\".\n <p>\n The inclusion of such a prefix ensures your code is not directly executable outside of \n your application, as a preventative measure against \n <a href='http://www.google.com/search?q=javascript+hijacking'>javascript hijacking</a>.\n <p>\n You can switch off JSON wrapping altogether by setting both this and ${isc.DocUtils.linkForRef('attr:RestDataSource.jsonSuffix')}\n to empty strings.  \n <p>\n If you are using SmartClient Server's RESTHandler servlet, see the server-side Javadocs\n for details of how to change the way JSON wrapping works on the server side.",
        name:"jsonPrefix",
        seeAlso:[
            {
                ref:"attr:RestDataSource.jsonSuffix",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"See below",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:ListGrid.hiliteIconRightPadding":{
        ref:"attr:ListGrid.hiliteIconRightPadding",
        flags:"IRW",
        description:"How much padding should there be on the right of ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIcons','hilite icons')} by default?\n Can be overridden at the field level",
        name:"hiliteIconRightPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "method:ListGrid.isSortField":{
        ref:"method:ListGrid.isSortField",
        flags:"A",
        description:"  Returns true if the passed fieldName is in the current sort-specification.\n",
        name:"isSortField",
        seeAlso:[
        ],
        params:[
            {
                description:"The name of a field, visible, hidden or existing only in the dataSource",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"True if the passed field is sorted, false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "class:Snapbar":{
        methods:[
        ],
        ref:"class:Snapbar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:Snapbar.showRollOver",
            "attr:Snapbar.showDown",
            "attr:Snapbar.showGrip",
            "attr:Snapbar.showDownGrip",
            "attr:Snapbar.showRollOverGrip",
            "attr:Snapbar.showClosedGrip",
            "attr:Snapbar.gripImgSuffix"
        ],
        description:"Subclass of the ${isc.DocUtils.linkForRef('class:Splitbar')} class that uses the <code>grip</code> functionality\n to show a stateful open / close indicator.",
        name:"Snapbar",
        seeAlso:[
            {
                ref:"class:Splitbar",
                description:null
            },
            {
                ref:"class:Layout",
                description:null
            }
        ],
        type:"class"
    },
    "class:ColorPickerItem":{
        methods:[
        ],
        ref:"class:ColorPickerItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"Form item for colors input",
        name:"ColorPickerItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGridField.includeInRecordSummaryFields":{
        ref:"attr:ListGridField.includeInRecordSummaryFields",
        flags:"IR",
        description:"If this listGrid has any fields of type <code>\"summary\"</code> and\n this field will be ${isc.DocUtils.linkForRef('attr:ListGridField.includeInRecordSummary','included')} in summary calculations\n by default, this attribute provides an opportunity to explicitly specify which summary fields\n the record should be displayed in.\n <P>\n Specified as an array of fieldNames. If set, this field value will only be included for\n record summary value calculations for summary fields whos name is included in this array.",
        name:"includeInRecordSummaryFields",
        seeAlso:[
        ],
        valueType:"array of fieldNames",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ColorPicker.autoCenterOnShow":{
        ref:"attr:ColorPicker.autoCenterOnShow",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ColorPicker.autoPosition')} is false, this property controls whether to automatically center the\n colorPicker every time it is reshown with the show() method.",
        name:"autoCenterOnShow",
        seeAlso:[
            {
                ref:"attr:ColorPicker.autoPosition",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "method:MetricSettings.setDataColors":{
        ref:"method:MetricSettings.setDataColors",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:MetricSettings.dataColors')}.\n",
        name:"setDataColors",
        seeAlso:[
        ],
        params:[
            {
                description:"New set of data colors",
                optional:false,
                name:"dataColors",
                defaultValue:null,
                type:"Array of CSSColor"
            }
        ],
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "attr:ListGridRecord.detailDS":{
        ref:"attr:ListGridRecord.detailDS",
        flags:"IRWA",
        description:"The default value of ${isc.DocUtils.linkForRef('attr:ListGrid.recordDetailDSProperty')}.",
        name:"detailDS",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "method:ResultSet.sortByProperty":{
        ref:"method:ResultSet.sortByProperty",
        flags:"",
        description:" Sort this ResultSet by a property of each record.\n <P>\n Sorting is performed on the client for a ResultSet that has a full cache for the current\n filter criteria.  Otherwise, sorting is performed by the server, and changing the sort order\n will invalidate the cache.\n <P>\n <b>NOTE:</b> normalizers are not supported by ResultSets in \"paged\" mode, although valueMaps\n in the DataSource are respected by the SQLDataSource.\n\n",
        name:"sortByProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to sort by",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            },
            {
                description:"true == sort ascending, false == sort descending",
                optional:false,
                name:"up",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"May be specified as a function, with signature \n              <code>normalize(item, propertyName, context)</code>, where <code>item</code> is\n              a pointer to the item in the array, <code>propertyName</code> is the \n              property by which the array is being sorted, and <code>context</code> is the\n              arbitrary context passed into this method. Normalizer function should return\n              the value normalized for sorting.<br>\n              May also be specified as a ValueMap which maps property values to sortable values.",
                optional:true,
                name:"normalizer",
                defaultValue:null,
                type:"function or ValueMap"
            },
            {
                description:"Callers may pass an arbitrary context into the sort method, which                          will then be made available to the normalizer function",
                optional:true,
                name:"context",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"the list itself",
            type:"List"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "sorting"
        ]
    },
    "attr:Calendar.chosenDate":{
        ref:"attr:Calendar.chosenDate",
        flags:"IRW",
        description:"The date for which events are displayed in the day, week, and month tabs of \n the calendar.  Default is today.",
        name:"chosenDate",
        setter:[
            "setChosenDate"
        ],
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"'Today'",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "date"
        ]
    },
    "method:ListGrid.getDragTrackerIcon":{
        ref:"method:ListGrid.getDragTrackerIcon",
        flags:"",
        description:" Return an icon to display as a drag tracker when the user drags some record.<br>\n Default implementation:\n If ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons')} is specified for the title field of this grid\n (see ${isc.DocUtils.linkForRef('method:ListGrid.getTitleField')}), the appropriate value icon will be displayed.\n If no appropriate valueIcon can be found, the icon will be derived from\n ${isc.DocUtils.linkForRef('attr:ListGrid.trackerImage')}.<br>\n If multiple records are selected, only the first record is examined for valueIcons.\n <p>\n Note: Only called if ${isc.DocUtils.linkForRef('attr:ListGrid.dragTrackerMode')} is set to <code>\"icon\"</code>.\n",
        name:"getDragTrackerIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"Records being dragged",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of ListGridRecord"
            }
        ],
        returns:{
            description:"Image URL of icon to display",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dragTracker"
        ]
    },
    "attr:ToolbarItem.buttonProperties":{
        ref:"attr:ToolbarItem.buttonProperties",
        flags:"IRA",
        description:"Default properties for this toolbar's buttons.",
        name:"buttonProperties",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolbarItem"
    },
    "method:ListGrid.freezeField":{
        ref:"method:ListGrid.freezeField",
        flags:"",
        description:" Freeze the indicated field, so that it remains in place and visible when horizontal\n scrolling occurs.\n\n",
        name:"freezeField",
        seeAlso:[
        ],
        params:[
            {
                description:"field or fields to freeze.  fields may be specified as ListGridField objects, field names or colNum.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField or Integer or String or Array"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "frozenFields"
        ]
    },
    "attr:ColorStop.offset":{
        ref:"attr:ColorStop.offset",
        flags:"IR",
        description:"The relative offset for the color.",
        name:"offset",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.0",
        type:"attr",
        definingClass:"object:ColorStop"
    },
    "attr:FacetChart.radialLabelOffset":{
        ref:"attr:FacetChart.radialLabelOffset",
        flags:"IR",
        description:"Distance in pixels that radial labels are offset from the outside of the circle.",
        name:"radialLabelOffset",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ListGridField.optionTextMatchStyle":{
        ref:"attr:ListGridField.optionTextMatchStyle",
        flags:"IR",
        description:"For fields with an ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')}, where\n ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap')} is true, this property will govern\n the <code>textMatchStyle</code> attribute of the ${isc.DocUtils.linkForRef('class:DSRequest')} parameter passed to\n ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} when retrieving the remote data set to be used as\n a basis for this field's valueMap.",
        name:"optionTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "method:ColorPicker.getOpacity":{
        ref:"method:ColorPicker.getOpacity",
        flags:"",
        description:" Returns the opacity of the currently-selected color, as an integer from 0-100. If \n opacity is switched off, this is always 100.\n",
        name:"getOpacity",
        seeAlso:[
        ],
        returns:{
            description:"opacity value",
            type:"int"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:MultiSortDialog.levelDownButtonTitle":{
        ref:"attr:MultiSortDialog.levelDownButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Down button.",
        name:"levelDownButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Down\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MenuItem.iconWidth":{
        ref:"attr:MenuItem.iconWidth",
        flags:"IR",
        description:"The width applied to this item's icon.  The default of <code>16</code> can be changed\n for all MenuItems by overriding ${isc.DocUtils.linkForRef('attr:Menu.iconWidth')}.",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"object:MenuItem",
        groups:[
            "menuIcons"
        ]
    },
    "method:Button.getTitle":{
        ref:"method:Button.getTitle",
        flags:"A",
        description:" Return the title - HTML drawn inside the component.\n <p>\n Default is to simply return this.title.\n",
        name:"getTitle",
        seeAlso:[
        ],
        returns:{
            description:"HTML for the title.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:Button"
    },
    "class:MultiGroupPanel":{
        methods:[
            "method:MultiGroupPanel.getNumLevels",
            "method:MultiGroupPanel.getGroup",
            "method:MultiGroupPanel.validate",
            "method:MultiGroupPanel.groupChanged"
        ],
        ref:"class:MultiGroupPanel",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:MultiGroupPanel.fields",
            "attr:MultiGroupPanel.addLevelButtonTitle",
            "attr:MultiGroupPanel.deleteLevelButtonTitle",
            "attr:MultiGroupPanel.copyLevelButtonTitle",
            "attr:MultiGroupPanel.invalidListPrompt",
            "attr:MultiGroupPanel.propertyFieldTitle",
            "attr:MultiGroupPanel.groupingFieldTitle",
            "attr:MultiGroupPanel.firstGroupLevelTitle",
            "attr:MultiGroupPanel.otherGroupLevelTitle",
            "attr:MultiGroupPanel.addLevelButton",
            "attr:MultiGroupPanel.deleteLevelButton",
            "attr:MultiGroupPanel.copyLevelButton",
            "attr:MultiGroupPanel.levelUpButtonTitle",
            "attr:MultiGroupPanel.levelUpButton",
            "attr:MultiGroupPanel.levelDownButtonTitle",
            "attr:MultiGroupPanel.levelDownButton",
            "attr:MultiGroupPanel.optionsGrid",
            "attr:MultiGroupPanel.initialGrouping",
            "attr:MultiGroupPanel.maxLevels"
        ],
        description:"A widget that allows the user to set up complex grouping arrangements by defining a group of\n ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.\n <P>\n Each ${isc.DocUtils.linkForRef('object:GroupSpecifier')} applies to a single property and grouping - so, for instance, in \n a grid with two columns, <code>Nationhood</code> and <code>Country</code>, you could group first \n by <code>Nationhood</code> with its selected groupingMode and then by <code>Country</code> with its selected groupingMode.",
        name:"MultiGroupPanel",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:XMLTools.loadXML":{
        ref:"classMethod:XMLTools.loadXML",
        flags:"",
        description:" Load an XML document from the origin server or from a foreign server by relaying through the\n origin server.  An asynchronous callback provides both the XML document and raw text of the\n response.\n <P>\n Relaying through the origin server requires that the ISC HttpProxyServlet be installed and\n accessible.\n \n",
        name:"loadXML",
        seeAlso:[
        ],
        params:[
            {
                description:"URL to load the schema from",
                optional:false,
                name:"URL",
                defaultValue:null,
                type:"URL"
            },
            {
                description:"callback to fire when the XML is loaded.  Signature is                             callback(xmlDoc, xmlText)",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"callback"
            },
            {
                description:"additional properties to set on the RPCRequest                                         that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"RPCRequest"
            }
        ],
        type:"classMethod",
        definingClass:"class:XMLTools"
    },
    "attr:EditContext.defaultPalette":{
        ref:"attr:EditContext.defaultPalette",
        flags:"IRW",
        getter:[
            "getDefaultPalette"
        ],
        description:"${isc.DocUtils.linkForRef('interface:Palette')} to use when an ${isc.DocUtils.linkForRef('object:EditNode')} is being created directly by this EditContext,\n instead of being created due to a user interaction with a palette (eg dragging from\n a ${isc.DocUtils.linkForRef('class:TreePalette')}, or clicking on ${isc.DocUtils.linkForRef('class:MenuPalette')}).\n <P>\n If no defaultPalette is provided, the EditContext uses an automatically created\n ${isc.DocUtils.linkForRef('class:HiddenPalette')}.",
        name:"defaultPalette",
        setter:[
            "setDefaultPalette"
        ],
        seeAlso:[
        ],
        valueType:"Palette",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:EditContext"
    },
    "attr:Img.src":{
        ref:"attr:Img.src",
        flags:"IRW",
        description:"The base filename for the image.\n <P>\n This value will be combined with any specified ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')}\n to form a combined URL, changing the appearance of the component as the\n state changes.\n <P>\n The following table lists out the standard set of combined URLs that \n may be generated. Subclasses may support additional state-derived media of course.\n Note that the src URL will be split such that the extension is always applied to the\n end of the combined string. For example in the following table, if <code>src</code>\n was set to <code>\"blank.gif\"</code>, the Selected+Focused URL would be \n <code>\"blank_Selected_Focused.gif\"</code>.\n <table>\n <tr><td><b>URL for Img source</b></td><td><b>Description</b></td></tr>\n <tr><td><code><i>src</i>+<i>extension</i></code></td><td>Default URL</td></tr>\n <tr><td><code><i>src</i>+\"_Selected\"+<i>extension</i></code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Focused\"+<i>extension</i></code></td>\n      <td>Applied when the component has keyboard focus, if \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused')} is true, and \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is not true.</td></tr>\n <tr><td><code><i>src</i>+\"_Over\"+<i>extension</i></code></td>\n      <td>Applied when the user rolls over the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Down\"+<i>extension</i></code></td>\n      <td>Applied when the user presses the mouse button over over the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Disabled\"+<i>extension</i></code></td>\n      <td>Applied to ${isc.DocUtils.linkForRef('attr:Canvas.disabled')} component\n       if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')} is true.</td></tr>\n <tr><td colspan=2><i>Combined states</i></td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused\"+<i>extension</i></code></td>\n      <td>Combined Selected and focused state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Over\"+<i>extension</i></code></td>\n      <td>Combined Selected and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Focused_Over\"+<i>extension</i></code></td>\n      <td>Combined Focused and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused_Over\"+<i>extension</i></code></td>\n      <td>Combined Selected, Focused and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Down\"+<i>extension</i></code></td>\n      <td>Combined Selected and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Focused_Down\"+<i>extension</i></code></td>\n      <td>Combined Focused and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused_Down\"+<i>extension</i></code></td>\n      <td>Combined Selected, Focused and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Disabled\"+<i>extension</i></code></td>\n      <td>Combined Selected and Disabled state</td></tr>\n </table>",
        name:"src",
        setter:[
            "setSrc"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"blank.gif\"",
        type:"attr",
        definingClass:"class:Img",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.dragMaskType":{
        ref:"attr:Canvas.dragMaskType",
        flags:"IRW",
        description:"This property controls what kind of mask is used in case ${isc.DocUtils.linkForRef('attr:Canvas.useDragMask')} is\n enabled.",
        name:"dragMaskType",
        seeAlso:[
        ],
        valueType:"DragMaskType",
        defaultValue:"\"div\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ImgButton.iconAlign":{
        ref:"attr:ImgButton.iconAlign",
        flags:"IR",
        description:"If this button is showing an icon should it be right or left aligned?",
        name:"iconAlign",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:TabSet.moreTabCount":{
        ref:"attr:TabSet.moreTabCount",
        flags:"IR",
        description:"This property defines the number tab buttons that should be shown before\n automatically adding a \"more\" button to handle the remaining tabs. This\n property is only used when ${isc.DocUtils.linkForRef('attr:TabSet.showMoreTab')} is enabled.",
        name:"moreTabCount",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:DynamicForm.showInlineErrors":{
        ref:"attr:DynamicForm.showInlineErrors",
        flags:"IRW",
        description:"If true, field errors are written into the form next to the item(s) where the errors\n occurred.  Errors may appear as text or just an icon (via ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText')}:false).\n <P>\n If false, errors are written at the top of the form.\n <P>\n To do some other kind of error display, override ${isc.DocUtils.linkForRef('method:DynamicForm.showErrors')}.",
        name:"showInlineErrors",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:DrawImage.title":{
        ref:"attr:DrawImage.title",
        flags:"IR",
        description:"Title (tooltip hover text) for this image.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawImage"
    },
    "method:ListGrid.collapseRecord":{
        ref:"method:ListGrid.collapseRecord",
        flags:"",
        description:" Collapses a given ${isc.DocUtils.linkForRef('object:ListGridRecord','record')} which has been previously expanded using\n ${isc.DocUtils.linkForRef('method:ListGrid.expandRecord')}.\n <P>\n Depending on the ${isc.DocUtils.linkForRef('attr:ListGrid.expansionComponentPoolingMode','pooling mode')},\n this method may automatically destroy expansionComponents.  By default, components\n created automatically by the ListGrid will be auto-destroyed.  This\n behavior can be changed by setting a different pooling mode.\n <P>\n Note that components created via an override to ${isc.DocUtils.linkForRef('method:ListGrid.getExpansionComponent')}\n will *not* be auto-destroyed - developers should override collapseRecord to take care of\n clean-up for such components.\n\n",
        name:"collapseRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record to collapse",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:DateChooser.getFiscalCalendar":{
        ref:"method:DateChooser.getFiscalCalendar",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('object:FiscalCalendar')} object that will be used by this DateChooser.\n\n",
        name:"getFiscalCalendar",
        seeAlso:[
        ],
        returns:{
            description:"the fiscal calendar for this chooser, if set, or the global            one otherwise",
            type:"FiscalCalendar"
        },
        type:"method",
        definingClass:"class:DateChooser"
    },
    "method:DataBoundComponent.findIndex":{
        ref:"method:DataBoundComponent.findIndex",
        flags:"",
        description:" This API is equivalent to ${isc.DocUtils.linkForRef('method:List.findIndex')} but searches for a matching record among already-loaded data only.  \n Use ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData')} to load data from the server.\n",
        name:"findIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"AdvancedCriteria to use with",
                optional:false,
                name:"advancedCriteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "method:ImgSectionHeader.titleClipped":{
        ref:"method:ImgSectionHeader.titleClipped",
        flags:"A",
        description:" Is the title of this section header clipped by ${isc.DocUtils.linkForRef('attr:ImgSectionHeader.controls','section controls')}\n or the edge of the header?\n",
        name:"titleClipped",
        seeAlso:[
            {
                ref:"attr:ImgSectionHeader.clipTitle",
                description:null
            }
        ],
        returns:{
            description:"whether the title is clipped.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ImgSectionHeader"
    },
    "method:ListGrid.setData":{
        ref:"method:ListGrid.setData",
        flags:"",
        description:" Provides a new data set to the ListGrid after the grid has been created or drawn.\n The ListGrid will redraw to show the new data automatically.\n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"data to show in the list",
                optional:false,
                name:"newData",
                defaultValue:null,
                type:"List of ListGridRecord"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "data"
        ]
    },
    "classAttr:GroupingMessages.upcomingTomorrowTitle":{
        ref:"classAttr:GroupingMessages.upcomingTomorrowTitle",
        flags:"IRW",
        description:"When a ${isc.DocUtils.linkForRef('class:ListGrid')} is grouped by a date field in 'Upcoming' mode, \n this is the group title for all records in which the grouped date field occurs tomorrow,\n relative to the current date.",
        name:"upcomingTomorrowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Tomorrow\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:FilterBuilder.getFilterDescription":{
        ref:"classMethod:FilterBuilder.getFilterDescription",
        flags:"",
        description:" Returns a human-readable string describing the clauses in this advanced criteria or criterion.\n \n",
        name:"getFilterDescription",
        seeAlso:[
        ],
        params:[
            {
                description:"Criteria to convert to a readable string",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"AdvancedCriteria or Criterion"
            },
            {
                description:"DataSource to provide definitions of operators",
                optional:false,
                name:"dataSource",
                defaultValue:null,
                type:"DataSource"
            }
        ],
        returns:{
            description:"Human-readable string describing the clauses in the passed criteria",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:FilterBuilder"
    },
    "method:Canvas.getScrollTop":{
        ref:"method:Canvas.getScrollTop",
        flags:"A",
        description:" Get the number of pixels this Canvas is scrolled from its top edge.\n",
        name:"getScrollTop",
        seeAlso:[
        ],
        returns:{
            description:"scrollTop",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning",
            "scrolling"
        ]
    },
    "attr:ListGrid.dataPageSize":{
        ref:"attr:ListGrid.dataPageSize",
        flags:"IRW",
        description:"When using ${isc.DocUtils.linkForRef('attr:ListGrid.dataFetchMode','data paging')}, how many records to fetch at a time.  The value of this\n attribute is passed on to the auto-constructed ${isc.DocUtils.linkForRef('class:ResultSet')} object for this\n component.  In effect, this gives you control over the ${isc.DocUtils.linkForRef('attr:ResultSet.resultSize')}\n attribute for this component.\n <P>\n <b>Note</b> that regardless of the <code>dataPageSize</code> setting, a component will always fetch\n all of data that it needs to draw.  Settings such as\n ${isc.DocUtils.linkForRef('attr:ListGrid.showAllRecords','showAllRecords:true')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.drawAllMaxCells','drawAllMaxCells')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio','drawAheadRatio')} can cause more rows than the configured\n <code>dataPageSize</code> to be fetched.",
        name:"dataPageSize",
        seeAlso:[
            {
                ref:"attr:ResultSet.resultSize",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"75",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundFetch')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "group:ancestry":{
        ref:"group:ancestry",
        refs:[
            "type:DisplayNodeType"
        ],
        description:"Parent/child relationships",
        name:"ancestry",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:Log.echoLeaf":{
        ref:"classMethod:Log.echoLeaf",
        flags:"",
        description:" Return a very short (generally less than 40 characters) string representation of any object,\n suitable for viewing by a developer for debugging purposes.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echoLeaf\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"echoLeaf",
        seeAlso:[
            {
                ref:"method:Class.echo",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "method:DetailViewer.exportData":{
        ref:"method:DetailViewer.exportData",
        flags:"",
        description:" Sends the current filter criteria and sort direction to the server, then exports data in the\n requested ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportFormat')}.\n <P>\n A variety of DSRequest settings, such as \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportAs')} and ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename')}, affect the \n exporting process: see ${isc.DocUtils.linkForRef('attr:DSRequest.exportResults','exportResults')} for further detail.\n <P>\n Note that data exported via this method does not include any client-side formatting and\n relies on both the SmartClient server and server-side DataSources.  To export client-data \n with formatters applied, \n see ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData')}, which still requires the\n SmartClient server but does not rely on server-side DataSource definitions (.ds.xml files).\n <P>\n For more information on exporting data, see ${isc.DocUtils.linkForRef('method:DataSource.exportData')}.\n\n",
        name:"exportData",
        seeAlso:[
        ],
        params:[
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"callback to invoke on completion.  Note that this parameter                                  only applies where ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient')} is \n                                  explicitly set to false, because  file downloads do not \n                                  provide ordinary SmartClient callbacks",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"class:DetailViewer",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:ListGrid.expansionEditorShowSaveDialog":{
        ref:"attr:ListGrid.expansionEditorShowSaveDialog",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords','canExpandRecords')} is true and\n ${isc.DocUtils.linkForRef('attr:ListGrid.expansionMode','expansionMode')} is <i>editor</i>, whether a dialog should be\n displayed when an expanded row is collapsed while it's nested editor has changed values.",
        name:"expansionEditorShowSaveDialog",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:DataSource.descriptionField":{
        ref:"attr:DataSource.descriptionField",
        flags:"IR",
        description:"Name of the field that has a long description of the record, or has the primary text data\n value for a record that represents an email message, SMS, log or similar.\n <p>\n For example, for a DataSource representing employees, a field containing the employee's\n \"bio\" might be a good choice, or for an email message, the message body.\n <p>\n If descriptionField is unset, it defaults to any field named \"description\" or \"desc\" in the\n record, or the first long text field (greater than 255 characters) in the record, or null if\n no such field exists.",
        name:"descriptionField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "dsSpecialFields"
        ]
    },
    "attr:NavigationBar.title":{
        ref:"attr:NavigationBar.title",
        flags:"IRW",
        description:"The title to display centered in this <code>NavigationBar</code>.",
        name:"title",
        setter:[
            "setTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "method:GridRenderer.getRowHeight":{
        ref:"method:GridRenderer.getRowHeight",
        flags:"",
        description:" Return the height this row should be.  Default is this.cellHeight. If\n ${isc.DocUtils.linkForRef('attr:GridRenderer.fixedRowHeights')} is false, the row may be rendered taller than this\n specified size.\n <P>\n If records will be variable height,\n you should switch on ${isc.DocUtils.linkForRef('attr:GridRenderer.virtualScrolling','virtualScrolling')}.\n",
        name:"getRowHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"height in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:DynamicForm.getEventItemInfo":{
        ref:"method:DynamicForm.getEventItemInfo",
        flags:"",
        description:" If the current mouse event occurred over an item, or the title of an item in this\n dynamicForm, return details about where the event occurred.\n",
        name:"getEventItemInfo",
        seeAlso:[
        ],
        returns:{
            description:"the current event target item details",
            type:"FormItemEventInfo"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:RestDataSource.fetchDataURL":{
        ref:"attr:RestDataSource.fetchDataURL",
        flags:"IR",
        description:"Custom dataURL for fetch type operations",
        name:"fetchDataURL",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:Canvas.useNativeDrag":{
        ref:"attr:Canvas.useNativeDrag",
        flags:"IR",
        description:"If set, native HTML5 drag and drop will be used for all drags initiated on this widget\n (on browsers where this is supported).\n <p>\n When using native HTML5 drags, the same series of events fires as for a normal drag\n (${isc.DocUtils.linkForRef('method:Canvas.dragStart')}, ${isc.DocUtils.linkForRef('method:Canvas.dropMove')}, etc.), and the ${isc.DocUtils.linkForRef('attr:Canvas.dragType','dragType')} / ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes','dropTypes')}\n system works. ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance','dragAppearance')} is not supported; however,\n basic customization of the browser's tracker image is supported in certain browsers via\n the ${isc.DocUtils.linkForRef('classMethod:EventHandler.setDragTrackerImage')} API.\n <p>\n The primary difference with a native drag is that it can be cross-frame; that is, the\n user can drag out of the current browser window and drop into a different window or tab.\n <p>\n To provide information that will be available to a foreign frame, use\n ${isc.DocUtils.linkForRef('classMethod:EventHandler.setNativeDragData')}.  This API must be called when the ${isc.DocUtils.linkForRef('method:Canvas.dragStart')}\n event fires, and will not work if called at any other time.\n <p>\n However, due to browser bugs and/or browser-imposed limitations, the information provided to\n <code>setNativeDragData</code> cannot be accessed in the foreign frame until the actual drop\n occurs (mouse button released).  This means drop eligibility cannot be determined dynamically\n based on the dragged data; instead, eligibility can only be determined based on the\n ${isc.DocUtils.linkForRef('attr:Canvas.dragType')} / ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes')} system. For this reason, a ${isc.DocUtils.linkForRef('attr:Canvas.dragType')} <b>must</b>\n be set on the source of a drag.\n <p>\n NOTE: Although Internet Explorer 10+ supports a subset of the <a href='http://www.w3.org/TR/html5/editing.html#dnd' target='_blank'>HTML5 drag and drop standard</a>,\n native drag and drop is disabled in IE because cross-window drags&mdash;the primary purpose\n of this API&mdash;are not possible.",
        name:"useNativeDrag",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nativeDragCreate')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "type:TileLayoutPolicy":{
        ref:"type:TileLayoutPolicy",
        values:[
            {
                description:"Each line has the same number of tiles, based on ${isc.DocUtils.linkForRef('attr:TileLayout.tilesPerLine')} if set, otherwise,\n based on fitting as many tiles per line as possible consistent with\n ${isc.DocUtils.linkForRef('attr:TileLayout.tileSize','tileSize')} and ${isc.DocUtils.linkForRef('attr:TileLayout.tileMargin')}. \n <P>\n Tiles that do not specify a size will be sized to fill available space.",
                value:"\"fit\""
            },
            {
                description:"Tiles are laid out with varying numbers of tiles per line according to each tile's size,\n the ${isc.DocUtils.linkForRef('attr:TileLayout.tileMargin','tileMargin')}, and the available space.\n <P>\n Tiles are never resized by the TileLayout and ${isc.DocUtils.linkForRef('attr:TileLayout.tileSize')} is ignored.",
                value:"\"flow\""
            }
        ],
        description:"Policy for laying out tiles. \n <P>\n Because a TileLayout can be either horizontally or vertically oriented, the general term\n \"line\" is used to mean either a row or column of tiles. \n <P>\n <b>NOTE</b>: for typical form layouts (a variety of input fields and buttons in a\n tabular layout with col-spanning and row-spanning support), use a ${isc.DocUtils.linkForRef('class:DynamicForm')} and\n see the ${isc.DocUtils.linkForRef('group:formLayout')} topic.",
        name:"TileLayoutPolicy",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ListGrid.sortDirection":{
        ref:"attr:ListGrid.sortDirection",
        flags:"IRW",
        description:"Sorting direction of this ListGrid. If specified when the ListGrid is initialized,\n this property will be the default sorting direction for the ${isc.DocUtils.linkForRef('attr:ListGrid.sortField')}.\n May be overridden by specifying ${isc.DocUtils.linkForRef('attr:ListGridField.sortDirection')}.\n <P>\n After initialization, this property will be updated on ${isc.DocUtils.linkForRef('method:ListGrid.sort')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.setSort')} to reflect the current sort direction of the grid. When\n this grid is sorted by multiple fields, the grid's sortDirection reflects the\n sort direction of the primary sort field.",
        name:"sortDirection",
        setter:[
            "sort"
        ],
        seeAlso:[
            {
                ref:"type:SortDirection",
                description:null
            }
        ],
        valueType:"SortDirection",
        defaultValue:"\"ascending\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sort')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "attr:ResultTree.disableCacheSync":{
        ref:"attr:ResultTree.disableCacheSync",
        flags:"IRA",
        description:"By default when the data of this ResultTree's dataSource is modified, the ResultTree will\n be updated to display these changes.\n Set this flag to true to disable this behavior.",
        name:"disableCacheSync",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ResultTree",
        groups:[
            "cacheSync"
        ]
    },
    "method:HiliteRule.getHilite":{
        ref:"method:HiliteRule.getHilite",
        flags:"",
        description:" Return the hilite definition being edited, including criteria and hilite properties.\n\n",
        name:"getHilite",
        seeAlso:[
        ],
        returns:{
            description:"the hilite",
            type:"Hilite"
        },
        type:"method",
        definingClass:"class:HiliteRule"
    },
    "method:ListGrid.getEditValues":{
        ref:"method:ListGrid.getEditValues",
        flags:"",
        description:" Returns the current set of unsaved edits for a given row being edited.\n\n",
        name:"getEditValues",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum of the record being edited, or an Object                                      containing values for all the record's primary keys",
                optional:false,
                name:"valuesID",
                defaultValue:null,
                type:"number | Object"
            }
        ],
        returns:{
            description:"Current editValues object for the row.  This contains the current                     edit values in {fieldName1:value1, fieldName2:value2} format.",
            type:"object"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:TreeGrid.openerIconHeight":{
        ref:"attr:TreeGrid.openerIconHeight",
        flags:"IRW",
        description:"Height in pixels of the opener icons, that is, the icons which show the open or closed\n state of the node, typically a [+] or [-] symbol.\n <P>\n If not specified, ${isc.DocUtils.linkForRef('attr:TreeGrid.openerIconSize')} is used instead.",
        name:"openerIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "classAttr:RPCManager.screenLoaderURL":{
        ref:"classAttr:RPCManager.screenLoaderURL",
        flags:"RW",
        description:"The screenLoaderURL specifies the URL where ScreenLoaderServlet is installed.",
        name:"screenLoaderURL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"RPCManager.screenLoaderURL",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "attr:OperationBinding.operationType":{
        ref:"attr:OperationBinding.operationType",
        flags:"IR",
        description:"Which operationType this operationBinding is for.  This property is only settable on an\n operationBinding, not a DataSource as a whole.",
        name:"operationType",
        seeAlso:[
        ],
        valueType:"DSOperationType",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:SimpleGradient.endColor":{
        ref:"attr:SimpleGradient.endColor",
        flags:"IR",
        description:"The end color of the gradient.",
        name:"endColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SimpleGradient"
    },
    "attr:DateRangeDialog.headerTitle":{
        ref:"attr:DateRangeDialog.headerTitle",
        flags:"IR",
        description:"The title to display in the header-bar of this Dialog.",
        name:"headerTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Select Date Range\"",
        type:"attr",
        definingClass:"class:DateRangeDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "class:DrawPane":{
        methods:[
            "method:DrawPane.erase",
            "method:DrawPane.destroyItems",
            "method:DrawPane.addDrawItem",
            "method:DrawPane.getDataURL",
            "method:DrawPane.getSvgString",
            "method:DrawPane.getPrintHTML",
            "method:DrawPane.setZoomLevel",
            "method:DrawPane.zoom",
            "method:DrawPane.setRotation",
            "method:DrawPane.rotate",
            "method:DrawPane.addGradient",
            "method:DrawPane.getGradient",
            "method:DrawPane.removeGradient",
            "method:DrawPane.createSimpleGradient",
            "method:DrawPane.createLinearGradient",
            "method:DrawPane.createRadialGradient"
        ],
        ref:"class:DrawPane",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing"
        ],
        attrs:[
            "attr:DrawPane.drawingWidth",
            "attr:DrawPane.drawingHeight",
            "attr:DrawPane.canDragScroll",
            "attr:DrawPane.rotation",
            "attr:DrawPane.zoomLevel",
            "attr:DrawPane.translate",
            "attr:DrawPane.gradients",
            "attr:DrawPane.drawItems"
        ],
        description:"A DrawPane is a container for drawing bitmap and vector graphics using browser's built-in\n freeform drawing capabilities.  These include the HTML5 <code>&lt;canvas&gt;</code> tag and\n <code>SVG (Scalable Vector Graphics)</code> where available, and the <code>VML (Vector Markup\n Language)</code> for legacy browsers (Internet Explorer 8 and earlier).\n <p>\n To draw in a <code>DrawPane</code> you create ${isc.DocUtils.linkForRef('class:DrawLine')}s, ${isc.DocUtils.linkForRef('class:DrawOval')}s,\n ${isc.DocUtils.linkForRef('class:DrawPath')}s and other ${isc.DocUtils.linkForRef('class:DrawItem')}-based components, and place them in the\n <code>DrawPane</code> via ${isc.DocUtils.linkForRef('attr:DrawPane.drawItems')} or add them incrementally via\n ${isc.DocUtils.linkForRef('method:DrawPane.addDrawItem')}.\n <p>\n <code>DrawItems</code> support a variety of common features, such as \n ${isc.DocUtils.linkForRef('object:Gradient','gradient fills')}, ${isc.DocUtils.linkForRef('attr:DrawItem.startArrow','arrowheads')}, events such as\n ${isc.DocUtils.linkForRef('method:DrawItem.click','click()')} and built-in ${isc.DocUtils.linkForRef('attr:DrawItem.knobs','control knobs')} for end user\n resizing and manipulation of shapes.\n <p>\n Common shapes such as ${isc.DocUtils.linkForRef('class:DrawRect','rectangles')}, ${isc.DocUtils.linkForRef('class:DrawOval','ovals')} and\n ${isc.DocUtils.linkForRef('class:DrawTriangle','triangles')} have dedicated DrawItem subclasses.  For other shapes,\n consider:\n <ul>\n <li> ${isc.DocUtils.linkForRef('class:DrawPath')} - a multi-segment line with straight segments, defined by a series\n      of ${isc.DocUtils.linkForRef('attr:DrawPath.points','points')}\n <li> ${isc.DocUtils.linkForRef('class:DrawPolygon')} - a closed shape with straight sides, defined by a series of\n      ${isc.DocUtils.linkForRef('attr:DrawPolygon.points','points')}\n <li> ${isc.DocUtils.linkForRef('class:DrawShape')} - a multi-segment line or closed shape whose sides can be defined by a\n      series of commands, including curved arcs\n </ul>\n\n <smartgwt><p><b>NOTE:</b>To use the Drawing subsystem, include the Drawing module\n in your application by including <code>&lt;inherits name=\"com.smartgwt.Drawing\"/&gt;</code>\n in your GWT module XML.</p></smartgwt>\n\n <h3>Note on Coordinate Systems</h3>\n There are three different coordinate systems involved when a DrawItem is drawn onto a DrawPane:\n <ul>\n <li>The \"drawing coordinate system\" refers to the untransformed Cartesian coordinate system\n     in which dimensional and positional values are interpreted. For example, when a ${isc.DocUtils.linkForRef('class:DrawRect')}\n     is configured with left:20, top:30, width:200, and height:100, the DrawRect represents\n     a rectangle from (20, 30) to (220, 130) in this drawing coordinate system.</li>\n <li>The \"local coordinate system\" for a DrawItem refers to the drawing coordinate system with\n     the DrawItem's (local) transforms such as ${isc.DocUtils.linkForRef('attr:DrawItem.scale')} and ${isc.DocUtils.linkForRef('attr:DrawItem.rotation')}\n     applied, except that a ${isc.DocUtils.linkForRef('class:DrawSector')}'s local transform does not include the ${isc.DocUtils.linkForRef('attr:DrawSector.rotation','rotation')}\n     of the sector.\n     <p>\n     There is a local coordinate system for each DrawItem.\n     <p>\n     The drawing coordinate system can also be viewed as the local coordinate system for a DrawItem\n     with no local transforms.</li>\n <li>The \"global coordinate system\" refers to the drawing coordinate system with global\n     DrawPane transforms ${isc.DocUtils.linkForRef('attr:DrawPane.translate')}, ${isc.DocUtils.linkForRef('attr:DrawPane.zoomLevel')} and ${isc.DocUtils.linkForRef('attr:DrawPane.rotation')}\n     applied.</li>\n </ul>\n <p>\n The view port of the DrawPane is the rectangle in the global coordinate system from (0, 0)\n that is as wide as the DrawPane's ${isc.DocUtils.linkForRef('method:Canvas.getInnerContentWidth','inner content width')}\n and as high as the DrawPane's ${isc.DocUtils.linkForRef('method:Canvas.getInnerContentHeight','inner content height')}.\n Note: In the case of a ${isc.DocUtils.linkForRef('class:FacetChart')} showing a ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom','zoom chart')},\n the view port height is decreased by the height of the zoom chart.\n <p>\n One other coordinate system in use by a DrawPane when ${isc.DocUtils.linkForRef('attr:DrawPane.canDragScroll','drag-scrolling')}\n is enabled is the \"viewbox coordinate system\". The viewbox coordinate system is the drawing\n coordinate system with the ${isc.DocUtils.linkForRef('attr:DrawPane.translate')} and ${isc.DocUtils.linkForRef('attr:DrawPane.zoomLevel')} transforms\n applied.",
        name:"DrawPane",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"Canvas"
    },
    "method:PortalLayout.setShowColumnMenus":{
        ref:"method:PortalLayout.setShowColumnMenus",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.showColumnMenus')} and updates existing columns to reflect the new setting.\n",
        name:"setShowColumnMenus",
        seeAlso:[
        ],
        params:[
            {
                description:"Whether to show column menus",
                optional:false,
                name:"showMenus",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:DataSourceField.imageWidth":{
        ref:"attr:DataSourceField.imageWidth",
        flags:"IR",
        description:"Width of the image-content of this field.  If set as a string, represents the name of \n another field in the record that holds the imageWidth.  Applicable only to fields of image \n type or fields that use a ${isc.DocUtils.linkForRef('class:ViewFileItem','ViewFileItem')} as an editor.",
        name:"imageWidth",
        seeAlso:[
        ],
        valueType:"number or String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "method:Canvas.getHoverHTML":{
        ref:"method:Canvas.getHoverHTML",
        flags:"",
        description:" If <code>this.showHover</code> is true, when the user holds the mouse over this Canvas for\n long enough to trigger a hover event, a hover canvas is shown by default. This method returns\n the contents of that hover canvas. Default implementation returns <code>this.prompt</code> -\n override for custom hover HTML. Note that returning <code>null</code> or an empty string will\n suppress the hover canvas altogether.\n",
        name:"getHoverHTML",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        returns:{
            description:"the string to show in the hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "method:Calendar.getCurrentViewName":{
        ref:"method:Calendar.getCurrentViewName",
        flags:"",
        description:" Get the name of the visible view.   Returns one of 'day', 'week', 'month' or 'timeline'.\n\n",
        name:"getCurrentViewName",
        seeAlso:[
        ],
        returns:{
            description:"The name of the currently visible view.",
            type:"ViewName"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ResultSet.dropCacheOnUpdate":{
        ref:"attr:ResultSet.dropCacheOnUpdate",
        flags:"IRA",
        description:"Whether to discard all cached rows when a modification operation (add, update, remove)\n occurs on the ResultSet's DataSource.\n <P>\n A ResultSet that has a complete cache for the current filter criteria can potentially\n incorporate a newly created or updated row based on the data that the server returns\n when a modification operation completes.  However this is not always possible for\n ResultSets that show some types of joins, or when the server cannot easily return update\n data.  In this case set <code>dropCacheOnUpdate</code> to cause the cache to be\n discarded when an update occurs.\n <P>\n <code>dropCacheOnUpdate</code> can be set either directly on a ResultSet, or on a\n DataSource in order to affect all ResultSets on that DataSource.",
        name:"dropCacheOnUpdate",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "cacheSync"
        ]
    },
    "attr:TreeNode.parentId":{
        ref:"attr:TreeNode.parentId",
        flags:"IR",
        description:"For trees with modelType:\"parent\", this property specifies the unique ID of this node's \n parent node.\n The unique ID of a node, together with the unique ID of its parent is used by\n ${isc.DocUtils.linkForRef('method:Tree.linkNodes')} to link a list of nodes into a tree.\n <p>\n Note: the name of this property can be changed by setting ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}.",
        name:"parentId",
        seeAlso:[
            {
                ref:"attr:TreeNode.id",
                description:null
            },
            {
                ref:"method:Tree.linkNodes",
                description:null
            },
            {
                ref:"attr:Tree.modelType",
                description:null
            },
            {
                ref:"attr:Tree.parentIdField",
                description:null
            }
        ],
        valueType:"String or Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "attr:ListGrid.freezeFieldText":{
        ref:"attr:ListGrid.freezeFieldText",
        flags:"IRWA",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','this.canFreezeFields')} is true, this string will be shown as the\n title for the menu item to freeze a currently unfrozen field.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>title</code> available as a variable containing\n the field title.\n <P>\n Default value returns \"Freeze \" + the field's summary title.",
        name:"freezeFieldText",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Freeze ${title}\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Canvas.edgeCenterBackgroundColor":{
        ref:"attr:Canvas.edgeCenterBackgroundColor",
        flags:"IR",
        description:"Background color for the center section only.  Can be used as a surrogate background\n color for the decorated Canvas, if the Canvas is set to partially overlap the edges and\n hence can't show a background color itself without occluding media.",
        name:"edgeCenterBackgroundColor",
        seeAlso:[
        ],
        valueType:"Color",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:GridRenderer.showAllRows":{
        ref:"attr:GridRenderer.showAllRows",
        flags:"IRA",
        description:"Whether all rows should be drawn all at once, or only rows visible in the viewport.\n <P>\n Drawing all rows causes longer initial rendering time, but allows smoother vertical scrolling.\n With a very large number of rows, showAllRows will become too slow.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:GridRenderer.drawAheadRatio')} and ${isc.DocUtils.linkForRef('attr:GridRenderer.drawAllMaxCells')}.",
        name:"showAllRows",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "attr:TabSet.tabBarThickness":{
        ref:"attr:TabSet.tabBarThickness",
        flags:"IRW",
        description:"Thickness of tabBar, applies to either orientation (specifies height for horizontal,\n width for vertical orientation).  Note that overriding this value for TabSets that are\n skinned with images generally means providing new media for the borders.",
        name:"tabBarThickness",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"21",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBar"
        ]
    },
    "attr:DSRequest.keepParentsOnFilter":{
        ref:"attr:DSRequest.keepParentsOnFilter",
        flags:"IRW",
        description:"This property is for advanced use in integrating trees that \n ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand','load data on demand')} using data paging.\n When this flag is set, a server fetch operation is expected to return all of the tree nodes\n that either match the provided criteria <b>or</b> have one or more children that match the\n criteria.\n <p>\n A ResultTree with ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode','fetchMode:\"paged\"')} and with\n ${isc.DocUtils.linkForRef('attr:ResultTree.keepParentsOnFilter','keepParentsOnFilter')} enabled will automatically set\n this property to <code>true</code> on all DSRequests that it sends to the server.\n <p>\n Currently, no built-in server-side connectors (SQL, JPA, Hibernate) implement support for\n the keepParentsOnFilter flag.",
        name:"keepParentsOnFilter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "treeDataBinding"
        ]
    },
    "method:Class.logError":{
        ref:"method:Class.logError",
        flags:"",
        description:" Log a message at \"error\" priority\n \n",
        name:"logError",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:FormItem.iconPrompt":{
        ref:"attr:FormItem.iconPrompt",
        flags:"IRWA",
        description:"Default prompt (and tooltip-text) for icons.",
        name:"iconPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "method:Canvas.mouseOut":{
        ref:"method:Canvas.mouseOut",
        flags:"A",
        description:"\n Executed when the mouse leaves this widget.  No default implementation.\n\n",
        name:"mouseOut",
        seeAlso:[
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:DynamicForm.cancelParamValue":{
        ref:"attr:DynamicForm.cancelParamValue",
        flags:"IRW",
        description:"The value of the special field sent to the server as part of ${isc.DocUtils.linkForRef('method:DynamicForm.cancel')}",
        name:"cancelParamValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"cancel\"",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:FormItem.showDisabled":{
        ref:"attr:FormItem.showDisabled",
        flags:"IRWA",
        description:"When this item is disabled, should it be re-styled to indicate its disabled state?",
        name:"showDisabled",
        setter:[
            "setShowDisabled"
        ],
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "method:Layout.setLayoutMargin":{
        ref:"method:Layout.setLayoutMargin",
        flags:"",
        description:" Method to force a reflow of the layout after directly assigning a value to any of the\n layout*Margin properties. Takes no arguments.\n\n",
        name:"setLayoutMargin",
        seeAlso:[
        ],
        params:[
            {
                description:"optional new setting for layout.layoutMargin.  Regardless of whether a new                          layout margin is passed, the layout reflows according to the current settings\n                          for layoutStartMargin et al",
                optional:true,
                name:"newMargin",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:DrawGroup.scaleTo":{
        ref:"method:DrawGroup.scaleTo",
        flags:"",
        description:" Scale the each item in the drawGroup by the x, y multipliers\n",
        name:"scaleTo",
        seeAlso:[
        ],
        params:[
            {
                description:"scale in the x direction",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"float"
            },
            {
                description:"scale in the y direction",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:Calendar.dayHeaderBaseStyle":{
        ref:"attr:Calendar.dayHeaderBaseStyle",
        flags:"IRW",
        description:"The base name for the CSS class applied to the day headers of the month view.\n This style will have \"Dark\", \"Over\", \"Selected\", or \"Disabled\"\n appended to it according to the state of the cell.",
        name:"dayHeaderBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calMonthDayHeader\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "method:FilterBuilder.filterChanged":{
        ref:"method:FilterBuilder.filterChanged",
        flags:"",
        description:" Handler fired when there is a change() event fired on any FormItem within the \n filterBuilder. \n\n",
        name:"filterChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "method:DataBoundComponent.deselectRange":{
        ref:"method:DataBoundComponent.deselectRange",
        flags:"",
        description:" Deselect a contiguous range of records by index.\n <P>\n This is a synonym for <code>selectRange(startRow, endRow, false);</code>\n",
        name:"deselectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start of selection range",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection range (non-inclusive)",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "class:Offline":{
        methods:[
        ],
        ref:"class:Offline",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:Offline.isOffline",
            "classMethod:Offline.goOffline",
            "classMethod:Offline.goOnline",
            "classMethod:Offline.useNativeOfflineDetection",
            "classMethod:Offline.put",
            "classMethod:Offline.get",
            "classMethod:Offline.remove"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
        ],
        description:"The Offline class provides features for storing and retrieving values in persistent browser\n storage.  Because this storage is both persistent (ie, it remains available after the \n browser is closed and re-opened) and local to the browser, it allows applications to operate\n when the client is not connected to a network, albeit with some obvious limitations.\n <p>\n As well as providing straightforward APIs for storing, retrieving and removing values, \n Offline support is integrated into the normal request/response cycle.  You can configure \n the framework so that server responses are automatically cached in Offline storage.  Then,\n at some future point when the client is offline, responses for known requests are returned \n from the Offline cache.\n <p>\n SmartClient makes use of various underlying storage techniques, depending on what the \n browser supports, but the API to a SmartClient program is the same regardless of the \n underlying storage - simple key/value pairs.  Currently, we provide Offline support for all \n HTML5-compliant browsers, plus earlier versions of Internet Explorer (6 and 7).  The amount \n of storage available is dictated by the browser, and varies from approximately 500KB to \n approximately 5MB.",
        name:"Offline",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('offlineSupport')}",
            "${isc.DocUtils.linkForExampleId('offlinePrefs')}"
        ],
        groups:[
            "offlineGroup"
        ]
    },
    "attr:ListGrid.cellContextMenu":{
        ref:"attr:ListGrid.cellContextMenu",
        flags:"R",
        description:"The menu displayed when a cell is right clicked on.",
        name:"cellContextMenu",
        seeAlso:[
        ],
        valueType:"AutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:RelativeDateItem.daysFromNowTitle":{
        ref:"attr:RelativeDateItem.daysFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"day\".",
        name:"daysFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N days from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataSource.showLocalFieldsOnly":{
        ref:"attr:DataSource.showLocalFieldsOnly",
        flags:"IR",
        description:"For a DataSource that inherits ${isc.DocUtils.linkForRef('attr:DataSource.fields')} from another DataSource \n (via ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')}), indicates that only the fields listed in this DataSource\n should be shown.  All other inherited parent fields will be marked \"hidden:true\".",
        name:"showLocalFieldsOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "method:ImgButton.setIcon":{
        ref:"method:ImgButton.setIcon",
        flags:"",
        description:" Change the icon being shown next to the title text.\n",
        name:"setIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"URL of new icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ListGrid.booleanImageHeight":{
        ref:"attr:ListGrid.booleanImageHeight",
        flags:"IRWA",
        description:"Height for the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')}, ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')}\n and ${isc.DocUtils.linkForRef('attr:ListGrid.booleanPartialImage')}.\n Note: If ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} is unset, the ${isc.DocUtils.linkForRef('attr:CheckboxItem.checkedImage')}\n will be used to indicate a true value in a boolean field. In this case this property is\n ignored in favor of ${isc.DocUtils.linkForRef('attr:CheckboxItem.valueIconHeight')}.",
        name:"booleanImageHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:DrawLabel.fontWeight":{
        ref:"attr:DrawLabel.fontWeight",
        flags:"IR",
        description:"Font weight, similar to the CSS font-weight attribute, eg \"normal\", \"bold\".",
        name:"fontWeight",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"bold\"",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "attr:SelectItem.optionDataSource":{
        ref:"attr:SelectItem.optionDataSource",
        flags:"IRA",
        description:"If set, this FormItem will derive data to show in the PickList by fetching records from\n the specified <code>optionDataSource</code>.  The fetched data will be used as a\n ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} by extracting the\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')} and ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} in\n the loaded records, to derive one valueMap entry per record loaded from the\n optionDataSource.  Multiple fields from the fetched data may be shown in the pickList by\n setting ${isc.DocUtils.linkForRef('attr:SelectItem.pickListFields')}.\n <P>\n The data will be retrieved via a \"fetch\" operation on the DataSource, passing the \n ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria')} (if set) as criteria, and passing\n ${isc.DocUtils.linkForRef('attr:SelectItem.optionFilterContext')} (if set) as DSRequest Properties.\n <P>\n The fetch will be triggered when the pickList is first shown, or, you can set\n ${isc.DocUtils.linkForRef('attr:SelectItem.autoFetchData','autoFetchData:true')} to fetch when the FormItem is\n first drawn.  \n <P>\n Note that providing an initial value when\n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')} is enabled, or enabling\n ${isc.DocUtils.linkForRef('attr:SelectItem.defaultToFirstOption','defaultToFirstOption')}, can also cause a fetch to\n be initiated immediately upon form creation.  You can also call ${isc.DocUtils.linkForRef('method:PickList.fetchData')}\n at any time to manually trigger a fetch.\n <P>\n Data paging is automatically enabled if the optionDataSource supports it.  As the\n pickList is scrolled by the user, requests for additional data will be automatically\n issued.\n <P>\n For a pickList attached to a ${isc.DocUtils.linkForRef('class:ComboBoxItem','ComboBoxItem')}, new fetches are \n issued as the user types, with criteria set as described under \n ${isc.DocUtils.linkForRef('method:ComboBoxItem.getPickListFilterCriteria')}.\n If your dataSource is not capable of filtering results by search criteria (eg, the\n dataSource is backed by an XML flat file), you can set ${isc.DocUtils.linkForRef('attr:SelectItem.filterLocally')} to have the\n entire dataset loaded up front and filtering performed in the browser.  This disables\n data paging.\n <P>\n Note that if a normal, static ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} is <b>also</b> specified\n for the field (either directly in the form item or as part of the field definition in\n the dataSource), it will be preferred to the data derived from the optionDataSource for\n whatever mappings are present.",
        name:"optionDataSource",
        seeAlso:[
        ],
        valueType:"DataSource | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "classMethod:DateUtil.mapRelativeDateShortcut":{
        ref:"classMethod:DateUtil.mapRelativeDateShortcut",
        flags:"A",
        description:" Converts a ${isc.DocUtils.linkForRef('type:RelativeDateShortcut')} to a ${isc.DocUtils.linkForRef('type:RelativeDateString')}.\n",
        name:"mapRelativeDateShortcut",
        seeAlso:[
        ],
        params:[
            {
                description:"shortcut string to convert",
                optional:false,
                name:"relativeDate",
                defaultValue:null,
                type:"RelativeDateShortcut"
            },
            {
                description:"Are we interested in the start or end of the  specified relative date? This applies to shortcuts which do not specify a specific\n  moment (such as <code>$today</code>) - it does not apply to shortcuts which \n  already specify a specific moment such as <code>$startOfToday</code>. If unspecified \n  rangePosition is always assumed to be \"start\"",
                optional:true,
                name:"rangePosition",
                defaultValue:null,
                type:"RelativeDateRangePosition"
            }
        ],
        returns:{
            description:"converted relative date string.",
            type:"RelativeDateString"
        },
        type:"classMethod",
        definingClass:"class:DateUtil"
    },
    "attr:PickTreeItem.dataProperties":{
        ref:"attr:PickTreeItem.dataProperties",
        flags:"IR",
        description:"For a <code>PickTreeItem</code> that uses a DataSource, these properties will be passed to\n the automatically-created ResultTree.  This can be used for various customizations such as\n modifying the automatically-chosen ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}.",
        name:"dataProperties",
        seeAlso:[
        ],
        valueType:"Tree Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PickTreeItem",
        groups:[
            "databinding"
        ]
    },
    "method:DetailViewer.getCellCSSText":{
        ref:"method:DetailViewer.getCellCSSText",
        flags:"",
        description:" Return CSS text for styling this cell, which will be applied in addition to the CSS class\n for the cell, as overrides.\n <p>\n \"CSS text\" means semicolon-separated style settings, suitable for inclusion in a CSS\n stylesheet or in a STYLE attribute of an HTML element.\n\n",
        name:"getCellCSSText",
        seeAlso:[
        ],
        params:[
            {
                description:"actual value of this cell",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"field object for this cell",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DetailViewerField"
            },
            {
                description:"record object for this cell",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"the viewer instance to which this cell belongs",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"DetailViewer"
            }
        ],
        returns:{
            description:"CSS text to add to this cell",
            type:"CSSText"
        },
        type:"method",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "attr:RadioGroupItem.vertical":{
        ref:"attr:RadioGroupItem.vertical",
        flags:"IRW",
        description:"True == display options vertically, false == display in a single row",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RadioGroupItem",
        groups:[
            "appearance"
        ]
    },
    "attr:HibernateBrowser.excludeSubstring":{
        ref:"attr:HibernateBrowser.excludeSubstring",
        flags:"IR",
        description:"If set, specifies a substring which must NOT exist in an entity name for it to be included in\n this HibernateBrowser.  If this property is set to a List of strings, entity names are\n excluded if they match any one of the strings.  The comparison is case-insensitive.\n <p>\n For example, <code>excludeSubstring: [\"Order\", \"inv\"]</code> would exclude all the following \n entity names: \"ORDERS\", \"Inventory\", \"client_invoicing\"\n <p>\n Note that if you specify both include and exclude criteria and they conflict (ie,\n according to the criteria you set, an entity should be both included and excluded), \n exclude wins.",
        name:"excludeSubstring",
        seeAlso:[
        ],
        valueType:"String | List of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HibernateBrowser"
    },
    "attr:ListGrid.listEndEditAction":{
        ref:"attr:ListGrid.listEndEditAction",
        flags:"IRW",
        description:"If the user is editing the last record in this listGrid, and attempts to navigate\n beyond the last row either by tabbing off the last editable field, or using the down\n arrow key, this property determines what action to take:<ul>\n <li>\"next\": start editing a new record at the end of the list.\n <li>\"done\": hide the editor\n <li>\"stop\": leave focus in the cell being edited\n <li>\"none\": no action\n </ul>\n <P>\n See the ${isc.DocUtils.linkForRef('group:editing','Grid Editing overview')} and also the\n ${isc.DocUtils.linkForRef('group:unsavedRecords','Editing Unsaved Records overview')} for context about how newly\n added records behave.",
        name:"listEndEditAction",
        seeAlso:[
        ],
        valueType:"RowEndEditAction",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('enterNewRows')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:TreeGrid.folderClosed":{
        ref:"method:TreeGrid.folderClosed",
        flags:"",
        description:"\n This method is called when a folder is closed either via the user manipulating the\n expand/collapse control in the UI or via ${isc.DocUtils.linkForRef('method:TreeGrid.closeFolder')}.  You can return\n <code>false</code> to cancel the close.\n\n",
        name:"folderClosed",
        seeAlso:[
        ],
        params:[
            {
                description:"the folder (record) that is being closed",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"false to cancel the close, true to all it to proceed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "classMethod:RPCManager.clearTransaction":{
        ref:"classMethod:RPCManager.clearTransaction",
        flags:"A",
        description:" Erase all client-side record of a transaction, such that any response from the server\n will be ignored.\n <P>\n A transaction means a batch of one or more RPCRequests that have already been sent to\n the server via ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendQueue')}.\n <P>\n You can retrieve the id of the current transaction, if there is one, by \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.getCurrentTransactionId','getCurrentTransactionId()')} before the \n transaction is sent.\n \n",
        name:"clearTransaction",
        seeAlso:[
            {
                ref:"group:relogin",
                description:null
            }
        ],
        params:[
            {
                description:"id of the transaction to be cleared",
                optional:false,
                name:"transactionNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:ListGrid.showClippedHeaderTitlesOnHover":{
        ref:"attr:ListGrid.showClippedHeaderTitlesOnHover",
        flags:"IRA",
        description:"If true and a header button's title is clipped, then a hover containing the full field\n title is enabled.",
        name:"showClippedHeaderTitlesOnHover",
        seeAlso:[
            {
                ref:"method:ListGrid.headerTitleClipped",
                description:null
            },
            {
                ref:"method:ListGrid.headerHoverHTML",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hovers"
        ]
    },
    "attr:Dialog.icon":{
        ref:"attr:Dialog.icon",
        flags:"IR",
        description:"Icon to show in this dialog - see ${isc.DocUtils.linkForRef('attr:Dialog.message')}.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:PaletteNode.liveObject":{
        ref:"attr:PaletteNode.liveObject",
        flags:"IR",
        description:"For a paletteNode which should be a \"singleton\", that is, always provides the exact same\n object (==) rather than a dynamically created copy, provide the singleton object as\n <code>liveObject</code>.\n <P>\n Instead of dynamically creating an object from defaults, the <code>liveObject</code> will\n simply be assigned to ${isc.DocUtils.linkForRef('attr:EditNode.liveObject')} for the created editNode.",
        name:"liveObject",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PaletteNode"
    },
    "method:ListGrid.unsort":{
        ref:"method:ListGrid.unsort",
        flags:"",
        description:" Turn sorting off, typically because data has changed and is no longer sorted.\n <p>\n Calling <code>unsort()</code> disables visual indication of which columns are sorted,\n and calls <code>unsort()</code> on the underlying dataset.\n <P>\n Note that a grid viewing a paged dataset may not be able to support <code>unsort()</code>\n because the sort order is what establishes the row numbering that allows data to be\n fetched in batches.\n <P>\n <code>unsort()</code> is automatically called when records are dropped or the\n ${isc.DocUtils.linkForRef('method:ListGrid.setSort','sort-configuration')} is altered.\n\n",
        name:"unsort",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "group:viewFile":{
        ref:"group:viewFile",
        refs:[
        ],
        description:null,
        name:"viewFile",
        seeAlso:[
        ],
        type:"group"
    },
    "type:ObjectLiteral":{
        ref:"type:ObjectLiteral",
        description:"An \"Object literal\" is JavaScript shorthand for defining a JavaScript Object with a set\n of properties.  For example, code like this:\n <pre>\n    var request = {\n        actionURL : \"/foo.do\",\n        showPrompt:false\n    };</pre>\n .. is equivalent to ..\n <pre>\n    var request = new Object();\n    request.actionURL = \"/foo.do\";\n    request.showPrompt = false;</pre>\n In situations where a set of ${isc.DocUtils.linkForRef('type:Properties','properties')} may be passed to a\n method, the Object literal notation is much more compact.  For example:\n <pre>\n    isc.RPCManager.sendRequest({\n        actionURL : \"/foo.do\",\n        showPrompt:false\n    });</pre>\n <b>NOTE:</b> if you have a 'trailing comma' in an object literal, like so:\n <pre>\n    var request = {\n        actionURL : \"/foo.do\",\n        showPrompt:false, // TRAILING COMMA\n    };</pre>\n This is considered a syntax error by Internet Explorer, but not by Firefox.  This is by\n far the #1 cause of Internet Explorer-specific errors that do not occur in other\n browsers.  Pay special attention to this error, and, if you can, install the\n JSSyntaxScannerFilter into your development environment (as described in the\n ${isc.DocUtils.linkForRef('group:iscInstall','deployment instructions')}).",
        name:"ObjectLiteral",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:GridRenderer.emptyMessageStyle":{
        ref:"attr:GridRenderer.emptyMessageStyle",
        flags:"IRW",
        description:"The CSS style name applied to the emptyMessage string if displayed.",
        name:"emptyMessageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "emptyMessage"
        ]
    },
    "attr:CubeGrid.dataSource":{
        ref:"attr:CubeGrid.dataSource",
        flags:"IR",
        description:"DataSource to use to fetch CubeGrid data.\n <p>\n The DataSource should have a field named after each facetId.  The CubeGrid will submit\n requests for data as DataSource \"fetch\" operations that request \n ${isc.DocUtils.linkForRef('object:CellRecord','cellRecords')} only for currently visible area\n (including ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio','drawAheadRatio')}).  The ${isc.DocUtils.linkForRef('type:Criteria')} passed\n in each fetch operation will be a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that corresponds to a rectangular\n swath of cells the CubeGrid needs data for, for example:<pre>\n      { region:\"west\", product:[\"chair\", \"table\"], timePeriod:\"Q1 2004\" }\n </pre>\n Note that in the criteria above, the Array value for the \"product\" facet indicates the\n CubeGrid needs cellRecords for both the \"chair\" and \"table\" facetValues.\n <P>\n ${isc.DocUtils.linkForRef('attr:CubeGrid.fixedFacetValues')}, if any, are always sent in each \"fetch\" operation.\n <P>\n Scrolling, expanding/collapsing tree facets, pivoting, and changing the currently\n visible facets may all trigger data requests.\n <P>\n The CubeGrid will generally attempt to fetch a minimal set of data to fill the viewport,\n sending multiple fetch operations in a batch (via ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queueing')})\n which minimally describe newly revealed areas without specifying each individual cell.\n The CubeGrid will automatically handle being provided <i>more</i> data than was asked\n for, so server-side fetch-ahead policies can be implemented without any client-side\n customization.\n <P>\n Note that the ${isc.DocUtils.linkForRef('attr:DataSource.serverType','SQL connector')} shipped with the SmartClient\n SDK is capable of responding to the CubeGrid's data requests without writing any custom\n server code.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:ListGrid.fetchDelay":{
        ref:"attr:ListGrid.fetchDelay",
        flags:"IRWA",
        description:"If we're showing the filterEditor (${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is true), and we're\n re-filtering on every keypress (${isc.DocUtils.linkForRef('attr:ListGrid.filterOnKeypress')} is true), this\n property is the delay in milliseconds between the user changing the filter and the\n filter request being kicked off. If multiple changes are made to the filter\n within this fetch delay, only the most recent will actually cause a re-filter",
        name:"fetchDelay",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"300",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:FormulaBuilder.saveAddAnotherButtonTitle":{
        ref:"attr:FormulaBuilder.saveAddAnotherButtonTitle",
        flags:"IRWA",
        description:"The default title for the \"Save & Add Another\" button.",
        name:"saveAddAnotherButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Save /&amp; Add Another\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FilterBuilder.valueItemWidth":{
        ref:"attr:FilterBuilder.valueItemWidth",
        flags:"IR",
        description:"Width for the value-chooser formItem displayed in clauses within this FilterBuilder.\n Note that depending on the selected operator type, this item may not be displayed, or\n may have different characteristics. See ${isc.DocUtils.linkForRef('method:FilterBuilder.getValueFieldProperties')} for information\n on customizing the value item.",
        name:"valueItemWidth",
        seeAlso:[
        ],
        valueType:"Integer | String",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:ListGridField.linkURLPrefix":{
        ref:"attr:ListGridField.linkURLPrefix",
        flags:"IRWA",
        description:"If this field has type [${isc.DocUtils.linkForRef('type:ListGridFieldType')}] set to <code>\"link\"</code>,\n setting this property will apply a standard prefix to the link URL for cells in this field.",
        name:"linkURLPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:DrawItem.startArrow":{
        ref:"attr:DrawItem.startArrow",
        flags:"IRW",
        description:"Style of arrowhead to draw at the beginning of the line or path.",
        name:"startArrow",
        setter:[
            "setStartArrow"
        ],
        seeAlso:[
        ],
        valueType:"ArrowStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:DataSource.quoteTableName":{
        ref:"attr:DataSource.quoteTableName",
        flags:"IRA",
        description:"For SQL DataSources, tells the framework whether to surround the associated \n ${isc.DocUtils.linkForRef('attr:DataSource.tableName','table name')} with quotation marks whenever it appears in\n generated queries.  This is only required if you have to connect to a table with a name\n that is in breach of your database product's naming conventions.  For example, some \n products (eg, Oracle) internally convert all unquoted references to upper case, so if\n you create a table called <code><b>myTest</b></code>, the database actually calls it \n <code><b>MYTEST</b></code> unless you quoted the name in the create command, like this:\n <p>\n <code><b>&nbsp;&nbsp;CREATE TABLE \"myTest\"</b></code>\n <p>\n If you <em>do</em> quote the name like this, or if you have to connect to a legacy table\n that has been named in this way, then you must set this property to tell the SQL engine \n that it must quote any references to this table name (this requirement depends on the \n database in use - as noted below, some are not affected by this problem).  If you do \n not, you will see exceptions along the lines of \"Table or view 'myTest' does not exist\".\n <p>\n Note, other database products (eg, Postgres) convert unquoted names to lower case, which\n leads to the same issues.  Still others (eg, SQL Server) are not case sensitive and are \n not affected by this issue.\n <p>\n Generally, we recommend that you avoid using this property unless you have a specific \n reason to do so.  It is preferable to avoid the issue altogether by simply not quoting \n table names at creation time, if you are able to do so.",
        name:"quoteTableName",
        seeAlso:[
            {
                ref:"attr:DataSource.tableName",
                description:null
            },
            {
                ref:"attr:DataSource.quoteColumnNames",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:RestDataSource.removeDataURL":{
        ref:"attr:RestDataSource.removeDataURL",
        flags:"IR",
        description:"Custom dataURL for remove type operations",
        name:"removeDataURL",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:SplitPane.showListToolStrip":{
        ref:"attr:SplitPane.showListToolStrip",
        flags:"IR",
        description:"If set to <code>false</code>, the ${isc.DocUtils.linkForRef('attr:SplitPane.listToolStrip','listToolStrip')}\n will not be shown.",
        name:"showListToolStrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "attr:FormItem.suppressValueIcon":{
        ref:"attr:FormItem.suppressValueIcon",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} is set, this property may be set to prevent the value\n icons from showing up next to the form items value",
        name:"suppressValueIcon",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "object:groupNode":{
        methods:[
        ],
        ref:"object:groupNode",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:groupNode.groupMembers",
            "attr:groupNode.groupTitle",
            "attr:groupNode.groupValue"
        ],
        description:"An auto-generated subclass of ${isc.DocUtils.linkForRef('object:TreeNode')} representing the group nodes\n in a grouped ${isc.DocUtils.linkForRef('class:ListGrid')}.",
        name:"groupNode",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        type:"object",
        groups:[
            "grouping"
        ]
    },
    "method:Canvas.disable":{
        ref:"method:Canvas.disable",
        flags:"",
        description:" Disables this widget and any children and peers of this widget.\n",
        name:"disable",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "enable"
        ]
    },
    "attr:SummaryBuilder.showHelpIcon":{
        ref:"attr:SummaryBuilder.showHelpIcon",
        flags:"IR",
        description:"Whether to show the help icon that appears after the ${isc.DocUtils.linkForRef('attr:SummaryBuilder.formulaField')}.",
        name:"showHelpIcon",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "attr:Splitbar.vSrc":{
        ref:"attr:Splitbar.vSrc",
        flags:"IR",
        description:"Base URL for the image if ${isc.DocUtils.linkForRef('attr:StretchImg.vertical')} is true and \n ${isc.DocUtils.linkForRef('attr:StretchImg.src')} is unset.",
        name:"vSrc",
        seeAlso:[
            {
                ref:"attr:StretchImg.src",
                description:null
            },
            {
                ref:"attr:StretchImg.vSrc",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "appearance"
        ]
    },
    "attr:JSONEncoder.serializeInstances":{
        ref:"attr:JSONEncoder.serializeInstances",
        flags:"IR",
        description:"Controls the output of the JSONEncoder when instances of SmartClient classes (eg a ListGrid)\n are included in the data to be serialized.  See ${isc.DocUtils.linkForRef('type:JSONInstanceSerializationMode')}.\n <P>\n Note that the JSONEncoder does not support a format that will recreate the instance if\n passed to decode() or eval().",
        name:"serializeInstances",
        seeAlso:[
        ],
        valueType:"JSONInstanceSerializationMode",
        defaultValue:"\"long\"",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:DateChooser.disabledDates":{
        ref:"attr:DateChooser.disabledDates",
        flags:"IRW",
        description:"An array of Date instances that should be disabled if they appear in the calendar view.",
        name:"disabledDates",
        seeAlso:[
        ],
        valueType:"Array of Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:TileLayout.tileVMargin":{
        ref:"attr:TileLayout.tileVMargin",
        flags:"IR",
        description:"Vertical margin in between tiles.  See ${isc.DocUtils.linkForRef('attr:TileLayout.tileMargin')}.",
        name:"tileVMargin",
        setter:[
            "setTileVMargin"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:StatefulCanvas.deselect":{
        ref:"method:StatefulCanvas.deselect",
        flags:"",
        description:" Deselect this object.\n",
        name:"deselect",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "method:RecordEditor.performAction":{
        ref:"method:RecordEditor.performAction",
        flags:"",
        description:" Fired when the user clicks the ${isc.DocUtils.linkForRef('attr:RecordEditor.actionButton')} for this RecordEditor.\n May also be triggered from other user interaction with edit values (for\n example filter-editor change - see ${isc.DocUtils.linkForRef('attr:ListGrid.filterOnKeypress')}).\n <P>\n This is the method which initiates a filter in a listGrid\n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','filter editor')}. Note that for custom\n filtering behavior, developers can use the ${isc.DocUtils.linkForRef('method:ListGrid.filterEditorSubmit')}\n notification method rather than overriding this method directly.\n\n",
        name:"performAction",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RecordEditor"
    },
    "method:CubeGrid.deselectFacetValue":{
        ref:"method:CubeGrid.deselectFacetValue",
        flags:"",
        description:" Deselect the header for a given facet value.\n\n  <br><i>methodType</i> action\n",
        name:"deselectFacetValue",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of facet",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"string"
            },
            {
                description:"ID of facetValue to select",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:TabSet.tabIconClick":{
        ref:"method:TabSet.tabIconClick",
        flags:"",
        description:" Method fired when the user clicks the icon for a tab, as specified via ${isc.DocUtils.linkForRef('attr:Tab.icon')}.\n <P>\n Default behavior will fire <code>icon.click()</code> if specified, with two parameters\n <code>tab</code> (a pointer to the tab object and <code>tabSet</code> a pointer to the tabSet\n instance.\n",
        name:"tabIconClick",
        seeAlso:[
        ],
        params:[
            {
                description:"with click handler being fired",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:ColumnTree.getColumnProperties":{
        ref:"method:ColumnTree.getColumnProperties",
        flags:"A",
        description:" Additional properties to apply to the ListGrid that will show the indicated column.\n Returns nothing by default. This method can be overridden to allow, for example, different \n styling, icons, or row heights per column.\n",
        name:"getColumnProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"parent node for the nodes to be shown in the column",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"index of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"properties to be applied to the column",
            type:"ListGrid Properties"
        },
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "method:GridRenderer.setColumnWidths":{
        ref:"method:GridRenderer.setColumnWidths",
        flags:"",
        description:"\n Sets the width of all columns in the grid.\n\n",
        name:"setColumnWidths",
        seeAlso:[
        ],
        params:[
            {
                description:"array of new widths - one for each column.",
                optional:false,
                name:"newWidths",
                defaultValue:null,
                type:"Array"
            }
        ],
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:DynamicForm.saveData":{
        ref:"method:DynamicForm.saveData",
        flags:"",
        description:"\n Validate and then save the form's current values to the ${isc.DocUtils.linkForRef('class:DataSource')} this form is\n bound to.\n <p>\n If client-side validators are defined, they are executed first, and if any errors are\n found the save is aborted and the form will show the errors.\n <p>\n If client-side validation passes, a ${isc.DocUtils.linkForRef('class:DSRequest')} will be sent, exactly as though\n ${isc.DocUtils.linkForRef('method:DataSource.addData')} or ${isc.DocUtils.linkForRef('method:DataSource.updateData')} had been called with \n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','the form\\'s values')} as data.  The\n ${isc.DocUtils.linkForRef('attr:DSRequest.operationType')} will be either \"update\" or \"add\", depending on the\n current ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOperationType')}.\n <P>\n On either a client-side or server-side validation failure, validation errors will be\n displayed in the form.  Visible items within a DynamicForm will be redrawn to display\n errors. Validation failure occurring on hidden items, or DataSource fields with no \n associated form items may be handled via ${isc.DocUtils.linkForRef('method:DynamicForm.handleHiddenValidationErrors')}\n or ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')}.\n <P>\n In the case of a validation error, the callback will <b>not</b> be called by default\n since the form has already handled the failed save by displaying the validation errors\n to the user.  If you need to do something additional in this case, you can set\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')} via the <code>requestProperties</code> parameter to\n force your callback to be invoked.  However, first consider:\n <ul>\n <li> if you are trying to customize display of validation errors, there are several\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','built-in modes')} and ${isc.DocUtils.linkForRef('method:DynamicForm.showErrors')} may be a better\n place to put customizations.\n <li> for unrecoverable general errors (eg server is down),\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError','central error handling')} in invoked, so consider placing\n customizations there unless an unrecoverable error should be handled specially by this\n specific form.\n </ul>\n\n",
        name:"saveData",
        seeAlso:[
        ],
        params:[
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('addOperation')}"
        ],
        definingClass:"class:DynamicForm",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:SectionStack.setSectionTitle":{
        ref:"method:SectionStack.setSectionTitle",
        flags:"",
        description:" Changes the title of a SectionHeader.\n\n",
        name:"setSectionTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"ID or index of the section whose title you want to change",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"String or Number"
            },
            {
                description:"new title for the SectionHeader",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:SectionStack"
    },
    "attr:ServerObject.lookupStyle":{
        ref:"attr:ServerObject.lookupStyle",
        flags:"IR",
        description:"Specifies the mechanism for locating the class instance on which to invoke the method.\n Valid values are as follows:\n <ul>\n <li>\"spring\": For use with the <a href='http://springframework.com' target='_blank'>Spring framework</a>.\n ${isc.DocUtils.linkForRef('attr:ServerObject.bean')} contains the name of the bean to invoke.  Which application context\n is used can be configured via web.xml (see the example web.xml in the SDK).  See also\n ${isc.DocUtils.linkForRef('group:serverInit')} for special concerns with framework initialization when using\n Spring.\n <li>\"new\": A new instance of the class specified by ${isc.DocUtils.linkForRef('attr:ServerObject.className')} will be\n created and the DMI method will be invoked on that instance (unless the specified method is\n static, in which case no instance is created, but the class specified by\n ${isc.DocUtils.linkForRef('attr:ServerObject.className')} is still used).\n <li>\"factory\": A custom factory provides the class instance on which the DMI method is to be\n invoked.  In this case, ${isc.DocUtils.linkForRef('attr:ServerObject.className')} specifies the className of the factory\n that will provide the instance on which the DMI method is to be invoked.  The class\n specified by ${isc.DocUtils.linkForRef('attr:ServerObject.className')} must provide exactly one method named\n <code>create</code> that must return the class instance on which you wish the DMI method to\n be invoked.  Like the DMI methods, the <code>create</code> method can request a standard set of\n values as arguments.  See ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} for a list of available values.\n <li> \"attribute\": The instance on which the DMI method is to be invoked is looked up in the\n scope defined by ${isc.DocUtils.linkForRef('attr:ServerObject.attributeScope')} via the attribute name specified in\n ${isc.DocUtils.linkForRef('attr:ServerObject.attributeName')}.\n </ul>",
        name:"lookupStyle",
        seeAlso:[
            {
                ref:"attr:ServerObject.className",
                description:null
            },
            {
                ref:"attr:ServerObject.attributeName",
                description:null
            },
            {
                ref:"attr:ServerObject.attributeScope",
                description:null
            }
        ],
        valueType:"\"new\"|\"factory\"|\"attribute\"|\"spring\"",
        defaultValue:"\"new\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "attr:RPCRequest.httpHeaders":{
        ref:"attr:RPCRequest.httpHeaders",
        flags:"IRW",
        description:"HTTP headers to send, as a Object mapping Header name -> Header value, eg<br>\n { \"Content-Type\" : \"text/xml\" }\n <P>\n Valid with the xmlHttpRequest ${isc.DocUtils.linkForRef('attr:RPCRequest.transport','transport')} only.",
        name:"httpHeaders",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "method:ListGrid.cellContextClick":{
        ref:"method:ListGrid.cellContextClick",
        flags:"",
        description:" Called when a cell receives a contextclick event.\n\n",
        name:"cellContextClick",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('cellClicks')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:RadialGradient.r":{
        ref:"attr:RadialGradient.r",
        flags:"IR",
        description:"radius",
        name:"r",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:RadialGradient"
    },
    "method:SplitPane.setListPane":{
        ref:"method:SplitPane.setListPane",
        flags:"",
        description:" Sets a new ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')} at runtime.\n",
        name:"setListPane",
        seeAlso:[
        ],
        params:[
            {
                description:"new list pane for this widget.",
                optional:false,
                name:"pane",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:NavigationBar.setLeftButtonTitle":{
        ref:"method:NavigationBar.setLeftButtonTitle",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButtonTitle','leftButtonTitle')}.\n",
        name:"setLeftButtonTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title HTML for the left button.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "type:XMLElement":{
        ref:"type:XMLElement",
        description:"An XMLElement represents one complete XML tag, including any subelements contained between\n the start and end tags.\n <P>\n XMLElement is a native object supplied directly by the browser.  The SmartClient-supported\n interfaces for this object include methods that take an XMLElement as an argument (such as\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectNodes')}).  If you want to retrieve XML data and display it in a\n SmartClient component, read about ${isc.DocUtils.linkForRef('group:clientDataIntegration','XML Data Binding')}.  To\n extract data as JavaScript Objects from XML, see ${isc.DocUtils.linkForRef('classMethod:XMLTools.toJS')}.  Direct\n manipulation of XMLElements objects is subject to cross-browser inconsistencies, bugs,\n memory leaks and performance issues.",
        name:"XMLElement",
        seeAlso:[
        ],
        type:"type"
    },
    "type:EmbeddedPosition":{
        ref:"type:EmbeddedPosition",
        values:[
            {
                description:"component should be placed underneath normal record or cell content,        expanding the records.  Expanding records can result in variable height rows,\n        in which case ${isc.DocUtils.linkForRef('attr:ListGrid.virtualScrolling','virtualScrolling')} should be\n        enabled.",
                value:"\"expand\""
            },
            {
                description:"component should be placed within the normal area of the record or cell.        Percentage sizes will be treated as percentages of the record and\n        ${isc.DocUtils.linkForRef('attr:Canvas.snapTo')} positioning settings are also allowed and refer to the\n        rectangle of the record or cell. Note that for components embedded within cells,\n        cell align and vAlign will be used if snapTo is unset (so top / left alignment\n        of cell content will map to snapTo of \"TL\", etc).",
                value:"\"within\""
            }
        ],
        description:"How a component should be embedded within its record or cell",
        name:"EmbeddedPosition",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Slider.setTitle":{
        ref:"method:Slider.setTitle",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.title')} of the slider\n\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title for the slider",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:Canvas.canDrop":{
        ref:"attr:Canvas.canDrop",
        flags:"IRWA",
        description:"Indicates that this object can be dropped on top of other widgets. Only valid if\n canDrag or canDragReposition is true.",
        name:"canDrop",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragCreate')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DataSourceField.canExport":{
        ref:"attr:DataSourceField.canExport",
        flags:"IR",
        description:"Dictates whether the data in this field be exported.  Explicitly setting \n <i>canExport</i> to false overrides the setting on any component-fields, such\n as ${isc.DocUtils.linkForRef('attr:ListGridField.canExport','ListGrid fields')}.",
        name:"canExport",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:FormItem.pickerIconName":{
        ref:"attr:FormItem.pickerIconName",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','showPickerIcon')} is true, this attribute specifies the\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.name')} applied to the picker icon",
        name:"pickerIconName",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"\"picker\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:ColorPicker.modeToggleButton":{
        ref:"attr:ColorPicker.modeToggleButton",
        flags:"R",
        description:"\"More\"/\"Less\" button for the ColorPicker",
        name:"modeToggleButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:ListGrid.showEmptyMessage":{
        ref:"attr:ListGrid.showEmptyMessage",
        flags:"IRW",
        description:"Indicates whether the text of the emptyMessage property should be displayed if no data is\n available.",
        name:"showEmptyMessage",
        seeAlso:[
            {
                ref:"attr:ListGrid.emptyMessage",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('emptyGrid')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "emptyMessage"
        ]
    },
    "class:DSResponse":{
        methods:[
        ],
        ref:"class:DSResponse",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:DSResponse.clientContext",
            "attr:DSResponse.dataSource",
            "attr:DSResponse.operationType",
            "attr:DSResponse.data",
            "attr:DSResponse.status",
            "attr:DSResponse.queueStatus",
            "attr:DSResponse.errors",
            "attr:DSResponse.startRow",
            "attr:DSResponse.endRow",
            "attr:DSResponse.totalRows",
            "attr:DSResponse.invalidateCache",
            "attr:DSResponse.offlineTimestamp",
            "attr:DSResponse.fromOfflineCache",
            "attr:DSResponse.httpHeaders"
        ],
        description:"Response sent by the server in response to a ${isc.DocUtils.linkForRef('class:DSRequest','DataSource request')}.  Contains\n all the properties available on the basic ${isc.DocUtils.linkForRef('class:RPCResponse')}, in addition to the\n properties listed here.",
        name:"DSResponse",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"RPCResponse"
    },
    "method:ListGrid.applyCellData":{
        ref:"method:ListGrid.applyCellData",
        flags:"",
        description:" Applies a set of Records containing coordinate-based data as returned by\n ${isc.DocUtils.linkForRef('method:ListGrid.getSelectedCellData')} and applies the data at the current selection.\n <P>\n For consistency with Excel, given a record in the cellData, after the data value with the\n most negative column index is found, the rest of the values in the record are applied\n contiguously to the right of it, using the positional data for ordering only.\n <P>\n Will only modify cells in the grid which are editable, and changes will be applied\n as editValues, exactly as though the user had typed the values in (see\n ${isc.DocUtils.linkForRef('group:editing','Grid Editing Overview')}).\n <P>\n See also ${isc.DocUtils.linkForRef('method:ListGrid.applyRecordData')}.\n\n",
        name:"applyCellData",
        seeAlso:[
        ],
        params:[
            {
                description:"list of Records as described above",
                optional:false,
                name:"cellData",
                defaultValue:null,
                type:"RecordList"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TabSet.rightEdgeSizes":{
        ref:"attr:TabSet.rightEdgeSizes",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeSizes</code>, \n <code>rightEdgeSizes</code>, <code>topEdgeSizes</code> and <code>bottomEdgeSizes</code> \n properties allow the sizes of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge sizes where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"rightEdgeSizes",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:PickList.pickListTallBaseStyle":{
        ref:"attr:PickList.pickListTallBaseStyle",
        flags:"IR",
        description:"Optional ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle','tallBaseStyle')} for pickList cells. If unset,\n ${isc.DocUtils.linkForRef('attr:PickList.pickListBaseStyle')} will be applied to all cells.",
        name:"pickListTallBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:Layout.members":{
        ref:"attr:Layout.members",
        flags:"IRW",
        getter:[
            "getMembers"
        ],
        description:"An array of canvases that will be contained within this layout. You can set the\n following properties on these canvases (in addition to the standard component\n properties):\n <ul>\n  <li>${isc.DocUtils.linkForRef('attr:Canvas.layoutAlign','layoutAlign')} -- specifies the member's alignment along the\n      breadth axis; valid values are \"top\", \"center\" and \"bottom\" for a horizontal layout\n      and \"left\", \"center\" and \"right\" for a vertical layout (see\n      ${isc.DocUtils.linkForRef('attr:Layout.defaultLayoutAlign')} for default implementation.)\n  <li>${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar','showResizeBar')} -- set to true to show a resize bar\n      (default is false)\n </ul>\n Height and width settings found on members are interpreted by the Layout according to\n the ${isc.DocUtils.linkForRef('attr:Layout.vPolicy','layout policy')}.",
        name:"members",
        setter:[
            "setMembers"
        ],
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout"
    },
    "classAttr:Operators.iStartsWithTitle":{
        ref:"classAttr:Operators.iStartsWithTitle",
        flags:"IR",
        description:"Title for the \"iStartsWith\" operator",
        name:"iStartsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"starts with\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:UserSummary.summaryVars":{
        ref:"attr:UserSummary.summaryVars",
        flags:"IR",
        description:"Map from the all-capital letter names used as summary variables in the ${isc.DocUtils.linkForRef('object:UserSummary')}\n String to the fieldNames these variables should represent in the context where the\n summary is evaluated.",
        name:"summaryVars",
        seeAlso:[
        ],
        valueType:"Map",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:UserSummary"
    },
    "attr:Mail.bcc":{
        ref:"attr:Mail.bcc",
        flags:"IR",
        description:"Comma-separated list of \"BCC\" recipients.  Like all other <code>String</code> \n properties of <code>Mail</code>, you can use Velocity substitution variables in this property.\n <p>\n If you specify a \"Bcc:\" line in the body of your email, recipient addresses will be parsed \n and this property will be ignored.",
        name:"bcc",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "classAttr:RPCResponse.STATUS_LOGIN_REQUIRED":{
        ref:"classAttr:RPCResponse.STATUS_LOGIN_REQUIRED",
        flags:"R",
        description:"Indicates that a login is required before this RPCRequest can proceed.\n <P>\n Applications do not directly set this status code, instead, to trigger the relogin flow,\n return the loginRequiredMarker in the response sent by your server when login is\n required.  See the ${isc.DocUtils.linkForRef('group:relogin','Relogin Overview')} for details.",
        name:"STATUS_LOGIN_REQUIRED",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-7",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "method:Tree.getChildrenResultSet":{
        ref:"method:Tree.getChildrenResultSet",
        flags:"",
        description:" Returns a ResultSet that provides access to any partially-loaded children of a node.  If the\n node is a leaf, this method returns null.\n",
        name:"getChildrenResultSet",
        seeAlso:[
            {
                ref:"method:Tree.getChildren",
                description:null
            },
            {
                ref:"method:Tree.allChildrenLoaded",
                description:null
            }
        ],
        params:[
            {
                description:"The node whose children you want to fetch.",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"List of children for the node, including an empty ResultSet if the node has no children.  For a leaf, returns null.",
            type:"ResultSet"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:IMenuButton.showMenuBelow":{
        ref:"attr:IMenuButton.showMenuBelow",
        flags:"IRW",
        description:"The menu drops down below the menu button.\n\t\t\tSet to false if the menu should appear above the menu button.",
        name:"showMenuBelow",
        setter:[
            "setShowMenuBelow"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "class:FilterBuilder":{
        methods:[
            "method:FilterBuilder.removeClause",
            "method:FilterBuilder.setTopOperator",
            "method:FilterBuilder.setTopOperatorAppearance",
            "method:FilterBuilder.addClause",
            "method:FilterBuilder.getChildFilters",
            "method:FilterBuilder.getFilterDescription",
            "method:FilterBuilder.validate",
            "method:FilterBuilder.getFieldOperators",
            "method:FilterBuilder.getValueFieldProperties",
            "method:FilterBuilder.getCriteria",
            "method:FilterBuilder.setCriteria",
            "method:FilterBuilder.clearCriteria",
            "method:FilterBuilder.addCriterion",
            "method:FilterBuilder.getEditorType",
            "method:FilterBuilder.getSelectedClauses",
            "method:FilterBuilder.search",
            "method:FilterBuilder.filterChanged"
        ],
        ref:"class:FilterBuilder",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:FilterBuilder.getFilterDescription"
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:FilterBuilder.missingFieldPrompt",
            "attr:FilterBuilder.fieldDataSource",
            "attr:FilterBuilder.sortFields",
            "attr:FilterBuilder.fieldPicker",
            "attr:FilterBuilder.fieldPickerTitle",
            "attr:FilterBuilder.fieldPickerProperties",
            "attr:FilterBuilder.operatorPicker",
            "attr:FilterBuilder.operatorPickerProperties",
            "attr:FilterBuilder.operatorPickerTitle",
            "attr:FilterBuilder.fieldPickerWidth",
            "attr:FilterBuilder.operatorPickerWidth",
            "attr:FilterBuilder.valueItemWidth",
            "attr:FilterBuilder.dataSource",
            "attr:FilterBuilder.criteria",
            "attr:FilterBuilder.saveOnEnter",
            "attr:FilterBuilder.showFieldTitles",
            "attr:FilterBuilder.validateOnChange",
            "attr:FilterBuilder.showRemoveButton",
            "attr:FilterBuilder.removeButtonPrompt",
            "attr:FilterBuilder.removeButton",
            "attr:FilterBuilder.showAddButton",
            "attr:FilterBuilder.addButtonPrompt",
            "attr:FilterBuilder.addButton",
            "attr:FilterBuilder.allowEmpty",
            "attr:FilterBuilder.retainValuesAcrossFields",
            "attr:FilterBuilder.topOperatorOptions",
            "attr:FilterBuilder.topOperator",
            "attr:FilterBuilder.radioOptions",
            "attr:FilterBuilder.topOperatorAppearance",
            "attr:FilterBuilder.radioOperatorLayout",
            "attr:FilterBuilder.radioOperatorForm",
            "attr:FilterBuilder.modeSwitcher",
            "attr:FilterBuilder.radioOperatorTitle",
            "attr:FilterBuilder.showSelectionCheckbox",
            "attr:FilterBuilder.topOperatorForm",
            "attr:FilterBuilder.topOperatorItem",
            "attr:FilterBuilder.topOperatorItemWidth",
            "attr:FilterBuilder.topOperatorTitle",
            "attr:FilterBuilder.defaultSubClauseOperator",
            "attr:FilterBuilder.matchAllTitle",
            "attr:FilterBuilder.matchNoneTitle",
            "attr:FilterBuilder.matchAnyTitle",
            "attr:FilterBuilder.inlineAndTitle",
            "attr:FilterBuilder.inlineOrTitle",
            "attr:FilterBuilder.inlineAndNotTitle",
            "attr:FilterBuilder.modeSwitcherAdvancedMessage",
            "attr:FilterBuilder.modeSwitcherSimpleMessage",
            "attr:FilterBuilder.modeSwitcherFlattenWarningMessage",
            "attr:FilterBuilder.showModeSwitcher",
            "attr:FilterBuilder.clauseStack",
            "attr:FilterBuilder.rangeSeparator",
            "attr:FilterBuilder.showSubClauseButton",
            "attr:FilterBuilder.subClauseButtonTitle",
            "attr:FilterBuilder.subClauseButtonPrompt",
            "attr:FilterBuilder.subClauseButton",
            "attr:FilterBuilder.bracket"
        ],
        description:"A form that allows the user to input advanced search criteria, including operators on\n field values such as \"less than\", and sub-clauses using \"AND\" and \"OR\" operators.\n <P>\n A FilterBuilder produces an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object, which the ${isc.DocUtils.linkForRef('class:DataSource')}\n subsystem can use to filter datasets, including the ability to perform such filtering within\n the browser for datasets that are completely loaded.\n <P>\n The operators available for each field can be customized at the DataSource level via\n ${isc.DocUtils.linkForRef('attr:DataSourceField.validOperators')}, ${isc.DocUtils.linkForRef('method:DataSource.setTypeOperators')} and related\n APIs.",
        name:"FilterBuilder",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:RPCManager.queueSent":{
        ref:"classMethod:RPCManager.queueSent",
        flags:"",
        description:"\n This method is called by the RPCManager every time it sends a queue of requests to the\n server (note that if you are not using queuing, the system simply sends queues\n containing just one request, so this API is valid regardless).<p>\n There is no default implementation of this method; it is simply an override point.  \n It is intended to be used by user code that needs to be notified when SmartClient sends \n requests to the server.  Note that the list of ${isc.DocUtils.linkForRef('class:RPCRequest')}s passed to this\n method is strictly <b>read-only</b>.\n\n",
        name:"queueSent",
        seeAlso:[
        ],
        params:[
            {
                description:"The queue of ${isc.DocUtils.linkForRef('class:RPCRequest')}s that was sent",
                optional:false,
                name:"requests",
                defaultValue:null,
                type:"List of RPCRequest"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "classMethod:Class.setLogPriority":{
        ref:"classMethod:Class.setLogPriority",
        flags:"",
        description:" Set the priority of messages that will be visible for some log category, when logged on\n this Class or Instance object.<br>\n If called with no category, this priority will be applied to every logged message on this\n object<br>\n To set the visible log priority for some category across the entire page, use\n <code>isc.Log.setPriority()</code> instead.\n",
        name:"setLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category for which the log priority will be updated. If not                          all logs on this canvas will be logged at the priority passed in.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"string"
            },
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:TimeItem.showSecondItem":{
        ref:"attr:TimeItem.showSecondItem",
        flags:"IRW",
        description:"Controls whether to display the ${isc.DocUtils.linkForRef('attr:TimeItem.secondItem')} when ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is false.",
        name:"showSecondItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:FacetChart.chartType":{
        ref:"attr:FacetChart.chartType",
        flags:"IRW",
        description:"See ${isc.DocUtils.linkForRef('type:ChartType')} for a list of known types - Column, Bar, Line, Pie, Doughnut,\n Area, and Radar charts are supported.",
        name:"chartType",
        setter:[
            "setChartType"
        ],
        seeAlso:[
        ],
        valueType:"ChartType",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classAttr:EventHandler.STOP_BUBBLING":{
        ref:"classAttr:EventHandler.STOP_BUBBLING",
        flags:"IRA",
        description:"Return this constant from a child event to stop the event propagating to its parent,\n without suppressing any native browser handling associated with the event.\n Developers should not need to modify this value - it should be treated as read-only\n in most circumstances.",
        name:"STOP_BUBBLING",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"***STOP***\"",
        type:"classAttr",
        definingClass:"class:EventHandler"
    },
    "method:Date.getDayName":{
        ref:"method:Date.getDayName",
        flags:"",
        description:" Return the full day of week name for this date (Monday, Tuesday, etc).\n To modify the value returned by this method, set ${isc.DocUtils.linkForRef('classAttr:Date.dayNames')}\n\n",
        name:"getDayName",
        seeAlso:[
        ],
        returns:{
            description:"Day name",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "class:DrawSector":{
        methods:[
            "method:DrawSector.getBoundingBox",
            "method:DrawSector.getCenter",
            "method:DrawSector.getArcMidpoint",
            "method:DrawSector.setCenterPoint",
            "method:DrawSector.moveTo",
            "method:DrawSector.moveBy"
        ],
        ref:"class:DrawSector",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:DrawSector.getArcMidpoint"
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawSector.knobs",
            "attr:DrawSector.rotation",
            "attr:DrawSector.centerPoint",
            "attr:DrawSector.startAngle",
            "attr:DrawSector.endAngle",
            "attr:DrawSector.radius"
        ],
        description:"DrawItem subclass to render Pie Slices.",
        name:"DrawSector",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "attr:TileLayout.dragDataAction":{
        ref:"attr:TileLayout.dragDataAction",
        flags:"IRW",
        description:"Indicates what to do with data dragged into another DataBoundComponent. See\n          DragDataAction type for details.",
        name:"dragDataAction",
        seeAlso:[
        ],
        valueType:"DragDataAction",
        defaultValue:"Canvas.MOVE",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridsDragMove')}",
            "${isc.DocUtils.linkForExampleId('gridsDragCopy')}"
        ],
        definingClass:"class:TileLayout",
        groups:[
            "dragging"
        ]
    },
    "method:ComboBoxItem.shouldGenerateExactMatchCriteria":{
        ref:"method:ComboBoxItem.shouldGenerateExactMatchCriteria",
        flags:"A",
        description:" When a comboBoxItem is used to generate search criteria in a SearchForm, \n if the user explicitly chose an option from the pickList, should the criterion generated\n by <smartclient>${isc.DocUtils.linkForRef('method:ComboBoxItem.getCriterion')}</smartclient>\n <smartgwt>the <code>FormItemCriterionGetter</code>'s <code>getCriterion()</code> method</smartgwt>\n enforce a search for an exact match against the chosen value?\n <P>\n In order to achieve this, when this property is set to true, this item will generate\n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} in <smartclient>its ${isc.DocUtils.linkForRef('method:ComboBoxItem.getCriterion')}</smartclient>\n <smartgwt>the default <code>FormItemCriterionGetter</code>'s <code>getCriterion()</code></smartgwt>\n method.\n <P>\n Default implementation will return ${isc.DocUtils.linkForRef('attr:ComboBoxItem.generateExactMatchCriteria')} if specified, otherwise\n true if the DataSource for this item \n ${isc.DocUtils.linkForRef('method:DataSource.supportsAdvancedCriteria','supports advanced criteria')}, false if it\n does not.\n",
        name:"shouldGenerateExactMatchCriteria",
        seeAlso:[
        ],
        returns:{
            description:"should getCriterion() generate exact-match search criteria when   a value was explicitly chosen from this item's set of options?",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "attr:DrawLabel.rotation":{
        ref:"attr:DrawLabel.rotation",
        flags:"IR",
        description:"Rotation in degrees. The positive direction is clockwise.\n <p>\n <b>NOTE:</b> In Internet Explorer 8 and earlier, only rotation by 0 or 90 degrees is supported.",
        name:"rotation",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.0",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "attr:DataBoundComponent.hiliteIconPosition":{
        ref:"attr:DataBoundComponent.hiliteIconPosition",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons','hiliteIcons')} are present, where the hilite icon will be placed \n relative to the field value.  See ${isc.DocUtils.linkForRef('type:HiliteIconPosition')}. Can be overriden at the\n field level.",
        name:"hiliteIconPosition",
        seeAlso:[
        ],
        valueType:"HiliteIconPosition",
        defaultValue:"\"before\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListGridField.canReorder":{
        ref:"attr:ListGridField.canReorder",
        flags:"IR",
        description:"Whether this field can be reordered using the mouse.  If unset, the default behavior is\n governed by ${isc.DocUtils.linkForRef('attr:ListGrid.canReorderFields')}.  Note that setting this property to\n <code>false</code> will lock this field from being moved - that is, the user is\n prevented from moving this field directly by dragging with the mouse, or by dropping another\n field onto this field.  However, unless this field is at the extreme edge of the grid,\n or all fields between it and the extreme edge of the grid are also\n <code>canReorder: false</code>, (ie, if there are unlocked fields on either side of this\n field), then it is possible that this locked field may be\n reordered automatically, as a result of the user dragging one unlocked field onto another\n unlocked field.",
        name:"canReorder",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:Calendar.data":{
        ref:"attr:Calendar.data",
        flags:"IRW",
        description:"A List of CalendarEvent objects, specifying the data to be used to populate the\n calendar.  \n <p>\n This property will typically not be explicitly specified for databound Calendars, where\n the data is returned from the server via databound component methods such as\n ${isc.DocUtils.linkForRef('method:Calendar.fetchData')}. In this case the data objects will be set to a \n ${isc.DocUtils.linkForRef('class:ResultSet','resultSet')} rather than a simple array.",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"Array[] of CalendarEvent",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "data"
        ]
    },
    "object:DateRange":{
        methods:[
        ],
        ref:"object:DateRange",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:DateRange.start",
            "attr:DateRange.end"
        ],
        description:"A JavaScript object specifying a range of dates.  Values are ${isc.DocUtils.linkForRef('attr:DateRange.start','start')}\n and ${isc.DocUtils.linkForRef('attr:DateRange.end','end')}.  If either value is omitted, the range is assumed to be\n open-ended in that direction - so if dateRange.start is omitted, the range will include any\n date earlier than the value specified in dateRange.end.",
        name:"DateRange",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:WSRequest.data":{
        ref:"attr:WSRequest.data",
        flags:"IR",
        description:"Data to be serialized to XML to form the SOAP body.",
        name:"data",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:WSRequest"
    },
    "type:Encoding":{
        ref:"type:Encoding",
        values:[
            {
                description:"normal form encoding (\"application/x-www-form-urlencoded\")",
                value:"DynamicForm.NORMAL"
            },
            {
                description:"form encoding for forms with INPUT file elements, that is, forms                              that upload files (\"multipart/form-data\")",
                value:"DynamicForm.MULTIPART"
            }
        ],
        description:"Form encoding types - these translate to Form ENCTYPE parameters.",
        name:"Encoding",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "submitting"
        ]
    },
    "method:ListGrid.getRowErrors":{
        ref:"method:ListGrid.getRowErrors",
        flags:"",
        description:"  Returns any currently stored validation errors for this row in the following format:<br>\n  &nbsp;&nbsp;<code>{fieldName:[array of error messages], ...}</code>\n",
        name:"getRowErrors",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellErrors",
                description:null
            }
        ],
        params:[
            {
                description:"index of row to check for validation errors.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"object showing validation error arrays by field for the row passed in                      - if no validation errors stored for the row, null is returned.",
            type:"object"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "method:Class.setDefaultLogPriority":{
        ref:"method:Class.setDefaultLogPriority",
        flags:"",
        description:" Set the default priority of logging for messages logged on this Class or Instance object.\n All categories for which there is no explicit, instance level logging priority set will\n log at this level on this object.<br>  \n To set the default visible log priority across the entire page, use\n <code>isc.Log.setDefaultPriority()</code> instead.\n",
        name:"setDefaultLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category for which the log priority will be updated. If not                          all logs on this canvas will be logged at the priority passed in.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"string"
            },
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "method:PickList.getValueFieldName":{
        ref:"method:PickList.getValueFieldName",
        flags:"",
        description:" Getter method to retrieve the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item.\n If unset, default behavior will return the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this field.\n",
        name:"getValueFieldName",
        seeAlso:[
        ],
        returns:{
            description:"fieldName to use a \"value field\" in records from this items               ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}",
            type:"string"
        },
        type:"method",
        definingClass:"interface:PickList",
        groups:[
            "display_values"
        ]
    },
    "attr:PrintProperties.includeControls":{
        ref:"attr:PrintProperties.includeControls",
        flags:"IR",
        description:"An array of Strings indicating the classNames of controls that should be specifically\n included when printing, even if a superclass is listed in ${isc.DocUtils.linkForRef('attr:PrintProperties.omitControls')}.",
        name:"includeControls",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PrintProperties",
        groups:[
            "printing"
        ]
    },
    "attr:ListGrid.scrollWheelRedrawDelay":{
        ref:"attr:ListGrid.scrollWheelRedrawDelay",
        flags:"IRW",
        description:"While scrolling an incrementally rendered grid, using the mouseWheel, time in\n milliseconds to wait before redrawing, after the last mouseWheel movement by the user.\n If not specified ${isc.DocUtils.linkForRef('attr:ListGrid.scrollRedrawDelay')} will be used as a default for both\n drag scrolling and mouseWheel scrolling.\n <P>\n Note that if specified, this value will typically be larger than\n ${isc.DocUtils.linkForRef('attr:ListGrid.scrollRedrawDelay')}. From experimentation, the default setting of\n <code>250</code> is typically enough time for a user to rapidly scroll through a\n grid (rotating the scroll wheel with repeated flicks), without redrawing between\n rotations, but this will differ depending on how long the redraw takes. A larger\n delay may be warranted for grids with large numbers of columns, heavy custom\n formatting, etc.\n <P>\n See also\n ${isc.DocUtils.linkForRef('attr:GridRenderer.instantScrollTrackRedraw')} for cases where this delay is skipped.",
        name:"scrollWheelRedrawDelay",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"250",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "method:DynamicForm.setAction":{
        ref:"method:DynamicForm.setAction",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:DynamicForm.action','action')} for this form.\n",
        name:"setAction",
        seeAlso:[
        ],
        params:[
            {
                description:"New action URL",
                optional:false,
                name:"action",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "method:ListGrid.chartColumn":{
        ref:"method:ListGrid.chartColumn",
        flags:"",
        description:" Chart a single column of data, with each cell value labeled by a value from another\n column.\n\n",
        name:"chartColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the ListGridField to use as a data",
                optional:false,
                name:"dataColumn",
                defaultValue:null,
                type:"String"
            },
            {
                description:"name of the ListGridField to use as labels for data",
                optional:false,
                name:"labelColumn",
                defaultValue:null,
                type:"String"
            },
            {
                description:"properties to pass to the created chart",
                optional:true,
                name:"chartProperties",
                defaultValue:null,
                type:"Chart Properties"
            }
        ],
        returns:{
            description:"created Chart instance",
            type:"Chart"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Canvas.depeer":{
        ref:"method:Canvas.depeer",
        flags:"",
        description:" Make this Canvas no longer a peer of its master\n",
        name:"depeer",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "method:Number.stringify":{
        deprecated:"Moved to a static method on NumberUtil to avoid the possibility of collision               with other libraries on the native Number object",
        flags:"",
        params:[
            {
                description:"Number of digits to pad to.  (Default is 2)",
                optional:true,
                name:"digits",
                defaultValue:"2",
                type:"number"
            }
        ],
        type:"method",
        ref:"method:Number.stringify",
        description:"\n Return this number as a string padded out to digits length.\n\n",
        name:"stringify",
        seeAlso:[
        ],
        returns:{
            description:"Padded string version of the number",
            type:"string"
        },
        examples:[
            "var str = myNumberVar.stringify(2);"
        ],
        groups:[
            "stringProcessing"
        ],
        definingClass:"object:Number"
    },
    "attr:TabSet.closeTabIconSize":{
        ref:"attr:TabSet.closeTabIconSize",
        flags:"IR",
        description:"Size in pixels of the icon for closing tabs, displayed when ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')} is true.",
        name:"closeTabIconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:Img.setSrc":{
        ref:"method:Img.setSrc",
        flags:"",
        description:" Changes the URL of this image and redraws it.\n <P>\n Does nothing if the src has not changed - if <code>src</code> has not changed but other\n state has changed such that the image needs updating, call ${isc.DocUtils.linkForRef('method:Img.resetSrc')} instead.\n\n",
        name:"setSrc",
        seeAlso:[
        ],
        params:[
            {
                description:"new URL for the image",
                optional:false,
                name:"URL",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('loadImages')}"
        ],
        definingClass:"class:Img",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSourceField.multipleStorage":{
        ref:"attr:DataSourceField.multipleStorage",
        flags:"IR",
        description:"How values for a ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple:true')} field should be stored.\n <p>\n On the server, field values for <code>multiple:true</code> fields are represented as Java\n Lists in DSRequest and DSResponse objects, but when <code>multipleStorage</code> is used,\n are ultimately stored as Strings.  \n <p>\n This storage mechanism is \"denormalized\" in the sense of\n <a href='http://en.wikipedia.org/wiki/Database_normalization' target='_blank'>database normalization</a>\n because the field contains a compound value rather than an atomic value.  Specifically, this\n makes the field harder to use with database features like SQL joins, since its value cannot\n be directly compared to other, singular fields.  For this reason, there's really only a\n narrow set of cases where it makes sense to use this storage mechanism, consider it if:\n <ul>\n <li> the values don't appear in any other tables or columns elsewhere in your database (so\n      joins and other comparisons wouldn't be possible anyway)\n <li> there is no authoritative list of all possible values, or even of popular values; it's\n      basically freeform, like arbitrary, uncurated \"tags\" applied to photos or links\n </ul>\n <p>\n A <code>multiple:true</code> field can be of any ${isc.DocUtils.linkForRef('class:SimpleType')}, including \"date\",\n \"time\", \"datetime\", \"float\", \"int\" etc.  Type will be preserved across a store and reload\n cycle, so for example a List of values for a field of type \"int\" will arrive at the server\n in a DSRequest as a List of Integer, be stored as a String, but appear again as a List of\n Integer inside a DSResponse.  When storing \"date\", \"time\" or \"datetime\" values as Strings,\n XML schema formats are used - the same that are used for transmission in XML or JSON (see\n ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','Date and Time Format and Storage overview')} for details).\n <p>\n The <code>multipleStorage</code> feature works by transforming from List to String and back\n inside the server-side DataSource.execute() method.  Specifically, inbound DSRequests are\n transformed before methods that perform actual storage are called (executeUpdate() et al),\n and DSResponses received from these methods have <code>multiple:true</code> field values\n transformed back into Lists before DataSource.execute() returns the DSResponse.\n <p>\n This transformation approach means that the built-in SQL, JPA and Hibernate connectors all\n support <code>multipleStorage</code>, and <code>multipleStorage</code> is also automatically\n available for any custom DataSource that is capable of storing String values, and implements\n its storage methods via overrides of executeUpdate(), executeAdd() et al as described in the\n ${isc.DocUtils.linkForRef('group:writeCustomDataSource','custom DataSource overview')}.\n <p>\n Note that when using the built-in SQL, JPA and Hibernate connectors, the underlying SQL\n column should be of 'text' type.  The ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')} will\n automatically generate columns of the correct type for a SQLDataSource.  For JPA or\n Hibernate DataSources, just ensure the type of the Java bean property on your Java object is\n String.\n <p>\n The default <code>multipleStorage</code> setting of null means that the \"simpleString\"\n ${isc.DocUtils.linkForRef('type:MultipleFieldStorage')} approach will be used if:\n <ul>\n <li> the field is of a known ${isc.DocUtils.linkForRef('class:SimpleType')}\n <li> the field is not a ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')}\n </ul>\n Otherwise, ${isc.DocUtils.linkForRef('type:MultipleFieldStorage')} \"none\" will be used.\n <p>\n <h4>Criteria and AdvancedCriteria handling</h4>\n <p>\n For the built-in SQL, JPA and Hibernate connectors, when\n <code>multipleStorage</code>:\"simpleString\" or \"json\" is used, criteria are transformed to\n replicate the client-side filtering behavior for multiple:true fields, where possible.\n The following operators are supported with the same behavior as client-side filtering:\n <ul>\n <li> all String-oriented operators including matchesPattern, but not regexp/iRegexp\n <li> isNull / isNotNull\n <li> inSet / notInSet\n <li> equalsField / notEqualsField / iEqualsField / iNotEqualsField\n </ul>\n The following operators, which are supported for client-side filtering of multiple:true\n fields, are not supported for server filtering when using <code>multipleStorage</code>:\n <ul>\n <li> greaterThan/lessThan(OrEqual)\n <li> \"between\" and all other operators with ${isc.DocUtils.linkForRef('type:OperatorValueType')} of \"valueRange\" \n <li> regexp / iRegexp as noted above\n </ul>\n Note that for string-based filtering operators such as \"equals\", no characters which are\n part of the ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorageSeparator')} may be used in the filter string.  If any\n characters from the <code>multipleStorageSeparator</code> are present in the filter value,\n it will always fail to match.  For \"json\" mode, the <code>multipleStorageSeparator</code> is\n effectively the String '\",\"'.",
        name:"multipleStorage",
        seeAlso:[
        ],
        valueType:"MultipleFieldStorage",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "multipleField"
        ]
    },
    "type:OperatorId":{
        ref:"type:OperatorId",
        values:[
            {
                description:"exactly equal to",
                value:"\"equals\""
            },
            {
                description:"not equal to",
                value:"\"notEqual\""
            },
            {
                description:"exactly equal to, if case is disregarded",
                value:"\"iEquals\""
            },
            {
                description:"not equal to, if case is disregarded",
                value:"\"iNotEqual\""
            },
            {
                description:"Greater than",
                value:"\"greaterThan\""
            },
            {
                description:"Less than",
                value:"\"lessThan\""
            },
            {
                description:"Greater than or equal to",
                value:"\"greaterOrEqual\""
            },
            {
                description:"Less than or equal to",
                value:"\"lessOrEqual\""
            },
            {
                description:"Contains as sub-string (match case)",
                value:"\"contains\""
            },
            {
                description:"Starts with (match case)",
                value:"\"startsWith\""
            },
            {
                description:"Ends with (match case)",
                value:"\"endsWith\""
            },
            {
                description:"Contains as sub-string (case insensitive)",
                value:"\"iContains\""
            },
            {
                description:"Starts with (case insensitive)",
                value:"\"iStartsWith\""
            },
            {
                description:"Ends with (case insensitive)",
                value:"\"iEndsWith\""
            },
            {
                description:"Does not contain as sub-string (match case)",
                value:"\"notContains\""
            },
            {
                description:"Does not start with (match case)",
                value:"\"notStartsWith\""
            },
            {
                description:"Does not end with (match case)",
                value:"\"notEndsWith\""
            },
            {
                description:"Does not contain as sub-string (case insensitive)",
                value:"\"iNotContains\""
            },
            {
                description:"Does not start with (case insensitive)",
                value:"\"iNotStartsWith\""
            },
            {
                description:"Does not end with (case insensitive)",
                value:"\"iNotEndsWith\""
            },
            {
                description:"shortcut for \"greaterThan\" + \"and\" + \"lessThan\" (case insensitive)",
                value:"\"iBetween\""
            },
            {
                description:"shortcut for \"greaterOrEqual\" + \"and\" + \"lessOrEqual\" (case insensitive)",
                value:"\"iBetweenInclusive\""
            },
            {
                description:"Basic GLOB matching using wildcards        (see ${isc.DocUtils.linkForRef('attr:DataSource.translatePatternOperators')} for more information on available patterns)",
                value:"\"matchesPattern\""
            },
            {
                description:"Basic GLOB matching using wildcards (case insensitive)        (see ${isc.DocUtils.linkForRef('attr:DataSource.translatePatternOperators')} for more information on available patterns)",
                value:"\"iMatchesPattern\""
            },
            {
                description:"GLOB matching using wildcards. Value is considered to meet the        criterion if it contains the pattern. See ${isc.DocUtils.linkForRef('attr:DataSource.translatePatternOperators')}\n        for more information on available patterns)",
                value:"\"containsPattern\""
            },
            {
                description:"GLOB matching using wildcards. Value is considered to meet the        criterion if it contains the pattern. Matching is case insensitive. See\n        ${isc.DocUtils.linkForRef('attr:DataSource.translatePatternOperators')} for more information on available patterns)",
                value:"\"iContainsPattern\""
            },
            {
                description:"Regular expression match",
                value:"\"regexp\""
            },
            {
                description:"Regular expression match (case insensitive)",
                value:"\"iregexp\""
            },
            {
                description:"value is null",
                value:"\"isNull\""
            },
            {
                description:"value is non-null.  Note empty string (\"\") is non-null",
                value:"\"notNull\""
            },
            {
                description:"value is in a set of values.  Specify criterion.value as an Array",
                value:"\"inSet\""
            },
            {
                description:"value is not in a set of values.  Specify criterion.value as an Array",
                value:"\"notInSet\""
            },
            {
                description:"matches another field (match case, specify fieldName as criterion.value)",
                value:"\"equalsField\""
            },
            {
                description:"does not match another field (match case, specify fieldName as criterion.value)",
                value:"\"notEqualField\""
            },
            {
                description:"matches another field (case insensitive, specify fieldName as criterion.value)",
                value:"\"iEqualsField\""
            },
            {
                description:"does not match another field (case insensitive, specify fieldName as criterion.value)",
                value:"\"iNotEqualField\""
            },
            {
                description:"Greater than another field (specify fieldName as criterion.value)",
                value:"\"greaterThanField\""
            },
            {
                description:"Less than another field (specify fieldName as criterion.value)",
                value:"\"lessThanField\""
            },
            {
                description:"Greater than or equal to another field        (specify fieldName as criterion.value)",
                value:"\"greaterOrEqualField\""
            },
            {
                description:"Less than or equal to another field        (specify fieldName as criterion.value)",
                value:"\"lessOrEqualField\""
            },
            {
                description:"Contains as sub-string (match case) another field value        (specify fieldName as criterion.value)",
                value:"\"containsField\""
            },
            {
                description:"Starts with (match case) another field value        (specify fieldName as criterion.value)",
                value:"\"startsWithField\""
            },
            {
                description:"Ends with (match case) another field value        (specify fieldName as criterion.value)",
                value:"\"endsWithField\""
            },
            {
                description:"Contains as sub-string (case insensitive) another field value        (specify fieldName as criterion.value)",
                value:"\"iContainsField\""
            },
            {
                description:"Starts with (case insensitive) another field value        (specify fieldName as criterion.value)",
                value:"\"iStartsWithField\""
            },
            {
                description:"Ends with (case insensitive) another field value        (specify fieldName as criterion.value)",
                value:"\"iEndsWithField\""
            },
            {
                description:"Does not contain as sub-string (match case) another field value        (specify fieldName as criterion.value)",
                value:"\"notContainsField\""
            },
            {
                description:"Does not start with (match case) another field value        (specify fieldName as criterion.value)",
                value:"\"notStartsWithField\""
            },
            {
                description:"Does not end with (match case) another field value        (specify fieldName as criterion.value)",
                value:"\"notEndsWithField\""
            },
            {
                description:"Does not contain as sub-string (case insensitive) another field value        (specify fieldName as criterion.value)",
                value:"\"iNotContainsField\""
            },
            {
                description:"Does not start with (case insensitive) another field value        (specify fieldName as criterion.value)",
                value:"\"iNotStartsWithField\""
            },
            {
                description:"Does not end with (case insensitive) another field value        (specify fieldName as criterion.value)",
                value:"\"iNotEndsWithField\""
            },
            {
                description:"all subcriteria (criterion.criteria) are true",
                value:"\"and\""
            },
            {
                description:"all subcriteria (criterion.criteria) are false",
                value:"\"not\""
            },
            {
                description:"at least one subcriteria (criterion.criteria) is true",
                value:"\"or\""
            },
            {
                description:"shortcut for \"greaterThan\" + \"lessThan\" + \"and\".  Specify criterion.start         and criterion.end",
                value:"\"between\""
            },
            {
                description:"shortcut for \"greaterOrEqual\" + \"lessOrEqual\" + \"and\".  Specify         criterion.start and criterion.end",
                value:"\"betweenInclusive\""
            }
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        description:"An operator is used as part of a ${isc.DocUtils.linkForRef('object:Criterion')} when specifying ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}.\n <P>\n This list of operators indicates the set of operators built into SmartClient DataSources,\n which can be used for both client and server-side filtering.   You can extend the list of\n operators with ${isc.DocUtils.linkForRef('method:DataSource.addSearchOperator')}.",
        name:"OperatorId",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:DataBoundComponent.addFormulaFieldText":{
        ref:"attr:DataBoundComponent.addFormulaFieldText",
        flags:"IRW",
        description:"Text for a menu item allowing users to add a formula field",
        name:"addFormulaFieldText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add formula column...\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.align":{
        ref:"attr:FormItem.align",
        flags:"IRW",
        description:"Alignment of this item in its cell. Note that the alignment of content within this item\n is controlled separately via ${isc.DocUtils.linkForRef('attr:FormItem.textAlign')} (typically only applies to items\n showing a \"textBox\", such as a ${isc.DocUtils.linkForRef('class:TextItem')} or ${isc.DocUtils.linkForRef('class:SelectItem')}, as well as\n text-only form item types such as ${isc.DocUtils.linkForRef('class:StaticTextItem')} and ${isc.DocUtils.linkForRef('class:HeaderItem')}).",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "class:AutoTest":{
        methods:[
        ],
        ref:"class:AutoTest",
        classAttrs:[
            "classAttr:AutoTest.implicitNetworkWait",
            "classAttr:AutoTest.testRoot"
        ],
        classMethods:[
            "classMethod:AutoTest.getLocator",
            "classMethod:AutoTest.locateCanvasFromDOMElement",
            "classMethod:AutoTest.getElement",
            "classMethod:AutoTest.getObject",
            "classMethod:AutoTest.getValue",
            "classMethod:AutoTest.getPageCoords",
            "classMethod:AutoTest.setTestRoot",
            "classMethod:AutoTest.isElementClickable",
            "classMethod:AutoTest.isGridDone",
            "classMethod:AutoTest.isSystemDone"
        ],
        treeLocation:[
            "Concepts/Automated Testing"
        ],
        attrs:[
        ],
        description:"Standalone class providing a general interface for integration with Automated Testing Tools\n <p>\n <smartclient>\n For automated testing tools we need a way to create string identifiers for DOM elements such that \n when a page is reloaded, we can retrieve a functionally equivalent DOM element. We call these\n ${isc.DocUtils.linkForRef('type:AutoTestLocator','autoTestLocators')}.\n <p>\n This allows automated testing tools to set up or record user generated events on DOM elements\n then play them back on page reload and have our components react correctly.\n <P>\n The primary APIs for the AutoTest subsystem are ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')} and \n ${isc.DocUtils.linkForRef('classMethod:AutoTest.getElement')}.\n <P>\n Implementation considerations:\n <ul>\n <li> Some components react to the structure of DOM elements embedded within them - for example\n   GridRenderer cells have meaning to the grid. So in some cases we need to identify elements\n   within a component, while in others we can just return a pointer to a handle (A simple\n   canvas click handler doesn't care about what native DOM element within the  handle received\n   the click).\n\n <li>When a DOM element is contained by a component, it is not sufficient to store the component\n   ID. Most SmartClient components are auto-generated by their parents, and rather than \n   attempting to store a specific component identifier we should instead store the\n   \"logical function\" of the component.<br>\n   For example a listGrid header button may have a different auto-generated ID across page\n   reloads due to various timing-related issues (which can change the order of of widget\n   creation), loading a new skin, or otherwise trivial changes to an application.<br>\n   Rather than storing the header button ID therefore, we want to store this as\n   a string meaning \"The header button representing field X within this list grid\".\n\n <li>fallback strategies: In some cases a component or DOM element can be identified in \n   several ways. For example a cell in a ListGrid can be identified by simple row and\n   column index, but also by fieldName and record primary key value. In these cases we\n   attempt to record information for multiple locator strategies and then when parsing\n   stored values we can provide APIs to govern which strategy is preferred. See the\n   ${isc.DocUtils.linkForRef('type:LocatorStrategy')} documentation for more on this.\n </ul>\n \n In order to address these concerns the AutoTest locator pattern is similar to an\n XPath type structure, containing a root component identifier, followed by \n details of sub-components and then potentially details used to identify an element within\n the components handle in the DOM.\n <br>\n The actual implementation covers a large number of common cases, including (but not limited to)\n the following. Note that for cases where an element is being identified from a pool of\n possible candidates, such as the ${isc.DocUtils.linkForRef('attr:Canvas.children')} array, we usually will use\n ${isc.DocUtils.linkForRef('type:LocatorStrategy','fallback locator paths')} rather than simply relying on index:\n <ul><li>Root level components identified by explicit ID</li>\n     <li>Any ${isc.DocUtils.linkForRef('type:AutoChild','autoChildren')}</li>\n     <li>Standard component parts such as scrollbars, edges, shadows, etc</li>\n     <li>Section stack items and headers</li>\n     <li>Window items</li>\n     <li>ListGrid headers and cells</li>\n     <li>TreeGrid headers and cells, including interactive open icon, checkbox icons</li>\n     <li>DynamicForm form items, including details of elements within those items</li>\n </ul>\n </smartclient>",
        name:"AutoTest",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "autoTest"
        ]
    },
    "method:FormItem.change":{
        ref:"method:FormItem.change",
        flags:"",
        description:" Called when a FormItem's value is about to change as the result of user interaction.  This\n method fires after the user performed an action that would change the value of this field,\n but before the element itself is changed.  \n <P>\n Returning false cancels the change.  Note that if what you want to do is\n <b>transform</b> the user's input, for example, automatically change separator\n characters to a standard separator character, you should implement\n ${isc.DocUtils.linkForRef('method:FormItem.transformInput','transformInput')} rather than using a combination of\n change() and setValue() to accomplish the same thing.  Returning false from\n <code>change</code> is intended for rejecting input entirely, such as typing invalid\n characters.\n <p>\n Note that if you ask the form for the current value in this handler, you will get the old\n value because the change has not yet been committed.  The new value is available as a\n parameter to this method.\n\n",
        name:"change",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"The new value of the form item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"The previous value of the form item",
                optional:false,
                name:"oldValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"In your handler, return false to cancel the change, true to allow the change",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('fieldEnableDisable')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "method:Date.getWeek":{
        ref:"method:Date.getWeek",
        flags:"",
        description:" Returns an integer containing the week number\n",
        name:"getWeek",
        seeAlso:[
        ],
        returns:{
            description:"week number, starting with 1",
            type:"int"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:ListGrid.headerHoverOpacity":{
        ref:"attr:ListGrid.headerHoverOpacity",
        flags:"IRW",
        description:"This property may be set to customize the opacity for the\n hover shown on ${isc.DocUtils.linkForRef('method:ListGrid.headerHover')}.",
        name:"headerHoverOpacity",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:Dialog.closeClick":{
        ref:"method:Dialog.closeClick",
        flags:"",
        description:" Handles a click on the close button of this window. The default implementation\n calls ${isc.DocUtils.linkForRef('method:Window.close','close()')} and returns false to prevent bubbling of the click event.\n <P>\n <smartclient>Override this method if you want\n other actions to be taken.</smartclient>\n <smartgwt>Developers may use <code>addCloseClickHandler()</code> to provide custom\n handling when the user clicks this button.</smartgwt>\n Custom implementations may call <code>close()</code> to trigger the default behavior.\n",
        name:"closeClick",
        seeAlso:[
        ],
        returns:{
            description:"Return false to cancel bubbling the click event",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "attr:Canvas.disabledCursor":{
        ref:"attr:Canvas.disabledCursor",
        flags:"IRWA",
        description:"Specifies the cursor image to display when the mouse pointer is\n      over this widget if this widget is disabled. It corresponds to the CSS cursor\n      attribute. See Cursor type for different cursors.",
        name:"disabledCursor",
        seeAlso:[
        ],
        valueType:"Cursor",
        defaultValue:"Canvas.DEFAULT",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "cues"
        ]
    },
    "group:CompoundFormItem_skinning":{
        ref:"group:CompoundFormItem_skinning",
        refs:[
        ],
        description:"When skinning basic FormItems like SelectItem and TextItem, consider that compound form\n items like DateItem and ComboBox reuse simpler items like SelectItem and TextItem, so adding\n a border to SelectItem would also apply a border to each select item within DateItem.<br>\n To avoid such side-effects, if you want to add styling to all SelectItems used in your \n application, you can create an application-specific subclass like MySelectItem and apply \n properties there.<br>",
        name:"CompoundFormItem_skinning",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Array.sortByProperty":{
        ref:"method:Array.sortByProperty",
        flags:"",
        description:" Sort a list of objects by a given property of each item.\n <P>\n The optional normalizer, if passed as a function, is called for each item in the List, and\n should return whatever value should be used for sorting, which does not have to agree with\n the property value. By passing a normalizer function you can achieve any kind of sorting\n you'd like, including sorting by multiple properties.\n <P>\n NOTE: string sort is case INsensitive by default\n\n",
        name:"sortByProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to sort by",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            },
            {
                description:"true == sort ascending, false == sort descending",
                optional:false,
                name:"up",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"May be specified as a function, with signature \n              <code>normalize(item, propertyName, context)</code>, where <code>item</code> is\n              a pointer to the item in the array, <code>propertyName</code> is the \n              property by which the array is being sorted, and <code>context</code> is the\n              arbitrary context passed into this method. Normalizer function should return\n              the value normalized for sorting.<br>\n              May also be specified as a ValueMap which maps property values to sortable values.",
                optional:true,
                name:"normalizer",
                defaultValue:null,
                type:"function or ValueMap"
            },
            {
                description:"Callers may pass an arbitrary context into the sort method, which                          will then be made available to the normalizer function",
                optional:true,
                name:"context",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"the list itself",
            type:"List"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "sorting"
        ]
    },
    "classAttr:Validator.mustBeShorterThan":{
        ref:"classAttr:Validator.mustBeShorterThan",
        flags:"IRA",
        description:"Default error message to display when standard <code>lengthRange</code> type validator\n returns false because the value passed in has more than <code>validator.max</code> characters.\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeShorterThan",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be no more than ${max} characters\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ResultSet.invalidateCache":{
        ref:"method:ResultSet.invalidateCache",
        flags:"A",
        description:" Manually invalidate this ResultSet's cache.\n <P>\n Generally a ResultSet will observe and incorporate updates to the DataSource that provides its\n records, but when this is not possible, <code>invalidateCache()</code> allows manual cache\n invalidation.\n <P>\n <code>invalidateCache()</code> fires <code>dataChanged()</code>, which may cause components \n using this ResultSet to request new data for display, triggering server fetches.\n",
        name:"invalidateCache",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ResultSet"
    },
    "method:Menu.showContextMenu":{
        ref:"method:Menu.showContextMenu",
        flags:"",
        description:" Show this menu as a context menu, that is, immediately adjacent to the current mouse position.\n\n",
        name:"showContextMenu",
        seeAlso:[
        ],
        returns:{
            description:"false == stop processing this event",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Menu",
        groups:[
            "visibility"
        ]
    },
    "attr:FormulaBuilder.helpTextIntro":{
        ref:"attr:FormulaBuilder.helpTextIntro",
        flags:"IR",
        description:"Text that appears in the hover from the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.helpIcon')}, as a pre-amble to the list of\n available functions.",
        name:"helpTextIntro",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"For basic arithmetic, type in symbols (+-/%) directly.&lt;P&gt;The following functions are also available:\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TileGrid.autoFetchData":{
        ref:"attr:TileGrid.autoFetchData",
        flags:"IR",
        description:"If true, when this component is first drawn, automatically call <code>this.fetchData()</code>.\n Criteria for this fetch may be picked up from ${isc.DocUtils.linkForRef('attr:TileGrid.initialCriteria')}, and textMatchStyle may\n be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}.\n <P>\n <span style='color:red'>NOTE:</span> if <code>autoFetchData</code> is set, calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} before draw will cause two requests to be issued, one from the manual\n call to fetchData() and one from the autoFetchData setting.  The second request will use\n only ${isc.DocUtils.linkForRef('attr:TileGrid.initialCriteria')} and not any other criteria or settings from the first request.\n Generally, turn off autoFetchData if you are going to manually call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} at any time.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fetchOperation')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "databinding"
        ]
    },
    "attr:GridRenderer.showHover":{
        ref:"attr:GridRenderer.showHover",
        flags:"RW",
        description:"If true, and canHover is also true, when the user hovers over a cell, hover text will pop up\n next to the mouse.  The contents of the hover is determined by ${isc.DocUtils.linkForRef('method:GridRenderer.cellHoverHTML')}.",
        name:"showHover",
        seeAlso:[
            {
                ref:"attr:GridRenderer.canHover",
                description:null
            },
            {
                ref:"method:GridRenderer.cellHoverHTML",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:ResultSet.alwaysRequestVisibleRows":{
        ref:"attr:ResultSet.alwaysRequestVisibleRows",
        flags:"IRA",
        description:"If true, records requested only for visible area.",
        name:"alwaysRequestVisibleRows",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ResultSet"
    },
    "classAttr:NumberUtil.decimalSymbol":{
        ref:"classAttr:NumberUtil.decimalSymbol",
        flags:"IR",
        description:"The decimal symbol to use when formatting numbers",
        name:"decimalSymbol",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\".\"",
        type:"classAttr",
        definingClass:"class:NumberUtil",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.shrinkForFreeze":{
        ref:"attr:ListGrid.shrinkForFreeze",
        flags:"IRWA",
        description:"If this list grid is showing any ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen')} fields, and a horizontal\n scrollbar is visible at the bottom of the liquid columns, should an equivalent scrollbar gap\n be left visible below the frozen columns?<br>\n Note that if set to <code>true</code> any backgroundColor or border applied to the ListGrid\n will show up below the bottom row of the frozen column(s).",
        name:"shrinkForFreeze",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "frozenFields"
        ]
    },
    "method:Date.getShortMonthName":{
        ref:"method:Date.getShortMonthName",
        flags:"",
        description:" Return the abbreviated name of the month for this date (Jan, Feb, etc)\n To modify the value returned by this method,\n <smartclient>set ${isc.DocUtils.linkForRef('classAttr:Date.shortMonthNames')}</smartclient>\n <smartgwt>use {@link com.smartgwt.client.util.DateUtil#setShortMonthNames()}</smartgwt>.\n",
        name:"getShortMonthName",
        seeAlso:[
        ],
        params:[
            {
                description:"Number of characters to return (Defaults to 3, can't be longer than 3)",
                optional:false,
                name:"length",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Abbreviated month name (3 character string)",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "method:Canvas.setBackgroundImage":{
        ref:"method:Canvas.setBackgroundImage",
        flags:"",
        description:"\t\t\tSets the background to an image file given by newImage. This URL should be given as a\n          string relative to the image directory for the page (./images by default).\n",
        name:"setBackgroundImage",
        seeAlso:[
        ],
        params:[
            {
                description:"new URL (local to Page image directory) for background image",
                optional:false,
                name:"newImage",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.expansionDetailRelated":{
        ref:"attr:ListGrid.expansionDetailRelated",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:HLayout')} appearing in a record's expanded section\n when ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')} is <code>detailRelated</code>.\n This component contains two other autoChild components,\n a ${isc.DocUtils.linkForRef('class:DetailViewer')} for viewing fields from the record which are not already\n present in the grid and a separate embedded ${isc.DocUtils.linkForRef('class:ListGrid')} for displaying other\n data related to this record via record.detailDS.  See ${isc.DocUtils.linkForRef('attr:ListGrid.expansionDetails')}\n and ${isc.DocUtils.linkForRef('attr:ListGrid.expansionRelated')} for more information.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.expansionDetailRelatedProperties</code> and\n <code>listGrid.expansionDetailRelatedDefaults</code>.\n <P>\n Note, however, that this is a multi-instance component (potentially one per record),\n so it is created using ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')} not\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')}, and no default single instance is created by\n name on the grid.",
        name:"expansionDetailRelated",
        seeAlso:[
        ],
        valueType:"MultiAutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:DynamicForm.hiliteRequiredFields":{
        ref:"attr:DynamicForm.hiliteRequiredFields",
        flags:"IRW",
        description:"Indicates whether the titles of required items in this form should use the special\n prefix and suffix specified by the next two properties, instead of the standard\n prefix and suffix.",
        name:"hiliteRequiredFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "group:exportFormatting":{
        ref:"group:exportFormatting",
        title:"Exports &amp; Formatting",
        refs:[
            "attr:DSRequest.exportRawValues",
            "attr:DSRequest.exportDatesAsFormattedString",
            "attr:DetailViewerField.format",
            "attr:DetailViewerField.exportFormat",
            "attr:ListGridField.format",
            "attr:ListGridField.exportFormat",
            "attr:SimpleType.format",
            "attr:SimpleType.exportFormat",
            "attr:FormItem.exportFormat"
        ],
        description:"This topic explains the default rules for whether date, numeric and other formatting\n settings are applied when performing various types of exports, and how to override the default\n behavior.\n <p>\n For server-based exports\n (${isc.DocUtils.linkForRef('method:ListGrid.exportData','ListGrid')} or DataSource.exportData()):\n <ul>\n <li> if ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportAs')} is a spreadsheet format (XLS or OOXML),\n      ${isc.DocUtils.linkForRef('attr:DataSourceField.format','dsField.format or dsField.exportFormat')} will be used if\n      specified, otherwise, ${isc.DocUtils.linkForRef('attr:DataSourceField.dateFormatter')} will be used if specified,\n      otherwise, no formatting will be applied and the date or number will be shown in the\n      spreadsheet program's default formatting.\n <li> if targetting CSV, XML or JSON, by default, formatting declarations are ignored and\n      standard formats are used, because the expectation is that this type of export is\n      intended for data interchange with other systems and not for direct viewing by end\n      users.  Specifically, date and datetime values use standard \n      <a href='http://www.w3.org/TR/xmlschema-2/#dateTime' target='_blank'>XML Schema date and time formats</a>\n      and CSV export uses the \"yyyy-MM-dd HH:mm:ss\" expected by Microsoft Excel and similar\n      tools that consume CSV, with only the date or time part of the format being used for\n      fields that are of type \"date\" or \"time\" rather than \"datetime\".  If you instead set\n      ${isc.DocUtils.linkForRef('attr:DSRequest.exportRawValues')} to false, format settings available to server will be used,\n      exactly as explained above for spreadsheet exports with <code>exportData()</code>.\n </ul>\n For a client-driven export (eg ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}):\n <ul>\n <li> if ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportAs')} is a spreadsheet format (XLS or OOXML),\n      rules are the same as for server-driven export except that <code>dateFormatter</code>\n      settings on client-side UI components will be used if a built-in formatter is used (for\n      example, if ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter')} is set to the built-in formatter\n      \"toEuropeanShortDate\")).  If you need date values to appear <b>exactly</b> as shown to\n      the user, set ${isc.DocUtils.linkForRef('attr:DSRequest.exportDatesAsFormattedString')}, but see the docs for this property for the\n      drawbacks of doing this.\n <li> for CSV, XML or JSON exports, whatever is shown to the end user is used (since it's\n      assumed the reason for calling <code>exportClientData()</code> rather than\n      <code>exportData()</code> is precisely to create a fully formatted export).  If you\n      instead set ${isc.DocUtils.linkForRef('attr:ListGrid.exportRawValues')} to true, only standard formats appropriate\n      to data interchange are used, the same as described for <code>exportData()</code> above.\n </ul>",
        name:"exportFormatting",
        seeAlso:[
        ],
        type:"group"
    },
    "group:javaModuleDependencies":{
        ref:"group:javaModuleDependencies",
        title:"Java Module Dependencies",
        treeLocation:[
            "Concepts/Deploying SmartClient"
        ],
        refs:[
        ],
        description:"Maven users should generally refer to the POMs bundled with the SDK, and installed for them\n by the official <a href=\"http://github.smartclient.com/isc-maven-plugin/\">Isomorphic plugin for Maven</a>.\n\n For others, the following is a description of what functionality is contained in each SmartClient JAR\n file, and which other SmartClient JARs and third party libraries are required to enable that\n functionality.  Note that actual filenames in WEB-INF/lib will typically contain the version\n number of the library, whereas the library names below simply list the base name.\n <P>\n All of the libraries that SmartClient depends upon have either an Apache 1.0 or\n Apache 2.0 license, with the following exceptions:<br>\n 1. Optional Hibernate support requires LGPL-licensed .jars from Hibernate<br>\n 2. Optional bean annotation support requires an implementation of javax.persistence.jar.\n This is available from several providers - for example, SpringSource, Hibernate or the \n Glassfish project.  The licensing of this library varies by provider.<br>\n 3. Optional support for Java as a JSR223 server-side scripting language is provided by\n software developed by Isomorphic, but based on the \"java-engine\" package, originally \n developed by Sun.  See ${isc.DocUtils.linkForRef('group:sunNotice')}.\n <P>\n If you are using GWT, GWT itself also has an Apache 2.0 license, however tools and\n test environments that you may use during development have different license (such as\n Eclipse - Eclipse Public License).  Also, specific GWT widgets, not required by Smart GWT, \n have licenses different from core GWT (such as JFreeChart's LGPL license).  See \n <a href='http://code.google.com/webtoolkit/terms.html' target='_blank'>Google's summary of terms</a> for\n details.\n <ul>\n <li><b>isomorphic_core_rpc</b>: This is the core SmartClient module.  It provides the RPC, DMI,\n and DataSource support.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-cli<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-lang<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-collections<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-pool<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-codec<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isc-jakarta-oro<br>\n &nbsp;&nbsp;&nbsp;&nbsp;log4j<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-jxpath<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-httpclient<br>\n &nbsp;&nbsp;&nbsp;&nbsp;velocity<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-fileupload<br>\n &nbsp;&nbsp;<u>Optionally Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_js_parser - if you're using the built-in support for REST via the RESTHandler servlet with JSON payloads<br>\n &nbsp;&nbsp;&nbsp;&nbsp;xercesImpl - if you're using JDK &lt; 1.5<br>\n &nbsp;&nbsp;&nbsp;&nbsp;xml-apis - if you're using JDK &lt; 1.5<br>\n &nbsp;&nbsp;&nbsp;&nbsp;mail - if you plan to use the Mail messaging feature<br>\n &nbsp;&nbsp;&nbsp;&nbsp;activation - if you plan to use the Mail messaging feature and you\n are using a JDK &lt; 1.6<br><br>\n &nbsp;&nbsp;&nbsp;&nbsp;javax.persistence - if you plan to use the metadata-from-annotations \n feature.  Note that if you are using JPA, or a recent version of Hibernate, then you are\n probably already using this library.<br><br>\n &nbsp;&nbsp;&nbsp;&nbsp;poi - if you plan to export datasets in Microsoft Excel 97 (xls)  \n or 2007 (xlsx) formats.  Additionally, if you plan to export data in Excel 2007 (xlsx) \n format, you will need the following libraries:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-ooxml, poi-ooxml-schemas, xbean, jsr173_1.0_api<br><br>\n &nbsp;&nbsp;&nbsp;&nbsp;PDF Export - Additional .jars are required if PDF Export is to be used. These .jars are:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;core-renderer, iText-2.0.8, jtidy-r938<br>\n &nbsp;&nbsp;&nbsp;&nbsp;Image Export and IE6-8 DrawPane PDF Export - These libraries are required to use\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportImage')}, or when using ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportContent')} to export a DrawPane or FacetChart \n only in IE8 or earlier:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;batik-anim, batik-awt-util, batik-bridge, batik-css,\n batik-dom, batik-ext, batik-gvt, batik-parser, batik-script, batik-svg-dom, batik-util, batik-xml,\n xml-apis-ext<br>\n &nbsp;&nbsp;&nbsp;&nbsp;The above libraries are also required if a DrawPane\n has a DrawImage which loads a cross-domain image.<br><br>\n\n &nbsp;&nbsp;&nbsp;&nbsp;<b>NOTE:</b> Between iText 2.0.x and iText 2.1.x there is a binary\n (but not source) incompatibility that causes a server-side <code>NoSuchMethodError</code> when exporting,\n e.g., charts in Internet Explorer. This is a <a href='http://code.google.com/p/flying-saucer/issues/detail?id=126' target='_blank'>known issue</a>\n with the Flying Saucer product that is fixed by using core-renderer-R8-isomorphic.jar and iText-2.1.7.jar in the\n lib-iTextAlternate/ directory instead of core-renderer.jar and iText-2.0.8.jar in the lib/ directory.\n To use iText 2.1.7 with the Server Framework, exclude lib/core-renderer.jar and lib/iText-2.0.8.jar\n from the application's classpath and instead add lib-iTextAlternate/core-renderer-R8-isomorphic.jar and\n lib-iTextAlternate/iText-2.1.7.jar.<br><br>\n\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_jpa and its dependencies - if you plan to use BatchDS Generator even if you are\n not using JPA, although the generated DataSources will not require JPA at runtime if you are not using JPA.<br><br>\n\n &nbsp;&nbsp;&nbsp;&nbsp;groovy - if you plan to use Groovy with the ${isc.DocUtils.linkForRef('group:serverScript')} feature.\n </li>\n <p>\n <li><b>isomorphic_contentexport.jar</b>: Optional support for PDF Export requires Flying Saucer, iText and jTidy, introducing:<br>\n &nbsp;&nbsp;- Flying Saucer: core-renderer.jar: <a href='http://www.gnu.org/licenses/lgpl-2.1.html' target='_blank'>LGPL license</a><br>\n &nbsp;&nbsp;- iText: iText-2.0.8.jar: <a href='http://www.mozilla.org/MPL/1.1/' target='_blank'>Mozilla Public License Version 1.1</a><br>\n &nbsp;&nbsp;- jTidy: jtidy-r938.jar: <a href='http://jtidy.sourceforge.net/license.html' target='_blank'>MIT license</a><br><br>\n Additionally, to be able to export DrawPanes and FacetCharts in IE6-8,\n or to export FacetChart zoom charts (see ${isc.DocUtils.linkForRef('attr:FacetChart.printZoomChart')}),\n the following libraries are needed:<br>\n &nbsp;&nbsp;- Batik: batik-anim, batik-awt-util, batik-bridge, batik-css, batik-dom, batik-ext,\n batik-gvt, batik-parser, batik-script, batik-svg-dom, batik-util, batik-xml:\n <a href='http://xmlgraphics.apache.org/batik/license.html' target='_blank'>Apache License&#44; Version 2.0</a><br>\n &nbsp;&nbsp;- xml-commons External Components: xml-apis-ext:\n <a href='http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231' target='_blank'>W3C Software Notice and License</a>\n </li>\n <p>\n <li><b>isomorphic_web_services</b>: Web services examples only.  Contains code backing the\n SmartClientOperations.wsdl example.  Do not deploy in production.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;axis<br>\n &nbsp;&nbsp;&nbsp;&nbsp;axis-schema<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-discovery<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-logging<br>\n &nbsp;&nbsp;&nbsp;&nbsp;jaxrpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;saaj<br>\n &nbsp;&nbsp;&nbsp;&nbsp;wsdl4j<br>\n </li>\n <li><b>isomorphic_tools</b>: Contains back-end logic for the \"Admin Console\" tool visible in\n the Developer Console, and also standalone from the SDK home page.  Also contains the the\n various data importers and exporters, and the server-side components of the BatchUploader.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_sql<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_hibernate<br>\n </li>\n <li><b>isomorphic_embedded_tomcat</b>: This contains the bootstrap class for the Embedded\n Tomcat engine shipped with the SmartClient SDK.  It is not intended to be used in any way\n other than via the start_embedded_tomcat.bat|sh|command scripts in the webRoot of the\n SDK.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;All JARs under WEB-INF/embeddedTomcat/lib<br>\n </li>\n <li><b>isomorphic_spring</b>: Required for ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} dispatches to Spring beans (via\n ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle')} : \"spring\").<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;spring<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-logging<br>\n </li>\n <li><b>isomorphic_examples</b>: Contains code for various SmartClient examples shown in the\n SDK.  Do not deploy to production.  The source code for the compiled classes in this module\n are present in the SDK in various locations and typically linked to directly from the\n examples that use them.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_sql<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_struts<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_spring<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_hibernate<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-logging<br>\n &nbsp;&nbsp;&nbsp;&nbsp;jstl<br>\n &nbsp;&nbsp;&nbsp;&nbsp;jakarta-taglib-standard<br>\n </li>\n <li><b>isomorphic_realtime_messaging</b>: Server support required for the SmartClient\n Realtime Messaging Module.  Install this if you're using this 'push' technology.  For more\n information, see ${isc.DocUtils.linkForRef('group:messaging','Messaging')}:<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n </li>\n <li><b>isomorphic_hibernate</b>: Contains support for Hibernate DataSources as described\n here: ${isc.DocUtils.linkForRef('group:hibernateIntegration')}.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_sql<br> \n &nbsp;&nbsp;&nbsp;&nbsp;hibernate3<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-logging<br>\n &nbsp;&nbsp;&nbsp;&nbsp;dom4j<br>\n &nbsp;&nbsp;&nbsp;&nbsp;jdbc2_0-stdext<br>\n &nbsp;&nbsp;&nbsp;&nbsp;asm<br>\n &nbsp;&nbsp;&nbsp;&nbsp;asm-attrs<br>\n &nbsp;&nbsp;&nbsp;&nbsp;jta<br>\n &nbsp;&nbsp;&nbsp;&nbsp;cglib<br>\n &nbsp;&nbsp;&nbsp;&nbsp;antlr<br>\n &nbsp;&nbsp;<u>Optionally Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;hsqldb - not required for linking, but needed for actually connecting\n to databases of this type, and hsqldb is what's used in the SDK examples.\n Note that for production use you will need a JDBC driver for your database type.<br>\n </li>\n <li><b>isomorphic_jpa</b>: Contains support for JPA DataSources as described ${isc.DocUtils.linkForRef('group:jpaIntegration','here')}.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;Hibernate and its dependencies or any other JPA persistence provider<br>\n </li>\n <li><b>isomorphic_sql</b>: The SmartClient SQLDataSource.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br> \n &nbsp;&nbsp;&nbsp;&nbsp;commons-dbcp<br> \n &nbsp;&nbsp;&nbsp;&nbsp;hsqldb<br> \n </li>\n <li><b>isomorphic_autotest</b>: Support for \n ${isc.DocUtils.linkForRef('group:automatedTesting','automated testing and Continuous Integration')}<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br> \n &nbsp;&nbsp;&nbsp;&nbsp;selenium-server<br>\n &nbsp;&nbsp;<em>The <code>selenium-server.jar</code> file provided with SmartClient is a \n trimmed version that does not include all of the libraries used by Selenium itself.\n Therefore the following libraries are also needed:</em><br>\n &nbsp;&nbsp;&nbsp;&nbsp;backport-util-concurrent<br> \n &nbsp;&nbsp;&nbsp;&nbsp;commons-configuration<br> \n &nbsp;&nbsp;&nbsp;&nbsp;commons-exec<br> \n &nbsp;&nbsp;&nbsp;&nbsp;commons-io<br> \n &nbsp;&nbsp;&nbsp;&nbsp;guava<br> \n &nbsp;&nbsp;&nbsp;&nbsp;jna (if testing with IE on Windows environments)<br>\n &nbsp;&nbsp;&nbsp;&nbsp;jna-platform (if testing with IE on Windows environments)<br>\n &nbsp;&nbsp;<em><u>NOTE:</u> <code>servlet-api.jar</code> is also required if you intend to\n run Selenium RC from a standalone process (ie, from a normal Java program, not a webapp).  \n However, it should <u>not</u> be deployed to a servlet container such as Tomcat or Jetty.\n The best case is that the file will be unused and a source of confusion for anybody looking\n at the webapp's library usage; the worst case is that it will conflict with the container's \n own implementation of the Servlets API.</em>\n </li>\n <li><b>isomorphic_js_parser</b>: A parser capable of reading a JSON byte stream and creating\n an in-memory Java object structure to match.  Used by any mechanism that relies on\n JSON-style configuration.  Examples include FileAssembly definitions in JSON format, any use\n of the rulesFile with a URIRegexFilter (Java Servlet) or subclass.  Otherwise, generally not\n required except as documented in another module (e.g., isomorphic_core_rpc).\n <br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br> \n </li>\n <li><b>isomorphic_compression</b>: This is a part of the Network Performance Module.  The\n isomorphic_compression module is required for dynamic and static compression of various\n assets delivered to the browser.  For more information, see: \n ${isc.DocUtils.linkForRef('group:compression')}.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br> \n </li>\n <li><b>isomorphic_assembly</b>: This is part of the Network Performance Module.  The\n isomorphic_assembly module is required for file assembly and stripping.  For more\n information, see: ${isc.DocUtils.linkForRef('group:fileAssembly')}.<br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br> \n </li>\n <li><b>isomorphic_struts</b>: Contains the ValidationAction and ValidationFailureAction\n classes that implement RPC-based validation of DynamicForms using the Struts\n ValidatorPlugIn.  If you're not using Struts or if you don't need this particular feature of\n SmartClient, you do not need this module or its dependencies (also see the important note \n below).  An example of this style of validation is available here: \n <a href='/examples/struts/forms/welcome.do' target='_blank'>/examples/struts/forms/welcome.do</a> - read the info on this page, and follow \n the \"Dynamic Form (With RPC-based Validation)\" Link for the actual example.<br><br>\n <b>NOTE:</b> This support is for Struts 1.0 only, and is only intended to be used in certain\n edge cases of incremental migration to SmartClient.  You should only use it if directed to \n do so by Isomorphic Support.<br><br>\n &nbsp;&nbsp;<u>Requires</u>:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;isomorphic_core_rpc<br>\n &nbsp;&nbsp;&nbsp;&nbsp;struts<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-digester<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-beanutils<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-logging<br>\n &nbsp;&nbsp;&nbsp;&nbsp;commons-validator<br>\n </li>\n </ul>",
        name:"javaModuleDependencies",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetValue.title":{
        ref:"attr:FacetValue.title",
        flags:"IRW",
        description:"User-visible title of this facetValue.  Shown on the field header.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:DateChooser.baseWeekdayStyle":{
        ref:"attr:DateChooser.baseWeekdayStyle",
        flags:"IRW",
        description:"Base CSS style applied to weekdays. Will have \"Over\", \"Selected\" and \"Down\"\n suffix appended as the user interacts with buttons.  Defaults to ${isc.DocUtils.linkForRef('attr:DateChooser.baseButtonStyle')}.",
        name:"baseWeekdayStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserWeekday\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DataSourceField.foreignKey":{
        ref:"attr:DataSourceField.foreignKey",
        flags:"IR",
        description:"Declares that this field holds values that can be matched to values from another DataSource\n field, to create a relationship between records from different DataSources or even records\n within the same DataSource.\n <p>\n The format of <code>foreignKey</code> is\n <code><i>dataSourceId</i>.<i>fieldName</i></code>.\n <p>\n For a foreignKey within the same dataSource, you can omit the <code>dataSourceId</code>\n and just specify <code><i>fieldName</i></code>.  For example, to create a tree relationship\n within a DataSource:\n <pre>\n   isc.DataSource.create({\n     ID:\"supplyItem\",\n     fields : [\n       {name:\"itemId\", type:\"sequence\", primaryKey:true},\n       {name:\"parentId\", type:\"integer\", foreignKey:\"itemId\"},\n       ...\n     ]\n   });\n </pre>\n <P>\n <code>foreignKey</code> declarations also allow other automatic behaviors by\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')}, such as ${isc.DocUtils.linkForRef('method:ListGrid.fetchRelatedData')}.\n <p>\n For SQLDataSources foreign keys can be automatically discovered from SQL tables if\n ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema','autoDeriveSchema')} is set.",
        name:"foreignKey",
        seeAlso:[
            {
                ref:"attr:DataSourceField.joinType",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "dataSourceRelations"
        ]
    },
    "attr:MenuItem.isSeparator":{
        ref:"attr:MenuItem.isSeparator",
        flags:"IR",
        description:"When set to <code>true</code>, this menu item shows a horizontal separator instead of\n the ${isc.DocUtils.linkForRef('attr:MenuItem.title')} text.  Typically specified as the only property of a menu item,\n since the separator will not respond to mouse events.",
        name:"isSeparator",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "menuBasic"
        ]
    },
    "attr:ColorPicker.opacitySliderLabel":{
        ref:"attr:ColorPicker.opacitySliderLabel",
        flags:"IR",
        description:"The label shown next to the opacity slider. Ignored if \n ${isc.DocUtils.linkForRef('attr:ColorPicker.supportsTransparency')} is false.",
        name:"opacitySliderLabel",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Opacity\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "class:DrawPath":{
        methods:[
            "method:DrawPath.getBoundingBox",
            "method:DrawPath.getCenter",
            "method:DrawPath.moveTo",
            "method:DrawPath.moveBy"
        ],
        ref:"class:DrawPath",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawPath.knobs",
            "attr:DrawPath.points"
        ],
        description:"Draws a multi-segment line.",
        name:"DrawPath",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "method:TabSet.getTabPane":{
        ref:"method:TabSet.getTabPane",
        flags:"",
        description:" Returns the pane for a given tab.\n\n",
        name:"getTabPane",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"object | number | ID | name | Tab"
            }
        ],
        returns:{
            description:"the tab pane",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:GridRenderer.cellOut":{
        ref:"method:GridRenderer.cellOut",
        flags:"A",
        description:" Called when the mouse pointer leaves a cell\n\n",
        name:"cellOut",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "object:Array":{
        methods:[
            "method:Array.get",
            "method:Array.getLength",
            "method:Array.isEmpty",
            "method:Array.first",
            "method:Array.last",
            "method:Array.indexOf",
            "method:Array.lastIndexOf",
            "method:Array.contains",
            "method:Array.containsAll",
            "method:Array.intersect",
            "method:Array.equals",
            "method:Array.getItems",
            "method:Array.getRange",
            "method:Array.duplicate",
            "method:Array.set",
            "method:Array.addAt",
            "method:Array.removeAt",
            "method:Array.add",
            "method:Array.addList",
            "method:Array.setLength",
            "method:Array.addListAt",
            "method:Array.remove",
            "method:Array.removeList",
            "method:Array.dataChanged",
            "method:Array.getProperty",
            "method:Array.getValueMap",
            "method:Array.map",
            "method:Array.setProperty",
            "method:Array.clearProperty",
            "method:Array.getUniqueItems",
            "method:Array.findIndex",
            "method:Array.findNextIndex",
            "method:Array.find",
            "method:Array.containsProperty",
            "method:Array.findAll",
            "method:Array.slide",
            "method:Array.slideRange",
            "method:Array.makeIndex",
            "method:Array.sortByProperty",
            "method:Array.setSort",
            "method:Array.unsort",
            "method:Array.max",
            "method:Array.min",
            "method:Array.sum",
            "method:Array.and",
            "method:Array.or"
        ],
        ref:"object:Array",
        classAttrs:[
            "classAttr:Array.LOADING",
            "classAttr:Array.CASE_INSENSITIVE",
            "classAttr:Array.DATE_VALUES",
            "classAttr:Array.DATETIME_VALUES"
        ],
        classMethods:[
            "classMethod:Array.isLoading",
            "classMethod:Array.compareAscending",
            "classMethod:Array.compareDescending"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Generic extensions to JavaScript Arrays.  You can call these on any Array.\n <P>\n JavaScript's native Array is retrofitted to support the <code>List</code> API.",
        name:"Array",
        implementsInterfaces:[
            "List"
        ],
        seeAlso:[
            {
                ref:"interface:List",
                description:null
            }
        ],
        type:"object"
    },
    "method:DateRangeItem.setToDate":{
        ref:"method:DateRangeItem.setToDate",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:DateRangeItem.toDate')} for this DateRangeItem.\n",
        name:"setToDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the date at which this item should end it's range",
                optional:false,
                name:"fromDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        type:"method",
        definingClass:"class:DateRangeItem"
    },
    "method:Button.deselect":{
        ref:"method:Button.deselect",
        flags:"",
        description:" Select this object.\n",
        name:"deselect",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "attr:Process.startElement":{
        ref:"attr:Process.startElement",
        flags:"IR",
        description:"The ID of either a ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} or an ${isc.DocUtils.linkForRef('attr:Process.elements','element')} which should\n be the starting point of the process.  If not specified, the first sequence is chosen,\n or if there are no sequences, the first element.\n - log a warning and do nothing if there are neither sequences or elements\n <smartclient>\n - an example of how a Process would be defined\n <pre>\n isc.Process.create({\n     startElement:\"firstSequence\", \n     sequences: [\n         { \n            id:\"firstSequence\",\n            elements : [\n                isc.ServiceTask.create({ .. }),\n                isc.DecisionGateway.create({ .. })\n            ]\n         },\n         {\n            id:\"errorFlow\",\n            elements : [ ... ]\n            \n         }\n     ],\n     elements: [\n        // standalone process elements not part of sequences\n        isc.ServiceTask.create({ .. })\n     ],\n     state : {\n         someField:\"someValue\"\n     }\n })\n </pre>\n </smartclient>",
        name:"startElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Process"
    },
    "attr:DateChooser.monthMenuStyle":{
        ref:"attr:DateChooser.monthMenuStyle",
        flags:"IR",
        description:"Style for the pop-up year menu.",
        name:"monthMenuStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserMonthMenu\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:TreeGrid.toggleFolder":{
        ref:"method:TreeGrid.toggleFolder",
        flags:"",
        description:"          Opens the folder specified by node if it's closed, and closes it if it's open.\n          TreeGrid will redraw if there's a change in the folder's open/closed state.\n\n",
        name:"toggleFolder",
        seeAlso:[
        ],
        params:[
            {
                description:"node to toggle",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:ListGrid.generateDoubleClickOnSpace":{
        ref:"attr:ListGrid.generateDoubleClickOnSpace",
        flags:"IRWA",
        description:"If true, when the user navigates to a cell using arrow keys and hits Space,\n the cell will respond to a double click event.",
        name:"generateDoubleClickOnSpace",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:TreeGrid.folderClick":{
        ref:"method:TreeGrid.folderClick",
        flags:"",
        description:"\n This method is called when a folder record is clicked on.\n\n",
        name:"folderClick",
        seeAlso:[
            {
                ref:"method:TreeGrid.nodeClick",
                description:null
            }
        ],
        params:[
            {
                description:"The TreeGrid on which folderClick() occurred.",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TreeGrid"
            },
            {
                description:"The folder (record) that was clicked",
                optional:false,
                name:"folder",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Index of the row where the click occurred.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "object:TreeGridField":{
        methods:[
        ],
        ref:"object:TreeGridField",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/TreeGrid"
        ],
        attrs:[
            "attr:TreeGridField.treeField",
            "attr:TreeGridField.canExport"
        ],
        description:"An object literal with a particular set of properties used to configure the display of\n and interaction with the columns of a ${isc.DocUtils.linkForRef('class:TreeGrid')}.\n ${isc.DocUtils.linkForRef('class:TreeGrid')} is a subclass of ${isc.DocUtils.linkForRef('class:ListGrid')} and as a result, for all fields except\n the field containing the ${isc.DocUtils.linkForRef('class:Tree')} itself (specified by\n ${isc.DocUtils.linkForRef('attr:TreeGridField.treeField')}, all properties settable on\n ${isc.DocUtils.linkForRef('object:ListGridField')} apply to TreeGridField as well.\n <p>\n This class documents just those properties that are specific to TreeGridFields - see\n ${isc.DocUtils.linkForRef('object:ListGridField')} for the set of inherited properties.",
        name:"TreeGridField",
        seeAlso:[
            {
                ref:"object:ListGridField",
                description:null
            },
            {
                ref:"attr:TreeGrid.fields",
                description:null
            },
            {
                ref:"method:ListGrid.setFields",
                description:null
            }
        ],
        type:"object"
    },
    "method:Tree.getLoadState":{
        ref:"method:Tree.getLoadState",
        flags:"",
        description:" What is the loadState of a given folder?\n\n",
        name:"getLoadState",
        seeAlso:[
        ],
        params:[
            {
                description:"folder in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"state of the node",
            type:"LoadState"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "loadState"
        ]
    },
    "method:DynamicForm.getEventItem":{
        ref:"method:DynamicForm.getEventItem",
        flags:"",
        description:" If the current mouse event occurred over an item in this dynamicForm, returns that item.\n",
        name:"getEventItem",
        seeAlso:[
        ],
        returns:{
            description:"the current event target item",
            type:"FormItem"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:GroupSpecifier.normalizer":{
        ref:"attr:GroupSpecifier.normalizer",
        flags:"IR",
        description:"A normalizer function which this groupSpecifier will use to group.",
        name:"normalizer",
        seeAlso:[
        ],
        valueType:"Function",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:GroupSpecifier"
    },
    "attr:ListGridRecord.linkText":{
        ref:"attr:ListGridRecord.linkText",
        flags:"IRW",
        description:"The HTML to display in this row for fields with fieldType set to link. This overrides\n  ${isc.DocUtils.linkForRef('attr:ListGridField.linkText')}.",
        name:"linkText",
        seeAlso:[
            {
                ref:"type:ListGridFieldType",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            },
            {
                ref:"attr:ListGridField.linkText",
                description:null
            },
            {
                ref:"attr:ListGrid.linkTextProperty",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord",
        groups:[
            "display_values"
        ]
    },
    "method:DataBoundComponent.deselectAllRecords":{
        ref:"method:DataBoundComponent.deselectAllRecords",
        flags:"",
        description:"\n Deselect all records\n\n",
        name:"deselectAllRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:FacetChart.shadowProperties":{
        ref:"attr:FacetChart.shadowProperties",
        flags:"IR",
        description:"Properties for shadows.",
        name:"shadowProperties",
        seeAlso:[
        ],
        valueType:"DrawOval Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:TreeGrid.connectorImage":{
        ref:"attr:TreeGrid.connectorImage",
        flags:"IR",
        description:"The base filename for connector icons shown when ${isc.DocUtils.linkForRef('attr:TreeGrid.showConnectors')} is true.\n Connector icons are rendered into the title field of each row and show the dotted\n hierarchy lines between siblings of the same parent node. For each node, a connector icon\n may be shown:<ul>\n <li>As an opener icon for folder nodes, next to the folder icon</li>\n <li>In place of an opener icon for leaf nodes, next to the leaf icon</li>\n <li>As a standalone vertical continuation line in the indent to the left of the node, to show\n     a connection between some ancestor node's siblings (only relevant if\n     ${isc.DocUtils.linkForRef('attr:TreeGrid.showFullConnectors')} is true).</li>\n </ul>\n Note that ${isc.DocUtils.linkForRef('attr:TreeGrid.showFullConnectors')} governs whether connector lines will be\n displayed for all indent levels, or just for the innermost level of the tree.\n <P>\n The filenames for these icons are assembled from this base filename and the state of the\n node.  Assuming the connectorImage is set to <code>{baseName}.{extension}</code>, the\n full set of images to be displayed will be:\n <P>\n <code>{baseName}_ancestor[_rtl].{extension}</code> if ${isc.DocUtils.linkForRef('attr:TreeGrid.showFullConnectors')}\n  is true, this is the URL for the vertical continuation image to be displayed at the\n  appropriate indent levels for ancestor nodes with subsequent children.\n <P>\n For nodes with no children:\n <ul>\n <li><code>{baseName}_single[_rtl].{extension}</code>: Shown when there is no connector line\n  attached to the parent or previous sibling, and no connector line to the next sibling. For\n  ${isc.DocUtils.linkForRef('attr:TreeGrid.showFullConnectors','showFullConnectors:true')} trees, there will always be a\n  connector leading to the parent or previous sibling if its present in the tree so this\n  icon can only be displayed for the first row.</li>\n <li><code>{baseName}_start[_rtl].{extension}</code>:  Shown when the there is no connector\n  line attached to the parent or previous sibling, but there is a connector to the next\n  sibling. As with <code>_single</code> this will only ever be used for the first row if\n  ${isc.DocUtils.linkForRef('attr:TreeGrid.showFullConnectors')} is true</li>\n <li><code>{baseName}_end[_rtl].{extension}</code>:  Shown if we are not showing a connector \n  line attached to the next sibling of this node (but are showing a connection to the previous\n  sibling or parent).</li>\n <li><code>{baseName}_middle[_rtl].{extension}</code>:  Shown where the we have a connector\n  line leading to both the previous sibling (or parent) and the next sibling.\n </ul>\n For folders with children. Note that if ${isc.DocUtils.linkForRef('attr:TreeGrid.showFullConnectors')} is false, open\n folders will never show a connector to subsequent siblings:\n <ul>\n <li><code>{baseName}_opened_single[_rtl].{extension}</code> opened folder node with \n  children when no connector line is shown attaching to either the folder's previous sibling\n  or parent, or to any subsequent siblings.</li>\n <li><code>{baseName}_opened_start[_rtl].{extension}</code>:  opened folder with children\n  when the there is no connector line attached to the parent or previous sibling, but there \n  is a connector to the next sibling.</li>\n <li><code>{baseName}_opened_end[_rtl].{extension}</code>:  opened folder with children \n  if we are not showing a connector line attached to the next sibling of this node (but are\n  showing a connection to the previous sibling or parent).</li>\n <li><code>{baseName}_opened_middle[_rtl].{extension}</code>: opened folder with children \n  where the we have a connector line leading to both the previous sibling (or parent) and the\n  next sibling.\n </ul>\n <ul>\n <li><code>{baseName}_closed_single[_rtl].{extension}</code> closed folder node with \n  children when no connector line is shown attaching to either the folder's previous sibling\n  or parent, or to any subsequent siblings.</li>\n <li><code>{baseName}_closed_start[_rtl].{extension}</code>:  closed folder with children\n  when the there is no connector line attached to the parent or previous sibling, but there \n  is a connector to the next sibling.</li>\n <li><code>{baseName}_closed_end[_rtl].{extension}</code>:  closed folder with children \n  if we are not showing a connector line attached to the next sibling of this node (but are\n  showing a connection to the previous sibling or parent).</li>\n <li><code>{baseName}_closed_middle[_rtl].{extension}</code>: closed folder with children \n  where the we have a connector line leading to both the previous sibling (or parent) and the\n  next sibling.\n </ul>\n (Note '[_rtl]' means that \"_rtl\" will be attached if isRTL() is true for this widget).",
        name:"connectorImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]connector.gif\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:DataBoundComponent.getSelectionLength":{
        ref:"method:DataBoundComponent.getSelectionLength",
        flags:"",
        description:" Returns the number of selected records.\n\n",
        name:"getSelectionLength",
        seeAlso:[
        ],
        returns:{
            description:"number of selected records",
            type:"int"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:ListGrid.configureSortText":{
        ref:"attr:ListGrid.configureSortText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid,\n and multi-sorting is enabled, this attribute is used as the title for a menu item that opens\n a ${isc.DocUtils.linkForRef('class:MultiSortDialog')} to configure the sort-specification for this grid.  This\n menu-item is displayed only in the context menu for the sorter button.",
        name:"configureSortText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Configure Sort...\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.requiredTitlePrefix":{
        ref:"attr:DynamicForm.requiredTitlePrefix",
        flags:"IRW",
        description:"The string prepended to the title of every required item in this form if\n ${isc.DocUtils.linkForRef('attr:DynamicForm.hiliteRequiredFields')} is true.",
        name:"requiredTitlePrefix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&lt;b&gt;\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "method:ToolStripGroup.setControls":{
        ref:"method:ToolStripGroup.setControls",
        flags:"",
        description:" Clears the array of controls and then adds the passed array to this toolStripGroup, \n creating new columns as necessary according to each control's rowSpan attribute and \n the group's ${isc.DocUtils.linkForRef('attr:ToolStripGroup.numRows')} attribute.\n \n",
        name:"setControls",
        seeAlso:[
        ],
        params:[
            {
                description:"an array of widgets to add to this group",
                optional:false,
                name:"controls",
                defaultValue:null,
                type:"Array of Canvas"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "attr:ColorPicker.colorArray":{
        ref:"attr:ColorPicker.colorArray",
        flags:"IR",
        description:"Array of 40 HTML color strings, used to render the basic color selection boxes.",
        name:"colorArray",
        seeAlso:[
        ],
        valueType:"String[]",
        defaultValue:"[...]",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "group:facetExpansion":{
        ref:"group:facetExpansion",
        refs:[
            "attr:CubeGrid.canCollapseFacets",
            "attr:CubeGrid.canMinimizeFacets"
        ],
        description:null,
        name:"facetExpansion",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:HiliteRule.advancedClauseLabel":{
        ref:"attr:HiliteRule.advancedClauseLabel",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:Label')} displaying the human-readable description of an advanced\n hilite-rule.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteRule.advancedClauseLabelProperties</code>.",
        name:"advancedClauseLabel",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteRule"
    },
    "attr:TabSet.moreTabPaneDefaults":{
        ref:"attr:TabSet.moreTabPaneDefaults",
        flags:"IR",
        description:"Default properties for the \"more\" tab's pane.\n <p>\n Currently constructs a VLayout with a ${isc.DocUtils.linkForRef('class:NavigationBar')} and ${isc.DocUtils.linkForRef('class:TableView')}.",
        name:"moreTabPaneDefaults",
        seeAlso:[
        ],
        valueType:"Canvas Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:WebService.callOperation":{
        ref:"method:WebService.callOperation",
        flags:"",
        description:" Invoke a web service operation.\n <P>\n The <code>data</code> parameter will be serialized to XML to form the input message for\n the operation, as described by ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')}.  Namespacing,\n element ordering, and SOAP encoding rules are automatically followed.  If the web\n service you are trying to contact requires a complicated nested structure, consider\n using ${isc.DocUtils.linkForRef('attr:WSRequest.useFlatFields')} to simplify the required JavaScript input data.\n <P>\n The <code>resultType</code> selects what part of the message should be decoded to\n JavaScript and made available as the \"data\" variable in the callback.  The\n <code>resultType</code> parameter can be either:\n <ul>\n <li> an XPath.  \"data\" will be always be an Array, containing the selected elements as\n decoded by ${isc.DocUtils.linkForRef('classMethod:XMLTools.toJS')}.  All properties will have String value.\n <li> the name of an XML Schema type found somewhere in the response.  You can use the\n WSDL tab of the Developer Console to analyze the WSDL file for an appropriate type name.\n \"data\" will be an Array, containing the decoded elements as decoded by\n ${isc.DocUtils.linkForRef('method:DataSource.recordsFromXML')}.  In this case, since the XML Schema type of the\n selected data is known, properties will have correct type (eg \"date\" fields will\n have JavaScript Date objects)\n <li> null.  \"data\" will an Object representing the entire &lt;SOAP:Body&gt; as decoded\n to JavaScript.  As above, properties will have correct type.\n </ul>\n In the callback, you also receive the XML document returned by the web service as\n \"xmlDoc\".\n <P>\n NOTE: <code>callOperation()</code> is appropriate for simple operations that do not\n involve DataBound Components, such as logging into a web service, or retrieving simple\n String data.  <code>callOperation()</code> can also be used to retrieve small, read-only\n datasets such as the option list for a SelectItem, but only if the dataset is guaranteed\n to remain small enough for paging to be unnecessary.  For any larger datasets or\n anything that will be edited, DataSource integration is more appropriate.\n\n",
        name:"callOperation",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the operation to invoke",
                optional:false,
                name:"operationName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"data to serialize as XML to form the inbound message of                                  the operation",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"Type, Element name, or XPath that                                  should be selected from the result.  For XPaths, see\n                                  ${isc.DocUtils.linkForRef('attr:WSRequest.xmlNamespaces')} for available namespace\n                                  prefixes and how to add more.",
                optional:false,
                name:"resultType",
                defaultValue:null,
                type:"Type or ElementName or XPath"
            },
            {
                description:"Callback to invoke on completion.  Signature                                  callback(data, xmlDoc, rpcResponse, wsRequest)",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"Additional properties for the WSRequest, such                                      as HTTPHeaders",
                optional:false,
                name:"requestProperties",
                defaultValue:null,
                type:"WSRequest Properties"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('wsdlOperation')}"
        ],
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "method:FormItem.enable":{
        ref:"method:FormItem.enable",
        flags:"",
        description:" Set this item to be enabled at runtime.\n",
        name:"enable",
        seeAlso:[
            {
                ref:"attr:FormItem.disabled",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "enable"
        ]
    },
    "classMethod:DataSource.applyRecordSummaryFunction":{
        ref:"classMethod:DataSource.applyRecordSummaryFunction",
        flags:"",
        description:" Applies a ${isc.DocUtils.linkForRef('type:RecordSummaryFunction')} to a record and returns the result.\n",
        name:"applyRecordSummaryFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"Summary Function or identifier for   registered recordSummaryFunction to execute. If passed in as an explicit function\n   record, fields and summaryField parameters will be passed through to the function.",
                optional:false,
                name:"summaryFunction",
                defaultValue:null,
                type:"SummaryFunction"
            },
            {
                description:"Record to retrieve a summary for",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"DataSourceRecord"
            },
            {
                description:"Set of fields to include in the summary",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of DataSourceFields"
            },
            {
                description:"field in which this summary will be displayed.",
                optional:false,
                name:"summaryField",
                defaultValue:null,
                type:"DataSourceField"
            }
        ],
        returns:{
            description:"summary value for the record",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "method:ListGrid.getFilterEditorValueMap":{
        ref:"method:ListGrid.getFilterEditorValueMap",
        flags:"A",
        description:"\n  If we're showing the filter (query-by-example) row for this ListGrid, this method is\n  used to determine the valueMap to display in the filter row for this field.\n  Default implementation will return the field.filterEditorValueMap if specified, or\n  field.valueMap.\n\n",
        name:"getFilterEditorValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"field definition field for which we need a valueMap",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"ValueMap for the edit field (or null if no valueMap required)",
            type:"ValueMap"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "method:DataSource.useOfflineResponse":{
        ref:"method:DataSource.useOfflineResponse",
        flags:"",
        description:" Override point to allow application code to suppress use of a particular offline\n response.  For example, application code may wish to examine the response's \n ${isc.DocUtils.linkForRef('attr:DSResponse.offlineTimestamp','offlineTimestamp')} to make a decision about whether\n the response is too stale to be useful.\n <p>\n This is an application override point only; there is no default implementation.\n\n",
        name:"useOfflineResponse",
        seeAlso:[
        ],
        params:[
            {
                description:"The dsRequest object",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"The corresponding dsResponse object returned from                                 offline cache",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            }
        ],
        returns:{
            description:"true to allow this response to be used, false to prevent it",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "offlineGroup"
        ]
    },
    "attr:MultiComboBoxItem.layoutStyle":{
        ref:"attr:MultiComboBoxItem.layoutStyle",
        flags:"IRW",
        description:"Specifies the layout style of the combo box and the buttons in the MultiComboBoxItem.\n Available values are \"flow\" (the default), \"horizontal\", \"horizontalReverse\",\n \"vertical\", and \"verticalReverse\".\n\n <ul>\n <li><b>\"flow\"</b>:&nbsp; The buttons appear to the left of the combo box.  When there is no\n more room, the combo box and/or buttons flow onto a new line.  The buttons autoFit\n by default.</li>\n <li><b>\"horizontal\"</b>:&nbsp; The combo box appears on right and buttons are horizontally\n stacked directly left of it.  The buttons must autofit.</li>\n <li><b>\"horizontalReverse\"</b>:&nbsp; Like \"horizontal\" but the combo box appears on the left.\n The buttons must autofit.</li>\n <li><b>\"vertical\"</b>:&nbsp; The combo box appears on top and buttons are stacked beneath it.\n Buttons do not autofit by default.</li>\n <li><b>\"verticalReverse\"</b>:&nbsp; Like \"vertical\" but the combo box appears at bottom.\n The buttons do not autofit by default.</li>\n </ul>",
        name:"layoutStyle",
        setter:[
            "setLayoutStyle"
        ],
        seeAlso:[
        ],
        valueType:"MultiComboBoxLayoutStyle",
        defaultValue:"\"flow\"",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:Label.contents":{
        ref:"attr:Label.contents",
        flags:"IRW",
        description:"The contents of a canvas or label widget. Any HTML string is acceptable.",
        name:"contents",
        setter:[
            "setContents"
        ],
        seeAlso:[
            {
                ref:"attr:Label.dynamicContents",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "contents"
        ]
    },
    "attr:FacetChart.gradationTickMarkLength":{
        ref:"attr:FacetChart.gradationTickMarkLength",
        flags:"IR",
        description:"Length of the tick marks used to denote the gradations of any\n ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','extra value axes')}.",
        name:"gradationTickMarkLength",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:CubeGrid.selectAllFacetValues":{
        ref:"method:CubeGrid.selectAllFacetValues",
        flags:"",
        description:" Select/deselect all headers in a headerBar (specified by facetId) or\n all headerBars (if no facetId).\n\n  <br><i>methodType</i> action\n",
        name:"selectAllFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of facet - if null, selects all headerbars' headers",
                optional:true,
                name:"facetId",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new selection state - if null defaults to true",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:DrawPane.setRotation":{
        ref:"method:DrawPane.setRotation",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:DrawPane.rotation','rotation')} of the <code>DrawPane</code>.\n\n",
        name:"setRotation",
        seeAlso:[
        ],
        params:[
            {
                description:"the new rotation in degrees. The positive direction corresponds to clockwise rotation.",
                optional:false,
                name:"degrees",
                defaultValue:null,
                type:"double"
            }
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "method:ListGrid.getSelection":{
        ref:"method:ListGrid.getSelection",
        flags:"",
        description:" Returns all selected records, as an Array.\n\n",
        name:"getSelection",
        seeAlso:[
        ],
        params:[
            {
                description:"When true, partially selected records will not be returned.                                   Otherwise, both fully and partially selected records are\n                                   returned.",
                optional:true,
                name:"excludePartialSelections",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"list of records, empty list if nothing selected",
            type:"Array of ListGridRecord"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundRemove')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "method:DataBoundComponent.getSort":{
        ref:"method:DataBoundComponent.getSort",
        flags:"",
        description:" Return the ${isc.DocUtils.linkForRef('object:SortSpecifier')}s representing the current sort configuration of this\n component.\n",
        name:"getSort",
        seeAlso:[
        ],
        returns:{
            description:"sortSpecifiersThe current sort specification for this component",
            type:"Array of SortSpecifier"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "method:DateChooser.getData":{
        ref:"method:DateChooser.getData",
        flags:"",
        description:" Get the current value of the picker.\n <P>\n See ${isc.DocUtils.linkForRef('method:DateChooser.dataChanged')} for how to respond to the user picking a date.\n\n",
        name:"getData",
        seeAlso:[
        ],
        returns:{
            description:"current date",
            type:"Date"
        },
        type:"method",
        definingClass:"class:DateChooser"
    },
    "method:DynamicForm.valuesAreValid":{
        ref:"method:DynamicForm.valuesAreValid",
        flags:"",
        description:" Method to determine whether the current form values would pass validation.\n This method will run validators on the form's values and return a value indicating whether\n validation was successful.\n <P>\n Unlike ${isc.DocUtils.linkForRef('method:DynamicForm.validate')} this method will not store the errors on the DynamicForm\n or display them to the user.\n",
        name:"valuesAreValid",
        seeAlso:[
        ],
        params:[
            {
                description:"Should validators be processed for non-visible fields         such as dataSource fields with no associated item or fields with visibility set to\n         <code>\"hidden\"</code>?",
                optional:false,
                name:"validateHiddenFields",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"If unset, this method returns a simple boolean value indicating success or failure of validation. If this parameter is passed, this method will return\n an object mapping each field name to the errors(s) encountered on validation failure, or null\n if validation was successful.",
                optional:false,
                name:"returnErrors",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"Boolean value indicating validation success, or if  <code>returnErrors</code> was specified, an object containing the generated errors mapped to\n their fieldNames.",
            type:"boolean | object | null"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:ListGrid.summaryRowDataSource":{
        ref:"attr:ListGrid.summaryRowDataSource",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true, by default summary values are calculated on the\n client based on the current data-set for the grid (see ${isc.DocUtils.linkForRef('method:ListGrid.getGridSummary')} and\n ${isc.DocUtils.linkForRef('method:ListGrid.getGridSummaryFunction')}).\n <P>\n In some cases however it may make sense to calculate summary values on the server and retrieve\n them via a dataSource fetch. If set, this property specifies a dataSource to fetch against for\n the summary row. The dataSource should return a single record with summary data for each\n field for which summary data should be shown. Note that specifying this property completely\n bypasses the standard client-side grid summary calculation logic.\n <P>\n The fetch may be further customized via ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRowCriteria')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRowFetchRequestProperties')}",
        name:"summaryRowDataSource",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:TabSet.setCanCloseTab":{
        ref:"method:TabSet.setCanCloseTab",
        flags:"",
        description:" Sets the given tab's ${isc.DocUtils.linkForRef('attr:Tab.canClose','canClose')} property to the boolean parameter canClose.\n If canClose is null, this will have the effect of causing the tab to fall back on ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')}.\n",
        name:"setCanCloseTab",
        seeAlso:[
        ],
        params:[
            {
                description:"tab to change",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | ID | name | number"
            },
            {
                description:"new value for the tab's canClose property, or null to clear it",
                optional:false,
                name:"canClose",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "group:jpaHibernateRelations":{
        ref:"group:jpaHibernateRelations",
        title:"JPA &amp; Hibernate Relations",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"JPA and Hibernate allow relations to be declared between entities where there is no actual\n Java field for storing the ID of a related entity, even though such a column exists in the\n database.  For example:\n <pre>\n    &#64;ManyToOne\n    &#64;JoinColumn(name=\"countryId\", referencedColumnName=\"countryId\")\n    private Country country;\n </pre>\n JPADataSource and HibernateDataSource support this style of declaration and will\n automatically handle mapping between IDs and entities.\n <p>\n The example above and the following examples assume a DataSource \"country\" for a\n JPA/Hibernate entity \"Country\" with an Id field of \"countryId\", and a DataSource \"city\" for a\n JPA/Hibernate entity \"City\" with an Id field of \"cityId\".\n <p>\n <h3>Many-To-One Relations</h3>\n <p>\n An example of Many-To-One is that Many \"City\"s belong to One \"Country\".  In Java, each City\n bean has a field of type Country.  In the database, rows for cities and countries are linked\n by ID.\n <p>\n To specify a many-to-one relation, declare a DataSourceField named after the Java field that\n declares the relation (\"country\" above) with the property\n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} pointing to related DataSource's primary key:\n <pre>\n    &lt;field name=\"country\" foreignKey=\"country.countryId\"/&gt;\n </pre>\n When delivered to the browser, the value of the <code>country</code> field will be the ID of\n the related Country entity.  The <code>country</code> field can be treated as a normal text\n or integer field value, for example, you can use a ${isc.DocUtils.linkForRef('class:SelectItem')} that uses\n ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource')} to allow selecting the ID of a different related\n entity.  Then, when the new ID is saved to the server, JPADataSource automatically looks up\n the related object and persists the new relation to JPA.\n <p>\n <b>NOTE:</b>: do not declare a \"type\" attribute for such a field - these fields provide\n specialized mapping between IDs and JPA/Hibernate entities, so don't really have a single\n concrete type.\n <p>\n If you want fields from a related entity to be included whenever your entity is fetched, for\n example, whenever a city is fetched you want the <code>countryName</code> fetched from the\n related <code>country</code> entity, use ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom')}.\n <p>\n <b>Automatic Criteria translation</b>\n <p>\n If criteria are submitted for a ManyToOne relation field containing an ID value, this will\n correctly return Records that are associated with the related object that has that ID.\n <p>\n For example, given a countryId of \"1\", you can fetch all city Records that are related to\n that countryId as follows:\n <smartclient>\n <pre>\n   isc.DataSource.get(\"city\").fetchData({ countryId: 1 }, <callback>);\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n    DataSource.get(\"city\").fetchData(new Criteria(\"countryId\", \"1\"), <callback>);\n </pre>\n </smartgwt>\n <p>\n <h3>One-to-Many Relations</h3>\n <p>\n An example of One-To-Many relation is that One \"Country\" has Many \"City\"'s.  Each \"Country\"\n has a list of cities within it, which may be declared as a Java bean property of Collection\n type (or List, Set, etc).\n <p>\n To specify a one-to-many relation, declare a DataSourceField that:\n <ul>\n <li> is named after the Java field that declares the OneToMany relation (whose type is a\n      Collection of the related entities)\n <li> declares its \"type\" to be the ID of the related DataSource\n <li> declares a ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} pointing to the related\n      DataSource's primaryKey field\n <li> sets multiple=\"true\"\n </ul>\n For example, for a Country bean that has a Collection of City beans:\n <pre>\n     &lt;field name=\"cities\" type=\"city\" multiple=\"true\" foreignKey=\"city.cityId\"/&gt;\n </pre>\n With this declaration, whenever Records are loaded from the Country DataSource, they will\n contain a list of City Records as subobjects, accessible via \n <smartgwt><code>countryRecord.getAttributeAsRecordList(\"cities\")</code></smartgwt>\n <span class=\"client\">countryRecord.cities</span>\n <p>\n If loading all related \"city\" records is desirable in some circumstances and not others, you\n can use ${isc.DocUtils.linkForRef('attr:OperationBinding.outputs')} to avoid loading \"city\" records for certain\n operations.\n <p>\n <h3>Many-To-Many Relations</h3>\n An example of Many-To-Many relation is that Students have multiple Courses and each Course has \n multiple Students. In Java each Student bean has a list of Courses and each Course bean has a \n list of Students. In database tables are linked using additional table holding references to \n both students and courses.\n <P>\n To set up Many-To-Many relation between data sources you need to set up One-To-Many relation on \n both sides.\n <P>\n For example students DataSourceField for CourseDS data source:\n <pre>\n     &lt;field name=\"students\" type=\"integer\" foreignKey=\"StudentDS.id\" multiple=\"true\" /&gt;\n </pre>\n and courses DataSourceField for StudentDS data source:\n <pre>\n     &lt;field name=\"courses\" type=\"integer\" foreignKey=\"CourseDS.id\" multiple=\"true\" /&gt;\n </pre>\n Note that type attribute can be safely omitted here.\n <P>\n <b>Note</b> that alternative type declaration to be ID of related data source (as in regular \n One-To-Many relation case) would work as expected, but is <b>not recommended</b> to use, cause \n it would result in getting lots of copies of same data. Smartclient server will prevent infinite \n loops, but still lots of unnecessary data will be sent to client.\n <P>\n <h3>Alternative: Many-To-One loading complete related object</h3>\n <p>\n For a Many-To-One relation, instead of loading just the ID of the related object, you can\n load the entire related object as a nested Record.  To do so, just declare the type of the\n field to be the ID of the related DataSource, rather than leaving type unset:\n <pre>\n     &lt;field name=\"country\" type=\"country\" foreignKey=\"country.countryId\"/&gt;\n </pre>\n The nested \"country\" Record will be available on a \"city\" record via \n <smartgwt><code>cityRecord.getAttributeAsRecord(\"country\")</code></smartgwt>\n <smartclient>cityRecord.country</smartclient>.\n Saving a City record that contains a nested Country record in the \"country\"\n attribute will result in the Country being updated in JPA/Hibernate.\n <P>\n This mode is not typically used, since loading just the ID of the related Country object is\n more efficient if many cities are being loaded, and the related Country object can always be\n loaded with a second fetchData() data, which can still be done in a single HTTP request via\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queuing')}.\n <P>\n <h3>Alternative: One-To-Many loading related IDs</h3>\n <p>\n For a One-To-Many relation, instead of loading the complete list of related objects, you can\n load just a list of their IDs.  To do so, just omit the type declaration when declaring the\n relation:\n <pre>\n    &lt;field name=\"cities\" multiple=\"true\" foreignKey=\"city.cityId\"/&gt;\n </pre>\n When saving, if a replacement list of IDs is included in the Record, the appropriate\n JPA/Hibernate relationships will be updated.\n <P>\n This is very rarely used, and would typically only be used by client-side code that plans to\n programmatically work with the list of related IDs rather than display them in a UI\n component.\n <p>\n <h3><b>NOTE:</b> Bidirectional relations</h3>\n <p>\n When relations are declared, JPA and Hibernate consider only one of the two entities to be\n the \"owner\" of the relation, meaning essentially that the references that make up the\n relationship are stored with that entity.  When performing updates, make sure you update the\n entity that \"owns\" the relation.  All changes to relations on \"non-owning\" entities are\n silently discarded.\n <p>\n <h3>Search criteria on One-to-Many and Many-to-Many relations</h3>\n <p>\n The following ${isc.DocUtils.linkForRef('object:Operator','search operators')} are supported with the behaviors listed\n below.  For simple Criteria, criteria values are treated identically to the \"equals\"\n operator and the ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle','textMatchStyle')} is ignored.\n <P>\n Examples are given in terms of a \"country\" DataSource that has a one-to-many relation with a \"city\"\n DataSource through a relation field called \"cities\"\n <p>\n <table border=1 class=\"normal\">\n <tr>\n <td>Operator</td><td>Behavior</td>\n </tr>\n <tr>\n <td><code>isNull</code></td><td>matches country records which have no related cities</td>\n </tr>\n <tr>\n <td><code>notNull</code></td><td>matches country records which have at least one related city</td>\n </tr>\n <tr>\n <td><code>equals, notEqual</code></td><td>\n <code>criterion.value</code> should be a primaryKey value for the related\n city DataSource.  This criterion matches any country which\n contains the passed city (or for \"notEqual\", matches any country which\n <b>does not</b> contain the passed city.  \n </td>\n </tr>\n <tr>\n <td><code>inSet, notInSet</code></td><td>\n <code>criterion.value</code> should an array of primaryKey values for the\n related city DataSource.  This criterion matches any country which\n contains <b>any</b> of the passed cities (or for \"notInSet\", which\n contains <b>none</b> of the passed cities).</td>\n </tr>\n </table>\n The following is an example of a criterion for matching a \"country\" records which have related\n cities with primaryKey values 1, 2 or 3 (shown serialized as JSON):\n <pre>\n   {fieldName:\"cities\", operator:\"inSet\", value:[1,2,3]}\n </pre>\n As an alternative syntax, \"equals\", \"notEqual\", \"inSet\" and \"notInSet\" will also allow\n <code>criterion.value</code> to be specified as a list of Objects, each containing the\n primaryKey field and its value:\n <pre>\n      {fieldName:\"cities\",operator:\"inSet\",value:[{cityId:1},{cityId:2},cityId:3]}\n </pre>\n The operators explained above work the same way for Many-To-Many relation fields.\n <p>\n Any other operator applied to a relation field will cause a warning to be logged, and will be\n treated as though the criterion were not present (matches all records).",
        name:"jpaHibernateRelations",
        seeAlso:[
        ],
        type:"group"
    },
    "method:MultiSortDialog.validate":{
        ref:"method:MultiSortDialog.validate",
        flags:"",
        description:" Validate that no two ${isc.DocUtils.linkForRef('object:SortSpecifier')}s sort on the same \n ${isc.DocUtils.linkForRef('attr:SortSpecifier.property','property')}.\n\n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"True if validation succeeds, false if any property is used twice",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:MultiSortDialog"
    },
    "attr:TreeMenuButton.showPath":{
        ref:"attr:TreeMenuButton.showPath",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeMenuButton.title','title')} is null, when the user selects an item, should we \n show the full path to the item, or just the item's title as the button's title?",
        name:"showPath",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeMenuButton"
    },
    "method:Canvas.moved":{
        ref:"method:Canvas.moved",
        flags:"",
        description:" Notification method fired when this component is explicitly moved.\n Note that a component's position on the screen may also changed due to an ancestor being\n moved. The ${isc.DocUtils.linkForRef('method:Canvas.parentMoved')} method provides a notification entry point to catch\n that case as well.\n\n",
        name:"moved",
        seeAlso:[
        ],
        params:[
            {
                description:"horizontal difference between current and previous position",
                optional:false,
                name:"deltaX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"vertical difference between current and previous position",
                optional:false,
                name:"deltaY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "classMethod:Date.setDefaultDateSeparator":{
        ref:"classMethod:Date.setDefaultDateSeparator",
        flags:"",
        description:" Sets a new default separator that will be used when formatting dates. By default, this\n is a forward slash character: \"/\"\n",
        name:"setDefaultDateSeparator",
        seeAlso:[
        ],
        params:[
            {
                description:"separator to use in dates",
                optional:false,
                name:"separator",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "method:TileLayout.setTileMargin":{
        ref:"method:TileLayout.setTileMargin",
        flags:"",
        description:" Sets the vertical and horizontal margin of tiles.\n",
        name:"setTileMargin",
        seeAlso:[
        ],
        params:[
            {
                description:"margin",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "tileLayout"
        ]
    },
    "attr:ListGrid.includeHilitesInSummaryFields":{
        ref:"attr:ListGrid.includeHilitesInSummaryFields",
        flags:"IRWA",
        description:"When assembling a value for a ${isc.DocUtils.linkForRef('attr:ListGrid.canAddSummaryFields','summary field')}, if a referenced\n field is hilited, should the hilite HTML be included in the summary field value?\n <P>\n To control hilites showing in group summaries, see ${isc.DocUtils.linkForRef('attr:ListGrid.showHilitesInGroupSummary','showHilitesInGroupSummary')}.",
        name:"includeHilitesInSummaryFields",
        seeAlso:[
            {
                ref:"method:ListGrid.shouldIncludeHiliteInSummaryField",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.selectHeaderOnSort":{
        ref:"attr:ListGrid.selectHeaderOnSort",
        flags:"IRW",
        description:"If true, show the field-header for the sorted field (or the first field in a\n ${isc.DocUtils.linkForRef('attr:ListGrid.canMultiSort','multi-sort')} grid) in the selected state.",
        name:"selectHeaderOnSort",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "type:ListGridFieldType":{
        ref:"type:ListGridFieldType",
        values:[
            {
                description:"Simple text rendering for view.  For editing a text entry field is shown. If the length of the field (as specified by the ${isc.DocUtils.linkForRef('attr:DataSourceField.length')}\n attribute) is larger than the value specified by ${isc.DocUtils.linkForRef('attr:ListGrid.longTextEditorThreshold')}, a\n text input icon is shown that, when clicked on (or field is focused in) opens a larger\n editor that expands outside the boundaries of the cell (textarea by default, but\n overrideable via ${isc.DocUtils.linkForRef('attr:ListGrid.longTextEditorType')}).",
                value:"\"text\""
            },
            {
                description:"For viewing and editing a checkbox is shown with a check mark for the <code>true</code> value and no check mark for the <code>false</code> value. This behavior\n may be suppressed by setting link{listGridField.suppressValueIcon} for the field. See\n ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} for customization.",
                value:"\"boolean\""
            },
            {
                description:"A whole number, e.g. <code>123</code>. Consider setting ${isc.DocUtils.linkForRef('attr:ListGridField.editorType','editorType')} to use a ${isc.DocUtils.linkForRef('class:SpinnerItem')}.",
                value:"\"integer\""
            },
            {
                description:"A floating point (decimal) number, e.g. <code>1.23</code>.  Consider setting ${isc.DocUtils.linkForRef('attr:ListGridField.editorType','editorType')} to use a ${isc.DocUtils.linkForRef('class:SpinnerItem')}.",
                value:"\"float\""
            },
            {
                description:"Field value should be a <code>Date</code> instance representing a logical date, with no time of day information.  See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for\n details of the logical date type and how it is represented and manipulated.\n <P>\n Dates will be formatted using ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter','ListGridField.dateFormatter')}\n if specified, otherwise\n ${isc.DocUtils.linkForRef('attr:ListGrid.dateFormatter','ListGrid.dateFormatter')}.\n If both these attributes are unset, dates are formatted\n using the standard ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat','short display format')} for dates.\n <P>\n For editing, by default a ${isc.DocUtils.linkForRef('class:DateItem')} is used with ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} set\n to true, providing textual date entry plus a pop-up date picker. The\n ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter','dateFormatter')} and ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat','inputFormat')}\n for the editor will be picked up from the ListGridField, if specified.",
                value:"\"date\""
            },
            {
                description:"Field value should be a <code>Date</code> instance representing a logical time, meaning time value that does not have a specific day and also has no timezone.  See\n ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for details of the logical time type and how it is\n represented and manipulated.\n <P>\n Times will be formatted using ${isc.DocUtils.linkForRef('attr:ListGridField.timeFormatter','ListGridField.timeFormatter')}\n if specified,\n otherwise ${isc.DocUtils.linkForRef('attr:ListGrid.timeFormatter','ListGrid.timeFormatter')}.\n <P>\n If both these attributes are unset, times are formatted using the standard\n ${isc.DocUtils.linkForRef('classAttr:Time.shortDisplayFormat','short display format')} for times.\n <P>\n For editing, by default a ${isc.DocUtils.linkForRef('class:TimeItem')} is used. The\n ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter','timeFormatter')} for the editor will be picked up from\n the ListGridField, if specified.",
                value:"\"time\""
            },
            {
                description:"Field value should be a <code>Date</code> instance representing a specific date and time value.  See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for details of the\n datetime type and how it is represented and manipulated.\n <P>\n Dates will be formatted using ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter','ListGridField.dateFormatter')}\n if specified, otherwise\n ${isc.DocUtils.linkForRef('attr:ListGrid.datetimeFormatter','ListGrid.datetimeFormatter')}.\n If both these attributes are unset, dates are formatted\n using the standard ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat','short display format')} for\n datetime values.\n <P>\n For editing, by default a ${isc.DocUtils.linkForRef('class:DateTimeItem')} is used, providing textual date entry plus\n a pop-up date picker.  The ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter','dateFormatter')} and\n ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat','inputFormat')} for the editor will be picked up from the\n ListGridField, if specified.",
                value:"\"datetime\""
            },
            {
                description:"Same as <code>text</code>",
                value:"\"sequence\""
            },
            {
                description:"Renders a clickable html link (using an HTML anchor tag: &lt;A&gt;). The target URL is the value of the field, which is also the default display value.  You\n can override the display value by setting ${isc.DocUtils.linkForRef('attr:ListGridRecord.linkText')} or\n ${isc.DocUtils.linkForRef('attr:ListGridField.linkText')}.\n <P>\n Clicking the link opens the URL in a new window by default.  To change this behavior,\n you can set <code>field.target</code>, which works identically to the \"target\"\n attribute on an HTML anchor (&lt;A&gt;) tag.  See ${isc.DocUtils.linkForRef('attr:ListGridField.target')} for more\n information.\n <P>\n In inline edit mode, this type works like a text field.\n <P>\n To create a link not covered by this feature, consider using\n ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue')} along with ${isc.DocUtils.linkForRef('method:Canvas.linkHTML')}, or simply\n ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle','styling the field')} to look like a link, and providing\n interactivity via ${isc.DocUtils.linkForRef('method:ListGridField.recordClick','field.recordClick()')}.",
                value:"\"link\""
            },
            {
                description:"Renders a different image in each row based on the value of the field.  If this URL is not absolute, it is assumed to be relative to\n ${isc.DocUtils.linkForRef('attr:ListGridField.imageURLPrefix')} if specified. The size of the image is controlled by\n ${isc.DocUtils.linkForRef('attr:ListGridField.imageSize')}, ${isc.DocUtils.linkForRef('attr:ListGridField.imageWidth')},\n ${isc.DocUtils.linkForRef('attr:ListGridField.imageHeight')} (and by the similarly-named global default\n attributes on the ListGrid itself).\n <P>\n You can also specify the following attributes on the field: <code>activeAreaHTML</code>, and\n <code>extraStuff</code> - these are passed to ${isc.DocUtils.linkForRef('method:Canvas.imgHTML')} to generate the\n final URL.\n <P>\n Note if you want to display icons <b>in addition to</b> the normal cell value, you\n can use ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons','valueIcons')} instead.",
                value:"\"image\""
            },
            {
                description:"Shows ${isc.DocUtils.linkForRef('attr:ListGridField.icon','field.icon')} in every cell, and also in the header.  Useful for a field that is used as a button, for example, launches a detail\n window or removes a row.  Implement a ${isc.DocUtils.linkForRef('method:ListGridField.recordClick','field.recordClick')}\n to define a behavior for the button.\n <P>\n NOTE: for a field that shows different icons depending on the field value, see\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons')}.\n <P>\n <code>type:\"icon\"</code> also defaults to a small field width, accommodating just the icon\n with padding, and to a blank header title, so that the header shows the icon only.\n <P>\n ${isc.DocUtils.linkForRef('attr:ListGridField.iconWidth','field.iconWidth')} and related properties configure\n the size of the icon both in the header and in body cells.\n <P>\n If you want the icon to appear only in body cells and not in the header, set\n ${isc.DocUtils.linkForRef('attr:ListGridField.cellIcon','field.cellIcon')} instead, leaving field.icon null.",
                value:"\"icon\""
            },
            {
                description:"For viewing, the grid renders a 'view' icon (looking glass) followed by a 'download' icon and then the name of the file is displayed in text.  If the user clicks the\n 'view' icon, a new browser window is opened and the file is streamed to that browser\n instance, using ${isc.DocUtils.linkForRef('method:DataSource.viewFile')}.  For images and other file types with\n known handlers, the content is typically displayed inline - otherwise the browser will\n ask the user how to handle the content.  If the download icon is clicked,\n ${isc.DocUtils.linkForRef('method:DataSource.downloadFile')} is used to cause the browser to show a \"save\" dialog.\n There is no inline editing mode for this field type.",
                value:"\"binary\""
            },
            {
                description:"Same as <code>binary</code>",
                value:"\"imageFile\""
            },
            {
                description:"Show a calculated summary based on other field values within the  current record. See ${isc.DocUtils.linkForRef('attr:ListGridField.recordSummaryFunction')} for more information",
                value:"\"summary\""
            },
            {
                description:"Fields of this type can contain any data value and have no default  formatting or validation behavior. This is useful as the \n ${isc.DocUtils.linkForRef('attr:SimpleType.inheritsFrom','parent type')} for SimpleTypes\n where you do not want any of the standard validation or formatting logic\n to be inherited from the standard built-in types.",
                value:"\"any\""
            },
            {
                description:"An integer number with locale-based formatting, e.g. <code>12,345,678</code>. See ${isc.DocUtils.linkForRef('group:localizedNumberFormatting','Localized Number Formatting')}\n for more info.",
                value:"\"localeInt\""
            },
            {
                description:"A float number with locale-based formatting, e.g. <code>12,345.67</code>. See ${isc.DocUtils.linkForRef('group:localizedNumberFormatting','Localized Number Formatting')}\n for more info.",
                value:"\"localeFloat\""
            },
            {
                description:"A float number with locale-based formatting and using currency symbol, e.g. <code>$12,345.67</code>.\n See ${isc.DocUtils.linkForRef('group:localizedNumberFormatting','Localized Number Formatting')}\n for more info.",
                value:"\"localeCurrency\""
            },
            {
                description:"A telephone number.  Uses ${isc.DocUtils.linkForRef('attr:FormItem.browserInputType')} \"tel\" to hint to the device to restrict input.  On most mobile devices that have\n software keyboards, this cause a specialized keyboard to appear which\n only allows entry of normal phone numbers.  When displayed read-only,\n a \"phoneNumber\" renders as an HTML link with the \"tel:\" URL scheme,\n which will invoke the native phone dialing interface on most mobile\n devices.  In addition, the CSS style \"sc_phoneNumber\" is applied.\n <p>\n By default, \"phoneNumber\" fields do not include validators, however the\n following validator definition would limit to digits, dashes and the\n \"+\" character:\n xml:\n <p>\n     &lt;validator type=\"regexp\" expression=\"^(\\(?\\+?[0-9]*\\)?)?[0-9_\\- \\(\\)]*$\"\n         errorMessage=\"Phone number should be in the correct format e.g. +#(###)###-##-##\" /&gt;\n     <smartclient>\n <p>\n or directly in JavaScript:\n <p>\n <pre>\n {type:\"regexp\", expression:\"^(\\\\(?\\\\+?[0-9]*\\\\)?)?[0-9_\\\\- \\\\(\\\\)]*$\", \n     errorMessage:\"Phone number should be in the correct format e.g. +#(###)###-##-##\"}\n </pre>\n </smartclient>\n <smartgwt>\n <p>\n or directly in Java:\n <p>\n <pre>\n RegExpValidator v = new RegExpValidator();\n v.setType(ValidatorType.REGEXP);\n v.setErrorMessage(\"Phone number should be in the correct format e.g. +#(###)###-##-##\");\n v.setExpression(\"^(\\\\(?\\\\+?[0-9]*\\\\)?)?[0-9_\\\\- \\\\(\\\\)]*$\");\n </pre>\n </smartgwt>\n and adding \"#\" and \"*\" to the regular expressions above would allow for\n users to enter special keys sometimes used for extension numbers or\n pauses",
                value:"\"phoneNumber\""
            }
        ],
        description:"ListGrids format data for viewing and editing based on the <i>type</i> attribute of the\n field.  This table describes how the ListGrid deals with the various built-in types.",
        name:"ListGridFieldType",
        seeAlso:[
            {
                ref:"attr:ListGridField.type",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            }
        ],
        type:"type",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridsDataTypes')}"
        ]
    },
    "attr:SimpleType.name":{
        ref:"attr:SimpleType.name",
        flags:"IR",
        description:"Name of the type, used to refer to the type from ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field.type')}.",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:SimpleType"
    },
    "method:Calendar.getPeriodStartDate":{
        ref:"method:Calendar.getPeriodStartDate",
        flags:"",
        description:" Returns the start of the selected week or month depending on the current calendar view.  \n For the month view, and for the week view when not showing weekends, this will often be a \n different date than that returned by ${isc.DocUtils.linkForRef('method:Calendar.getVisibleStartDate')}.\n",
        name:"getPeriodStartDate",
        seeAlso:[
        ],
        returns:{
            description:"period start date",
            type:"Date"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ImgSplitbar.canDrag":{
        ref:"attr:ImgSplitbar.canDrag",
        flags:"IRW",
        description:"<code>canDrag</code> set to true to allow dragging of the split bar. Dragging the\n Splitbar will resize it's ${isc.DocUtils.linkForRef('attr:Splitbar.target','target')}",
        name:"canDrag",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgSplitbar"
    },
    "object:DrawnValue":{
        methods:[
        ],
        ref:"object:DrawnValue",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Charts/FacetChart"
        ],
        attrs:[
            "attr:DrawnValue.x",
            "attr:DrawnValue.y",
            "attr:DrawnValue.startAngle",
            "attr:DrawnValue.endAngle",
            "attr:DrawnValue.radius",
            "attr:DrawnValue.barThickness",
            "attr:DrawnValue.value",
            "attr:DrawnValue.facetValues",
            "attr:DrawnValue.record"
        ],
        description:"Returns information about how a data value is rendered in a chart.",
        name:"DrawnValue",
        seeAlso:[
        ],
        type:"object"
    },
    "method:FormItem.getCanFocus":{
        ref:"method:FormItem.getCanFocus",
        flags:"",
        description:" Returns true for items that can accept keyboard focus such as data items \n (${isc.DocUtils.linkForRef('class:TextItem','TextItems')}, ${isc.DocUtils.linkForRef('class:TextAreaItem','TextAreaItems')}, etc), \n ${isc.DocUtils.linkForRef('class:CanvasItem','CanvasItems')} with a focusable canvas, or items where ${isc.DocUtils.linkForRef('attr:FormItem.canFocus')}\n was explicitly set to true.\n \n",
        name:"getCanFocus",
        seeAlso:[
        ],
        returns:{
            description:"true if the form item is visible",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "focus"
        ]
    },
    "attr:IconButton.showTitle":{
        ref:"attr:IconButton.showTitle",
        flags:"IRW",
        description:"showTitle is not applicable to this class - use ${isc.DocUtils.linkForRef('attr:IconButton.showButtonTitle')}\n instead.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:TreeGrid.showDisabledSelectionCheckbox":{
        ref:"attr:TreeGrid.showDisabledSelectionCheckbox",
        flags:"IR",
        description:"Should tree nodes show a disabled checkbox \n ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance','selectionAppearance')}:\"checkbox\" \n is set on the treegrid, and a node can't be selected? \n <P>\n If set to <code>false</code> the treeGrid will use \n ${isc.DocUtils.linkForRef('attr:TreeGrid.leaveSelectionCheckboxGap')} to determine whether to leave\n a blank space where the checkbox would normally appear.",
        name:"showDisabledSelectionCheckbox",
        seeAlso:[
            {
                ref:"attr:ListGrid.recordCanSelectProperty",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:ListGrid.canDropInEmptyArea":{
        ref:"attr:ListGrid.canDropInEmptyArea",
        flags:"IRW",
        description:"If set to false, dropping over an empty part of the grid body is disallowed and the\n no-drop indicator is displayed.",
        name:"canDropInEmptyArea",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ListGrid.printCheckboxFieldPartialImage":{
        ref:"attr:ListGrid.printCheckboxFieldPartialImage",
        flags:"IRWA",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldPartialImage')} to use when ${isc.DocUtils.linkForRef('groupDef:printing','printing')}.",
        name:"printCheckboxFieldPartialImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.checkboxFieldPartialImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField",
            "printing"
        ]
    },
    "classMethod:Date.create":{
        ref:"classMethod:Date.create",
        flags:"",
        description:"  Create a new <code>Date</code> object - synonym for <code>new Date(arguments)</code>\n",
        name:"create",
        seeAlso:[
        ],
        returns:{
            description:"Date object",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:Canvas.snapResizeToGrid":{
        ref:"attr:Canvas.snapResizeToGrid",
        flags:"IRW",
        description:"Causes this canvas to snap to its parent's grid when resizing.\n Note that this value defaults to the Canvas's\n ${isc.DocUtils.linkForRef('attr:Canvas.snapToGrid','snapToGrid')} value if undefined.",
        name:"snapResizeToGrid",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ServerObject.ID":{
        ref:"attr:ServerObject.ID",
        flags:"IR",
        description:"You can optionally specify an ID on the ServerObject config block - in which case you can\n use that value as the \"className\" argument when calling ${isc.DocUtils.linkForRef('classMethod:DMI.call')}.  This allows you to\n hide the name of the server-side class used as the factory or implementer of the DMI from\n the browser as a security precaution.",
        name:"ID",
        seeAlso:[
            {
                ref:"attr:ServerObject.className",
                description:null
            },
            {
                ref:"classMethod:DMI.call",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "attr:DataSource.enumTranslateStrategy":{
        ref:"attr:DataSource.enumTranslateStrategy",
        flags:"IA",
        description:"Sets the strategy this DataSource uses to translate Java enumerated types (objects of type\n enum) to and from Javascript.\n \n This property is only applicable if you are using the SmartClient server",
        name:"enumTranslateStrategy",
        seeAlso:[
        ],
        valueType:"EnumTranslateStrategy",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:StretchImgButton.iconSize":{
        ref:"attr:StretchImgButton.iconSize",
        flags:"IR",
        description:"Size in pixels of the icon image.\n <P>\n The <code>iconWidth</code> and <code>iconHeight</code> properties can be used to\n configure width and height separately.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ColorPicker.modeToggleButtonConstructor":{
        ref:"attr:ColorPicker.modeToggleButtonConstructor",
        flags:"IRWA",
        description:"The class of the mode toggle button. It is intended that you use either IButton or \n      Button - other classes are unlikely to work correctly.",
        name:"modeToggleButtonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"IButton",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "group:toolbar":{
        ref:"group:toolbar",
        refs:[
            "attr:Dialog.showToolbar",
            "attr:Dialog.autoFocus"
        ],
        name:"toolbar",
        seeAlso:[
        ],
        type:"group"
    },
    "type:Autofit":{
        ref:"type:Autofit",
        values:[
            {
                description:"expand vertically to accommodate records.",
                value:"\"vertical\""
            },
            {
                description:"expand horizontally to accommodate fields.",
                value:"\"horizontal\""
            },
            {
                description:"expand horizontally and vertically to accommodate content.",
                value:"\"both\""
            }
        ],
        description:"Possible values to change the behavior of how data will fill the ListGrid.",
        name:"Autofit",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoFitData"
        ]
    },
    "method:TreeGrid.getNodeTitle":{
        ref:"method:TreeGrid.getNodeTitle",
        flags:"",
        description:"\n Returns the title to show for a node in the tree column.  If the field specifies the\n <code>name</code> attribute, then the current <code>node[field.name]</code> is returned.\n Otherwise, the result of calling ${isc.DocUtils.linkForRef('method:Tree.getTitle')} on the node is called.\n <br><br>\n You can override this method to return a custom title for node titles in the tree column.\n\n",
        name:"getNodeTitle",
        seeAlso:[
            {
                ref:"method:Tree.getTitle",
                description:null
            }
        ],
        params:[
            {
                description:"The node for which the title is being requested.",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"The index of the node.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"The field for which the title is being requested.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DSField"
            }
        ],
        returns:{
            description:"the title to display.",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:Calendar.eventsRendered":{
        ref:"method:Calendar.eventsRendered",
        flags:"",
        description:" A notification method fired when the events in the current view have been refreshed.\n",
        name:"eventsRendered",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ListGrid.filterEditor":{
        ref:"attr:ListGrid.filterEditor",
        flags:"R",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is set to true, the <code>filterEditor</code>\n is automatically created as an AutoChild.<br>\n Developers may customize the AutoChild using ${isc.DocUtils.linkForRef('attr:ListGrid.filterEditorProperties')}.",
        name:"filterEditor",
        seeAlso:[
        ],
        valueType:"RecordEditor AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:SplitPane.navigationPane":{
        ref:"attr:SplitPane.navigationPane",
        flags:"IRW",
        description:"The left-hand of the two panes managed by this widget, used for navigation.",
        name:"navigationPane",
        setter:[
            "setNavigationPane"
        ],
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:Selection.deselectRange":{
        ref:"method:Selection.deselectRange",
        flags:"",
        description:"\t\t\tDeselect range of records from <code>start</code> to <code>end</code>, non-inclusive\n\n",
        name:"deselectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start index to select",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end index (non-inclusive)",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:ColumnTree.folderIcon":{
        ref:"attr:ColumnTree.folderIcon",
        flags:"IRW",
        description:"The URL of the base icon for all folder nodes in this columnTree. Note that this URL will\n have ${isc.DocUtils.linkForRef('attr:ColumnTree.openIconSuffix')} or ${isc.DocUtils.linkForRef('attr:ColumnTree.closedIconSuffix')} appended to \n indicate state changes if appropriate - see documentation on  ${isc.DocUtils.linkForRef('attr:ColumnTree.showOpenIcons')}",
        name:"folderIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]folder.gif\"",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "attr:ListGrid.fastCellUpdates":{
        ref:"attr:ListGrid.fastCellUpdates",
        flags:"I",
        description:"<b>Note: This property only has an effect in Internet Explorer</b>\n <P>\n Advanced property to improve performance for dynamic styling of gridRenderer cells in\n Internet Explorer, at the expense of slightly slower initial drawing, and some \n limitations on supported styling options.\n <P>\n <code>fastCellUpdates</code> speeds up the dynamic styling system used by rollovers,\n selections, and custom styling that calls ${isc.DocUtils.linkForRef('method:GridRenderer.refreshCellStyle')}, at\n the cost of slightly slower draw() and redraw() times.\n <P>\n Notes:\n <ul>\n <li>When this property is set, ListGrid cells may be styled using the \n     ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')}. See ${isc.DocUtils.linkForRef('method:ListGrid.getBaseStyle')} for \n     more information.</li>\n <li>If any cell styles specify a a background image URL, the URL will be resolved relative\n     to the page location rather than the location of the CSS stylesheet. This means cell\n     styles with a background URL should either supply a fully qualified path, or the\n     background image media should be made available at a second location for IE.</li>\n <li>fastCellUpdates will not work if the styles involved are in an external stylesheet loaded\n     from a remote host. Either the stylesheet containing cell styles needs to be loaded\n     from the same host as the main page, or the cell styles need to be inlined in the html \n     of the bootstrap page.</li>\n <li>fastCellUpdates will not work if the css styles for cells are defined in\n     a <code>.css</code> file loaded via <code>@import</code>. Instead the <code>.css</code>\n     file should be loaded via a <code>&lt;link ...&gt;</code> tag.</li>\n </ul>",
        name:"fastCellUpdates",
        setter:[
            "setFastCellUpdates"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "attr:DrawPane.drawItems":{
        ref:"attr:DrawPane.drawItems",
        flags:"IR",
        description:"Array of DrawItems to initially display in this DrawPane.",
        name:"drawItems",
        seeAlso:[
        ],
        valueType:"Array of DrawItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawPane"
    },
    "method:DrawLine.setEndPoint":{
        ref:"method:DrawLine.setEndPoint",
        flags:"",
        description:" Update the endPoint\n\n",
        name:"setEndPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for end point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for end point, in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLine"
    },
    "attr:MetricSettings.multiFacet":{
        ref:"attr:MetricSettings.multiFacet",
        flags:"IR",
        description:"Whether this extra value axis plots values while varying the facet values of just the\n first facet (single-facet) or both first and second facets (multi-facet).",
        name:"multiFacet",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:ListGrid.leaveScrollbarGap":{
        ref:"attr:ListGrid.leaveScrollbarGap",
        flags:"IRW",
        description:"Whether to leave a gap for the vertical scrollbar, even when it's not present.\n <P>\n Note that if leaveScrollbarGap is false and vertical scrolling is introduced, fields\n will be resized to fit the smaller body area if possible, in order to avoid horizontal\n scrolling also being required.",
        name:"leaveScrollbarGap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('autofitRows')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:FormulaBuilder.invalidBuilderPrompt":{
        ref:"attr:FormulaBuilder.invalidBuilderPrompt",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('method:FormulaBuilder.testFunction','testFunction')} reports an invalid formula, \n this attribute provides the error-text to display in the\n ${isc.DocUtils.linkForRef('attr:FormulaBuilder.messageLabel','message-label')}.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will \n be evaluated as JS code when the message is displayed.\n <P>\n The dynamic variables in this case, builderType and errorText, represent the type of this \n builder, either Formula or Summary, and the description of the error, respectively.\n <P>\n The default output is:<P>\n <code>\n <i>Invalid [Formula/Summary]: + the description of the error detected </i>\n </code>",
        name:"invalidBuilderPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Invalid ${builderType}: ${errorText}\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TabSet.symmetricEdges":{
        ref:"attr:TabSet.symmetricEdges",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n this property determines whether the same edge media will be used regardless of the tab\n bar position, or whether different media should be used (necessary if the edge appearance is\n not symmetrical on all sides).\n <P>\n If this property is set to false the paneContainer edge image URLs will be prefixed with\n the tabBarPosition of the tabSet - for example <code>\"[SKIN]edge_top_T.gif\"</code> rather\n than just <code>\"[SKIN]edge_T.gif\"</code>.\n <P>\n When <code>symmetricEdges</code> is false, custom edge sizes for the pane container may be\n specified via ${isc.DocUtils.linkForRef('attr:TabSet.topEdgeSizes')} et al, and custom edge offsets via \n ${isc.DocUtils.linkForRef('attr:TabSet.topEdgeOffsets')} et al.",
        name:"symmetricEdges",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:DataSourceField.multiple":{
        ref:"attr:DataSourceField.multiple",
        flags:"IR",
        description:"Indicates that this field should always be Array-valued.  If the value derived from\n ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','XML or JSON data')} is singular, it will be wrapped in an Array.\n <p>\n JPA and Hibernate DataSources use <code>multiple:true</code> as part of the declaration of\n One-To-Many and Many-to-Many relations - see ${isc.DocUtils.linkForRef('group:jpaHibernateRelations')} for details.\n <p>\n <h4>Criteria on multiple:true fields: client-side filtering</h4>\n <p>\n For simple Criteria, the criteria value is compared to <i>each</i> field value in the\n <code>multiple:true</code> field, according to the\n ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle','textMatchStyle')}.  If <i>any</i> field value matches the\n filter value, the field is considered to match the criteria.\n <p>\n For ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}, for normal ${isc.DocUtils.linkForRef('type:OperatorId','search operators')} the field\n value is considered as matching the <code>Criterion</code> if <i>any</i> of the field values\n match the Criterion.  Specifically, this is true of all operators that have an \n ${isc.DocUtils.linkForRef('type:OperatorValueType','operatorValueType')} of \"fieldType\" or \"valueRange\".\n <p>\n For operators that compare against other fields in same record, such as \"equalsField\", \n if the other field is <i>not</i> <code>multiple:true</code>, matching works the same as for\n normal operators, that is, as if <code>criterion.value</code> directly contained the value\n rather than the name of another field.\n <p>\n If the other field is <i>also</i> multiple:true, only \"equalsField\", \"notEqualsField\",\n \"iEqualsField\" and \"iNotEqualsField\" are allowed (any other <code>operator</code> will\n cause a warning and be ignored) and the set of values in the field must be identical (aside\n from case, for operators prefixed with \"i\") and in identical order to match.\n <p>\n For the <code>inSet</code> operator, the field matches if there is any intersection between\n the field values and the array of values provided in <code>criterion.value</code>.\n <code>notInSet</code> is the reverse.\n <p>\n Finally, for \"isNull\" and \"isNotNull\", an empty Array is considered non-null.  For example,\n if you use dataFormat:\"json\" and the field value is provided to the browser as\n <code>[]</code> (JSON for an empty Array), the field is considered non-null.\n <p>\n <h4>Server-side Representation and Storage</h4>\n <p>\n Values for multiple:true fields appear as Java Lists when received in server code such as a\n DMI.  The SmartClient Server supports simple storage of values that are multiple:true, controlled\n via the ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorage')} setting.\n <p>\n For server-side behavior of JPA and Hibernate relation fields that are multiple:true, see\n ${isc.DocUtils.linkForRef('group:jpaHibernateRelations')}.\n <p>\n For non-relation fields, the SmartClient Server supports simple storage of values that are\n multiple:true, controlled via the ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorage')} setting, with some limited support\n for server-side filtering, as described in the ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorage')} docs.\n <p>\n For the built-in SQL, Hibernate and JPA connectors, if criteria are specified for a\n multiple:true field where <code>multipleStorage</code> is null or \"none\", the SmartClient\n server knows nothing about how the multiple values are stored, so as a fallback the criteria\n will operate as though the field were a normal, non-multiple \"text\" field.  This will\n generally <b>not</b> match the client-side filtering behavior described above, so filtering\n should either be performed entirely on the client (for example, via\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataFetchMode','dataFetchMode:\"local\"')} or entirely on the server (via\n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering')}:\"false\")\n <p>\n The server-side filtering is done through a criteria transform which happens with\n ${isc.DocUtils.linkForRef('attr:DataSource.transformMultipleFields','transformMultipleFields')}.\n <p>\n <h4>XML Serialization</h4>\n <P>\n Specifically for XML serialization and deserialization, <code>multiple:true</code> behaves\n similarly to the \n <a href='http://www.google.com/search?hl=en&q=soap+array' target='_blank'>SOAP array idiom</a>, that is,\n there will be a \"wrapper element\" named after the field name, whose contents will be several\n elements of the specified ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field.type')}.  \n <P>\n For example, ${isc.DocUtils.linkForRef('attr:Layout.members')} is declared with <code>type:\"Canvas\",\n multiple:true</code>.  The correct XML format is thus:\n <pre>\n &lt;VLayout&gt;\n     &lt;members&gt;\n         &lt;Canvas ID=\"myCanvas\" ... /&gt;\n         &lt;ListGrid ID=\"myGrid\" .../&gt;\n         &lt;Toolstrip ID=\"myToolStrip\" ... /&gt;\n     &lt;/members&gt;\n &lt;/VLayout&gt;\n </pre>\n <P>\n See ${isc.DocUtils.linkForRef('attr:DataSourceField.childTagName')} for customizing the tagName used for subelements.",
        name:"multiple",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "xmlSerialize",
            "componentSchema"
        ]
    },
    "attr:ToolStripGroup.titleStyle":{
        ref:"attr:ToolStripGroup.titleStyle",
        flags:"IRW",
        description:"CSS class applied to this ToolStripGroup.",
        name:"titleStyle",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"\"toolStripGroupTitle\"",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "attr:RichTextEditor.controlGroups":{
        ref:"attr:RichTextEditor.controlGroups",
        flags:"IRA",
        description:"An array of control groups specifying which groups of controls should be included in the\n editor tool area. The values of this array may be the name of a control group such as\n one of the ${isc.DocUtils.linkForRef('type:StandardControlGroup')}s, a ${isc.DocUtils.linkForRef('class:Canvas')}, or the special string \"break\"\n which causes the subsequent control groups to continue onto a new line.\n <smartclient>\n <p>\n For each control group name, this[controlGroupName] should be defined as an array of \n ${isc.DocUtils.linkForRef('type:ControlName')}s or Canvas instances. This allows the controls of a control\n group to be customized.\n </smartclient>",
        name:"controlGroups",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"[\"fontControls\", \"formatControls\", \"styleControls\", \"colorControls\"]",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('RichTextEditor')}"
        ],
        definingClass:"class:RichTextEditor"
    },
    "attr:ListGrid.unfreezeFieldText":{
        ref:"attr:ListGrid.unfreezeFieldText",
        flags:"IRWA",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','this.canFreezeFields')} is true, this string will be shown as the\n title for the menu item to unfreeze a currently frozen field.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>title</code> available as a variable containing\n the field title.\n <P>\n Default value returns \"Unfreeze \" + the field's summary title.",
        name:"unfreezeFieldText",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Unfreeze ${title}\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "method:PortalLayout.portletsChanged":{
        ref:"method:PortalLayout.portletsChanged",
        flags:"",
        description:" Fires at initialization if the PortalLayout has any initial\n ${isc.DocUtils.linkForRef('class:Portlet','portlets')}, and then fires whenever portlets are added,\n removed or reordered.\n\n",
        name:"portletsChanged",
        seeAlso:[
            {
                ref:"method:Layout.membersChanged",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:ListGridField.getEditorValueMap":{
        ref:"method:ListGridField.getEditorValueMap",
        flags:"",
        description:" Optional stringMethod to get a ${isc.DocUtils.linkForRef('attr:ListGridField.valueMap')} for a specific field.\n If present this method will be called from ${isc.DocUtils.linkForRef('method:ListGrid.getEditorValueMap')} and the resulting\n valueMap will be used instead of any static specified valueMap for the field.\n",
        name:"getEditorValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"Field values for record being edited. Note that this will include                        the current edit values for fields that have not yet been saved.\n                        May be null, if editing a new record.",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            },
            {
                description:"pointer to the listGridField",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"pointer back to this ListGrid instance.",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"ValueMap for the field (or null if no valueMap required)",
            type:"valueMap"
        },
        type:"method",
        definingClass:"object:ListGridField"
    },
    "method:ListGridField.cellChanged":{
        ref:"method:ListGridField.cellChanged",
        flags:"",
        description:" Callback fired when field changes value as the result of a cell edit.  Fired only on\n successful save of edit, when the new value doesn't match the value before editing.<br>\n <p>\n Same signature as ${isc.DocUtils.linkForRef('method:ListGrid.cellChanged')}, but defined on a per-field\n basis.\n\n",
        name:"cellChanged",
        seeAlso:[
            {
                ref:"method:ListGrid.cellChanged",
                description:null
            }
        ],
        params:[
            {
                description:"record for the cell being changed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"new value for the cell",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"old value for the cell",
                optional:false,
                name:"oldValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"grid where cell was changed.",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:FormItem.itemHoverHTML":{
        ref:"method:FormItem.itemHoverHTML",
        flags:"A",
        description:" If defined, this method should return the HTML to display in a hover canvas when the \n user holds the mousepointer over this item.  Return null to suppress the hover \n canvas altogether.\n <P>\n If not defined, <code>dynamicForm.itemHoverHTML()</code> will be evaluated to \n determine hover content instead.\n\n",
        name:"itemHoverHTML",
        seeAlso:[
            {
                ref:"attr:FormItem.prompt",
                description:null
            },
            {
                ref:"method:FormItem.itemHover",
                description:null
            },
            {
                ref:"method:FormItem.titleHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"Pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"This items form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover",
            type:"HTMLString"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('itemHoverHTML')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:DataSource.useStrictJSON":{
        ref:"attr:DataSource.useStrictJSON",
        flags:"IR",
        description:"Should HTTP responses to requests by this dataSource be formatted using the\n strict JSON subset of the javascript language?\n If set to true, responses returned by the server should match the format described\n <a href='http://www.json.org/js.html' target='_blank'>here</a>.\n <P>\n Only applies to dataSources which send requests to a server and have\n ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat')} set to \"json\" or \"iscServer\".\n <P>\n <b>Note:</b> using strict JSON avoids a known issue in Internet Explorer 9 where\n datasource transactions can leak memory due to a browser behavior where the native\n <code>eval()</code> method fails to clean up references when the objects\n go out of scope. See ${isc.DocUtils.linkForRef('classAttr:RPCManager.allowIE9Leak')} for more on this.",
        name:"useStrictJSON",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "attr:RestDataSource.xmlNamespaces":{
        ref:"attr:RestDataSource.xmlNamespaces",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:RestDataSource.dataFormat')} is \"xml\", <code>xmlNamespaces</code> configures the set of\n namespace prefixes that are added to the document element of the XML message sent to the\n server.  Format is the same as ${isc.DocUtils.linkForRef('attr:DataSource.xmlNamespaces')}.\n <P>\n By default, the \"xsi\" prefix is bound to \"http://www.w3.org/2001/XMLSchema-instance\" in\n order to allow explicit null values in Records to be sent for\n ${isc.DocUtils.linkForRef('attr:DataSourceField.nillable','fields declared nillable')}.  Set to null to avoid any\n prefixes being added.",
        name:"xmlNamespaces",
        seeAlso:[
            {
                ref:"attr:DataSourceField.nillable",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"See below",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:FileItem.displayForm":{
        ref:"attr:FileItem.displayForm",
        flags:"RA",
        description:"The ${isc.DocUtils.linkForRef('class:DynamicForm')} created automatically when ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')}\n is false and the field is of type \"blob\". Displays a single \n ${isc.DocUtils.linkForRef('attr:FileItem.displayItem','item')} for viewing the content of a blob file.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>fileItem.displayFormDefaults</code> and\n <code>fileItem.displayFormProperties</code>.",
        name:"displayForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "upload"
        ]
    },
    "method:FormItem.editorExit":{
        ref:"method:FormItem.editorExit",
        flags:"",
        description:" Notification method fired when the user leaves this formItem.\n Differs from ${isc.DocUtils.linkForRef('method:FormItem.blur')} in that while <code>focus</code> and <code>blur</code>\n may fire multiple as the user navigates sub elements of an item (such as interacting\n with a pick list), <code>editorEnter</code> will typically fire once when the user \n starts to edit this item as a whole, and <code>editorExit</code> fires once when the \n user moves onto a different item or component\n",
        name:"editorExit",
        seeAlso:[
        ],
        params:[
            {
                description:"form managing this form item",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"pointer to the form item being managed",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"current value of the form item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "attr:Hilite.criteria":{
        ref:"attr:Hilite.criteria",
        flags:"IR",
        description:"Criteria defining what records this hilite should apply to.",
        name:"criteria",
        seeAlso:[
        ],
        valueType:"Criteria or AdvancedCriteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "classMethod:Class.setProperties":{
        ref:"classMethod:Class.setProperties",
        flags:"",
        description:"\tApply a set of properties to a class object, calling the appropriate setter class methods if\n\tany are found.\n\n",
        name:"setProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"objects with properties to add (think named parameters).\t\t\t\t\t\t\t\t\t\tall the properties of each argument will be applied one after another\n\t\t\t\t\t\t\t\t\t\tso later properties will override",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:DynamicForm.method":{
        ref:"attr:DynamicForm.method",
        flags:"IRW",
        description:"The mechanism by which form data is sent to the action URL. See FormMethod type\n for details.\n <p>\n <b>NOTE:</b> this is used only in the very rare case that a form is used to submit data\n directly to a URL.  Normal server contact is through \n ${isc.DocUtils.linkForRef('group:dataBoundComponentMethods','DataBound Component Methods')}.",
        name:"method",
        setter:[
            "setMethod"
        ],
        seeAlso:[
        ],
        valueType:"FormMethod",
        defaultValue:"DynamicForm.POST",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "method:Calendar.setShowDayLanes":{
        ref:"method:Calendar.setShowDayLanes",
        flags:"",
        description:" Changes the ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes','view mode')} of the day view at runtime - whether to show a\n normal day column for the ${isc.DocUtils.linkForRef('attr:Calendar.chosenDate')}, or the specified set of \n ${isc.DocUtils.linkForRef('attr:Calendar.lanes','vertical lanes')}.\n \n",
        name:"setShowDayLanes",
        seeAlso:[
        ],
        params:[
            {
                description:"whether or not to show lanes in the day view",
                optional:false,
                name:"showDayLanes",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "classMethod:RPCManager.resendTransaction":{
        ref:"classMethod:RPCManager.resendTransaction",
        flags:"A",
        description:" Resend a suspended transaction to the server.  See ${isc.DocUtils.linkForRef('classMethod:RPCManager.suspendTransaction')} for\n context.  \n <P>\n Note that the transaction must have been previously suspended, and in particular\n suspended validly according to the rules described in the docs for\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.suspendTransaction')}, or undefined results will occur.\n <P>\n You can resend <b>all</b> suspended transactions by calling\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.resendTransaction')} with no arguments.\n\n",
        name:"resendTransaction",
        seeAlso:[
            {
                ref:"group:relogin",
                description:null
            }
        ],
        params:[
            {
                description:"id of the transaction to be re-sent, or null to resend all                              suspended transactions",
                optional:true,
                name:"transactionNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:OperationBinding.allowAdvancedCriteria":{
        ref:"attr:OperationBinding.allowAdvancedCriteria",
        flags:"IRWA",
        description:"This property indicates whether this operation supports AdvancedCriteria. This setting \n overrides ${isc.DocUtils.linkForRef('attr:DataSource.allowAdvancedCriteria')} for this operation only. See\n ${isc.DocUtils.linkForRef('method:DataSource.supportsAdvancedCriteria')} for further information.\n <p>\n <b>NOTE:</b> If you specify this property in a DataSource descriptor \n (<code>.ds.xml</code> file), it is enforced on the server.  This means that if you run \n a request containing AdvancedCriteria against an OperationBinding that advertises itself\n as <code>allowAdvancedCriteria:false</code>, it will be rejected.",
        name:"allowAdvancedCriteria",
        seeAlso:[
            {
                ref:"attr:DataSource.allowAdvancedCriteria",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "attr:DataSource.auditUserFieldName":{
        ref:"attr:DataSource.auditUserFieldName",
        flags:"IR",
        description:"For DataSources with ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing enabled')}, specifies the field name used to store\n the user who performed the operation.  If empty string is specified as the field name, the\n audit DataSource will not store this field.",
        name:"auditUserFieldName",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"audit_modifier\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:FormItemIcon.neverDisable":{
        ref:"attr:FormItemIcon.neverDisable",
        flags:"IRWA",
        description:"If <code>icon.neverDisable</code> is true, when this form item is disabled, the \n icon will remain enabled. \n Note that disabling the entire form will disable all items, together with their \n icons including those marked as neverDisable - this property only has an effect \n if the form is enabled and a specific item is disabled within it.\n <P>\n If this property is true, the icons will also remain enabled if a form item \n is marked as ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit:false')}. For finer grained control over\n whether icons are enabled for read-only icons see ${isc.DocUtils.linkForRef('attr:FormItem.disableIconsOnReadOnly')}\n and ${isc.DocUtils.linkForRef('attr:FormItemIcon.disableOnReadOnly')}",
        name:"neverDisable",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "attr:ColumnTree.backButton":{
        ref:"attr:ColumnTree.backButton",
        flags:"IRW",
        description:"When using ${isc.DocUtils.linkForRef('attr:ColumnTree.showMultipleColumns','single-column mode')}, this is the\n \"Back\" button that you see hovering above the column UI and that allows backward\n navigation.",
        name:"backButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree"
    },
    "method:ActiveXControl.getPluginID":{
        ref:"method:ActiveXControl.getPluginID",
        flags:"",
        description:"  Returns the ID for this ISC ActiveX control object.\n  If the <code>id</code> property was specified for the object, that will be used, otherwise \n  the ID will be auto-generated.\n",
        name:"getPluginID",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ActiveXControl"
    },
    "object:MetricSettings":{
        methods:[
            "method:MetricSettings.getXCoord",
            "method:MetricSettings.getYCoord",
            "method:MetricSettings.getGradations",
            "method:MetricSettings.setChartType",
            "method:MetricSettings.setStacked",
            "method:MetricSettings.setFilled",
            "method:MetricSettings.setDataColors",
            "method:MetricSettings.getDataColor",
            "method:MetricSettings.getDataGradient",
            "method:MetricSettings.pointClick",
            "method:MetricSettings.getPointHoverHTML",
            "method:MetricSettings.formatAxisValue",
            "method:MetricSettings.formatDataValue"
        ],
        ref:"object:MetricSettings",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Charts/FacetChart"
        ],
        attrs:[
            "attr:MetricSettings.multiFacet",
            "attr:MetricSettings.fixedFacetValue",
            "attr:MetricSettings.legendLabel",
            "attr:MetricSettings.showAxis",
            "attr:MetricSettings.matchGradations",
            "attr:MetricSettings.showAxisLine",
            "attr:MetricSettings.axisLineProperties",
            "attr:MetricSettings.valueTitle",
            "attr:MetricSettings.showValueAxisLabel",
            "attr:MetricSettings.valueAxisLabelProperties",
            "attr:MetricSettings.chartType",
            "attr:MetricSettings.stacked",
            "attr:MetricSettings.filled",
            "attr:MetricSettings.minDataSpreadPercent",
            "attr:MetricSettings.axisStartValue",
            "attr:MetricSettings.gradationLabelProperties",
            "attr:MetricSettings.gradationLineProperties",
            "attr:MetricSettings.gradationZeroLineProperties",
            "attr:MetricSettings.showDataPoints",
            "attr:MetricSettings.dataPointSize",
            "attr:MetricSettings.dataPointProperties",
            "attr:MetricSettings.logScale",
            "attr:MetricSettings.useLogGradations",
            "attr:MetricSettings.logBase",
            "attr:MetricSettings.logGradations",
            "attr:MetricSettings.decimalPrecision",
            "attr:MetricSettings.showShadows",
            "attr:MetricSettings.shadowProperties",
            "attr:MetricSettings.dataLineProperties",
            "attr:MetricSettings.dataOutlineProperties",
            "attr:MetricSettings.dataShapeProperties",
            "attr:MetricSettings.valueLineProperties",
            "attr:MetricSettings.dataColors",
            "attr:MetricSettings.dataGradients",
            "attr:MetricSettings.showDataValues",
            "attr:MetricSettings.showValueOnHover"
        ],
        description:"Defines a set of properties that are applicable to\n ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','additional value axes')} of a ${isc.DocUtils.linkForRef('class:FacetChart')}.\n <p>\n These properties behave identically to the same-named properties of FacetChart.  Two\n exceptions are the properties\n ${isc.DocUtils.linkForRef('attr:MetricSettings.gradationLineProperties','gradationLineProperties')} and\n ${isc.DocUtils.linkForRef('attr:MetricSettings.gradationZeroLineProperties','gradationZeroLineProperties')}\n because they are used to draw tick marks along an extra value axis instead of lines\n through the chart rectangle.  Also the default behavior of the\n ${isc.DocUtils.linkForRef('attr:MetricSettings.dataColors','dataColors')} property is different, in that the\n default is to use unused colors from, and in the order of, the \n ${isc.DocUtils.linkForRef('attr:FacetChart.dataColors','main data colors array')}.\n <p>\n The extra value axes that are not positioned directly adjacent to the\n ${isc.DocUtils.linkForRef('attr:FacetChart.showChartRect','chart rect.')} of the FacetChart may additionally\n have an axis line to connect the gradation tick marks.  Whether to draw this\n line is controlled by the ${isc.DocUtils.linkForRef('attr:MetricSettings.showAxisLine','showAxisLine')} property,\n and the properties of the line are specified using\n ${isc.DocUtils.linkForRef('attr:MetricSettings.axisLineProperties','axisLineProperties')}.  The default is to draw\n the axis lines whenever the chart rect. is drawn and to draw the line using the same\n properties as the lines of the chart rect. (for example, lineColor and lineWidth).\n <p>\n The extra value axis charts may be \n ${isc.DocUtils.linkForRef('attr:MetricSettings.multiFacet','single- or multi-facet')} charts.  If the underlying\n ${isc.DocUtils.linkForRef('attr:FacetChart.data','data')} is multi-facet then the extra value axes may use the facet\n whose values are labelled on the data axis or the facet used to create the legend (the\n first and second facets, respectively).  Both types of charts vary the first facet to\n get a data series to plot.  Multi-facet charts also vary the second facet, but\n single-facet charts keep the second facet fixed at a constant ${isc.DocUtils.linkForRef('class:FacetValue')}.\n <p>\n The exact facet value to use for the second facet is specified using the\n ${isc.DocUtils.linkForRef('attr:MetricSettings.fixedFacetValue','fixedFacetValue')} property.",
        name:"MetricSettings",
        seeAlso:[
        ],
        type:"object"
    },
    "class:ImgSplitbar":{
        methods:[
        ],
        ref:"class:ImgSplitbar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:ImgSplitbar.target",
            "attr:ImgSplitbar.vertical",
            "attr:ImgSplitbar.canDrag",
            "attr:ImgSplitbar.canCollapse",
            "attr:ImgSplitbar.skinImgDir",
            "attr:ImgSplitbar.src",
            "attr:ImgSplitbar.hSrc",
            "attr:ImgSplitbar.vSrc"
        ],
        description:"Resize bar for use in ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass','Layouts')}, based on the\n ${isc.DocUtils.linkForRef('class:Img')} class.  As with the ${isc.DocUtils.linkForRef('class:Splitbar')} class, \n widgets of this class can be displayed as a resize-bar for widgets \n in Layouts where showResizeBar is set to true. Provides a different appearance from\n the <code>Splitbar</code> class.\n <p>\n To specify the resizeBar class for some layout, use the ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass')}\n property.",
        name:"ImgSplitbar",
        seeAlso:[
            {
                ref:"class:Layout",
                description:null
            },
            {
                ref:"class:Splitbar",
                description:null
            }
        ],
        type:"class"
    },
    "method:ValuesManager.getDataSource":{
        ref:"method:ValuesManager.getDataSource",
        flags:"A",
        description:" Returns the dataSource for this valuesManager.  Will return null if this is not a \n data-bound valuesManager instance.\n",
        name:"getDataSource",
        seeAlso:[
        ],
        returns:{
            description:"Datasource object for this valuesManager.",
            type:"DataSource"
        },
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "method:GridRenderer.getCellValue":{
        ref:"method:GridRenderer.getCellValue",
        flags:"",
        description:" Return the HTML to display in this cell.  Implementing this is required to get a non-empty\n grid.\n\n",
        name:"getCellValue",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"HTML to display in this cell",
            type:"string"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:TableView.recordNavigationClick":{
        ref:"method:TableView.recordNavigationClick",
        flags:"",
        description:" Executed when the user clicks on a record, or on the navigate icon for a\n record depending on ${isc.DocUtils.linkForRef('type:NavigationMode')}.\n\n",
        name:"recordNavigationClick",
        seeAlso:[
        ],
        params:[
            {
                description:"record clicked",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        type:"method",
        definingClass:"class:TableView"
    },
    "method:DrawItem.destroy":{
        ref:"method:DrawItem.destroy",
        flags:"",
        description:" Permanently destroys this DrawItem, similar to ${isc.DocUtils.linkForRef('method:Canvas.destroy')}.\n\n",
        name:"destroy",
        seeAlso:[
            {
                ref:"group:memoryLeaks",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:ImgButton.autoFit":{
        ref:"attr:ImgButton.autoFit",
        flags:"IRW",
        description:"If true, ignore the specified size of this widget and always size just large\n enough to accommodate the title.  If <code>setWidth()</code> is explicitly called on an\n autoFit:true button, autoFit will be reset to <code>false</code>.\n <P>\n Note that for StretchImgButton instances, autoFit will occur horizontally only, as \n unpredictable vertical sizing is likely to distort the media. If you do want vertical \n auto-fit, this can be achieved by simply setting a small height, and having \n overflow:\"visible\"",
        name:"autoFit",
        setter:[
            "setAutoFit"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "sizing"
        ]
    },
    "attr:SectionHeader.icon":{
        ref:"attr:SectionHeader.icon",
        flags:"IRA",
        description:"Base filename of the icon that represents open and closed states. The default settings\n also change the icon for disabled sections, so a total of four images are required\n (opened, closed, Disabled_opened, Disabled_closed).\n <P>\n Not shown if ${isc.DocUtils.linkForRef('attr:SectionStackSection.canCollapse')} is false.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]SectionHeader/opener.gif\"",
        type:"attr",
        definingClass:"class:SectionHeader"
    },
    "method:ListGrid.headerClick":{
        ref:"method:ListGrid.headerClick",
        flags:"A",
        description:" Handle a click in the list header.\n <P>\n By default, calls ${isc.DocUtils.linkForRef('method:ListGrid.sort')} to sort by the field that was clicked, if\n ${isc.DocUtils.linkForRef('attr:ListGrid.canSort','sorting is enabled')}, and calls ${isc.DocUtils.linkForRef('method:ListGrid.autoFitField')} if\n ${isc.DocUtils.linkForRef('attr:ListGrid.canAutoFitFields')} is true and ${isc.DocUtils.linkForRef('attr:ListGrid.headerAutoFitEvent')} is set to <code>\"click\"</code>.\n\n",
        name:"headerClick",
        seeAlso:[
        ],
        params:[
            {
                description:"field number for the header that was clicked",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sorting",
            "events",
            "gridHeader"
        ]
    },
    "attr:TestFunctionResult.failedExecution":{
        ref:"attr:TestFunctionResult.failedExecution",
        flags:"IRW",
        description:"Set to true if calling the formula or summary format resulted in a JavaScript Error.\n This would generally indicate a reference to non-existent data values.  See \n ${isc.DocUtils.linkForRef('attr:TestFunctionResult.failedGeneration')} for other types of failure.\n <P>\n When set to true, ${isc.DocUtils.linkForRef('attr:TestFunctionResult.errorText')} contains the exception message.",
        name:"failedExecution",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:TestFunctionResult",
        groups:[
            "formulaFields"
        ]
    },
    "method:DetailViewer.formatCellValue":{
        ref:"method:DetailViewer.formatCellValue",
        flags:"",
        description:" Optional method to format the value to display for cells in this DetailViewer.\n Note that if ${isc.DocUtils.linkForRef('method:DetailViewerField.formatCellValue')} is specified this method will not\n be called for cells within that field.\n",
        name:"formatCellValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the raw value of the cell (may be formatted by   ${isc.DocUtils.linkForRef('method:DetailViewerField.formatCellValue')}",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"string"
            },
            {
                description:"the record being displayed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"detailViewerRecord"
            },
            {
                description:"the field being displayed",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"detailViewerField"
            }
        ],
        type:"method",
        definingClass:"class:DetailViewer"
    },
    "attr:PickList.pickListWidth":{
        ref:"attr:PickList.pickListWidth",
        flags:"IRW",
        description:"Default width to show the pickList.\n If not specified, the width of this form item's element will be used instead.\n <P>\n Note that this is a minimum value - by default if the values displayed in this pickList\n are wider than the specified width the list will expand to accomodate them.",
        name:"pickListWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('listComboBox')}"
        ],
        definingClass:"interface:PickList"
    },
    "method:TileGrid.recordClick":{
        ref:"method:TileGrid.recordClick",
        flags:"",
        description:" Executed when the tileGrid receives a 'click' event on a\n tile. The default implementation does nothing -- override to perform some action\n when any record is clicked.<br>\n A record event handler can be specified either as\n a function to execute, or as a string of script to evaluate. If the handler is defined\n as a string of script, all the parameters below will be available as variables for use\n in the script.<br>\n If you want to cancel the click based on the parameters, return false. Otherwise, return \n true so that the click event be registered with the tile.\n\n",
        name:"recordClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the TileGrid itself",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TileGrid"
            },
            {
                description:"the tile that was clicked on",
                optional:false,
                name:"tile",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"the record that was clicked on",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"TileRecord"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('tilingEditing')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "events"
        ]
    },
    "method:DataSource.addData":{
        ref:"method:DataSource.addData",
        flags:"",
        description:" Perform an \"add\" DataSource operation against this DataSource, to create a new DataSource\n record.\n <P>\n <b>NOTE:</b> do not use this method to populate a ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly')} DataSource.  Set\n ${isc.DocUtils.linkForRef('attr:DataSource.cacheData')} instead.\n\n",
        name:"addData",
        seeAlso:[
        ],
        params:[
            {
                description:"new record",
                optional:false,
                name:"newRecord",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "class:NativeScrollbar":{
        methods:[
            "method:NativeScrollbar.setScrollTarget"
        ],
        ref:"class:NativeScrollbar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
        ],
        description:"The NativeScrollbar widget will render in the browser as a native \n scrollbar, and has APIs allowing it to be applied to scroll content any another widget\n on the page. Essentially this behaves similarly to the ${isc.DocUtils.linkForRef('class:Scrollbar')} class but will\n be rendered as a native browser scrollbar rather than  using media, thus providing the\n advantages of an independant scrollbar (support for rendering the scrollbar separate from the\n content it effects, support for \"virtual scrolling\" mechanisms where content size is unknown\n at initial render, etc), with a native look and feel and without requiring the loading of\n additional media on the page.\n <P>\n To enable this for a component simply set ${isc.DocUtils.linkForRef('attr:Canvas.showCustomScrollbars')} to true and\n set ${isc.DocUtils.linkForRef('attr:Canvas.scrollbarConstructor')} to <code>\"NativeScrollbar\"</code>",
        name:"NativeScrollbar",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:FileLoader.loadJSFiles":{
        ref:"classMethod:FileLoader.loadJSFiles",
        flags:"",
        description:"\n Loads the specified JS files into the context of the current page.\n\n",
        name:"loadJSFiles",
        seeAlso:[
        ],
        params:[
            {
                description:"List of URLs pointing to JS files to load.  This can either be a                                string with comma separated URLs or an Array of URLs.",
                optional:false,
                name:"URLs",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when the last of the specified URLs                                      has completed loading.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "attr:OperationBinding.exportAs":{
        ref:"attr:OperationBinding.exportAs",
        flags:"IR",
        description:"The format in which the data should be exported.  Default is \"csv\".\n See ${isc.DocUtils.linkForRef('type:ExportFormat')} for more information.",
        name:"exportAs",
        seeAlso:[
        ],
        valueType:"ExportFormat",
        defaultValue:"\"csv\"",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "method:FormItem.click":{
        ref:"method:FormItem.click",
        flags:"",
        description:" Called when this FormItem is clicked on.\n <P>\n Note: <code>click()</code> is available on StaticTextItem, BlurbItems, ButtonItem, and\n derivatives.  Other form items (such as HiddenItem) do not support <code>click()</code>.\n\n",
        name:"click",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Return false to cancel the click event. This will prevent the event from   bubbling up, suppressing\n   ${isc.DocUtils.linkForRef('method:Canvas.click','click')} on the form containing this item.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "method:ColumnTree.getRecord":{
        ref:"method:ColumnTree.getRecord",
        flags:"",
        description:" Retrieve a record by index.  \n <P>\n If <code>colNum</code> is passed, returns the record found in that column at that index,\n or null if the column doesn't exist or the index is too high.\n <P>\n With no <code>colNum</code> parameter, a record's index is it's position counting from the\n first record of the first column and including all records in each column. Note that both\n index and colNum are zero-based - so the first column is column 0, not column 1.\n \n",
        name:"getRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"index of record to return.",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            },
            {
                description:"optional index of the column",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"node at the specified index",
            type:"TreeNode"
        },
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "group:eventBubbling":{
        ref:"group:eventBubbling",
        refs:[
        ],
        name:"eventBubbling",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormItemIcon.width":{
        ref:"attr:FormItemIcon.width",
        flags:"IRW",
        description:"If set, this property determines the width of this icon in px.\n      If unset the form item's <code>iconWidth</code> property will be used instead.",
        name:"width",
        seeAlso:[
            {
                ref:"attr:FormItem.iconWidth",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "method:TileLayout.setTilesPerLine":{
        ref:"method:TileLayout.setTilesPerLine",
        flags:"",
        description:" Sets the number of tiles per line.\n",
        name:"setTilesPerLine",
        seeAlso:[
        ],
        params:[
            {
                description:"New ${isc.DocUtils.linkForRef('attr:TileLayout.tilesPerLine')} value",
                optional:false,
                name:"tilesPerLine",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "tileLayout"
        ]
    },
    "attr:ImgButton.state":{
        ref:"attr:ImgButton.state",
        flags:"IRWA",
        getter:[
            "getState"
        ],
        description:"Current \"state\" of this widget. The state setting is automatically updated as the \n user interacts with the component (see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')}, \n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')}, ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')}).\n <P>\n StatefulCanvases will have a different appearance based\n on their current state. \n By default this is handled by changing the css className applied to\n the StatefulCanvas - see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.baseStyle')} and \n ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of how this is done.\n <P>\n For ${isc.DocUtils.linkForRef('class:Img')} or ${isc.DocUtils.linkForRef('class:StretchImg')} based subclasses of StatefulCanvas, the \n appearance may also be updated by changing the src of the rendered image. See\n ${isc.DocUtils.linkForRef('attr:Img.src')} and ${isc.DocUtils.linkForRef('attr:StretchImgButton.src')} for a description of how the URL \n is modified to reflect the state of the widget in this case.",
        name:"state",
        setter:[
            "setState"
        ],
        seeAlso:[
            {
                ref:"type:State",
                description:null
            },
            {
                ref:"group:state",
                description:null
            }
        ],
        valueType:"State",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "attr:RangeSlider.track":{
        ref:"attr:RangeSlider.track",
        flags:"IR",
        description:"Optional track of the RangeSlider.  Set <code>showTrack</code> false to avoid showing\n a track so the RangeSlider can be superimposed over something else.",
        name:"track",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "attr:ListGrid.useRowSpanStyling":{
        ref:"attr:ListGrid.useRowSpanStyling",
        flags:"IR",
        description:"Enables various styling behaviors that potentially make sense when ${isc.DocUtils.linkForRef('method:ListGrid.getRowSpan')} has\n been overriden to introduce spanning cells, and spanning is largest on the left and\n smaller as cells go to the right.  Specifically:\n <ul>\n <li> computes ${isc.DocUtils.linkForRef('attr:ListGrid.alternateRecordStyles','banded styling')} based on the span of the\n      cell in the left-most column\n <li> enables ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells','cell-level selection')}, including\n      ${isc.DocUtils.linkForRef('attr:ListGrid.useCellRollOvers','cell-level rollover')} styling\n <li> enables row-span-sensitive cell selection.  See also ${isc.DocUtils.linkForRef('type:RowSpanSelectionMode')}\n      for available behaviors\n </ul>\n <P>\n Because this setting enables ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')}, it is incompatible with any APIs\n that expect a record-oriented data model.\n <P>\n Because this setting only makes sense when row spanning decreases from the first column\n to the last, it has unspecified behavior with ${isc.DocUtils.linkForRef('attr:ListGrid.canReorderFields')}.",
        name:"useRowSpanStyling",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DataSource.allowAdvancedCriteria":{
        ref:"attr:DataSource.allowAdvancedCriteria",
        flags:"IRWA",
        description:"By default, all DataSources are assumed to be capable of handling \n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} on fetch or filter type operations.  This property may be\n set to <code>false</code> to indicate that this dataSource does not support \n advancedCriteria. See ${isc.DocUtils.linkForRef('method:DataSource.supportsAdvancedCriteria')} for further information on this.\n <p>\n <b>NOTE:</b> If you specify this property in a DataSource descriptor \n (<code>.ds.xml</code> file), it is enforced on the server.  This means that if you run \n a request containing AdvancedCriteria against a DataSource that advertises itself as \n <code>allowAdvancedCriteria:false</code>, it will be rejected.",
        name:"allowAdvancedCriteria",
        seeAlso:[
            {
                ref:"attr:OperationBinding.allowAdvancedCriteria",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "method:Progressbar.getLength":{
        ref:"method:Progressbar.getLength",
        flags:"",
        description:" Returns the current width of a horizontal progressbar, or height of a vertical progressbar.\n\n",
        name:"getLength",
        seeAlso:[
        ],
        returns:{
            description:"the length of the progressbar",
            type:"number"
        },
        type:"method",
        definingClass:"class:Progressbar"
    },
    "method:PortalLayout.getColumnWidth":{
        ref:"method:PortalLayout.getColumnWidth",
        flags:"",
        description:" Gets the width of a column in the PortalLayout.\n",
        name:"getColumnWidth",
        seeAlso:[
            {
                ref:"method:Canvas.getWidth",
                description:null
            }
        ],
        params:[
            {
                description:"Which column's width to get",
                optional:false,
                name:"colNumber",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"width",
            type:"int"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:DataSource.useHttpProxy":{
        ref:"attr:DataSource.useHttpProxy",
        flags:"IR",
        description:"Like ${isc.DocUtils.linkForRef('attr:OperationBinding.useHttpProxy')}, but serves as a default for this DataSource\n that may be overridden by individual operationBindings.",
        name:"useHttpProxy",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:TabBar.baseLineCapSize":{
        ref:"attr:TabBar.baseLineCapSize",
        flags:"IR",
        description:"Set ${isc.DocUtils.linkForRef('attr:StretchImg.capSize')} for the ${isc.DocUtils.linkForRef('group:baseLine')} stretchImg.",
        name:"baseLineCapSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:TabBar",
        groups:[
            "baseLine"
        ]
    },
    "attr:StretchImgButton.showSelectedIcon":{
        ref:"attr:StretchImgButton.showSelectedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n becomes selected.",
        name:"showSelectedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "class:Mail":{
        methods:[
        ],
        ref:"class:Mail",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
            "attr:Mail.templateFile",
            "attr:Mail.messageTemplate",
            "attr:Mail.to",
            "attr:Mail.cc",
            "attr:Mail.bcc",
            "attr:Mail.from",
            "attr:Mail.replyTo",
            "attr:Mail.subject",
            "attr:Mail.multiple",
            "attr:Mail.messageData",
            "attr:Mail.contentType",
            "attr:Mail.encoding"
        ],
        description:"A <code>Mail</code> object describes an email that will be sent automatically by the \n SmartClient Server as part of a normal ${isc.DocUtils.linkForRef('class:DataSource')} operation.  Mail definitions\n are part of an ${isc.DocUtils.linkForRef('class:OperationBinding')}, and they can only be specified in a \n DataSource's XML definition.  Despite the declarative nature of mail definitions, templating\n support via Velocity makes it very flexible; it is very easy to include values from records\n just fetched from permanent storage by this operation, for example.  See \n ${isc.DocUtils.linkForRef('group:velocitySupport')} for an overview of SmartClient Server's pervasive support for \n templated declarative operations using Velocity. \n <P>\n The default context for the message is the dsResponse.data; that is, $foo in the\n message refers to the field \"foo\" in the DataSource response (the equivalent of\n calling dsResponse.getFieldValue(\"foo\") in Java).  You also have access to the normal\n Velocity variables described in the overview linked to above.\n <P>\n If multiple records appear in the dsResponse, one message will be sent per record\n in the response unless \"multiple\" is set to false.  This allows a set of\n recipients to be selected by a \"fetch\" operationBinding and messages sent to each.\n This also means that if no data is selected by a fetch or affected by an update,\n no mail is sent.\n <P>\n If you have the Transaction Chaining feature, all of the variables normally\n accessible in other Velocity contexts are available in the message template as\n well, for example, $responseData.last('order').orderId.  See \n ${isc.DocUtils.linkForRef('attr:DSRequestModifier.value','transaction chaining')} for more details.\n <p>\n You can provide the body of the email directly in the ${isc.DocUtils.linkForRef('attr:Mail.messageTemplate','messageTemplate')}\n tag, or you can provide a filename in the ${isc.DocUtils.linkForRef('attr:Mail.templateFile','templateFile')} attribute,\n which tells SmartClient to use the contents of that file as the body of the email.  If you \n provide neither of these, your email will have no body; if you provide both, SmartClient will\n ignore the file and just use the content directly provided.\n <p>\n <b>Mail server configuration</b><br>\n The mail server to use for sending emails is configured in the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n file.  The following values can be provided:<p>\n <code>mail.system.mail.smtp.host</code>: The name of the SMTP server to use; defaults \n to \"localhost\"<br>\n <code>mail.system.mail.smtp.port</code>: What port is the MTA listening on; defaults to 25<br>\n <code>mail.system.mail.smtp.auth</code>: Whether this server requires authentication; \n defaults to false<br>\n <code>mail.system.mail.smtp.user</code>: SMTP user, if authentication is on; no default<br>\n <code>mail.system.mail.smtp.password</code>: Password, if authentication is on; no default<br>\n <p>\n Note that we will also pass any other properties that start <code>mail.system</code> through\n to the underlying Javamail <code>Session</code> object, so you can use Javamail features\n that aren't explicitly exposed by SmartClient's mail support.  For example, many cloud-based\n SMTP providers require that you issue a STARTTLS command before authenticating; you can \n achieve this by adding the following line to ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}:<p>\n <code>mail.system.mail.smtp.starttls.enable: true</code>",
        name:"Mail",
        seeAlso:[
        ],
        type:"class",
        serverDS:"only",
        groups:[
            "mail"
        ]
    },
    "attr:RelativeDateItem.valueField":{
        ref:"attr:RelativeDateItem.valueField",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('class:ComboBoxItem')} field where a user may choose among \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.presetOptions','presets')}, \n ${isc.DocUtils.linkForRef('type:TimeUnit','time unit')} plus ${isc.DocUtils.linkForRef('attr:RelativeDateItem.quantityField','quantity')}, or \n direct entry of a date as text.",
        name:"valueField",
        seeAlso:[
        ],
        valueType:"AutoChild ComboBoxItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:Button.setBaseStyle":{
        ref:"method:Button.setBaseStyle",
        flags:"",
        description:" Sets the base CSS style.  As the component changes state and/or is selected, suffixes will be\n added to the base style.\n",
        name:"setBaseStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"new base style",
                optional:false,
                name:"style",
                defaultValue:null,
                type:"className"
            }
        ],
        type:"method",
        definingClass:"class:Button"
    },
    "method:Array.max":{
        ref:"method:Array.max",
        flags:"",
        description:"\n \t\t\tReturns the largest number in the array, skipping non-numeric values.\n\n\t\t\tIf the start and/or end are given, searches the specified subset of the list.\n\n",
        name:"max",
        seeAlso:[
        ],
        params:[
            {
                description:"optional start index (default is 0)",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional end index (default is list.length)",
                optional:true,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"maximum of all items in the list, or null if all values are non-numeric",
            type:"number"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "arrayMath"
        ]
    },
    "attr:DrawCurve.knobs":{
        ref:"attr:DrawCurve.knobs",
        flags:"IR",
        description:"Array of control knobs to display for this item. Each ${isc.DocUtils.linkForRef('type:KnobType')} specified in this\n will turn on UI element(s) allowing the user to manipulate this DrawCurve.  To update the\n set of knobs at runtime use ${isc.DocUtils.linkForRef('method:DrawItem.showKnobs')} and ${isc.DocUtils.linkForRef('method:DrawItem.hideKnobs')}.\n <p>\n DrawCurve supports the\n <smartclient>\"startPoint\", \"endPoint\", \"controlPoint1\", and \"controlPoint2\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.KnobType#STARTPOINT}, {@link com.smartgwt.client.types.KnobType#ENDPOINT},\n {@link com.smartgwt.client.types.KnobType#CONTROLPOINT1}, and {@link com.smartgwt.client.types.KnobType#CONTROLPOINT2}</smartgwt>\n knob types.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawCurve"
    },
    "attr:DateRangeItem.fromTitle":{
        ref:"attr:DateRangeItem.fromTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:DateRangeItem.fromField','from')} part of the range.",
        name:"fromTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"From\"",
        type:"attr",
        definingClass:"class:DateRangeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TextItem.setSelectionRange":{
        ref:"method:TextItem.setSelectionRange",
        flags:"",
        description:" Puts focus into this form item and selects characters between the given indices.\n Only applies to drawn text based items.\n",
        name:"setSelectionRange",
        seeAlso:[
        ],
        params:[
            {
                description:"selection starting character index",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection character index",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:TextItem"
    },
    "method:Array.map":{
        ref:"method:Array.map",
        flags:"",
        description:" Return an array where the value of item <code>i</code> is the result of calling the provided\n function on item <code>i</code> in this array.\n <P>\n The function to call can either be provided directly as a function object, in which case it\n is invoked with the item as the first argument, or can be provided as the String name of a\n method present on each item, which will be invoked.  In the latter case, if any item is null\n or lacks the named method, null will be returned for that item.\n <P>\n Examples:<PRE>\n    // line up widgets at 20 pixels from page edge\n    [widget1, widget2].map(\"setPageLeft\", 20);\n\n    // find furthest right widget\n    [widget1, widget2].map(\"getPageRight\").max();\n </PRE>\n \n",
        name:"map",
        seeAlso:[
        ],
        params:[
            {
                description:"function object, or name of method",
                optional:false,
                name:"method",
                defaultValue:null,
                type:"string or function"
            },
            {
                description:"]\t(any)\t arguments to pass to the function or method                                           invoked on each item",
                optional:false,
                name:"[",
                defaultValue:null,
                type:"arguments 1-N"
            }
        ],
        returns:{
            description:"array of returned values",
            type:"array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "iteration"
        ]
    },
    "method:Canvas.getSnapTo":{
        ref:"method:Canvas.getSnapTo",
        flags:"",
        description:" Return the snapTo value of this object\n\n",
        name:"getSnapTo",
        seeAlso:[
        ],
        returns:{
            description:"snapTo",
            type:"string"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "type:AutoTestLocator":{
        ref:"type:AutoTestLocator",
        description:"An autoTestLocator is an xpath-like string used by the AutoTest subsystem to robustly \n identify DOM elements within a SmartClient application.\n <P>\n Typically AutoTestLocators will not be hand-written - they should be retrieved by a\n call to ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')}. Note also that the ${isc.DocUtils.linkForRef('group:debugging','Developer Console')}\n has built-in functionality to create and display autoTestLocators for a live app.",
        name:"AutoTestLocator",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoTest"
        ]
    },
    "attr:DrawLinePath.endPoint":{
        ref:"attr:DrawLinePath.endPoint",
        flags:"IRW",
        description:"End point of the line",
        name:"endPoint",
        setter:[
            "setEndPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[100,100]",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "type:Object":{
        ref:"type:Object",
        description:"An ordinary JavaScript as obtained by \"new Object()\" or via \n ${isc.DocUtils.linkForRef('type:ObjectLiteral','Object Literal')} syntax.\n <P>\n Methods that return Objects or take Objects as parameters make use of the ability of a\n JavaScript Object to contain an arbitrary set of named properties, without requiring\n declaration in advance.  This capability makes it possible to use a JavaScript Object much\n like a HashMap in Java or .NET, but without the need to call get() or set() to create and\n retrieve properties.\n <P>\n For example if you created an Object using ${isc.DocUtils.linkForRef('type:ObjectLiteral','Object Literal')} syntax\n like so:\n <pre>\n    var request = {\n        actionURL : \"/foo.do\",\n        showPrompt:false\n    };\n </pre>\n You could then access it's properties like so:\n <pre>\n    var myActionURL = request.actionURL;\n    var myShowPrompt = request.showPrompt;\n </pre>\n .. and you could assign new values to those properties like so:\n <pre>\n    request.actionURL = \"<i>newActionURL</i>\";\n    request.showPrompt = <i>newShowPromptSetting</i>;\n </pre>\n Note that while JavaScript allows you to get and set properties in this way on any Object,\n SmartClient components require that if a setter or getter exists, it must be called, or no\n action will occur.  For example, if you had a ${isc.DocUtils.linkForRef('class:ListGrid')} and you wanted to change the\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHeader','showHeader')} property:\n <pre>\n     myListGrid.setShowHeader(false); // correct\n     myListGrid.showHeader = false; // incorrect (nothing happens)\n </pre>\n All documented attributes have ${isc.DocUtils.linkForRef('group:flags','flags')} (eg IRW) that indicate when direct\n property access is allowed or not.",
        name:"Object",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DrawGroup.scaleBy":{
        ref:"method:DrawGroup.scaleBy",
        flags:"",
        description:" Scale all drawItem[] shapes by the x, y multipliers\n",
        name:"scaleBy",
        seeAlso:[
        ],
        params:[
            {
                description:"scale in the x direction",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"float"
            },
            {
                description:"scale in the y direction",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "method:Date.setFormatter":{
        ref:"method:Date.setFormatter",
        deprecated:"As of SmartClient 5.5 use the static methods              ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')} and\n              ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')} to set default formatters for all dates",
        flags:"",
        description:"  Set the formatter for this date object to the method name passed in.  After this call\n  wherever appropriate SmartClient components will use this formatter function to return\n  the date as a string.\n",
        name:"setFormatter",
        seeAlso:[
        ],
        params:[
            {
                description:"name of a date formatter method on this Date",
                optional:false,
                name:"functionName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "method:Canvas.resized":{
        ref:"method:Canvas.resized",
        flags:"",
        description:"  Observable method called whenever a Canvas changes size. Note that if this canvas is\n ${isc.DocUtils.linkForRef('attr:Canvas.overflow','overflow:\"visible\"')}, and is waiting for a queued redraw (see\n ${isc.DocUtils.linkForRef('method:Canvas.isDirty')}), the value for ${isc.DocUtils.linkForRef('method:Canvas.getVisibleWidth')} and\n ${isc.DocUtils.linkForRef('method:Canvas.getVisibleHeight')} will be unreliable until <code>redraw()</code> fires.\n",
        name:"resized",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "method:ListGrid.cellClick":{
        ref:"method:ListGrid.cellClick",
        flags:"",
        description:" Called when a cell receives a click event.\n <P>\n Note that returning false from this method will not prevent any\n specified ${isc.DocUtils.linkForRef('method:ListGrid.rowClick')} handler from firing.\n\n",
        name:"cellClick",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('cellClicks')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:FilterClause.clause":{
        ref:"attr:FilterClause.clause",
        flags:"IR",
        description:"AutoChild containing the UI for the filter-properties in this FilterClause.",
        name:"clause",
        seeAlso:[
        ],
        valueType:"AutoChild SearchForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:RelativeDateItem.millisecondsFromNowTitle":{
        ref:"attr:RelativeDateItem.millisecondsFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"millisecond\".",
        name:"millisecondsFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N milliseconds from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Slider.value":{
        ref:"attr:Slider.value",
        flags:"IRW",
        getter:[
            "getValue"
        ],
        description:"The slider value. This value should lie between the minValue and maxValue and increases as\n the thumb is moved up (for a vertical slider) or right (for a horizontal slider) unless\n flipValues is set to true.",
        name:"value",
        setter:[
            "setValue"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.minValue",
                description:null
            },
            {
                ref:"attr:Slider.maxValue",
                description:null
            },
            {
                ref:"attr:Slider.flipValues",
                description:null
            },
            {
                ref:"attr:Slider.showValue",
                description:null
            }
        ],
        valueType:"float",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:Slider"
    },
    "method:Canvas.getVSnapOrigin":{
        ref:"method:Canvas.getVSnapOrigin",
        flags:"",
        description:" Get an offset to be used when calculating snap positioning. Returns 0 by default.\n\n",
        name:"getVSnapOrigin",
        seeAlso:[
            {
                ref:"method:Canvas.getVSnapPosition",
                description:null
            }
        ],
        params:[
            {
                description:"the child that is being snapped",
                optional:true,
                name:"snapChild",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"The offset to use when snapping",
            type:"int"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:TableView.showIconField":{
        ref:"attr:TableView.showIconField",
        flags:"IRW",
        description:"Should an icon field be shown for each record? A column in the table is set\n aside for an icon as specified on each record in the ${isc.DocUtils.linkForRef('attr:TableView.iconField')}.",
        name:"showIconField",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TableView"
    },
    "attr:MenuItem.enabled":{
        ref:"attr:MenuItem.enabled",
        flags:"IR",
        description:"Affects the visual style and interactivity of the menu item.  If set to\n <code>false</code>, the menu item will not respond to mouse rollovers or clicks.\n <p>\n If you need to set this state dynamically, use ${isc.DocUtils.linkForRef('method:MenuItem.enableIf')} instead.",
        name:"enabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:MenuItem",
        groups:[
            "menuBasic"
        ]
    },
    "attr:WSRequest.xmlResult":{
        ref:"attr:WSRequest.xmlResult",
        flags:"IR",
        description:"Valid only with ${isc.DocUtils.linkForRef('method:WebService.callOperation')}.  If set, do not transform XML results to\n JavaScript.  Instead just return the XML nodes selected by the passed XPath or recordName,\n or all nodes within the SOAP body if no XPath was passed.",
        name:"xmlResult",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:WSRequest"
    },
    "attr:ComboBoxItem.progressiveLoading":{
        ref:"attr:ComboBoxItem.progressiveLoading",
        flags:"IRW",
        description:"Indicates whether or not this ComboBoxItem will load its list of options \n ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressively')}.  This property is copied onto the\n underlying ${isc.DocUtils.linkForRef('interface:PickList')}.",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "progressiveLoading"
        ]
    },
    "attr:RangeSlider.maxValue":{
        ref:"attr:RangeSlider.maxValue",
        flags:"IRW",
        description:"Set the maximum value (right/bottom of slider).",
        name:"maxValue",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "method:Callbacks.ProcessCallback":{
        ref:"method:Callbacks.ProcessCallback",
        flags:"",
        description:" A ${isc.DocUtils.linkForRef('type:Callback')} to evaluate when an {Process.loadProcess} method completes.\n <p>\n Loaded process passed as a parameter to this callback are:\n\n",
        name:"ProcessCallback",
        seeAlso:[
            {
                ref:"class:Process",
                description:null
            },
            {
                ref:"class:RPCResponse",
                description:null
            }
        ],
        params:[
            {
                description:"a ${isc.DocUtils.linkForRef('class:DSResponse')} instance with metadata about the returned data",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            },
            {
                description:null,
                optional:false,
                name:"process",
                defaultValue:null,
                type:"Process"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "method:ResultSet.find":{
        ref:"method:ResultSet.find",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:List.find')}.  Checks only loaded rows and will not trigger a fetch.\n",
        name:"find",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"first matching object or null if not found",
            type:"Object"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access",
            "find"
        ]
    },
    "attr:FormItem.form":{
        ref:"attr:FormItem.form",
        flags:"R",
        description:"A Read-Only pointer to this formItem's DynamicForm widget.",
        name:"form",
        seeAlso:[
        ],
        valueType:"DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:DataBoundComponent.deselectRecords":{
        ref:"method:DataBoundComponent.deselectRecords",
        flags:"",
        description:"\n Deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecords(records, false)</code>\n <P>\n Note that developers may wish to use ${isc.DocUtils.linkForRef('method:DataBoundComponent.deselectRange')} to select a single\n contiguous range.\n\n",
        name:"deselectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to deselect",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:DataBoundComponent.dragDataAction":{
        ref:"attr:DataBoundComponent.dragDataAction",
        flags:"IRW",
        description:"Indicates what to do with data dragged into another DataBoundComponent. See\n          DragDataAction type for details.",
        name:"dragDataAction",
        seeAlso:[
        ],
        valueType:"DragDataAction",
        defaultValue:"Canvas.MOVE",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridsDragMove')}",
            "${isc.DocUtils.linkForExampleId('gridsDragCopy')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragging"
        ]
    },
    "method:FormItem.getIcon":{
        ref:"method:FormItem.getIcon",
        flags:"",
        description:" Given an ${isc.DocUtils.linkForRef('attr:FormItemIcon.name')} return a pointer to the icon definition\n",
        name:"getIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"specified ${isc.DocUtils.linkForRef('attr:FormItemIcon.name')}",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"form item icon matching the specified name",
            type:"FormItemIcon"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:Canvas.getByLocalId":{
        ref:"method:Canvas.getByLocalId",
        flags:"",
        description:" Retrieve a child of this Canvas by it's local ID.\n <p>\n A \"local ID\" is name for a child widget which is unique only for this parent, and not globally\n unique as is required for ${isc.DocUtils.linkForRef('attr:Canvas.ID')}.  Widgets receive local IDs when loaded via\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} or ${isc.DocUtils.linkForRef('classMethod:RPCManager.cacheScreens')} and\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.createScreen')}.\n\n",
        name:"getByLocalId",
        seeAlso:[
        ],
        params:[
            {
                description:"local ID of the Canvas",
                optional:false,
                name:"localId",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the Canvas, or null if not found",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:Canvas"
    },
    "method:FormItem.setLeft":{
        ref:"method:FormItem.setLeft",
        flags:"A",
        description:" For a form with ${isc.DocUtils.linkForRef('attr:DynamicForm.itemLayout','itemLayout')}:\"absolute\" only, set the left\n coordinate of this form item.\n <P>\n Causes the form to redraw.\n",
        name:"setLeft",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "classAttr:RPCManager.maxLoginAttemptsExceededMarker":{
        ref:"classAttr:RPCManager.maxLoginAttemptsExceededMarker",
        flags:"IRWA",
        description:"Marker the system will look for in order to detect when the number of maximum logins was exceeded.",
        name:"maxLoginAttemptsExceededMarker",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.loginRequiredMarker",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"RPCManager.maxLoginAttemptsExceededMarker",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "relogin"
        ]
    },
    "classMethod:RPCManager.createScreen":{
        ref:"classMethod:RPCManager.createScreen",
        flags:"",
        description:" Creates a screen previously cached by a call to ${isc.DocUtils.linkForRef('classMethod:RPCManager.cacheScreens')}.\n <p>\n As with ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')}, the default behavior is to prevent any global widget IDs from\n being established, the returned Canvas will be the outermost component of the screen,\n and that Canvas will provide access to other widgets in the screen via ${isc.DocUtils.linkForRef('method:Canvas.getByLocalId','getByLocalId()')}\n <p>\n Alternatively, as with ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')}, a list of IDs that should be allowed to become\n globals can be passed, allowing those widgets to be retrieved via a call to\n ${isc.DocUtils.linkForRef('classMethod:Canvas.getById')} after the screen has been created.\n <p>\n If you do not pass <code>globals</code> and avoid depending on global IDs within the screen\n definition itself (for example, by embedding JavaScript event handlers in the screen definition\n that use global IDs), you can create the same screen multiple times.\n \n",
        name:"createScreen",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the screen to create",
                optional:false,
                name:"screenName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"widgets to allow to take their global IDs",
                optional:true,
                name:"globals",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        returns:{
            description:"last top-level widget in the screen definition",
            type:"Canvas"
        },
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "classMethod:RPCManager.loginRequired":{
        ref:"classMethod:RPCManager.loginRequired",
        flags:"",
        description:" Called when a session timeout is encountered while trying to do a background RPC.  See\n ${isc.DocUtils.linkForRef('group:relogin','Relogin')}.\n <P>\n The transaction with the passed <code>transactionId</code> is suspended, and should either\n be ${isc.DocUtils.linkForRef('classMethod:RPCManager.clearTransaction','cleared')} or ${isc.DocUtils.linkForRef('classMethod:RPCManager.resendTransaction','resent')}\n after the user has been re-authenticated.  \n <P>\n The <code>rpcRequest</code> parameter can be used to determine whether the suspended\n transaction can simply be dropped (eg, it's periodic polling request).\n <P>\n The <code>rpcResponse</code> parameter has rpcResponse.data set to the raw text of the\n response that triggered <code>loginRequired()</code>.  Some very advanced relogin strategies\n may need to inspect the raw response to get information needed for re-authentication.\n\n",
        name:"loginRequired",
        seeAlso:[
        ],
        params:[
            {
                description:"id of the transaction",
                optional:false,
                name:"transactionNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"first RPCRequest of the transaction",
                optional:false,
                name:"rpcRequest",
                defaultValue:null,
                type:"RPCRequest"
            },
            {
                description:"RPCResponse containing the session timeout response that                                  caused loginRequired() to be invoked",
                optional:false,
                name:"rpcResponse",
                defaultValue:null,
                type:"RPCResponse"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager",
        groups:[
            "relogin"
        ]
    },
    "method:Portlet.close":{
        ref:"method:Portlet.close",
        flags:"",
        description:" <code>close()</code> method overridden to show \n ${isc.DocUtils.linkForRef('attr:Portlet.closeConfirmationMessage')} to the user before\n removing the portlet from the PortalLayout via ${isc.DocUtils.linkForRef('method:PortalLayout.removePortlet')}\n",
        name:"close",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Portlet"
    },
    "method:StatefulCanvas.setDisabled":{
        ref:"method:StatefulCanvas.setDisabled",
        flags:"",
        description:" Enable or disable this object\n",
        name:"setDisabled",
        seeAlso:[
        ],
        params:[
            {
                description:"true if this widget is to be disabled",
                optional:false,
                name:"disabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "enable",
            "state"
        ]
    },
    "attr:ImgSectionHeader.iconHeight":{
        ref:"attr:ImgSectionHeader.iconHeight",
        flags:"IR",
        description:"Height in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ColorPicker.colorButtonSize":{
        ref:"attr:ColorPicker.colorButtonSize",
        flags:"IR",
        description:"Width and height of the basic color boxes (they are always square, and they are\n all the same size).",
        name:"colorButtonSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:DetailViewerField.linkTextProperty":{
        ref:"attr:DetailViewerField.linkTextProperty",
        flags:"IRW",
        description:"Name of the property in a DetailViewerRecord that holds the HTML to display for values\n of this field if the field type is set to \"link\".",
        name:"linkTextProperty",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.type",
                description:null
            },
            {
                ref:"attr:DetailViewerRecord.linkText",
                description:null
            },
            {
                ref:"attr:DetailViewerField.linkText",
                description:null
            },
            {
                ref:"attr:DetailViewer.linkTextProperty",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:MenuButton.menuAnimationEffect":{
        ref:"attr:MenuButton.menuAnimationEffect",
        flags:"IRWA",
        description:"Allows you to specify an animation effect to apply to the menu when it is being shown.\n Valid options are \"none\" (no animation), \"fade\", \"slide\" and \"wipe\".\n If unspecified falls through to <code>menu.showAnimationEffect</code>",
        name:"menuAnimationEffect",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "type:Selected":{
        ref:"type:Selected",
        values:[
            {
                description:"StatefulCanvas should show focused state",
                value:"StatefulCanvas.FOCUSED"
            },
            {
                description:"StatefulCanvas is selected",
                value:"StatefulCanvas.SELECTED"
            },
            {
                description:"StatefulCanvas is not selected",
                value:"StatefulCanvas.UNSELECTED"
            }
        ],
        description:null,
        name:"Selected",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "state"
        ]
    },
    "attr:DateChooser.alternateStyleSuffix":{
        ref:"attr:DateChooser.alternateStyleSuffix",
        flags:"IRW",
        description:"The text appended to the style name when using ${isc.DocUtils.linkForRef('attr:DateChooser.alternateWeekStyles')}.",
        name:"alternateStyleSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Dark\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:FormItem.focusInItem":{
        ref:"method:FormItem.focusInItem",
        flags:"",
        description:"\t\t\tMove the keyboard focus into this item's focusable element\n",
        name:"focusInItem",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling",
            "focus"
        ]
    },
    "method:ScriptTask.execute":{
        ref:"method:ScriptTask.execute",
        flags:"",
        description:" Execute the task.  \n",
        name:"execute",
        seeAlso:[
        ],
        params:[
            {
                description:"the task input",
                optional:false,
                name:"input",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the task input record if an <code>inputFieldList</code> was specified. See ${isc.DocUtils.linkForRef('group:taskIO')}",
                optional:false,
                name:"inputRecord",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"the task output.  For multiple field output, call  ${isc.DocUtils.linkForRef('method:ScriptTask.setOutputRecord')} instead, and return null",
            type:"any"
        },
        type:"method",
        definingClass:"class:ScriptTask"
    },
    "attr:Window.closeButton":{
        ref:"attr:Window.closeButton",
        flags:"R",
        description:"Button show in the header that will close this Window by calling ${isc.DocUtils.linkForRef('method:Window.closeClick')}.",
        name:"closeButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:TabSet.rightEdgeOffsets":{
        ref:"attr:TabSet.rightEdgeOffsets",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeOffsets</code>, \n <code>rightEdgeOffsets</code>, <code>topEdgeOffsets</code> and <code>bottomEdgeOffsets</code> \n properties allow the offsets of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge offsets where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"rightEdgeOffsets",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:TileGrid.detailViewer":{
        ref:"attr:TileGrid.detailViewer",
        flags:"IR",
        description:"DetailViewer instance used to render the content shown in Tiles by default.",
        name:"detailViewer",
        seeAlso:[
        ],
        valueType:"AutoChild DetailViewer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "method:Toolbar.addButtons":{
        ref:"method:Toolbar.addButtons",
        flags:"",
        description:" Add a list of buttons to the toolbar\n",
        name:"addButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"list of button object initializers.",
                optional:true,
                name:"buttons",
                defaultValue:null,
                type:"Array of objects"
            },
            {
                description:"position to add the new buttons at",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar"
    },
    "attr:Canvas.snapAxis":{
        ref:"attr:Canvas.snapAxis",
        flags:"IRW",
        description:"Describes which axes to apply snap-to-grid to.\n Valid values are \"horizontal\", \"vertical\" or \"both\".",
        name:"snapAxis",
        seeAlso:[
            {
                ref:"attr:Canvas.snapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.snapResizeToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapResizeToGrid",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"both\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "classMethod:Canvas.setShowCustomScrollbars":{
        ref:"classMethod:Canvas.setShowCustomScrollbars",
        flags:"",
        description:" Whether to use the browser's native scrollbars or SmartClient-based scrollbars by default\n for all canvases.\n <P>\n This method changes the default value of ${isc.DocUtils.linkForRef('attr:Canvas.showCustomScrollbars')}.\n",
        name:"setShowCustomScrollbars",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to show custom (SmartClient-based) scrollbars   rather than css-scrollbars by default.",
                optional:false,
                name:"showCustomScrollbars",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Canvas"
    },
    "attr:TabSet.scrollerHSrc":{
        ref:"attr:TabSet.scrollerHSrc",
        flags:"IR",
        description:"If this TabSet is showing ${isc.DocUtils.linkForRef('attr:TabSet.showTabScroller','tab scroller buttons')}, and \n ${isc.DocUtils.linkForRef('attr:TabSet.symmetricScroller','symmetricScroller')} is true, this property governs the base\n URL for the tab bar back and forward scroller button images for horizontal tab bars [IE for\n tab sets with ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} set to \"top\" or \"bottom\"].\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:TabSet.symmetricScroller','symmetricScroller')} is false, \n ${isc.DocUtils.linkForRef('attr:TabSet.scrollerSrc')} will be used instead.\n <P>\n To get the path to the image to display, this base URL will be modified as follows:\n <ul>\n <li>If appropriate a state suffix of <code>\"Down\"</code> or <code>\"Disabled\"</code> will be\n     appended.</li>\n <li>A suffix of <code>\"forward\"</code> or <code>\"back\"</code> will be appended for the\n     forward or backward scrolling button.</li>\n </ul>\n For example - if the scrollerHSrc is set to <code>\"[SKIN]hscroll.gif\"</code>, the image\n displayed for the back-scroller button on a tabSet with <code>tabBarPosition</code> set to\n \"top\" and <code>symmetricScroller</code> set to true would be one of \n <code>\"[SKIN]hscroll_back.gif\"</code>, <code>\"[SKIN]hscroll_Down_back.gif\"</code>,\n and <code>\"[SKIN]hscroll_Disabled_back.gif\"</code>.\n <P>\n Note that for best results the media should be sized to match the scroller button sizes, \n determined by ${isc.DocUtils.linkForRef('attr:TabSet.tabBarThickness')} and ${isc.DocUtils.linkForRef('attr:TabSet.scrollerButtonSize')}.",
        name:"scrollerHSrc",
        seeAlso:[
            {
                ref:"attr:TabSet.symmetricScroller",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]hscroll.gif\"",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "attr:MenuButton.showMenuBelow":{
        ref:"attr:MenuButton.showMenuBelow",
        flags:"IRW",
        description:"The menu drops down below the menu button.\n\t\t\tSet to false if the menu should appear above the menu button.",
        name:"showMenuBelow",
        setter:[
            "setShowMenuBelow"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "attr:TextAreaItem.width":{
        ref:"attr:TextAreaItem.width",
        flags:"IRW",
        description:"default width of this item",
        name:"width",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "appearance"
        ]
    },
    "method:DrawLinePath.setEndPoint":{
        ref:"method:DrawLinePath.setEndPoint",
        flags:"",
        description:" Update the endPoint\n\n",
        name:"setEndPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for end point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for end point, in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLinePath"
    },
    "attr:RestDataSource.xmlRecordXPath":{
        ref:"attr:RestDataSource.xmlRecordXPath",
        flags:"IR",
        description:"<code>recordXPath</code> mapping to the data node of XML returned by the server.\n Applies if this.dataFormat is set to <code>\"xml\"</code>.<br>\n The default value will pick up data from a response structured as follows:<br>\n <pre>\n &lt;response&gt;\n    &lt;status&gt;0&lt;/status&gt;\n    &lt;data&gt;\n      &lt;record&gt;\n          &lt;field1&gt;value&lt;/field1&gt;\n          &lt;field2&gt;value&lt;/field2&gt;\n      &lt;/record&gt;\n      &lt;record&gt;\n          &lt;field1&gt;value&lt;/field1&gt;\n          &lt;field2&gt;value&lt;/field2&gt;\n      &lt;/record&gt;\n    &lt;/data&gt;\n &lt;/response&gt;\n </pre>",
        name:"xmlRecordXPath",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"/response/data/*\"",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "class:ComboBoxItem":{
        methods:[
            "method:ComboBoxItem.defaultDynamicValue",
            "method:ComboBoxItem.getEnteredValue",
            "method:ComboBoxItem.fetchData",
            "method:ComboBoxItem.getDisplayFieldName",
            "method:ComboBoxItem.getValueFieldName",
            "method:ComboBoxItem.getSelectedRecord",
            "method:ComboBoxItem.getPickListFilterCriteria",
            "method:ComboBoxItem.getClientPickListData",
            "method:ComboBoxItem.filterClientPickListData",
            "method:ComboBoxItem.dataArrived",
            "method:ComboBoxItem.shouldGenerateExactMatchCriteria",
            "method:ComboBoxItem.hasAdvancedCriteria",
            "method:ComboBoxItem.getCriterion",
            "method:ComboBoxItem.canEditCriterion",
            "method:ComboBoxItem.setCriterion"
        ],
        ref:"class:ComboBoxItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:ComboBoxItem.defaultValue",
            "attr:ComboBoxItem.defaultToFirstOption",
            "attr:ComboBoxItem.showHintInField",
            "attr:ComboBoxItem.mask",
            "attr:ComboBoxItem.maskSaveLiterals",
            "attr:ComboBoxItem.maskPadChar",
            "attr:ComboBoxItem.maskPromptChar",
            "attr:ComboBoxItem.maskOverwriteMode",
            "attr:ComboBoxItem.progressiveLoading",
            "attr:ComboBoxItem.showPickerIcon",
            "attr:ComboBoxItem.pickerIconWidth",
            "attr:ComboBoxItem.pickerIconHeight",
            "attr:ComboBoxItem.pickerIconSrc",
            "attr:ComboBoxItem.showPickListOnKeypress",
            "attr:ComboBoxItem.saveOnEnter",
            "attr:ComboBoxItem.completeOnTab",
            "attr:ComboBoxItem.formatOnBlur",
            "attr:ComboBoxItem.addUnknownValues",
            "attr:ComboBoxItem.allowEmptyValue",
            "attr:ComboBoxItem.pendingTextBoxStyle",
            "attr:ComboBoxItem.optionDataSource",
            "attr:ComboBoxItem.pickListFields",
            "attr:ComboBoxItem.cachePickListResults",
            "attr:ComboBoxItem.fetchDisplayedFieldsOnly",
            "attr:ComboBoxItem.optionFilterContext",
            "attr:ComboBoxItem.optionOperationId",
            "attr:ComboBoxItem.displayField",
            "attr:ComboBoxItem.valueField",
            "attr:ComboBoxItem.filterLocally",
            "attr:ComboBoxItem.pickListCriteria",
            "attr:ComboBoxItem.showOptionsFromDataSource",
            "attr:ComboBoxItem.pickListProperties",
            "attr:ComboBoxItem.sortField",
            "attr:ComboBoxItem.autoFetchData",
            "attr:ComboBoxItem.filterWithValue",
            "attr:ComboBoxItem.filterFields",
            "attr:ComboBoxItem.useClientFiltering",
            "attr:ComboBoxItem.minimumSearchLength",
            "attr:ComboBoxItem.searchStringTooShortMessage",
            "attr:ComboBoxItem.textMatchStyle",
            "attr:ComboBoxItem.showAllOptions",
            "attr:ComboBoxItem.separatorRows",
            "attr:ComboBoxItem.generateExactMatchCriteria"
        ],
        description:"The Combobox is a text input field which can show a list of options via a drop-down\n PickList.\n <p>\n The set of options will be filtered based on the current value in the text field, so only\n options that match what has been typed so far will be displayed.\n The set of options can be derived from a ValueMap or dynamically retrieved from a\n dataSource.  See the ${isc.DocUtils.linkForRef('interface:PickList')} interface for further settings.\n <P>\n The two most common use cases for ComboBoxItems are:\n <ul><li>With ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} set to true, the ComboBoxItem acts as a\n  freeform text entry field with the picklist providing essentially a set of suggested completions\n  similar to a URL bar in a web browser.</li>\n     <li>With ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} set to false, the ComboBoxItem acts similarly\n  to a SelectItem where a fixed set of options is available to the user and the text entry field\n  is essentially used to filter which of these options are visible</li></ul>\n <P>\n Other commonly used settings to configure ComboBoxItem behavior are:<br>\n - ${isc.DocUtils.linkForRef('attr:ComboBoxItem.defaultToFirstOption')} - this will select the first option from the pickList\n as a default value for the item - and<br>\n - ${isc.DocUtils.linkForRef('attr:ComboBoxItem.completeOnTab')} which causes the\n current selection in the pickList (if there is one) to be chosen when the user tabs out of the\n field, allowing a user to type a few characters and hit tab to auto-complete to the first matched\n option. <code>completeOnTab</code> is automatically set to true if ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues','addUnknownValues')} is \n false.\n <P>\n ComboBoxItem does not provide built-in support for multiple selection.  For a Combobox\n that does provide such a multiple-select feature use ${isc.DocUtils.linkForRef('class:MultiComboBoxItem')}.",
        name:"ComboBoxItem",
        implementsInterfaces:[
            "PickList"
        ],
        seeAlso:[
            {
                ref:"interface:PickList",
                description:null
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('listComboBox')}"
        ]
    },
    "attr:DataSource.infoField":{
        ref:"attr:DataSource.infoField",
        flags:"IR",
        description:"Name of the field that has the second most pertinent piece of textual information in the\n record, for use when a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} needs to show a short summary of a record.\n <p>\n For example, for a DataSource of employees, a \"job title\" field would probably be the second\n most pertinent text field aside from the employee's \"full name\".\n <p>\n Unlike ${isc.DocUtils.linkForRef('attr:DataSource.titleField')}, infoField is not automatically determined in the absence of an\n explicit setting.",
        name:"infoField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "dsSpecialFields"
        ]
    },
    "attr:TabSet.paneContainerClassName":{
        ref:"attr:TabSet.paneContainerClassName",
        flags:"IRW",
        description:"CSS style used for the paneContainer.",
        name:"paneContainerClassName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:CubeGrid.hiliteCell":{
        ref:"method:CubeGrid.hiliteCell",
        flags:"",
        description:"      Apply a hilite to a specific cell.\n      Note: can be called either as \n          hiliteCell(cellObject, hiliteID) or \n          hiliteCell(row, column, hiliteID)\n\n      <br><i>methodType</i> action\n",
        name:"hiliteCell",
        seeAlso:[
        ],
        params:[
            {
                description:"cell to hilite / row of cell to hilite",
                optional:false,
                name:"cellObj",
                defaultValue:null,
                type:"cell object | row number"
            },
            {
                description:"hilite ID / column of cell to hilite",
                optional:false,
                name:"hiliteID",
                defaultValue:null,
                type:"string | column number"
            },
            {
                description:"optional third parameter - hilite ID.",
                optional:false,
                name:"[]",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if the cell was successfully hilited.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "hiliting"
        ]
    },
    "method:DrawItem.mouseUp":{
        ref:"method:DrawItem.mouseUp",
        flags:"",
        description:" Notification fired when the user releases the left mouse button on this DrawItem.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"mouseUp",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:OperationBinding.spoofResponses":{
        ref:"attr:OperationBinding.spoofResponses",
        flags:"IR",
        description:"For a DataSource contacting a ${isc.DocUtils.linkForRef('attr:DataSource.serviceNamespace','WSDL web service')}, setting\n this flag means the DataSource doesn't actually attempt to contact the server but generates\n a sample response instead, based on the XML Schema of the response message embedded in the\n WSDL.\n <P>\n The spoofed response will include all complexType elements and will fill in appropriate\n values by type for all simpleType elements, although the spoofed data will not conform to\n all xs:restriction declarations (eg xs:pattern).\n <P>\n Note that if your WSDL does not fully describe the response format (some WSDL services just\n have a placeholder &lt;xs:any&gt; element), SmartClient can only produce a partial\n response.  To use a hand-generated sample response, just save an XML file to disk and use\n the ${isc.DocUtils.linkForRef('attr:OperationBinding.dataURL')} setting to point to it.",
        name:"spoofResponses",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "method:DataSource.getPrimaryKeyFieldNames":{
        ref:"method:DataSource.getPrimaryKeyFieldNames",
        flags:"",
        description:" Returns a list of the names of this DataSource's \n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} fields.\n",
        name:"getPrimaryKeyFieldNames",
        seeAlso:[
            {
                ref:"method:DataSource.getPrimaryKeyFields",
                description:null
            }
        ],
        returns:{
            description:"The list of the names of this datasource's primaryKey fields",
            type:"Array of String"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:CanvasItem.prompt":{
        ref:"attr:CanvasItem.prompt",
        flags:"IRW",
        description:"This text is shown as a tooltip prompt when the cursor hovers over this item.",
        name:"prompt",
        setter:[
            "setPrompt"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CanvasItem",
        groups:[
            "basics"
        ]
    },
    "type:ControlName":{
        ref:"type:ControlName",
        values:[
            {
                description:"A button to make the current selection bold.",
                value:"\"boldSelection\""
            },
            {
                description:"A button to make the current selection italic.",
                value:"\"italicSelection\""
            },
            {
                description:"A button to make the current selection underlined.",
                value:"\"underlineSelection\""
            },
            {
                description:"A select item allowing the user to change the font of the current text selection.",
                value:"\"fontSelector\""
            },
            {
                description:"A select item allowing the user to change the font size of the current text selection.",
                value:"\"fontSizeSelector\""
            },
            {
                description:"A button to left-align the selected text.",
                value:"\"alignLeft\""
            },
            {
                description:"A button to right-align the selected text.",
                value:"\"alignRight\""
            },
            {
                description:"A button to center the selected text.",
                value:"\"alignCenter\""
            },
            {
                description:"A button to justify the selected line of text.",
                value:"\"justify\""
            },
            {
                description:"A color-picker allowing the user to set the text color.",
                value:"\"color\""
            },
            {
                description:"A color picker allowing the user to set the text background color.",
                value:"\"backgroundColor\""
            },
            {
                description:"Within text, indents the paragraph. Within a list, increases the list level.",
                value:"\"indent\""
            },
            {
                description:"Within text, outdents the paragraph. Within a list, decreases the list level.",
                value:"\"outdent\""
            },
            {
                description:"Turns the current selection into an ordered list (HTML &lt;ol&gt;) or converts an unordered list to an ordered list.",
                value:"\"orderedList\""
            },
            {
                description:"Turns the current selection into an unordered list (HTML &lt;ul&gt;) or converts an ordered list to an unordered list.",
                value:"\"unorderedList\""
            },
            {
                description:"Shows the ${isc.DocUtils.linkForRef('attr:RichTextEditor.listPropertiesDialog','listPropertiesDialog')} to allow configuring the options of the currently selected HTML list.",
                value:"\"listProperties\""
            }
        ],
        description:"Names for the standard controls built into the RichTextEditor.  You can use these\n <code>ControlNames</code> in APIs like ${isc.DocUtils.linkForRef('attr:RichTextEditor.styleControls')} to control\n the order in which controls appear, to omit default controls or to show controls that\n are not shown by default.\n <p>\n Every <code>ControlName</code> is also the name of an ${isc.DocUtils.linkForRef('type:AutoChild')}, so all the\n built-in controls can be skinned or otherwise customized via the\n ${isc.DocUtils.linkForRef('group:autoChildUsage','AutoChild system')}. <smartgwt>Note that the AutoChild\n name in each case is the camelCaps version of the <code>ControlName</code> value.  For\n example, use \"boldSelection\" as the name of the AutoChildren for the bold button, not\n \"BOLDSELECTION\".</smartgwt>",
        name:"ControlName",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:MultiSortPanel.maxLevels":{
        ref:"attr:MultiSortPanel.maxLevels",
        flags:"IR",
        description:"The maximum number of levels of sorting that can be applied.  Since each sort-property or\n field-name can be used only once in a given multi-sort operation, if no maxLevels value\n or a value larger than the total number of available properties is specified, it will \n default to the total number of available properties.",
        name:"maxLevels",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "attr:DataSourceField.implicitSequence":{
        ref:"attr:DataSourceField.implicitSequence",
        flags:"IR",
        description:"For a field of ${isc.DocUtils.linkForRef('type:FieldType','type')} \"sequence\" on a DataSource with \n ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType:\"sql\"')}, this flag indicates that the field is \n implicitly bound to a sequence.  This setting means that SmartClient does not expect to \n find a value for the field in \"add\" operations, even if it is marked as a \n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')}, as such fields usually are.  It also means that SmartClient\n does not attempt to retrieve the field value from an actual database sequence, instead\n relying on the JDBC driver to return the generated value (see the note on\n <code>sequenceMode</code> below).\n <P>\n Implicitly bound columns are a syntactic convenience provided by some databases to simulate \n the \"auto-increment\" or \"identity\" columns available natively in other products, without \n the underlying sequence having to be explicitly referenced in SQL queries.  Currently, these\n database products support this idea:<ul>\n <li>PostgreSQL has had a \"serial\" column type for a long time - \n <a href=http://www.postgresql.org/docs/9.3/static/datatype-numeric.html#DATATYPE-SERIAL>\n http://www.postgresql.org/docs/9.3/static/datatype-numeric.html#DATATYPE-SERIAL</a></li>\n <li>DB2 has long supported a \"GENERATED AS IDENTITY\" notation for numeric fields.  This may\n or may not be implemented with a sequence - the documentation does not specify - but we \n support it via the implicitSequence mechanism because it is so similar to the implicit\n sequence approach in Oracle.   \n <a href=\"http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z10.doc.apsg%2Fsrc%2Ftpc%2Fdb2z_identitycols.htm\">\n http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z10.doc.apsg%2Fsrc%2Ftpc%2Fdb2z_identitycols.htm</a></li>\n <li>Oracle introduced a \"GENERATED AS IDENTITY\" notation for numeric fields in version 12c - \n <a href=http://www.oracle-base.com/articles/12c/identity-columns-in-oracle-12cr1.php>\n http://www.oracle-base.com/articles/12c/identity-columns-in-oracle-12cr1.php</a></li>\n </ul>\n If you have columns like these in your database, declare them as type \"sequence\" and mark \n them with the <code>implicitSequence</code> flag.\n <P>\n <b>NOTE:</b> If you use this property, you should also set the \n ${isc.DocUtils.linkForRef('attr:DataSource.sequenceMode','DataSource sequenceMode')} to \"jdbcDriver\".  This is necessary\n because SmartClient cannot directly query the implicit sequence that is being used behind the \n scenes, so we must rely on the JDBC driver to do that.\n <p>\n If you use ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema','autoDeriveSchema')} to automatically derive a \n dataSource from table metadata, SmartClient attempts to identify these special Oracle and\n Postgres columns by heuristic examination of the metadata.  When it identifies such a \n column, it marks the corresponding dataSourceField <code>implicitSequence: true</code>, \n and changes the sequenceMode on the DataSource to \"jdbcDriver\".  If your table contains\n one of these columns and SmartClient does not automatically identify it, bear in mind that\n you can always set this flag manually, even if you are using <code>autoDeriveSchema</code>.\n <P>\n This setting has no effect for non-SQL dataSources, or for databases other than those \n mentioned above.",
        name:"implicitSequence",
        seeAlso:[
            {
                ref:"attr:DataSource.sequenceMode",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "sqlDataSource"
        ]
    },
    "group:exportBackgroundColor":{
        ref:"group:exportBackgroundColor",
        refs:[
            "method:ListGrid.getExportBGColor",
            "method:ListGrid.getExportRowBGColor",
            "method:ListGrid.getExportColumnBGColor",
            "attr:ListGrid.exportDefaultBGColor",
            "attr:ListGrid.exportAlternateRowBGColor"
        ],
        name:"exportBackgroundColor",
        seeAlso:[
        ],
        type:"group"
    },
    "method:SplitPane.setShowRightButton":{
        ref:"method:SplitPane.setShowRightButton",
        flags:"",
        description:" Show or hide the ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButton','rightButton')} of the\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')}.\n\n",
        name:"setShowRightButton",
        seeAlso:[
        ],
        params:[
            {
                description:"if <code>true</code>, the button will be shown, otherwise hidden.",
                optional:false,
                name:"visible",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:Canvas.mouseMove":{
        ref:"method:Canvas.mouseMove",
        flags:"A",
        description:"\n Executed when the mouse moves within this widget.  No default implementation.\n\n",
        name:"mouseMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:FormItem.canEdit":{
        ref:"attr:FormItem.canEdit",
        flags:"IRW",
        getter:[
            "getCanEdit"
        ],
        description:"Is this form item editable (canEdit:true) or read-only (canEdit:false)? Setting the\n form item to non-editable causes it to render as read-only. Can be updated at runtime via\n the ${isc.DocUtils.linkForRef('method:FormItem.setCanEdit','setCanEdit()')} method.\n <P>\n Read-only appearance may be specified via ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay')}.\n The default setting for this value (<code>\"readOnly\"</code>) differs from\n the disabled state in that the form item is not rendered with disabled styling and\n most form items will allow copying of the contents while read-only but do not while\n disabled.\n <P>\n Note that for forms bound to a ${isc.DocUtils.linkForRef('class:DataSource')}, if this property is not explicitly\n set at the item level, its default value will match the\n ${isc.DocUtils.linkForRef('attr:DynamicForm.canEditFieldAttribute')} on the associated dataSource field.\n <P>\n Developers should also be aware that the ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay')} attribute is\n unrelated to the ${isc.DocUtils.linkForRef('attr:DataSourceField.readOnlyEditorType')} attribute. When a\n DynamicForm is first bound to a dataSource, for\n ${isc.DocUtils.linkForRef('attr:DataSourceField.canEdit','canEdit:false')} DataSourceFields,\n ${isc.DocUtils.linkForRef('attr:DataSourceField.readOnlyEditorType')} will determine what ${isc.DocUtils.linkForRef('type:FormItemType')}\n should be created for the field. Once created, a FormItem's type can not be changed.\n Setting ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} at runtime will simply change the appearance\n of the item to allow or disallow editing of the item.",
        name:"canEdit",
        setter:[
            "setCanEdit"
        ],
        seeAlso:[
            {
                ref:"method:FormItem.setCanEdit",
                description:null
            },
            {
                ref:"method:DynamicForm.setCanEdit",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "readOnly"
        ]
    },
    "attr:ComboBoxItem.minimumSearchLength":{
        ref:"attr:ComboBoxItem.minimumSearchLength",
        flags:"IRA",
        description:"Minimum length in characters before a search is performed. If too few characters\n are entered the pick list shows ${isc.DocUtils.linkForRef('attr:ComboBoxItem.searchStringTooShortMessage','searchStringTooShortMessage')}.",
        name:"minimumSearchLength",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:TabSet.setTabPane":{
        ref:"method:TabSet.setTabPane",
        flags:"",
        description:" Apply a new ${isc.DocUtils.linkForRef('attr:Tab.pane','pane')} to an existing tab in this tabSet\n",
        name:"setTabPane",
        seeAlso:[
        ],
        params:[
            {
                description:"Tab to update (may be referenced by ID or index)",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"number | string | Tab"
            },
            {
                description:"new Pane for the tab",
                optional:false,
                name:"pane",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:HeaderItem.align":{
        ref:"attr:HeaderItem.align",
        flags:"IRW",
        description:"Alignment of this <code>HeaderItem</code> in its cell.\n <p>\n <strong>NOTE:</strong> Because a <code>HeaderItem</code> fills its cell by default, the\n align setting might not have a visible effect or the effect might not be the same across\n browsers. Instead, the ${isc.DocUtils.linkForRef('attr:FormItem.textAlign','textAlign')} of this <code>HeaderItem</code>\n should be used to control the alignment of the header text.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HeaderItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Scrollbar.showCorner":{
        ref:"attr:Scrollbar.showCorner",
        flags:"IRA",
        description:"If true, displays a corner piece at the bottom end of a vertical scrollbar, or the\n right end of a horizontal scrollbar. This is typically set only when both horizontal\n and vertical scrollbars are displayed and about the same corner.",
        name:"showCorner",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "corner"
        ]
    },
    "attr:MenuButton.showMenuOnRollOver":{
        ref:"attr:MenuButton.showMenuOnRollOver",
        flags:"IRA",
        description:"When set to true, show the menu automatically when the mouse moves over the button.",
        name:"showMenuOnRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:MenuButton",
        groups:[
            "appearance"
        ]
    },
    "method:TileGrid.deselectRecords":{
        ref:"method:TileGrid.deselectRecords",
        flags:"",
        description:"\n Deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecords(records, false)</code>\n <P>\n Note that developers may wish to use ${isc.DocUtils.linkForRef('method:TileGrid.deselectRange')} to select a single\n contiguous range.\n\n",
        name:"deselectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to deselect",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:DataBoundComponent.dataFetchMode":{
        ref:"attr:DataBoundComponent.dataFetchMode",
        flags:"IR",
        description:"How to fetch and manage records retrieve from the server.  See ${isc.DocUtils.linkForRef('type:FetchMode')}.\n <P>\n This setting only applies to the ${isc.DocUtils.linkForRef('class:ResultSet')} automatically created by calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')}.  If a pre-existing ResultSet is passed to setData() instead, it's\n existing setting for ${isc.DocUtils.linkForRef('attr:ResultSet.fetchMode')} applies.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"paged\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "class:LayoutSpacer":{
        methods:[
        ],
        ref:"class:LayoutSpacer",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
        ],
        description:"Add a LayoutSpacer to a Layout to take up space just like a normal member, without actually\n drawing anything.  Semantically equivalent to using an empty canvas, but higher performance\n for this particular use case.",
        name:"LayoutSpacer",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ValuesManager.rememberValues":{
        ref:"method:ValuesManager.rememberValues",
        flags:"",
        description:"\t\t\tMake a snapshot of the current set of values, so we can reset to them later.\n\t\t\tCreates a new object, then adds all non-method properties of values\n\t\t\tto the new object.  Use <code>resetValues()</code> to revert to these values.\n          Note that this method is automatically called when the values for this form are\n          set programmatically via a call to ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}.\n\n",
        name:"rememberValues",
        seeAlso:[
        ],
        returns:{
            description:"copy of current form values",
            type:"object"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "attr:Operator.ID":{
        ref:"attr:Operator.ID",
        flags:"IR",
        description:"Unique id for an operator, which appears within ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} as the\n ${isc.DocUtils.linkForRef('object:Operator')} property.\n <P>\n A list of built-in identifiers is ${isc.DocUtils.linkForRef('type:OperatorId','here')}.",
        name:"ID",
        seeAlso:[
        ],
        valueType:"OperatorId",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:Window.bodyConstructor":{
        ref:"attr:Window.bodyConstructor",
        flags:"IRWA",
        description:"The name of the widget class (as a string) to use for the body. If unset the appropriate\n constructor type will be determined as follows:<br>\n - if ${isc.DocUtils.linkForRef('attr:Window.items')} is defined as an array of widgets, and ${isc.DocUtils.linkForRef('attr:Window.contentLayout')} \n   is not set to <code>\"none\"</code>, bodyConstructor defaults to a ${isc.DocUtils.linkForRef('class:VLayout')}<br>\n - if ${isc.DocUtils.linkForRef('attr:Window.src')} is set, bodyConstructor defaults to an ${isc.DocUtils.linkForRef('class:HTMLFlow')}<br>\n - otherwise bodyConstructor will default to a simple ${isc.DocUtils.linkForRef('class:Canvas')}<br>\n Note that if this property is overridden for some window, the specified constructor \n should be a subclass of one of these defaults to ensure the window renders out as \n expected.",
        name:"bodyConstructor",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "attr:DateRangeItem.dateRangeForm":{
        ref:"attr:DateRangeItem.dateRangeForm",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:DynamicForm')} ${isc.DocUtils.linkForRef('type:AutoChild')} automatically created by the dateRangeItem and applied\n to the item as ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas','this.canvas')}.<P>\n This DynamicForm contains the \"from\" and \"to\" fields the user will interact with to actually\n select a date-range. Note that as a standard autoChild, developers may customize this form \n by modifying <code>dateRangeProperties</code>.",
        name:"dateRangeForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:SpinnerItem.maskPromptChar":{
        ref:"attr:SpinnerItem.maskPromptChar",
        flags:"IRWA",
        description:"Not applicable to a SpinnerItem.",
        name:"maskPromptChar",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"_\"",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "attr:ImgSectionHeader.icon":{
        ref:"attr:ImgSectionHeader.icon",
        flags:"IRW",
        description:"Optional icon to be shown with the button title text.  \n <P>\n Specify as the partial URL to an image, relative to the imgDir of this component.",
        name:"icon",
        setter:[
            "setIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:Menu.baseStyle":{
        ref:"attr:Menu.baseStyle",
        flags:"IRW",
        description:"CSS style for a normal cell",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"menu\"",
        type:"attr",
        definingClass:"class:Menu"
    },
    "type:FormatString":{
        ref:"type:FormatString",
        description:"A String to be used as a format specifier for a date, datetime, time or numeric field, via\n the ${isc.DocUtils.linkForRef('attr:DataSourceField.format','format')} and ${isc.DocUtils.linkForRef('attr:DataSourceField.exportFormat','exportFormat')} \n properties.  \n <p>\n For fields with a numeric type, the format string is similar to java.text.NumberFormat (see\n <a href='http://docs.oracle.com/javase/7/docs/api/java/text/DecimalFormat.html' target='_blank'>DecimalFormat JavaDoc</a>),\n and for date, time, and datetime types, the format string is similar to\n java.text.SimpleDateFormat (see \n <a href='http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html' target='_blank'>SimpleDateFormat JavaDoc</a>).\n <p>\n Note that all the client-side formatting described in this section is is done by the \n ${isc.DocUtils.linkForRef('classMethod:NumberUtil.format','NumberUtil.format()')} and \n <smartclient>${isc.DocUtils.linkForRef('classMethod:DateUtil.format','DateUtil.format()')}</smartclient>\n <smartgwt>{@link com.smartgwt.client.util.DateUtil.format()}</smartgwt>\n methods.  These are static utility methods that your own code can call if you need to \n programmatically format a date or number using a <code>FormatString</code>\n <p>\n There are 3 possible contexts where a <code>FormatString</code> may be interpreted, and each\n has slightly different limitations:\n\n <h4>in-browser rendering &amp; client-driven exports</h4>\n Almost complete support for Java's SimpleDateFormat/DecimalFormat, as described below, with\n some small extensions for formatting with awareness of a ${isc.DocUtils.linkForRef('object:FiscalCalendar')}.\n <p>\n This category includes cases where code running in the browser does the rendering and\n the rendered result is passed to the server, such as \n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','client-driven export')} and\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportContent','PDF export of the printed view')}.\n\n <h4>Excel export</h4> \n Almost the same as in-browser rendering, with minor limitations due to missing features in\n Excel.  Exact differences are described under ${isc.DocUtils.linkForRef('attr:DataSourceField.exportFormat')}.\n\n <h4>non-Excel server export</h4>\n For example, CSV, XML or JSON ${isc.DocUtils.linkForRef('type:ExportFormat','export formats')} provided via\n ${isc.DocUtils.linkForRef('method:DataSource.exportData')}.  Full support for SimpleDateFormat/DecimalFormat\n as provided by whichever Java version you have installed on the server.  However note that\n depending on the context of the export, the default behavior may be to ignore format\n strings, since formatting intended for end users wouldn't be desirable if data exchange is\n the goal.  See the ${isc.DocUtils.linkForRef('group:exportFormatting','Export Formatting overview')} for details.\n\n <P>\n <h3>Date Format</h3>\n <table width=\"700\" style=\"font-size:11px;border:1px solid black;\">\n <tr><td style=\"color:white;background-color:black;\"><b>Format token</b></td>\n     <td style=\"color:white;background-color:black;\"><b>Description</b></td>\n     <td style=\"color:white;background-color:black;width:150px;\"><b>Sample value</b></td></tr>\n <tr><td>yy     </td><td>Year as a two-digit number                            </td><td>\"99\"   or \"07\"</td></tr>\n <tr><td>yyyy   </td><td>Year as a four-digit number                           </td><td>\"1999\" or \"2007\"</td></tr>\n <tr><td>YY     </td><td>Week year as a two-digit number (week year is the year associated with the entire week deemed to contain a given date, and it may differ from calendar year.  For example, the week year of December 31 2012 is 2013)</td><td>\"99\"   or \"07\"</td></tr>\n <tr><td>YYYY   </td><td>Week year as a four-digit number                      </td><td>\"1999\" or \"2007\"</td></tr>\n <tr><td>LL     </td><td>Fiscal year as a two-digit number (${isc.DocUtils.linkForRef('object:FiscalCalendar')})</td><td>\"99\"   or \"07\"</td></tr>\n <tr><td>LLLL   </td><td>Fiscal year as a four-digit number                    </td><td>\"1999\" or \"2007\"</td></tr>\n <tr><td>M      </td><td>Month in year                                         </td><td>\"1\"  to \"12\"</td></tr>\n <tr><td>MM     </td><td>Month in year with leading zero if required           </td><td>\"01\" to \"12\"</td></tr>\n <tr><td>MMM    </td><td>Short month name (<smartclient>${isc.DocUtils.linkForRef('classAttr:Date.shortMonthNames')}</smartclient><smartgwt>{@link com.smartgwt.client.util.DateUtil#setShortMonthNames()}</smartgwt>)        </td><td>\"Jan\" to \"Dec\"</td></tr>\n <tr><td>MMMM   </td><td>Full month name (<smartclient>${isc.DocUtils.linkForRef('classAttr:Date.monthNames')}</smartclient><smartgwt>{@link com.smartgwt.client.util.DateUtil#setMonthNames()}</smartgwt>)              </td><td>\"January\" to \"December\"</td></tr>\n <tr><td>w      </td><td>Week in year                                          </td><td>\"1\"  to \"52\"</td></tr>\n <tr><td>ww     </td><td>Week in year with leading zero if required            </td><td>\"01\" to \"52\"</td></tr>\n <tr><td>C      </td><td>Week in fiscal year (${isc.DocUtils.linkForRef('object:FiscalCalendar')})           </td><td>\"7\"  or \"29\"</td></tr>\n <tr><td>CC     </td><td>Week in fiscal year with leading zero if required     </td><td>\"07\" or \"29\"</td></tr>\n <tr><td>d      </td><td>Day of the month                                      </td><td>\"1\"  to \"31\"</td></tr>\n <tr><td>dd     </td><td>Day of the month with leading zero if required        </td><td>\"01\" to \"31\"</td></tr>\n <tr><td>ddd    </td><td>Short day name (${isc.DocUtils.linkForRef('classAttr:Date.shortDayNames')})            </td><td>\"Mon\" to \"Sun\"</td></tr>\n <tr><td>dddd   </td><td>Full day name. (${isc.DocUtils.linkForRef('classAttr:Date.dayNames')})                 </td><td>\"Monday\" to \"Sunday\"</td></tr>\n <tr><td>E      </td><td>Short day name (\"EE\" and \"EEE\" are equivalent; all are exactly the same as \"ddd\" - \"E\" is supported purely to conform with SimpleDateFormat)</td><td>\"Mon\" to \"Sun\"</td></tr>\n <tr><td>EEEE   </td><td>Full day name (exactly the same as \"dddd\")            </td><td>\"Monday\" to \"Sunday\"</td></tr>\n <tr><td>D      </td><td>Day in year                                           </td><td>\"1\"  to \"366\"</td></tr>\n <tr><td>DD     </td><td>Day in year with leading zero if required             </td><td>\"01\" to \"366\"</td></tr>\n <tr><td>c      </td><td>Day in fiscal year (${isc.DocUtils.linkForRef('object:FiscalCalendar')})            </td><td>\"5\"  or \"204\"</td></tr>\n <tr><td>cc     </td><td>Day in fiscal year with leading zero if required      </td><td>\"05\" or \"204\"</td></tr>\n <tr><td>u      </td><td>Day number in week (1 is Monday)                      </td><td>\"1\" to \"7\"</td></tr>\n <tr><td>H      </td><td>Hour in day, 0-23 (24-hour clock)                     </td><td>\"0\"  to \"23\"</td></tr>\n <tr><td>HH     </td><td>Hour in day with leading zero if required (24-hour)   </td><td>\"00\" to \"23\"</td></tr>\n <tr><td>h      </td><td>Hour in day, 1-12 (12-hour clock)                     </td><td>\"1\"  to \"12\"</td></tr>\n <tr><td>hh     </td><td>Hour in day with leading zero if required (12-hour)   </td><td>\"01\" to \"12\"</td></tr>\n <tr><td>m      </td><td>Minute in hour                                        </td><td>\"0\"  to \"59\"</td></tr>\n <tr><td>mm     </td><td>Minute in hour with leading zero if required          </td><td>\"00\" to \"59\"</td></tr>\n <tr><td>s      </td><td>Second in minute                                      </td><td>\"0\"  to \"59\"</td></tr>\n <tr><td>ss     </td><td>Second in minute with leading zero if required        </td><td>\"00\" to \"59\"</td></tr>\n <tr><td>a      </td><td>The AM/PM designator (${isc.DocUtils.linkForRef('classAttr:Time.AMIndicator')})        </td><td>\" am\" or \" pm\"</td></tr>\n </table>\n <p>\n <h3>Examples - various formatted versions of the datetime \"2006-08-03 11:26:18\"</h3>\n <table>\n <tr><td width=\"150\">\"M/d/yy\"</td><td width=\"300\">8/3/06</td></tr>\n <tr><td>\"MMMM yyyy\"</td><td>August 2006</td></tr>\n <tr><td>\"HH:mm\"</td><td>11:26</td></tr>\n <tr><td>\"d MMM yyyy, H:ma\"</td><td>3 Aug 2006, 11:26 am</td></tr>\n <tr><td>\"dd/mm/yyyy\"</td><td>03/08/2006</td></tr>\n <tr><td>\"CC/LLLL\"</td><td>53/2006 (assuming the fiscal year ends in the first week of August)</td></tr>\n </table>\n <p>\n <h3><code>SimpleDateFormat</code> specifiers that we do <b>not</b> support:</h3>\n <ul>\n <li>Era designator, BC/AD (G)</li>\n <li>Day of week in month (F)</li>\n <li>Hour in day, 24-hour, with 1-based instead of normal 0-based numbering (hours are 1-24) (k)</li>\n <li>Hour in day, 12-hour, with 0-based instead of normal 1-based numbering (hours are 0-11) (K)</li>\n <li>Milliseconds (S)</li>\n <li>Timezone (z, Z, X)</li>\n </ul>\n <p>&nbsp;<p>\n <h3>Number Format</h3>\n <table width=\"700\" style=\"font-size:11px;border:1px solid black;\">\n <tr><td style=\"color:white;background-color:black;\"><b>Format char</b></td>\n     <td style=\"color:white;background-color:black;\"><b>Description</b></td>\n <tr><td>0          </td><td>Digit, zero is displayed</td></tr>\n <tr><td>#          </td><td>Digit, zero is not displayed</td></tr>\n <tr><td>-          </td><td>Minus sign</td></tr>\n <tr><td>.          </td><td>Decimal separator</td></tr>\n <tr><td>%          </td><td>Multiply by 100 and show as percentage</td></tr>\n <tr><td>&#x2030; (\\u2030) </td><td>Multiply by 1000 and show as per mille.  See below.</td></tr>\n <tr><td>,          </td><td>Indicates digit grouping should be used - eg 1,000,000.  See below.</td></tr>\n <tr><td>;          </td><td>Separates positive and negative subpatterns.  See below.</td></tr>\n <tr><td>&#x00a4; <smartclient>(\\u00A4)</smartclient><smartgwt>(\\\\u00A4)</smartgwt> </td><td>As a prefix or suffix, indicates the local currency symbol should be used.  Note that you must use special notation to include this character in an XML file (such as a .ds.xml file).  See below.</td></tr>\n <tr><td>'          </td><td>Used to quote special characters in a prefix or suffix, for example, \"'#'#\" formats 123 to \"#123\". To create a single quote itself, use two in a row: \"# o''clock\".</td></tr>\n </table>\n <p>\n All other characters in the format string are taken literally and output unchanged.\n <p>\n <h3>Examples</h3>\n <table style=\"font-size:11px;border:1px solid black;\">\n <tr><td width=\"150\" style=\"color:white;background-color:black;\"><b>Format string</b></td>\n     <td width=\"150\" style=\"color:white;background-color:black;\"><b>Zero value</b></td>\n     <td width=\"150\" style=\"color:white;background-color:black;\"><b>Positive value: 12345.678</b></td>\n     <td width=\"150\" style=\"color:white;background-color:black;\"><b>Negative value: -2345.123</b></td>\n <tr><td>\"0.00\"</td><td>0.00</td><td>12345.68</td><td>-2345.12</td></tr>\n <tr><td>\",##0.00\"</td><td>0.00</td><td>12,345.68</td><td>-2,345.12</td></tr>\n <tr><td>\"0.###\"</td><td>0</td><td>12345.678</td><td>-2345.123</td></tr>\n <tr><td>\"&#x00a4;,0.00\"</td><td>$0.00</td><td>$12,345.68</td><td>-$2345.12</td></tr>\n <tr><td>\"0.0#%\"</td><td>0.0%</td><td>1234567.8%</td><td>-234512.3%</td></tr>\n <tr><td>\"0.0#&#x2030;\"</td><td>0.0&#x2030;</td><td>12345678.0&#x2030;</td><td>-2345123.0&#x2030;</td></tr>\n <tr><td>\"0.0#'%'\"</td><td>0.0%</td><td>12345.68%</td><td>-2345.12%</td></tr>\n <tr><td>\"0.00;(0.00)\"</td><td>0.0%</td><td>12345.68</td><td>(2345.12)</td></tr>\n </table><br>\n Note, the above examples include cases where there are multiple '#' characters in the integer\n part of the number format (ie, to the left of the decimal separator, or the entire format \n if there is no separator).  We support this pattern simply because <code>DecimalFormat</code>\n does: the extra '#' characters are not significant.  In other words, the format \"##0.00\" \n produces exactly the same formatting as \"0.00\", and \"##,###,###.##\" produces exactly the \n same formatting as \",#.##\".  However, multiple '0' characters in the integer part of the \n format <em>are</em> significant, as are both '#' and '0' characters in the decimal part \n of the format (ie, to the right of any decimal separator).\n <p>\n The \";\" character marks the boundary between two subpatterns - the first to be used for \n formatting positive numbers (and 0), the second for negative numbers.  Specifying a separate\n pattern for negative numbers is optional: if no negative subpattern is specified, negative\n numbers are formatted like positive numbers, but with a leading \"-\" sign.\n <p>\n The \"&#x00a4;\" symbol (\\u00A4) is documented in the Java DecimalFormat class as a placeholder for the currency\n symbol appropriate to the current locale.  For client-driven exports, we replace it with\n <smartclient>\n the ${isc.DocUtils.linkForRef('classAttr:NumberUtil.currencySymbol','localized currency symbol')}.\n Likewise, we use ${isc.DocUtils.linkForRef('classAttr:NumberUtil.decimalSymbol','decimalSymbol')} and\n ${isc.DocUtils.linkForRef('classAttr:NumberUtil.groupingSymbol','groupingSymbol')} to localize the formatting of numbers.\n </smartclient>\n <smartgwt>\n whatever GWT's built-in NumberFormat's class uses.  Likewise, the decimal symbol and\n grouping symbol will match what GWT's NumberFormat returns.\n </smartgwt>\n Note that \"\\u00A4\" is the correct way to specify this character in Javascript code.  If you\n need to specify the character in an XML file - the common requirement is in a .ds.xml\n DataSource descriptor file - you must use the code \"&amp;#x00A4;\" instead.\n <p>\n The \"&permil;\" per mille symbol is specified as \"\\u2030\" in Javascript code; in XML or HTML \n you can use either the equivalent notation \"&amp;#x2030;\" or the special HTML code \n \"&amp;permil;\".\n\n <p>\n <h3><code>DecimalFormat</code> features that we do <b>not</b> support:</h3>\n <ul>\n <li>Scientific notation</li>\n <li>Doubled currency symbol means \"use international currency symbol\"</li>\n <li>We do not support arbitrary digit grouping, by providing patterns of the '#' and ','\n characters, like <code>DecimalFormat</code> does.  Grouping in SmartClient FormatStrings\n is enabled with a single \",\" character somewhere before or within the number-formatting\n part of the string - extra \",\" characters within the number-formatting part of the string \n are tolerated, but they have no effect.  Grouping in SmartClient always causes digits to \n be gathered in groups of three</li>\n </ul>",
        name:"FormatString",
        seeAlso:[
            {
                ref:"attr:DataSourceField.format",
                description:null
            },
            {
                ref:"attr:DataSourceField.exportFormat",
                description:null
            }
        ],
        type:"type",
        serverDS:"allowed"
    },
    "class:SimpleTile":{
        methods:[
            "method:SimpleTile.getInnerHTML",
            "method:SimpleTile.getRecord"
        ],
        ref:"class:SimpleTile",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/TileGrid"
        ],
        attrs:[
            "attr:SimpleTile.baseStyle",
            "attr:SimpleTile.creator"
        ],
        description:"Default class used by a ${isc.DocUtils.linkForRef('class:TileGrid')} to render each tile.  See ${isc.DocUtils.linkForRef('attr:TileGrid.tile')}.\n <P>\n SimpleTiles should not be created directly, instead, use a TileGrid and provide data and\n SimpleTile instances are created for you.",
        name:"SimpleTile",
        seeAlso:[
        ],
        type:"class"
    },
    "group:errorIcon":{
        ref:"group:errorIcon",
        refs:[
            "attr:ListGrid.showErrorIcons",
            "attr:ListGrid.errorIconHeight",
            "attr:ListGrid.errorIconWidth",
            "attr:ListGrid.errorIconSrc",
            "attr:FormItem.errorIconHeight",
            "attr:FormItem.errorIconWidth",
            "attr:FormItem.errorIconSrc",
            "attr:FormItem.showErrorIcon"
        ],
        name:"errorIcon",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.chartData":{
        ref:"method:ListGrid.chartData",
        flags:"",
        description:" Chart the data in this listGrid as a multi-series chart.\n <P>\n Each row provides a series of data.  Each series of data is labeled by a value from one\n column, called the <code>labelField</code>.\n <P>\n For example, cell values are sales figures, and fields are \"Product\", \"August\",\n \"September\", \"October\".  In this case each row gives a series: sales figures for each of 3\n months.  The <code>labelField</code> in this case is the \"Product\" field, meaning each row\n represents sales figures for each of 3 months for a particular product.  This dataset\n can be charted via any multi-series chart: stacked or clustered bar or column chart, line\n chart with multiple lines, or area chart (stacked lines).\n <P>\n By default, all visible fields other than the label field are assumed to be labels for\n series values, but an explicit list of fields can be provided as <code>dataFields</code>.\n <P>\n By default, all data is charted if all data is loaded, otherwise, data visible in the\n viewport is charted.  An explicit set of rows can be provided via <code>dataRows</code>.\n\n",
        name:"chartData",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the field",
                optional:false,
                name:"labelField",
                defaultValue:null,
                type:"String"
            },
            {
                description:"optional list of fields to use as labels.  By      default, all fields are used.",
                optional:true,
                name:"dataFields",
                defaultValue:null,
                type:"Array of String"
            },
            {
                description:"set of records to chart.  Can be obtained by eg      ${isc.DocUtils.linkForRef('method:ResultSet.getRange','grid.data.getRange()')}.",
                optional:true,
                name:"dataRows",
                defaultValue:null,
                type:"Array of ListGridRecord"
            },
            {
                description:"properties to pass to the created chart",
                optional:true,
                name:"chartProperties",
                defaultValue:null,
                type:"FacetChart Properties"
            },
            {
                description:"if true, use the labelField as the \"first\" set of labels,      for example, as the bar labels in a stacked bar chart, whereas the second set of labels\n      would appear as the legend.",
                optional:true,
                name:"labelFieldFirst",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"created Chart instance",
            type:"FacetChart"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridCharting')}"
        ],
        definingClass:"class:ListGrid"
    },
    "attr:FormItem.top":{
        ref:"attr:FormItem.top",
        flags:"IRWA",
        getter:[
            "getTop"
        ],
        description:"Top coordinate of this item in pixels.  Applies only when the containing DynamicForm\n sets <code>itemLayout:\"absolute\"</code>.",
        name:"top",
        setter:[
            "setTop"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:DateChooser.showCancelButton":{
        ref:"attr:DateChooser.showCancelButton",
        flags:"IRW",
        description:"Determines whether the \"Cancel\" button will be displayed.",
        name:"showCancelButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "type:ListGridFieldState":{
        ref:"type:ListGridFieldState",
        description:"An object containing the stored presentation information for the fields of a listGrid.\n Information contained in a <code>ListGridFieldState</code> object includes the\n visibility and widths of the listGrid's fields.<br>\n Note that this object is a JavaScript string, and may be stored (for example) as a blob\n on the server for state persistence across sessions.",
        name:"ListGridFieldState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "attr:FacetChart.facets":{
        ref:"attr:FacetChart.facets",
        flags:"IR",
        description:"An Array of facets, exactly analogous to ${isc.DocUtils.linkForRef('attr:CubeGrid.facets')}, except that:\n <ul>\n <li> the \"inlinedValues\" property can be set on a facet to change data representation\n as described under ${isc.DocUtils.linkForRef('attr:Chart.data')}.\n <li> for a non-inlined facet, Charts support auto-derivation of facetValues from the\n data.\n </ul>\n <p>\n In all chart types except \"Scatter\", the chart displays a value for each discrete value\n of one facet (i.e. single-facet charts) or it displays a value for each combination of\n discrete values of two facets (multi-facet charts).  The two discrete facets are the\n ${isc.DocUtils.linkForRef('method:FacetChart.getDataLabelFacet','data label facet')} and the\n ${isc.DocUtils.linkForRef('method:FacetChart.getLegendFacet','legend facet')}.  They are named based on where the\n ${isc.DocUtils.linkForRef('attr:Facet.values','values')} of the facet appear in the chart.  The facet whose values\n are rendered as labels along the data axis or in the main chart area is the data label\n facet, and the facet whose values are rendered in the legend is the legend facet.\n <p>\n For single-facet charts, most chart types have a data label facet as the first facet\n but no legend facet.  Single-facet Pie charts have a legend facet as the first facet\n but no data label facet.  Scatter plots may have a legend facet as the second facet,\n after the metric facet.\n <p>\n In all multi-facet charts, the data label facet is always first and the legend facet\n is second.  In most chart types the data label facet and the legend facet may be\n swapped on the fly by the user clicking on the \"Swap Facets\" item of the context menu.",
        name:"facets",
        seeAlso:[
        ],
        valueType:"Array of Facet or Facet",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "group:sunNotice":{
        ref:"group:sunNotice",
        title:"Sun's java-engine implementation - Notice and Disclaimer",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"The support provided in SmartClient for the use of Java as a server-side scripting language\n is based on Sun's \"java-engine\" implementation.  The license for that software requires \n that we reproduce the copyright notice and disclaimer in our documentation:\n <pre>\n  Copyright (C) 2006 Sun Microsystems, Inc. All rights reserved. \n  Use is subject to license terms.\n \n  Redistribution and use in source and binary forms, with or without modification, are \n  permitted provided that the following conditions are met: Redistributions of source code \n  must retain the above copyright notice, this list of conditions and the following disclaimer.\n  Redistributions in binary form must reproduce the above copyright notice, this list of \n  conditions and the following disclaimer in the documentation and/or other materials \n  provided with the distribution. Neither the name of the Sun Microsystems nor the names of \n  is contributors may be used to endorse or promote products derived from this software \n  without specific prior written permission. \n  \n  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS\n  OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY \n  AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER \n  OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR \n  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR \n  SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON \n  ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE\n  OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n  POSSIBILITY OF SUCH DAMAGE.\n </pre>",
        name:"sunNotice",
        seeAlso:[
        ],
        type:"group"
    },
    "method:List.addList":{
        ref:"method:List.addList",
        flags:"",
        description:" Add a list of items to this array.\n <P>\n Note: you can specify that a subset range be added by passing start and end indices\n\n",
        name:"addList",
        seeAlso:[
        ],
        params:[
            {
                description:"list of items to add",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array"
            },
            {
                description:"optional start index in list",
                optional:true,
                name:"listStartRow",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional end index in list (non-inclusive)",
                optional:true,
                name:"listEndRow",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"list of items that were added",
            type:"list"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "classMethod:Page.isRTL":{
        ref:"classMethod:Page.isRTL",
        flags:"",
        description:"\n Return whether the page text direction is right to left.  If you set \"DIR=RTL\" in the BODY tag of\n the page, then this method will return true.  If you set \"DIR=LTR\" then this method will return\n false.\n\n",
        name:"isRTL",
        seeAlso:[
        ],
        returns:{
            description:"true if Page text direction is RTL, false otherwise",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "RTL"
        ]
    },
    "method:Calendar.showEventDialog":{
        ref:"method:Calendar.showEventDialog",
        flags:"",
        description:" Open the Quick Event dialog showing minimal information about an existing \n ${isc.DocUtils.linkForRef('object:CalendarEvent','event')}.\n <P>\n The ${isc.DocUtils.linkForRef('attr:Calendar.startDateField','startDate')} field on the event is used to calculate the \n display location for the dialog.\n <P>\n If this method is called when the Event Dialog is already showing another event, and if \n changes have been made, a confirmation dialog is displayed and editing of the new event \n is cancelled unless confirmed.\n \n",
        name:"showEventDialog",
        seeAlso:[
        ],
        params:[
            {
                description:"the event to show in the Editor",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:SplitPane.listTitle":{
        ref:"attr:SplitPane.listTitle",
        flags:"IRW",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')}.",
        name:"listTitle",
        setter:[
            "setListTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:Canvas.getFullDataPath":{
        ref:"method:Canvas.getFullDataPath",
        flags:"",
        description:" Returns a fully qualified ${isc.DocUtils.linkForRef('type:DataPath')} for this canvas. This is calculated by combining\n the canvas' specified ${isc.DocUtils.linkForRef('type:DataPath')} with the <code>dataPath</code> of any parent \n canvases up to whichever canvas has a specified ${isc.DocUtils.linkForRef('attr:Canvas.valuesManager')} specified to actually\n manage values from this component.\n",
        name:"getFullDataPath",
        seeAlso:[
        ],
        returns:{
            description:"fully qualified dataPath for this component",
            type:"DataPath"
        },
        type:"method",
        definingClass:"class:Canvas"
    },
    "method:DataSource.processResponse":{
        ref:"method:DataSource.processResponse",
        flags:"A",
        description:" Process a dsResponse for a request initiated by a DataSource with\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','dataProtocol:\"clientCustom\"')}.\n <code>requestId</code> parameter should be dsRequest.requestId as found on the dsRequest\n passed to ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}.\n <P>\n You must provide a response for both error and non-error cases.  For an error case, a\n sufficient response is:\n <pre>\n { status : -1 }\n </pre>\n",
        name:"processResponse",
        seeAlso:[
        ],
        params:[
            {
                description:"requestId attribute from the associated dataSource request object",
                optional:false,
                name:"requestId",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Configuration for the dsResponse",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:Mail.encoding":{
        ref:"attr:Mail.encoding",
        flags:"IR",
        description:"Used to override the character encoding we apply to the email body.  If you do not set \n this property, it is derived from the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} setting \n <code>mail.system.default.encoding</code>, which is set to \"UTF-8\" by default.  This\n setting should be appropriate for most use cases.",
        name:"encoding",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "attr:Canvas.keepInParentRect":{
        ref:"attr:Canvas.keepInParentRect",
        flags:"IRWA",
        description:"Constrains drag-resizing and drag-repositioning of this canvas to either the rect of its\n parent (if set to true) or an arbitrary rect based its parent (if set to a\n [Left,Top,Width,Height] rect array).  In the latter mode you may use negative offsets\n for left/top and a width/height greater than the visible or scroll width of the parent\n to allow positioning beyond the confines of the parent.\n <p>\n If this canvas has no parent, constrains dragging to within the browser window.\n <p>\n Affects target and outline dragAppearance, not tracker.\n <p>\n Note: keepInParentRect affects only user drag interactions, not programmatic moves.\n <p>\n <u>Example use cases:</u><br>\n <code>keepInParentRect: true</code> - confine to parent<br>\n <code>keepInParentRect: [0, 0, 500, 500]</code> - confine to top left 500x500 region within parent<br>\n <code>keepInParentRect: [0, 0, 10000, 10000]</code> - in combination with\n overflow: \"auto\", confine to parent, but allow moving off the right and bottom of the\n parent to force scrolling (and hence enlarge the scrollWidth of the parent).",
        name:"keepInParentRect",
        seeAlso:[
        ],
        valueType:"Boolean | Array of Integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragCreate')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:SplitPane.setLeftButtonTitle":{
        ref:"method:SplitPane.setLeftButtonTitle",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButtonTitle','leftButtonTitle')} of the\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')}.\n\n",
        name:"setLeftButtonTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title for the left button.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "classMethod:isA.RegularExpression":{
        ref:"classMethod:isA.RegularExpression",
        flags:"",
        description:"\n\tIs <code>object</code> a Regular Expression (RegExp) object?\n\n",
        name:"RegularExpression",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a Boolean",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "method:DataBoundComponent.disableHiliting":{
        ref:"method:DataBoundComponent.disableHiliting",
        flags:"",
        description:" Disable all hilites.\n\n",
        name:"disableHiliting",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:Tab.canReorder":{
        ref:"attr:Tab.canReorder",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.canReorderTabs')} is set to <code>true</code>, setting <code>canReorder</code>\n explicitly to <code>false</code> for some tab will disallow drag-reordering of\n this tab. Has no effect if <code>canReorderTabs</code> is not true at the tabSet level.\n <P>\n Note that this setting also disallows a reorder of another tab into the slot before\n or following this tab. This means for tabs located at the beginning or end of the \n tab-bar, users cannot changing the index of the tab by dropping another\n before or after it. However if you have a <i><code>canReorder:false</code></i>\n tab which is not at the beginning or end of the tab bar, users can\n drag reorder other tabs around it which may ultimately change its position.",
        name:"canReorder",
        seeAlso:[
            {
                ref:"attr:TabSet.canReorderTabs",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "attr:FacetValue.align":{
        ref:"attr:FacetValue.align",
        flags:"IR",
        description:"Default alignment for facet label title and cells for this facetValue.\n Can be overridden by setting titleAlign or cellAlign on the facetValue.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')} (see, for\n example, ${isc.DocUtils.linkForRef('attr:CubeGrid.facetValueAlign')}).",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:RestDataSource.addDataURL":{
        ref:"attr:RestDataSource.addDataURL",
        flags:"IR",
        description:"Custom dataURL for add type operations",
        name:"addDataURL",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "classMethod:Timer.setTimeout":{
        ref:"classMethod:Timer.setTimeout",
        flags:"",
        description:"    \n Execute an action in a given amount of time.  This method wraps the native setTimeout() method,\n correcting for browser-specific memory leaks.\n\n",
        name:"setTimeout",
        seeAlso:[
            {
                ref:"classMethod:Timer.clear",
                description:null
            }
        ],
        params:[
            {
                description:"Function to be called when delay has elapsed. \n\t\t\t\t     Can also be a string representation of an expression.\n\t    \t\t\t Passing a string is preferred.",
                optional:false,
                name:"action",
                defaultValue:null,
                type:"string expression or function"
            },
            {
                description:"Time until action is executed (in milliseconds). If not specified, the                       default is 100 milliseconds.",
                optional:false,
                name:"delay",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Reference to the timerEvent created. Note that this reference is provided \t\t\t\t\t\t\t only so that it can be used as an argument for Timer.clear().",
            type:"timerEvent"
        },
        type:"classMethod",
        definingClass:"class:Timer"
    },
    "method:Class.echo":{
        ref:"method:Class.echo",
        flags:"",
        description:" Return a short string representation of any object, suitable for viewing by a developer for\n debugging purposes.\n <P>\n If passed an object containing other objects, echo will not recurse into subobjects,\n summarizing them instead via echoLeaf().\n <P>\n NOTE: echo() is used to generate the output shown in the Log window when evaluating an\n expression.\n <P>\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echo()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n \n",
        name:"echo",
        seeAlso:[
            {
                ref:"classMethod:Log.echoAll",
                description:null
            },
            {
                ref:"classMethod:Log.echoLeaf",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "method:ListGrid.getCriteria":{
        ref:"method:ListGrid.getCriteria",
        flags:"",
        description:" Retrieves a copy of the current criteria for this component (may be null).\n <P>\n Note: if ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is true, the criteria returned by this method may not\n match the values currently displayed in the filter editor, since the user may have entered\n values which have not yet been applied to our data. ${isc.DocUtils.linkForRef('method:ListGrid.getFilterEditorCriteria')}\n may be used to retrieve the current criteria displayed in the filterEditor.\n",
        name:"getCriteria",
        seeAlso:[
        ],
        returns:{
            description:"current filter criteria",
            type:"Criteria"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:StretchImgButton.getTitle":{
        ref:"method:StretchImgButton.getTitle",
        flags:"A",
        description:" Return the title - HTML drawn inside the component.\n <p>\n Default is to simply return this.title.\n",
        name:"getTitle",
        seeAlso:[
        ],
        returns:{
            description:"HTML for the title.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "attr:ToolStripSeparator.hSrc":{
        ref:"attr:ToolStripSeparator.hSrc",
        flags:"IR",
        description:"Image for horizontally oriented separator (for vertical toolstrips).",
        name:"hSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]hseparator.png\"",
        type:"attr",
        definingClass:"class:ToolStripSeparator"
    },
    "method:DynamicForm.getErrors":{
        ref:"method:DynamicForm.getErrors",
        flags:"",
        description:" Returns the current set of validation errors for this form.\n",
        name:"getErrors",
        seeAlso:[
        ],
        returns:{
            description:"Errors are returned as an object of the format<br> <code>{fieldName:errors, fieldName:errors}</code><br>\n where each <code>errors</code> object will be either an error message string or an array\n of error message strings.",
            type:"object"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "method:DynamicForm.getSaveOperationType":{
        ref:"method:DynamicForm.getSaveOperationType",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('type:DSOperationType')} to be performed when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is\n called. Valid options are <code>\"add\"</code> or <code>\"update\"</code>.\n <P>\n If a ${isc.DocUtils.linkForRef('class:DSRequest')} configuration object is passed in containing an explicit operationType\n this will be returned. Otherwise ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOperationType')} will be returned.\n This attribute is automatically set via calls to data binding methods such as\n ${isc.DocUtils.linkForRef('method:DynamicForm.editNewRecord')}, or it may be set explicitly.\n <P>\n If no explicit saveOperationType is specified for this form, the system will \n look at the current values for the form. If the form has no value for\n the ${isc.DocUtils.linkForRef('method:DataSource.getPrimaryKeyField','primaryKey field')}, or that field is\n editable and has been modified we assume an add operation, otherwise an update.\n If the form is a member of a ${isc.DocUtils.linkForRef('class:ValuesManager')}, the primary key field value\n will be derived from the valuesManager's values object.\n\n",
        name:"getSaveOperationType",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional DSRequest config block for the  save operation",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"Operation type for the save request.",
            type:"DSOperationType"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:StretchImgButton.capSize":{
        ref:"attr:StretchImgButton.capSize",
        flags:"IRW",
        description:"How big are the end pieces by default",
        name:"capSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"12",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "appearance"
        ]
    },
    "attr:TabSet.titleEditorTopOffset":{
        ref:"attr:TabSet.titleEditorTopOffset",
        flags:"IRW",
        description:"If set, offsets the tab title editor further down from the top edge of the tab, by the\n number of pixels set in this property.  You can use this property, together with the \n left and right offset properties, to fine tune positioning of the editor within or \n around the tab button.<p>\n <b>Note:</b> The height of the editor is an attribute of the editor itself, and can be\n set by specifying a \"height\" property in ${isc.DocUtils.linkForRef('attr:TabSet.titleEditor','titleEditorDefaults')}.",
        name:"titleEditorTopOffset",
        seeAlso:[
            {
                ref:"attr:TabSet.titleEditorLeftOffset",
                description:null
            },
            {
                ref:"attr:TabSet.titleEditorRightOffset",
                description:null
            }
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:RelativeDateItem.baseDate":{
        ref:"attr:RelativeDateItem.baseDate",
        flags:"IR",
        description:"Base date for calculating the relative date entered by the user.\n <P>\n The default is to use the current date.",
        name:"baseDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:ListGrid.initialCriteria":{
        ref:"attr:ListGrid.initialCriteria",
        flags:"IR",
        description:"Criteria to be used when ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchData')} is set.",
        name:"initialCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Label.showSelectedIcon":{
        ref:"attr:Label.showSelectedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n becomes selected.",
        name:"showSelectedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:MetricSettings.valueAxisLabelProperties":{
        ref:"attr:MetricSettings.valueAxisLabelProperties",
        flags:"IR",
        description:"Properties for labels of value axis.",
        name:"valueAxisLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:DrawOval.setRadii":{
        ref:"method:DrawOval.setRadii",
        flags:"",
        description:" Resize the drawOval by setting its horizontal and vertical radius, and retaining its current\n center point.\n",
        name:"setRadii",
        seeAlso:[
            {
                ref:"method:DrawOval.getRadiusX",
                description:null
            },
            {
                ref:"method:DrawOval.getRadiusY",
                description:null
            }
        ],
        params:[
            {
                description:"new horizontal radius",
                optional:false,
                name:"rx",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new vertical radius",
                optional:false,
                name:"ry",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:DSRequest.exportImageQuality":{
        ref:"attr:DSRequest.exportImageQuality",
        flags:"IR",
        description:"If exporting in ${isc.DocUtils.linkForRef('type:ExportImageFormat','JPEG format')}, the output JPEG quality level.\n This is a number from 0 to 1, with 1 representing the best quality and 0 representing the\n least quality but smallest file size.",
        name:"exportImageQuality",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "classAttr:Date.shortDayNames":{
        ref:"classAttr:Date.shortDayNames",
        flags:"IRWA",
        description:"This property may be set to an array of names of days of the week. <br>\n For example:\n <pre>\n [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"]\n </pre>\n The appropriate day name will then be returned from ${isc.DocUtils.linkForRef('method:Date.getShortDayName')}, and may\n be used whenever SmartClient components display day-names (for example in the\n ${isc.DocUtils.linkForRef('class:DateItem','DateItem class')}).<br>\n Note: For US based applications the first item in the array should be the name for Sunday,\n then Monday, Tuesday, etc. For browsers with different locales this may vary.\n To determine the first day for some locale, you can run the following code:\n <pre>\n    alert(new Date(2000, 0, 2).getDay());\n </pre>\n You should see an alert with a number between zero and 6. This represents the numerical\n 'day' value for Sunday for your browser's locale, since Jan 2nd 2000 was a Sunday.\n Therefore if this code alerted the number 6, Sunday should appear last in your list\n of day-names, and Monday first.",
        name:"shortDayNames",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:Date",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MultiSortPanel.invalidListPrompt":{
        ref:"attr:MultiSortPanel.invalidListPrompt",
        flags:"IR",
        description:"This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed.\n <P>\n Default value returns <P>\n <code>\n <i>Columns may only be used once: <code>[some field's title]</code> is used multiple times</i>\n </code>",
        name:"invalidListPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Columns may only be used once: '${title}' is used multiple times.\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:RPCManager.requestsArePending":{
        ref:"classMethod:RPCManager.requestsArePending",
        flags:"",
        description:" Returns whether there are any pending RPC requests.\n <P>\n",
        name:"requestsArePending",
        seeAlso:[
        ],
        returns:{
            description:"true if one or more RPC requests are pending, false otherwise.",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "classAttr:GroupingMessages.weekNumberTitle":{
        ref:"classAttr:GroupingMessages.weekNumberTitle",
        flags:"IRW",
        description:"Title to use for the week number grouping mode",
        name:"weekNumberTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Week #\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.headerStyle":{
        ref:"attr:Window.headerStyle",
        flags:"IRWA",
        description:"Style for the Window header.",
        name:"headerStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"WindowHeader\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "attr:DataSourceField.creatorOverrides":{
        ref:"attr:DataSourceField.creatorOverrides",
        flags:"IR",
        description:"Indicates that normal declarative security rules specified on this field are waived for \n rows that were created by the current user, as described in the discussion of \n ${isc.DocUtils.linkForRef('attr:DataSource.creatorOverrides','dataSource.creatorOverrides')}.  This setting overrides \n <code>dataSource.creatorOverrides</code>, for this field only.\n <p>\n Note that field-level <code>creatorOverrides</code> is conceptually slightly different to\n the setting at DataSource and OperationBinding levels.  To give the example of a fetch \n operation, at the other two levels, it results in a limited set of rows being returned, \n rather than a security exception being thrown.  At the field-level, it results in values \n for individual fields being present in those rows, rather than them being stripped out on\n the server.",
        name:"creatorOverrides",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequires",
                description:null
            },
            {
                ref:"attr:DataSourceField.viewRequires",
                description:null
            },
            {
                ref:"attr:DataSource.creatorOverrides",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:RadioGroupItem.disabledValues":{
        ref:"attr:RadioGroupItem.disabledValues",
        flags:"I",
        description:"This property allows you to specify an initial set of disabled options within\n this radioGroup. Once the RadioGroupItem has been created ${isc.DocUtils.linkForRef('method:RadioGroupItem.setValueDisabled')}\n should be used to enable and disable options.",
        name:"disabledValues",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RadioGroupItem"
    },
    "method:PortalLayout.setColumnBorder":{
        ref:"method:PortalLayout.setColumnBorder",
        flags:"",
        description:" Sets the columnBorder for to the specified value and updates any drawn columns to reflect\n this.\n",
        name:"setColumnBorder",
        seeAlso:[
        ],
        params:[
            {
                description:"New border to show around columns",
                optional:false,
                name:"columnBorder",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:SimpleTile.getRecord":{
        ref:"method:SimpleTile.getRecord",
        flags:"",
        description:" Return the record that this tile should render.\n <P>\n NOTE: a TileGrid that is doing data paging may reuse tiles with different records, so a\n subclass of SimpleTile should not cache the record returned by getRecord().\n <P>\n",
        name:"getRecord",
        seeAlso:[
        ],
        returns:{
            description:"the TileRecord associated with this tile",
            type:"TileRecord"
        },
        type:"method",
        definingClass:"class:SimpleTile"
    },
    "method:List.containsAll":{
        ref:"method:List.containsAll",
        flags:"",
        description:" Return whether this list contains all the item in the specified list.\n\n",
        name:"containsAll",
        seeAlso:[
        ],
        params:[
            {
                description:"items to look for",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"List"
            }
        ],
        returns:{
            description:"whether all items were found",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "attr:UserTask.inlineView":{
        ref:"attr:UserTask.inlineView",
        flags:"IRW",
        description:"An inline definition of the form. Could be used to encode form directly in process xml.",
        name:"inlineView",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "method:DataSource.validateData":{
        ref:"method:DataSource.validateData",
        flags:"",
        description:" Contacts the server to run server-side validation on a DSRequest and either returns\n ${isc.DocUtils.linkForRef('attr:DSResponse.errors')} validation errors or a ${isc.DocUtils.linkForRef('attr:DSResponse.status')} code of 0.\n <p>\n A \"validate\" dsRequest is effectively always ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')}:true.\n It is a normal condition for a \"validate\" DSResponse to have validation errors and\n the response will never go to system-wide handling for unexpected errors\n (${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')}).\n\n",
        name:"validateData",
        seeAlso:[
        ],
        params:[
            {
                description:"record values to validate",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                   the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "attr:ListGridField.editorValueIconHeight":{
        ref:"attr:ListGridField.editorValueIconHeight",
        flags:"IRW",
        description:"When some cell in this field is being edited, setting this property will specify the\n height for value icons in the cell's editor. If unset, the editor's valueIcon width and\n height will be determined in the same way as it would be for a static cell.",
        name:"editorValueIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:Operator.titleProperty":{
        ref:"attr:Operator.titleProperty",
        flags:"IR",
        description:"Name of a property on the ${isc.DocUtils.linkForRef('class:Operators')} class that provides the title for this operator.",
        name:"titleProperty",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:CubeGrid.cellAlign":{
        ref:"attr:CubeGrid.cellAlign",
        flags:"IRW",
        description:"Default align for cell values (in body).",
        name:"cellAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:DataBoundComponent.dataField":{
        ref:"attr:DataBoundComponent.dataField",
        flags:"IR",
        description:"Name of the field that has the most pertinent numeric, date, or enum value, for use when a\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} needs to show a short summary of a record.\n <P>\n This attribute has the same function as ${isc.DocUtils.linkForRef('attr:DataSource.dataField')} but can be\n set for a component with no dataSource, or can be used to override the dataSource setting.",
        name:"dataField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:DataSource.requiresRole":{
        ref:"attr:DataSource.requiresRole",
        flags:"IR",
        description:"Similar to ${isc.DocUtils.linkForRef('attr:OperationBinding.requiresRole')}, but controls access to the DataSource as a\n whole.",
        name:"requiresRole",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "auth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:Tree.getFolders":{
        ref:"method:Tree.getFolders",
        flags:"",
        description:"\n Returns all the first-level folders of a node.\n <br><br>\n For load on demand trees (those that only have a partial representation client-side), this\n method will return only nodes that have already been loaded from the server.\n\n",
        name:"getFolders",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"List of immediate children that are folders",
            type:"List"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:StatefulCanvas.showRTLIcon":{
        ref:"attr:StatefulCanvas.showRTLIcon",
        flags:"IR",
        description:"Is ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','RTL')} media available for the icon? If true, then in RTL mode, the\n image's src will have \"_rtl\" inserted immediately before the file extension. For example,\n if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.icon','icon')} is \"myIcon.png\" and showRTLIcon is true, then in RTL mode, the image's\n src will be set to \"myIcon_rtl.png\".",
        name:"showRTLIcon",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "RTL"
        ]
    },
    "attr:SectionItem.canTabToHeader":{
        ref:"attr:SectionItem.canTabToHeader",
        flags:"IR",
        description:"If true, the header for this Section will be included in the page's tab\n order for accessibility.\n May also be set at the ${isc.DocUtils.linkForRef('class:DynamicForm')} level via \n ${isc.DocUtils.linkForRef('attr:DynamicForm.canTabToSectionHeaders')}.\n <P>\n See ${isc.DocUtils.linkForRef('group:accessibility')}.",
        name:"canTabToHeader",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SectionItem"
    },
    "attr:PickList.pickListApplyRowNumberStyle":{
        ref:"attr:PickList.pickListApplyRowNumberStyle",
        flags:"IRWA",
        description:"Default value for ${isc.DocUtils.linkForRef('attr:ListGrid.applyRowNumberStyle')} for this item's generated\n pickList.",
        name:"pickListApplyRowNumberStyle",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "classMethod:isc.showLoginDialog":{
        ref:"classMethod:isc.showLoginDialog",
        flags:"",
        description:" Handle a complete login interaction with a typical login dialog asking for username and\n password credentials using the ${isc.DocUtils.linkForRef('class:LoginDialog')} class.\n <P>\n As with other convenience methods that show Dialogs, such as ${isc.DocUtils.linkForRef('classMethod:isc.warn')},\n the dialog is shown and the function immediately returns.  When the user responds, the\n provided callback function is called.\n <P>\n If the user clicks the \"Log in\" button, the credentials entered by the user are passed to\n the provided \"loginFunc\" as an Object with properties \"username\" and \"password\" (NOTE: both\n property names are all lowercase), as the variable \"credentials\".  For example:\n <pre>{ username: \"barney\", password: \"rUbbL3\" }</pre>\n <P>\n The \"loginFunc\" should then attempt to log in by whatever means is necessary.  The second\n parameter to the loginFunc, \"dialogCallback\", is a function, which must be called <i>whether\n login succeeds or fails</i> with a true/false value indicating whether login succeeded.\n <P>\n If the login dialog is dismissable (settable as properties.dismissable, default false) and\n the user dismisses it, the loginFunc will be fired with null for the credentials.\n <P>\n The following code shows typical usage.  This code assumes you have created a global\n function sendCredentials() that send credentials to some authentication system and fires a\n callback function with the result:\n <pre>\n isc.showLoginDialog(function (credentials, dialogCallback) {\n     if (credentials == null) return; // dismissed\n\n     // send credentials\n     sendCredentials(credentials, function (loginSucceeded) {\n         // report success or failure\n         dialogCallback(loginSucceeded);\n     })\n })\n </pre>\n The login dialog has several built-in behaviors:\n <ul>\n <li> keyboard focus is automatically placed in the username field\n <li> hitting enter in the username field proceeds to the password field\n <li> hitting enter in the password field submits (fires the provided callback)\n </ul>\n In addition to normal properties supported by Dialog/Window, the following special\n properties can be passed:\n <ul>\n <li><code>username</code>: initial value for the username field\n <li><code>password</code>: initial value for the password field\n <li><code>usernameTitle</code>: title for the username field\n <li><code>passwordTitle</code>: title for the password field\n <li><code>errorMessage</code>: default error message on login failure\n <li><code>loginButtonTitle</code>: title for the login button\n <li><code>dismissable</code>: whether the dialog can be dismissed, default false\n <li><code>errorStyle</code>: CSS style for the error message, if shown\n </ul>\n See below for links to the default values for these properties.\n\n",
        name:"showLoginDialog",
        seeAlso:[
            {
                ref:"classAttr:LoginDialog.LOGIN_TITLE",
                description:null
            },
            {
                ref:"classAttr:LoginDialog.USERNAME_TITLE",
                description:null
            },
            {
                ref:"classAttr:LoginDialog.PASSWORD_TITLE",
                description:null
            },
            {
                ref:"classAttr:LoginDialog.LOGIN_BUTTON_TITLE",
                description:null
            },
            {
                ref:"classAttr:LoginDialog.LOGIN_ERROR_MESSAGE",
                description:null
            }
        ],
        params:[
            {
                description:"Function to call to attempt login.  Receives parameters                                      \"credentials\" and \"dialogCallback\", described above",
                optional:false,
                name:"loginFunc",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties for the Dialog",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"LoginDialog Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "method:Array.min":{
        ref:"method:Array.min",
        flags:"",
        description:"          \n \t\t\tReturns the smallest number in the array, skipping non-numeric values.\n\n\t\t\tIf the start and/or end are given, searches the specified subset of the list.\n\n",
        name:"min",
        seeAlso:[
        ],
        params:[
            {
                description:"optional start index (default is 0)",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional end index (default is list.length)",
                optional:true,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"minimum of all items in the list, or null if all values are non-numeric",
            type:"number"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "arrayMath"
        ]
    },
    "attr:Canvas.momentumScrollMinSpeed":{
        ref:"attr:Canvas.momentumScrollMinSpeed",
        flags:"IRWA",
        description:"The minimum speed in pixels per second that must be reached for momentum scrolling to kick in.\n This setting only applies to touch-enabled devices.",
        name:"momentumScrollMinSpeed",
        seeAlso:[
        ],
        valueType:"double",
        defaultValue:"200",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:ListGrid.expansionFieldImageHeight":{
        ref:"attr:ListGrid.expansionFieldImageHeight",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is set to <code>true</code>, this property\n may be set to govern the height of the expansion image displayed to indicate whether a\n row is expanded. If unset, the expansionField image will be sized to match the\n ${isc.DocUtils.linkForRef('attr:ListGrid.booleanImageHeight')} for this grid.",
        name:"expansionFieldImageHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:FormItem.endRow":{
        ref:"attr:FormItem.endRow",
        flags:"IRW",
        description:"Whether this item should end the row it's in in the form layout",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formLayout"
        ]
    },
    "method:Button.action":{
        ref:"method:Button.action",
        flags:"",
        description:" This property contains the default 'action' for the Button to fire when activated.\n",
        name:"action",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button"
    },
    "group:serverDataIntegration":{
        ref:"group:serverDataIntegration",
        title:"Server DataSource Integration",
        treeLocation:[
            "Concepts/Client-Server Integration",
            "Java Server Reference"
        ],
        refs:[
            "attr:DataSource.dataFormat",
            "attr:DataSource.dataProtocol",
            "attr:DataSource.requestProperties",
            "attr:DataSource.serverType",
            "attr:DataSource.tableName",
            "attr:DataSource.quoteTableName",
            "attr:DataSource.dbName",
            "attr:DataSource.configBean",
            "attr:DataSource.defaultTextMatchStyle",
            "attr:DataSource.useAnsiJoins",
            "attr:DataSource.audit",
            "attr:DataSource.serverObject",
            "attr:OperationBinding.requestProperties",
            "attr:RestDataSource.dataProtocol",
            "type:DSDataFormat",
            "type:DSServerType"
        ],
        description:"Server Data Integration means:\n <ul>\n <li> You ${isc.DocUtils.linkForRef('group:iscInstall','install')} the \n      ${isc.DocUtils.linkForRef('group:iscServer','SmartClient Java Server Framework')} into any J2SE/J2EE\n      environment, including any existing web application\n <li> You ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','create DataSources')} via an XML declaration,\n possibly on-the-fly from ${isc.DocUtils.linkForRef('group:metadataImport','existing metadata')}.  \n <li> Server communication for components bound to these DataSources is handled\n automatically with a highly efficient, compressed protocol.  You work with clean Java APIs\n instead of dealing with the details of XML or JSON over HTTP.\n <li> You can use built-in connectors for SQL, Hibernate and other common data providers\n without writing any code, or you can easily build your own connectors in Java.\n <li> Whether using the built-in connectors or custom connectors, declarations in your\n DataSource control a large set of server features that can make common types of business\n logic entirely declarative\n </ul>\n This approach is in contrast to \n ${isc.DocUtils.linkForRef('group:clientDataIntegration','Client-side Data Integration')} in which client-side\n DataSources are configured to send and receive HTTP messages containing XML, JSON\n or other content.\n <P>\n <B>Server-side Request Processing</B>\n <P>\n Client-side ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')} will send\n ${isc.DocUtils.linkForRef('class:DSRequest','DSRequests')} to the SmartClient Server as background communications transparent\n to the user.  Integrating SmartClient's DataSource layer with your data model is a matter of\n handling these DSRequests and sending back DSResponses, in order to fulfill the 4 basic\n operations of the ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource Protocol')}.\n <P>\n Out of the box, SmartClient is set up to route all DSRequests through a special servlet\n called <code>IDACall</code>.  Requests that go through <code>IDACall</code> have the \n following lifecycle:\n <ul>\n <li>The overall HTTP request is received by the IDACall servlet.  SmartClient supports \n queuing of transactions, so each HTTP request might contain multiple DSRequests.</li>\n <li>IDACall sets up an instance of <code>RPCManager</code> to manage the processing of\n the entire queue of transactions.  For every DSRequest in the queue, this RPCManager:</li>\n   <ul>\n   <li>Validates the DSRequest</li>\n   <li>Sends the DSRequest through ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} - in other words, your code - if this is \n       configured in the DataSource.  As described later in this section, your code can\n       perform some custom logic here: either completely fulfilling the request, or\n       alternatively modifying the request and causing the default\n       processing of the request to continue</li>\n   <li>Calls the DataSource's <code>execute</code> method to obtain a DSResponse.</li>\n   </ul>\n <li>Having processed all requests, the RPCManager now serializes all the DSResponses \n and sends them back to the browser as a single HTTP response</li>\n </ul>\n <p>\n This basic request handling flow can be customized at a number of points:\n <ul>\n <li>If you need an overarching authentication service, this is best implemented using \n <a href=http://java.sun.com/products/servlet/Filters.html>servlet Filters</a> to intercept\n unauthenticated requests before they reach the <code>IDACall</code> servlet</li>\n <li>If you are not using one of the built-in persistence mechanisms (SQL and Hibernate), \n hook into the <code>IDACall</code> flow by \n ${isc.DocUtils.linkForRef('group:writeCustomDataSource','writing a custom DataSource')}.  This approach lets you write and \n maintain the minimal amount of custom code, while taking full advantage of\n DataSource-agnostic features of the SmartClient Server, like validation, queuing,\n transaction chaining, support for Velocity templating, and so on.</li>\n <li>Custom validation can be added by writing a custom DataSource (extending SQLDataSource\n or HibernateDataSource if appropriate) and overriding its <code>validate()</code> method, \n as described ${isc.DocUtils.linkForRef('attr:DataSource.serverConstructor','here')}.</li>\n <li>General custom business logic can be added in a number of ways, both declaratively and\n programmatically:</li>\n <ul>\n   <li>The &lt;criteria&gt; and &lt;values&gt; properties of an ${isc.DocUtils.linkForRef('class:OperationBinding')} \n       allow you to dynamically set data values at transaction-processing time, using \n       built-in ${isc.DocUtils.linkForRef('group:velocitySupport','Velocity support')}</li>\n   <li>Override the <code>execute()</code> method of the DataSource to add extra processing\n       before and/or after the SmartClient processing</li>\n   <li>Use ${isc.DocUtils.linkForRef('attr:DSRequestModifier.value','Transaction Chaining')} to dynamically set data values \n       according to the results of earlier transactions\n   <li>For SQL DataSources, use ${isc.DocUtils.linkForRef('group:customQuerying','SQL Templating')} to change, add \n       to or even completely replace the SQL sent to the database, including calling\n       stored procedures</li>\n   <li>Use ${isc.DocUtils.linkForRef('group:dmiOverview','Direct Method Invocation')} to call directly into your own Java \n       classes.  DMIs allow you to modify the <code>DSRequest</code> before it executes,\n       modify the <code>DSResponse</code> before it returns, or take unrelated actions.  They\n       can be used to add business logic to a persistence operation without destroying\n       the default behavior</li> \n   <li>Use ${isc.DocUtils.linkForRef('attr:OperationBinding.script','DMI Scripts')} to add small amounts of business logic \n       right in the &lt;operationBinding&gt; tag.  DMI scripts allow you to add business\n       logic just like normal DMIs, but don't require the logic to be in a separate .java\n       file.</li>\n </ul><br>\n <li>If you need to use a Front Controller servlet for some other reason than authentication -\n for example, you are using Spring, Struts, or some other similar system which requires that \n all requests go through some particular servlet - just call \n <code>RPCManager.processRequest()</code> within your Spring Controller, Struts Action, or \n whatever the equivalent is in the framework in use.\n <p>\n However, note carefully that taking this approach is often a sign that the SmartClient \n architecture has not been correctly understood.  SmartClient is architected for \n <em>client-server</em> data communication, as opposed to early web MVC frameworks which \n do everything on the server.  In particular, it is absolutely incorrect to represent every \n individual DataSource operation - or even every DataSource - as a separate Struts Action \n or Spring Controller, because this implies different URLs for different operations.  All \n DataSource operations should go through a single URL in order to allow \n ${isc.DocUtils.linkForRef('class:RPCManager','transaction queuing')} - see these \n ${isc.DocUtils.linkForExampleId('transactionsFolder', 'Queuing examples')}.</li>\n </ul>\n <P>\n For more information on the DMI subsystem, see the ${isc.DocUtils.linkForRef('group:dmiOverview','DMI overview')},\n ${isc.DocUtils.linkForRef('class:DMI','DMI class')} and the \n ${isc.DocUtils.linkForExampleId('DMI', 'DMI example')} in the Feature Explorer.\n <P>\n Note that, as you continue to integrate your prototype with your backend, you can use a\n mixture of DataSources that have been fully integrated with your backend and DataSources\n that are running in \"client-only\" mode (see ${isc.DocUtils.linkForRef('group:clientOnlyDataSources')}).\n <P>\n <b>Important methods for handling DataSource requests</b>\n <P>\n The basic flow of logic for handling DataSource requests is:\n <P>\n <table class=\"normal\" border=1 width=\"700\">\n <tr>\n <td>1. Determine operation type (Fetch, Add, Update, Remove) for a single request.  Not \n necessary if you follow the recommendations for \n ${isc.DocUtils.linkForRef('group:writeCustomDataSource','writing a custom DataSource')} and provide your \n implementation via <code>executeFetch(), executeAdd()</code>, et al.</td>\n <td>dsRequest.getOperationType()</td>\n </tr>\n\n <tr>\n <td>2. Get inbound values (Add, Update) and/or criteria (Fetch, Update, Remove) for this\n request.</td>\n <td>dsRequest.getFieldValue()<br>\n dsRequest.getValues()<br> \n dsRequest.getCriteria()</td>\n </tr>\n\n <tr>\n <td>3. Business logic, validation, calls to data and service tiers... anything you can code.\n </td>\n <td><b>execute custom logic</b></td>\n </tr>\n\n <tr>\n <td>4. Set status and data for the response.</td>\n <td>dsResponse.setStatus()<br>\n dsResponse.setData()</td>\n </tr>\n </table>\n <P>\n For more information, see the ${isc.DocUtils.linkForRef('class:RPCManager','RPCManager documentation')}, and the \n ${isc.DocUtils.linkForExampleId('ormDataSource', 'Custom ORM DataSource example')}.",
        name:"serverDataIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Window.resizer":{
        ref:"attr:Window.resizer",
        flags:"R",
        description:"ImgButton-based resizer, shown in the footer.",
        name:"resizer",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "method:Img.setImageType":{
        ref:"method:Img.setImageType",
        flags:"",
        description:" Change the style of image rendering.\n\n",
        name:"setImageType",
        seeAlso:[
        ],
        params:[
            {
                description:"new style of image rendering",
                optional:false,
                name:"imageType",
                defaultValue:null,
                type:"ImageStyle"
            }
        ],
        type:"method",
        definingClass:"class:Img"
    },
    "attr:ListGrid.chartConstructor":{
        ref:"attr:ListGrid.chartConstructor",
        flags:"IR",
        description:"Name of the SmartClient Class to be used when creating charts.  Must support the\n ${isc.DocUtils.linkForRef('interface:Chart')} interface.",
        name:"chartConstructor",
        seeAlso:[
        ],
        valueType:"Classname",
        defaultValue:"\"FacetChart\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:DrawLine":{
        methods:[
            "method:DrawLine.setStartPoint",
            "method:DrawLine.setEndPoint",
            "method:DrawLine.getBoundingBox",
            "method:DrawLine.getCenter",
            "method:DrawLine.isPointInPath",
            "method:DrawLine.moveBy",
            "method:DrawLine.moveTo"
        ],
        ref:"class:DrawLine",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawLine.knobs",
            "attr:DrawLine.startPoint",
            "attr:DrawLine.endPoint",
            "attr:DrawLine.startLeft",
            "attr:DrawLine.startTop",
            "attr:DrawLine.endLeft",
            "attr:DrawLine.endTop"
        ],
        description:"DrawItem subclass to render line segments.",
        name:"DrawLine",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "attr:MetricSettings.axisStartValue":{
        ref:"attr:MetricSettings.axisStartValue",
        flags:"IR",
        description:"Same as ${isc.DocUtils.linkForRef('attr:FacetChart.axisStartValue')} but affects only one metric.",
        name:"axisStartValue",
        seeAlso:[
        ],
        valueType:"Float",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:HeaderItem.defaultValue":{
        ref:"attr:HeaderItem.defaultValue",
        flags:"IRW",
        description:"Header text",
        name:"defaultValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Header\"",
        type:"attr",
        definingClass:"class:HeaderItem",
        groups:[
            "appearance"
        ]
    },
    "attr:SectionHeader.baseStyle":{
        ref:"attr:SectionHeader.baseStyle",
        flags:"IRA",
        description:"CSS class for the section header.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"sectionHeader\"",
        type:"attr",
        definingClass:"class:SectionHeader"
    },
    "method:Portlet.closeClick":{
        ref:"method:Portlet.closeClick",
        flags:"",
        description:" Handles a click on the close button of this portlet.  The default implementation\n calls ${isc.DocUtils.linkForRef('method:Portlet.close')}.\n <P>\n <smartclient>Override this method if you want\n other actions to be taken.</smartclient>\n <smartgwt>Developers may use <code>addCloseClickHandler()</code> to provide custom\n handling when the user clicks this button.</smartgwt>\n Custom implementations may call <code>close()</code> to trigger the default behavior.\n",
        name:"closeClick",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Portlet"
    },
    "attr:Window.footer":{
        ref:"attr:Window.footer",
        flags:"R",
        description:"Optional footer for the window, providing space for controls such as the resizer and \n status bar.",
        name:"footer",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:ListGridField.valueIcons":{
        ref:"attr:ListGridField.valueIcons",
        flags:"IRW",
        description:"This property is a mapping between data values to ${isc.DocUtils.linkForRef('type:SCImgURL','SCImgURLs')} for icons to display\n for those data values.  For example, given a field named \"status\" with possible values\n \"Normal\", \"Slow\", \"Offline\", the follow definition would show various icons for that\n field:\n <P>\n <pre>\n fields : [\n     { name:\"status\",\n       valueIcons: {\n           Normal : \"greenIcon.png\",\n           Slow : \"yellowIcon.png\",\n           Offline : \"redIcon.png\"\n       }\n     },\n     ... other fields ...\n ]\n </pre>\n <P>\n <code>valueIcons</code> can either be displayed alongside the normal value or can\n replace the normal field value so that only the icon is shown.  See\n ${isc.DocUtils.linkForRef('attr:ListGridField.showValueIconOnly')}.\n <P>\n If inline editing is enabled for this field, editors displayed for this field will also\n show valueIcons.  This may be overridden by explicitly setting\n ${isc.DocUtils.linkForRef('attr:ListGridField.editorValueIcons')}.\n <P>\n Note that the following attributes related to valueIcon styling will also be picked up\n by the editor from the ListGridField object unless explicitly specified via the\n equivalent <code>editor_</code> attributes:<br>\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconWidth')}<br>\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconHeight')}<br>\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconSize')}<br>\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconLeftPadding')}<br>\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconRightPadding')}<br>\n ${isc.DocUtils.linkForRef('attr:ListGridField.imageURLPrefix')}<br>\n ${isc.DocUtils.linkForRef('attr:ListGridField.imageURLSuffix')}",
        name:"valueIcons",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "method:ValuesManager.hasErrors":{
        ref:"method:ValuesManager.hasErrors",
        flags:"",
        description:" Are there any errors associated with any fields in this valuesManager?\n",
        name:"hasErrors",
        seeAlso:[
        ],
        returns:{
            description:"returns true if there are any outstanding validation errors, false                   otherwise.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "method:ToolStripGroup.addControl":{
        ref:"method:ToolStripGroup.addControl",
        flags:"",
        description:" Adds a control to this toolStripGroup, creating a new column if necessary,\n according to the control's rowSpan attribute and the group's ${isc.DocUtils.linkForRef('attr:ToolStripGroup.numRows')} attribute.\n \n",
        name:"addControl",
        seeAlso:[
        ],
        params:[
            {
                description:"a widget to add to this group",
                optional:false,
                name:"control",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"optional insertion index for this control",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "method:Class.logDebug":{
        ref:"method:Class.logDebug",
        flags:"",
        description:" Log a message at \"debug\" priority\n <P>\n A method named log<i>Priority</i> exists for each priority level, on every ISC Class and\n instance of an ISC Class.  Messages logged on a Class or instance have a default\n category of the classname.  Messages logged on an instance will also automatically\n incorporate the instance ID.  General best practice is to call logDebug() et al as\n \"this.logDebug\" whenever \"this\" is an instance, or as \"Log.logDebug\" otherwise.\n\n",
        name:"logDebug",
        seeAlso:[
            {
                ref:"classMethod:Log.echo",
                description:"for dumping datastructures to the log"
            },
            {
                ref:"classMethod:Log.setPriority",
                description:"for controlling what messages appear in the log"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:ListGrid.emptyMessageStyle":{
        ref:"attr:ListGrid.emptyMessageStyle",
        flags:"IRW",
        description:"The CSS style name applied to the ${isc.DocUtils.linkForRef('attr:ListGrid.emptyMessage')} if displayed.",
        name:"emptyMessageStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"emptyMessage\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "emptyMessage"
        ]
    },
    "attr:ListGridRecord._baseStyle":{
        ref:"attr:ListGridRecord._baseStyle",
        flags:"IRW",
        description:"Name of a CSS style to use as the ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} for all cells for this\n particular record.\n <P>\n The styleName specified with have suffixes appended to it as the record changes state\n (\"Over\", \"Selected\" and so forth) as described by ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle')}.  For a\n single, fixed style for a record, use ${isc.DocUtils.linkForRef('attr:ListGridRecord.customStyle')} instead.\n <P>\n See ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle')} for an overview of various ways to customize styling,\n both declarative and programmatic.\n <P>\n If this property is changed after draw(), to refresh the grid call\n ${isc.DocUtils.linkForRef('method:ListGrid.refreshRow')} (or ${isc.DocUtils.linkForRef('method:ListGrid.markForRedraw')} if several rows are\n being refreshed).\n <P>\n If your application's data uses the \"_baseStyle\" attribute for something else, the\n property name can be changed via ${isc.DocUtils.linkForRef('attr:ListGrid.recordBaseStyleProperty')}.",
        name:"_baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "method:DateItem.getDefaultChooserDate":{
        ref:"method:DateItem.getDefaultChooserDate",
        flags:"",
        description:" Returns the default date to display in the date chooser if this form items value is\n currently unset.\n <P>\n Default implementation returns ${isc.DocUtils.linkForRef('attr:DateItem.defaultChooserDate')}\n",
        name:"getDefaultChooserDate",
        seeAlso:[
        ],
        returns:{
            description:"date to display, or null, indicating the current system date should be   displayed.",
            type:"Date"
        },
        type:"method",
        definingClass:"class:DateItem"
    },
    "classMethod:Class.logInfo":{
        ref:"classMethod:Class.logInfo",
        flags:"",
        description:" Log a message at \"info\" priority\n \n",
        name:"logInfo",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:ListGrid.saveAllEdits":{
        ref:"method:ListGrid.saveAllEdits",
        flags:"",
        description:" Save a number of outstanding edits for this ListGrid. If no rows are specified, all\n outstanding edits will be saved.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:ListGrid.saveRequestProperties')} is specified and the grid is performing\n a databound save, these properties will be applied to each generated DSRequest.\n\n",
        name:"saveAllEdits",
        seeAlso:[
        ],
        params:[
            {
                description:"optionally specify which rows to save",
                optional:true,
                name:"rows",
                defaultValue:null,
                type:"Array of Number"
            },
            {
                description:"If specified this callback will be fired on a successful save  of the specified rows. Note that if there are no pending edits to be saved this callback will\n  not fire - you can check for this condition using ${isc.DocUtils.linkForRef('method:ListGrid.hasChanges')} or\n  ${isc.DocUtils.linkForRef('method:ListGrid.rowHasChanges')}.  Use ${isc.DocUtils.linkForRef('method:ListGrid.editFailed')} to find out about failures\n  encountered during saving (on a per-row basis).",
                optional:true,
                name:"saveCallback",
                defaultValue:null,
                type:"callback"
            }
        ],
        returns:{
            description:"true if a save has been initiated (at least one row had changes, passed                   client-side validation, and a save has been attempted).  False otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:ListGrid.animateRemoveRecord":{
        ref:"attr:ListGrid.animateRemoveRecord",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is enabled, should records be animated out of view\n when they are removed by the user?",
        name:"animateRemoveRecord",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:PickListMenu":{
        methods:[
        ],
        ref:"class:PickListMenu",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:PickListMenu.emptyMessage",
            "attr:PickListMenu.dataProperties",
            "attr:PickListMenu.styleName",
            "attr:PickListMenu.bodyStyleName",
            "attr:PickListMenu.normalCellHeight"
        ],
        description:"${isc.DocUtils.linkForRef('class:ListGrid')} subclass used by FormItems which implement\n ${isc.DocUtils.linkForRef('interface:PickList')} to display\n a list of selectable options.",
        name:"PickListMenu",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataBoundComponent.emptyExportMessage":{
        ref:"attr:DataBoundComponent.emptyExportMessage",
        flags:"IRW",
        description:"The message to display to the user if an export of a DataBoundComponent's data is attempted\n while the DataBoundComponent's data is null or an empty list.",
        name:"emptyExportMessage",
        seeAlso:[
            {
                ref:"method:ListGrid.exportClientData",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"You are attempting to export an empty dataset\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DataSource.getDataProtocol":{
        ref:"method:DataSource.getDataProtocol",
        flags:"A",
        description:" Returns the appropriate ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')} for a ${isc.DocUtils.linkForRef('class:DSRequest')}\n",
        name:"getDataProtocol",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource Request object",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        returns:{
            description:"DataProtocol to be used for this request operation.",
            type:"DSProtocol"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:Canvas.visibilityChanged":{
        ref:"method:Canvas.visibilityChanged",
        flags:"",
        description:" Notification  fired when this canvas becomes visible or hidden to the user.\n Note - this method is fired when the ${isc.DocUtils.linkForRef('method:Canvas.isVisible')} state of this\n component changes. It may be fired in response an explicit call to ${isc.DocUtils.linkForRef('method:Canvas.show')}\n or ${isc.DocUtils.linkForRef('method:Canvas.hide')} or ${isc.DocUtils.linkForRef('method:Canvas.setVisibility')}, or in response to a parent component\n being shown or hidden when this widgets ${isc.DocUtils.linkForRef('attr:Canvas.visibility')} is set to \"inherit\".\n <P>\n Note that a call to ${isc.DocUtils.linkForRef('method:Canvas.show')} or ${isc.DocUtils.linkForRef('method:Canvas.hide')} will not <b>always</b> fire this\n notification. If this widget has a hidden parent, show or hide would change this\n components ${isc.DocUtils.linkForRef('attr:Canvas.visibility')} property, and may update the CSS visibility attribute\n of the drawn handle in the DOM, but would not actually hide or reveal the component to\n the user and as such the notification would not fire.\n <P>\n Note also that this notification will only be fired for components which have been\n ${isc.DocUtils.linkForRef('method:Canvas.draw','drawn')}.\n",
        name:"visibilityChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"whether the canvas is visible to the user",
                optional:false,
                name:"isVisible",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "method:SplitPane.showDetailPane":{
        ref:"method:SplitPane.showDetailPane",
        flags:"",
        description:" Causes a transition to the ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')}, optionally updating\n the ${isc.DocUtils.linkForRef('method:SplitPane.setDetailTitle','detail title')}.\n <p>\n If, based on the ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode')} and ${isc.DocUtils.linkForRef('attr:SplitPane.pageOrientation','pageOrientation')},\n this causes the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')} or ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')}\n to be hidden, the ${isc.DocUtils.linkForRef('attr:SplitPane.backButton','back button')} will be updated\n with the current title of the <code>navigationPane</code> or <code>listPane</code>, or the\n <code>backButtonTitle</code> passed to this method. When ${isc.DocUtils.linkForRef('attr:SplitPane.addHistoryEntries')}\n is enabled and <code>backButtonTitle</code> is passed, then <code>backButtonTitle</code>\n will be used for the back button title if the user goes back to the <code>detailPane</code>.\n\n",
        name:"showDetailPane",
        seeAlso:[
        ],
        params:[
            {
                description:"optional new detail title.",
                optional:true,
                name:"detailPaneTitle",
                defaultValue:null,
                type:"HTMLString"
            },
            {
                description:"optional new title for the ${isc.DocUtils.linkForRef('attr:SplitPane.backButton','back button')}.",
                optional:true,
                name:"backButtonTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "attr:RPCRequest.contentType":{
        ref:"attr:RPCRequest.contentType",
        flags:"IRW",
        description:"Valid with the xmlHttpRequest transport only and only when\n ${isc.DocUtils.linkForRef('attr:RPCRequest.httpMethod')} is set to \"POST\".",
        name:"contentType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"application/x-www-form-urlencoded\"",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:Facet.isTree":{
        ref:"attr:Facet.isTree",
        flags:"IR",
        description:"Marks this facet as a hierarchical facet.\n <P>\n If set, ${isc.DocUtils.linkForRef('attr:Facet.values','facet.value')} will be linked as for a\n ${isc.DocUtils.linkForRef('attr:Tree.modelType','modelType:\"parent\"')} Tree, using\n ${isc.DocUtils.linkForRef('attr:FacetValue.id','facetValue.id')} and\n ${isc.DocUtils.linkForRef('attr:FacetValue.parentId','facetValue.parentId')}.\n Expand/collapse controls will be shown allowing navigation of the facet's values.\n <P>\n The CubeGrid's ${isc.DocUtils.linkForRef('attr:CubeGrid.dataSource','load on demand')} system automatically avoids\n fetching data for facetValues that are not currently visible due to the expand/collapse\n state of a tree facet.\n <P>\n Initial open/close state can be controlled via\n ${isc.DocUtils.linkForRef('attr:Facet.collapsed','facet.collapsed')} and ${isc.DocUtils.linkForRef('attr:FacetValue.collapsed')}.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"isTree",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:Menu.autoDismiss":{
        ref:"attr:Menu.autoDismiss",
        flags:"IRW",
        description:"When false, when a menu item is chosen (via mouse click or keyboard), the menu is not\n automatically hidden, staying in place for further interactivity",
        name:"autoDismiss",
        seeAlso:[
            {
                ref:"attr:Menu.cascadeAutoDismiss",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:ComboBoxItem.fetchData":{
        ref:"method:ComboBoxItem.fetchData",
        flags:"",
        description:" Only applies to databound items (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}).<br>\n Performs a fetch type operation on this item's DataSource to retrieve the set of valid\n options for the item, based on the current ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria')}.\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Callback to fire when the fetch completes. Callback will               fire with 4 parameters:<ul>\n  <li><code>item</code> a pointer to the form item\n  <li><code>dsResponse</code> the ${isc.DocUtils.linkForRef('class:DSResponse')} returned by the server\n  <li><code>data</code> the raw data returned by the server\n  <li><code>dsRequest</code> the ${isc.DocUtils.linkForRef('class:DSRequest')} sent to the server\n  </ul>",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"properties to apply to the              dsRequest for this fetch.",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest properties"
            }
        ],
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "attr:Validator.clientOnly":{
        ref:"attr:Validator.clientOnly",
        flags:"IR",
        description:"Indicates this validator runs on the client only.\n <p>\n Normally, if the server is trying to run validators and finds a validator that it can't\n execute, for safety reasons validation is considered to have failed.  Use this flag to\n explicitly mark a validator that only needs to run on the client.",
        name:"clientOnly",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "class:DrawCurve":{
        methods:[
            "method:DrawCurve.getCenter",
            "method:DrawCurve.setStartPoint",
            "method:DrawCurve.setEndPoint",
            "method:DrawCurve.setControlPoint1",
            "method:DrawCurve.setControlPoint2",
            "method:DrawCurve.getBoundingBox",
            "method:DrawCurve.moveTo",
            "method:DrawCurve.moveBy"
        ],
        ref:"class:DrawCurve",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawCurve.knobs",
            "attr:DrawCurve.startPoint",
            "attr:DrawCurve.endPoint",
            "attr:DrawCurve.controlPoint1",
            "attr:DrawCurve.controlPoint2",
            "attr:DrawCurve.lineCap"
        ],
        description:"DrawItem that renders cubic bezier curves.",
        name:"DrawCurve",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "attr:Calendar.eventDescriptionFieldTitle":{
        ref:"attr:Calendar.eventDescriptionFieldTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:Calendar.descriptionField')} field in the quick and advanced event dialogs",
        name:"eventDescriptionFieldTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Description\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DataBoundComponent.userAddedField":{
        ref:"method:DataBoundComponent.userAddedField",
        flags:"",
        description:" Notification method fired when a user-generated field is added to this component via\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.editFormulaField')} or ${isc.DocUtils.linkForRef('method:DataBoundComponent.editSummaryField')}.\n <P>\n Returning false from this method will prevent the field being added at all. Note that\n this also provides an opportunity to modify the generated field object - any changes\n made to the field parameter will show up when the field is displayed in the ListGrid.\n\n",
        name:"userAddedField",
        seeAlso:[
        ],
        params:[
            {
                description:"User generated summary or formula field",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"Return false to cancel the addition of the field",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "formulaFields",
            "summaryFields"
        ]
    },
    "attr:RowSpacerItem.startRow":{
        ref:"attr:RowSpacerItem.startRow",
        flags:"IRW",
        description:"these items are in a row by themselves by default",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RowSpacerItem",
        groups:[
            "appearance"
        ]
    },
    "method:FormItem.isDisabled":{
        ref:"method:FormItem.isDisabled",
        flags:"A",
        description:"  Is this item disabled?\n",
        name:"isDisabled",
        seeAlso:[
            {
                ref:"attr:FormItem.disabled",
                description:null
            }
        ],
        returns:{
            description:"disabledtrue if this item is be disabled",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "enable"
        ]
    },
    "method:DynamicForm.setValues":{
        ref:"method:DynamicForm.setValues",
        flags:"",
        description:" Replaces the current values of the entire form with the values passed in.\n <P>\n Note: when working with a form that is saving to a DataSource, you would typically call\n either ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')} for an existing record, or ${isc.DocUtils.linkForRef('method:DynamicForm.editNewRecord')} for a new\n record.  In addition to setting the current values of the form, these APIs establish the\n ${isc.DocUtils.linkForRef('attr:DSRequest.operationType')} used to save (\"update\" vs \"add\").\n <P>\n Values should be provided as an Object containing the new values as properties, where each\n propertyName is the name of a ${isc.DocUtils.linkForRef('group:Items','form item')} in the form, and each property value is\n the value to apply to that form item via ${isc.DocUtils.linkForRef('method:FormItem.setValue')}. \n <P>\n Values with no corresponding form item may also be passed, will be tracked by the form\n and returned by subsequent calls to ${isc.DocUtils.linkForRef('method:DynamicForm.getValues')}.\n <P>\n Any ${isc.DocUtils.linkForRef('class:FormItem')} for which a value is not provided will revert to its\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue','defaultValue')}.  To cause all FormItems to revert to default\n values, pass null.\n <P>\n This method also calls ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')} so that a subsequent later call to\n ${isc.DocUtils.linkForRef('method:DynamicForm.resetValues')} will revert to the passed values.\n\n",
        name:"setValues",
        seeAlso:[
        ],
        params:[
            {
                description:"values for the form, or null to reset all items to default values",
                optional:true,
                name:"newData",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "classAttr:FacetChart.allChartTypes":{
        ref:"classAttr:FacetChart.allChartTypes",
        flags:"R",
        description:"All ${isc.DocUtils.linkForRef('type:ChartType','ChartTypes')} that are supported by this class.\n Should be defined by concrete implementations of the charting interface.",
        name:"allChartTypes",
        seeAlso:[
        ],
        valueType:"Array of ChartType",
        defaultValue:"[\"Area\", \"Column\", \"Bar\", \"Line\", \"Pie\", \"Doughnut\", \"Radar\"]",
        type:"classAttr",
        definingClass:"class:FacetChart"
    },
    "attr:ListGrid.showErrorIcons":{
        ref:"attr:ListGrid.showErrorIcons",
        flags:"IRW",
        description:"If this grid is editable, and an edit has caused validation failure for some cell,\n  should we show an icon to indicate validation failure?",
        name:"showErrorIcons",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "errorIcon"
        ]
    },
    "attr:FormItem.readOnlyTextBoxStyle":{
        ref:"attr:FormItem.readOnlyTextBoxStyle",
        flags:"IRW",
        description:"Base text box style to apply when this item is ${isc.DocUtils.linkForRef('method:FormItem.getCanEdit','read-only')} and\n is using ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay','readOnlyDisplay')}\n <smartclient>\"static\".</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.ReadOnlyDisplayAppearance#STATIC}.</smartgwt>\n If set, overrides the form-level ${isc.DocUtils.linkForRef('attr:DynamicForm.readOnlyTextBoxStyle')} default.",
        name:"readOnlyTextBoxStyle",
        seeAlso:[
            {
                ref:"attr:DynamicForm.readOnlyTextBoxStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:DrawGroup.mouseUp":{
        ref:"method:DrawGroup.mouseUp",
        flags:"",
        description:" Notification fired when the user releases the left mouse button on this DrawGroup.\n <p>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n",
        name:"mouseUp",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customMouseEvents')}"
        ],
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:DynamicForm.userTask":{
        ref:"attr:DynamicForm.userTask",
        flags:"IR",
        description:"Associated userTask if current dynamic form used along with workflow. \n See ${isc.DocUtils.linkForRef('class:UserTask','userTask')} for more details.",
        name:"userTask",
        seeAlso:[
        ],
        valueType:"UserTask",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "group:rowNumberField":{
        ref:"group:rowNumberField",
        refs:[
            "method:ListGrid.isRowNumberField",
            "attr:ListGrid.showRowNumbers",
            "attr:ListGrid.applyRowNumberStyle",
            "attr:ListGrid.rowNumberStyle",
            "attr:ListGrid.rowNumberStart",
            "attr:ListGrid.rowNumberField"
        ],
        name:"rowNumberField",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:Date.getFiscalWeek":{
        ref:"classMethod:Date.getFiscalWeek",
        flags:"",
        description:" Returns a date's week-number, according to the fiscal calendar\n\n",
        name:"getFiscalWeek",
        seeAlso:[
        ],
        params:[
            {
                description:"the date to get the fiscal year for",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the object representing the starts of fiscal years",
                optional:true,
                name:"fiscalCalendar",
                defaultValue:null,
                type:"FiscalCalendar"
            }
        ],
        returns:{
            description:"the fiscal week for the passed date",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:TextItem.showHintInField":{
        ref:"attr:TextItem.showHintInField",
        flags:"IRWA",
        description:"If showing hint for this form item, should it be shown within the field?\n <P>CSS style for the hint is ${isc.DocUtils.linkForRef('attr:TextItem.textBoxStyle')} with the suffix\n \"Hint\" appended to it. If the item is disabled the suffix \"DisabledHint\" will be\n used.\n <P>\n To change this attribute after being drawn, it is necessary to call ${isc.DocUtils.linkForRef('method:FormItem.redraw')}\n or redraw the form.",
        name:"showHintInField",
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "appearance"
        ]
    },
    "attr:GridRenderer.alternateRowFrequency":{
        ref:"attr:GridRenderer.alternateRowFrequency",
        flags:"IRW",
        description:"The number of consecutive rows to draw in the same style before alternating, when\n ${isc.DocUtils.linkForRef('attr:GridRenderer.alternateRowStyles','alternateRowStyles')} is true.",
        name:"alternateRowFrequency",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "attr:UserFormula.formulaVars":{
        ref:"attr:UserFormula.formulaVars",
        flags:"IR",
        description:"Map from the single-letter capital letters used as formula variables in the ${isc.DocUtils.linkForRef('object:UserFormula')}\n String to the fieldNames these variables should represent in the context where the formula is\n evaluated.",
        name:"formulaVars",
        seeAlso:[
        ],
        valueType:"Map",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:UserFormula"
    },
    "classAttr:AutoTest.testRoot":{
        ref:"classAttr:AutoTest.testRoot",
        flags:"IRW",
        description:"Sets the implicit root canvas available in scLocators starting \"//testRoot[]\".\n Setting this property may enable one to use the same script to test identical\n widget hierarchies that are rooted under different base widgets.",
        name:"testRoot",
        setter:[
            "setTestRoot"
        ],
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "attr:StretchImgButton.showFocusedIcon":{
        ref:"attr:StretchImgButton.showFocusedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n receives focus.\n <P>\n If ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true, the <code>\"Over\"</code> icon will be\n displayed when the canvas has focus, otherwise a separate <code>\"Focused\"</code> icon\n will be displayed",
        name:"showFocusedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "class:HTMLFlow":{
        methods:[
            "method:HTMLFlow.setContentsURL",
            "method:HTMLFlow.loadingContent",
            "method:HTMLFlow.setContents",
            "method:HTMLFlow.handleError",
            "method:HTMLFlow.transformHTML",
            "method:HTMLFlow.contentLoaded"
        ],
        ref:"class:HTMLFlow",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:HTMLFlow.contents",
            "attr:HTMLFlow.dynamicContents",
            "attr:HTMLFlow.contentsURL",
            "attr:HTMLFlow.loadingMessage",
            "attr:HTMLFlow.contentsURLParams",
            "attr:HTMLFlow.httpMethod",
            "attr:HTMLFlow.contentsType",
            "attr:HTMLFlow.allowCaching",
            "attr:HTMLFlow.evalScriptBlocks",
            "attr:HTMLFlow.captureSCComponents"
        ],
        description:"Use the HTMLFlow component to display HTML content that should expand to its natural size\n without scrolling.  \n <p>\n HTML content can be loaded and reloaded from a URL via the property\n <code>contentsURL</code>.  This method of loading is for simple HTML content\n only; SmartClient components should be loaded via the ${isc.DocUtils.linkForRef('class:ViewLoader')} class.\n <P>\n NOTE: Since the size of an HTMLFlow component is determined by its HTML contents, this\n component will draw at varying sizes if given content of varying size.  When using HTMLFlow\n components within a Layout, consider what will happen if the HTMLFlow renders at various\n sizes.  An HTMLFlow which can expand should be placed in a container where other components\n can render smaller, where the container is allowed to scroll, or where there is padding to\n expand into.",
        name:"HTMLFlow",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('htmlFlow')}"
        ],
        groups:[
            "contentLoading"
        ]
    },
    "type:RPCTransport":{
        ref:"type:RPCTransport",
        values:[
            {
                description:"Uses the XMLHttpRequest object to make the request to the server. Note that in some browsers with certain configurations, this transport may not be\n available.  See ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information.  This transport is\n not useful with file uploads.  Cannot be used to target cross-domain URLs directly.",
                value:"\"xmlHttpRequest\""
            },
            {
                description:"Write a SCRIPT tag into the DOM with a SRC attribute that targets an arbitrary URL.  This transport is the only one that allows direct cross-domain URL\n access.  \n <P>\n For ${isc.DocUtils.linkForRef('attr:RPCRequest.callback')} to work, the server being contacted must support the ability\n to generate JavaScript code in the response that will call a JavaScript function generated\n by SmartClient.  SmartClient passes the name of the function to call via a URL parameter,\n which can be controlled with ${isc.DocUtils.linkForRef('attr:RPCRequest.callbackParam')}.  This callback mechanism is\n sometimes called the \"JSONP\" (JSON with Padding) approach.",
                value:"\"scriptInclude\""
            },
            {
                description:"Available with SmartClient Server only.  An HTML form is dynamically assembled that targets a hidden IFRAME.  This mechanism is supported on all\n browsers and cannot be disabled by end users.  \n <P>\n If using the SmartClient Server and using \n ${isc.DocUtils.linkForRef('group:serverDataIntegration','Server-side data integration')}, the \"hiddenFrame\" transport\n is automatically used for all RPCManager and DataSource requests if the \"xmlHttpRequest\"\n transport is not available.\n <P>\n Cannot be used to target cross-domain URLs directly.",
                value:"\"hiddenFrame\""
            }
        ],
        description:"SmartClient supports multiple RPC transports for maximum compatibility and feature richness.\n All of transports use HTTP as the underlying protocol, but use different mechanisms for\n sending the HTTP request and processing the response.  The transport is typically\n auto-selected for by based on the feature being used and the current browser settings.  For\n advanced use cases, ${isc.DocUtils.linkForRef('attr:RPCRequest.transport')} and ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTransport')} are\n exposed as override points.\n <p>",
        name:"RPCTransport",
        seeAlso:[
        ],
        type:"type"
    },
    "class:HStack":{
        methods:[
        ],
        exampleConfig:"HStack.xml",
        ref:"class:HStack",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
        ],
        description:"A subclass of Layout that simply stacks members on the horizontal axis without trying to\n manage their width.  On the vertical axis, any members that do not have explicit heights will\n be sized to match the height of the stack.",
        name:"HStack",
        seeAlso:[
            {
                ref:"attr:Layout.hPolicy",
                description:null
            }
        ],
        type:"class"
    },
    "attr:Process.autoStart":{
        ref:"attr:Process.autoStart",
        flags:"IR",
        description:"Cause the process to automatically call ${isc.DocUtils.linkForRef('method:Process.start')} as soon as it is created.",
        name:"autoStart",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Process"
    },
    "method:ListGrid.getDefaultFormattedFieldValue":{
        ref:"method:ListGrid.getDefaultFormattedFieldValue",
        flags:"A",
        description:" Get a field value for some record with default field formatters applied.\n <P>\n This method differs from ${isc.DocUtils.linkForRef('method:ListGrid.getDefaultFormattedValue')} in a couple of ways.\n Firstly, this method does not rely on the rowNum and colNum parameters to find the\n record and field in the grid.<br>\n Secondly, unlike ${isc.DocUtils.linkForRef('method:ListGrid.getDefaultFormattedValue')} this method <i>will</i> call\n any explicit cell formatter specified on the field passed in (though it will not\n call a ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue','component level formatter')} if one exists).\n <P>\n This is useful for cases where a developer wishes to\n display a formatted value for some record and field combination which does not\n necessarily map to a cell displayed in the ListGrid.\n <P>\n If <code>rowNum</code> and <code>colNum</code> parameters are passed through to\n the field level cell formatter if one exists. If not explicitly provided these are\n defaulted to -1.\n\n",
        name:"getDefaultFormattedFieldValue",
        seeAlso:[
            {
                ref:"method:ListGridField.formatCellValue",
                description:null
            }
        ],
        params:[
            {
                description:"the record object",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"the field object",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"rowNum (passed to any field level cell formatter)",
                optional:true,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"colNum (passed to any field level cell formatter)",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Default formatted value",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "classAttr:Browser.useCSS3":{
        ref:"classAttr:Browser.useCSS3",
        flags:"R",
        description:"Whether the current browser supports CSS3 and whether SmartClient is configured to use\n CSS3 features (via the setting of window.isc_css3Mode).\n <P>\n If isc_css3Mode is \"on\" then useCSS3 is set to true.  If isc_css3Mode is set to\n \"supported\", \"partialSupport\", or is unset, then useCSS3 is set to true only if the browser\n is a WebKit-based browser, Firefox, IE 9 in standards mode, or IE 10+.  If isc_css3Mode is set\n to \"off\" then useCSS3 is set to false.",
        name:"useCSS3",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:null,
        type:"classAttr",
        definingClass:"class:Browser"
    },
    "group:autoChildren":{
        ref:"group:autoChildren",
        refs:[
            "method:Class.addAutoChild",
            "method:Class.createAutoChild",
            "type:AutoChild"
        ],
        description:"An autoChild is an automatically generated subcomponent that a component creates to\n handle part of its presentation or functionality.\n <P>\n An example is the Window component and its subcomponent the \"header\".\n <P>\n AutoChildren support a standard set of properties that can be used to customize or skin\n them.\n <P>\n This topic explains how to use the autoChild system when creating custom components in\n order to create maximum flexibility.  To learn how to use the autoChild system with\n pre-existing components, ${isc.DocUtils.linkForRef('group:autoChildUsage','go here')}.\n <P>\n Before reading this topic, be sure you have read the ${isc.DocUtils.linkForDocNode('QuickStart Guide')}\n material on creating custom components and have reviewed the provided examples.\n <P>\n <h3>Basics</h3>\n <P>\n The following is an example of creating subcomponents <b>without</b> using the AutoChild\n pattern.  In this case a fictitious \"Portlet\" class is being created, which uses an\n instance of isc.Label to serve as it's header.\n <pre>\n isc.defineClass(\"Portlet\", \"VLayout\").addProperties({\n     initWidget : function () {\n         this.Super(\"initWidget\", arguments);\n\n         this.headerLabel = isc.Label.create({\n             autoDraw:false,\n             contents: this.title,\n             styleName: this.titleStyleName,\n             portlet:this,\n             click : function () { this.portlet.bringToFront() },\n             wrap:false,\n             overflow:\"hidden\",\n             width:\"100%\"\n         });\n         this.addMember(this.headerLabel);\n         ...\n </pre>\n While straightforward, this approach provides limited flexibility to someone using the\n \"Portlet\" class.  There is no way to:\n <ol>\n <li> avoid creating the headerLabel, for a \"headerless\" portlet\n <li> use a different, more advanced class as a header (eg, StretchImgButton or a custom\n class)\n <li> skin the headerLabel, other than CSS (rounded corners, animations, etc, wouldn't be\n possible)\n <li> change it's layout behavior (eg enable autoSize)\n <li> add or override event handlers\n </ol>\n Let's imagine we wanted to add some of the above features.  We could change the code\n like so:\n <P>\n <pre>\n isc.defineClass(\"Portlet\", \"VLayout\").addProperties({\n     <b>showHeaderLabel:true,</b>\n     <b>headerLabelConstructor:isc.Label,</b>\n     initWidget : function () {\n         this.Super(\"initWidget\", arguments);\n\n         <b>if (this.showHeaderLabel) {</b>\n             this.headerLabel = this.headerLabelConstructor.create({\n                 autoDraw:false,\n                 contents: this.title,\n                 styleName: this.titleStyleName,\n                 portlet:this,\n                 click : function () { this.portlet.bringToFront() },\n                 wrap:false,\n                 overflow:\"hidden\",\n                 width:\"100%\"\n             }<b>, this.headerLabelProperties</b>);\n             this.addMember(this.headerLabel);\n         <b>}</b>\n         ...\n </pre>\n Our additions solve our initial concerns:\n <ul>\n <li> <code>showHeaderLabel:false</code> can be set to suppress the header label\n <li> <code>headerLabelConstructor</code> allows you to switch to a different class\n <li> <code>headerLabelProperties</code> give you a means to add arbitrary properties\n (skinning properties, sizing properties, event handlers, etc)\n </ul>\n However, the code is becoming more verbose and repetitive, and we've created a few\n additional properties that now need documentation and testing.  This extra work is going\n to be multiplied by every subcomponent we create where we want this kind of flexibility.\n <P>\n Enter the AutoChild system: the purpose of the AutoChild system is to define a standard\n pattern for creating subcomponents with maximum flexibility.  This means:\n <ul>\n <li> developers creating custom components write less code, have less to test and less\n to document\n <li> developers can more easily understand each other's code for custom components,\n because it follows a standard pattern\n <li> developers <b>using</b> custom components have a standard pattern for\n customization, instead of learning customization APIs for every component separately\n </ul>\n The code below uses the autoChild system to create the \"headerLabel\" subcomponent.  This\n version of the code would still respect all of the customization properties from earlier\n examples (<code>headerLabelProperties</code> et al) and offers several additional degrees\n of flexibility still to be explained, yet it's significantly shorter.  More importantly,\n this code is less redundant; the \"boilerplate\" code is gone and what's left is just the\n actual settings for the headerLabel subcomponent.\n <pre>\n isc.defineClass(\"Portlet\", \"VLayout\").addProperties({\n     headerLabelDefaults : {\n         _constructor:isc.Label,\n         click : function () { this.creator.bringToFront() },\n         wrap:false,\n         overflow:\"hidden\",\n         width:\"100%\"\n     },\n     initWidget : function () {\n         this.Super(\"initWidget\", arguments);\n\n         this.addAutoChild(\"headerLabel\", {\n             contents: this.title,\n             styleName: this.titleStyleName\n         });\n         ...\n </pre>\n <P>\n The documentation for ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')} explains why this code\n will still respect the <code>showHeaderLabel</code> flag and other customization\n properties even though they aren't mentioned specifically.\n <P>\n <h3>AutoChildren lifecycle</h3>\n <P>\n By default any auto-children created by ${isc.DocUtils.linkForRef('method:Class.addAutoChild')} or\n ${isc.DocUtils.linkForRef('method:Class.createAutoChild')} will be ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroyed')} when the\n canvas that created them is destroyed. You can suppress this behavior by setting\n <code>dontAutoDestroy</code> to <code>true</code> on the auto child. To do this you\n could add the property to the defaults or properties block for the autoChild, or\n pass it into the creating method in the dynamic set of properties.\n <p>\n <h3>Subclassing a component with autoChildren</h3>\n <P>\n If you are subclassing a component that has an autoChild and you want to change\n defaults for that autoChild, the correct way to do so is to use\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults','changeDefaults()')}:\n <pre>\n isc.defineClass(\"MyWindow\", \"Window\");\n isc.MyWindow.changeDefaults(\"headerDefaults\", { layoutMargin:10 });\n isc.MyWindow.addProperties({\n    ...\n </pre>\n <P>\n <code>changeDefaults()</code> creates a copy of the superclass defaults and applies your\n changes, which is important because you want to inherit the superclass behavior without\n affecting the superclass, and yet apply overrides.\n <P>\n The following code sample indicates two common\n <span style=\"color:red;font-weight:bold\">incorrect</span> patterns for working with\n defaults, and the consequences of each:\n <pre>\n isc.defineClass(\"MyWindow\", \"Window\").addProperties({\n     // NO.  Superclass behavior / settings for autoChild\n     // won't be inherited.  Use changeDefaults() instead.\n     headerDefaults : { ... },\n\n     initWidget : function () {\n         this.Super(\"initWidget\", arguments);\n\n         // NO.  \"headerDefaults\" object is shared across the class,\n         // changing it affects all instances created from here on.\n         // Pass dynamic defaults to addAutoChild() instead\n         this.headerDefaults.myProperty = this.newValue;\n         ...\n });\n </pre>\n <b>defaults vs properties</b>\n <P>\n For AutoChildren, defaults and properties both provide similar means of adding\n properties to an AutoChild, and the distinction between them is primarily one of\n convention: a class that uses AutoChildren should never define a default value for\n <i>autoChildName</i>Properties, so that instances can freely specify\n <i>autoChildName</i>Properties without overriding built-in behavior.\n <pre>\n isc.defineClass(\"MyWindow\", \"Window\").addProperties({\n     // NO.  Any further use of \"headerProperties\", in\n     // instances or in subclasses, would wipe out behavior\n     headerProperties : { ... },\n </pre>\n <P>\n By consistently using ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} whenever you override autoChild\n defaults in a subclass, you ensure that your classes can in turn be subclassed and\n extended uniformly.\n <P>\n <h3>autoParents and creation order</h3>\n <P>\n The AutoChild pattern can create an entire hierarchy of generated subcomponents.  For\n example, the ${isc.DocUtils.linkForRef('class:Window')} class included with SmartClient uses several AutoChildren as\n part of the overall header structure: separate autoChildren for the minimize button,\n close button, and then the header itself, a Layout-derived class that contains all other\n header controls.\n <P>\n To facilitate construction of hierarchies of autoChildren, the special\n <code>autoParent</code> property may appear in either defaults or properties for an\n autoChild, and indicates the name of another autoChild that should used as a parent.\n For example, to create a \"closeButton\" autoChild that will be a member of the \"header\"\n autoChild:\n <P>\n <pre>\n isc.defineClass(\"Portlet\", \"VLayout\").addProperties({\n     headerDefaults : {\n         _constructor:isc.HLayout,\n         ...\n     },\n     closeButtonDefaults : {\n         <b>autoParent:\"header\",</b>\n         _constructor:isc.ImgButton,\n         ...\n     },\n     initWidget : function () {\n         this.Super(\"initWidget\", arguments);\n\n         this.addAutoChild(\"header\");\n         this.addAutoChild(\"closeButton\");\n         ...\n </pre>\n <P>\n In addition to cutting down on code and making inter-autoChild relationships clearer,\n using <code>autoParent</code> rather than manual calls to addMember() allows a\n subclass of your component to potentially completely rearrange the autoChildren you have\n defined, while retaining their behavior.\n <P>\n When using <code>autoParent</code> to arrange autoChildren, create parents first, then\n children.\n <P>\n <b>Tip:</b> if you want all of the behaviors of\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')} <i>except</i> automatically adding the\n autoChild to a parent, set <code>autoParent:\"none\"</code>.\n <P>\n <b>special case: TabSets and SectionStacks</b>\n <p>\n An autoChild that appears as a ${isc.DocUtils.linkForRef('attr:Tab.pane')} or\n ${isc.DocUtils.linkForRef('attr:SectionStackSection.items','section item')} does not have a clear way to refer to it's\n tab or section via the <code>autoParent</code> property.  For this special case, the\n TabSet and SectionStack components allow tab.pane / section.items to contain the special\n string \"autoChild:<i>autoChildName</i>\".  This will cause the corresponding autoChild to be\n automatically created when the tab is selected or section expanded.\n <P>\n For example:\n <pre>\n isc.defineClass(\"Portlet\", \"VLayout\").addProperties({\n     ...\n     mainTabsDefaults : {\n         _constructor:isc.TabSet,\n         tabs : [\n             { title:\"First Pane\", pane:\"autoChild:firstPane\" }\n         ]\n     },\n     firstPaneDefaults : {\n         ...\n     },\n     initWidget : function () {\n         this.Super(\"initWidget\", arguments);\n\n         // this automatically creates firstPane as an autoChild\n         this.addAutoChild(\"mainTabs\");\n         ...\n </pre>",
        name:"autoChildren",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.dataPointSize":{
        ref:"attr:FacetChart.dataPointSize",
        flags:"IR",
        description:"Size in pixels for data points drawn for line, area, radar and other chart types.",
        name:"dataPointSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.clearRowErrors":{
        ref:"method:ListGrid.clearRowErrors",
        flags:"",
        description:"  Clear any stored validation errors for some row\n",
        name:"clearRowErrors",
        seeAlso:[
            {
                ref:"method:ListGrid.setRowErrors",
                description:null
            }
        ],
        params:[
            {
                description:"index of row to clear validation error for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "validation"
        ]
    },
    "attr:RadialGradient.cy":{
        ref:"attr:RadialGradient.cy",
        flags:"IR",
        description:"y coordinate of outer radial",
        name:"cy",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:RadialGradient"
    },
    "method:ListGrid.displayHeaderContextMenu":{
        ref:"method:ListGrid.displayHeaderContextMenu",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu')} is <code>true</code> this method is fired\n when the user right-clicks on the header for this grid.<br>\n Default implementation will display a menu with entries derived from\n ${isc.DocUtils.linkForRef('method:ListGrid.getHeaderContextMenuItems')} for the appropriate column.\n",
        name:"displayHeaderContextMenu",
        seeAlso:[
            {
                ref:"attr:ListGrid.showHeaderContextMenu",
                description:null
            }
        ],
        params:[
            {
                description:"which button in the header received the right-click event                        (may be the sorter button or header menu button)",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"Optional 2-element array specifying position at which the menu should                           be shown. If this is not passed in the menu will be shown at the\n                           mouseEvent position (default context menu behavior).",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Array"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "attr:RadialGradient.cx":{
        ref:"attr:RadialGradient.cx",
        flags:"IR",
        description:"x coordinate of outer radial",
        name:"cx",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:RadialGradient"
    },
    "attr:DetailViewer.showEmptyField":{
        ref:"attr:DetailViewer.showEmptyField",
        flags:"IRWA",
        description:"Whether to show the field when the value is null",
        name:"showEmptyField",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "method:Canvas.scrollToRight":{
        ref:"method:Canvas.scrollToRight",
        flags:"",
        description:" Horizontally scrolls the content of the widget to the end of its content\n\n",
        name:"scrollToRight",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:Scrollbar.trackStartImg":{
        ref:"attr:Scrollbar.trackStartImg",
        flags:"IR",
        description:"The StretchItem for the start of a scrollbar track. The default is:\n <smartclient><code>{ name:\"track_start\", width:\"trackStartSize\", height:\"trackStartSize\" }</code></smartclient>\n <smartgwt><code>new StretchItem(\"track_start\", \"trackStartSize\", \"trackStartSize\")</code></smartgwt>",
        name:"trackStartImg",
        seeAlso:[
        ],
        valueType:"StretchItem",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "method:FormItem.getVisibleWidth":{
        ref:"method:FormItem.getVisibleWidth",
        flags:"A",
        description:"\tOutput the drawn width for this item in pixels. This method is only reliable after\n  the item has been drawn into the page.\n",
        name:"getVisibleWidth",
        seeAlso:[
        ],
        returns:{
            description:"width of the form item",
            type:"integer"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "sizing"
        ]
    },
    "attr:SectionStackSection.canDropBefore":{
        ref:"attr:SectionStackSection.canDropBefore",
        flags:"I",
        description:"When explicitly set to false, disallows drop before this member in the Layout.",
        name:"canDropBefore",
        seeAlso:[
            {
                ref:"class:Layout",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SectionStackSection",
        groups:[
            "layoutMember"
        ]
    },
    "attr:FilterBuilder.addButton":{
        ref:"attr:FilterBuilder.addButton",
        flags:"IR",
        description:"An ImgButton that allows new clauses to be added if ${isc.DocUtils.linkForRef('attr:FilterBuilder.showAddButton')}\n is set.",
        name:"addButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:FilterBuilder.sortFields":{
        ref:"attr:FilterBuilder.sortFields",
        flags:"IR",
        description:"Should the ${isc.DocUtils.linkForRef('class:FieldPicker')} items be sorted alphabetically in the drop down list.",
        name:"sortFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:TreeGrid.showCustomIconOpen":{
        ref:"attr:TreeGrid.showCustomIconOpen",
        flags:"IRWA",
        description:"Should folder nodes showing custom icons (set via the ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconProperty')}),\n show open state images when the folder is opened.\n If true, the ${isc.DocUtils.linkForRef('attr:TreeGrid.openIconSuffix')} will be appended to the image URL\n (so <code>\"customFolder.gif\"</code> might be replaced with \n <code>\"customFolder_open.gif\"</code>).<br>\n <b>Note</b> that the ${isc.DocUtils.linkForRef('attr:TreeGrid.closedIconSuffix')} is never appended to custom folder icons.<br>\n Can be overridden at the node level via the default property ${isc.DocUtils.linkForRef('attr:TreeNode.showOpenIcon')}\n and that property can be renamed via ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconOpenProperty')}.",
        name:"showCustomIconOpen",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:ListGrid.groupBy":{
        ref:"method:ListGrid.groupBy",
        flags:"",
        description:" Display the current set of records grouped by their values for the given field or\n fields. With no arguments, disables all grouping.\n <P>\n Grouping transforms the current dataset into a Tree on the fly, then provides a familiar tree\n interface for exploring the grouped data. Note that for performance reasons grouping\n is only available for dataSets with less than ${isc.DocUtils.linkForRef('attr:ListGrid.groupByMaxRecords')} entries.\n <P>\n Grouping works automatically with any dataset, providing simple default grouping based on\n each field's declared type.  However, you can use the\n ${isc.DocUtils.linkForRef('method:ListGridField.getGroupValue','field.getGroupValue()')} API to control how records are\n grouped, and the ${isc.DocUtils.linkForRef('method:ListGridField.getGroupTitle','field.getGroupTitle()')} API to control\n how groups are titled.\n <P>\n Grouping can be performed programmatically via this API, or you can set\n ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grid.canGroupBy:true')} to enable menus that allow the user to perform\n grouping. To group a grid automatically, instantiate the grid with a\n  ${isc.DocUtils.linkForRef('attr:ListGrid.groupByField')} setting.  To take action when an end use requests grouping,\n see ${isc.DocUtils.linkForRef('method:ListGrid.handleGroupBy')}.\n <P>\n While grouped, the automatically created Tree is available as\n ${isc.DocUtils.linkForRef('attr:ListGrid.groupTree','grid.groupTree')} and the original dataset is available as\n ${isc.DocUtils.linkForRef('attr:ListGrid.originalData','grid.originalData')}.\n <p>\n Grouping is often performed ${isc.DocUtils.linkForRef('attr:ListGrid.groupByAsyncThreshold','asynchronously')} to work around\n problems where browsers will incorrectly detect that a script is taking too long.  To be\n notified when grouping is complete, see ${isc.DocUtils.linkForRef('method:ListGrid.groupByComplete')}.\n\n",
        name:"groupBy",
        seeAlso:[
        ],
        params:[
            {
                description:"name of fields to group by",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dynamicGrouping')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:Layout.layoutLeftMargin":{
        ref:"attr:Layout.layoutLeftMargin",
        flags:"IRW",
        description:"Space outside of all members, on the left-hand side.  Defaults to ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')}.\n <P>\n Requires a manual call to <code>setLayoutMargin()</code> if changed on the fly.",
        name:"layoutLeftMargin",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:Class.getClass":{
        ref:"method:Class.getClass",
        flags:"",
        description:"\n\tGets a pointer to the class object for this instance\n\n",
        name:"getClass",
        seeAlso:[
        ],
        returns:{
            description:"Class object that was used to construct this object",
            type:"Class"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "attr:Splitbar.skinImgDir":{
        ref:"attr:Splitbar.skinImgDir",
        flags:"IR",
        description:"Default directory for skin images (those defined by the class), relative to the\n Page-wide ${isc.DocUtils.linkForRef('classMethod:Page.getSkinDir','skinDir')}.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "images"
        ]
    },
    "method:PickTreeItem.setEmptyDisplayValue":{
        ref:"method:PickTreeItem.setEmptyDisplayValue",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:PickTreeItem.emptyDisplayValue')}.\n",
        name:"setEmptyDisplayValue",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"emptyDisplayValue",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:PickTreeItem",
        groups:[
            "display_values"
        ]
    },
    "attr:Calendar.leadingDateField":{
        ref:"attr:Calendar.leadingDateField",
        flags:"IR",
        description:"The name of the leading date field for each event.  When this attribute and \n ${isc.DocUtils.linkForRef('attr:Calendar.trailingDateField')} are present in the data, a line extends out from the event showing the \n extent of the leading and trailing dates - useful for visualizing a pipeline of events \n where some can be moved a certain amount without affecting others.",
        name:"leadingDateField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"leadingDate\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:Portlet.minHeight":{
        ref:"attr:Portlet.minHeight",
        flags:"IRW",
        description:"Specifies a minimum height for the Portlet. The height of rows within a ${isc.DocUtils.linkForRef('class:PortalLayout')}\n will be adjusted to take into account the minHeight of all the Portlets in that row.",
        name:"minHeight",
        seeAlso:[
            {
                ref:"attr:Canvas.minHeight",
                description:null
            }
        ],
        valueType:"Number",
        defaultValue:"60",
        type:"attr",
        definingClass:"class:Portlet"
    },
    "group:filterEditor":{
        ref:"group:filterEditor",
        refs:[
            "method:ListGrid.focusInFilterEditor",
            "method:ListGrid.filterByEditor",
            "method:ListGrid.setShowFilterEditor",
            "method:ListGrid.getFilterEditorValueMap",
            "method:ListGrid.getFilterEditorType",
            "attr:ListGridField.canFilter",
            "attr:ListGridField.filterEditorValueMap",
            "attr:ListGridField.filterEditorType",
            "attr:ListGridField.defaultFilterValue",
            "attr:ListGridField.filterEditorProperties",
            "attr:ListGridField.filterOnKeypress",
            "attr:ListGrid.fetchDelay",
            "attr:ListGrid.showFilterEditor",
            "attr:ListGrid.filterEditorHeight",
            "attr:ListGrid.filterByCell",
            "attr:ListGrid.filterOnKeypress"
        ],
        name:"filterEditor",
        seeAlso:[
        ],
        type:"group"
    },
    "method:FormItem.titleClick":{
        ref:"method:FormItem.titleClick",
        flags:"",
        description:" Notification method fired when the user clicks the title for this item\n",
        name:"titleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item whose title was clicked",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Return false to cancel the click event. This will prevent the event from   bubbling up, suppressing\n   ${isc.DocUtils.linkForRef('method:Canvas.click','click')} on the form containing this item.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:RelativeDateItem.minutesFromNowTitle":{
        ref:"attr:RelativeDateItem.minutesFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"minute\".",
        name:"minutesFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N minutes from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.bodyBackgroundColor":{
        ref:"attr:ListGrid.bodyBackgroundColor",
        flags:"IRW",
        description:"Background color applied to the ListGrid body (that is, the area of the grid where\n data values are rendered).<br>\n Note that this will typically not be visible to the user unless there are few enough\n rows that there is visible space in the body below the last row. To style data cells,\n override ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} instead.",
        name:"bodyBackgroundColor",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"white\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "classMethod:DataSource.isFlatCriteria":{
        ref:"classMethod:DataSource.isFlatCriteria",
        flags:"",
        description:" Returns true if a given AdvancedCriteria is \"flat.\" That is, the criteria consists of either:\n <ul> \n <li> a top-level \"and\" or \"or\" ${isc.DocUtils.linkForRef('object:Criterion')}, where none of the \n      ${isc.DocUtils.linkForRef('attr:Criterion.criteria','subcriteria')} use ${isc.DocUtils.linkForRef('type:LogicalOperator','logical operators')},\n      hence have no subcriteria of their own\n <li> a single Criterion that is not a logical operator, hence has no subcriteria\n </ul>\n\n",
        name:"isFlatCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"the AdvancedCriteria to check for flatness",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        returns:{
            description:"true if criteria is flat",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "method:Canvas.setLeft":{
        ref:"method:Canvas.setLeft",
        flags:"",
        description:"\t\t\tSet the left coordinate of this object, relative to its enclosing context, in pixels.\n\t\t\tNOTE: if you're setting multiple coordinates, use setRect(), moveTo() or resizeTo()\n          instead\n",
        name:"setLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:DateItem.maskDateSeparator":{
        ref:"attr:DateItem.maskDateSeparator",
        flags:"IA",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} and ${isc.DocUtils.linkForRef('attr:DateItem.useMask')} are both <code>true</code>\n this value is the separator between date components. If unset ${isc.DocUtils.linkForRef('method:Date.getDefaultDateSeparator')}\n will be used.",
        name:"maskDateSeparator",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "basics"
        ]
    },
    "attr:FormItem.editorType":{
        ref:"attr:FormItem.editorType",
        flags:"IR",
        description:"Name of the FormItem to use for editing, eg \"TextItem\" or \"SelectItem\".\n <P>\n The type of FormItem to use for editing is normally derived automatically from\n ${isc.DocUtils.linkForRef('attr:FormItem.type','field.type')}, which is the data type of the field, by the rules\n explained ${isc.DocUtils.linkForRef('type:FormItemType','here')}.",
        name:"editorType",
        seeAlso:[
            {
                ref:"type:FormItemType",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            }
        ],
        valueType:"FormItem class",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "classMethod:EventHandler.setDragTracker":{
        ref:"classMethod:EventHandler.setDragTracker",
        flags:"",
        description:" Set the HTML for the drag tracker that follows the mouse during a drag and drop interaction.\n <P>\n Your canvas can use this routine to set the drag tracker to whatever HTML you want like so:\n <pre>\n    dragStart : function () {\n        isc.EventHandler.setDragTracker('Your contents here');\n    }\n </pre>\n\n",
        name:"setDragTracker",
        seeAlso:[
        ],
        params:[
            {
                description:"HTML for the tracker",
                optional:false,
                name:"html",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new width for the tracker. Default value: 10",
                optional:true,
                name:"newWidth",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new height for the tracker. Default value: 10",
                optional:true,
                name:"newHeight",
                defaultValue:null,
                type:"int"
            },
            {
                description:"x-offset for the tracker",
                optional:true,
                name:"offsetX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"y-offset for the tracker",
                optional:true,
                name:"offsetY",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Opportunity to pass in a free-form set of properties                                       for the dragTracker",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "dragDrop",
            "dragTracker"
        ]
    },
    "type:ReadOnlyDisplayAppearance":{
        ref:"type:ReadOnlyDisplayAppearance",
        values:[
            {
                description:"Item value should appear within the form as a static block of text, similar to the default appearance of a ${isc.DocUtils.linkForRef('class:StaticTextItem')}. This appearance may be\n modified via ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyTextBoxStyle')} and ${isc.DocUtils.linkForRef('attr:FormItem.clipStaticValue')}.",
                value:"\"static\""
            },
            {
                description:"Item should appear unchanged, but user interaction to edit the item will be disallowed. Note that some interactions will be allowed, such as selecting text\n within a read-only ${isc.DocUtils.linkForRef('class:TextItem')} for copy and paste. Exact implementation may vary by\n form item type.",
                value:"\"readOnly\""
            },
            {
                description:"Item will appear disabled.",
                value:"\"disabled\""
            }
        ],
        description:"Dictates the appearance of form items when ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} is set to\n <code>false</code>.",
        name:"ReadOnlyDisplayAppearance",
        seeAlso:[
            {
                ref:"attr:DynamicForm.readOnlyDisplay",
                description:null
            },
            {
                ref:"attr:FormItem.readOnlyDisplay",
                description:null
            }
        ],
        type:"type"
    },
    "method:FilterBuilder.getChildFilters":{
        ref:"method:FilterBuilder.getChildFilters",
        flags:"",
        description:" Returns an array of child ${isc.DocUtils.linkForRef('class:FilterBuilder')}s, representing the list of complex \n clauses, or an empty array if there aren't any.\n \n",
        name:"getChildFilters",
        seeAlso:[
        ],
        returns:{
            description:"The list of complex clauses for this filterBuilder",
            type:"Array of FilterBuilder"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:ListGrid.headerSpan":{
        ref:"attr:ListGrid.headerSpan",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')} are created via the ${isc.DocUtils.linkForRef('type:AutoChild')} pattern, hence\n <code>headerSpanConstructor</code>, <code>headerSpanDefaults</code> and\n <code>headerSpanProperties</code> are valid.",
        name:"headerSpan",
        seeAlso:[
        ],
        valueType:"MultiAutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "attr:StatefulCanvas.iconWidth":{
        ref:"attr:StatefulCanvas.iconWidth",
        flags:"IR",
        description:"Width in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:ListGrid.removeSelectedData":{
        ref:"method:ListGrid.removeSelectedData",
        flags:"",
        description:" Remove the currently selected records from this component.\n If this is a databound grid, the records will be removed directly from the DataSource.\n <P>\n If no records are selected, no action is taken. The grid will automatically be\n updated if the record deletion succeeds.\n\n",
        name:"removeSelectedData",
        seeAlso:[
        ],
        params:[
            {
                description:"callback to fire when the data has been removed",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('removeOperation')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "group:debug":{
        ref:"group:debug",
        refs:[
            "method:Class.getCallTrace",
            "method:Class.getStackTrace",
            "method:Class.echoLeaf",
            "method:Class.echo",
            "method:Class.echoAll",
            "class:Log",
            "classMethod:Class.getCallTrace",
            "classMethod:Log.getCallTrace",
            "classMethod:Class.getStackTrace",
            "classMethod:Log.getStackTrace",
            "classMethod:Class.echoLeaf",
            "classMethod:Log.echoLeaf",
            "classMethod:Class.echo",
            "classMethod:Log.echo",
            "classMethod:Class.echoAll",
            "classMethod:Log.echoAll",
            "classMethod:Log.show",
            "classMethod:Log.traceMethod",
            "classMethod:Log.timeMethod"
        ],
        description:"Support for debugging and logging",
        name:"debug",
        seeAlso:[
        ],
        type:"group"
    },
    "method:PortalLayout.willMinimizePortlet":{
        ref:"method:PortalLayout.willMinimizePortlet",
        flags:"",
        description:" Method called when a ${isc.DocUtils.linkForRef('class:Portlet')} in this PortalLayout is about to be\n minimized. Note that this method is only called when the user explicitly\n clicks on the portlet's ${isc.DocUtils.linkForRef('attr:Window.showMinimizeButton','minimize button')} --\n it is not called when programmatically minimizing a portlet via\n ${isc.DocUtils.linkForRef('method:Window.minimize','minimize()')}.\n <p>\n Return false to cancel the action.\n \n",
        name:"willMinimizePortlet",
        seeAlso:[
            {
                ref:"method:PortalLayout.portletMinimized",
                description:null
            }
        ],
        params:[
            {
                description:"the Portlet which will be minimized",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        returns:{
            description:"whether the action should proceed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "class:TileGrid":{
        methods:[
            "method:TileGrid.exportData",
            "method:TileGrid.fetchData",
            "method:TileGrid.filterData",
            "method:TileGrid.invalidateCache",
            "method:TileGrid.removeSelectedData",
            "method:TileGrid.getSelection",
            "method:TileGrid.getSelectedRecord",
            "method:TileGrid.selectRecord",
            "method:TileGrid.deselectRecord",
            "method:TileGrid.selectRecords",
            "method:TileGrid.selectRange",
            "method:TileGrid.deselectRecords",
            "method:TileGrid.deselectRange",
            "method:TileGrid.selectAllRecords",
            "method:TileGrid.deselectAllRecords",
            "method:TileGrid.anySelected",
            "method:TileGrid.getTileRecord",
            "method:TileGrid.getTileHTML",
            "method:TileGrid.getTile",
            "method:TileGrid.getTileIndex",
            "method:TileGrid.getCurrentTile",
            "method:TileGrid.recordClick",
            "method:TileGrid.recordDoubleClick",
            "method:TileGrid.recordContextClick",
            "method:TileGrid.selectionChanged",
            "method:TileGrid.addTile",
            "method:TileGrid.removeTile",
            "method:TileGrid.addData",
            "method:TileGrid.removeData",
            "method:TileGrid.setCanReorderTiles",
            "method:TileGrid.setCanDragTilesOut",
            "method:TileGrid.setCanAcceptDroppedRecords",
            "method:TileGrid.setDragTracker",
            "method:TileGrid.getTitleField",
            "method:TileGrid.getDragTrackerTitle",
            "method:TileGrid.transferDragData",
            "method:TileGrid.getDragData",
            "method:TileGrid.transferSelectedData",
            "method:TileGrid.setFieldState",
            "method:TileGrid.getFieldState",
            "method:TileGrid.dataArrived"
        ],
        ref:"class:TileGrid",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:TileGrid.fields",
            "attr:TileGrid.showDetailFields",
            "attr:TileGrid.tileValueStyle",
            "attr:TileGrid.tileValueAlign",
            "attr:TileGrid.wrapValues",
            "attr:TileGrid.data",
            "attr:TileGrid.printTilesPerLine",
            "attr:TileGrid.dataSource",
            "attr:TileGrid.autoFetchData",
            "attr:TileGrid.autoFetchTextMatchStyle",
            "attr:TileGrid.initialCriteria",
            "attr:TileGrid.dataFetchMode",
            "attr:TileGrid.selectionType",
            "attr:TileGrid.tile",
            "attr:TileGrid.tileProperties",
            "attr:TileGrid.tileConstructor",
            "attr:TileGrid.detailViewer",
            "attr:TileGrid.detailViewerProperties",
            "attr:TileGrid.showAllRecords",
            "attr:TileGrid.animateTileChange",
            "attr:TileGrid.styleName",
            "attr:TileGrid.tileDragAppearance",
            "attr:TileGrid.canReorderTiles",
            "attr:TileGrid.canDragTilesOut",
            "attr:TileGrid.canAcceptDroppedRecords",
            "attr:TileGrid.dragTrackerStyle",
            "attr:TileGrid.dragDataAction"
        ],
        description:"A TileGrid is a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} that displays a list of objects as a set\n of \"tiles\", where each tile represents one object, and the tiles are laid out in a grid with\n multiple tiles per row.  Each tile displays one or more properties of the object it\n represents.",
        name:"TileGrid",
        implementsInterfaces:[
            "DataBoundComponent"
        ],
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DateChooser.yearChooserButton":{
        ref:"attr:DateChooser.yearChooserButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} that shows \n a picker for selecting a specific calendar year.",
        name:"yearChooserButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:MetricSettings.gradationLineProperties":{
        ref:"attr:MetricSettings.gradationLineProperties",
        flags:"IR",
        description:"Properties for gradation lines",
        name:"gradationLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:ListGridRecord.includeInSummary":{
        ref:"attr:ListGridRecord.includeInSummary",
        flags:"IRW",
        description:"If specified as false this record should be ignored when calculating summary totals\n to be shown in the ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','summary row')} for this grid.\n <P>\n Note that <code>includeInSummary</code> is the default property name for this attribute,\n but it may be modified via ${isc.DocUtils.linkForRef('attr:ListGrid.includeInSummaryProperty')}.",
        name:"includeInSummary",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "attr:DataSource.dataFormat":{
        ref:"attr:DataSource.dataFormat",
        flags:"IR",
        description:"Indicates the format to be used for HTTP requests and responses when\n fulfilling DSRequests (eg, when ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} is called).",
        name:"dataFormat",
        seeAlso:[
        ],
        valueType:"DSDataFormat",
        defaultValue:"\"iscServer\"",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('jsonDataSource')}",
            "${isc.DocUtils.linkForExampleId('simpleJSON')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration",
            "serverDataIntegration"
        ]
    },
    "attr:Process.state":{
        ref:"attr:Process.state",
        flags:"IRW",
        description:"Current state of a process.  As with Records in general, any field of a Record may\n contain a nested Record or Array of Records, so the process state is essentially a\n hierarchical data structure.",
        name:"state",
        setter:[
            "setState"
        ],
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Process"
    },
    "method:SplitPane.setCurrentPane":{
        ref:"method:SplitPane.setCurrentPane",
        flags:"",
        description:" Reveals the pane indicated by the <code>newPane</code> parameter.\n <p>\n This has different effects based on the ${isc.DocUtils.linkForRef('type:DeviceMode')} and ${isc.DocUtils.linkForRef('type:PageOrientation')}.  For\n example, in \"handset\" mode, the new pane will be the only one showing.  In other modes such\n as \"desktop\", this method may do nothing, but should still be called in order to ensure\n correct behavior with other ${isc.DocUtils.linkForRef('type:DeviceMode')} settings.\n\n",
        name:"setCurrentPane",
        seeAlso:[
        ],
        params:[
            {
                description:"new pane to show.",
                optional:false,
                name:"newPane",
                defaultValue:null,
                type:"CurrentPane"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:CubeGrid.dataArrived":{
        ref:"method:CubeGrid.dataArrived",
        flags:"A",
        description:" Notification method fired when new data arrives from the server to be displayed in this\n CubeGrid.  For example in response to the user openng a collapsed facet, or as a result of\n an initial fetch request for all data from a CubeGrid where ${isc.DocUtils.linkForRef('attr:CubeGrid.facets')} is not\n set and there is no initial data.  Only applies to databound CubeGrids.\n",
        name:"dataArrived",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:CubeGrid.innerHeaderBaseStyle":{
        ref:"attr:CubeGrid.innerHeaderBaseStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:Button.baseStyle','baseStyle')} for the buttons in the innermost column header for \n this cubeGrid.",
        name:"innerHeaderBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"innerHeader",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "appearance"
        ]
    },
    "method:Array.lastIndexOf":{
        ref:"method:Array.lastIndexOf",
        flags:"",
        description:" Return the position in the list of the last instance of the specified object.\n <p>\n If pos is specified, starts looking before that position.\n <p>\n Returns -1 if not found.\n\n",
        name:"lastIndexOf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"earliest index to consider",
                optional:true,
                name:"endPos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"position of the item, if found, -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "classAttr:Operators.iEndsWithFieldTitle":{
        ref:"classAttr:Operators.iEndsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"iEndsWithField\" operator",
        name:"iEndsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"ends with (case insensitive) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DynamicForm.submitValues":{
        ref:"method:DynamicForm.submitValues",
        flags:"",
        description:" Triggered when a SubmitItem is included in the form is submitted and gets pressed.\n \n",
        name:"submitValues",
        seeAlso:[
            {
                ref:"method:DynamicForm.submit",
                description:null
            }
        ],
        params:[
            {
                description:"the form values",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            },
            {
                description:"the form being submitted",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "attr:DataSourceField.editRequiresRole":{
        ref:"attr:DataSourceField.editRequiresRole",
        flags:"IR",
        description:"Comma-separated list of user roles that are allowed to write to this field. If the current\n user does not have any of the roles listed, the system will not allow this field to be \n initialized or updated.  Please see ${isc.DocUtils.linkForRef('attr:OperationBinding.requiresRole')} for further \n details of SmartClient's declarative role-based security.  Please also see \n ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresAuthentication','editRequiresAuthentication')} for details\n of how declarative field-level security settings can be overridden per-request.\n <p>\n <b>NOTE:</b> This property prevents both initialization and updates for a field.  If you \n have a need to prevent <em>just</em> initialization or <em>just</em> updates, you can use\n ${isc.DocUtils.linkForRef('attr:DataSourceField.initRequiresRole')} or ${isc.DocUtils.linkForRef('attr:DataSourceField.updateRequiresRole')}.",
        name:"editRequiresRole",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.viewRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.initRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.updateRequiresRole",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:DynamicForm.getTitleAlign":{
        ref:"method:DynamicForm.getTitleAlign",
        flags:"A",
        description:" Get the alignment for the title for some item. Default implementation is as follows:\n <ul><li>If ${isc.DocUtils.linkForRef('attr:FormItem.titleAlign')} is specified, it will be respected</li>\n     <li>Otherwise if ${isc.DocUtils.linkForRef('attr:DynamicForm.titleAlign','this.titleAlign')} is set, it will be\n         respected</li>\n     <li>Otherwise titles will be aligned according to ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','text direction')},\n         with this method returning <code>\"right\"</code> if text direction is LTR,\n         or <code>\"left\"</code> if text direction is RTL.\n </ul>\n",
        name:"getTitleAlign",
        seeAlso:[
        ],
        params:[
            {
                description:"item for which we're getting title alignment",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"alignment for title",
            type:"Alignment"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "object:CellRecord":{
        methods:[
        ],
        ref:"object:CellRecord",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Analytics/CubeGrid"
        ],
        attrs:[
            "attr:CellRecord.enabled"
        ],
        description:"A CellRecord represents the data for one cell of the body area.\n <P>\n Each CellRecord should be an object that minimally has a property named after each\n visible facetId with the value being a facetValueId from that facet, and also a value\n for ${isc.DocUtils.linkForRef('attr:CubeGrid.valueProperty')}.\n <P>\n Cell records can contain any other properties desired, such as cell ids, or values for\n facets not initially shown.",
        name:"CellRecord",
        seeAlso:[
        ],
        type:"object",
        requiresModules:[
            "Analytics"
        ]
    },
    "attr:DynamicForm.itemLayout":{
        ref:"attr:DynamicForm.itemLayout",
        flags:"IRWA",
        description:"Layout style to use with this form.  \n <P>\n The default of \"table\" uses a tabular layout similar to HTML tables, but with much more\n powerful control over sizing, item visibility and reflow, overflow handling, etc.\n <P>\n <code>itemLayout:\"absolute\"</code> allows absolute positioning of every form item.  This\n provides maximum flexibility in placement, with the following limitations:<ul>\n <li> titles, which normally take up an adjacent cell, are not shown.  Use\n      StaticTextItems to show titles\n <li> no automatic reflow when showing or hiding items.  ${isc.DocUtils.linkForRef('method:FormItem.setLeft')}\n      and ${isc.DocUtils.linkForRef('method:FormItem.setTop')} can be used for manual reflow.\n <li> only pixel and percent sizes are allowed, no \"*\".  Percent widths mean percentage\n      of the overall form size rather than the column size\n <li> with different font styling or internationalized titles, items may overlap that did\n      not overlap in the skin used at design time\n </ul>",
        name:"itemLayout",
        seeAlso:[
        ],
        valueType:"FormLayoutType",
        defaultValue:"\"table\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "method:DrawGroup.moveBy":{
        ref:"method:DrawGroup.moveBy",
        flags:"",
        description:" Updates the <code>DrawGroup</code>'s left coordinate by <code>dX</code> and the top coordinate\n by <code>dY</code>. Note that this does not move or resize the items in this <code>DrawGroup</code>.\n\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"change to left coordinate in pixels",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"change to top coordinate in pixels",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:CalendarEvent.backgroundColor":{
        ref:"attr:CalendarEvent.backgroundColor",
        flags:"IRW",
        description:"An optional background color for this event's window.",
        name:"backgroundColor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "attr:DateChooser.prevYearIcon":{
        ref:"attr:DateChooser.prevYearIcon",
        flags:"IR",
        description:"Icon for the previous year button",
        name:"prevYearIcon",
        seeAlso:[
            {
                ref:"attr:DateChooser.showDoubleYearIcon",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"\"[SKIN]doubleArrow_left.gif\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:ListGrid.printBooleanBaseStyle":{
        ref:"attr:ListGrid.printBooleanBaseStyle",
        flags:"IRA",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanBaseStyle','booleanBaseStyle')} to use when ${isc.DocUtils.linkForRef('groupDef:printing','printing')}.",
        name:"printBooleanBaseStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.booleanBaseStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns",
            "printing"
        ]
    },
    "method:ListGrid.getSelectedState":{
        ref:"method:ListGrid.getSelectedState",
        flags:"",
        description:" Returns a snapshot of the current selection within this listGrid as\n a ${isc.DocUtils.linkForRef('type:ListGridSelectedState')} object.<br>\n This object can be passed to ${isc.DocUtils.linkForRef('method:ListGrid.setSelectedState')} to reset this grid's current\n selection state (assuming the same data is present in the grid).<br>\n",
        name:"getSelectedState",
        seeAlso:[
            {
                ref:"method:ListGrid.setSelectedState",
                description:null
            }
        ],
        returns:{
            description:"current state of this grid's selection",
            type:"ListGridSelectedState"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:ListGridField.canDragResize":{
        ref:"attr:ListGridField.canDragResize",
        flags:"IR",
        description:"Whether this field can be dragResized using the mouse.  If unset, the default behavior\n is governed by ${isc.DocUtils.linkForRef('attr:ListGrid.canResizeFields')}.",
        name:"canDragResize",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:Tree.rootValue":{
        ref:"attr:Tree.rootValue",
        flags:"IR",
        description:"If you are using the \"parent\" modelType and did not specify a root node via ${isc.DocUtils.linkForRef('attr:Tree.root')}\n with an id (${isc.DocUtils.linkForRef('attr:Tree.idField')}), then you can provide the root node's id via this property.\n See the example in ${isc.DocUtils.linkForRef('attr:Tree.data')} for more info.",
        name:"rootValue",
        seeAlso:[
            {
                ref:"attr:Tree.data",
                description:null
            }
        ],
        valueType:"string|number",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:Tree"
    },
    "method:DynamicForm.focusInItem":{
        ref:"method:DynamicForm.focusInItem",
        flags:"",
        description:" Move the keyboard focus into a particular item.\n",
        name:"focusInItem",
        seeAlso:[
        ],
        params:[
            {
                description:"Item (or reference to) item to focus in.",
                optional:false,
                name:"itemName",
                defaultValue:null,
                type:"number|itemName|formItem"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "eventHandling",
            "focus"
        ]
    },
    "method:DrawGroup.click":{
        ref:"method:DrawGroup.click",
        flags:"",
        description:" Notification fired when the user clicks on this DrawGroup.\n <p>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n",
        name:"click",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:TileGrid.printTilesPerLine":{
        ref:"attr:TileGrid.printTilesPerLine",
        flags:"IR",
        description:"How many tiles should be present in a line when printing?",
        name:"printTilesPerLine",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "classMethod:Page.getScrollHeight":{
        ref:"classMethod:Page.getScrollHeight",
        flags:"",
        description:"\t\tGet the height of the window contents as they have been drawn.\n\t\tIf the page scrolls, this may be larger than the page.getHeight().\n",
        name:"getScrollHeight",
        seeAlso:[
        ],
        returns:{
            description:"height of the page as drawn",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "sizing"
        ]
    },
    "method:Slider.setFlipValues":{
        ref:"method:Slider.setFlipValues",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.flipValues')} property of the slider\n\n",
        name:"setFlipValues",
        seeAlso:[
        ],
        params:[
            {
                description:"flip slider values?",
                optional:false,
                name:"flipValues",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "method:Applet.setPluginID":{
        ref:"method:Applet.setPluginID",
        flags:"",
        description:"\n  Sets the ID to be used for the &lt;applet&gt; or &lt;object&gt; DOM element generated by this\n  component.  Can only be set before draw.\n\n",
        name:"setPluginID",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"pluginID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Applet"
    },
    "group:headerSpan":{
        ref:"group:headerSpan",
        refs:[
            "method:ListGrid.getHeaderSpanContextMenuItems",
            "method:ListGrid.setHeaderSpans",
            "method:ListGrid.setHeaderSpanTitle",
            "method:ListGrid.setHeaderSpanHeaderTitle",
            "object:HeaderSpan",
            "attr:ListGrid.headerSpans",
            "attr:ListGrid.headerSpanHeight",
            "attr:ListGrid.headerSpanVAlign",
            "attr:ListGrid.unspannedHeaderVAlign",
            "attr:ListGrid.headerSpanConstructor",
            "attr:ListGrid.headerSpan",
            "attr:HeaderSpan.name",
            "attr:HeaderSpan.fields",
            "attr:HeaderSpan.spans",
            "attr:HeaderSpan.title",
            "attr:HeaderSpan.headerTitle",
            "attr:HeaderSpan.height",
            "attr:HeaderSpan.valign",
            "attr:HeaderSpan.align",
            "attr:ListGrid.showTreeColumnPicker",
            "attr:ListGrid.autoSizeHeaderSpans"
        ],
        name:"headerSpan",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:CubeGrid.simpleDeselect":{
        ref:"attr:CubeGrid.simpleDeselect",
        flags:"IRW",
        description:"If true, clicking on the existing selection causes it to be entirely deselected.",
        name:"simpleDeselect",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:ListGrid.printBaseStyle":{
        ref:"attr:ListGrid.printBaseStyle",
        flags:"IRW",
        description:"Style for non-header cells in printed output.  Defaults to ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} if null.",
        name:"printBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "printing"
        ]
    },
    "attr:Calendar.eventEditor":{
        ref:"attr:Calendar.eventEditor",
        flags:"R",
        description:"An ${isc.DocUtils.linkForRef('type:AutoChild')} of type ${isc.DocUtils.linkForRef('class:DynamicForm')} which displays ${isc.DocUtils.linkForRef('object:CalendarEvent','event data')}. \n This form is created within the ${isc.DocUtils.linkForRef('attr:Calendar.eventEditorLayout','event editor layout')}",
        name:"eventEditor",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:RPCRequest.evalVars":{
        ref:"attr:RPCRequest.evalVars",
        flags:"IRWA",
        description:"If you've set ${isc.DocUtils.linkForRef('attr:RPCRequest.evalResult')} : true, then the property values of this object\n will be available in the evaluation scope of the result under the variable names\n specified by the property names. \n <p>\n So e.g. if evalVars is: <code>{foo: \"bar\"}</code> then a reference to the\n variable <code>foo</code> in the result will evaluate to <code>\"bar\"</code>.",
        name:"evalVars",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "viewLoading"
        ]
    },
    "method:DataSource.evaluateCriterion":{
        ref:"method:DataSource.evaluateCriterion",
        flags:"",
        description:" Evaluate the given criterion with respect to the passed record.\n <P>\n Typically called by the ${isc.DocUtils.linkForRef('method:Operator.condition','condition')} function of a custom\n ${isc.DocUtils.linkForRef('object:Operator')} to evaluate ${isc.DocUtils.linkForRef('attr:Criterion.criteria','sub-criteria')}.\n\n",
        name:"evaluateCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"record to evaluate",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"criterion to use",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        returns:{
            description:"whether the record meets the supplied ${isc.DocUtils.linkForRef('object:Criterion')}",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:DataSource.nullBooleanValue":{
        ref:"attr:DataSource.nullBooleanValue",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DataSource.noNullUpdates')} is set, the value to use for any boolean field that has a null\n value assigned on an update operation, and does not specify an explicit\n ${isc.DocUtils.linkForRef('attr:DataSourceField.nullReplacementValue','nullReplacementValue')}.",
        name:"nullBooleanValue",
        seeAlso:[
            "noNullUpdates,noNullUpdates",
            {
                ref:"attr:DataSourceField.nullReplacementValue",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:Dialog.messageLabel":{
        ref:"attr:Dialog.messageLabel",
        flags:"IR",
        description:"AutoChild that shows ${isc.DocUtils.linkForRef('attr:Dialog.message')}.",
        name:"messageLabel",
        seeAlso:[
        ],
        valueType:"Label AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:ListGrid.expansionFieldImageWidth":{
        ref:"attr:ListGrid.expansionFieldImageWidth",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is set to <code>true</code>, this property\n may be set to govern the width of the expansion image displayed to indicate whether a row\n is expanded. If unset, the expansionField image will be sized to match the\n ${isc.DocUtils.linkForRef('attr:ListGrid.booleanImageWidth')} for this grid.",
        name:"expansionFieldImageWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "classAttr:Array.LOADING":{
        ref:"classAttr:Array.LOADING",
        flags:"IRA",
        description:"Marker value returned by Lists that manage remote datasets, indicating the requested data is\n being loaded. Note that the recommended test for loading data is to call ${isc.DocUtils.linkForRef('classMethod:Array.isLoading')}\n rather than compare to this value directly.",
        name:"LOADING",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"loading\"",
        type:"classAttr",
        definingClass:"object:Array"
    },
    "attr:MenuButton.menuButtonImage":{
        ref:"attr:MenuButton.menuButtonImage",
        flags:"IRA",
        description:"Image for menu button indicating that the button expands a menu.  This image is shown\n for menus expanding down from the button.   Menu direction is controlled by\n ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuBelow')}.",
        name:"menuButtonImage",
        seeAlso:[
            {
                ref:"attr:MenuButton.menuButtonImageUp",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]menu_button.gif\"",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "method:Gauge.setSectors":{
        ref:"method:Gauge.setSectors",
        flags:"",
        description:" Sets the sectors for this gauge.\n",
        name:"setSectors",
        seeAlso:[
        ],
        params:[
            {
                description:"the sectors to show on the gauge.",
                optional:false,
                name:"",
                defaultValue:null,
                type:"Array of GaugeSector"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:SortSpecifier.direction":{
        ref:"attr:SortSpecifier.direction",
        flags:"IR",
        description:"The direction in which this specifier should sort.",
        name:"direction",
        seeAlso:[
        ],
        valueType:"SortDirection",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SortSpecifier"
    },
    "attr:TextItem.mask":{
        ref:"attr:TextItem.mask",
        flags:"IRWA",
        description:"Input mask used to filter text entry.\n <P>\n Sample masks:\n <UL>\n <LI>Phone number: (###) ###-####</LI>\n <LI>Social Security number: ###-##-####\n <LI>First name: &gt;?&lt;??????????</LI>\n <LI>Date: ##/##/####</LI>\n <LI>State: &gt;LL</LI>\n </UL>\n Overview of available mask characters\n <P>\n <table class=\"normal\">\n <tr><th>Character</th><th>Description</th></tr>\n <tr><td>0</td><td>Digit (0 through 9) or plus [+] or minus [-] signs</td></tr>\n <tr><td>9</td><td>Digit or space</td></tr>\n <tr><td>#</td><td>Digit</td></tr>\n <tr><td>L</td><td>Letter (A through Z)</td></tr>\n <tr><td>?</td><td>Letter (A through Z) or space</td></tr>\n <tr><td>A</td><td>Letter or digit</td></tr>\n <tr><td>a</td><td>Letter or digit</td></tr>\n <tr><td>C</td><td>Any character or space</td></tr>\n <tr><td>&nbsp;</td></tr>\n <tr><td>&lt;</td><td>Causes all characters that follow to be converted to lowercase</td></tr>\n <tr><td>&gt;</td><td>Causes all characters that follow to be converted to uppercase</td></tr>\n </table>\n <P>\n Any character not matching one of the above mask characters or that is escaped\n with a backslash (\\) is considered to be a literal.\n <P>\n Custom mask characters can be defined by standard regular expression character set\n or range. For example, a hexadecimal color code mask could be:\n <UL>\n <LI>Color: \\#>[0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F]</LI>\n </UL>\n <P>\n Note: input mask cannot be used at the same time as a ${isc.DocUtils.linkForRef('attr:TextItem.keyPressFilter')}.\n Also note that this property is not supported for\n ${isc.DocUtils.linkForRef('class:ComboBoxItem')} or ${isc.DocUtils.linkForRef('class:SpinnerItem')}.",
        name:"mask",
        setter:[
            "setMask"
        ],
        seeAlso:[
            {
                ref:"attr:TextItem.keyPressFilter",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('maskedTextItem')}"
        ],
        definingClass:"class:TextItem"
    },
    "type:PageEvent":{
        ref:"type:PageEvent",
        values:[
            {
                description:"Fires repeatedly (every 10 ms by default) when the system is idle (i.e.,\n        not busy running other scripts) after the page is loaded.",
                value:"\"idle\""
            },
            {
                description:"Fires when the page has finished loading. It corresponds to the\n        browser 'load' event normally handled by window.onload.",
                value:"\"load\""
            },
            {
                description:"Fires when the page is exited or unloaded. It corresponds to the\n        browser 'unload' event normally handled by window.onunload.",
                value:"\"unload\""
            },
            {
                description:"Fires when the browser window is resized by the user. It corresponds\n        to the browser 'resize' event normally handled by window.onresize.",
                value:"\"resize\""
            },
            {
                description:"Fires when the left mouse button is pressed on the Page.",
                value:"\"mouseDown\""
            },
            {
                description:"Fires when the right mouse button is pressed on the Page.",
                value:"\"rightMouseDown\""
            },
            {
                description:"Fires when the mouse moves on the Page.",
                value:"\"mouseMove\""
            },
            {
                description:"Fires when the left mouse button released on the Page.",
                value:"\"mouseUp\""
            },
            {
                description:"Fires when the user clicks the mouse on the Page.",
                value:"\"click\""
            },
            {
                description:"Fires when the uesr double-clicks on the Page.",
                value:"\"doubleClick\""
            },
            {
                description:"Fires when the right mouse button is clicked on the page.  If your event handler\n        for this event returns false, the native browser context menu will be suppressed.<br>\n        Note: On the Macintosh platform, <code>Command+Click</code> may be used instead\n        of right-button click to trigger a context menu event.<br>\n        On the Opera browser, <code>Ctrl+Shift+Click</code> should be used instead of\n        right-button click.",
                value:"\"showContextMenu\""
            },
            {
                description:"Fires when a user presses a key on the keyboard.",
                value:"\"keyPress\""
            },
            {
                description:"Fires when the ${isc.DocUtils.linkForRef('classMethod:Page.getOrientation')} changes due        to browser-window resize or rotation of a mobile device.\n\n see classMethod:Page.setEvent()\n see classMethod:Page.clearEvent()",
                value:"\"orientationChange\""
            }
        ],
        description:"Events registerable via ${isc.DocUtils.linkForRef('classMethod:Page.setEvent')}",
        name:"PageEvent",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:LoginDialog.formFields":{
        ref:"attr:LoginDialog.formFields",
        flags:"IR",
        description:"Customizes the fields present in the dialog, or specifies new fields to be\n present, in the same manner as with ${isc.DocUtils.linkForRef('attr:DynamicForm.fields')}.",
        name:"formFields",
        seeAlso:[
            {
                ref:"attr:DataBoundComponent.fields",
                description:null
            }
        ],
        valueType:"Array of FormItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:PickList.pickListBaseStyle":{
        ref:"attr:PickList.pickListBaseStyle",
        flags:"IR",
        description:"Base Style for pickList cells.  See ${isc.DocUtils.linkForRef('group:cellStyleSuffixes')} for details on how\n stateful suffixes are combined with the pickListBaseStyle to generate stateful cell styles.\n <p>\n Note: if ${isc.DocUtils.linkForRef('attr:PickList.pickListTallBaseStyle')} is specified, this property will be used as the\n ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle','normalBaseStyle')} and that property will be applied\n to cells that do not match the default cell height, or if ${isc.DocUtils.linkForRef('attr:ListGrid.fastCellUpdates')}\n is true for the pickList in Internet Explorer.",
        name:"pickListBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"pickListCell\"",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "classMethod:EventHandler.getKeyEventCharacterValue":{
        ref:"classMethod:EventHandler.getKeyEventCharacterValue",
        flags:"",
        description:"          Returns the numeric characterValue reported by the browser.\n          Only available on keyPress events, and only for character (or ascii control) keys\n",
        name:"getKeyEventCharacterValue",
        seeAlso:[
        ],
        returns:{
            description:"Numeric character value reported by the browser                   (ASCII value of the key pressed)",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "keyboardEvents"
        ]
    },
    "attr:MultiGroupPanel.copyLevelButton":{
        ref:"attr:MultiGroupPanel.copyLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for duplicating levels\n in the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.copyLevelButtonProperties</code> and \n <code>multiGroupPanel.copyLevelButtonDefaults</code>.",
        name:"copyLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "method:ValuesManager.getMemberForField":{
        ref:"method:ValuesManager.getMemberForField",
        flags:"",
        description:" Given a fieldName or dataPath, this method will find the member responsible for\n interacting with that field's value.\n If no form is found, returns null.\n",
        name:"getMemberForField",
        seeAlso:[
        ],
        params:[
            {
                description:"fieldName or dataPath to check",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"member responsible for displaying this field (may be null).",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "members"
        ]
    },
    "attr:ListGrid.editEvent":{
        ref:"attr:ListGrid.editEvent",
        flags:"IRW",
        description:"Event that will trigger inline editing, see ${isc.DocUtils.linkForRef('type:ListGridEditEvent')} for options.\n <P>\n Note this setting has no effect unless ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit')} has been set to enable editing.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:ListGrid.editOnFocus')} and ${isc.DocUtils.linkForRef('method:ListGrid.startEditing')}.",
        name:"editEvent",
        seeAlso:[
        ],
        valueType:"ListGridEditEvent",
        defaultValue:"\"doubleClick\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('editByRow')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:ListGrid.setSelectedState":{
        ref:"method:ListGrid.setSelectedState",
        flags:"",
        description:" Reset this grid's selection to match the ${isc.DocUtils.linkForRef('type:ListGridSelectedState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.getSelectedState')}.\n\n",
        name:"setSelectedState",
        seeAlso:[
            {
                ref:"method:ListGrid.getSelectedState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired selection state of                                              the grid",
                optional:false,
                name:"selectedState",
                defaultValue:null,
                type:"ListGridSelectedState"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "group:widgetEvents":{
        ref:"group:widgetEvents",
        refs:[
            "method:Canvas.showContextMenu",
            "method:Canvas.hideContextMenu",
            "method:Canvas.mouseOver",
            "method:Canvas.mouseDown",
            "method:Canvas.rightMouseDown",
            "method:Canvas.mouseStillDown",
            "method:Canvas.mouseMove",
            "method:Canvas.mouseOut",
            "method:Canvas.mouseUp",
            "method:Canvas.click",
            "method:Canvas.doubleClick",
            "method:Canvas.mouseWheel",
            "method:Canvas.dragRepositionStart",
            "method:Canvas.dragRepositionMove",
            "method:Canvas.dragRepositionStop",
            "method:Canvas.dragResizeStart",
            "method:Canvas.dragResizeMove",
            "method:Canvas.dragResizeStop",
            "method:Canvas.dragStart",
            "method:Canvas.dragMove",
            "method:Canvas.dragStop",
            "method:Canvas.dropOver",
            "method:Canvas.dropMove",
            "method:Canvas.dropOut",
            "method:Canvas.drop",
            "method:Canvas.keyDown",
            "method:Canvas.keyUp",
            "method:Canvas.keyPress",
            "method:DrawItem.dragStart",
            "method:DrawItem.dragMove",
            "method:DrawItem.dragStop",
            "method:DrawItem.mouseDown",
            "method:DrawItem.mouseUp",
            "method:DrawItem.click",
            "method:DrawItem.mouseOver",
            "method:DrawItem.mouseMove",
            "method:DrawItem.mouseOut",
            "method:DrawItem.showContextMenu",
            "method:DrawGroup.dragStart",
            "method:DrawGroup.dragMove",
            "method:DrawGroup.dragStop",
            "method:DrawGroup.mouseDown",
            "method:DrawGroup.mouseUp",
            "method:DrawGroup.click",
            "method:DrawGroup.mouseOver",
            "method:DrawGroup.mouseMove",
            "method:DrawGroup.mouseOut"
        ],
        name:"widgetEvents",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:Date.getDefaultDateSeparator":{
        ref:"classMethod:Date.getDefaultDateSeparator",
        flags:"",
        description:" gets the default date separator string\n",
        name:"getDefaultDateSeparator",
        seeAlso:[
        ],
        returns:{
            description:"the default date separator",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:PortalLayout.preventRowUnderflow":{
        ref:"attr:PortalLayout.preventRowUnderflow",
        flags:"IRW",
        description:"Controls whether the last ${isc.DocUtils.linkForRef('class:Portlet')} in a row will be stretched to fill the row's width,\n or left at its specified width.",
        name:"preventRowUnderflow",
        setter:[
            "setPreventRowUnderflow"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('portletWidth')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "method:Layout.reflowNow":{
        ref:"method:Layout.reflowNow",
        flags:"A",
        description:" Layout members according to current settings, immediately.\n <br>\n Generally, when changes occur that require a layout to reflow (such as members being shown\n or hidden), the Layout will reflow only after a delay, so that multiple changes cause only\n one reflow.  To remove this delay for cases where it is not helpful, reflowNow() can be\n called.\n",
        name:"reflowNow",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "method:Calendar.scrollToTime":{
        ref:"method:Calendar.scrollToTime",
        flags:"",
        description:" Scroll the calendar Day or Week views to the specified time.\n",
        name:"scrollToTime",
        seeAlso:[
        ],
        params:[
            {
                description:"any parsable time-string",
                optional:false,
                name:"time",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:DateRange.end":{
        ref:"attr:DateRange.end",
        flags:"IR",
        description:"The end of this DateRange.",
        name:"end",
        seeAlso:[
        ],
        valueType:"RelativeDate or Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DateRange"
    },
    "attr:DateItem.textField":{
        ref:"attr:DateItem.textField",
        flags:"R",
        description:"Text field to hold the entire date in \"type in\" format, if ${isc.DocUtils.linkForRef('attr:DateItem.useTextField','useTextField')}\n is true.",
        name:"textField",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "attr:MultiSortDialog.addLevelButtonTitle":{
        ref:"attr:MultiSortDialog.addLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the addLevelButton.  \n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"addLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add Level\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "type:DragMaskType":{
        ref:"type:DragMaskType",
        values:[
            {
                description:"creates an element with ordinary HTML content that will block events",
                value:"\"div\""
            },
            {
                description:"creates an iframe with empty content",
                value:"\"iframe\""
            },
            {
                description:"hides the contents of this widget temporarily",
                value:"\"hide\""
            }
        ],
        description:"What kind of mask to use for masking dragged element.",
        name:"DragMaskType",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "dragdrop"
        ]
    },
    "attr:MultiGroupDialog.copyLevelButton":{
        ref:"attr:MultiGroupDialog.copyLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for duplicating levels\n in the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.copyLevelButtonProperties</code> and \n <code>multiGroupPanel.copyLevelButtonDefaults</code>.",
        name:"copyLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "method:FormItem.valueHoverHTML":{
        ref:"method:FormItem.valueHoverHTML",
        flags:"A",
        description:" If defined, this method should return the HTML to display in a hover canvas when the\n user holds the mousepointer over this item's value.  Return null to suppress the hover\n canvas altogether.\n <p>\n If not defined, ${isc.DocUtils.linkForRef('method:DynamicForm.valueHoverHTML')} will be evaluated to determine\n hover content instead.\n\n",
        name:"valueHoverHTML",
        seeAlso:[
            {
                ref:"attr:FormItem.showClippedValueOnHover",
                description:null
            }
        ],
        params:[
            {
                description:"Pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"This items form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:FacetChart.legendItemPadding":{
        ref:"attr:FacetChart.legendItemPadding",
        flags:"IR",
        description:"Padding between each swatch and label pair.",
        name:"legendItemPadding",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:SortSpecifier.property":{
        ref:"attr:SortSpecifier.property",
        flags:"IR",
        description:"The property name, eg a ${isc.DocUtils.linkForRef('object:ListGridField','field name')}, to which this sortSpecifier applies.",
        name:"property",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SortSpecifier"
    },
    "method:Calendar.setLanes":{
        ref:"method:Calendar.setLanes",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Calendar.lanes','lanes')} in the current calendar view.  Only has an effect\n in ${isc.DocUtils.linkForRef('attr:Calendar.timelineView','timeline views')}, and in ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day views')} when \n ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} is true.\n\n",
        name:"setLanes",
        seeAlso:[
        ],
        params:[
            {
                description:"array of lanes to display",
                optional:false,
                name:"lanes",
                defaultValue:null,
                type:"Array of Lane"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:Calendar.eventOverlapIdenticalStartTimes":{
        ref:"attr:Calendar.eventOverlapIdenticalStartTimes",
        flags:"IR",
        description:"When set to true, events that start at the same time will not overlap each other to prevent \n events having their close button hidden.",
        name:"eventOverlapIdenticalStartTimes",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:ListGrid.headerMenuButtonConstructor":{
        ref:"attr:ListGrid.headerMenuButtonConstructor",
        flags:"IRA",
        description:"Constructor for the  ${isc.DocUtils.linkForRef('attr:ListGrid.headerMenuButton')}. If unset a standard \"Button\" will\n be rendered out. Note that this property may be overridden by different skins.",
        name:"headerMenuButtonConstructor",
        seeAlso:[
        ],
        valueType:"className",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "method:MultiSortPanel.getSortLevel":{
        ref:"method:MultiSortPanel.getSortLevel",
        flags:"",
        description:" Return a ${isc.DocUtils.linkForRef('object:SortSpecifier')} object for the requested levelNum.\n\n",
        name:"getSortLevel",
        seeAlso:[
        ],
        params:[
            {
                description:"The index of the level to return a SortSpecifier for",
                optional:false,
                name:"levelNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"A SortSpecifier representing the requested levelNum",
            type:"SortSpecifier"
        },
        type:"method",
        definingClass:"class:MultiSortPanel"
    },
    "method:DataBoundComponent.getDataPathField":{
        ref:"method:DataBoundComponent.getDataPathField",
        flags:"",
        description:" For a component with a specified ${isc.DocUtils.linkForRef('class:DataSource')}, find the associated dataSource field object\n from a specified ${isc.DocUtils.linkForRef('type:DataPath','dataPath')}.\n",
        name:"getDataPathField",
        seeAlso:[
        ],
        params:[
            {
                description:"dataPath for which the field definition should be returned.",
                optional:false,
                name:"dataPath",
                defaultValue:null,
                type:"DataPath"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:Layout.hPolicy":{
        ref:"attr:Layout.hPolicy",
        flags:"IRWA",
        description:"Sizing policy applied to members on horizontal axis",
        name:"hPolicy",
        seeAlso:[
        ],
        valueType:"LayoutPolicy",
        defaultValue:"\"fill\"",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "method:DetailViewer.setViewState":{
        ref:"method:DetailViewer.setViewState",
        flags:"",
        description:" Reset this detail viewer's view state to match the ${isc.DocUtils.linkForRef('type:DetailViewerViewState')} object passed in.<br>\n Used to restore previous state retrieved from the detail viewer by a call to \n ${isc.DocUtils.linkForRef('method:DetailViewer.getViewState')}.\n\n",
        name:"setViewState",
        seeAlso:[
            {
                ref:"method:DetailViewer.getViewState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired view state for the detail viewer",
                optional:false,
                name:"viewState",
                defaultValue:null,
                type:"DetailViewerViewState"
            }
        ],
        type:"method",
        definingClass:"class:DetailViewer",
        groups:[
            "viewState"
        ]
    },
    "attr:Window.showFooter":{
        ref:"attr:Window.showFooter",
        flags:"IRW",
        description:"If true, show a footer for this Window, including resizer, statusBar, etc.\n This setting is commonly overridden for skinning purposes.",
        name:"showFooter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('windowFooter')}"
        ],
        definingClass:"class:Window",
        groups:[
            "appearance",
            "footer"
        ]
    },
    "type:XMLDocument":{
        ref:"type:XMLDocument",
        description:"XMLDocument is the \"parsed\" or object form of XML, which allows XML to be navigated as\n a tree of nodes with attributes, namespaces and other metadata, as opposed to being\n manipulated as just a String.\n <P> \n XMLDocument is a native object supplied directly by the browser.  The SmartClient-supported\n interfaces for this object are methods that take an XMLDocument as an argument (such as\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectNodes')}).  If you want to retrieve XML data and display it in a\n SmartClient component, read about ${isc.DocUtils.linkForRef('group:clientDataIntegration','XML Data Binding')}.  To\n extract data as JavaScript Objects from XML, see ${isc.DocUtils.linkForRef('classMethod:XMLTools.toJS')}.  Direct\n manipulation of XMLDocument is subject to cross-browser inconsistencies, bugs, memory leaks\n and performance issues.",
        name:"XMLDocument",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Canvas.setPercentSource":{
        ref:"method:Canvas.setPercentSource",
        flags:"A",
        description:" Setter method for the ${isc.DocUtils.linkForRef('attr:Canvas.percentSource','percentSource')} attribute.\n",
        name:"setPercentSource",
        seeAlso:[
        ],
        params:[
            {
                description:"eterNew percent source (if omitted existing                                      percentSource will just be cleared).",
                optional:true,
                name:"sourceWidget",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:ListGridField.isRemoveField":{
        ref:"attr:ListGridField.isRemoveField",
        flags:"IRA",
        description:"If set to true and ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is true, this field will be rendered\n as the remove-field for this grid. In most common usage scenarios this field will essentially\n be a placeholder indicating where the remove field should be rendered, meaning properties\n other than <code>isRemoveField</code>, such as <code>name</code> or <code>title</code>, may\n be left unset.",
        name:"isRemoveField",
        seeAlso:[
            {
                ref:"attr:ListGrid.canRemoveRecords",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:RangeSlider.endThumb":{
        ref:"attr:RangeSlider.endThumb",
        flags:"IR",
        description:"Thumb for the end of the range",
        name:"endThumb",
        seeAlso:[
        ],
        valueType:"AutoChild Snapbar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "group:componentBinding":{
        ref:"group:componentBinding",
        title:"Component Binding",
        refs:[
            "attr:DataSourceField.title",
            "attr:DataSourceField.canView",
            "attr:DataSourceField.canEdit",
            "attr:DataSourceField.canSave",
            "attr:DataSourceField.editorType",
            "attr:DataSourceField.readOnlyEditorType",
            "attr:DataSourceField.hidden",
            "attr:DataSourceField.ignore",
            "attr:DataSourceField.detail"
        ],
        description:"Properties that control how a DataBound Component binds to this DataSource",
        name:"componentBinding",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ImgButton.setState":{
        ref:"method:ImgButton.setState",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')} of this object, changing its appearance.\n Note: <code>newState</code> cannot be\n <smartclient><code>\"Disabled\"</code></smartclient>\n <smartgwt>{@link com.smartgwt.client.types.State#STATE_DISABLED}</smartgwt>\n if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled','this.showDisabled')} is <code>false</code>.\n\n",
        name:"setState",
        seeAlso:[
        ],
        params:[
            {
                description:"the new state.",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"State"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state",
            "appearance"
        ]
    },
    "attr:Calendar.eventDialog":{
        ref:"attr:Calendar.eventDialog",
        flags:"R",
        description:"An ${isc.DocUtils.linkForRef('type:AutoChild')} of type ${isc.DocUtils.linkForRef('class:Window')} that displays a quick event entry form in a \n popup window.",
        name:"eventDialog",
        seeAlso:[
        ],
        valueType:"AutoChild Window",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:DrawTriangle.getCenter":{
        ref:"method:DrawTriangle.getCenter",
        flags:"",
        description:" Get the <a href='http://en.wikipedia.org/wiki/Incenter#Coordinates_of_the_incenter' target='_blank'>incenter</a>\n of the triangle.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the incenter",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawTriangle"
    },
    "method:ListGrid.refreshFields":{
        ref:"method:ListGrid.refreshFields",
        flags:"",
        description:" Re-evaluates ${isc.DocUtils.linkForRef('method:ListGridField.showIf')} for each field, dynamically showing and\n hiding the appropriate set of fields\n",
        name:"refreshFields",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Canvas.scrollToLeft":{
        ref:"method:Canvas.scrollToLeft",
        flags:"",
        description:" Horizontally scrolls the content of the widget to 0\n\n",
        name:"scrollToLeft",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:MultiSortDialog.applyButtonTitle":{
        ref:"attr:MultiSortDialog.applyButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the applyButton",
        name:"applyButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Apply\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColorPicker.satFieldTitle":{
        ref:"attr:ColorPicker.satFieldTitle",
        flags:"IR",
        description:"The title for the 'Sat' field in the complex chooser.",
        name:"satFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Sat\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DateChooser.previousMonthButton":{
        ref:"attr:DateChooser.previousMonthButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} that shifts\n the calendar view backward by a month.",
        name:"previousMonthButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:Canvas.setCursor":{
        ref:"method:Canvas.setCursor",
        flags:"",
        description:"\t\t\tSets the cursor for this widget to cursor. See the cursor property\n          for possible values.\n",
        name:"setCursor",
        seeAlso:[
        ],
        params:[
            {
                description:"new cursor",
                optional:false,
                name:"newCursor",
                defaultValue:null,
                type:"Cursor"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "cues"
        ]
    },
    "attr:DataSourceField.emptyDisplayValue":{
        ref:"attr:DataSourceField.emptyDisplayValue",
        flags:"IR",
        description:"Text to be used for display by client-side components when this field has a null or \n undefined value.  This value will be overridden by a component's emptyCellValue, if set.",
        name:"emptyDisplayValue",
        seeAlso:[
            {
                ref:"attr:FormItem.emptyDisplayValue",
                description:null
            },
            {
                ref:"attr:ListGridField.emptyCellValue",
                description:null
            },
            {
                ref:"attr:DetailViewerField.emptyCellValue",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "appearance"
        ]
    },
    "method:List.isEmpty":{
        ref:"method:List.isEmpty",
        flags:"",
        description:" Return whether or not this array is empty\n\n",
        name:"isEmpty",
        seeAlso:[
        ],
        returns:{
            description:"true == this array is empty, false == some items in the array",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "attr:FormItem.printTextBoxStyle":{
        ref:"attr:FormItem.printTextBoxStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's text box element when getting printable HTML for the\n form. If unset ${isc.DocUtils.linkForRef('attr:FormItem.textBoxStyle')} will be used instead. Note that focused styling\n will never be displayed while printing, though error and disabled styling will.",
        name:"printTextBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "printing"
        ]
    },
    "attr:StretchImgButton.hiliteAccessKey":{
        ref:"attr:StretchImgButton.hiliteAccessKey",
        flags:"IRW",
        description:"If set to true, if the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.title','title')} of this button contains the\n specified ${isc.DocUtils.linkForRef('attr:Canvas.accessKey','accessKey')}, when the title is displayed to the user\n it will be modified to include HTML to underline the accessKey.<br>\n Note that this property may cause titles that include HTML (rather than simple strings)\n to be inappropriately modified, so should be disabled if your title string includes\n HTML characters.",
        name:"hiliteAccessKey",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "method:CubeGrid.getFacetValuesRow":{
        ref:"method:CubeGrid.getFacetValuesRow",
        flags:"",
        description:" Get the index of the first row in the grid that matches the specified FacetValueMap.\n <P>\n The facetValues passed in should contain values for at least one row facet. It may contain\n properties other than row facets, which will be ignored.  If values are \n sparse (values not specified for every row facet), the first row matching the specified\n facet values will be returned.\n\n",
        name:"getFacetValuesRow",
        seeAlso:[
        ],
        params:[
            {
                description:"facet values to find",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"index of first row in the grid that matches the facet values passed in, or                   -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "method:DrawLinePath.moveBy":{
        ref:"method:DrawLinePath.moveBy",
        flags:"",
        description:" Move both the start and end points of the line by a relative amount.\n\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"change to left coordinate in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"change to top coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLinePath"
    },
    "attr:TextItem.maskOverwriteMode":{
        ref:"attr:TextItem.maskOverwriteMode",
        flags:"IRWA",
        description:"During entry into masked field, should keystrokes overwrite current position value?\n By default new keystrokes are inserted into the field.",
        name:"maskOverwriteMode",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "attr:ListGrid.showHeaderSpanTitlesInFormulaBuilder":{
        ref:"attr:ListGrid.showHeaderSpanTitlesInFormulaBuilder",
        flags:"IRW",
        description:"If this grid has specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')}, should field titles be\n prefixed with the titles of the headerSpans in which they are contained when\n using the ${isc.DocUtils.linkForRef('class:FormulaBuilder')} or ${isc.DocUtils.linkForRef('class:SummaryBuilder')}.",
        name:"showHeaderSpanTitlesInFormulaBuilder",
        seeAlso:[
            {
                ref:"attr:ListGrid.formulaBuilderSpanTitleSeparator",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:StretchImg.vSrc":{
        ref:"attr:StretchImg.vSrc",
        flags:"IRW",
        description:"Base URL for the image if ${isc.DocUtils.linkForRef('attr:StretchImg.vertical')} is true and \n ${isc.DocUtils.linkForRef('attr:StretchImg.src')} is unset.",
        name:"vSrc",
        seeAlso:[
            {
                ref:"attr:StretchImg.src",
                description:null
            },
            {
                ref:"attr:StretchImg.vSrc",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "type:SortDirection":{
        ref:"type:SortDirection",
        values:[
            {
                description:"Sort in ascending order (eg: A-Z, larger items later in the list)",
                value:"\"ascending\""
            },
            {
                description:"Sort in descending order (eg: Z-A, larger items earlier in the list)",
                value:"\"descending\""
            }
        ],
        description:null,
        name:"SortDirection",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "sorting"
        ]
    },
    "attr:ListGrid.viewState":{
        ref:"attr:ListGrid.viewState",
        flags:"IRW",
        getter:[
            "getViewState"
        ],
        description:"Initial ${isc.DocUtils.linkForRef('type:ListGridViewState','view state')} for the grid.\n <P>\n Since view state contains field state it is not necessary\n to set ${isc.DocUtils.linkForRef('attr:ListGrid.fieldState','fieldState')} when also setting <code>viewState</code>.\n If both are provided, <code>fieldState</code> has priority for field state.\n <smartclient>\n <P>\n To retrieve current state call ${isc.DocUtils.linkForRef('method:ListGrid.getViewState','getViewState')}.\n </smartclient>",
        name:"viewState",
        setter:[
            "setViewState"
        ],
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:ListGrid.cellHeight":{
        ref:"attr:ListGrid.cellHeight",
        flags:"IRW",
        description:"The default height of each row in pixels.",
        name:"cellHeight",
        seeAlso:[
            {
                ref:"method:GridRenderer.getRowHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('multilineValues')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "attr:DetailViewer.recordsPerBlock":{
        ref:"attr:DetailViewer.recordsPerBlock",
        flags:"IRW",
        description:"The number of records to display in a block. A block is a horizontal row on a page\n          containing one or more records, as specified by the value of recordsPerBlock. The\n          height of a block is equal to the height of a single record. The default setting of\n          1 causes each record to appear by itself in a vertical row. Setting recordsPerBlock\n          to 2 would cause records to appear side by side in groups of two.\n          Use a value of \"*\" to indicate all records.",
        name:"recordsPerBlock",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "attr:ToolStrip.groupTitleAlign":{
        ref:"attr:ToolStrip.groupTitleAlign",
        flags:"IR",
        description:"If set, this attribute affects the alignment of the titles in \n ${isc.DocUtils.linkForRef('class:ToolStripGroup','ToolStripGroups')}.  You can override this at the \n ${isc.DocUtils.linkForRef('attr:ToolStripGroup.titleAlign','individual ToolStripGroup')} level.",
        name:"groupTitleAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "classMethod:Log.echo":{
        ref:"classMethod:Log.echo",
        flags:"",
        description:" Return a short string representation of any object, suitable for viewing by a developer for\n debugging purposes.\n <P>\n If passed an object containing other objects, echo will not recurse into subobjects,\n summarizing them instead via echoLeaf().\n <P>\n NOTE: echo() is used to generate the output shown in the Log window when evaluating an\n expression.\n <P>\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echo()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n \n",
        name:"echo",
        seeAlso:[
            {
                ref:"classMethod:Log.echoAll",
                description:null
            },
            {
                ref:"classMethod:Log.echoLeaf",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "attr:LoginDialog.passwordItem":{
        ref:"attr:LoginDialog.passwordItem",
        flags:"IR",
        description:"Password field item in ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"passwordItem",
        seeAlso:[
            {
                ref:"attr:LoginDialog.allowBlankPassword",
                description:null
            },
            {
                ref:"attr:LoginDialog.passwordItemTitle",
                description:null
            }
        ],
        valueType:"AutoChild PasswordItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:CubeGrid.makeChart":{
        ref:"method:CubeGrid.makeChart",
        flags:"",
        description:" Chart the portion of the dataset indicated by <code>fixedFacetValues</code>, for all \n values of the <code>variableFacets</code>.\n <P>\n One, two or more variableFacets may be passed.  Two variable facets for a column chart will\n result in ${isc.DocUtils.linkForRef('attr:Chart.stacked','stacking')} or clustering.  Three facets or more may be\n supported by some ${isc.DocUtils.linkForRef('attr:CubeGrid.chartType','chartTypes')} or\n ${isc.DocUtils.linkForRef('attr:CubeGrid.chartConstructor','charting engines')}.\n \n",
        name:"makeChart",
        seeAlso:[
        ],
        params:[
            {
                description:"set of facet values to hold constant.  Pass null to                                         chart the entire dataset.",
                optional:false,
                name:"fixedFacetValues",
                defaultValue:null,
                type:"FacetValueMap"
            },
            {
                description:"set of facets to be charted",
                optional:false,
                name:"variableFacets",
                defaultValue:null,
                type:"Array of FacetIds"
            },
            {
                description:"properties to pass through to the created                        ${isc.DocUtils.linkForRef('interface:Chart')}",
                optional:false,
                name:"chartProperties",
                defaultValue:null,
                type:"Chart properties"
            }
        ],
        returns:{
            description:"created chart instance",
            type:"Chart"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:FacetChart.logGradations":{
        ref:"attr:FacetChart.logGradations",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:FacetChart.useLogGradations')} is set, gradation lines to show in between powers,\n expressed as a series of integer or float values between 1 and ${isc.DocUtils.linkForRef('attr:FacetChart.logBase')}.\n <P>\n Some common possibilities (for base 10):\n <pre>\n    [ 1 ] // show only orders of magnitude (0.1, 1, 10, 100, etc)\n    [ 1, 5 ] // show only orders of magnitude plus halfway mark\n    [ 1, 2, 4, 8 ] // show powers of 2 between orders\n    [ 1, 2.5, 5, 7.5 ] // show quarters\n </pre>\n Or base 2:\n <pre>\n    [ 1 ]\n    [ 1, 1.5 ]\n </pre>",
        name:"logGradations",
        seeAlso:[
        ],
        valueType:"Array of float",
        defaultValue:"[ 1,2,4,6,8 ]",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Tree.discardParentlessNodes":{
        ref:"attr:Tree.discardParentlessNodes",
        flags:"IRA",
        description:"If this tree has ${isc.DocUtils.linkForRef('attr:Tree.modelType','modelType:\"parent\"')}, should nodes in the data array for the\n tree be dropped if they have an explicitly specified value for the ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}\n which doesn't match any other nodes in the tree. If set to false these nodes will be added as\n children of the root node.",
        name:"discardParentlessNodes",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Tree"
    },
    "attr:SectionStackSection.resizeable":{
        ref:"attr:SectionStackSection.resizeable",
        flags:"I",
        description:"If set to false, then the items in this section will not be resized by sectionHeader\n repositioning.  You may also set this flag directly on any of the items in any section to\n cause that item to not be resizeable.",
        name:"resizeable",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('resizeSections')}"
        ],
        definingClass:"object:SectionStackSection"
    },
    "attr:Menu.bodyStyleName":{
        ref:"attr:Menu.bodyStyleName",
        flags:"IRW",
        description:"CSS style used for the body of this menu when there is no icon field. When there is an\n icon field, then ${isc.DocUtils.linkForRef('attr:Menu.iconBodyStyleName','iconBodyStyleName')}, if set, will override this setting.\n <p>\n If applying a background-color to the body via a CSS style applied using this property,\n be sure to set ${isc.DocUtils.linkForRef('attr:ListGrid.bodyBackgroundColor','bodyBackgroundColor')} to <code>null</code>.",
        name:"bodyStyleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:Menu",
        groups:[
            "appearance"
        ]
    },
    "method:RelativeDateItem.getRelativeDate":{
        ref:"method:RelativeDateItem.getRelativeDate",
        flags:"",
        description:" Returns the current ${isc.DocUtils.linkForRef('object:RelativeDate')} object for this item. Only applies if the user entered\n a relative date value (such as \"Today\") - if an absolute date was entered, this method\n returns null.<br>\n Relative date objects have the following format:\n <pre>\n     { _constructor: \"RelativeDate\", value: \"$today\" }\n </pre>\n\n",
        name:"getRelativeDate",
        seeAlso:[
        ],
        returns:{
            description:"object an object containing the relativeDate string for the current value",
            type:null
        },
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "attr:DetailViewerField.imageSize":{
        ref:"attr:DetailViewerField.imageSize",
        flags:"IRW",
        description:"Size of images shown for fieldTypes image in this field.\n <P>\n If set to a String, assumed to be a property on each record that specifies the image\n height.  For example, if <code>field.imageSize</code> is \"logoSize\",\n <code>record.logoSize</code> will control the size of the image.",
        name:"imageSize",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.imageWidth",
                description:null
            },
            {
                ref:"attr:DetailViewerField.imageHeight",
                description:null
            }
        ],
        valueType:"Integer | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "imageColumns"
        ]
    },
    "method:PickList.getPickListFilterCriteria":{
        ref:"method:PickList.getPickListFilterCriteria",
        flags:"A",
        description:" ${isc.DocUtils.linkForRef('group:stringMethods','StringMethod')} to return a set of filter criteria to be applied to\n the data displayed in the pickList when it is shown.\n <P>\n If this is a databound item the criteria will be passed as criteria to\n ${isc.DocUtils.linkForRef('method:DataSource.fetchData')}.  Otherwise an equivalent client-side filter will be\n performed on the data returned by ${isc.DocUtils.linkForRef('method:PickList.getClientPickListData')}.\n <P>\n By default combines ${isc.DocUtils.linkForRef('attr:FormItem.optionCriteria')} with\n ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria')} if specified, otherwise an empty \n set of criteria so all records will be displayed.\n\n",
        name:"getPickListFilterCriteria",
        seeAlso:[
        ],
        returns:{
            description:"criteria to be used for databound or local filtering",
            type:"Criteria"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundDependentSelects')}"
        ],
        definingClass:"interface:PickList"
    },
    "method:GridRenderer.getColumnPageLeft":{
        ref:"method:GridRenderer.getColumnPageLeft",
        flags:"A",
        description:" Return the left coordinate for a given column number as a GLOBAL coordinate\n",
        name:"getColumnPageLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"page left offset of the passed colNum, or null if undrawn or no such column",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "method:Array.equals":{
        ref:"method:Array.equals",
        flags:"",
        description:" Return whether this list is equal to another list.\n <P>\n Two lists are equal only if they have the same length and all contained items are in the same\n order and are also equal.\n\n",
        name:"equals",
        seeAlso:[
        ],
        params:[
            {
                description:"list to check for equality",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"List"
            }
        ],
        returns:{
            description:"whether the specified list is equal to this list",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:FacetChart.pieLabelLineExtent":{
        ref:"attr:FacetChart.pieLabelLineExtent",
        flags:"IR",
        description:"How far label lines stick out of the pie radius in a Pie chart in stacked mode.",
        name:"pieLabelLineExtent",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:Img.getHoverHTML":{
        ref:"method:Img.getHoverHTML",
        flags:"",
        description:" If <code>this.showHover</code> is true, when the user holds the mouse over this Canvas for\n long enough to trigger a hover event, a hover canvas is shown by default. This method returns\n the contents of that hover canvas.\n <P>\n Overridden from Canvas: <br>\n If ${isc.DocUtils.linkForRef('attr:Img.prompt')} is specified, and ${isc.DocUtils.linkForRef('attr:Img.altText')} is unset, default implementation is unchanged -\n the prompt text will be displayed in the hover.<br>\n If ${isc.DocUtils.linkForRef('attr:Img.altText')} and ${isc.DocUtils.linkForRef('attr:Img.prompt')} are set this method will return null to suppress\n the standard hover behavior in browsers where the alt attribute on an img tag causes\n a native tooltip to appear, such as Internet Explorer.\n On other browsers the altText value will be returned.\n\n",
        name:"getHoverHTML",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        returns:{
            description:"the string to show in the hover",
            type:"String"
        },
        type:"method",
        definingClass:"class:Img",
        groups:[
            "hovers"
        ]
    },
    "attr:CubeGrid.defaultFacetWidth":{
        ref:"attr:CubeGrid.defaultFacetWidth",
        flags:"IRW",
        description:"Default width of inner column headers.",
        name:"defaultFacetWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:Tab.pickerTitle":{
        ref:"attr:Tab.pickerTitle",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker')} is true for this TabSet, if set this property will determine\n the title of the picker menu item for this tab. If unset, ${isc.DocUtils.linkForRef('attr:Tab.title')} will be used\n instead",
        name:"pickerTitle",
        seeAlso:[
            {
                ref:"attr:TabSet.showTabPicker",
                description:null
            },
            {
                ref:"attr:Tab.title",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab",
        groups:[
            "tabBarControls"
        ]
    },
    "method:ListGrid.hasErrors":{
        ref:"method:ListGrid.hasErrors",
        flags:"",
        description:" Does this grid currently have errors associated with editValues for any row in the grid.\n",
        name:"hasErrors",
        seeAlso:[
            {
                ref:"method:ListGrid.rowHasErrors",
                description:null
            },
            {
                ref:"method:ListGrid.cellHasErrors",
                description:null
            }
        ],
        returns:{
            description:"true if there are unresolved errors, false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "attr:ColumnTree.fields":{
        ref:"attr:ColumnTree.fields",
        flags:"IRW",
        description:"An array of field objects, specifying the order, layout, dynamic calculation, and\n sorting behavior of each field in each column in the columnTree object. In ColumnTrees, \n the fields array specifies sub-columns within each main column. \n Each field in the fields array is a ListGridField object.\n <p>\n If ${isc.DocUtils.linkForRef('attr:ColumnTree.dataSource')} is also set, this value acts as a set of overrides as\n explained in ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')}.",
        name:"fields",
        seeAlso:[
            {
                ref:"object:ListGridField",
                description:null
            }
        ],
        valueType:"Array of ListGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "method:ListGrid.rowEditorExit":{
        ref:"method:ListGrid.rowEditorExit",
        flags:"",
        description:" Callback fired when the user attempts to navigate away from the current edit row,\n or complete the current edit.\n <P>\n Return false from this method to cancel the default behavior (Saving / cancelling the\n current edit / moving to the next edit cell).\n\n",
        name:"rowEditorExit",
        seeAlso:[
            {
                ref:"method:ListGridField.editorExit",
                description:null
            }
        ],
        params:[
            {
                description:"How was the edit completion fired?",
                optional:false,
                name:"editCompletionEvent",
                defaultValue:null,
                type:"EditCompletionEvent"
            },
            {
                description:"record for the cell being edited",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"new values for the record [Note that fields that have                                 not been edited will not be included in this object]",
                optional:false,
                name:"newValues",
                defaultValue:null,
                type:"object"
            },
            {
                description:"row number for the row being left",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Returning false from this method will cancel the default behavior                      (for example saving the row) and leave the editor visible and focus\n                      in this edit cell.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:FacetChart.regressionLineType":{
        ref:"attr:FacetChart.regressionLineType",
        flags:"IRW",
        description:"Regression algorithm used for the ${isc.DocUtils.linkForRef('attr:FacetChart.showRegressionLine','regression line')}.",
        name:"regressionLineType",
        setter:[
            "setRegressionLineType"
        ],
        seeAlso:[
        ],
        valueType:"RegressionLineType",
        defaultValue:"\"line\"",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:List.findAll":{
        ref:"method:List.findAll",
        flags:"",
        description:" Find all objects where property == value in the object.\n <P>\n Pass an Object as the <code>propertyName</code> argument to match multiple properties.\n\n",
        name:"findAll",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"all matching Objects or null if none found",
            type:"Array"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access",
            "find"
        ]
    },
    "method:DOMGrid.setRootElement":{
        ref:"method:DOMGrid.setRootElement",
        flags:"",
        description:" Set the root element (or document) to view in the tree.\n",
        name:"setRootElement",
        seeAlso:[
        ],
        params:[
            {
                description:"new root element",
                optional:false,
                name:"rootElement",
                defaultValue:null,
                type:"DOMElement"
            }
        ],
        type:"method",
        definingClass:"class:DOMGrid"
    },
    "type:TimeUnit":{
        ref:"type:TimeUnit",
        values:[
            {
                description:"a millisecond time-unit",
                value:"\"millisecond\""
            },
            {
                description:"a second time-unit",
                value:"\"second\""
            },
            {
                description:"a minute time-unit",
                value:"\"minute\""
            },
            {
                description:"an hour time-unit",
                value:"\"hour\""
            },
            {
                description:"a day time-unit",
                value:"\"day\""
            },
            {
                description:"a week time-unit",
                value:"\"week\""
            },
            {
                description:"a month time-unit",
                value:"\"month\""
            },
            {
                description:"a quarter (3 month) time-unit",
                value:"\"quarter\""
            },
            {
                description:"a year time-unit",
                value:"\"year\""
            }
        ],
        description:"An enum of time-units available for use with the ${isc.DocUtils.linkForRef('class:RelativeDateItem')},\n ${isc.DocUtils.linkForRef('class:TimeItem')} and ${isc.DocUtils.linkForRef('class:Calendar')} widgets.",
        name:"TimeUnit",
        seeAlso:[
        ],
        type:"type"
    },
    "classMethod:DataSource.setTypeOperators":{
        ref:"classMethod:DataSource.setTypeOperators",
        flags:"",
        description:" Set the list of valid ${isc.DocUtils.linkForRef('type:OperatorId')}s for a given FieldType.\n \n",
        name:"setTypeOperators",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"typeName",
                defaultValue:null,
                type:"String | FieldType"
            },
            {
                description:"available Operators",
                optional:false,
                name:"operators",
                defaultValue:null,
                type:"Array[] of OperatorId"
            }
        ],
        type:"classMethod",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:CubeGrid.skinImgDir":{
        ref:"attr:CubeGrid.skinImgDir",
        flags:"IR",
        description:"Default directory for skin images (those defined by the class), relative to the\n Page-wide ${isc.DocUtils.linkForRef('classMethod:Page.getSkinDir','skinDir')}.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"images/CubeGrid/\"",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "images"
        ]
    },
    "group:viewLoading":{
        ref:"group:viewLoading",
        refs:[
            "method:ViewLoader.setViewURL",
            "class:ViewLoader",
            "attr:RPCRequest.evalResult",
            "attr:RPCRequest.evalVars",
            "attr:ViewLoader.loadingMessage"
        ],
        name:"viewLoading",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:PickTreeItem.displayField":{
        ref:"attr:PickTreeItem.displayField",
        flags:"IR",
        description:"Specifies an alternative field from which display values should be retrieved for this\n item.\n <p>\n If this item is not databound (${isc.DocUtils.linkForRef('attr:PickTreeItem.dataSource')} is unset), this is\n implemented by picking up the value of the specified field from the\n ${isc.DocUtils.linkForRef('attr:PickTreeItem.valueTree')}.\n <p>\n Otherwise this item will attempt to map its underlying value to a display value\n by retrieving a record from the ${isc.DocUtils.linkForRef('attr:PickTreeItem.dataSource')} where the \n ${isc.DocUtils.linkForRef('attr:PickTreeItem.valueField')} matches this item's value, and displaying the \n <code>displayField</code> value from that record.",
        name:"displayField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PickTreeItem"
    },
    "method:FacetChart.zoomChanged":{
        ref:"method:FacetChart.zoomChanged",
        flags:"",
        description:" Fires when the end user changes the zoom position in a ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom','zoomed chart')}.\n",
        name:"zoomChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"starting value for the data range shown in the main chart",
                optional:false,
                name:"startValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"ending value for the data range shown in the main chart",
                optional:false,
                name:"endValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:ListGrid.booleanTrueImage":{
        ref:"attr:ListGrid.booleanTrueImage",
        flags:"IRWA",
        description:"Image to display for a true value in a boolean field. The special value \"blank\" means\n that no image will be shown.\n <P>\n To turn this off explicitly set ${isc.DocUtils.linkForRef('attr:ListGridField.suppressValueIcon')} to true.\n <P>\n If this, ${isc.DocUtils.linkForRef('attr:ListGrid.booleanFalseImage')} and ${isc.DocUtils.linkForRef('attr:ListGrid.booleanPartialImage')}\n are unset, this will be set to the default ${isc.DocUtils.linkForRef('attr:CheckboxItem.checkedImage')}.",
        name:"booleanTrueImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.booleanFalseImage",
                description:null
            },
            {
                ref:"attr:ListGrid.booleanPartialImage",
                description:null
            },
            {
                ref:"attr:ListGrid.printBooleanTrueImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "method:DynamicForm.getField":{
        ref:"method:DynamicForm.getField",
        flags:"",
        description:" Synonym for dynamicForm.getItem()\n\n",
        name:"getField",
        seeAlso:[
            {
                ref:"method:DynamicForm.getItem",
                description:null
            }
        ],
        params:[
            {
                description:"name of the item you're looking for",
                optional:false,
                name:"itemName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"FormItem object or null if not found",
            type:"FormItem"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "items"
        ]
    },
    "attr:DetailViewer.labelAlign":{
        ref:"attr:DetailViewer.labelAlign",
        flags:"IRW",
        description:"Horizontal alignment of value-labels in this viewer.  If unspecified, defaults to \n <code>\"left\"</code> when in RTL mode and <code>\"right\"</code> otherwise.",
        name:"labelAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "values"
        ]
    },
    "attr:StretchImgButton.showDownIcon":{
        ref:"attr:StretchImgButton.showDownIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the mouse goes\n down on the button.",
        name:"showDownIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ListGridField.displayFormat":{
        ref:"attr:ListGridField.displayFormat",
        deprecated:"Use ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter')} and ${isc.DocUtils.linkForRef('attr:ListGridField.timeFormatter')}  instead.",
        flags:"IRWA",
        description:"For fields of type <code>\"date\"</code>, set this property to a valid\n ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to specify how the date should be formatted.<br>\n For fields of type <code>\"time\"</code>, set this property to a valid\n ${isc.DocUtils.linkForRef('type:TimeDisplayFormat','TimeDisplayFormat')} to specify how the time should be formatted.<br>\n If unset, display format may be set at the listGrid level via ${isc.DocUtils.linkForRef('attr:ListGrid.dateFormatter')}\n or ${isc.DocUtils.linkForRef('attr:ListGrid.timeFormatter')}.\n <p>\n If this field is editable the displayFormat will also be passed to the editor created\n to edit this field.  For dates you may also need to set ${isc.DocUtils.linkForRef('attr:ListGridField.inputFormat')}.",
        name:"displayFormat",
        seeAlso:[
            {
                ref:"attr:ListGridField.inputFormat",
                description:null
            },
            {
                ref:"attr:ListGrid.dateFormatter",
                description:null
            },
            {
                ref:"attr:ListGrid.timeFormatter",
                description:null
            }
        ],
        valueType:"varies",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:WebService.getSoapMessage":{
        ref:"method:WebService.getSoapMessage",
        flags:"A",
        description:" Return the SOAP message that will be formed from this WSRequest.\n \n",
        name:"getSoapMessage",
        seeAlso:[
        ],
        params:[
            {
                description:"web service request object",
                optional:false,
                name:"wsRequest",
                defaultValue:null,
                type:"WSRequest Properties"
            }
        ],
        returns:{
            description:"SOAP message",
            type:"String"
        },
        type:"method",
        definingClass:"class:WebService"
    },
    "attr:Calendar.showDateChooser":{
        ref:"attr:Calendar.showDateChooser",
        flags:"IR",
        description:"Determines whether the ${isc.DocUtils.linkForRef('attr:Calendar.dateChooser','dateChooser')} is displayed.",
        name:"showDateChooser",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "visibility"
        ]
    },
    "attr:TileGrid.canAcceptDroppedRecords":{
        ref:"attr:TileGrid.canAcceptDroppedRecords",
        flags:"IRW",
        description:"Indicates whether records can be dropped into this TileGrid.",
        name:"canAcceptDroppedRecords",
        setter:[
            "setCanAcceptDroppedRecords"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListMove')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "dragging"
        ]
    },
    "method:ValuesManager.synchronizeMembers":{
        ref:"method:ValuesManager.synchronizeMembers",
        flags:"",
        description:"   Update all of this ValuesManager's members to reflect the current values held by the\n   ValuesManager.  It is not normally necesary to manually synchronize members, but you\n   will need to do so if you switch off ${isc.DocUtils.linkForRef('attr:ValuesManager.autoSynchronize','automatic synchronization')}.\n",
        name:"synchronizeMembers",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "attr:OperationBinding.preventHTTPCaching":{
        ref:"attr:OperationBinding.preventHTTPCaching",
        flags:"IR",
        description:"Configures ${isc.DocUtils.linkForRef('attr:DataSource.preventHTTPCaching')} on a per-operationType basis.",
        name:"preventHTTPCaching",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "attr:Window.src":{
        ref:"attr:Window.src",
        flags:"IRW",
        description:"A URL to load as content for the Window's body.  If specified, this\n attribute will take precedence over the items attribute.\n <P>\n Note that setting window.src is essentially a shortcut for setting ${isc.DocUtils.linkForRef('attr:Window.items')}\n to a single HTMLflow with a specified ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL','contentsURL')}.",
        name:"src",
        setter:[
            "setSrc"
        ],
        seeAlso:[
            {
                ref:"attr:Window.contentsType",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "object:CalendarEvent":{
        methods:[
        ],
        ref:"object:CalendarEvent",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Calendar"
        ],
        attrs:[
            "attr:CalendarEvent.startDate",
            "attr:CalendarEvent.endDate",
            "attr:CalendarEvent.name",
            "attr:CalendarEvent.description",
            "attr:CalendarEvent.canEdit",
            "attr:CalendarEvent.canEditLane",
            "attr:CalendarEvent.backgroundColor",
            "attr:CalendarEvent.textColor",
            "attr:CalendarEvent.eventWindowStyle",
            "attr:CalendarEvent.lane"
        ],
        description:"A type of ${isc.DocUtils.linkForRef('object:Record')} which represents an event to occur at a specific time, displayed\n within the calendar.",
        name:"CalendarEvent",
        seeAlso:[
        ],
        type:"object",
        groups:[
            "data"
        ]
    },
    "class:ColorItem":{
        methods:[
            "method:ColorItem.pickerColorSelected"
        ],
        exampleConfig:"ColorItem.xml",
        ref:"class:ColorItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:ColorItem.showPickerIcon",
            "attr:ColorItem.pickerIconWidth",
            "attr:ColorItem.pickerIconHeight",
            "attr:ColorItem.pickerIconSrc",
            "attr:ColorItem.pickerIconPrompt",
            "attr:ColorItem.defaultPickerMode",
            "attr:ColorItem.allowComplexMode",
            "attr:ColorItem.supportsTransparency"
        ],
        description:"FormItem for selecting a color via a pop-up ColorPicker.",
        name:"ColorItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSourceField.canEdit":{
        ref:"attr:DataSourceField.canEdit",
        flags:"IR",
        description:"Controls whether, by default, DataBoundComponents consider this field editable. \n Set to <code>false</code> to draw this field read-only.  \n <p>\n For a field that should never be changed from the UI, consider using ${isc.DocUtils.linkForRef('attr:DataSourceField.canSave')} instead,\n which will both mark a field as non-editable and reject any attempt to programmatically\n change the value on the server (when using the SmartClient Server).\n <P>\n This attribute may not effect all dataBoundComponents - the \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.canEditFieldAttribute')} may be set at the component level to look\n for a different attribute on the dataSourceField, and components allow developers to explicitly\n override this default (see ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit')}. ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} for example).",
        name:"canEdit",
        seeAlso:[
            {
                ref:"attr:DataSourceField.canFilter",
                description:null
            },
            {
                ref:"attr:DataSourceField.canSave",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "attr:ListGridField.target":{
        ref:"attr:ListGridField.target",
        flags:"IRW",
        description:"By default, clicking a link rendered by this item opens it in a new browser window.  You\n can alter this behavior by setting this property.  The value of this property will be\n passed as the value to the <code>target</code> attribute of the anchor tag used to render\n the link.\n <P>\n If you set listGridField.target to \"javascript\", the default behavior is to catch and\n consume mouse-clicks that would result in the link being followed.  Instead, the\n ${isc.DocUtils.linkForRef('method:ListGrid.cellClick')} event is fired for the containing cell.",
        name:"target",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"_blank\"",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:ListGrid.setFieldProperties":{
        ref:"method:ListGrid.setFieldProperties",
        flags:"",
        description:" Dynamically set properties for a particular field. This method will update the fields\n header-button without having to explicitly reset the fields in the grid.  <smartgwt>\n The passed-in ${isc.DocUtils.linkForRef('object:ListGridField')} should contain just the minimal properties you want to\n change; do not take the original ListGridField, modify it, and just pass that to this\n function.</smartgwt>\n <P> \n NOTE: Where explicit setters exist for field properties (such as\n ${isc.DocUtils.linkForRef('method:ListGrid.resizeField')}, ${isc.DocUtils.linkForRef('method:ListGrid.setFieldTitle')}, ${isc.DocUtils.linkForRef('method:ListGrid.setFieldIcon')}, etc.) these should be\n used instead.\n\n",
        name:"setFieldProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the field, or index.",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number | String"
            },
            {
                description:"properties to apply to the header",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"ListGridField Properties"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.rowSpanEditMode":{
        ref:"attr:ListGrid.rowSpanEditMode",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.allowRowSpanning')} is enabled, this property may be used to specify\n editing behavior for cells that span multiple rows.",
        name:"rowSpanEditMode",
        seeAlso:[
        ],
        valueType:"RowSpanEditMode",
        defaultValue:"\"first\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:DrawItem.setLineOpacity":{
        ref:"method:DrawItem.setLineOpacity",
        flags:"",
        description:" Update lineOpacity for this drawItem.\n",
        name:"setLineOpacity",
        seeAlso:[
        ],
        params:[
            {
                description:"new opacity, as a number between 0 (transparent) and 1 (opaque).",
                optional:false,
                name:"opacity",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:Img.resetSrc":{
        ref:"method:Img.resetSrc",
        flags:"A",
        description:" Refresh the image being shown.  Call this when the ${isc.DocUtils.linkForRef('attr:Img.src')} attribute has not changed, but\n other state that affects the image URL (such as being selected) has changed.\n\n",
        name:"resetSrc",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Img",
        groups:[
            "appearance"
        ]
    },
    "class:DrawImage":{
        methods:[
            "method:DrawImage.getBoundingBox",
            "method:DrawImage.getCenter",
            "method:DrawImage.setSrc",
            "method:DrawImage.moveBy",
            "method:DrawImage.moveTo"
        ],
        ref:"class:DrawImage",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawImage.left",
            "attr:DrawImage.top",
            "attr:DrawImage.width",
            "attr:DrawImage.height",
            "attr:DrawImage.title",
            "attr:DrawImage.src"
        ],
        description:"DrawItem subclass to render embedded images.",
        name:"DrawImage",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawItem"
    },
    "method:Array.duplicate":{
        ref:"method:Array.duplicate",
        flags:"A",
        description:" Return an Array that is a shallow copy of the list, that is, containing the same items.\n\n",
        name:"duplicate",
        seeAlso:[
        ],
        returns:{
            description:"new array, pointing to the same items",
            type:"Array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:Calendar.showQuickEventDialog":{
        ref:"attr:Calendar.showQuickEventDialog",
        flags:"IR",
        description:"Determines whether the quick event dialog is displayed when a time is clicked. If this is\n false, the full event editor is displayed.",
        name:"showQuickEventDialog",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "editing"
        ]
    },
    "method:DataBoundComponent.selectRange":{
        ref:"method:DataBoundComponent.selectRange",
        flags:"",
        description:" Select a contiguous range of records by index\n",
        name:"selectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start of selection range",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection range (non-inclusive)",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:FormItem.name":{
        ref:"attr:FormItem.name",
        flags:"IR",
        description:"Name for this form field.\n <P>\n The FormItem's name determines the name of the property it edits within the form. Must be\n unique within the form as well as a valid JavaScript identifier, as specified by ECMA-262\n Section 7.6 (the <smartclient>${isc.DocUtils.linkForRef('classMethod:String.isValidID')}</smartclient><smartgwt>StringUtil.isValidID()</smartgwt>\n function can be used to test whether a name is a valid JavaScript identifier).",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "basics"
        ]
    },
    "attr:ImgButton.showTitle":{
        ref:"attr:ImgButton.showTitle",
        flags:"IRWA",
        description:"Determines whether any specified ${isc.DocUtils.linkForRef('method:StatefulCanvas.getTitle','title')} will be \n displayed for this component.<br>\n Applies to Image-based components only, where the title will be rendered out in a label\n floating over the component",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton"
    },
    "method:ListGrid.setFieldState":{
        ref:"method:ListGrid.setFieldState",
        flags:"",
        description:" Sets some presentation properties (visibility, width, userFormula and userSummary) of the\n listGrid fields based on the ${isc.DocUtils.linkForRef('type:ListGridFieldState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to ${isc.DocUtils.linkForRef('method:ListGrid.getFieldState')}.\n\n",
        name:"setFieldState",
        seeAlso:[
            {
                ref:"method:ListGrid.getFieldState",
                description:null
            }
        ],
        params:[
            {
                description:"state to apply to the listGrid's fields.",
                optional:false,
                name:"fieldState",
                defaultValue:null,
                type:"ListGridFieldState"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:TreeGrid.canDropOnLeaves":{
        ref:"attr:TreeGrid.canDropOnLeaves",
        flags:"IRWA",
        description:"Whether drops are allowed on leaf nodes.\n <P>\n Dropping is ordinarily not allowed on leaf nodes unless ${isc.DocUtils.linkForRef('attr:TreeGrid.canReorderRecords')} is\n set.  \n <P>\n The default action for a drop on a leaf node is to place the node in that leaf's parent\n folder.  This can be customized by overriding ${isc.DocUtils.linkForRef('method:TreeGrid.folderDrop')}.\n <P>\n Note that enabling <code>canDropOnLeaves</code> is usually only appropriate where you\n intend to add a custom ${isc.DocUtils.linkForRef('method:TreeGrid.folderDrop')} implementation that <b>does not</b> add a\n child node under the leaf.  If you want to add a child nodes to a leaf, instead of\n enabling canDropOnLeaves, use empty folders instead - see ${isc.DocUtils.linkForRef('method:Tree.isFolder')} for how\n to control whether a node is considered a folder.",
        name:"canDropOnLeaves",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "method:Canvas.getHSnapOrigin":{
        ref:"method:Canvas.getHSnapOrigin",
        flags:"",
        description:" Get an offset to be used when calculating snap positioning. Returns 0 by default.\n\n",
        name:"getHSnapOrigin",
        seeAlso:[
            {
                ref:"method:Canvas.getHSnapPosition",
                description:null
            }
        ],
        params:[
            {
                description:"the child that is being snapped",
                optional:true,
                name:"snapChild",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"The offset to use when snapping",
            type:"int"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "method:SectionStack.reorderSection":{
        ref:"method:SectionStack.reorderSection",
        deprecated:"As of SmartClient version 5.5, use ${isc.DocUtils.linkForRef('method:SectionStack.moveSection')}.",
        flags:"",
        description:"\n Reorder the sections by shifting the specified section to a new position\n\n",
        name:"reorderSection",
        seeAlso:[
        ],
        params:[
            {
                description:"Section to move.  You can pass the position                       of the section in the SectionStack or the name of the section.",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"Integer or String"
            },
            {
                description:"new position index for the section.",
                optional:false,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:SectionStack"
    },
    "classMethod:Date.getLogicalDateOnly":{
        ref:"classMethod:Date.getLogicalDateOnly",
        flags:"",
        description:" Get a logical date - a value appropriate for a DataSourceField of type \"date\" - from a\n datetime value (a value from a DataSourceField of type \"datetime\").\n <P>\n This method correctly takes into account the current\n ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone','display timezone')}, specifically, the returned Date\n will reflect the day, month and year that appears when the datetime is rendered\n by a SmartClient component rather than the date values that would be returned by\n Date.getDay() et al (which can differ, since getDay() uses the browser's local timezone).\n <P>\n For further background on date, time and datetime types, storage and transmission, see\n ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','this overview')}.\n\n",
        name:"getLogicalDateOnly",
        seeAlso:[
        ],
        params:[
            {
                description:"a Date instance representing a datetime value",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"a Date instance representing just the date portion of the datetime value, as                a logical date",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:SelectItem.showOptionsFromDataSource":{
        ref:"attr:SelectItem.showOptionsFromDataSource",
        flags:"IRWA",
        description:"If this item is part of a databound form, and has a specified <code>valueMap</code>,\n by default we show the valueMap options in the pickList for the item.\n Setting this property to true will ensure that the options displayed in our pickList\n are derived from the form's <code>dataSource</code>.",
        name:"showOptionsFromDataSource",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "databinding"
        ]
    },
    "type:CurrentPane":{
        ref:"type:CurrentPane",
        values:[
            {
                description:"${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane')} is the most recently shown",
                value:"\"navigation\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:SplitPane.listPane')} is the most recently shown",
                value:"\"list\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:SplitPane.detailPane')} is the most recently shown",
                value:"\"detail\""
            }
        ],
        description:"Possible values for the current pane showing in a ${isc.DocUtils.linkForRef('class:SplitPane')}.  See\n ${isc.DocUtils.linkForRef('attr:SplitPane.currentPane')} for details.",
        name:"CurrentPane",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:FileItem.multiple":{
        ref:"attr:FileItem.multiple",
        flags:"IR",
        description:"When true, allow the file-selection dialog shelled by the browser to select multiple \n files.\n <P>\n Support is not full-cycle at the server - that is, there are server APIs for retrieving\n each file that was uploaded, but no built-in support for storing multiple files against\n a single DataSource field.  However, you can write custom server DMI code to do\n something with the files - for instance, you could create multiple new DataSource \n records for each file via a server DMI like this below:\n\n <pre>\n    String fileNameStr = (String)dsRequest.getValues().get(\"image_filename\").toString();\n\n    String[] fileNames = fileNameStr.split(\", \");\n    List files = dsRequest.getUploadedFiles();\n\n    for (int i = 0; i < files.size(); i++) {\n        ISCFileItem file = (ISCFileItem)files.get(i);\n        InputStream fileData = file.getInputStream();\n        DSRequest inner = new DSRequest(\"mediaLibrary\", \"add\");\n        Map values = new HashMap();\n        values.put(\"title\", dsRequest.getValues().get(\"title\"));\n        values.put(\"image\", fileData);\n        values.put(\"image_filename\", fileNames[i]);\n        values.put(\"image_filesize\", file.getSize());\n        values.put(\"image_date_created\", new Date());\n        \n        inner.setValues(values);\n        inner.execute();\n    }\n    \n    DSResponse dsResponse = new DSResponse();\n    \n    dsResponse.setStatus(0);\n\n    return dsResponse;\n </pre>",
        name:"multiple",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FileItem"
    },
    "attr:Splitbar.target":{
        ref:"attr:Splitbar.target",
        flags:"R",
        description:"When a <code>Splitbar</code> is created by a layout, the <code>target</code> property\n of the Splitbar will be a pointer to the member for which it is acting as a resizeBar.\n The Splitbar will be positioned next to its target, and will resize it on drag completion.\n <P>\n See ${isc.DocUtils.linkForRef('attr:Layout.resizeBarClass')},  ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar')} and \n ${isc.DocUtils.linkForRef('attr:Canvas.resizeBarTarget')} for details on configuring the resize bars shown in Layouts.",
        name:"target",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar"
    },
    "attr:Canvas.edgeShowCenter":{
        ref:"attr:Canvas.edgeShowCenter",
        flags:"IR",
        description:"Whether to show media in the center section, that is, behind the decorated Canvas.",
        name:"edgeShowCenter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('corners')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:Toolbar.canAcceptDrop":{
        ref:"attr:Toolbar.canAcceptDrop",
        flags:"IRWA",
        description:"If true, items (buttons) can be dropped into this toolbar, and the toolbar will\n show a drop line at the drop location.  Override drop() to decide what happens when the\n item is dropped.",
        name:"canAcceptDrop",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Toolbar",
        groups:[
            "dragndrop"
        ]
    },
    "class:TilePalette":{
        methods:[
        ],
        ref:"class:TilePalette",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools/Palette"
        ],
        attrs:[
        ],
        description:"A ${isc.DocUtils.linkForRef('class:TileGrid')} that implements the ${isc.DocUtils.linkForRef('interface:Palette')} behavior, so it can be used as the source for \n drag and drop instantiation of components when combined with an ${isc.DocUtils.linkForRef('interface:EditContext')} as \n the drop target.\n <P>\n Each ${isc.DocUtils.linkForRef('attr:TileGrid.tile')} can be a ${isc.DocUtils.linkForRef('object:PaletteNode')}.",
        name:"TilePalette",
        implementsInterfaces:[
            "Palette"
        ],
        seeAlso:[
        ],
        type:"class",
        groups:[
            "devTools"
        ]
    },
    "method:DataBoundComponent.getFieldNum":{
        ref:"method:DataBoundComponent.getFieldNum",
        flags:"",
        description:" Find the index of a currently visible field.\n\n",
        name:"getFieldNum",
        seeAlso:[
        ],
        params:[
            {
                description:"field name or field",
                optional:false,
                name:"fieldID",
                defaultValue:null,
                type:"String || Field"
            }
        ],
        returns:{
            description:"index of field within currently visible fields",
            type:"int"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ListGridField.canSort":{
        ref:"attr:ListGridField.canSort",
        flags:"IRW",
        description:"Enables or disables sorting by this column. If false, interactive\n  sorting via header-clicks or menu-items will have no effect, but direct scripted calls\n  to ${isc.DocUtils.linkForRef('method:ListGrid.sort','sort()')} or ${isc.DocUtils.linkForRef('method:ListGrid.setSort','setSort()')} will work as\n  expected.",
        name:"canSort",
        seeAlso:[
            {
                ref:"method:ListGrid.sort",
                description:null
            },
            {
                ref:"attr:ListGrid.canSort",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "sorting"
        ]
    },
    "attr:TreeGrid.separateFolders":{
        ref:"attr:TreeGrid.separateFolders",
        flags:"IR",
        description:"If specified, this attribute will override ${isc.DocUtils.linkForRef('attr:Tree.separateFolders')} on the\n data for this treeGrid.\n <P>\n Specifies whether folders and leaves should be segregated in the treeGrid display.\n Use ${isc.DocUtils.linkForRef('attr:Tree.sortFoldersBeforeLeaves')} to customize whether folders appear before \n or after their sibling leaves.\n <P>\n If unset, at the treeGrid level, the property can be set directly on\n ${isc.DocUtils.linkForRef('attr:TreeGrid.data','the tree data object')} or for dataBound TreeGrids on the\n ${isc.DocUtils.linkForRef('attr:TreeGrid.dataProperties')}.",
        name:"separateFolders",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeField"
        ]
    },
    "attr:Img.name":{
        ref:"attr:Img.name",
        flags:"IA",
        description:"The value of this attribute is specified as the value of the 'name' attribute in the\n resulting HTML.\n <p>\n Note: this attribute is ignored if the imageType is set to \"tile\"",
        name:"name",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"main\"",
        type:"attr",
        definingClass:"class:Img"
    },
    "attr:ListGrid.linkTextProperty":{
        ref:"attr:ListGrid.linkTextProperty",
        flags:"IRW",
        description:"Property name on a record that will hold the link text for that record.\n <P>\n This property is configurable to avoid possible collision with data values in the\n record.\n <P>\n Use ${isc.DocUtils.linkForRef('attr:ListGridField.linkTextProperty')} if you have more than one link field and",
        name:"linkTextProperty",
        seeAlso:[
            {
                ref:"type:ListGridFieldType",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            },
            {
                ref:"attr:ListGridField.linkText",
                description:null
            },
            {
                ref:"attr:ListGridField.linkTextProperty",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"linkText\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "display_values"
        ]
    },
    "attr:DynamicForm.cancelParamName":{
        ref:"attr:DynamicForm.cancelParamName",
        flags:"IRW",
        description:"The name of the special field sent to the server as part of ${isc.DocUtils.linkForRef('method:DynamicForm.cancel')}",
        name:"cancelParamName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"org.apache.struts.taglib.html.CANCEL\"",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:ListGrid.getSortState":{
        ref:"method:ListGrid.getSortState",
        flags:"",
        description:" Returns a snapshot of the current sort state within this listGrid as\n a ${isc.DocUtils.linkForRef('type:ListGridSortState')} object.<br>\n This object can be passed to ${isc.DocUtils.linkForRef('method:ListGrid.setSortState')} to reset this grid's sort to\n the current state (assuming the same fields are present in the grid).<br>\n",
        name:"getSortState",
        seeAlso:[
            {
                ref:"method:ListGrid.setSortState",
                description:null
            }
        ],
        returns:{
            description:"current sort state for the grid.",
            type:"ListGridSortState"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "method:EditContext.serializeAllEditNodes":{
        ref:"method:EditContext.serializeAllEditNodes",
        flags:"",
        description:" Serialize the tree of ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} to an XML representation\n of ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')}. The result can be supplied to \n ${isc.DocUtils.linkForRef('method:EditContext.addPaletteNodesFromXML','addPaletteNodesFromXML()')} to recreate\n the EditNodes.\n\n",
        name:"serializeAllEditNodes",
        seeAlso:[
            {
                ref:"method:EditContext.addPaletteNodesFromXML",
                description:null
            }
        ],
        params:[
            {
                description:"If true, specify DataSources in full rather than                               assuming they can be downloaded from the server.\n                               Defaults to false.",
                optional:true,
                name:"serverless",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"an XML representation of PaletteNodes which can be used to                  recreate the tree of EditNodes.",
            type:"String"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:FilterClause.fieldPickerProperties":{
        ref:"attr:FilterClause.fieldPickerProperties",
        flags:"IR",
        description:"Properties to combine with the ${isc.DocUtils.linkForRef('class:FieldPicker')} autoChild FormItem.",
        name:"fieldPickerProperties",
        seeAlso:[
        ],
        valueType:"FormItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:DataBoundComponent.descriptionField":{
        ref:"attr:DataBoundComponent.descriptionField",
        flags:"IR",
        description:"Name of the field that has a long description of the record, or has the primary text data\n value for a record that represents an email message, SMS, log or similar.\n <P>\n This attribute has the same function as ${isc.DocUtils.linkForRef('attr:DataSource.descriptionField')} but can be\n set for a component with no dataSource, or can be used to override the dataSource setting.",
        name:"descriptionField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ValuesManager.removeOperation":{
        ref:"attr:ValuesManager.removeOperation",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} to use when performing remove operations.",
        name:"removeOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager",
        groups:[
            "operations"
        ]
    },
    "attr:ListGrid.rollOverCanvas":{
        ref:"attr:ListGrid.rollOverCanvas",
        flags:"RA",
        getter:[
            "getRollOverCanvas"
        ],
        description:"AutoChild created and embedded in the grid if ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOver','showRollOver')}\n is <code>true</code> and ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOverCanvas','showRollOverCanvas')} is\n <code>true</code>. This component will be created and displayed above the current rollOver\n row or cell.\n <p>\n The <code>rollOverCanvas</code> has the following read-only attributes set:<br>\n - <code>this.grid</code> - a pointer to the grid<br>\n - <code>this.record</code> - a pointer to the current roll over record object in the grid",
        name:"rollOverCanvas",
        seeAlso:[
            {
                ref:"attr:ListGrid.rollUnderCanvas",
                description:null
            }
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridRollOverReticleEffect')}",
            "${isc.DocUtils.linkForExampleId('rolloverControls')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "method:MenuBar.setButtons":{
        ref:"method:MenuBar.setButtons",
        flags:"",
        description:" Invalid to call on Menubar, use ${isc.DocUtils.linkForRef('method:MenuBar.setMenus')} instead.\n",
        name:"setButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"invalid; do not call",
                optional:true,
                name:"newButtons",
                defaultValue:null,
                type:"Array of Button Properties"
            }
        ],
        type:"method",
        definingClass:"class:MenuBar"
    },
    "attr:RadialGradient.fx":{
        ref:"attr:RadialGradient.fx",
        flags:"IR",
        description:"x coordinate of inner radial",
        name:"fx",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:RadialGradient"
    },
    "attr:DrawItem.fillOpacity":{
        ref:"attr:DrawItem.fillOpacity",
        flags:"IRW",
        description:"Opacity of the fillColor, as a number between 0 (transparent) and 1 (opaque).",
        name:"fillOpacity",
        setter:[
            "setFillOpacity"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1.0",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "fill"
        ]
    },
    "attr:ColorPicker.lumFieldTitle":{
        ref:"attr:ColorPicker.lumFieldTitle",
        flags:"IR",
        description:"The title for the 'Luminosity' field in the complex chooser.",
        name:"lumFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Luminosity\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:RadialGradient.fy":{
        ref:"attr:RadialGradient.fy",
        flags:"IR",
        description:"y coordinate of inner radial",
        name:"fy",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:RadialGradient"
    },
    "method:MultiComboBoxItem.setAutoFitButtons":{
        ref:"method:MultiComboBoxItem.setAutoFitButtons",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.autoFitButtons')} property.\n",
        name:"setAutoFitButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to autofit the buttons",
                optional:false,
                name:"autoFitButtons",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:ListGridRecord._canEdit":{
        ref:"attr:ListGridRecord._canEdit",
        flags:"IR",
        description:"Default property name denoting whether this record can be edited. Property name may be\n modified for the grid via ${isc.DocUtils.linkForRef('attr:ListGrid.recordEditProperty')}.",
        name:"_canEdit",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord",
        groups:[
            "editing"
        ]
    },
    "classAttr:DataSource.maxFileSizeExceededMessage":{
        ref:"classAttr:DataSource.maxFileSizeExceededMessage",
        flags:"IRW",
        description:"A message returned by a DataSource when an uploaded file exceeds dataSourceField.maxFileSize",
        name:"maxFileSizeExceededMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Size of '${uploadedFileName}' (${uploadedFileSize}) exceeded maximum allowed file size of ${maxFileSize}\"",
        type:"classAttr",
        definingClass:"class:DataSource",
        groups:[
            "i18nMessages"
        ]
    },
    "type:Properties":{
        ref:"type:Properties",
        description:"When the type for a parameter mentions \"properties\" as in \"ListGrid Properties\" or\n \"RPCRequest Properties\", it means that the expected value is a JavaScript Object\n containing any set of properties generally legal when creating an object of that type.\n <P>\n For example, the first parameter of ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendRequest')} is of type\n \"RPCRequest Properties\".  This means it should be called like:\n <pre>\n    isc.RPCManager.sendRequest({\n        actionURL : \"/foo.do\",\n        showPrompt:false\n    });</pre>\n ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL','actionURL')} and ${isc.DocUtils.linkForRef('attr:RPCRequest.showPrompt','showPrompt')} are\n properties of ${isc.DocUtils.linkForRef('class:RPCRequest')}.\n <P>\n Note that the notation shown above is an example of a\n ${isc.DocUtils.linkForRef('type:ObjectLiteral','JavaScript object literal')}.",
        name:"Properties",
        seeAlso:[
        ],
        type:"type"
    },
    "group:buttons":{
        ref:"group:buttons",
        refs:[
            "method:Window.closeClick",
            "method:Dialog.saveData",
            "method:Dialog.closeClick",
            "method:Dialog.cancelClick",
            "method:Dialog.okClick",
            "method:Dialog.applyClick",
            "method:Dialog.yesClick",
            "method:Dialog.noClick",
            "method:Dialog.doneClick",
            "method:Dialog.buttonClick",
            "method:Toolbar.getButton"
        ],
        name:"buttons",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:CanvasItem.autoDestroy":{
        ref:"attr:CanvasItem.autoDestroy",
        flags:"IRWA",
        description:"Should this item's ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas','canvas')} be automatically destroyed when the item \n is destroyed? Form items are destroyed automatically when a call to\n ${isc.DocUtils.linkForRef('method:DynamicForm.setItems')} removes them from their parent form, or if their\n parent form is destroyed. This property governs whether, when this occurs, \n the item's canvas should also be ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroyed')}.\n <P>\n Setting this property to true\n is typically appropriate for cases where a custom CanvasItem automatically creates\n its canvas as part of its initialization flow.\n Note that once a canvas has been destroyed it can not be re-used elsewhere within\n an application.",
        name:"autoDestroy",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "class:SubmitItem":{
        methods:[
        ],
        ref:"class:SubmitItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:SubmitItem.title"
        ],
        description:"Button that saves the data in the form, by calling ${isc.DocUtils.linkForRef('method:DynamicForm.submit')} when clicked.\n ${isc.DocUtils.linkForRef('method:DynamicForm.submit')} for details on how to control what happens when a form is\n submitted.",
        name:"SubmitItem",
        seeAlso:[
            {
                ref:"group:operations",
                description:null
            }
        ],
        type:"class"
    },
    "attr:DrawGroup.knobs":{
        ref:"attr:DrawGroup.knobs",
        flags:"IR",
        description:"<b>NOTE:</b> DrawGroups do not support knobs.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawGroup"
    },
    "type:CSSColor":{
        ref:"type:CSSColor",
        description:"CSS color specification applied to a specific HTML element on this page.\n <P>\n This is a string matching the syntax as specified in CSS1, and can be\n formatted in one of the following ways:\n <ul>\n <li>A keyword color, &ldquo;white&rdquo;</li>\n <li>Six-digit hex notation, &ldquo;#ffffff&rdquo;</li>\n <li>Three-digit hex notation, &ldquo;#fff&rdquo;</li>\n <li>8-bit decimal notation, &ldquo;rgb(255, 255, 255)&rdquo;</li>\n <li>Percentage notation, &ldquo;rgb(100%, 100%, 100%)&rdquo;</li>\n </ul>",
        name:"CSSColor",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "method:DrawGroup.mouseDown":{
        ref:"method:DrawGroup.mouseDown",
        flags:"",
        description:" Notification fired when the user presses the left mouse button on this DrawGroup.\n <p>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n",
        name:"mouseDown",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        platformNotes:"If the end user system has only one mouse button, then it is considered the \"left\"                mouse button (and this method would execute when it is pressed on this widget).",
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "method:ComboBoxItem.getDisplayFieldName":{
        ref:"method:ComboBoxItem.getDisplayFieldName",
        flags:"A",
        description:" Returns the <code>displayField</code> for this item. This will typically be\n specified explicitly via the ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} attribute. However, if \n that property is unset, and the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item is \n hidden in the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}, this method\n will return the title field for the <code>optionDataSource</code>.\n\n",
        name:"getDisplayFieldName",
        seeAlso:[
        ],
        returns:{
            description:"display field name, or null if there is no separate display field to use.",
            type:"String"
        },
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "attr:Calendar.datePickerButton":{
        ref:"attr:Calendar.datePickerButton",
        flags:"IR",
        description:"An ${isc.DocUtils.linkForRef('class:ImgButton','ImgButton')} that appears above the various views of the\n calendar and offers alternative access to a ${isc.DocUtils.linkForRef('class:DateChooser')} to pick the current day.",
        name:"datePickerButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "group:fields":{
        ref:"group:fields",
        refs:[
            "attr:DataSource.fields",
            "attr:DataSource.inheritsFrom",
            "attr:DataSource.inheritanceMode",
            "attr:DataSource.useFlatFields",
            "attr:DataSource.showLocalFieldsOnly",
            "attr:DataSource.useParentFieldOrder",
            "attr:DataSource.autoDeriveSchema",
            "attr:DataSource.schemaBean",
            "attr:DataSource.idClassName",
            "type:DSInheritanceMode"
        ],
        name:"fields",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ImgButton.iconOrientation":{
        ref:"attr:ImgButton.iconOrientation",
        flags:"IR",
        description:"If this button is showing an icon should it appear to the left or right of the title?\n valid options are <code>\"left\"</code> and <code>\"right\"</code>.",
        name:"iconOrientation",
        setter:[
            "setIconOrientation"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"left\"",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Toolbar.getButton":{
        ref:"method:Toolbar.getButton",
        flags:"",
        description:"          Retrieves a button widget instance (within this toolbar) from the name / ID / index / \n          descriptor object for the button (as with the getButtonNumber() method)\n          This provides a way to access a toolbar button's properties and methods directly.\n",
        name:"getButton",
        seeAlso:[
            {
                ref:"method:Toolbar.getButtonNumber",
                description:null
            }
        ],
        params:[
            {
                description:"identifier for the button to retrieve",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"number | string | object"
            }
        ],
        returns:{
            description:"the button, or null if the button wasn't found",
            type:"Button"
        },
        type:"method",
        definingClass:"class:Toolbar",
        groups:[
            "buttons"
        ]
    },
    "method:ListGrid.formulaUpdated":{
        ref:"method:ListGrid.formulaUpdated",
        flags:"",
        description:" Notification fired when a user either creates a new formula field or edits an existing formula field.\n",
        name:"formulaUpdated",
        seeAlso:[
        ],
        params:[
            {
                description:"the formula field",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"the new or updated formula definition",
                optional:false,
                name:"formula",
                defaultValue:null,
                type:"UserFormula"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:CubeGrid.facetHasSelection":{
        ref:"method:CubeGrid.facetHasSelection",
        flags:"",
        description:" Return whether any facet value for this facet is selected in headers.  If no facetId passed,\n return whether any facet has a selection.\n\n  <br><i>methodType</i> tester\n",
        name:"facetHasSelection",
        seeAlso:[
        ],
        params:[
            {
                description:"Id for facet to test",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if any facet value in this header is selected",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:ListGrid.autoFitExtraRecords":{
        ref:"attr:ListGrid.autoFitExtraRecords",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData')} is set to <code>\"vertical\"</code> or <code>\"both\"</code>\n this property specifies the number of additional records for which the grid\n will expand. If more\n records are present, scrolling will be introduced to reach them as normal.",
        name:"autoFitExtraRecords",
        setter:[
            "setAutoFitExtraRecords"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "method:ListGrid.removeRecordClick":{
        ref:"method:ListGrid.removeRecordClick",
        flags:"",
        description:" Method fired when the user clicks the \"remove\" icon if ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is true.\n Default behavior will remove the record from the data set, or if we're\n ${isc.DocUtils.linkForRef('attr:ListGrid.deferRemoval','deferring removal')} mark record as removed [or for records already\n marked as removed, clear this removed marker].\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.warnOnRemoval')} is set, this method will also show a warning dialog to users\n allowing them to cancel the removal.\n <P>\n This method may be called directly to cause a record to be removed or marked for removal\n as if the user had hit the \"remove\" icon.\n <P>\n <smartgwt>To be notified when a \"remove\" click occurs, developers\n should add a\n {@link com.smartgwt.client.widgets.grid.ListGrid#addRemoveRecordClickHandler * RemoveRecordClickHandler}.\n </smartgwt>\n <smartclient>May be overridden to perform custom logic on remove click.</smartclient>\n",
        name:"removeRecordClick",
        seeAlso:[
        ],
        params:[
            {
                description:"Row on which the icon was clicked",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:FacetChart.pieSliceProperties":{
        ref:"attr:FacetChart.pieSliceProperties",
        flags:"IR",
        description:"Properties for pie slices",
        name:"pieSliceProperties",
        seeAlso:[
        ],
        valueType:"DrawSector Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DrawRect.setRounding":{
        ref:"method:DrawRect.setRounding",
        flags:"",
        description:" Setter method for ${isc.DocUtils.linkForRef('attr:DrawRect.rounding')}\n",
        name:"setRounding",
        seeAlso:[
        ],
        params:[
            {
                description:"new rounding value. Should be between zero (a rectangle) and 1 (shorter   edge is a semicircle)",
                optional:false,
                name:"rounding",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:FieldPicker.instructions":{
        ref:"attr:FieldPicker.instructions",
        flags:"IR",
        description:null,
        name:"instructions",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Drag and drop or use arrows to move fields.  Drag reorder to change field order.\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.isEnabled":{
        ref:"method:Canvas.isEnabled",
        deprecated:"As of SmartClient version 5.5 deprecated in favor of ${isc.DocUtils.linkForRef('method:Canvas.isDisabled')}.",
        flags:"",
        description:" Returns true if the widget and all widgets above it in the containment hierarchy are enabled.\n Returns false otherwise.\n",
        name:"isEnabled",
        seeAlso:[
        ],
        returns:{
            description:"true if the widget and all widgets above it in the containment hierarchy                      are enabled; false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "enable"
        ]
    },
    "classAttr:RPCManager.timeoutErrorMessage":{
        ref:"classAttr:RPCManager.timeoutErrorMessage",
        flags:"IRW",
        description:"Default message displayed to user when an operation fails to return from the server within\n the timeout period specified by ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTimeout')}.",
        name:"timeoutErrorMessage",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.defaultTimeout",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"Operation timed out\"",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:SectionHeader.controlsLayout":{
        ref:"attr:SectionHeader.controlsLayout",
        flags:"IR",
        description:"A ${isc.DocUtils.linkForRef('class:Layout')} containing specified ${isc.DocUtils.linkForRef('attr:SectionHeader.controls')} if any.  Sets\n ${isc.DocUtils.linkForRef('attr:Layout.membersMargin')}:5, ${isc.DocUtils.linkForRef('attr:Layout.defaultLayoutAlign')}:\"center\", and\n RTL-sensitive ${isc.DocUtils.linkForRef('attr:Layout.align')} (right by default).",
        name:"controlsLayout",
        seeAlso:[
        ],
        valueType:"AutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SectionHeader"
    },
    "attr:Canvas.backgroundColor":{
        ref:"attr:Canvas.backgroundColor",
        flags:"IRW",
        description:"The background color for this widget. It corresponds to the CSS background-color\n attribute. You can set this property to an RGB value (e.g. #22AAFF) or a named color\n (e.g. red) from a list of browser supported color names.",
        name:"backgroundColor",
        setter:[
            "setBackgroundColor"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.valueMap":{
        ref:"attr:ListGridField.valueMap",
        flags:"IRW",
        description:"Array of legal values for this field, or an Object where each property maps a stored\n value to a user-displayable value.<br>\n Note that if this field is editable (see ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit')},\n ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit')}), editors displayed for this field will pick up their\n valueMap either from this value or from ${isc.DocUtils.linkForRef('attr:ListGridField.editorValueMap')}.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap')}.",
        name:"valueMap",
        seeAlso:[
            {
                ref:"method:ListGrid.setValueMap",
                description:null
            },
            {
                ref:"method:ListGrid.getDisplayValue",
                description:null
            }
        ],
        valueType:"Array of Object",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('listType')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "group:event handling":{
        ref:"group:event handling",
        refs:[
            "method:TreeGrid.willAcceptDrop",
            "method:StatefulCanvas.getActionType",
            "method:StatefulCanvas.setActionType",
            "method:StatefulCanvas.addToRadioGroup",
            "method:StatefulCanvas.removeFromRadioGroup",
            "method:Button.addToRadioGroup",
            "method:Button.removeFromRadioGroup",
            "method:Button.setActionType",
            "method:Button.getActionType",
            "method:Toolbar.itemClick",
            "method:Toolbar.itemDoubleClick",
            "method:ImgButton.addToRadioGroup",
            "method:ImgButton.removeFromRadioGroup",
            "method:ImgButton.setActionType",
            "method:ImgButton.getActionType",
            "method:StretchImgButton.addToRadioGroup",
            "method:StretchImgButton.removeFromRadioGroup",
            "method:StretchImgButton.setActionType",
            "method:StretchImgButton.getActionType",
            "attr:StatefulCanvas.actionType",
            "attr:StatefulCanvas.radioGroup",
            "attr:Button.radioGroup",
            "attr:Button.actionType",
            "attr:ImgButton.radioGroup",
            "attr:ImgButton.actionType",
            "attr:StretchImgButton.radioGroup",
            "attr:StretchImgButton.actionType",
            "type:SelectionType"
        ],
        name:"event handling",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ResultTree.canReturnOpenSubfoldersProperty":{
        ref:"attr:ResultTree.canReturnOpenSubfoldersProperty",
        flags:"IR",
        description:"When using ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"paged\"')} and providing multiple levels of the tree\n in one DSResponse, <code>canReturnOpenSubfoldersProperty</code> may be set on any\n folder to indicate whether child folders might be returned by the server already open.\n If the property is set to false on a folder then subfolders of that folder are never\n allowed to be returned already open.  This enables the paging mechanism to be more\n efficient in the amount of data that it requests from the server.\n <P>\n For example, setting the <code>canReturnOpenSubfoldersProperty</code> value to\n <code>false</code> on a node is appropriate if the server-side code determines that the\n the node's children consist of entirely leaf nodes.",
        name:"canReturnOpenSubfoldersProperty",
        seeAlso:[
            {
                ref:"attr:ResultTree.canReturnOpenFolders",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"canReturnOpenSubfolders\"",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "attr:LoginDialog.showRegistrationLink":{
        ref:"attr:LoginDialog.showRegistrationLink",
        flags:"IR",
        description:"If true, display a ${isc.DocUtils.linkForRef('class:LinkItem')} (${isc.DocUtils.linkForRef('attr:LoginDialog.registrationItem')})\n meant for the user to click if the user wishes to register a new account.\n The text of the link is controlled by\n ${isc.DocUtils.linkForRef('attr:LoginDialog.registrationItemTitle')}. If clicked, the link will fire\n ${isc.DocUtils.linkForRef('method:LoginDialog.register')}.",
        name:"showRegistrationLink",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:CubeGrid.getCellFacetValues":{
        ref:"method:CubeGrid.getCellFacetValues",
        flags:"",
        description:" Given a cell coordinate within this CubeGrid return a ${isc.DocUtils.linkForRef('object:FacetValueMap')}\n indicating the facet values for the cell.\n",
        name:"getCellFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column index of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"facet values for the specified cell. Returns null if the specified cell    is not present in the grid.",
            type:"FacetValueMap"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:DataSourceField.sequenceName":{
        ref:"attr:DataSourceField.sequenceName",
        flags:"IR",
        description:"For a DataSource with ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType:\"sql\"')} with a field of type\n \"sequence\", the name of the SQL sequence that should be used when inserting new records into\n this table.\n <P>\n Note that this is never required for SQL tables that are generated from SmartClient\n DataSources (a default sequence name of tableName + \"_\" + columnName is chosen, but see the\n notes below regarding this), and is never required for databases where inserting null into a \n sequence column is sufficient (MySQL, SQL Server, DB2 and others). \n <P>\n You would only need to set sequenceName if you are integrating with a pre-existing table\n stored in a database where the sequence must be named for insertion to work (Oracle,\n Postgres, Firebird) OR you are trying to use the same sequence across multiple DataSources.\n <P>\n <b>Note:</b> If you specify the <code>sql.{database type}.sequence.name.prefix</code> and/or \n <code>sql.{database type}.sequence.name.suffix</code> properties in your \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file,the generated sequence name will include the prefix and/or\n suffix.  For example, with a prefix of \"order_system_\" and a suffix of \"_seq\", the sequence\n generated for column \"orderNumber\" on table \"orders\" would be:<pre>\n     order_system_orders_orderNumber_seq\n </pre>",
        name:"sequenceName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "sqlDataSource"
        ]
    },
    "attr:ListGrid.groupTitleColumnProperties":{
        ref:"attr:ListGrid.groupTitleColumnProperties",
        flags:"IR",
        description:"Custom properties for the automatically generated <code>groupTitleColumn</code>.\n <P>\n See ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupTitleColumn')} for an overview of the groupTitleColumn.",
        name:"groupTitleColumnProperties",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:FormItem.locateItemBy":{
        ref:"attr:FormItem.locateItemBy",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('classMethod:AutoTest.getElement')} is used to parse locator strings generated by\n link{isc.AutoTest.getLocator()} for this form item, should the item be identified?\n By default if the item has a name this will always be used, however for items with\n no name, the following options are available:\n <ul>\n <li><code>\"title\"</code> use the title as an identifier within this form</li>\n <li><code>\"value\"</code> use the value of the item to identify it (often used\n  for items with a static defaultValue such as HeaderItems</li>\n <li><code>\"index\"</code> use the index within the form's items array.\n </ul>\n \n If unset, and the item has no specified name, default behavior is to\n identify by title (if available), otherwise by index.",
        name:"locateItemBy",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "autoTest"
        ]
    },
    "method:FormItem.setOptionDataSource":{
        ref:"method:FormItem.setOptionDataSource",
        flags:"A",
        description:" Method to set the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} at runtime\n",
        name:"setOptionDataSource",
        seeAlso:[
        ],
        params:[
            {
                description:"new optionDatasource",
                optional:false,
                name:"dataSource",
                defaultValue:null,
                type:"DataSource"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:FormulaBuilder.saveButtonTitle":{
        ref:"attr:FormulaBuilder.saveButtonTitle",
        flags:"IRWA",
        description:"The default title for the \"Save\" button.",
        name:"saveButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Save\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Canvas.top":{
        ref:"attr:Canvas.top",
        flags:"IRW",
        getter:[
            "getTop"
        ],
        description:"Number of pixels the top of the widget is offset down from its default drawing context\n (either its parent's top-left corner, or the document flow, depending on the value of\n the ${isc.DocUtils.linkForRef('attr:Canvas.position')} property).\n <P>\n Can also be set as a percentage, specified as a String ending in '%', eg, \"50%\".  In\n this case the top coordinate is considered as a percentage of the specified height of\n the ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas','parent')}.",
        name:"top",
        setter:[
            "setTop"
        ],
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "classMethod:Log.logInfo":{
        ref:"classMethod:Log.logInfo",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.logInfo')} is to call the method directly on\n the Log class.\n",
        name:"logInfo",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "method:TreeGrid.nodeClick":{
        ref:"method:TreeGrid.nodeClick",
        flags:"",
        description:"\n This method is called when a leaf or folder record is clicked on.  Note that if you set\n up a callback for <code>nodeClick()</code> and e.g. ${isc.DocUtils.linkForRef('method:TreeGrid.leafClick')}, then\n both will fire (in that order) if a leaf is clicked on.\n\n",
        name:"nodeClick",
        seeAlso:[
            {
                ref:"method:TreeGrid.folderClick",
                description:null
            },
            {
                ref:"method:TreeGrid.leafClick",
                description:null
            }
        ],
        params:[
            {
                description:"The TreeGrid on which leafClick() occurred.",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TreeGrid"
            },
            {
                description:"The node (record) that was clicked",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Index of the row where the click occurred.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('treeDropEvents')}"
        ],
        definingClass:"class:TreeGrid"
    },
    "attr:DataSource.requiredMessage":{
        ref:"attr:DataSource.requiredMessage",
        flags:"IRW",
        description:"The required message when a field that has been marked as\n ${isc.DocUtils.linkForRef('attr:DataSourceField.required','required')} is not filled in by the user.",
        name:"requiredMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "formTitles"
        ]
    },
    "method:ImgButton.getActionType":{
        ref:"method:ImgButton.getActionType",
        flags:"",
        description:" Return the 'actionType' for this canvas (radio / checkbox / button)\n",
        name:"getActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:DrawPath.getBoundingBox":{
        ref:"method:DrawPath.getBoundingBox",
        flags:"",
        description:" Returns the min, max points\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawPath"
    },
    "method:ColorPicker.getLuminosity":{
        ref:"method:ColorPicker.getLuminosity",
        flags:"",
        description:" Returns the Luminosity (brightness) of the currently-selected color, as an \n integer from 0-240\n",
        name:"getLuminosity",
        seeAlso:[
            {
                ref:"method:ColorPicker.setLuminosity",
                description:null
            }
        ],
        returns:{
            description:"luminosity value",
            type:"int"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "method:DynamicForm.getItem":{
        ref:"method:DynamicForm.getItem",
        flags:"",
        description:" Retrieve a ${isc.DocUtils.linkForRef('class:FormItem')} in this form by it's ${isc.DocUtils.linkForRef('attr:FormItem.name','name')},\n ${isc.DocUtils.linkForRef('attr:FormItem.dataPath','dataPath')}, or index within\n the ${isc.DocUtils.linkForRef('attr:DynamicForm.items','items')} array.\n <P>\n FormItems that also have a ${isc.DocUtils.linkForRef('attr:FormItem.ID')} may be accessed directly as a global variable\n <code>window[itemID]</code> or just <code>itemID</code>\n\n",
        name:"getItem",
        seeAlso:[
            {
                ref:"method:DynamicForm.getItem",
                description:null
            }
        ],
        params:[
            {
                description:"name of the item you're looking for",
                optional:false,
                name:"itemName",
                defaultValue:null,
                type:"string or int"
            }
        ],
        returns:{
            description:"FormItem object or null if not found",
            type:"FormItem"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "items"
        ]
    },
    "attr:Canvas.peers":{
        ref:"attr:Canvas.peers",
        flags:"IRA",
        description:"Array of all Canvii that are peers of this Canvas.\n <P>\n Use ${isc.DocUtils.linkForRef('method:Canvas.addPeer')} and ${isc.DocUtils.linkForRef('method:Canvas.removePeer')} to add and remove peers after a Canvas\n has been created/drawn.",
        name:"peers",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "classMethod:AutoTest.setTestRoot":{
        ref:"classMethod:AutoTest.setTestRoot",
        flags:"",
        description:" Sets the implicit root canvas available in scLocators starting \"//testRoot[]\".\n Setting this property may enable one to use the same script to test identical\n widget hierarchies that are rooted under different base widgets.\n",
        name:"setTestRoot",
        seeAlso:[
        ],
        params:[
            {
                description:"the implicit root",
                optional:false,
                name:"canvas",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "method:ResultSet.lengthIsKnown":{
        ref:"method:ResultSet.lengthIsKnown",
        flags:"",
        description:" Whether the ResultSet actually knows how many records are available from the server.\n The ResultSet will not know how many records are available when initially fetching and \n filtering data. Note that the value returned from ${isc.DocUtils.linkForRef('method:ResultSet.getLength')} will be \n an arbitrary, large value if the actual length is not known.\n",
        name:"lengthIsKnown",
        seeAlso:[
        ],
        returns:{
            description:"whether length is known",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:TimeItem.useTextField":{
        ref:"attr:TimeItem.useTextField",
        flags:"IRW",
        description:"Should we show the time in a text field, or as a number of SelectItems?",
        name:"useTextField",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:SplitPane.currentPane":{
        ref:"attr:SplitPane.currentPane",
        flags:"IRW",
        description:"The most recently shown pane.  In handset ${isc.DocUtils.linkForRef('type:DeviceMode')}, the\n <code>currentPane</code> is the only pane that is actually visible to the user.  In other\n modes more than one pane can be simultaneously visible, so the <code>currentPane</code> is\n the most recent pane that was brought into view via a call to ${isc.DocUtils.linkForRef('method:SplitPane.setCurrentPane')} or\n ${isc.DocUtils.linkForRef('method:SplitPane.showNavigationPane')}.\n <p>\n The default value of <code>currentPane</code> is \"navigation\".",
        name:"currentPane",
        setter:[
            "setCurrentPane"
        ],
        seeAlso:[
        ],
        valueType:"CurrentPane",
        defaultValue:"\"navigation\"",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "attr:Layout.membersMargin":{
        ref:"attr:Layout.membersMargin",
        flags:"IRW",
        description:"Space between each member of the layout.\n <P>\n Requires a manual call to <code>reflow()</code> if changed on the fly.",
        name:"membersMargin",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('userSizing')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:CellSelection.deselectCell":{
        ref:"method:CellSelection.deselectCell",
        flags:"",
        description:" Deselect a particular cell\n\n",
        name:"deselectCell",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of the cell to select",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column index of the cell to select",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "method:FormItem.setValueMap":{
        ref:"method:FormItem.setValueMap",
        flags:"A",
        description:" Set the valueMap for this item.\n",
        name:"setValueMap",
        seeAlso:[
            {
                ref:"attr:FormItem.valueMap",
                description:null
            }
        ],
        params:[
            {
                description:"new valueMap",
                optional:false,
                name:"valueMap",
                defaultValue:null,
                type:"Array or Object"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "valueMap"
        ]
    },
    "method:DateRangeItem.getCriterion":{
        ref:"method:DateRangeItem.getCriterion",
        flags:"",
        description:" Returns the Criterion entered in the date field.\n <P>\n A Criterion with an \"and\" ${isc.DocUtils.linkForRef('type:OperatorId','operator')} will be\n returned with both a \"greaterOrEqual\" and \"lessOrEqual\" sub-criteria.  If either date is \n omitted, only the \"greaterOrEqual\" (from date) or \"lessOrEqual\" (to date) Criterion is \n included.\n\n",
        name:"getCriterion",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Criterion"
        },
        type:"method",
        definingClass:"class:DateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:RelativeDateItem.showChooserFiscalYearPicker":{
        ref:"attr:RelativeDateItem.showChooserFiscalYearPicker",
        flags:"IRW",
        description:"When set to true, show a button that allows the calendar to be navigated by fiscal year.",
        name:"showChooserFiscalYearPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:ValuesManager.updateOperation":{
        ref:"attr:ValuesManager.updateOperation",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} to use when performing update operations.",
        name:"updateOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager",
        groups:[
            "operations"
        ]
    },
    "attr:FilterBuilder.missingFieldPrompt":{
        ref:"attr:FilterBuilder.missingFieldPrompt",
        flags:"IR",
        description:"The message to display next to fieldNames that do not exist in the available dataSource.",
        name:"missingFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"[missing field definition]\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TextAreaItem.selectOnClick":{
        ref:"attr:TextAreaItem.selectOnClick",
        flags:"IRW",
        description:"Allows the ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnClick','selectOnClick')} behavior to be configured on a\n per-FormItem basis.  Normally all items in a form default to the value of\n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnClick')}.",
        name:"selectOnClick",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "focus"
        ]
    },
    "class:Page":{
        methods:[
        ],
        ref:"class:Page",
        classAttrs:[
            "classAttr:Page.defaultUnsupportedBrowserURL",
            "classAttr:Page.protocolURLs",
            "classAttr:Page.unsupportedBrowserAction"
        ],
        classMethods:[
            "classMethod:Page.isLoaded",
            "classMethod:Page.setTitle",
            "classMethod:Page.getAppDir",
            "classMethod:Page.setAppImgDir",
            "classMethod:Page.getAppImgDir",
            "classMethod:Page.setAppFilesDir",
            "classMethod:Page.getAppFilesDir",
            "classMethod:Page.setIsomorphicDir",
            "classMethod:Page.getIsomorphicDir",
            "classMethod:Page.setSkinDir",
            "classMethod:Page.getSkinDir",
            "classMethod:Page.getSkinImgDir",
            "classMethod:Page.getImgURL",
            "classMethod:Page.getURL",
            "classMethod:Page.isRTL",
            "classMethod:Page.loadStyleSheet",
            "classMethod:Page.resizeTo",
            "classMethod:Page.moveTo",
            "classMethod:Page.scrollTo",
            "classMethod:Page.getWidth",
            "classMethod:Page.getHeight",
            "classMethod:Page.getOrientation",
            "classMethod:Page.updateViewport",
            "classMethod:Page.getScrollWidth",
            "classMethod:Page.getScrollHeight",
            "classMethod:Page.getScrollLeft",
            "classMethod:Page.getScrollTop",
            "classMethod:Page.getScreenWidth",
            "classMethod:Page.getScreenHeight",
            "classMethod:Page.goBack",
            "classMethod:Page.waitFor",
            "classMethod:Page.waitForMultiple",
            "classMethod:Page.checkBrowserAndRedirect",
            "classMethod:Page.getUnsupportedBrowserPromptString",
            "classMethod:Page.setEvent",
            "classMethod:Page.clearEvent",
            "classMethod:Page.registerKey",
            "classMethod:Page.unregisterKey"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Provides information about the page you're loaded in.  We define \"page\" here to be roughly\n \tequivalent to the browser window or frame the libraries have been loaded in.",
        name:"Page",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:StatefulCanvas.autoFit":{
        ref:"attr:StatefulCanvas.autoFit",
        flags:"IRW",
        description:"If true, ignore the specified size of this widget and always size just large\n enough to accommodate the title.  If <code>setWidth()</code> is explicitly called on an\n autoFit:true button, autoFit will be reset to <code>false</code>.\n <P>\n Note that for StretchImgButton instances, autoFit will occur horizontally only, as \n unpredictable vertical sizing is likely to distort the media. If you do want vertical \n auto-fit, this can be achieved by simply setting a small height, and having \n overflow:\"visible\"",
        name:"autoFit",
        setter:[
            "setAutoFit"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "sizing"
        ]
    },
    "attr:HiddenItem.showTitle":{
        ref:"attr:HiddenItem.showTitle",
        flags:"IRW",
        description:"we never show a separate title cell for hidden fields",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:HiddenItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ImgButton.iconSpacing":{
        ref:"attr:ImgButton.iconSpacing",
        flags:"IR",
        description:"Pixels between icon and title text.",
        name:"iconSpacing",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Canvas.setHtmlPosition":{
        ref:"method:Canvas.setHtmlPosition",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:Canvas.htmlPosition')}.\n",
        name:"setHtmlPosition",
        seeAlso:[
        ],
        params:[
            {
                description:"New htmlPosition for this canvas",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"DrawPosition"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "htmlElement"
        ]
    },
    "method:Label.setStyleName":{
        ref:"method:Label.setStyleName",
        flags:"",
        description:" Dynamically change the CSS class for this widget.  For a Label, this is equivalent to\n ${isc.DocUtils.linkForRef('method:StatefulCanvas.setBaseStyle','setBaseStyle()')}.\n\n",
        name:"setStyleName",
        seeAlso:[
        ],
        params:[
            {
                description:"new CSS style name",
                optional:false,
                name:"newStyle",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        definingClass:"class:Label"
    },
    "attr:TreeGrid.treeFieldTitle":{
        ref:"attr:TreeGrid.treeFieldTitle",
        flags:"IR",
        description:"Visible title for the tree column (field).",
        name:"treeFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Name\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeField"
        ]
    },
    "attr:FormItem.canEditOpaqueValues":{
        ref:"attr:FormItem.canEditOpaqueValues",
        flags:"IRA",
        description:"If true, indicates that this FormItem is capable of editing \"opaque\" values, ie, \n objects that are more complex than simple primitive types like numbers, strings and\n dates.  Ordinarily, you use the ${isc.DocUtils.linkForRef('class:SimpleType','SimpleType system')} to \n convert these opaque values into \"atomic\" values that can be edited by the built-in \n editors like ${isc.DocUtils.linkForRef('class:TextItem')}.  However, sometimes you to create a custom editor\n that knows how to edit a particular opaque type in a domain-specific way - for example,\n a composite custom FormItem that allows the user to edit both a number and a currency \n code, both of which are needed to make a proper monetary amount (for that particular \n application).\n\n When this value is set, the FormItem will manage the opaque value directly, rather\n than it being filtered through calls to \n ${isc.DocUtils.linkForRef('method:SimpleType.getAtomicValue','getAtomicValue()')} and \n ${isc.DocUtils.linkForRef('simpleType.storeAtomicValue','storeAtomicValue()')}.  Note, if you set this flag on\n a FormItem that does not have the ability to edit an opaque value (which is something\n that must be custom-coded) then you will get garbage in your editor, if not an outright\n crash.",
        name:"canEditOpaqueValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:SplitPane.setPageOrientation":{
        ref:"method:SplitPane.setPageOrientation",
        flags:"",
        description:" Explicitly sets the page orientation to a fixed value instead of being responsive to device\n orientation changes.  Pass <code>null</code> to return to responding automatically to device\n orientation.\n <p>\n See ${isc.DocUtils.linkForRef('type:PageOrientation')} for details of how page orientation affects layout.\n\n",
        name:"setPageOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"new orientation to use.",
                optional:false,
                name:"newOrientation",
                defaultValue:null,
                type:"PageOrientation"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "class:JSONEncoder":{
        methods:[
            "method:JSONEncoder.encode",
            "method:JSONEncoder.encodeDate"
        ],
        ref:"class:JSONEncoder",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:JSONEncoder.serializeInstances",
            "attr:JSONEncoder.skipInternalProperties",
            "attr:JSONEncoder.showDebugOutput",
            "attr:JSONEncoder.dateFormat",
            "attr:JSONEncoder.strictQuoting",
            "attr:JSONEncoder.circularReferenceMode",
            "attr:JSONEncoder.circularReferenceMarker",
            "attr:JSONEncoder.prettyPrint"
        ],
        description:"Class for encoding objects as JSON strings.",
        name:"JSONEncoder",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:StatefulCanvas.iconStyle":{
        ref:"attr:StatefulCanvas.iconStyle",
        flags:"IRW",
        description:"Base CSS style applied to the icon image. If set, as the <code>StatefulCanvas</code> changes\n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')} and/or is ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected','selected')},\n suffixes will be appended to <code>iconStyle</code> to form the className set on the\n image element.\n <p>\n The following table lists out the standard set of suffixes which may be appended:\n <table border=1>\n <tr><th>CSS Class Applied</th><th>Description</th></tr>\n <tr><td><code><i>iconStyle</i></code></td><td>Default CSS style</td></tr>\n <tr><td><code><i>iconStyle</i>+Selected</code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected')} and ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showSelectedIcon')}\n      are true.</td></tr>\n <tr><td><code><i>iconStyle</i>+Focused</code></td>\n      <td>Applied when the component has keyboard focus, if\n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedIcon')} is true, and\n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is not true.</td></tr>\n <tr><td><code><i>iconStyle</i>+Over</code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOverIcon')} is set to true and either\n      the user rolls over the component or ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true\n      and the component has keyboard focus.</td></tr>\n <tr><td><code><i>iconStyle</i>+Down</code></td>\n      <td>Applied when the user presses the mouse button on the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDownIcon')} is set to true</td></tr>\n <tr><td><code><i>iconStyle</i>+Disabled</code></td>\n      <td>Applied when the component is ${isc.DocUtils.linkForRef('attr:Canvas.disabled','disabled')}\n       if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabledIcon')} is true.</td></tr>\n <tr><td colspan=2><i>Combined styles</i></td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedFocused</code></td>\n      <td>Combined Selected and focused styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedOver</code></td>\n      <td>Combined Selected and rollOver styling</td></tr>\n <tr><td><code><i>iconStyle</i>+FocusedOver</code></td>\n      <td>Combined Focused and rollOver styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedFocusedOver</code></td>\n      <td>Combined Selected, Focused and rollOver styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedDown</code></td>\n      <td>Combined Selected and mouse-down styling</td></tr>\n <tr><td><code><i>iconStyle</i>+FocusedDown</code></td>\n      <td>Combined Focused and mouse-down styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedFocusedDown</code></td>\n      <td>Combined Selected, Focused and mouse-down styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedDisabled</code></td>\n      <td>Combined Selected and Disabled styling</td></tr>\n </table>\n <p>\n In addition, if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRTLIcon')} is true, then in RTL mode, a final\n \"RTL\" suffix will be appended.",
        name:"iconStyle",
        setter:[
            "setIconStyle"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:ListGrid.reorderFields":{
        ref:"method:ListGrid.reorderFields",
        flags:"A",
        description:" Reorder a set of adjacent fields, from start to end exclusive at the end, by distance\n moveDelta.<br><br>\n\n NOTE: start and end coordinates are in terms of the currently visible fields, not the full set of\n fields.\n\n",
        name:"reorderFields",
        seeAlso:[
        ],
        params:[
            {
                description:"Start of the range of fields to move, inclusive",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"End of the range of fields to move, non-inclusive",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Distance to move by",
                optional:false,
                name:"moveDelta",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DrawOval.getRadiusY":{
        ref:"method:DrawOval.getRadiusY",
        flags:"",
        description:" Returns the vertical radius of the DrawOval.\n",
        name:"getRadiusY",
        seeAlso:[
            {
                ref:"method:DrawOval.setRadii",
                description:null
            }
        ],
        returns:{
            description:"the vertical radius.",
            type:"int"
        },
        type:"method",
        definingClass:"class:DrawOval"
    },
    "method:Canvas.getMasterCanvas":{
        ref:"method:Canvas.getMasterCanvas",
        flags:"",
        description:" Returns this canvas's \"master\" (the canvas to which it was added as a peer), if any.\n",
        name:"getMasterCanvas",
        seeAlso:[
        ],
        returns:{
            description:"the master canvas, null if none exists.",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:ListGridRecord.singleCellValue":{
        ref:"attr:ListGridRecord.singleCellValue",
        flags:"IRW",
        description:"Default property name denoting the single value to display for all fields of this row.\n If this property is set for some record, the record will be displayed as a single\n cell spanning every column in the grid, with contents set to the value of this\n property.<br>\n Note: this attribute name is governed by ${isc.DocUtils.linkForRef('attr:ListGrid.singleCellValueProperty')}.",
        name:"singleCellValue",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "attr:ListPropertiesDialog.cancelButtonTitle":{
        ref:"attr:ListPropertiesDialog.cancelButtonTitle",
        flags:"IR",
        description:"The title of the ${isc.DocUtils.linkForRef('attr:ListPropertiesDialog.cancelButton','Cancel button')}.",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:ListPropertiesDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.controlStyle":{
        ref:"attr:FormItem.controlStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's control box (surrounds text box and picker).\n <P>\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special skinning considerations.",
        name:"controlStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance",
            "pickerIcon"
        ]
    },
    "method:TabSet.getTabObject":{
        ref:"method:TabSet.getTabObject",
        flags:"",
        description:" Get the tab Object originally passed to ${isc.DocUtils.linkForRef('attr:TabSet.tabs')}, by index, name or ID.\n If passed a tab Object, just returns it.\n\n",
        name:"getTabObject",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"int | ID | name | Tab"
            }
        ],
        returns:{
            description:"the tab, or null if not found",
            type:"Tab"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:Calendar.getActiveDay":{
        ref:"method:Calendar.getActiveDay",
        flags:"",
        description:" Gets the day of the week (0-6) that the mouse is currently over.\n\n",
        name:"getActiveDay",
        seeAlso:[
            {
                ref:"method:Calendar.getActiveTime",
                description:null
            }
        ],
        returns:{
            description:"the day that the mouse is currently over",
            type:"integer"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:PrintWindow.externalStylesheet":{
        ref:"attr:PrintWindow.externalStylesheet",
        flags:"IRWA",
        description:"Setting this property will cause the specified stylesheet to be loaded in this\n window's printable HTML frame.\n <P>\n The stylesheet should be specified as a URL to load.",
        name:"externalStylesheet",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PrintWindow"
    },
    "attr:TreeGrid.showPartialSelection":{
        ref:"attr:TreeGrid.showPartialSelection",
        flags:"IRW",
        description:"Should partially selected parents be shown with special icon?",
        name:"showPartialSelection",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "classMethod:DataSource.getFieldValue":{
        ref:"classMethod:DataSource.getFieldValue",
        flags:"",
        description:" Given a field definition and a record object, this method\n will return the field value for the record.\n <P>\n This method will follow any ${isc.DocUtils.linkForRef('attr:ListGridField.dataPath','dataPath')} specified on the \n component field if necessary, and will extract \n ${isc.DocUtils.linkForRef('method:SimpleType.getAtomicValue','atomic values')} from custom ${isc.DocUtils.linkForRef('class:SimpleType')} fields\n where this is required.\n",
        name:"getFieldValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Field definition from a dataSource or dataBoundComponent.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DataSourceField | ListGridField | DetailViewerField | FormItem"
            },
            {
                description:"data object",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"extracted field value",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "method:CubeGrid.facetLabelOver":{
        ref:"method:CubeGrid.facetLabelOver",
        flags:"",
        description:" StringMethod handler fired when mouseover occurs over a facet label\n\n\n",
        name:"facetLabelOver",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of the appropriate facet",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events"
        ]
    },
    "attr:DataSourceField.includeSummaryFunction":{
        ref:"attr:DataSourceField.includeSummaryFunction",
        flags:"R",
        description:"When ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom','field.includeFrom')} is specified and multiple records\n exist in the related DataSource per record in the including DataSource,\n <code>includeSummaryFunction</code> indicates which ${isc.DocUtils.linkForRef('type:SummaryFunction')} is used to\n produce the field value.\n <p>\n <b>This feature is available with Power or better licenses only.</b> \n See <a href=\"http://smartclient.com/product\">smartclient.com/product</a> for details.\n <p>\n For example, give a DataSource \"order\" and related DataSource \"orderItem\", the \"itemCount\"\n field below will show the total number of items in each order.\n <pre>\n  &lt;DataSource ID=\"order\"&gt;\n     &lt;fields&gt;\n        &lt;field name=\"orderID\" type=\"integer\" primaryKey=\"true\" foreignKey=\"orderItem.orderID\" /&gt;\n        &lt;field name=\"customerName\" type=\"text\" /&gt;\n        &lt;field name=\"orderDate\" type=\"date\" /&gt;\n        &lt;field name=\"itemsCount\" includeFrom=\"orderItem.quantity\" includeSummaryFunction=\"sum\" /&gt;\n     &lt;/fields&gt;\n  &lt;/DataSource&gt;\n </pre>\n This is analogous to the following SQL statement: \n <pre>\n SELECT\n      order.orderID,\n      order.customerName,\n      order.orderDate,\n      (select sum(orderItem.quantity)\n          from orderItem\n          where orderItem.orderID = order.orderID) as itemsCount\n FROM\n      order\n </pre>\n Some other common uses:\n <ul>\n <li> using \"max\" to show the most recent \"order\" for a \"customer\"\n <li> using \"avg\" to show the average order size for a \"customer\"\n <li> using \"concat\" to show the names of all \"salesReps\" involved in an \"order\" (note:\n      \"concat\" has limited support - see ${isc.DocUtils.linkForRef('type:SummaryFunction')}).\n </ul>\n <p>\n <b>NOTE</b>: <code>includeSummaryFunction</code> and \n ${isc.DocUtils.linkForRef('group:serverSummaries','Server Summaries')} cannot be used in the same ${isc.DocUtils.linkForRef('class:DSRequest')}.\n If both configurations are present, Server Summaries settings always take priority.",
        name:"includeSummaryFunction",
        seeAlso:[
            {
                ref:"type:SummaryFunction",
                description:null
            }
        ],
        valueType:"SummaryFunction",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "serverSummaries"
        ]
    },
    "attr:FacetValue.canCollapse":{
        ref:"attr:FacetValue.canCollapse",
        flags:"IR",
        description:"For individual parent facetValues within a hierarchical facet, this flag controls\n whether an expand/collapse control will be shown.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')} (see, for\n example, ${isc.DocUtils.linkForRef('attr:CubeGrid.canCollapseFacets')}).",
        name:"canCollapse",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:DetailViewerField.valueMap":{
        ref:"attr:DetailViewerField.valueMap",
        flags:"IR",
        description:"A property list (or an expression that evaluates to a property list)\n specifying a mapping of internal values to display values for the field (row).",
        name:"valueMap",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "method:FormItem.getPixelWidth":{
        ref:"method:FormItem.getPixelWidth",
        flags:"",
        description:" Returns the specified ${isc.DocUtils.linkForRef('attr:FormItem.width')} of this formItem in pixels. \n For widths specified as a percentage value or <code>\"*\"</code>, the \n pixel width may not be available prior to the item being drawn. In cases where\n the width has not yet been resolved to a pixel value, this method will return\n <code>-1</code>.\n",
        name:"getPixelWidth",
        seeAlso:[
        ],
        returns:{
            description:"Specified width resolved to a pixel value.",
            type:"int"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:CubeGrid.deselectCell":{
        ref:"method:CubeGrid.deselectCell",
        flags:"",
        description:" Deselect a single cell - accepts cell ID or cell record.\n\n",
        name:"deselectCell",
        seeAlso:[
        ],
        params:[
            {
                description:"cell to deselect",
                optional:false,
                name:"cell",
                defaultValue:null,
                type:"CellRecord | ID"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:DataBoundComponent.getDropValues":{
        ref:"method:DataBoundComponent.getDropValues",
        flags:"",
        description:" Returns the \"drop values\" to apply to a record dropped on this component prior to update.  Only\n applicable to databound components - see ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dropValues')} for more details.  If multiple records \n are being dropped, this method is called for each of them in turn.\n <P>\n The default implementation of this method returns the following:\n <UL>\n <LI>Nothing, if ${isc.DocUtils.linkForRef('attr:DataBoundComponent.addDropValues')} is false</LI>\n <LI>dropValues, if that property is set.  If the component's criteria object is applicable (as explained\n in the next item), it is merged into dropValues, with properties in dropValues taking precedence.</LI>\n <LI>The component's criteria object, if the most recent textMatchStyle for the component was \"exact\" \n     and it is simple criteria (ie, not an AdvancedCriteria object)</LI>\n <LI>Otherwise nothing</LI>\n </UL>\n <P>\n You can override this method if you need more complex setting of drop values than can be \n provided by simply supplying a dropValues object.\n \n",
        name:"getDropValues",
        seeAlso:[
        ],
        params:[
            {
                description:"record being dropped",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"dataSource the record being dropped is bound to",
                optional:false,
                name:"sourceDS",
                defaultValue:null,
                type:"DataSource"
            },
            {
                description:"record being dropped on",
                optional:false,
                name:"targetRecord",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"index of record being dropped on",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            },
            {
                description:"widget where dragging began",
                optional:false,
                name:"sourceWidget",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"dropValues, as described above.",
            type:"object"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ViewLoader.viewURL":{
        ref:"attr:ViewLoader.viewURL",
        flags:"IR",
        description:"URL to load components from.",
        name:"viewURL",
        setter:[
            "setViewURL"
        ],
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('viewLoading')}"
        ],
        definingClass:"class:ViewLoader"
    },
    "method:DataSource.updateData":{
        ref:"method:DataSource.updateData",
        flags:"",
        description:" Perform an \"update\" DataSource operation against this DataSource, to update values in an\n existing DataSource record.\n\n",
        name:"updateData",
        seeAlso:[
        ],
        params:[
            {
                description:"updated record",
                optional:false,
                name:"updatedRecord",
                defaultValue:null,
                type:"Record Properties"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "attr:ListGrid.showSelectionUnderCanvas":{
        ref:"attr:ListGrid.showSelectionUnderCanvas",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType','selectionType')} is set to\n <smartclient>\"single\",</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.SelectionStyle#SINGLE},</smartgwt>\n and either ${isc.DocUtils.linkForRef('attr:ListGrid.showSelectionCanvas','showSelectionCanvas')} is <code>true</code> and\n <code>showSelectionUnderCanvas</code> is unset, or <code>showSelectionUnderCanvas</code>\n is explicitly set to <code>true</code>, then selection will be displayed to the\n user with the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionCanvas','selectionCanvas')} and/or\n ${isc.DocUtils.linkForRef('attr:ListGrid.selectionUnderCanvas','selectionUnderCanvas')} rather than with CSS styling.\n Setting <code>showSelectionUnderCanvas</code> to <code>false</code> will disable\n the use of the <code>selectionUnderCanvas</code>.\n <p>\n With ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','frozen fields')}, the <code>selectionUnderCanvas</code>\n is displayed only behind the non-frozen fields of the selected row.",
        name:"showSelectionUnderCanvas",
        seeAlso:[
            {
                ref:"attr:ListGrid.showSelectionCanvas",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridRoundedSelection')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "attr:Applet.altHTML":{
        ref:"attr:Applet.altHTML",
        flags:"IR",
        description:"This text is displayed if the browser does not understand the tag used for the applet html\n  element.",
        name:"altHTML",
        seeAlso:[
            {
                ref:"attr:Applet.alt",
                description:null
            },
            {
                ref:"attr:Applet.useTag",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:ViewLoader.viewURLParams":{
        ref:"attr:ViewLoader.viewURLParams",
        flags:"IR",
        description:"Parameters to be sent to the viewURL when fetching the view.",
        name:"viewURLParams",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ViewLoader"
    },
    "attr:ListGrid.discardEditsSaveButtonTitle":{
        ref:"attr:ListGrid.discardEditsSaveButtonTitle",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.confirmDiscardEdits')} is true this is the title for the save button\n appearing in the lost edits confirmation dialog. Override this for localization if necessary.",
        name:"discardEditsSaveButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Save\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing",
            "i18nMessages"
        ]
    },
    "classMethod:Log.traceMethod":{
        ref:"classMethod:Log.traceMethod",
        flags:"",
        description:"\n  Observe a method on an object, logging a stack trace whenever the method is called.\n  <P>\n  Call a second time with identical arguments to disable tracing.\n\n",
        name:"traceMethod",
        seeAlso:[
        ],
        params:[
            {
                description:"object to observe",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"name of the method to observe",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "method:DrawOval.getRadiusX":{
        ref:"method:DrawOval.getRadiusX",
        flags:"",
        description:" Returns the horizontal radius of the DrawOval.\n",
        name:"getRadiusX",
        seeAlso:[
            {
                ref:"method:DrawOval.setRadii",
                description:null
            }
        ],
        returns:{
            description:"the horizontal radius.",
            type:"int"
        },
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:Canvas.showEdges":{
        ref:"attr:Canvas.showEdges",
        flags:"IR",
        description:"Whether an ${isc.DocUtils.linkForRef('class:EdgedCanvas')} should be used to show image-based edges around this\n component.",
        name:"showEdges",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('edges')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:SelectItem.multipleAppearance":{
        ref:"attr:SelectItem.multipleAppearance",
        flags:"IR",
        description:"How should items with ${isc.DocUtils.linkForRef('attr:SelectItem.multiple')} set to 'true' be displayed?",
        name:"multipleAppearance",
        seeAlso:[
        ],
        valueType:"MultipleAppearance",
        defaultValue:"\"picklist\"",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:DataSource.requires":{
        ref:"attr:DataSource.requires",
        flags:"IR",
        description:"Indicates that the specified ${isc.DocUtils.linkForRef('type:VelocityExpression')} must evaluate to true for a user \n to access this DataSource.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:OperationBinding.requires')}.",
        name:"requires",
        seeAlso:[
        ],
        valueType:"VelocityExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "auth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:FormulaBuilder.sourceFieldColumnTitle":{
        ref:"attr:FormulaBuilder.sourceFieldColumnTitle",
        flags:"IRWA",
        description:"The default title for the \"Source Field\" column in in ${isc.DocUtils.linkForRef('attr:FormulaBuilder.fields')}.",
        name:"sourceFieldColumnTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Source Field\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DynamicForm.submit":{
        ref:"method:DynamicForm.submit",
        flags:"",
        description:" <code>submit()</code> is automatically called when a ${isc.DocUtils.linkForRef('class:SubmitItem')} included in the\n form is clicked, or, if ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOnEnter','saveOnEnter')} is set, when the\n \"Enter\" key is pressed in a text input.  Submit can also be manually called.\n <P>\n If this form is part of a ${isc.DocUtils.linkForRef('class:ValuesManager')}, this method will simply fall through to\n the submit method on the valuesManager. If not, and\n ${isc.DocUtils.linkForRef('method:DynamicForm.submitValues','form.submitValues()')} exists, it will be called, and\n no further action will be taken.\n <P>\n Otherwise, default behavior varies based on ${isc.DocUtils.linkForRef('attr:DynamicForm.canSubmit','form.canSubmit')}: if\n <code>canSubmit</code> is false, ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} will be called to\n handle saving via SmartClient databinding.  \n <P>\n If <code>canSubmit</code> is true, the form will be submitted like an ordinary HTML\n form via ${isc.DocUtils.linkForRef('method:DynamicForm.submitForm')}.\n <P>\n The parameters to <code>submit()</code> apply only if <code>submit()</code> will be\n calling ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')}.  If you override <code>submit()</code>, you can safely\n ignore the parameters as SmartClient framework code does not pass them.\n \n",
        name:"submit",
        seeAlso:[
            {
                ref:"method:DynamicForm.submitValues",
                description:null
            }
        ],
        params:[
            {
                description:"callback to invoke on completion.                                          [Ignored if this.canSubmit is true]",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued\n                                          [Ignored if this.canSubmit is true]",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:TreeGrid.autoPreserveOpenState":{
        ref:"attr:TreeGrid.autoPreserveOpenState",
        flags:"IR",
        description:"For dataBound treeGrids this specifies the ${isc.DocUtils.linkForRef('attr:ResultTree.autoPreserveOpenState')},\n governing whether the open state of the tree should be preserved when new data\n arrives due to cache invalidation.",
        name:"autoPreserveOpenState",
        seeAlso:[
        ],
        valueType:"PreserveOpenState",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "class:SelectItem":{
        methods:[
            "method:SelectItem.setValueMap",
            "method:SelectItem.defaultDynamicValue",
            "method:SelectItem.showPicker",
            "method:SelectItem.setValue",
            "method:SelectItem.getSelectedRecords",
            "method:SelectItem.fetchData",
            "method:SelectItem.getDisplayFieldName",
            "method:SelectItem.getValueFieldName",
            "method:SelectItem.dataArrived",
            "method:SelectItem.getSelectedRecord"
        ],
        ref:"class:SelectItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:SelectItem.height",
            "attr:SelectItem.addUnknownValues",
            "attr:SelectItem.defaultValue",
            "attr:SelectItem.defaultToFirstOption",
            "attr:SelectItem.multiple",
            "attr:SelectItem.multipleAppearance",
            "attr:SelectItem.useClientFiltering",
            "attr:SelectItem.showPickerIcon",
            "attr:SelectItem.emptyDisplayValue",
            "attr:SelectItem.textBoxStyle",
            "attr:SelectItem.controlStyle",
            "attr:SelectItem.pickerIconStyle",
            "attr:SelectItem.showFocused",
            "attr:SelectItem.pickerIconWidth",
            "attr:SelectItem.pickerIconHeight",
            "attr:SelectItem.pickerIconSrc",
            "attr:SelectItem.hiliteOnFocus",
            "attr:SelectItem.hiliteColor",
            "attr:SelectItem.hiliteTextColor",
            "attr:SelectItem.pickButtonWidth",
            "attr:SelectItem.pickButtonHeight",
            "attr:SelectItem.pickButtonSrc",
            "attr:SelectItem.showOver",
            "attr:SelectItem.canSelectText",
            "attr:SelectItem.allowEmptyValue",
            "attr:SelectItem.autoFetchData",
            "attr:SelectItem.showHintInField",
            "attr:SelectItem.progressiveLoading",
            "attr:SelectItem.saveOnEnter",
            "attr:SelectItem.openOnSpace",
            "attr:SelectItem.openOnDownArrow",
            "attr:SelectItem.escapeHTML",
            "attr:SelectItem.optionDataSource",
            "attr:SelectItem.textMatchStyle",
            "attr:SelectItem.pickListFields",
            "attr:SelectItem.cachePickListResults",
            "attr:SelectItem.fetchDisplayedFieldsOnly",
            "attr:SelectItem.optionFilterContext",
            "attr:SelectItem.optionOperationId",
            "attr:SelectItem.displayField",
            "attr:SelectItem.valueField",
            "attr:SelectItem.filterLocally",
            "attr:SelectItem.pickListCriteria",
            "attr:SelectItem.showOptionsFromDataSource",
            "attr:SelectItem.pickListProperties",
            "attr:SelectItem.sortField"
        ],
        description:"FormItem that allows picking between several mutually exclusive options via a select list.\n <P>\n Options may be derived from a <code>dataSource</code> or a <code>valueMap</code>.\n <P>\n Note that to select the first option as a default value for the item,\n ${isc.DocUtils.linkForRef('attr:SelectItem.defaultToFirstOption')} may be set.",
        name:"SelectItem",
        implementsInterfaces:[
            "PickList"
        ],
        seeAlso:[
            {
                ref:"attr:PickList.optionDataSource",
                description:null
            },
            {
                ref:"attr:FormItem.valueMap",
                description:null
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('selectItem')}"
        ]
    },
    "attr:StretchImgButton.iconHeight":{
        ref:"attr:StretchImgButton.iconHeight",
        flags:"IR",
        description:"Height in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:TileRecord.tileConstructor":{
        ref:"attr:TileRecord.tileConstructor",
        flags:"IRW",
        description:"SmartClient Class to use to construct the tile for this particular record.",
        name:"tileConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TileRecord"
    },
    "attr:FormItem.pickerConstructor":{
        ref:"attr:FormItem.pickerConstructor",
        flags:"IRW",
        description:"Class name of the picker to be created.",
        name:"pickerConstructor",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:FormItem.optionCriteria":{
        ref:"attr:FormItem.optionCriteria",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code>, and this property may be used\n to specify criteria to pass to the datasource when\n performing the fetch operation on the dataSource to obtain a data-value to display-value\n mapping",
        name:"optionCriteria",
        seeAlso:[
        ],
        valueType:"criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:TextItem.height":{
        ref:"attr:TextItem.height",
        flags:"IRW",
        description:"Default height for text items.",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"19",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "appearance"
        ]
    },
    "attr:FormulaBuilder.autoHideCheckBox":{
        ref:"attr:FormulaBuilder.autoHideCheckBox",
        flags:"IR",
        description:"CheckBox that, when selected, hides columns in the component that are used in this formula.",
        name:"autoHideCheckBox",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:SplitPane.setDetailToolButtons":{
        ref:"method:SplitPane.setDetailToolButtons",
        flags:"",
        description:" Updates the ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolButtons','detailToolButtons')} at runtime.\n\n",
        name:"setDetailToolButtons",
        seeAlso:[
        ],
        params:[
            {
                description:"new controls for the toolstrip.",
                optional:false,
                name:"buttons",
                defaultValue:null,
                type:"Array of Canvas"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "attr:Slider.animateThumbInit":{
        ref:"attr:Slider.animateThumbInit",
        flags:"IRW",
        description:"If thumb animation is enabled, should the thumb be animated to its initial value?",
        name:"animateThumbInit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Slider",
        groups:[
            "animation"
        ]
    },
    "method:MetricSettings.getXCoord":{
        ref:"method:MetricSettings.getXCoord",
        flags:"",
        description:" Returns the X coordination where the passed data value would be drawn.  \n For example, this would be the X coordinate where a bar would end in a bar\n chart.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n <P>\n If the ${isc.DocUtils.linkForRef('type:ChartType')} is \"Scatter\" or \"Bar\" then <code>value</code> argument should be a\n number.  For other rectangular charts, this method expects a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that\n uniquely identifies the data cell whose x-axis coordinate to retrieve.\n\n",
        name:"getXCoord",
        seeAlso:[
        ],
        params:[
            {
                description:"the value to be drawn.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float | FacetValueMap"
            }
        ],
        returns:{
            description:"the X coordinate where the passed data value would be drawn.",
            type:"float"
        },
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "attr:RestDataSource.metaDataPrefix":{
        ref:"attr:RestDataSource.metaDataPrefix",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:RestDataSource.sendMetaData')} is true, this attribute is used to specify\n the prefix to apply to 'meta data' properties when assembling parameters to send to the \n server.  Applies to operations where OperationBinding.dataProtocol is set to \n <code>\"getParams\"</code> or <code>\"postParams\"</code> only.",
        name:"metaDataPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"_\"",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:Hilite.backgroundColor":{
        ref:"attr:Hilite.backgroundColor",
        flags:"IRW",
        description:"When edited via a ${isc.DocUtils.linkForRef('class:HiliteEditor')}, the value for the background color of this \n hilite.  If this is omitted, it will be automatically derived from the <i>backgroundColor</i>\n attribute of ${isc.DocUtils.linkForRef('attr:Hilite.cssText')}.  When a hilite is saved in a HiliteEditor, both \n attributes are set automatically.",
        name:"backgroundColor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListGridField.showDefaultContextMenu":{
        ref:"attr:ListGridField.showDefaultContextMenu",
        flags:"IRW",
        description:"When set to false, this field will not show a context menu in its header.",
        name:"showDefaultContextMenu",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:ListGrid.filterByEditor":{
        ref:"method:ListGrid.filterByEditor",
        flags:"",
        description:" If the filter editor (${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')}) is visible for this grid,\n this method will perform a filter based on the current values in the editor.\n",
        name:"filterByEditor",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "classAttr:RPCManager.loginSuccessMarker":{
        ref:"classAttr:RPCManager.loginSuccessMarker",
        flags:"IRWA",
        description:"Marker the system will look for in order to detect when login was successfull.",
        name:"loginSuccessMarker",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.loginRequiredMarker",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"RPCManager.loginSuccessMarker",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "relogin"
        ]
    },
    "attr:ListGrid.recordDropAppearance":{
        ref:"attr:ListGrid.recordDropAppearance",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canAcceptDroppedRecords')} is true for this listGrid, this property governs\n whether the user can drop between, or over records within the grid.\n This controls what ${isc.DocUtils.linkForRef('type:RecordDropPosition')} is passed to the ${isc.DocUtils.linkForRef('method:ListGrid.recordDrop')}\n event handler.",
        name:"recordDropAppearance",
        seeAlso:[
        ],
        valueType:"RecordDropAppearance",
        defaultValue:"ListGrid.BETWEEN",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classMethod:Offline.put":{
        ref:"classMethod:Offline.put",
        flags:"",
        description:" Stores the passed-in value in browser-local storage, mapped to the passed-in key.  If\n there is no room left to store the value, we discard values from the offline store, \n oldest first, until there is room to store the value.  If you don't want this behavior,\n explicitly pass false in the <code>recycleEntries</code> parameter.\n <p>\n Note that limitations in the underlying storage engines mean that only primitive \n values - Strings, numbers and booleans - can be stored.  If you wish to store an Array\n or Object, you will have to serialize it to JSON first, and then <code>eval</code> it \n after retrieval to turn it back into an object.\n <p>\n <b>Note:</b> This method throws an exception if it could not store the value (either \n because storage is full and recycleEntries was false, or because the value to store is\n simply too large)\n \n",
        name:"put",
        seeAlso:[
            {
                ref:"classMethod:Offline.get",
                description:null
            }
        ],
        params:[
            {
                description:"The key to use when storing the value",
                optional:false,
                name:"key",
                defaultValue:null,
                type:"String"
            },
            {
                description:"The value to store",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"If false, suppresses the default behavior of repeatedly                                   discarding the oldest entry if there is insufficient\n                                   space to store the value",
                optional:true,
                name:"recycleEntries",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Offline"
    },
    "attr:DateChooser.baseWeekStyle":{
        ref:"attr:DateChooser.baseWeekStyle",
        flags:"IRW",
        description:"Base CSS style applied to cells in the ${isc.DocUtils.linkForRef('attr:DateChooser.showWeekChooser','fiscal week column')}.",
        name:"baseWeekStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserWeekCell\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DataBoundComponent.dropValues":{
        ref:"attr:DataBoundComponent.dropValues",
        flags:"IRWA",
        getter:[
            "getDropValues"
        ],
        description:"When an item is dropped on this component, and ${isc.DocUtils.linkForRef('attr:DataBoundComponent.addDropValues')} is true and both \n          the source and target widgets are databound, either to the same DataSource or \n          to different DataSources that are related via a foreign key, this object \n          provides the \"drop values\" that SmartClient will apply to the dropped object \n          before updating it.\n          <P>\n          If this property is not defined, SmartClient defaults to returning the selection\n          criteria currently in place for this component.  Thus, any databound items (for example, \n          rows from other grids bound to the same DataSource) dropped on the grid will,\n          by default, be subjected to an update that makes them conform to the grid's \n          current filter criteria.",
        name:"dropValues",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('listRecategorize')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragging"
        ]
    },
    "class:IconMenuButton":{
        methods:[
            "method:IconMenuButton.showMenu"
        ],
        ref:"class:IconMenuButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:IconMenuButton.menu",
            "attr:IconMenuButton.menuAnimationEffect"
        ],
        description:"A subclass of ${isc.DocUtils.linkForRef('class:IconButton')} that shows a menuIcon by default and implements showMenu().\n <P>\n This class has ${isc.DocUtils.linkForRef('attr:IconButton.showMenuIcon','showMenuIcon')} set to <code>true</code> by default,\n and has a ${isc.DocUtils.linkForRef('method:IconButton.menuIconClick')} handler which will show the specified \n ${isc.DocUtils.linkForRef('attr:IconMenuButton.menu')} via a call to ${isc.DocUtils.linkForRef('method:IconMenuButton.showMenu')}.\n This menuIconClick handler cancels default click behavior, so, if a user clicks the menu \n item, any specified ${isc.DocUtils.linkForRef('method:Canvas.click','click handler')} for the button as a whole will not fire.",
        name:"IconMenuButton",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSource.omitNullDefaultsOnAdd":{
        ref:"attr:DataSource.omitNullDefaultsOnAdd",
        flags:"IR",
        description:"When true, and ${isc.DocUtils.linkForRef('attr:DataSource.noNullUpdates','noNullUpdates')} is also true, indicates that \"add\" \n requests on this DataSource will have null-valued fields removed from the request \n entirely before it is sent to the server, as opposed to the default behavior of \n replacing such null values with defaults.",
        name:"omitNullDefaultsOnAdd",
        seeAlso:[
            "noNullUpdates,noNullUpdates"
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:ListGridField.validateOnChange":{
        ref:"attr:ListGridField.validateOnChange",
        flags:"IRW",
        description:"If set to true, any ${isc.DocUtils.linkForRef('attr:ListGridField.validators')} for this field will be run whenever\n the value of the field is changed.\n <P>\n Analogous to the ${isc.DocUtils.linkForRef('attr:FormItem.validateOnChange')} property.",
        name:"validateOnChange",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "gridValidation"
        ]
    },
    "attr:OperationBinding.creatorOverrides":{
        ref:"attr:OperationBinding.creatorOverrides",
        flags:"IR",
        description:"Indicates that field-level declarative security rules are waived for rows that were \n created by the current user, as described in the discussion of \n ${isc.DocUtils.linkForRef('attr:DataSource.creatorOverrides','dataSource.creatorOverrides')}.  This setting overrides \n <code>dataSource.creatorOverrides</code>, for this operation only.",
        name:"creatorOverrides",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequires",
                description:null
            },
            {
                ref:"attr:DataSourceField.viewRequires",
                description:null
            },
            {
                ref:"attr:DataSource.creatorOverrides",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:FormItem.saveOnEnter":{
        ref:"attr:FormItem.saveOnEnter",
        flags:"IRW",
        description:"Set this to true to allow the parent form to save it's data when 'Enter' is pressed on \n this formItem and ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOnEnter','saveOnEnter')} is true on the parent form.",
        name:"saveOnEnter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:CubeGrid.facetValueHoverHTML":{
        ref:"method:CubeGrid.facetValueHoverHTML",
        flags:"",
        description:" Get the HTML for the facetValue button hover.  Default implementation returns null.\n \n",
        name:"facetValueHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValues object for the button",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "method:DataBoundComponent.setHilites":{
        ref:"method:DataBoundComponent.setHilites",
        flags:"",
        description:" Accepts an array of hilite objects and applies them to this DataBoundComponent.  See also\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.getHilites','getHilites()')} for a method of retrieving the hilite\n array for storage, including hilites manually added by the user.\n\n",
        name:"setHilites",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of hilite objects",
                optional:false,
                name:"hilites",
                defaultValue:null,
                type:"Array of Hilite"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "classMethod:Class.clearLogPriority":{
        ref:"classMethod:Class.clearLogPriority",
        flags:"",
        description:" Clear this object's priority setting for a particular category, so that the category's \n effective priority returns to the specified priority for this category at the Log level\n (or <code>Log.defaultPriority</code> if not set).<br>\n To clear the Page-level priority setting for this log category use \n <code>isc.Log.clearPriority()</code> instead.\n\n",
        name:"clearLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.clearPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category name. If not specified, all logging on this object                              will revert to default priority settings.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:DataBoundComponent.anySelected":{
        ref:"method:DataBoundComponent.anySelected",
        flags:"",
        description:" Whether at least one item is selected\n",
        name:"anySelected",
        seeAlso:[
        ],
        returns:{
            description:"true == at least one item is selected\t\t\t\t\t\t\t\tfalse == nothing at all is selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:Canvas.dynamicContents":{
        ref:"attr:Canvas.dynamicContents",
        flags:"IRWA",
        description:"Dynamic contents allows the contents string to be treated as a simple, but powerful\n template.  When this attribute is set to true, expressions of the form &#36;{arbitrary JS\n here} are replaced by the result of the evaluation of the JS code inside the curly\n brackets.  This evaluation happens at draw time.  If you want to trigger a re-evaluation\n of the expressions in the contents string you can call markForRedraw() on the canvas.\n <p>\n You can use this feature to build some simple custom components. For example, let's say\n you want to show the value of a Slider in a Canvas somewhere on the screen.  You can do\n this by observing the valueChanged() method on the slider and calling setContents() on\n your canvas with the new string or you can set the contents of the canvas to something\n like:\n <p><code>\n \"The slider value is &#36;{sliderInstance.getValue()}.\"\n </code><p>\n Next you set dynamicContents: true on the canvas, observe valueChanged() on the slider\n and call canvas.markForRedraw() in that observation.  This approach is cleaner than\n setContents() when the Canvas is aggregating several values or dynamic expressions.\n Like so:\n <p>\n <pre>\n Slider.create({\n     ID: \"mySlider\"\n });\n\n Canvas.create({\n     ID: \"myCanvas\",\n     dynamicContents: true,\n     contents: \"The slider value is &#36;{mySlider.getValue()}.\"\n });\n\n myCanvas.observe(mySlider, \"valueChanged\",\n                  \"observer.markForRedraw()\");\n </pre>\n You can embed an arbitrary number of dynamic expressions in the contents string.  The\n search and replace is optimized for speed.\n <p>\n If an error occurs during the evaluation of one of the expressions, a warning is logged\n to the ISC Developer Console and the error string is embedded in place of the expected\n value in the Canvas.\n <p>\n The value of a function is its return value.  The value of any variable is the same as\n that returned by its toString() representation.\n <p>\n Inside the evaluation contentext, <code>this</code> points to the canvas instance that\n has the dynamicContents string as its contents - in other words the canvas instance on\n which the template is declared.",
        name:"dynamicContents",
        seeAlso:[
            {
                ref:"attr:Canvas.contents",
                description:null
            },
            {
                ref:"attr:Canvas.dynamicContentsVars",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dynamicContents')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "contents"
        ]
    },
    "attr:Chart.data":{
        ref:"attr:Chart.data",
        flags:"IR",
        description:"Dataset for this chart.\n <P>\n Two basic formats are supported:\n <ul>\n <li> \"Standard model\": <code>data</code> is an array of CellRecords where each record\n contains one data value.  Each record also contains a property named after each facetId\n whose value is a facetValueId from that facet.\n <p>\n For example, with a facet with id \"regions\" and facetValues \"west\", \"north\" and \"east\", and\n with ${isc.DocUtils.linkForRef('attr:Chart.valueProperty')} with it's default value \"_value\", the <code>data</code> property\n could be:\n <pre>\n    isc.Chart.create({\n       facets:[{ id:\"regions\" }],\n       data : [\n          {regions:\"west\", _value:4},\n          {regions:\"north\", _value:2},\n          {regions:\"east\", _value:5}\n       ]\n    })</pre>\n If there were a second facet with id \"product\" and facetValues \"cars\" and \"trucks\", a Chart\n with a complete set of values would be:\n <pre>\n    isc.Chart.create({\n       facets:[{ id:\"regions\" }, { id:\"product\" }],\n       data : [\n          {product:\"cars\", regions:\"west\", _value:4},\n          {product:\"cars\", regions:\"north\", _value:2},\n          {product:\"cars\", regions:\"east\", _value:5},\n          {product:\"trucks\", regions:\"west\", _value:1},\n          {product:\"trucks\", regions:\"north\", _value:9},\n          {product:\"trucks\", regions:\"east\", _value:3}\n       ]\n    })</pre>\n This 2 facet (or \"2 dimensional\") dataset, if rendered as a bar chart, would use stacked or\n clustered bars and a legend.\n <P>\n\n <li> \"Inlined facet\": <code>data</code> is a single CellRecord or Array of CellRecords where\n each record contains multiple data values.  In this case, one facet definition is considered\n \"inlined\", meaning that the facetValueIds from this facet appear as properties in each\n record, and each such property holds one data value.  For example, a complete chart\n definition whose dataset is equivalent to the previous example would be:\n <pre>\n    isc.Chart.create({\n       facets: [{ \n          inlinedValues:true,\n          values : [ { id:\"west\" }, { id:\"north\" }, { id : \"east\" } ]\n       }],\n       data : { west:4, north:5, east:2 }\n    })</pre>\n Note that the property \"inlinedValues\" must be set on the facet definition, and the set of\n facetValueIds must be specified outside of the data array (with the \"standard model\",\n facetValueIds can be automatically derived from the data).  \n <P>\n A two facet chart with an inlined facet can be defined as follows:\n <pre>\n    isc.Chart.create({\n       facets: [\n         { \n            inlinedValues:true,\n            values : [ { id:\"west\" }, { id:\"north\" }, { id : \"east\" } ]\n         }, \n         { id:\"product\" }\n       ],\n       data : [\n           { product:\"cars\", west:4, north:5, east:2 },\n           { product:\"trucks\", west:1, north:9, east:3 }\n       ]\n    })</pre>\n </ul>\n Comparing between the formats, the \"standard model\" format treats all facets identically,\n which can be of use when integrating with server technology that likewise treats all facets\n identically.  The \"inlined facet\" format is a more compact data representation and allows\n easier conversion from data displayed in a ListGrid.",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
        ],
        valueType:"Array of CellRecord or CellRecord",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "group:jUnitSeleniumRC":{
        ref:"group:jUnitSeleniumRC",
        title:"JUnit + Selenium RC",
        refs:[
        ],
        description:"<div style=\"width:600px\">\n\n Let's take a look at some JUnit code designed to test a standalone version of the\n <smartclient>\n <a href='http://localhost:8080/isomorphic/system/reference/SmartClient_Explorer.html#treesEditing' target='_blank'>SmartClient Showcase: Trees &gt;&gt; Editing</a> \n </smartclient>\n <smartgwt>\n <a href='http://localhost:8080/index.html#tree_editing' target='_blank'>SmartClient Showcase: Trees &gt;&gt; Editing</a> \n </smartgwt>\n example.  The overall test class, TreeTest, contains a test, testTree1, targeted at the TreeGrid in the\n  example, and a test, testTree2, targeted at the SearchForm/ListGrid.  As recommended by the official \n <a href='http://seleniumhq.org/docs/08_user_extensions.html' target='_blank'>Selenium documentation</a>,  we create \n the <code>HttpCommandProcessor</code> separately from <code>DefaultSelenium</code> to provide a way to\n invoke the new user extension command <code>waitForElementClickable()</code> which SmartClient defines.\n (See our Selenium User Guide described in ${isc.DocUtils.linkForRef('group:automatedTesting')}.)\n <P>\n The test class TreeTest was initially generated by exporting the Selenium script for testTree1 in JUnit 4 \n format, but it was modified by hand as mentioned above to support the <code>waitForElementClickable()</code>.\n\n Below we look at the two test cases testTree1 and testTree2.  Note that in each case, we maximize\n the Selenium browser window in accordance with the best practices mentioned in the User Guide.\n <P>\n If you'd like to experiment with making changes to the sample JUnit code, one improvement that simplifies\n things is to add a myClick() function that handles both the <code>waitForElementClickable()</code> and\n the <code>click</code> on a supplied locator.  Even just assigning each unique locator to a local Java \n variable so it can be reused for multiple calls will make the code simpler to follow and maintain.\n\n <pre>\n import com.thoughtworks.selenium.*;\n import org.junit.After;\n import org.junit.Before;\n import org.junit.Test;\n import java.util.regex.Pattern;\n\n public class TreeTest extends SeleneseTestCase {\n  \n     HttpCommandProcessor proc;\n  \n     void waitForElementClickable(String locator) {\n         String[] locatorArg = {locator};\n         proc.doCommand(\"waitForElementClickable\", locatorArg);   \n     }\n  \n     &#64;Before\n     public void setUp() throws Exception {\n         proc = new HttpCommandProcessor(\"localhost\", 4444, \"*chrome\",\n             \"http://localhost:8080/\"); \n         selenium = new DefaultSelenium(proc);\n         selenium.start();\n     }\n\n     &#64;Test\n     public void testTree1() throws Exception {\n         selenium.open(\"treeEdit.html\");\n         selenium.windowMaximize();\n\n         waitForElementClickable(\"scLocator=//TreeGrid[ID=\\\"employeeTree\\\"]/body/row[EmployeeId=4||Name=Charles%20Madigen||0]/col[fieldName=Name||0]/open\");\n         selenium.click(\"scLocator=//TreeGrid[ID=\\\"employeeTree\\\"]/body/row[EmployeeId=4||Name=Charles%20Madigen||0]/col[fieldName=Name||0]/open\");\n         waitForElementClickable(\"scLocator=//TreeGrid[ID=\\\"employeeTree\\\"]/body/row[EmployeeId=189||Name=Gene%20Porter||8]/col[fieldName=Name||0]/open\");\n         selenium.click(\"scLocator=//TreeGrid[ID=\\\"employeeTree\\\"]/body/row[EmployeeId=189||Name=Gene%20Porter||8]/col[fieldName=Name||0]/open\");\n         waitForElementClickable(\"scLocator=//TreeGrid[ID=\\\"employeeTree\\\"]/body/row[EmployeeId=264||Name=Cheryl%20Pearson||Salary=5650||10]/col[fieldName=Salary||2]\");\n         verifyEquals(\"5650\", selenium.getText(\"scLocator=//TreeGrid[ID=\\\"employeeTree\\\"]/body/row[EmployeeId=264||Name=Cheryl%20Pearson||Salary=5650||10]/col[fieldName=Salary||2]\"));\n\n         checkForVerificationErrors();\n     }\n </pre>\n\n In test testTree1, the idea is to:\n <ul>\n     <li> Open the node for the top level employee, Charles Madigen,\n     <li> Open the node for his report, Gene Porter, and\n     <li> Verify that the Salary of Cheryl Pearson, who reports to Gene, is 5650\n </ul>\n For this test, the locators were generated by Selenium IDE for us but we did modify the code\n to make use of the function <code>waitForElementClickable()</code>.\n <P>\n      Note that though the locator for Cheryl includes the salary, it will match based on the first\n field, EmployeeId, which is the primary key, so the test will correctly compare the contents \n of Cheryl's salaray against the value 5650 and fail if it doesn't match.  If for some reason \n your test requires matching a specific field rather than the default fields and ordering\n generated automatically, you can hand edit the locator.\n\n <pre>\n \n     public void testTree2() throws Exception {\n         selenium.open(\"treeEdit.html\");\n         selenium.windowMaximize();\n\n         // Steps 1-3: Load the ListGrid with Joan's Reports\n         waitForElementClickable(\"scLocator=//SearchForm[ID=\"employeeSearchForm\"]/item[index=0||Class=PickTreeItem]/button/\");\n         selenium.click(\"scLocator=//SearchForm[ID=\"employeeSearchForm\"]/item[index=0||Class=PickTreeItem]/button/\");\n\n         waitForElementClickable(\"scLocator=//autoID[Class=SelectionTreeMenu||index=8||length=14||classIndex=0||classLength=2||roleIndex=0||roleLength=2||scRole=menu]/body/row[Name=Charles%20Madigen]/col[fieldName=title||0]\");\n         selenium.mouseMove(\"scLocator=//autoID[Class=SelectionTreeMenu||index=8||length=14||classIndex=0||classLength=2||roleIndex=0||roleLength=2||scRole=menu]/body/row[Name=Charles%20Madigen]/col[fieldName=title||0]\");\n\n         waitForElementClickable(\"scLocator=//SelectionTreeMenu[ID=\\\"isc_SelectionTreeMenu_0_childrenSubMenu_0\\\"]/body/row[EmployeeId=183]/col[fieldName=title||1]\");\n         selenium.click(\"scLocator=//SelectionTreeMenu[ID=\\\"isc_SelectionTreeMenu_0_childrenSubMenu_0\\\"]/body/row[EmployeeId=183]/col[fieldName=title||1]\");\n \n         // Step 4: Sort by salary, descending, and wait for ListGrid to be redrawn with final result\n         waitForElementClickable(\"scLocator=//ListGrid[ID=\\\"employeeGrid\\\"]/header/headerButton[fieldName=Salary]/\");\n         selenium.click(\"scLocator=//ListGrid[ID=\\\"employeeGrid\\\"]/header/headerButton[fieldName=Salary]/\");\n         waitForElementClickable(\"scLocator=//ListGrid[ID=\\\"employeeGrid\\\"]/header/headerButton[fieldName=Salary]/\");\n         selenium.click(\"scLocator=//ListGrid[ID=\\\"employeeGrid\\\"]/header/headerButton[fieldName=Salary]/\");\n\n         selenium.waitForGridDone(\"scLocator=//ListGrid[ID='employeeGrid']\");\n\n         // Step 5: Verify the top salary\n         waitForElementClickable(\"scLocator=//ListGrid[ID=\\\"employeeGrid\\\"]/body/row[0]/col[fieldName=Salary||2]\");\n         verifyEquals(\"9400\", selenium.getText(\"scLocator=//ListGrid[ID=\\\"employeeGrid\\\"]/body/row[0]/col[fieldName=Salary||2]\"));\n\n         checkForVerificationErrors();\n     }\n </pre>\n\n In test testTree2, the idea is to:\n <P>\n 1. Click on the SearchForm button, revealing a Charles Madigen popup,<BR>\n 2. Issue a MouseMove on the Charles Madigen popup, revealing a list of his reports,<BR>\n 3. Click on his report Joan Little, filling the ListGrid with her reports,<BR>\n 4. Click on the salary column header twice, sorting by descending salary, and<BR>\n 5. Verify the salary in the top row (top salary) is 9400<BR>\n <P>\n This test required more hand modification than the previous one.  In particular three modifications were made:\n <ul>\n    <li> A mouseMove command was manually added to the Selenium IDE script,\n    <li> A call to <code>waitForGridDone()</code> was added to assure the sorting was done before we ran verifyText, and\n    <li> We manually removed all but row qualifier from the automatically generated scLocator for step &#35;5.\n </ul>\n \n The first modification is required because our user extensions don't record mouseMove\n events, and the second is needed to ensure the sorts are complete before verifyText runs--for\n details see the User Guide (described in ${isc.DocUtils.linkForRef('group:automatedTesting')}).  The final modification is\n just a reflection of what our intent is in step &#35;5; we want to operate on the top row,\n regardless of its contents, so we don't want our locator matching based on the EmployeeId or\n Name fields of the records.  (Matching by EmployeeId in the locator as automatically\n generated would make the test verify that Kelly Fetterman's salary is 9400 rather than that 9400 \n is the highest salary.)\n \n <pre>\n     &#64;After\n     public void tearDown() throws Exception {\n         selenium.stop();\n     }\n }\n </pre>\n </div>",
        name:"jUnitSeleniumRC",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:HeaderLevel.headerWidth":{
        ref:"attr:HeaderLevel.headerWidth",
        flags:"IR",
        description:"If set, the width for each of the spans in this headerLevel.  Note that this setting only \n has an effect on the innermost headerLevel.",
        name:"headerWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderLevel"
    },
    "attr:ListGridField.valueIconHeight":{
        ref:"attr:ListGridField.valueIconHeight",
        flags:"IRW",
        description:"Height for value icons for this listGrid field.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconSize')}, ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconHeight')}, and\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconSize')}.",
        name:"valueIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "classAttr:RPCManager.promptStyle":{
        ref:"classAttr:RPCManager.promptStyle",
        flags:"IRW",
        description:"Controls the default prompt style.  Overrideable by ${isc.DocUtils.linkForRef('attr:RPCRequest.promptStyle')}.",
        name:"promptStyle",
        seeAlso:[
            {
                ref:"attr:RPCRequest.promptStyle",
                description:null
            }
        ],
        valueType:"PromptStyle",
        defaultValue:"\"dialog\"",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "rpcPrompt"
        ]
    },
    "method:Class.addPropertyList":{
        ref:"method:Class.addPropertyList",
        flags:"",
        description:"\n\tAdd properties to this instance.\n\n",
        name:"addPropertyList",
        seeAlso:[
        ],
        params:[
            {
                description:"array of objects with properties to add",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"object[]"
            }
        ],
        returns:{
            description:"the object after properties have been added to it",
            type:"object"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "attr:ImgButton.radioGroup":{
        ref:"attr:ImgButton.radioGroup",
        flags:"IRWA",
        description:"String identifier for this canvas's mutually exclusive selection group.",
        name:"radioGroup",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonRadioToggle')}"
        ],
        definingClass:"class:ImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:Window.footerHeight":{
        ref:"attr:Window.footerHeight",
        flags:"IR",
        description:"The height of the footer, in pixels.",
        name:"footerHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"18",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "footer"
        ]
    },
    "method:DataBoundComponent.selectRecords":{
        ref:"method:DataBoundComponent.selectRecords",
        flags:"",
        description:"\n Select/deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n <P>\n Note that developers may wish to use ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectRange')} to select a single\n contiguous range.\n\n",
        name:"selectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to select",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:Slider.labelWidth":{
        ref:"attr:Slider.labelWidth",
        flags:"IRW",
        description:"The width of the labels used to display the minimum, maximum and current values of the\n slider.",
        name:"labelWidth",
        setter:[
            "setLabelWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"50",
        type:"attr",
        definingClass:"class:Slider"
    },
    "method:PickList.fetchData":{
        ref:"method:PickList.fetchData",
        flags:"",
        description:" Only applies to databound items (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}).<br>\n Performs a fetch type operation on this item's DataSource to retrieve the set of valid\n options for the item, based on the current ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria')}.\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Callback to fire when the fetch completes. Callback will               fire with 4 parameters:<ul>\n  <li><code>item</code> a pointer to the form item\n  <li><code>dsResponse</code> the ${isc.DocUtils.linkForRef('class:DSResponse')} returned by the server\n  <li><code>data</code> the raw data returned by the server\n  <li><code>dsRequest</code> the ${isc.DocUtils.linkForRef('class:DSRequest')} sent to the server\n  </ul>",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"properties to apply to the              dsRequest for this fetch.",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest properties"
            }
        ],
        type:"method",
        definingClass:"interface:PickList"
    },
    "attr:Slider.vertical":{
        ref:"attr:Slider.vertical",
        flags:"IRW",
        description:"Indicates whether this is a vertical or horizontal slider.",
        name:"vertical",
        setter:[
            "setVertical"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('slider')}"
        ],
        definingClass:"class:Slider"
    },
    "attr:Window.showHeaderBackground":{
        ref:"attr:Window.showHeaderBackground",
        flags:"IRA",
        description:"Should the window header show a background image? Default value is true for all browsers\n except for Internet Explorer.<br>\n If set to true the image source is derived from ${isc.DocUtils.linkForRef('attr:Window.headerSrc')} and \n ${isc.DocUtils.linkForRef('attr:Window.hiliteHeaderSrc')}, otherwise the background will be styled according to \n ${isc.DocUtils.linkForRef('attr:Window.headerStyle')} / ${isc.DocUtils.linkForRef('attr:Window.hiliteHeaderStyle')}.",
        name:"showHeaderBackground",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "attr:DynamicForm.minColWidth":{
        ref:"attr:DynamicForm.minColWidth",
        flags:"IRW",
        description:"Minimum width of a form column.",
        name:"minColWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "attr:ListGrid.checkboxFieldImageWidth":{
        ref:"attr:ListGrid.checkboxFieldImageWidth",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is set to <code>\"checkbox\"</code> this property\n may be set to govern the width of the checkbox image displayed to indicate whether a row is\n selected. If unset, the checkboxField image will be sized to match the\n ${isc.DocUtils.linkForRef('attr:ListGrid.booleanImageWidth')} for this grid.",
        name:"checkboxFieldImageWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "class:SpacerItem":{
        methods:[
        ],
        ref:"class:SpacerItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:SpacerItem.showTitle",
            "attr:SpacerItem.width",
            "attr:SpacerItem.height"
        ],
        description:"A SpacerItem takes up a single cell in the FormLayout, of arbitrary size.",
        name:"SpacerItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FormItem.valueIconRightPadding":{
        ref:"attr:FormItem.valueIconRightPadding",
        flags:"IRW",
        description:"If we're showing a value icon, this attribute governs the amount of space between the \n icon and the value text.\n <p>\n <b>NOTE:</b> In RTL mode, the valueIconRightPadding is applied to the <em>left</em> of\n the value icon.",
        name:"valueIconRightPadding",
        seeAlso:[
            {
                ref:"attr:FormItem.valueIcons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"3",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "attr:Tab.closeIconSize":{
        ref:"attr:Tab.closeIconSize",
        flags:"IRW",
        description:"Size of the ${isc.DocUtils.linkForRef('attr:Tab.closeIcon')} for this tab. If unspecified the icon will be sized\n according to ${isc.DocUtils.linkForRef('attr:TabSet.closeTabIconSize')}",
        name:"closeIconSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "method:FormItem.setCriterion":{
        ref:"method:FormItem.setCriterion",
        flags:"A",
        description:" Update this form item to reflect a criterion object from within an AdvancedCriteria.\n Called by ${isc.DocUtils.linkForRef('method:DynamicForm.setValuesAsCriteria')} when ${isc.DocUtils.linkForRef('method:FormItem.canEditCriterion')}\n returns true for this item.\n <P>\n Default implementation simply calls ${isc.DocUtils.linkForRef('method:FormItem.setValue')} with the <code>value</code>\n of the criterion passed in\n",
        name:"setCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"criterion to edit",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:Canvas.canDrag":{
        ref:"attr:Canvas.canDrag",
        flags:"IRWA",
        description:"Indicates whether this widget can initiate custom drag-and-drop operations (other than\n reposition or resize). Normally ${isc.DocUtils.linkForRef('attr:Canvas.canDragReposition')} or ${isc.DocUtils.linkForRef('attr:Canvas.canDragResize')} would\n be used instead of this property.\n <p>\n Note: this property may be manipulated by higher-level dragging semantics.\n <p>\n If ${isc.DocUtils.linkForRef('attr:Canvas.useNativeDrag')} is true and this widget has been drawn, then this widget must be\n ${isc.DocUtils.linkForRef('method:Canvas.redraw','redrawn')} in order for a change of the value of this attribute to take effect.",
        name:"canDrag",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragCreate')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:FieldPicker.showHilitesButton":{
        ref:"attr:FieldPicker.showHilitesButton",
        flags:"IR",
        description:"Shows a \"Highlights...\" button that shows an interface for editing hilites in the attached\n DataBoundComponent.  If unset, defaults to the value of \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.canEditHilites','canEditHilites')} on the associated component.",
        name:"showHilitesButton",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FieldPicker"
    },
    "method:DrawLine.isPointInPath":{
        ref:"method:DrawLine.isPointInPath",
        flags:"",
        description:" Returns true if the given point in the drawing coordinate system is within this DrawItem's shape,\n taking into account local transforms.\n",
        name:"isPointInPath",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate of the test point.",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Y coordinate of the test point.",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:null,
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawLine"
    },
    "type:DateDisplayFormat":{
        ref:"type:DateDisplayFormat",
        values:[
            {
                description:"Default native browser 'toString()' implementation. May vary by browser.<br>\n <i>Example</i>: <code>Fri Nov 04 2005 11:03:00 GMT-0800 (Pacific Standard Time)</code>",
                value:"toString"
            },
            {
                description:"Default native browser 'toLocaleString()' implementation. May vary by browser.\n <i>Example</i>: <code>Friday, November 04, 2005 11:03:00 AM</code>",
                value:"toLocaleString"
            },
            {
                description:"Short date in format MM/DD/YYYY.<br> <i>Example</i>: <code>11/4/2005</code>",
                value:"toUSShortDate"
            },
            {
                description:"Short date with time in format MM/DD/YYYY HH:MM<br> <i>Example</i>: <code>11/4/2005 11:03</code>",
                value:"toUSShortDatetime"
            },
            {
                description:"Short date in format DD/MM/YYYY.<br> <i>Example</i>: <code>4/11/2005</code>",
                value:"toEuropeanShortDate"
            },
            {
                description:"Short date with time in format DD/MM/YYYY HH:MM<br> <i>Example</i>: <code>4/11/2005 11:03</code>",
                value:"toEuropeanShortDatetime"
            },
            {
                description:"Short date in format YYYY/MM/DD.<br> <i>Example</i>: <code>2005/11/4</code>",
                value:"toJapanShortDate"
            },
            {
                description:"Short date with time in format YYYY/MM/DD HH:MM<br> <i>Example</i>: <code>2005/11/4 11:03</code>",
                value:"toJapanShortDatetime"
            },
            {
                description:"Date in the format YYYY-MM-DD HH:MM:SS<br> <i>Example</i>: <code>2005-11-04 11:09:15</code>",
                value:"toSerializeableDate"
            },
            {
                description:"Date in the format &lt;YYYYMMDD&gt;T&lt;HHMMSS&gt;Z <i>Example</i>: <code>20051104T111001Z</code>\n <br>\n <br>\n Note: In addition to these standard formats, custom formatting can be set by passing\n a function directly to ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')} et al. This\n function will then be executed whenever the appropriate formatter method is called [eg\n ${isc.DocUtils.linkForRef('method:Date.toNormalDate')}], in the scope of the date instance in question.\n <p>\n Custom formatting can also be applied by passing a ${isc.DocUtils.linkForRef('type:FormatString')} instead of a \n <code>DateDisplayFormat</code> string to ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')} et al. See\n the <code>FormatString</code> docs for details.",
                value:"toDateStamp"
            }
        ],
        description:"Valid display formats for dates.  These strings are the names of formatters which can be\n passed to <code>Date.setNormalDisplayFormat()</code> or <code>Date.setShortDisplayFormat()</code>\n and will be subsequently used as default long or short formatters for date objects by\n SmartClient components.<br>\n Default set of valid display formats is as follows:<br><br>",
        name:"DateDisplayFormat",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:IMenuButton.autoDestroyMenu":{
        ref:"attr:IMenuButton.autoDestroyMenu",
        flags:"IRW",
        description:"If this menuButton is ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroyed')}, should it also destroy\n its ${isc.DocUtils.linkForRef('attr:MenuButton.menu')}?",
        name:"autoDestroyMenu",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "method:Progressbar.setBreadth":{
        ref:"method:Progressbar.setBreadth",
        flags:"",
        description:" Sets the breadth of the progressbar to newLength. This is the height of a horizontal progressbar,\n or the width of a vertical progressbar.\n\n",
        name:"setBreadth",
        seeAlso:[
        ],
        params:[
            {
                description:"the new breadth of the progressbar",
                optional:false,
                name:"newBreadth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Progressbar"
    },
    "group:criteriaEditing":{
        ref:"group:criteriaEditing",
        title:"Criteria Editing",
        treeLocation:[
            "Client Reference/Forms"
        ],
        refs:[
            "method:DynamicForm.getValuesAsCriteria",
            "method:DynamicForm.setValuesAsCriteria",
            "method:DynamicForm.getValuesAsAdvancedCriteria",
            "method:FormItem.hasAdvancedCriteria",
            "method:FormItem.canEditCriterion",
            "method:FormItem.getCriterion",
            "method:FormItem.setCriterion",
            "method:CanvasItem.hasAdvancedCriteria",
            "method:CanvasItem.canEditCriterion",
            "method:CanvasItem.getCriterion",
            "method:CanvasItem.setCriterion",
            "method:ComboBoxItem.hasAdvancedCriteria",
            "method:ComboBoxItem.getCriterion",
            "method:ComboBoxItem.canEditCriterion",
            "method:ComboBoxItem.setCriterion",
            "method:DateRangeItem.hasAdvancedCriteria",
            "method:DateRangeItem.getCriterion",
            "method:DateRangeItem.canEditCriterion",
            "method:DateRangeItem.setCriterion",
            "method:MiniDateRangeItem.hasAdvancedCriteria",
            "method:MiniDateRangeItem.getCriterion",
            "method:MiniDateRangeItem.setCriterion",
            "method:MiniDateRangeItem.canEditCriterion",
            "attr:FormItem.operator"
        ],
        description:"DynamicForms may be used to edit ${isc.DocUtils.linkForRef('type:Criteria')} or ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} for filtering \n data from a DataSource.\n <P>\n The main APIs for this are ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} and\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValuesAsCriteria')}.\n <P>\n <code>getValuesAsCriteria()</code> will return an AdvancedCriteria object in the following\n cases:\n <ul>\n <li>The form was previously passed AdvancedCriteria via <code>setValuesAsCriteria()</code></li>\n <li>The form has a specified ${isc.DocUtils.linkForRef('attr:DynamicForm.operator')} of <code>\"or\"</code></li>\n <li>${isc.DocUtils.linkForRef('method:FormItem.hasAdvancedCriteria')} returns true for some item(s) within the form</li>\n </ul>\n <P>\n <smartclient>\n Note that at the form item level, individual items can support editing of advanced criteria\n via overrides to the ${isc.DocUtils.linkForRef('method:FormItem.hasAdvancedCriteria')}, ${isc.DocUtils.linkForRef('method:FormItem.canEditCriterion')},\n ${isc.DocUtils.linkForRef('method:FormItem.setCriterion')} and ${isc.DocUtils.linkForRef('method:FormItem.getCriterion')} methods.\n </smartclient>\n <smartgwt>\n Note that at the form item level, individual items can support editing of advanced criteria\n by registering <code>FormItemCanEditCriterionPredicate</code>, <code>FormItemCriterionSetter</code>,\n and <code>FormItemCriterionGetter</code> objects to implement the methods <code>canEditCriterion()</code>,\n <code>setCriterion()</code>, and <code>getCriterion()</code>, respectively.\n </smartgwt>\n <P>\n There is also built-in support for ${isc.DocUtils.linkForRef('attr:DynamicForm.allowExpressions','expression-parsing')} \n in DynamicForms.  This allows expressions, like '&gt;5' (greater than 5) or 'a...c' \n (between a and c) to be edited and generated automatically by appropriate formItems.\n <P>\n Some FormItems have special behavior - for instance, a ${isc.DocUtils.linkForRef('class:SelectItem')} with \n ${isc.DocUtils.linkForRef('attr:SelectItem.multiple','multiple:true')} will successfully edit and return criteria with an\n <code>inSet</code> operator.\n <P>\n The common pattern of using nested dynamicForms to edit arbitrary advanced criteria has been\n implemented via overrides to these methods in the ${isc.DocUtils.linkForRef('class:CanvasItem')} class. See \n <smartclient>${isc.DocUtils.linkForRef('method:CanvasItem.getCriterion')}</smartclient>\n <smartgwt><code>CanvasItem.setCriterionGetter()</code></smartgwt> for details.\n <P>\n For completely user-driven advanced criteria editing see also the ${isc.DocUtils.linkForRef('class:FilterBuilder')} class.",
        name:"criteriaEditing",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.checkboxField":{
        ref:"attr:ListGrid.checkboxField",
        flags:"IR",
        getter:[
            "getCheckboxField"
        ],
        description:"Returns the specially generated checkbox field used when ${isc.DocUtils.linkForRef('type:SelectionAppearance')} is\n \"checkbox\".  Created via the ${isc.DocUtils.linkForRef('type:AutoChild')} pattern so that\n <code>checkboxFieldDefaults</code> and <code>checkboxFieldProperties</code> are available\n for skinning purposes. Note that ${isc.DocUtils.linkForRef('attr:ListGridField.shouldPrint')} is <code>false</code>\n for the checkboxField by default - if you want this column to show up in the grid's print\n view, use <code>checkboxFieldProperties</code> to set this property to true.\n <P>\n This field will render an icon to indicate the selected state of each row, which, when\n clicked will toggle the selection state. The icon src may be configured using\n ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldTrueImage')} and ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldFalseImage')}, as\n well as ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldImageWidth')} and ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldImageHeight')}.\n <P>\n The checkboxField can be detected by calling ${isc.DocUtils.linkForRef('method:ListGrid.isCheckboxField')} on any\n ListGridField object.",
        name:"checkboxField",
        seeAlso:[
        ],
        valueType:"AutoChild ListGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "attr:UserFormula.text":{
        ref:"attr:UserFormula.text",
        flags:"IRW",
        description:"Formula to be evaluated.  All variables used by the formula must be single-letter capital\n characters (eg A). These are derived from field values for the record in question\n - see ${isc.DocUtils.linkForRef('attr:UserFormula.formulaVars')}.\n <P>\n In addition to these variables, the keyword <code>record</code> may be used to\n refer directly to the record for which the formula is being displayed.",
        name:"text",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:UserFormula"
    },
    "attr:DrawPane.zoomLevel":{
        ref:"attr:DrawPane.zoomLevel",
        flags:"IRW",
        description:"Zoom for the <code>DrawPane</code> as a whole, where 1 is normal size.",
        name:"zoomLevel",
        setter:[
            "setZoomLevel"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:DrawPane"
    },
    "attr:ListGridField.imageURLPrefix":{
        ref:"attr:ListGridField.imageURLPrefix",
        flags:"IRWA",
        description:"If this field has type [${isc.DocUtils.linkForRef('type:ListGridFieldType')}] set to <code>\"image\"</code>\n and the URL for the image displayed is not absolute, the path of the URL will be relative\n to this string<br>\n Alternatively, if this field displays any valueIcons, this prefix will be applied to\n the beginning of any ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons')} when determining the\n URL for the image.",
        name:"imageURLPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('imageType')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "method:ListGrid.setAlternateRecordStyles":{
        ref:"method:ListGrid.setAlternateRecordStyles",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.alternateRecordStyles')}\n",
        name:"setAlternateRecordStyles",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for <code>this.alternateRecordStyles</code>",
                optional:false,
                name:"alternateStyles",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.autoFitMaxRecords":{
        ref:"attr:ListGrid.autoFitMaxRecords",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData')} is set to <code>\"vertical\"</code> or <code>\"both\"</code> this\n property provides the maximum number of records for which the ListGrid will expand. If more\n records are present, scrolling will be introduced to reach them as normal.\n If unset, by default the ListGrid will expand to accommodate as many records as are present.",
        name:"autoFitMaxRecords",
        setter:[
            "setAutoFitMaxRecords"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"50",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "attr:ServiceTask.criteria":{
        ref:"attr:ServiceTask.criteria",
        flags:"IR",
        description:"Criteria (including AdvancedCriteria) to use for a \"fetch\" operation.\n <P>\n Data values in this criteria prefixed with \"$\" will be treated as dynamic expressions\n which can access the inputs to this task as $input - see\n ${isc.DocUtils.linkForRef('group:taskInputExpression')}.  Specifically, this means that for simple criteria,\n any property value that is a String and is prefixed with \"$\" will be assumed to be an\n expression, and for AdvancedCriteria, the same treatment will be applied to\n ${isc.DocUtils.linkForRef('attr:Criterion.value')}.\n <P>\n If any data value should not be treated as dynamic (for example, a \"$\" should be taken\n as literal), you can place it in ${isc.DocUtils.linkForRef('attr:ServiceTask.fixedCriteria')} instead.\n <P>\n Ignored for any operationType other than \"fetch\".  Update or delete operations should\n place the primary key to update in ${isc.DocUtils.linkForRef('attr:ServiceTask.values')}.",
        name:"criteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ServiceTask",
        groups:[
            "taskIO"
        ]
    },
    "attr:Layout.showDropLines":{
        ref:"attr:Layout.showDropLines",
        flags:"IRW",
        description:"Controls whether to show a drop-indicator during a drag and drop operation.  Set to \n false if you either don't want to show drop-lines, or plan to create your own.",
        name:"showDropLines",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "dragdrop"
        ]
    },
    "attr:Gauge.minValue":{
        ref:"attr:Gauge.minValue",
        flags:"IRW",
        description:"The minimum dial value.",
        name:"minValue",
        setter:[
            "setMinValue"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "classAttr:Date.weekendDays":{
        ref:"classAttr:Date.weekendDays",
        flags:"IR",
        getter:[
            "getWeekendDays"
        ],
        description:"Days that are considered \"weekend\" days.   Values should be the integers returned by the\n JavaScript built-in Date.getDay(), eg, 0 is Sunday and 6 is Saturday.  Override to\n accommodate different workweeks such as Saudi Arabia (Saturday -> Wednesday) or Israel\n (Sunday -> Thursday).",
        name:"weekendDays",
        setter:[
            "setWeekendDays"
        ],
        seeAlso:[
        ],
        valueType:"Array of int",
        defaultValue:"[0, 6]",
        type:"classAttr",
        definingClass:"class:Date"
    },
    "attr:MenuItem.icon":{
        ref:"attr:MenuItem.icon",
        flags:"IR",
        description:"The filename for this item's custom icon. If both this property and\n ${isc.DocUtils.linkForRef('attr:MenuItem.checked')} are both specified, only the icon specified by this property will be\n displayed. The path to the loaded skin directory and the skinImgDir are prepended to\n this filename to form the full URL. If this item is disabled, and ${isc.DocUtils.linkForRef('attr:MenuItem.disabledIcon')}\n is set, then that icon will be used instead.\n <p>\n If you need to set this state dynamically, use ${isc.DocUtils.linkForRef('method:MenuItem.dynamicIcon')} instead.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "menuIcons"
        ]
    },
    "attr:ViewLoader.viewRPCProperties":{
        ref:"attr:ViewLoader.viewRPCProperties",
        flags:"IRA",
        description:"RPCRequest properties to be sent with every RPCRequest issued by the ViewLoader.  Very\n advanced; could be used to, for example, set HTTP headers.",
        name:"viewRPCProperties",
        seeAlso:[
        ],
        valueType:"RPCRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ViewLoader"
    },
    "attr:DataSource.autoConvertRelativeDates":{
        ref:"attr:DataSource.autoConvertRelativeDates",
        flags:"IR",
        description:"Whether to convert relative date values to concrete date values before sending to the \n server.  Default value is true, which means that the server does not need to understand \n how to filter using relative dates - it receives all date values as absolute dates.",
        name:"autoConvertRelativeDates",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:ResultTree.serverFilterFields":{
        ref:"attr:ResultTree.serverFilterFields",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ResultTree.keepParentsOnFilter')} is enabled for ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"local\"')}\n ResultTrees, this property lists field names that will be sent to the server if they\n are present in the criteria.",
        name:"serverFilterFields",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "attr:Slider.thumbThinWidth":{
        ref:"attr:Slider.thumbThinWidth",
        flags:"IRW",
        description:"The dimension of the thumb parallel to the slider track.",
        name:"thumbThinWidth",
        setter:[
            "setThumbThinWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"17",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:MultiSortPanel.propertyFieldTitle":{
        ref:"attr:MultiSortPanel.propertyFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"property\" field.",
        name:"propertyFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.hoverWidth":{
        ref:"attr:ListGridField.hoverWidth",
        flags:"IRW",
        description:"Specifies the width of the canvas shown when the mouse hovers over cells in this field. \n <P>\n If unset, default behavior is derived from ${isc.DocUtils.linkForRef('attr:ListGrid.headerHoverWidth')}.",
        name:"hoverWidth",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:MultiComboBoxItem.comboForm":{
        ref:"attr:MultiComboBoxItem.comboForm",
        flags:"RA",
        description:"The ${isc.DocUtils.linkForRef('class:DynamicForm')} holding the ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.comboBox','comboBox')}.",
        name:"comboForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:FacetChart.zoomChartProperties":{
        ref:"attr:FacetChart.zoomChartProperties",
        flags:"IR",
        description:"Properties to further configure the ${isc.DocUtils.linkForRef('attr:FacetChart.zoomChart')}.",
        name:"zoomChartProperties",
        seeAlso:[
        ],
        valueType:"FacetChart Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.setBodyStyleName":{
        ref:"method:ListGrid.setBodyStyleName",
        flags:"",
        description:" Update the ${isc.DocUtils.linkForRef('attr:ListGrid.bodyStyleName','bodyStyleName')} for this listGrid.\n",
        name:"setBodyStyleName",
        seeAlso:[
        ],
        params:[
            {
                description:"new body style name",
                optional:false,
                name:"styleName",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:StretchImgButton.wrap":{
        ref:"attr:StretchImgButton.wrap",
        flags:"IRW",
        description:"Should the title for this button wrap? If unset, default behavior is to allow wrapping\n if this.vertical is true, otherwise disallow wrapping",
        name:"wrap",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "attr:FormItemIcon.showRTL":{
        ref:"attr:FormItemIcon.showRTL",
        flags:"IRA",
        description:"Should this icon's ${isc.DocUtils.linkForRef('attr:FormItemIcon.src','src')} and/or ${isc.DocUtils.linkForRef('attr:FormItemIcon.baseStyle','baseStyle')}\n switch to the appropriate RTL value when the FormItem is in RTL mode? If true, then\n the image URL for all states will have \"_rtl\" added before the extension. Also, if\n baseStyle is set, all style names will have an \"RTL\" suffix. This should only be\n enabled if RTL media is available.\n <p>\n For example, if an icon's src is \"[SKINIMG]formItemIcons/myFormIcon.png\" and the baseStyle\n is \"myFormIcon\", then in the \"Down\" state, SmartClient will use \"[SKINIMG]formItemIcons/myFormIcon_Down_rtl.png\"\n for the image source and \"myFormIconDownRTL\" for the style name.",
        name:"showRTL",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "RTL",
            "formIcons"
        ]
    },
    "classAttr:RPCManager.useCursorTracker":{
        ref:"classAttr:RPCManager.useCursorTracker",
        flags:"IRW",
        description:"If true, an image is shown to the right of the cursor when ${isc.DocUtils.linkForRef('attr:RPCRequest.promptStyle')} is\n set to \"cursor\", otherwise the cursor itself is modified via css to the value of\n ${isc.DocUtils.linkForRef('attr:RPCRequest.promptCursor')}.  The default is platform-dependent.  In IE 5.5 and\n Firefox 1.0 the default is true, on all other platforms it is false.  The reason for\n this split is that, the above browsers require that the cursor move before CSS settings are\n re-evaluated - this means the progress cursor can stick until the user moves the mouse.\n <p>\n This value can be overridden on a per-request basis via ${isc.DocUtils.linkForRef('classAttr:RPCRequest.useCursorTracker')}.",
        name:"useCursorTracker",
        seeAlso:[
            {
                ref:"classAttr:RPCRequest.useCursorTracker",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"platform-dependent",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:ListGrid.gridSummaryRecordProperty":{
        ref:"attr:ListGrid.gridSummaryRecordProperty",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true, this attribute will be set to true on the\n record object representing the grid summary row.",
        name:"gridSummaryRecordProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"isGridSummary\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "type:SelectionBoundary":{
        ref:"type:SelectionBoundary",
        values:[
            {
                description:"selection boundary applies to the bottom / right of the cells",
                value:"\"after\""
            },
            {
                description:"selection boundary applies to the top / left of the cells",
                value:"\"before\""
            },
            {
                description:"selection boundary applies to both edges.",
                value:"\"both\""
            }
        ],
        description:"Boundary type for limiting where contiguous selection (via shift+click or drag selection)\n can be applied across ${isc.DocUtils.linkForRef('attr:Facet.selectionBoundary','facets')} or \n ${isc.DocUtils.linkForRef('attr:FacetValue.selectionBoundary','facetValues')}.",
        name:"SelectionBoundary",
        seeAlso:[
        ],
        type:"type"
    },
    "classAttr:Operators.iNotEndsWithTitle":{
        ref:"classAttr:Operators.iNotEndsWithTitle",
        flags:"IR",
        description:"Title for the \"iNotEndsWith\" operator",
        name:"iNotEndsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not end with\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.getRowTop":{
        ref:"method:ListGrid.getRowTop",
        flags:"",
        description:" Returns the top coordinate for a given row number, relative to the top of body content.  Use\n ${isc.DocUtils.linkForRef('method:ListGrid.getRowPageTop')} for a page-relative coordinate.\n <P>\n This method is reliable only for rows that are currently drawn, which is generally only rows\n that are visible in the viewport.  If row heights vary (see <code>fixedRowHeights</code>),\n coordinates for rows that are not currently shown are rough approximations.\n\n",
        name:"getRowTop",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Y-coordinate",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "positioning"
        ]
    },
    "attr:DateChooser.showSecondItem":{
        ref:"attr:DateChooser.showSecondItem",
        flags:"IRW",
        description:"When showing the ${isc.DocUtils.linkForRef('attr:DateChooser.timeItem','time field')}, whether to show the \"second\" \n picker.  When unset, the second field is not shown.",
        name:"showSecondItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:RelativeDateItem.pickerConstructor":{
        ref:"attr:RelativeDateItem.pickerConstructor",
        flags:"IR",
        description:"SmartClient class for the ${isc.DocUtils.linkForRef('class:DateChooser','dateChooser')} autoChild displayed to allow the user\n to directly select dates.",
        name:"pickerConstructor",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"DateChooser\"",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:RelativeDateItem.secondsAgoTitle":{
        ref:"attr:RelativeDateItem.secondsAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"second\".",
        name:"secondsAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N seconds ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColorPicker.defaultOpacity":{
        ref:"attr:ColorPicker.defaultOpacity",
        flags:"IR",
        description:"The initial opacity value for the component, as a percentage value between 0 and 100",
        name:"defaultOpacity",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:Window.canFocusInHeaderButtons":{
        ref:"attr:Window.canFocusInHeaderButtons",
        flags:"IRWA",
        description:"If true, the user can give the header buttons keyboard focus (by clicking on\n      them and including them in the tabOrder)",
        name:"canFocusInHeaderButtons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "focus",
            "header"
        ]
    },
    "attr:ToolStrip.members":{
        ref:"attr:ToolStrip.members",
        flags:"IR",
        description:"Array of components that will be contained within this Toolstrip, like\n ${isc.DocUtils.linkForRef('attr:Layout.members')}, with the following special behaviors:\n <ul>\n <li>the String \"separator\" will cause a separator to be created (instance of \n ${isc.DocUtils.linkForRef('attr:ToolStrip.separatorClass')})\n <li>the String \"resizer\" will cause a resizer to be created (instance of\n ${isc.DocUtils.linkForRef('attr:ToolStrip.resizeBarClass')}).  This is equivalent to setting\n ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar','showResizeBar:true')} on the preceding member.\n </ul>",
        name:"members",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('toolstrip')}"
        ],
        definingClass:"class:ToolStrip"
    },
    "method:GridRenderer.findColNum":{
        ref:"method:GridRenderer.findColNum",
        flags:"",
        description:" Given a record displayed in this grid, find and return the colNum in which the record\n appears.\n <P>\n As with ${isc.DocUtils.linkForRef('method:GridRenderer.getCellRecord')} implementing this method is optional as a valid\n grid may be created without any notion of records, or records may not be displayed in a\n single column (as with the ${isc.DocUtils.linkForRef('class:ListGrid','ListGrid')} class where each record is \n displayed in an entire row.  \n\n",
        name:"findColNum",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"index of the column containing the record or -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "attr:CheckboxItem.allowEmptyValue":{
        ref:"attr:CheckboxItem.allowEmptyValue",
        flags:"IRW",
        description:"By default checkboxes allow the user to toggle between true and false values only.\n Setting this property to true will allow the user to toggle between three values - \n <code>true</code>, <code>false</code> and unset.",
        name:"allowEmptyValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CheckboxItem"
    },
    "attr:RPCRequest.evalResult":{
        ref:"attr:RPCRequest.evalResult",
        flags:"IRWA",
        description:"This works similarly to ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')} except the resulting String\n is automatically evaluated as JavaScript.  The result of the evaluation is then passed to\n any specified ${isc.DocUtils.linkForRef('attr:RPCRequest.callback')} as ${isc.DocUtils.linkForRef('attr:RPCResponse.data')}.\n <p>\n This feature can be used to dynamically load new application modules into a running\n application.  An RPCRequest with <code>evalResult</code> enabled can be used to fetch a\n static .js file or JavaScript dynamically generated by the server.  The returned JavaScript\n can contain anything that a JavaScript file loaded at init time can contain, including new\n views and new SmartClient class definitions.\n <p>\n <i>Example usage with ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendRequest')}:</i>\n <pre>\n isc.RPCManager.sendRequest({\n     evalResult:true,\n     actionURL:\"js/loadLabel.js\",\n     evalVars:{var1:\"A Value\"}\n });\n </pre>\n This call would execute the code from <code>loadLabel.js</code>, and make the variable\n <code>var1</code> available to that code. Therefore if the .js file contained this code:\n <pre>\n isc.Label.create({\n     contents:var1\n })\n </pre>\n A label would be created with contents set to the value of <code>var1</code> - the string\n <code>\"A Value\"</code>.\n \n <p>\n This feature relies on the XMLHttpRequest object which can be disabled by end-users in some\n supported browsers.  See ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information.",
        name:"evalResult",
        seeAlso:[
            {
                ref:"class:ViewLoader",
                description:null
            },
            {
                ref:"attr:RPCRequest.evalVars",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "viewLoading"
        ]
    },
    "attr:FormulaBuilder.cancelButton":{
        ref:"attr:FormulaBuilder.cancelButton",
        flags:"IR",
        description:"Button to Cancel this FormulaBuilder.  The formula is not tested, formulaBuilder.cancelled\n is set to true and formulaBuilder.fireOnClose is fired.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild Button",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:DynamicForm.saveOperationType":{
        ref:"attr:DynamicForm.saveOperationType",
        flags:"IRW",
        getter:[
            "getSaveOperationType"
        ],
        description:"Default ${isc.DocUtils.linkForRef('type:DSOperationType')} to be performed when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is called.\n This property is automatically set on a call to ${isc.DocUtils.linkForRef('method:DynamicForm.editRecord')} or\n ${isc.DocUtils.linkForRef('method:DynamicForm.editNewRecord')}, or may be set directly via \n ${isc.DocUtils.linkForRef('method:DynamicForm.setSaveOperationType')}.\n <P>\n If <code>saveOperationType</code> is unset, the form will heuristically determine\n whether an \"add\" or \"update\" operation is intended based on whether the primaryKey field\n is present and editable.",
        name:"saveOperationType",
        setter:[
            "setSaveOperationType"
        ],
        seeAlso:[
        ],
        valueType:"DSOperationType",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:ListGrid.headerSpanVAlign":{
        ref:"attr:ListGrid.headerSpanVAlign",
        flags:"IR",
        description:"Default alignment for ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')} with no\n ${isc.DocUtils.linkForRef('attr:HeaderSpan.valign')} specified.",
        name:"headerSpanVAlign",
        seeAlso:[
        ],
        valueType:"vAlign",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "attr:Slider.trackImageType":{
        ref:"attr:Slider.trackImageType",
        flags:"IRW",
        description:"The imageType setting for the slider track.",
        name:"trackImageType",
        setter:[
            "setTrackImageType"
        ],
        seeAlso:[
            {
                ref:"type:ImageStyle",
                description:null
            },
            {
                ref:"attr:StretchImg.imageType",
                description:null
            }
        ],
        valueType:"ImageStyle",
        defaultValue:"\"stretch\"",
        type:"attr",
        definingClass:"class:Slider"
    },
    "classMethod:RPCManager.exportContent":{
        ref:"classMethod:RPCManager.exportContent",
        flags:"",
        description:" Converts ${isc.DocUtils.linkForRef('method:Canvas.getPrintHTML','printable HTML')} generated from live UI components\n into a .pdf and downloads it (\"Save As..\" dialog).\n <P>\n For ${isc.DocUtils.linkForRef('class:DrawPane')} and subclasses (e.g. ${isc.DocUtils.linkForRef('class:FacetChart')}) to export properly, the canvas\n parameter must be the widget itself, not the HTML obtained with ${isc.DocUtils.linkForRef('method:Canvas.getPrintHTML','getPrintHTML()')} unless the ${isc.DocUtils.linkForRef('object:PrintProperties')} passed to getPrintHTML() had\n ${isc.DocUtils.linkForRef('attr:PrintProperties.printForExport','printForExport')}:true.\n <P>\n You can use a custom skin when exporting your HTML content. To use a custom skin,\n add a line to ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}:\n <pre>\n   skin.{skinName}.location: custom/skin\n </pre>\n Where {skinName} is the name of your custom skin, and the value is the path to your \n skin resources from the application webroot.\n <P>\n Requires the SmartClient server framework, but does not require use of server-based\n databinding - no .ds.xml files need to exist.\n <P> \n See server-side docs for com.isomorphic.contentexport.PdfExport for more details on\n server-side processing and code samples for redirecting PDF output to a file or\n in-memory buffer, as well as instructions for adding additional stylesheets.\n\n",
        name:"exportContent",
        seeAlso:[
        ],
        params:[
            {
                description:"Canvas or canvas list that has exportable widgets,                    or HTML fragment derived from ${isc.DocUtils.linkForRef('method:Canvas.getPrintHTML','getPrintHTML()')}",
                optional:false,
                name:"canvas",
                defaultValue:null,
                type:"Canvas | Array[] of Canvas | HTMLString"
            },
            {
                description:"Request properties for the export to pdf object",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest properties"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('pdfExportCharts')}"
        ],
        definingClass:"class:RPCManager"
    },
    "attr:RangeSlider.minValue":{
        ref:"attr:RangeSlider.minValue",
        flags:"IRW",
        description:"Set the minimum value (left/top of slider).",
        name:"minValue",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "attr:TreeNode.id":{
        ref:"attr:TreeNode.id",
        flags:"IR",
        description:"Specifies the unique ID of this node.  \n <P>\n Required for trees with ${isc.DocUtils.linkForRef('attr:Tree.modelType')} \"parent\".  With modelType:\"parent\", the unique\n ID of a node, together with the unique ID of its parent (see ${isc.DocUtils.linkForRef('attr:TreeNode.parentId')}) is\n used by ${isc.DocUtils.linkForRef('method:Tree.linkNodes')} to link a list of nodes into a tree.\n <p>\n Note: the name of this property can be changed by setting ${isc.DocUtils.linkForRef('attr:Tree.idField')}.",
        name:"id",
        seeAlso:[
            {
                ref:"attr:TreeNode.parentId",
                description:null
            },
            {
                ref:"method:Tree.linkNodes",
                description:null
            },
            {
                ref:"attr:Tree.modelType",
                description:null
            },
            {
                ref:"attr:Tree.idField",
                description:null
            }
        ],
        valueType:"String or Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "method:DrawLabel.setFontSize":{
        ref:"method:DrawLabel.setFontSize",
        flags:"",
        description:" Sets this DrawLabel's ${isc.DocUtils.linkForRef('attr:DrawLabel.fontSize','fontSize')}.\n",
        name:"setFontSize",
        seeAlso:[
        ],
        params:[
            {
                description:"the new font size in pixels.",
                optional:false,
                name:"size",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLabel"
    },
    "attr:ListGrid.printWrapCells":{
        ref:"attr:ListGrid.printWrapCells",
        flags:"IRW",
        description:"Whether cell contents should wrap during printing.  Equivalent to ${isc.DocUtils.linkForRef('attr:ListGrid.wrapCells')}, but\n specific to printed output.",
        name:"printWrapCells",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "printing"
        ]
    },
    "attr:OperationBinding.qualifyColumnNames":{
        ref:"attr:OperationBinding.qualifyColumnNames",
        flags:"IR",
        description:"Specifies, for this specific operationBinding, whether to qualify column names with table\n names in any SQL we generate.  Overrides the ${isc.DocUtils.linkForRef('attr:DataSource.qualifyColumnNames')} property.\n Only applicable to dataSources of ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')} \"sql\".",
        name:"qualifyColumnNames",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "attr:ListGrid.formulaBuilderSpanTitleSeparator":{
        ref:"attr:ListGrid.formulaBuilderSpanTitleSeparator",
        flags:"IRW",
        description:"If this grid has specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')}, and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderSpanTitlesInFormulaBuilder','showHeaderSpanTitlesInFormulaBuilder')} is true,\n this string will be inserted between the headerSpan title(s) and the field title in the\n field chooser grid in the ${isc.DocUtils.linkForRef('class:FormulaBuilder')} and ${isc.DocUtils.linkForRef('class:SummaryBuilder')}.",
        name:"formulaBuilderSpanTitleSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\" - \"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FacetChart.getMedian":{
        ref:"method:FacetChart.getMedian",
        flags:"",
        description:" Calculate the median of the data over a single metric.\n See <a href=\"http://en.wikipedia.org/wiki/Median\">http://en.wikipedia.org/wiki/Median</a>.\n <p>\n The first argument, criteria, determines which metric is used to calculate the median.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n",
        name:"getMedian",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            }
        ],
        returns:{
            description:"the median of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "classMethod:DataSource.getSortBy":{
        ref:"classMethod:DataSource.getSortBy",
        flags:"",
        description:" Given an array of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s, return a simple list of Strings in the format\n expected by ${isc.DocUtils.linkForRef('attr:DSRequest.sortBy')}.\n\n",
        name:"getSortBy",
        seeAlso:[
        ],
        params:[
            {
                description:"The list of specifiers to return in   sortBy format",
                optional:false,
                name:"sortSpecifiers",
                defaultValue:null,
                type:"Array of SortSpecifier"
            }
        ],
        returns:{
            description:"An array of sort-definitions in the format expected by  ${isc.DocUtils.linkForRef('attr:DSRequest.sortBy')}",
            type:"Array[] of String"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:ListGrid.bodyStyleName":{
        ref:"attr:ListGrid.bodyStyleName",
        flags:"IRW",
        description:"CSS style used for the body of this grid.  If applying a background-color to the body\n via a CSS style applied using this property, be sure to set\n ${isc.DocUtils.linkForRef('attr:ListGrid.bodyBackgroundColor')} to <code>null</code>.",
        name:"bodyStyleName",
        setter:[
            "setBodyStyleName"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.groupByText":{
        ref:"attr:ListGrid.groupByText",
        flags:"IRWA",
        getter:[
            "getGroupByText"
        ],
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','this.canGroupBy')} is true, this string will be shown as the\n title for the menu item to toggle the group by setting for a field.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>title</code> available as a variable containing\n the field title.\n <P>\n Default value returns \"Group by \" + the field's summary title.",
        name:"groupByText",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Group by ${title}\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TreeGrid.showDropIcons":{
        ref:"attr:TreeGrid.showDropIcons",
        flags:"IRW",
        description:"If true, when the user drags a droppable target over a folder in this TreeGrid, show \n a different icon folder icon.\n This is achieved by appending the ${isc.DocUtils.linkForRef('attr:TreeGrid.dropIconSuffix')} onto the\n ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} URL (for example <code>\"[SKIN]/folder.gif\"</code> may be\n replaced by <code>\"[SKIN]/folder_drop.gif\"</code>).",
        name:"showDropIcons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:ListGrid.invalidSummaryValue":{
        ref:"attr:ListGrid.invalidSummaryValue",
        flags:"IRWA",
        description:"Value to display to the user if showing summary values (through ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} or ${isc.DocUtils.linkForRef('type:ListGridFieldType','listGridFieldType:\"summary\"')}), and\n the summary function returns <code>\"null\"</code> (implying it was unable to calculate a\n valid summary value). This property will only be used in the default formatting behavior. If\n an explicit formatter has been specified - via ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue')} or\n ${isc.DocUtils.linkForRef('attr:ListGridField.formatGridSummary','formatGridSummary()')}, for example - this property has\n no effect.",
        name:"invalidSummaryValue",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DynamicForm.nestedListEditorType":{
        ref:"attr:DynamicForm.nestedListEditorType",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('class:FormItem')} class to use for any list-type complex fields on this DynamicForm.\n List-type fields are denoted by marking them <code>multiple: true</code> in the \n DataSource.",
        name:"nestedListEditorType",
        seeAlso:[
            {
                ref:"attr:DynamicForm.nestedEditorType",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"NestedListEditorItem\"",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:Canvas.cursor":{
        ref:"attr:Canvas.cursor",
        flags:"IRWA",
        description:"Specifies the cursor image to display when the mouse pointer is\n      over this widget. It corresponds to the CSS cursor attribute. See Cursor type for\n      different cursors.",
        name:"cursor",
        setter:[
            "setCursor"
        ],
        seeAlso:[
        ],
        valueType:"Cursor",
        defaultValue:"Canvas.DEFAULT",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragCreate')}",
            "${isc.DocUtils.linkForExampleId('cursors')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "cues"
        ]
    },
    "method:TileGrid.filterData":{
        ref:"method:TileGrid.filterData",
        flags:"",
        description:" Retrieves data that matches the provided criteria and displays the matching data in this\n component.\n <P>\n This method behaves exactly like ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} except that\n ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')} is automatically set to \"substring\" so that String-valued\n fields are matched by case-insensitive substring comparison.\n\n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria.                       If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed in as this argument\n                      instead of a raw criteria object, will be derived by calling\n                      ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete.  Fires                                          only if server contact was required; see\n                                          ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} for details",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"for databound components only - optional                            additional properties to set on the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:FormulaBuilder.autoTestDelay":{
        ref:"attr:FormulaBuilder.autoTestDelay",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('attr:FormulaBuilder.autoTest')} is true, this property indicates the delay in \n milliseconds between a user pausing and ${isc.DocUtils.linkForRef('method:FormulaBuilder.testFunction','testFunction()')}\n being called.\n <P>\n The default is 200 milliseconds.",
        name:"autoTestDelay",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"200",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "classMethod:Class.getStackTrace":{
        ref:"classMethod:Class.getStackTrace",
        flags:"",
        description:" Returns a \"stack trace\" - one line per method in the current call stack, showing the method\n name and any parameters passed.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.getStackTrace\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n <P>\n Platform Notes: In Mozilla Firefox, if Firebug is enabled, a stack trace will be logged\n to the firebug console in addition to the standard stack trace string returned by\n this method.\n <br>\n In browsers other than Internet Explorer a complete stack trace may not be available - \n this occurs when a function is re-entrant (meaning it calls itself). In this case the\n stack will terminate with text indicating where the recursive function call occurred.\n <P>\n See ${isc.DocUtils.linkForRef('group:debugging')} for further information information.\n\n",
        name:"getStackTrace",
        seeAlso:[
        ],
        returns:{
            description:"stack trace.  Use eg ${isc.DocUtils.linkForRef('method:Class.logWarn')} to log to the Developer Console.",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "attr:ResultTree.canReturnOpenFolders":{
        ref:"attr:ResultTree.canReturnOpenFolders",
        flags:"IR",
        description:"When using ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"paged\"')} and providing multiple levels of the tree\n in one DSResponse, this property specifies the default value assumed for the\n ${isc.DocUtils.linkForRef('attr:ResultTree.canReturnOpenSubfoldersProperty')} when no value for that property is provided for\n a node.",
        name:"canReturnOpenFolders",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "attr:RestDataSource.disableQueuing":{
        ref:"attr:RestDataSource.disableQueuing",
        flags:"IRW",
        description:"If set, disables ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','request queuing')} for this RestDataSource.",
        name:"disableQueuing",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:ColorPicker.redFieldPrompt":{
        ref:"attr:ColorPicker.redFieldPrompt",
        flags:"IR",
        description:"The text to show when the mouse hovers over the 'Red' field in the complex chooser.",
        name:"redFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The Red component of the selected color\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:GridRenderer.getCellStartRow":{
        ref:"method:GridRenderer.getCellStartRow",
        flags:"",
        description:" When using ${isc.DocUtils.linkForRef('method:GridRenderer.getRowSpan','row spanning')}, returns the row number where a row-spanning cell\n starts.\n <P>\n For example, if row 2 col 0 spans 3 cells, <code>getCellStartRow()</code> for row 2 col 0,\n row 3 col 0, row 4 col 0 will all return 2, because that's the row when spanning starts.\n\n",
        name:"getCellStartRow",
        seeAlso:[
        ],
        params:[
            {
                description:"row number of cell for which the start row should be returned",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of cell for which the start row should be returned",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"row number where spanning starts",
            type:"int"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:ListGrid.cellOut":{
        ref:"method:ListGrid.cellOut",
        flags:"",
        description:" Called when the mouse pointer leaves a cell\n\n",
        name:"cellOut",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:MetricSettings.useLogGradations":{
        ref:"attr:MetricSettings.useLogGradations",
        flags:"IR",
        description:"Whether to use classic logarithmic gradations, where each order of magnitude is shown as\n a gradation as well as a few intervening lines.   Gradations also begin and end on an order\n of magnitude.  For example, 1,2,4,6,8,10,20,40,60,80,100.\n <P>\n Default gradations can be overridden via ${isc.DocUtils.linkForRef('attr:MetricSettings.logBase')} and ${isc.DocUtils.linkForRef('attr:MetricSettings.logGradations')}.",
        name:"useLogGradations",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:TextItem.browserInputType":{
        ref:"attr:TextItem.browserInputType",
        flags:"IRA",
        description:"This property corresponds to the HTML5 \"inputType\" attribute applied to the &lt;input&gt;\n element for this TextItem.\n <p>\n The only currently supported use of this attribute is hinting to touch-enabled mobile\n devices that a particular keyboard layout should be used.  Even here, be careful; to\n take a random example, using type \"number\" on Android up to at least 3.2 leads to a\n keyboard with no \"-\" key, so negative numbers cannot be entered.\n <p>\n <b>Valid values:</b>\n <table class=\"normal\" cellpadding=\"2\">\n   <tbody>\n   <tr>\n     <td valign=\"top\"><em>\"text\"</em></td>\n     <td>Normal text keyboard</td>\n   </tr>\n   <tr>\n     <td valign=\"top\"><em>\"digits\"</em></td>\n     <td>Makes the text field more suitable for entering a string of digits 0 - 9. On iOS,\n         this causes the virtual keyboard to show a numeric keypad with only \"0\", \"1\",\n         \"2\", ..., \"9\", and delete keys.</td>\n   </tr>\n   <tr>\n     <td valign=\"top\"><em>\"email\"</em></td>\n     <td>Makes the text field more suitable for entering an e-mail address. On iOS, this\n         causes the virtual keyboard to show special \"@\" and \".\" keys on the alphabetic\n         keys screen.</td>\n   </tr>\n   <tr>\n     <td valign=\"top\"><em>\"tel\"</em></td>\n     <td>Makes the text field more suitable for entering a telephone number. On iOS, this\n         causes the virtual keyboard to show a numeric keypad with a \"+*#\" key for\n         displaying punctuation keys.</td>\n   </tr>\n   <tr>\n     <td valign=\"top\"><em>\"number\"</em></td>\n     <td>Makes the text field more suitable for entering a floating-point value. On iOS,\n         this causes the virtual keyboard to start on the number and punctuation keys screen.\n         <p>\n         <b>NOTE:</b> This is not an appropriate text input type for credit card numbers,\n         postal codes, ISBNs, and other formats that are not strictly parsable as floating-point\n         numbers. This is because the browser is required to perform floating-point value\n         sanitization to ensure that the value is a <a href=\"http://www.w3.org/TR/html5/infrastructure.html#valid-floating-point-number\">valid floating-point number</a>.</td>\n   </tr>\n   <tr>\n     <td valign=\"top\"><em>\"url\"</em></td>\n     <td>Makes the text field more suitable for entering a URL. On iOS, this causes the\n         virtual keyboard to show a special \".com\" key.</td>\n   </tr>\n   <tr>\n     <td valign=\"top\">Any&nbsp;vendor-<br>specific value</td>\n     <td>If a browser supports another input type.</td>\n   </tr>\n   </tbody>\n </table>",
        name:"browserInputType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "method:TreeGrid.setViewState":{
        ref:"method:TreeGrid.setViewState",
        flags:"",
        description:" Overridden to take a ${isc.DocUtils.linkForRef('type:TreeGridViewState')} object.\n\n",
        name:"setViewState",
        seeAlso:[
            {
                ref:"method:TreeGrid.getViewState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired view state for the grid",
                optional:false,
                name:"viewState",
                defaultValue:null,
                type:"TreeGridViewState"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:StretchImgButton.src":{
        ref:"attr:StretchImgButton.src",
        flags:"IRW",
        description:"Base URL for the image.  By default, StretchImgButtons consist of three image parts: A\n start image (displayed at the top or left), a scalable central image and an end image\n displayed at the bottom or right.\n <P>\n The images displayed in the stretchImgButton are derived from this property in the \n following way:\n <P>\n <ul>\n <li> When the button is in its standard state the suffixes \"_start\", \"_end\" and \n      \"_stretch\" are applied to the src (before the file extension), so by default \n      the images displayed will be \"button_start.gif\" (sized to be \n      <code>this.capSize</code> by the specified width of the stretchImgButton), \n      \"button_stretch.gif\" (stretched to the necessary width) and \"button_end.gif\" \n      (sized the same as the start image).\n <li> As the button's state changes, the images will have suffixes appended <b>before</b>\n      the \"_start\" / \"_end\" / \"_stretch\" to represent the button state.\n      See ${isc.DocUtils.linkForRef('attr:Img.src')} for an overview of how states are combined into a compound\n      URL.\n </ul>\n For example the center piece of a selected stretchImgButton with the mouse hovering\n over it might have the URL: <code>\"button_Selected_Down_stretch.gif\"</code>.\n <P>\n Media should be present for each possible state of the _start, _end and _stretch images.",
        name:"src",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"button.gif\"",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "attr:Calendar.addEventButtonHoverText":{
        ref:"attr:Calendar.addEventButtonHoverText",
        flags:"IR",
        description:"The text to be displayed when a user hovers over the ${isc.DocUtils.linkForRef('attr:Calendar.addEventButton','add event')}\n toolbar button",
        name:"addEventButtonHoverText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Add an event\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:GridRenderer.instantScrollTrackRedraw":{
        ref:"attr:GridRenderer.instantScrollTrackRedraw",
        flags:"IRW",
        description:"If true, if the user clicks on the scroll buttons at the end of the track or clicks once on\n the scroll track, there will be an instant redraw of the grid content so that the user\n doesn't see any blank space.  For drag scrolling or other types of scrolling, the\n ${isc.DocUtils.linkForRef('attr:GridRenderer.scrollRedrawDelay')} applies.",
        name:"instantScrollTrackRedraw",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "method:Calendar.setShowWeekends":{
        ref:"method:Calendar.setShowWeekends",
        flags:"",
        description:"  Setter for ${isc.DocUtils.linkForRef('attr:Calendar.showWeekends')} to change this property at runtime.\n\n",
        name:"setShowWeekends",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:Canvas.animateScroll":{
        ref:"method:Canvas.animateScroll",
        flags:"",
        description:" Animate a scroll from the current scroll position to the specified position.\n",
        name:"animateScroll",
        seeAlso:[
        ],
        params:[
            {
                description:"desired final left scroll position",
                optional:false,
                name:"scrollLeft",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"desired final top scroll position",
                optional:false,
                name:"scrollTop",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"When the scroll completes this callback will be fired. Single                              'earlyFinish' parameter will be passed if the animation was\n                              cut short by a call to finishAnimation",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"AnimationCallback"
            },
            {
                description:"Duration in ms of the animated scroll",
                optional:true,
                name:"duration",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Optional acceleration to bias the animation ratios",
                optional:true,
                name:"acceleration",
                defaultValue:null,
                type:"AnimationAcceleration"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:Button.autoFit":{
        ref:"attr:Button.autoFit",
        flags:"IRW",
        description:"If true, ignore the specified size of this widget and always size just large\n enough to accommodate the title.  If <code>setWidth()</code> is explicitly called on an\n autoFit:true button, autoFit will be reset to <code>false</code>.\n <P>\n Note that for StretchImgButton instances, autoFit will occur horizontally only, as \n unpredictable vertical sizing is likely to distort the media. If you do want vertical \n auto-fit, this can be achieved by simply setting a small height, and having \n overflow:\"visible\"",
        name:"autoFit",
        setter:[
            "setAutoFit"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonAutoFit')}"
        ],
        definingClass:"class:Button",
        groups:[
            "sizing"
        ]
    },
    "method:Tree.add":{
        ref:"method:Tree.add",
        flags:"",
        description:"\n Add a single node under the specified parent\n\n",
        name:"add",
        seeAlso:[
            {
                ref:"group:sharingNodes",
                description:null
            },
            {
                ref:"method:Tree.addList",
                description:null
            }
        ],
        params:[
            {
                description:"node to add",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Parent of the node being added.  You can pass                                          in either the ${isc.DocUtils.linkForRef('object:TreeNode')} itself, or a path to\n\t                                        the node (as a String), in which case a\n\t                                        ${isc.DocUtils.linkForRef('method:Tree.find')} is performed to find\n\t                                        the node.",
                optional:false,
                name:"parent",
                defaultValue:null,
                type:"String or TreeNode"
            },
            {
                description:"Position of the new node in the children list. If not\t                                specified, the node will be added at the end of the list.",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"The added node. Will return null if the node was not added (typically    because the specified <code>parent</code> could not be found in the tree).",
            type:"TreeNode or null"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:TileGrid.tileValueStyle":{
        ref:"attr:TileGrid.tileValueStyle",
        flags:"IR",
        description:"When using the default ${isc.DocUtils.linkForRef('class:SimpleTile')}, CSS style for each value shown within a tile.",
        name:"tileValueStyle",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"\"tileValue\"",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "attr:MenuItem.keys":{
        ref:"attr:MenuItem.keys",
        flags:"IR",
        description:"Shortcut key(s) to fire the menu item action. Each key can be defined as a ${isc.DocUtils.linkForRef('type:KeyIdentifier')}.\n To apply multiple shortcut keys to this item, set this property to an array of such key\n identifiers.",
        name:"keys",
        seeAlso:[
        ],
        valueType:"KeyIdentifier | Array of KeyIdentifer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MenuItem",
        groups:[
            "menuKeys"
        ]
    },
    "attr:Calendar.eventWindow":{
        ref:"attr:Calendar.eventWindow",
        flags:"A",
        description:"To display events in day and week views, the Calendar creates instance of ${isc.DocUtils.linkForRef('class:EventWindow')}\n for each event.  Use the ${isc.DocUtils.linkForRef('type:AutoChild')} system to customize these windows.",
        name:"eventWindow",
        seeAlso:[
        ],
        valueType:"MultiAutoChild EventWindow",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:Tab.title":{
        ref:"attr:Tab.title",
        flags:"IRW",
        description:"Specifies the title of the this tab.  To change the title after the TabSet has been\n created, call ${isc.DocUtils.linkForRef('method:TabSet.setTabTitle')}.",
        name:"title",
        seeAlso:[
            {
                ref:"method:TabSet.setTabTitle",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "attr:FiscalCalendar.defaultDate":{
        ref:"attr:FiscalCalendar.defaultDate",
        flags:"IRW",
        description:"The default one-based day-number in the ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultMonth','specified month')}\n to use for calculating fiscal dates when no ${isc.DocUtils.linkForRef('attr:FiscalCalendar.fiscalYears','fiscal years')}\n are provided. This value together\n with ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultMonth')} will be used as the start date for the\n fiscal years where no explicitly specified fiscalYear configuration is present.\n <br>\n See also ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultYearMode')}.",
        name:"defaultDate",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FiscalCalendar"
    },
    "attr:Calendar.nextButton":{
        ref:"attr:Calendar.nextButton",
        flags:"IR",
        description:"An ${isc.DocUtils.linkForRef('class:ImgButton')} that appears above the week/day/month views of the\n calendar and allows the user to move the calendar forwards in time.",
        name:"nextButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:ListGrid.setRecordComponentHeight":{
        ref:"method:ListGrid.setRecordComponentHeight",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentHeight')}\n",
        name:"setRecordComponentHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"recordComponent height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DynamicForm.implicitSave":{
        ref:"attr:DynamicForm.implicitSave",
        flags:"IRW",
        description:"When true, indicates that changes to items in this form will be automatically saved on a \n ${isc.DocUtils.linkForRef('attr:DynamicForm.implicitSaveDelay','delay')}, as well as when the entire form is\n submitted.  Unless ${isc.DocUtils.linkForRef('attr:DynamicForm.implicitSaveOnBlur','form.implicitSaveOnBlur')} is set \n to false, changes will also be automatically saved on editorExit for each item.  This\n attribute can also be set directly on FormItems.",
        name:"implicitSave",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:TreeGrid.transferSelectedData":{
        ref:"method:TreeGrid.transferSelectedData",
        flags:"",
        description:" Simulates a drag / drop type transfer of the selected records in some other grid to this\n treeGrid, without requiring any user interaction.<br>\n See the ${isc.DocUtils.linkForRef('group:dragging')} documentation for an overview of grid drag/drop data\n transfer.\n",
        name:"transferSelectedData",
        seeAlso:[
        ],
        params:[
            {
                description:"source grid from which the records will be transferred",
                optional:false,
                name:"sourceGrid",
                defaultValue:null,
                type:"ListGrid"
            },
            {
                description:"parent node into which records should be dropped - if null    records will be transferred as children of the root node.",
                optional:true,
                name:"folder",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"target index (drop position) within the parent folder",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"optional callback to be fired when the transfer process has                        completed.  The callback will be passed a single parameter \"records\",\n                       the list of nodes actually transferred to this component (it is called \n                       \"records\" because this logic is shared with ${isc.DocUtils.linkForRef('class:ListGrid')}).",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragTree')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "dragging"
        ]
    },
    "attr:RelativeDateItem.use24HourTime":{
        ref:"attr:RelativeDateItem.use24HourTime",
        flags:"IRW",
        description:"When showing the ${isc.DocUtils.linkForRef('class:DateChooser')}, should the \n ${isc.DocUtils.linkForRef('attr:DateChooser.showTimeItem','time field')} be set to use 24-hour time?\n Has no effect for fields of type <code>\"date\"</code> rather than \n <code>\"datetime\"</code>, or if ${isc.DocUtils.linkForRef('attr:RelativeDateItem.showPickerTimeItem')} is <code>false</code>.\n <P>\n Default is true.",
        name:"use24HourTime",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:Calendar.showTimelineView":{
        ref:"attr:Calendar.showTimelineView",
        flags:"IRW",
        description:"If set to true, show the ${isc.DocUtils.linkForRef('attr:Calendar.timelineView','Timeline view')}.",
        name:"showTimelineView",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "group:cellStyling":{
        ref:"group:cellStyling",
        refs:[
            "attr:GridRenderer.cellHeight",
            "attr:GridRenderer.fixedRowHeights",
            "attr:GridRenderer.wrapCells",
            "attr:GridRenderer.cellPadding",
            "attr:GridRenderer.baseStyle",
            "attr:GridRenderer.alternateRowStyles",
            "attr:GridRenderer.alternateRowFrequency",
            "attr:GridRenderer.alternateColumnStyles",
            "attr:GridRenderer.alternateColumnFrequency",
            "attr:GridRenderer.emptyCellValue",
            "attr:ListGrid.emptyCellValue",
            "attr:ListGrid.cellHeight",
            "attr:ListGrid.fixedRecordHeights",
            "attr:ListGrid.fixedFieldWidths",
            "attr:ListGrid.cellPadding",
            "attr:ListGrid.alternateRecordStyles",
            "attr:ListGrid.alternateFieldStyles",
            "attr:ListGrid.alternateFieldFrequency",
            "attr:ListGrid.alternateRecordFrequency"
        ],
        name:"cellStyling",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DataBoundComponent.fetchOperation":{
        ref:"attr:DataBoundComponent.fetchOperation",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} this component should use when performing fetch operations.",
        name:"fetchOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "operations"
        ]
    },
    "attr:ListGrid.frozenHeaderTitleStyle":{
        ref:"attr:ListGrid.frozenHeaderTitleStyle",
        flags:"IR",
        description:"If this listGrid contains any frozen fields, this property can be used to apply a custom\n headerTitleStyle to the frozen set of fields. If unset, the standard headerTitleStyle\n will be used for both frozen and unfrozen cells.",
        name:"frozenHeaderTitleStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.headerTitleStyle",
                description:null
            },
            {
                ref:"attr:ListGridField.frozen",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance",
            "frozenFields"
        ]
    },
    "method:Canvas.getOffsetX":{
        ref:"method:Canvas.getOffsetX",
        flags:"",
        description:"\tReturn the X-coordinate of the last event relative to the left edge of the content of this\n\tCanvas.<br><br>\n\n  NOTE: To get a coordinate relative to the <b>viewport</b> of this Canvas, subtract\n  this.getScrollLeft()\n\n",
        name:"getOffsetX",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "events",
            "positioning"
        ]
    },
    "method:Calendar.dateChanged":{
        ref:"method:Calendar.dateChanged",
        flags:"",
        description:" Fires whenever the user changes the current date, including picking a specific date or\n navigating to a new week or month.\n",
        name:"dateChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:Canvas.getOffsetY":{
        ref:"method:Canvas.getOffsetY",
        flags:"",
        description:"\tReturn the Y-coordinate of the last event, relative to the top edge of the content of this\n\tCanvas.<br><br>\n\n  NOTE: To get a coordinate relative to the <b>viewport</b> of this Canvas, subtract\n  this.getScrollTop()\n\n",
        name:"getOffsetY",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "events",
            "positioning"
        ]
    },
    "attr:DrawLinePath.knobs":{
        ref:"attr:DrawLinePath.knobs",
        flags:"IR",
        description:"Array of control knobs to display for this item. Each ${isc.DocUtils.linkForRef('type:KnobType')} specified in this\n will turn on UI element(s) allowing the user to manipulate this DrawLinePath.  To update the\n set of knobs at runtime use ${isc.DocUtils.linkForRef('method:DrawItem.showKnobs')} and ${isc.DocUtils.linkForRef('method:DrawItem.hideKnobs')}.\n <p>\n DrawLinePath supports the\n <smartclient>\"startPoint\" and \"endPoint\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.KnobType#STARTPOINT} and {@link com.smartgwt.client.types.KnobType#ENDPOINT}</smartgwt>\n knob types.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawLinePath"
    },
    "attr:CubeGrid.facetValueAlign":{
        ref:"attr:CubeGrid.facetValueAlign",
        flags:"IRW",
        description:"Default alignment for facet values (in headers).",
        name:"facetValueAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:CheckboxItem.valueMap":{
        ref:"attr:CheckboxItem.valueMap",
        flags:"IRW",
        description:"Object defining how the checkbox \"checked\" state will be mapped to the field value.<br>\n Checkboxes only support 2 states. By default a checked checkbox will have\n value <code>true</code>, and an unchecked one will have value <code>false</code>\n (or <code>null</code> if there is no default value and the value has never been set).\n <p>\n A valueMap can modify this in 2 ways:<br>\n - If the desired checked/unchecked values can be resolved to <code>true</code> \n   and <code>false</code> directly in JavaScript, the valueMap may be specified as\n   a 2-element array containing these values. Examples of this would include<br>\n   <code>&nbsp;&nbsp;[0,1]</code>: \n   In this case an unchecked checkbox would have value <code>0</code> and a checked box\n   would have value <code>1</code><br>\n   <code>&nbsp;&nbsp;[null,\"Some String\"]</code>:\n   In this case an unchecked checkbox would have value <code>null</code> and a checked \n    box would have value <code>\"Some String\"</code><br>\n - More arbitrary data values can be resolved to checked / unchecked values via an\n   object mapping the arbitrary data values to display values of <code>true</code> and\n   <code>false</code>. For example:<br>\n   <code>&nbsp;&nbsp;{\"A\":false, \"B\":true}</code><br>\n    In this case an unchecked checkbox would have value \"A\", and a checked box \n    would have value \"B\"\n <p>\n Note: ValueMaps in other formats will be ignored by the CheckboxItem class. To update\n the valueMap at runtime, always use ${isc.DocUtils.linkForRef('method:CheckboxItem.setValueMap')}",
        name:"valueMap",
        setter:[
            "setValueMap"
        ],
        seeAlso:[
        ],
        valueType:"object | Array",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "valueMap"
        ]
    },
    "group:containment":{
        ref:"group:containment",
        refs:[
            "method:Canvas.addChild",
            "method:Canvas.removePeer",
            "method:Canvas.depeer",
            "method:Canvas.deparent",
            "method:Canvas.removeChild",
            "method:Canvas.addPeer",
            "method:Canvas.getParentCanvas",
            "method:Canvas.getMasterCanvas",
            "method:Canvas.getParentElements",
            "method:Canvas.contains",
            "attr:Canvas.parentElement",
            "attr:Canvas.parentCanvas",
            "attr:Canvas.topElement",
            "attr:Canvas.masterElement",
            "attr:Canvas.children",
            "attr:Canvas.peers"
        ],
        description:"Canvases containing other objects as children or peers",
        name:"containment",
        seeAlso:[
        ],
        type:"group"
    },
    "group:creation":{
        ref:"group:creation",
        refs:[
        ],
        name:"creation",
        seeAlso:[
        ],
        type:"group"
    },
    "method:RelativeDateItem.formatEditorValue":{
        ref:"method:RelativeDateItem.formatEditorValue",
        flags:"A",
        description:" RelativeDateItems do not make use of the standard ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} and\n ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} methods. Developers can customize the display values\n for these items in the following ways:<ul>\n <li>The ${isc.DocUtils.linkForRef('attr:RelativeDateItem.presetOptions')} map allows standard preset RelativeDateString \n     and RelativeDateShortcut values to be mapped to custom display values</li>\n <li>The text displayed for each of the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.timeUnitOptions')} (e.g:\"N days ago\") may be\n     customized via the per-time unit title attributes (${isc.DocUtils.linkForRef('attr:RelativeDateItem.daysFromNowTitle')}, \n     ${isc.DocUtils.linkForRef('attr:RelativeDateItem.daysAgoTitle')}, etc)</li>\n <li>The ${isc.DocUtils.linkForRef('attr:RelativeDateItem.dateFormatter')} and ${isc.DocUtils.linkForRef('attr:RelativeDateItem.inputFormat')} may be used modify how date values\n     are displayed (both in the text entry box and in the\n    ${isc.DocUtils.linkForRef('attr:RelativeDateItem.showCalculatedDateField','calculatedDateField')}</li>\n </ul>\n",
        name:"formatEditorValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "method:SliderItem.setMaxValue":{
        ref:"method:SliderItem.setMaxValue",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.maxValue','maximum value')} of the slider \n\n",
        name:"setMaxValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new maximum value <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:SliderItem"
    },
    "attr:TileRecord.tileProperties":{
        ref:"attr:TileRecord.tileProperties",
        flags:"IRW",
        description:"Additional properties to be passed when creating a tile for this record.",
        name:"tileProperties",
        seeAlso:[
        ],
        valueType:"Canvas Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TileRecord"
    },
    "attr:ListGrid.canAutoFitFields":{
        ref:"attr:ListGrid.canAutoFitFields",
        flags:"IRW",
        description:"Whether the user able to autofit specific columns\n to their data and/or title via a context menu item or ${isc.DocUtils.linkForRef('attr:ListGrid.headerAutoFitEvent')}.\n <P>\n Autofitting can also be programmatically enabled by setting ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')}.\n <P>\n When canResizeFields is set to false, canAutoFitFields will also be set to false",
        name:"canAutoFitFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "class:RPCManager":{
        methods:[
        ],
        ref:"class:RPCManager",
        classAttrs:[
            "classAttr:RPCManager.defaultTimeout",
            "classAttr:RPCManager.defaultPrompt",
            "classAttr:RPCManager.timeoutErrorMessage",
            "classAttr:RPCManager.removeDataPrompt",
            "classAttr:RPCManager.saveDataPrompt",
            "classAttr:RPCManager.validateDataPrompt",
            "classAttr:RPCManager.promptStyle",
            "classAttr:RPCManager.useCursorTracker",
            "classAttr:RPCManager.promptCursor",
            "classAttr:RPCManager.fetchDataPrompt",
            "classAttr:RPCManager.showPrompt",
            "classAttr:RPCManager.promptDelay",
            "classAttr:RPCManager.actionURL",
            "classAttr:RPCManager.screenLoaderURL",
            "classAttr:RPCManager.ALL_GLOBALS",
            "classAttr:RPCManager.useXmlHttpRequest",
            "classAttr:RPCManager.defaultTransport",
            "classAttr:RPCManager.useHttpProxy",
            "classAttr:RPCManager.credentialsURL",
            "classAttr:RPCManager.allowCrossDomainCalls",
            "classAttr:RPCManager.loginStatusCodeMarker",
            "classAttr:RPCManager.loginRequiredMarker",
            "classAttr:RPCManager.loginSuccessMarker",
            "classAttr:RPCManager.maxLoginAttemptsExceededMarker",
            "classAttr:RPCManager.allowIE9Leak"
        ],
        classMethods:[
            "classMethod:RPCManager.queueSent",
            "classMethod:RPCManager.xmlHttpRequestAvailable",
            "classMethod:RPCManager.send",
            "classMethod:RPCManager.sendProxied",
            "classMethod:RPCManager.sendRequest",
            "classMethod:RPCManager.startQueue",
            "classMethod:RPCManager.getCurrentTransactionId",
            "classMethod:RPCManager.cancelQueue",
            "classMethod:RPCManager.clearTransaction",
            "classMethod:RPCManager.suspendTransaction",
            "classMethod:RPCManager.resendTransaction",
            "classMethod:RPCManager.sendQueue",
            "classMethod:RPCManager.handleError",
            "classMethod:RPCManager.handleTransportError",
            "classMethod:RPCManager.loginRequired",
            "classMethod:RPCManager.exportContent",
            "classMethod:RPCManager.exportImage",
            "classMethod:RPCManager.loadScreen",
            "classMethod:RPCManager.createScreen",
            "classMethod:RPCManager.cacheScreens",
            "classMethod:RPCManager.requestsArePending"
        ],
        treeLocation:[
            "Client Reference/RPC"
        ],
        attrs:[
        ],
        description:"RPCManager is a static singleton class that manages transparent client/server RPC (remote\n procedure call).  This class provides a generic, low-level client/server communication\n integration point.\n <P>\n SmartClient's powerful databinding subsystem (see ${isc.DocUtils.linkForRef('class:DataSource')}, \n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')}) automatically make use of this class to issue\n RPCs as necessary, based on the \n ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource protocol')}. To integrate DataBoundComponents\n with your server, ${isc.DocUtils.linkForRef('group:clientServerIntegration','start here')}.\n <P>\n For arbitrary client/server interactions outside of the DataSource subsystem, the\n SmartClient server also provides the ${isc.DocUtils.linkForRef('group:dmiOverview','Direct Method Invocation')} feature.\n <P>\n The RPCManager class can also be used <i>directly</i> to send data to a URL of your\n choosing and optionally be called back with server-returned data when the server replies.\n <P>\n The SmartClient ${isc.DocUtils.linkForRef('group:iscServer','server code')} has APIs for processing RPC requests \n providing features such as automatic Java &lt;--&gt; JavaScript object translation \n and handling of queued requests.<br>\n The ${isc.DocUtils.linkForRef('group:servletDetails','IDACall servlet')} makes use of these features to handle standard\n ${isc.DocUtils.linkForRef('class:DataSource')} requests and ${isc.DocUtils.linkForRef('class:DMI')} calls. Developers can also override the\n <code>actionURL</code> of specific requests and use these APIs directly in a \n JSP, Servlet or Filter.\n <P>\n Note: the client-side RPCManager class can also be used without the SmartClient server.\n For an overview of client/server interactions without the SmartClient server, see\n ${isc.DocUtils.linkForRef('group:nonJavaBackend','this overview')}.\n <P>\n <u>Simple arbitrary Remote Procedure Call example (client code):</u>\n <smartclient>\n <P>\n <pre>\n var data = { here: \"is some data\", to: [\"send to the server\"]};<br>\n RPCManager.sendRequest({ data: data, callback: \"myCallback(data)\", actionURL: \"/rpcHandler.jsp\"});<br>\n function myCallback(data) { alert(\"response from the server: \" + data); }\n </pre>\n </smartclient>\n <smartgwt>\n <P>\n <pre>\n  RPCRequest request = new RPCRequest();\n  // Note data could be a String, Map or Record\n  request.setData(\"Some data to send to the client\");\n  request.setActionURL(\"/rpcHandler.jsp\");\n \n  RPCManager.sendRequest(request, \n      new RPCCallback () {\n          public void execute(RPCResponse response, Object rawData, RPCRequest request) {\n              SC.say(\"Response from the server:\" + rawData);\n          }\n      }\n  );\n </pre>\n </smartgwt>\n <P>\n <u>Simple arbitrary Remote Procedure Call example (server code: /rpcHandler.jsp):</u>\n <br><br><pre>\n RPCManager rpc = new RPCManager(request, response, out);\n Object data = rpc.getData();\n System.out.println(\"client sent: \" + data.toString());\n rpc.send(\"here's a response\");\n </pre>\n <P>\n <u><b>Queuing</b></u>\n <br>\n Because of browser limitations on the total number of simultaneous HTTP connections to a given\n server, batching multiple RPC requests into a single HTTP request is highly advisable whenever\n possible.  The RPCManager provides a queuing mechanism that allows this.\n <br><br>\n <u>Queuing example (client code):</u>\n <smartclient>\n <pre>\n var wasQueuing = RPCManager.startQueue();\n RPCManager.send(\"a string of data\", \"myCallback(data)\", {actionURL: \"/rpcHandler.jsp\"});\n RPCManager.sendRequest({ data: [\"some\", \"more data\", 2], callback: \"myCallback(data)\", actionURL: \"/rpcHandler.jsp\"});\n RPCManager.sendRequest({ data: \"different callback\", callback: \"myCallback2(data)\", actionURL: \"/rpcHandler.jsp\"});\n if (!wasQueuing) RPCManager.sendQueue();\n \n function myCallback(data) { alert(\"response from the server: \" + data); }\n function myCallback2(data) { alert(\"response from the server (other callback): \" + data); }\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n boolean wasQueuing = RPCManager.startQueue();\n\t \n RPCCallback callback = new RPCCallback() {\n     public void execute(RPCResponse response, Object rawData, RPCRequest request) {\n         Window.alert(\"response from server:\" + rawData);\n     }\n };\n\t\t \n RPCRequest request1 = new RPCRequest();\n request1.setActionURL(\"/rpcHandler.jsp\");\n request1.setData(\"A String of Data\");\n RPCManager.sendRequest(request1, callback);\n\t\t \n RPCRequest request2 = new RPCRequest();\n request2.setActionURL(\"/rpcHandler.jsp\");\n request2.setData(\"Another String of Data\");\n RPCManager.sendRequest(request2, callback);\n\t\t \n if (!wasQueuing) RPCManager.sendQueue();\n </pre>\n </smartgwt>\n <p>\n <u>Queuing example (server code: /rpcHandler.jsp):</u>\n <br><br><pre>\n RPCManager rpc = new RPCManager(request, response, out);\n\n for(Iterator i = rpc.getRequests().iterator(); i.hasNext();) {\n     RPCRequest rpcRequest = (RPCRequest)i.next();\n     Object data = rpcRequest.getData();\n     System.out.println(\"client sent:\" + data.toString());\n\n     //send back the data sent to us by the client\n     rpc.send(rpcRequest, new RPCResponse(data));\n }<br>\n </pre>\n <br><br>\n <u><b>Error Handling</b></u><br><br>\n Please see this ${isc.DocUtils.linkForRef('group:errorHandling','separate article')} on error handling.\n <br>",
        name:"RPCManager",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FilterClause.operatorPickerTitle":{
        ref:"attr:FilterClause.operatorPickerTitle",
        flags:"IR",
        description:"The title for the operator-picker select-item.",
        name:"operatorPickerTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Operator\"",
        type:"attr",
        definingClass:"class:FilterClause",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.showClippedValuesOnHover":{
        ref:"attr:ListGrid.showClippedValuesOnHover",
        flags:"IRA",
        description:"If true and a cell's value is clipped, then a hover containing the full cell value is\n enabled.\n <p>\n Note that standard cell hovers override clipped value hovers. Thus, to enable clipped value\n hovers, ${isc.DocUtils.linkForRef('attr:ListGrid.canHover','canHover')} must be unset or null and the corresponding field must have\n ${isc.DocUtils.linkForRef('attr:ListGridField.showHover','showHover')} unset or null as well.",
        name:"showClippedValuesOnHover",
        seeAlso:[
            {
                ref:"attr:ListGrid.canHover",
                description:null
            },
            {
                ref:"method:ListGrid.cellValueHoverHTML",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:DateChooser.weekMenuStyle":{
        ref:"attr:DateChooser.weekMenuStyle",
        flags:"IR",
        description:"Style for the pop-up week menu.",
        name:"weekMenuStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserWeekMenu\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:DynamicForm.cancel":{
        ref:"method:DynamicForm.cancel",
        flags:"",
        description:"\n This method exists for clean integration with existing server frameworks that have a 'cancel'\n feature which typically clears session state associated with the form.  When this method is\n called, an RPC is sent to the server with a parameter named\n ${isc.DocUtils.linkForRef('attr:DynamicForm.cancelParamName')} with the value\n ${isc.DocUtils.linkForRef('attr:DynamicForm.cancelParamValue')}.<p>\n\n Note that no other form data is sent.  By default the current top-level page is replaced with the\n reply.  If you wish to ignore the server reply instead, call this method like this:\n <pre>\n dynamicFormInstance.cancel({ignoreTimeout: true, target: null});\n </pre>\n",
        name:"cancel",
        seeAlso:[
            {
                ref:"method:DynamicForm.cancelEditing",
                description:null
            }
        ],
        params:[
            {
                description:"additional properties to set on the RPCRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "attr:Layout.stackZIndex":{
        ref:"attr:Layout.stackZIndex",
        flags:"IR",
        description:"For use in conjunction with ${isc.DocUtils.linkForRef('attr:Layout.memberOverlap')}, controls the z-stacking order of\n members.\n <P>\n If set to \"lastOnTop\", members stack from the first member at bottom to the last member\n at top. If set to \"firstOnTop\", members stack from the last member at bottom to the\n first member at top.",
        name:"stackZIndex",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout"
    },
    "attr:IMenuButton.menu":{
        ref:"attr:IMenuButton.menu",
        flags:"IRW",
        description:"The menu to show.\n <P>\n For a menu button with no menu (menu: null) the up/down arrow image can\n be suppressed by setting\n ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuButtonImage','showMenuButtonImage')}: <code>false</code>.",
        name:"menu",
        seeAlso:[
        ],
        valueType:"Menu",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "method:GridRenderer.getRowTop":{
        ref:"method:GridRenderer.getRowTop",
        flags:"A",
        description:" Returns the top coordinate for a given row number, relative to the top of body content.  Use\n ${isc.DocUtils.linkForRef('method:GridRenderer.getRowPageTop')} for a page-relative coordinate.\n <P>\n This method is reliable only for rows that are currently drawn, which is generally only rows\n that are visible in the viewport.  If row heights vary (see <code>fixedRowHeights</code>),\n coordinates for rows that are not currently shown are rough approximations.\n\n",
        name:"getRowTop",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Y-coordinate",
            type:"int"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "positioning"
        ]
    },
    "attr:FormulaBuilder.showHelpIcon":{
        ref:"attr:FormulaBuilder.showHelpIcon",
        flags:"IR",
        description:"Whether to show the help icon that appears after the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.formulaField')}.",
        name:"showHelpIcon",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:ListGrid.getRecordComponent":{
        ref:"method:ListGrid.getRecordComponent",
        flags:"",
        description:" Retrieve the ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponent')} currently being shown at the given\n coordinates.\n <p>\n <code>recordComponents</code> are dynamically assigned to row/cell coordinates and, depending\n on the ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentPoolingMode')}, any kind of redraw of the containing\n ListGrid (due to sort change, scrolling, editing etc) may cause a\n <code>recordComponent</code> to be assigned to another row, ${isc.DocUtils.linkForRef('method:Canvas.clear','clear()ed')} or\n permanently ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()ed')}.\n <p>\n Hence you should always call <code>getRecordComponent()</code> right before taking action on\n the <code>recordComponent</code> - don't cache the component associated with row/cell\n coordinate.  Similarly, it's invalid to call <code>getRecordComponent()</code> during a redraw\n (for example, from ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue','formatting')} code).\n <p>\n It's always invalid to try to use a <code>recordComponent</code> outside of a ListGrid (by eg\n adding it to some other layout).\n <p>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is true and the colNum parameter is not passed, the call\n will return the first component in the passed rowNum.\n <p>\n Returns null if there is no component at the specified coordinates.\n\n",
        name:"getRecordComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"row number to get record component for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"optional column number to get the record component for",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"integer"
            }
        ],
        returns:{
            description:"record component, or null if none is shown at these coordintes",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:HeaderLevel.unit":{
        ref:"attr:HeaderLevel.unit",
        flags:"IR",
        description:"Unit of time shown at this level of header.",
        name:"unit",
        seeAlso:[
        ],
        valueType:"TimeUnit",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderLevel"
    },
    "attr:StretchImgButton.showRollOver":{
        ref:"attr:StretchImgButton.showRollOver",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes over this object?",
        name:"showRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "attr:LoginDialog.title":{
        ref:"attr:LoginDialog.title",
        flags:"IR",
        description:"Specifies the title of the dialog box.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"Dialog.LOGIN_TITLE",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:ListGridField.editorValueMap":{
        ref:"attr:ListGridField.editorValueMap",
        flags:"IRW",
        getter:[
            "getEditorValueMap"
        ],
        description:"A valueMap to use for editors shown for this field.  By default if this is not\n specified ${isc.DocUtils.linkForRef('attr:ListGridField.valueMap','field.valueMap')} will be used instead.\n <P>\n Dynamic valueMaps can be provided by implementing ${isc.DocUtils.linkForRef('method:ListGrid.getEditorValueMap')}.",
        name:"editorValueMap",
        seeAlso:[
            {
                ref:"method:ListGrid.getEditorValueMap",
                description:null
            },
            {
                ref:"method:ListGrid.setEditorValueMap",
                description:null
            }
        ],
        valueType:"Array or Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:Canvas.defaultWidth":{
        ref:"attr:Canvas.defaultWidth",
        flags:"IRWA",
        description:"For custom components, establishes a default width for the component.\n <P>\n For a component that should potentially be sized automatically by a Layout, set this\n property rather than ${isc.DocUtils.linkForRef('attr:Canvas.width')} directly, because Layouts regard a width setting as\n an explicit size that shouldn't be changed.",
        name:"defaultWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:DSRequest.additionalOutputs":{
        ref:"attr:DSRequest.additionalOutputs",
        flags:"IRA",
        description:"For fetch, add or update operation, an optional comma separated list of fields to fetch from another,\n related DataSource.\n <P>\n Fields should be specified in the format \n <code>\"localFieldName!relatedDataSourceID.relatedDataSourceFieldName\"</code>.\n where <code><i>relatedDataSourceID</i></code> is the ID of the related dataSource, and\n <code><i>relatedDataSourceFieldName</i></code> is the field for which you want to\n fetch related values. The returned field values will be stored on \n the data returned to the client under the specified <code><i>localFieldName</i></code>.\n Note that this will be applied in addition to any specified ${isc.DocUtils.linkForRef('attr:DSRequest.outputs')}.\n <P>\n Note that as with ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom')}, the related dataSource must be\n linked to the primary datasource via a foreignKey relationship.\n <P>\n Note additionalOutputs sent in request from the browser can be completely disabled in \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} by setting\n <code>datasource.allowClientAdditionalOutputs</code>:\n <pre>\n     datasource.allowClientAdditionalOutputs: false\n </pre>\n In this case ${isc.DocUtils.linkForRef('attr:DSRequest.additionalOutputs')} sent from the browser will be cleared before \n executing request. Note that programatically configured additionalOutputs are always allowed, but \n you can't modify them from within a DMI method, so the only way to execute a request \n with additionalOutputs that differ from what was sent by the client is to create a new DSRequest",
        name:"additionalOutputs",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:DetailViewer.hiliteIconRightPadding":{
        ref:"attr:DetailViewer.hiliteIconRightPadding",
        flags:"IRW",
        description:"How much padding should there be on the right of ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons','hilite icons')} by default?\n Can be overridden at the field level",
        name:"hiliteIconRightPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "hiliting"
        ]
    },
    "group:scrolling":{
        ref:"group:scrolling",
        refs:[
            "method:Canvas.getScrollLeft",
            "method:Canvas.getScrollTop",
            "method:Canvas.getScrollbarSize",
            "method:Canvas.getScrollBottom",
            "method:Canvas.getScrollRight",
            "method:Canvas.scrollToTop",
            "method:Canvas.scrollToBottom",
            "method:Canvas.scrollToLeft",
            "method:Canvas.scrollToRight",
            "method:Canvas.scrollBy",
            "method:Canvas.scrollByPercent",
            "method:Canvas.scrollTo",
            "method:Canvas.scrollToPercent",
            "method:Canvas.scrolled",
            "method:ListGrid.scrollToColumn",
            "method:ListGrid.scrollToRow",
            "method:ListGrid.scrollToCell",
            "attr:Canvas.showCustomScrollbars",
            "attr:Canvas.scrollbarSize",
            "attr:Canvas.scrollbarConstructor"
        ],
        description:"Scrolling and clipping of objects when part of the object is obscured",
        name:"scrolling",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.exportWidthScale":{
        ref:"attr:ListGrid.exportWidthScale",
        flags:"IRW",
        description:"Scaling factor to translate from ListGrid field widths in pixels to Excel/OpenOffice units\n for field width, which are 1/256th of the width of the widest digit character in the default\n font for the spreadsheet.  See ${isc.DocUtils.linkForRef('attr:ListGrid.exportFieldWidths')} for where this is used.",
        name:"exportWidthScale",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.12",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGridRecord.canSelect":{
        ref:"attr:ListGridRecord.canSelect",
        flags:"IR",
        description:"Default property name denoting whether this record can be selected. Property name may be\n modified for the grid via ${isc.DocUtils.linkForRef('attr:ListGrid.recordCanSelectProperty')}.",
        name:"canSelect",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "method:DynamicForm.titleHoverHTML":{
        ref:"method:DynamicForm.titleHoverHTML",
        flags:"A",
        description:"  Retrieves the HTML to display in a hover canvas when the user holds the mousepointer over\n  some item's title.  Return null to suppress the hover canvas altogether.<br>\n  Default implementation returns the prompt for the item if defined.  If no prompt is defined\n  and the item title is clipped, the item title will be shown in a hover by default.<br>\n  Can be overridden by ${isc.DocUtils.linkForRef('method:FormItem.titleHoverHTML')}.\n\n",
        name:"titleHoverHTML",
        seeAlso:[
            {
                ref:"attr:FormItem.prompt",
                description:null
            },
            {
                ref:"method:FormItem.titleHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"Item the user is hovering over.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "attr:StretchImgButton.showDown":{
        ref:"attr:StretchImgButton.showDown",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes down in this object?",
        name:"showDown",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "classMethod:Log.logDebug":{
        ref:"classMethod:Log.logDebug",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.logDebug')} is to call the method directly on\n the Log class.\n",
        name:"logDebug",
        seeAlso:[
            {
                ref:"classMethod:Log.echo",
                description:"for dumping datastructures to the log"
            },
            {
                ref:"classMethod:Log.setPriority",
                description:"for controlling what messages appear in the log"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "method:CubeGrid.selectCell":{
        ref:"method:CubeGrid.selectCell",
        flags:"",
        description:" Select / deselect a single cell - accepts cell ID or ${isc.DocUtils.linkForRef('object:CellRecord')}.\n\n",
        name:"selectCell",
        seeAlso:[
        ],
        params:[
            {
                description:"cell to select / deselect",
                optional:false,
                name:"cell",
                defaultValue:null,
                type:"CellRecord | ID"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:DataSource.getFileURL":{
        ref:"method:DataSource.getFileURL",
        flags:"",
        description:" Returns a direct URL to access a file stored in a field of type:\"binary\".\n <P>\n This URL can be used as the \"src\" attribute of an Img widget or &lt;img&gt; tag (if the file is\n an image), or can be used in an ordinary HTML link (&lt;a&gt; tag) to download the file.\n However, for the latter use case, see also ${isc.DocUtils.linkForRef('method:DataSource.downloadFile')} and ${isc.DocUtils.linkForRef('method:DataSource.viewFile')}.\n <P>\n The URL returned is not to a static file on disk, rather, the returned URL essentially\n encodes a DSRequest as URL parameters, in a format understood by the IDACall servlet\n that comes with the Server Framework.  \n <P>\n Hence, this URL will dynamically retrieve whatever file is currently stored in the\n binary field via executing a normal DSRequest server side.  The request will run through\n normal security checks, so if your application requires authentication, the user must\n have a valid session and be authorized to access the binary field.\n <P>\n Note that if this method is called for a record with no associated file, the\n returned URL may not be functional.  By default when dataSources encounter a \n ${isc.DocUtils.linkForRef('type:FieldType','binary type fields')}, an additional field,\n <code>&lt;fieldName&gt;_filename</code>, is generated to\n store the filename for the binary field value. If this field is present in the\n data source but has no value for this record, developers can assume they're working\n with a record with no stored file. If this field is not present in some custom\n dataSource configuration, or the record is not loaded on the client, an additional\n server transaction may be required to determine whether the record has an associated\n file before calling this method to retrieve a download URL.\n\n",
        name:"getFileURL",
        seeAlso:[
        ],
        params:[
            {
                description:"Record or value of primary key field                                                   for record containing the file to\n                                                   view.",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Record | PKValue"
            },
            {
                description:"optional name of the binary field containing the                                         file.  If not provided, the first binary field\n                                         is used",
                optional:true,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"a URL to directly access the stored file",
            type:"String"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "classAttr:RPCResponse.STATUS_MAX_FILE_SIZE_EXCEEDED":{
        ref:"classAttr:RPCResponse.STATUS_MAX_FILE_SIZE_EXCEEDED",
        flags:"R",
        description:"Indicates that uploaded file exceeded max file size allowed.",
        name:"STATUS_MAX_FILE_SIZE_EXCEEDED",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-11",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "method:DrawPane.getGradient":{
        ref:"method:DrawPane.getGradient",
        flags:"",
        description:" Returns gradient for gradientID.\n\n",
        name:"getGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of gradient to retrieve",
                optional:false,
                name:"gradientID",
                defaultValue:null,
                type:"identifier"
            }
        ],
        returns:{
            description:"the gradient or null if not found",
            type:"Gradient"
        },
        type:"method",
        definingClass:"class:DrawPane"
    },
    "class:RelativeDateItem":{
        methods:[
            "method:RelativeDateItem.formatEditorValue",
            "method:RelativeDateItem.parseEditorValue",
            "method:RelativeDateItem.getRelativeDate",
            "method:RelativeDateItem.getCriterion",
            "method:RelativeDateItem.getFiscalCalendar",
            "method:RelativeDateItem.setFiscalCalendar",
            "method:RelativeDateItem.getInputFormat",
            "method:RelativeDateItem.getEnteredValue"
        ],
        ref:"class:RelativeDateItem",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:RelativeDateItem.getAbsoluteDate"
        ],
        attrs:[
            "attr:RelativeDateItem.rangePosition",
            "attr:RelativeDateItem.timeUnitOptions",
            "attr:RelativeDateItem.showPastOptions",
            "attr:RelativeDateItem.showFutureOptions",
            "attr:RelativeDateItem.rangeRoundingGranularity",
            "attr:RelativeDateItem.millisecondsAgoTitle",
            "attr:RelativeDateItem.secondsAgoTitle",
            "attr:RelativeDateItem.minutesAgoTitle",
            "attr:RelativeDateItem.hoursAgoTitle",
            "attr:RelativeDateItem.daysAgoTitle",
            "attr:RelativeDateItem.weeksAgoTitle",
            "attr:RelativeDateItem.monthsAgoTitle",
            "attr:RelativeDateItem.quartersAgoTitle",
            "attr:RelativeDateItem.yearsAgoTitle",
            "attr:RelativeDateItem.millisecondsFromNowTitle",
            "attr:RelativeDateItem.secondsFromNowTitle",
            "attr:RelativeDateItem.minutesFromNowTitle",
            "attr:RelativeDateItem.hoursFromNowTitle",
            "attr:RelativeDateItem.daysFromNowTitle",
            "attr:RelativeDateItem.weeksFromNowTitle",
            "attr:RelativeDateItem.monthsFromNowTitle",
            "attr:RelativeDateItem.quartersFromNowTitle",
            "attr:RelativeDateItem.yearsFromNowTitle",
            "attr:RelativeDateItem.defaultValue",
            "attr:RelativeDateItem.operator",
            "attr:RelativeDateItem.presetOptions",
            "attr:RelativeDateItem.valueFieldWidth",
            "attr:RelativeDateItem.valueField",
            "attr:RelativeDateItem.defaultQuantity",
            "attr:RelativeDateItem.quantityField",
            "attr:RelativeDateItem.showChooserIcon",
            "attr:RelativeDateItem.pickerIcon",
            "attr:RelativeDateItem.pickerIconPrompt",
            "attr:RelativeDateItem.pickerConstructor",
            "attr:RelativeDateItem.baseDate",
            "attr:RelativeDateItem.showCalculatedDateField",
            "attr:RelativeDateItem.calculatedDateField",
            "attr:RelativeDateItem.inputFormat",
            "attr:RelativeDateItem.displayFormat",
            "attr:RelativeDateItem.dateFormatter",
            "attr:RelativeDateItem.startDate",
            "attr:RelativeDateItem.endDate",
            "attr:RelativeDateItem.centuryThreshold",
            "attr:RelativeDateItem.shouldSaveValue",
            "attr:RelativeDateItem.useSharedPicker",
            "attr:RelativeDateItem.showChooserFiscalYearPicker",
            "attr:RelativeDateItem.showChooserWeekPicker",
            "attr:RelativeDateItem.showPickerTimeItem",
            "attr:RelativeDateItem.pickerTimeItemProperties",
            "attr:RelativeDateItem.use24HourTime"
        ],
        description:"A FormItem for entering a date relative to today or relative to some other date, or a specific\n date.  Typically used for filtering data by date.\n <P>\n The RelativeDateItem consists of a ${isc.DocUtils.linkForRef('class:ComboBoxItem')} where the user may directly choose \n one of several ${isc.DocUtils.linkForRef('attr:RelativeDateItem.presetOptions','preset options')}, choose to enter a \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.quantityField','quantity')} and ${isc.DocUtils.linkForRef('type:TimeUnit','time unit')} \n (eg \"4 months ago\" or \"3 years from now\") or directly type in \n an absolute date value (7/18/2009).",
        name:"RelativeDateItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.exportHeaderHeights":{
        ref:"attr:ListGrid.exportHeaderHeights",
        flags:"IRW",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData')} or\n${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}, causes the ${isc.DocUtils.linkForRef('attr:ListGrid.headerHeight')} and\n${isc.DocUtils.linkForRef('attr:HeaderSpan.height','headerSpan heights')} to be applied to the corresponding cells in the\nspreadsheet.",
        name:"exportHeaderHeights",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ColumnTree.showDetailFields":{
        ref:"attr:ColumnTree.showDetailFields",
        flags:"IR",
        description:"Whether to show fields marked <code>detail:true</code> when a DataBoundComponent is \n given a DataSource but no <code>component.fields</code>.\n <p>\n The <code>detail</code> property is used on DataSource fields to mark fields that \n shouldn't appear by default in a view that tries to show many records in a small space.",
        name:"showDetailFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "group:skins":{
        ref:"group:skins",
        refs:[
            "classMethod:Page.setSkinDir",
            "classMethod:Page.loadStyleSheet"
        ],
        description:"Properties used to manage to the the overall appearance of the application.\n <P>\n A \"skin\" consists of\n <ul>\n <li><code>skin_styles.css</code>: a .css file defining the set of\n     classes to apply to SmartClient components' visual elements</li>\n <li><code>images/</code>: a directory of image files used as part of visual\n     components</li>\n <li><code>load_skin.js</code>: a .js file containing overrides for various\n     SmartClient component properties that affect the appearance of those components.</li>\n </ul>\n Skins are loaded via the <code>skin</code> attribute of the ${isc.DocUtils.linkForRef('group:loadISCTag')} or\n by including the appropriate <code>load_skin.js</code> source file with a standard script\n include tag.\n <P>\n To create a custom skin, we suggest making a complete copy of an existing skin, then\n modifying the media, css class definitions and component property overrides you wish to\n change.\n <P>\n Note that the <code>load_skin.js</code> file contains a ${isc.DocUtils.linkForRef('classMethod:Page.setSkinDir')}\n directive to set up the skin dir (used to ensure media is retrieved from the appropriate\n directory), and a ${isc.DocUtils.linkForRef('classMethod:Page.loadStyleSheet')} directive to load the .css file.\n <P>\n See the ${isc.DocUtils.linkForRef('group:skinning','Skinning Overview')} for more information.",
        name:"skins",
        seeAlso:[
            {
                ref:"group:appearance",
                description:null
            },
            {
                ref:"group:images",
                description:null
            },
            {
                ref:"group:files",
                description:null
            }
        ],
        type:"group"
    },
    "attr:TimeItem.hourItemPrompt":{
        ref:"attr:TimeItem.hourItemPrompt",
        flags:"IRW",
        description:"The hover prompt to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.hourItem','hour picker')}.",
        name:"hourItemPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Choose hours\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "type:Axis":{
        ref:"type:Axis",
        values:[
            {
                description:"Row axis",
                value:"\"row\""
            },
            {
                description:"Column axis",
                value:"\"column\""
            }
        ],
        description:"An axis or \"side\" of a table.",
        name:"Axis",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:FacetChart.autoRotateLabels":{
        ref:"attr:FacetChart.autoRotateLabels",
        deprecated:"As of SmartClient 9.0 this property is replaced by the property ${isc.DocUtils.linkForRef('attr:FacetChart.rotateLabels')}.  Setting rotateLabels to \"auto\" is equivalent to setting\n autoRotateLabels to <code>true</code>.  Setting rotateLabels to \"never\" is equivalent\n to setting autoRotateLabels to <code>false</code>.",
        flags:"IR",
        description:"Whether to automatically rotate labels if needed in order to make them legible and\n non-overlapping.",
        name:"autoRotateLabels",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:SectionStack.sections":{
        ref:"attr:SectionStack.sections",
        flags:"IR",
        getter:[
            "getSections"
        ],
        description:"List of sections of components managed by this SectionStack.",
        name:"sections",
        seeAlso:[
            {
                ref:"method:SectionStack.getSections",
                description:null
            }
        ],
        valueType:"Array of SectionStackSection Properties",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsExpandCollapse')}"
        ],
        definingClass:"class:SectionStack"
    },
    "method:RichTextItem.setMoveFocusOnTab":{
        ref:"method:RichTextItem.setMoveFocusOnTab",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:RichTextItem.moveFocusOnTab')}.\n",
        name:"setMoveFocusOnTab",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for moveFocusOnTab",
                optional:false,
                name:"moveFocusOnTab",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:RichTextItem"
    },
    "attr:FormItem.pickerIconSrc":{
        ref:"attr:FormItem.pickerIconSrc",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.src','src')} of the picker icon image to be displayed.",
        name:"pickerIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:OperationBinding.outputs":{
        ref:"attr:OperationBinding.outputs",
        flags:"IR",
        description:"Specifies, for this operationBinding only, the list of field names that should be returned\n to the client.  Typically this will be a subset of the ${isc.DocUtils.linkForRef('attr:DataSource.fields')}, but note \n that this is not a requirement; <code>outputs</code> can include fields that are not defined\n in the DataSource's field list.  In this case, the server will return extra fields even if \n ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields')} is true.\n <p>\n You specify this property as a string containing a comma-separated list of field names \n (eg, \"foo, bar, baz\")",
        name:"outputs",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "attr:FilterClause.operatorPicker":{
        ref:"attr:FilterClause.operatorPicker",
        flags:"IR",
        description:"AutoChild for the ${isc.DocUtils.linkForRef('class:FormItem')} that allows a user to select the operator\n when creating filter clauses. Each clause will create an operatorPicker automatically.\n To customize this item, use ${isc.DocUtils.linkForRef('attr:FilterClause.operatorPickerProperties')}",
        name:"operatorPicker",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:ListGrid.autoFitHeaderHeights":{
        ref:"attr:ListGrid.autoFitHeaderHeights",
        flags:"IR",
        description:"If this property is set to true, header buttons for either\n ${isc.DocUtils.linkForRef('attr:ListGrid.fields','fields')} or ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','header spans')} will\n automatically expand to accomodate their titles vertically.\n This means if you have a \"tall\" title - typically a long string where\n ${isc.DocUtils.linkForRef('attr:ListGridField.wrap')} is set to true such that you end up with several lines of\n text - the button will render large enough to accomodate it.\n If necessary this will cause the header for the grid as a whole to expand beyond the\n specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerHeight')}.",
        name:"autoFitHeaderHeights",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:HTMLFlow.handleError":{
        ref:"method:HTMLFlow.handleError",
        flags:"",
        description:"\n This method is called when a transport error occurs.  Typically, this is the result of the\n server returning an HTTP error code such as 404 - document not found.  You can inspect the\n RPCResponse object for the reasons for the error and take appropriate action.  Typical\n properties to look at are rpcResponse.status, and rpcResponse.httpResponseCode.\n <p>\n This method is called from the response processing pipeline.  If you want to provide your\n own HTML response that should be rendered into this component as the result of the error,\n you can do so by setting rpcResponse.data to your HTML string.  Returning false from this\n method suppresses any further response handling.  The default implementation of this method\n causes an error message to be logged to the Developer Console and sets the HTML to the error\n string.\n\n",
        name:"handleError",
        seeAlso:[
        ],
        params:[
            {
                description:"The RPCRequest that was made to the server",
                optional:false,
                name:"rpcRequest",
                defaultValue:null,
                type:"RPCRequest"
            },
            {
                description:"The RPCResponse that was received",
                optional:false,
                name:"rpcResponse",
                defaultValue:null,
                type:"RPCResponse"
            }
        ],
        returns:{
            description:"false to suppress further response processing",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "method:ListGrid.recalculateSummaries":{
        ref:"method:ListGrid.recalculateSummaries",
        flags:"",
        description:" Recalculates values for fields with\n ${isc.DocUtils.linkForRef('attr:ListGridField.recordSummaryFunction','summary-functions')} or\n ${isc.DocUtils.linkForRef('attr:ListGridField.userFormula','user formulae')} defined and for values\n displayed in the ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','grid summary')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary','group summary rows')}.\n",
        name:"recalculateSummaries",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional array of records to recalculate summaries for,                  or null for all records",
                optional:true,
                name:"records",
                defaultValue:null,
                type:"Array of Record"
            },
            {
                description:"Optional array of fields to recalculate summaries                 for, or null for all fields\n <P>\n Note that the records should be from ${isc.DocUtils.linkForRef('attr:ListGrid.data')}; thus, if the grid is grouped,\n  the records should be from the grouped data rather than ${isc.DocUtils.linkForRef('attr:ListGrid.originalData')}.",
                optional:true,
                name:"fields",
                defaultValue:null,
                type:"Array of ListGridField"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:EdgedCanvas.showCenter":{
        ref:"attr:EdgedCanvas.showCenter",
        flags:"IR",
        description:"Whether to show media in the center section, that is, behind the decorated Canvas.",
        name:"showCenter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:FormItem.titleOrientation":{
        ref:"attr:FormItem.titleOrientation",
        flags:"IRW",
        description:"On which side of this item should the title be placed.  ${isc.DocUtils.linkForRef('type:TitleOrientation')}\n lists valid options.\n <P>\n Note that titles on the left or right take up a cell in tabular\n ${isc.DocUtils.linkForRef('group:formLayout','form layouts')}, but titles on top do not.",
        name:"titleOrientation",
        seeAlso:[
            {
                ref:"attr:DynamicForm.titleOrientation",
                description:null
            }
        ],
        valueType:"TitleOrientation",
        defaultValue:"Canvas.LEFT",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "method:SplitPane.setDetailPane":{
        ref:"method:SplitPane.setDetailPane",
        flags:"",
        description:" Sets a new ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')} at runtime.\n",
        name:"setDetailPane",
        seeAlso:[
        ],
        params:[
            {
                description:"new detail pane for this widget.",
                optional:false,
                name:"pane",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:TableView.imageClick":{
        ref:"method:TableView.imageClick",
        flags:"",
        description:" Executed when the user clicks on the image displayed in a record if\n ${isc.DocUtils.linkForRef('attr:TableView.iconField')} has been specified.\n\n",
        name:"imageClick",
        seeAlso:[
        ],
        params:[
            {
                description:"record clicked",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        type:"method",
        definingClass:"class:TableView"
    },
    "attr:MultiComboBoxItem.useInsertionOrder":{
        ref:"attr:MultiComboBoxItem.useInsertionOrder",
        flags:"IR",
        description:"Specifies whether to arrange the buttons of the MultiComboBoxItem in the order that they were\n selected (the default), or to sort the buttons by ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.displayField')}.",
        name:"useInsertionOrder",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "method:Toolbar.getButtonNumber":{
        ref:"method:Toolbar.getButtonNumber",
        flags:"A",
        description:"\t\t\tget the index of a button in the buttons array<p>\n          The button can be specified as - \n          <ul>\n          <li>an index within this.buttons (just returned)\n          <li>the ID property of a button\n          <li>a pointer to the button descriptor object in this.buttons\n          <li>the actual button widget in this.members\n          </ul><p>\n\t\t\treturns -1 if not found\n\n",
        name:"getButtonNumber",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"button",
                defaultValue:null,
                type:"number | string  | button object | button widget"
            }
        ],
        returns:{
            description:"index of the button in question",
            type:"number"
        },
        type:"method",
        definingClass:"class:Toolbar"
    },
    "classMethod:Canvas.showPrintPreview":{
        ref:"classMethod:Canvas.showPrintPreview",
        flags:"",
        description:" Generate and show a ${isc.DocUtils.linkForRef('class:PrintWindow')} containing a ${isc.DocUtils.linkForRef('class:PrintCanvas')}\n showing a printable view of the components passed in.\n\n",
        name:"showPrintPreview",
        seeAlso:[
        ],
        params:[
            {
                description:"components to get the print HTML for. May also include  raw HTML strings which will be folded into the generated print output",
                optional:false,
                name:"components",
                defaultValue:null,
                type:"Array of Canvas"
            },
            {
                description:"PrintProperties object for customizing the     print HTML output",
                optional:true,
                name:"printProperties",
                defaultValue:null,
                type:"PrintProperties"
            },
            {
                description:"Properties to apply to the     generated print window.",
                optional:true,
                name:"printWindowProperties",
                defaultValue:null,
                type:"PrintWindow Properties"
            },
            {
                description:"callback to fire when the print preview canvas has     been populated with the printable HTML. This callback takes 2 parameters:\n    <code>printPreview</code> - a pointer to the generated print canvas shown in the\n    body of the print window.\n    <code>printWindow</code> - a pointer to the generated print window and",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"Optional HTML separator to render between each component's printable                      HTML",
                optional:true,
                name:"separator",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Canvas",
        groups:[
            "printing"
        ]
    },
    "method:DrawItem.dragStop":{
        ref:"method:DrawItem.dragStop",
        flags:"",
        description:" Notification fired when the user stops dragging this DrawItem. Will only fire if ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag','canDrag')}\n is true.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"dragStop",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag interaction.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "group:reflection":{
        ref:"group:reflection",
        title:"Registering Classes for Reflection",
        refs:[
        ],
        description:"In order to specify a SmartGWT class as a constructor in\n ${isc.DocUtils.linkForRef('group:componentXML','Component XML')} or \n ${isc.DocUtils.linkForRef('group:componentSchema','Component Schema')},\n or for other purposes, such as for \n {@link com.smartgwt.client.docs.AutoChildUsage autoChildren} or for \n {@link com.smartgwt.client.data.DataSourceField#setEditorType(Class)}, \n you must first register the class with the \n {@link com.smartgwt.client.bean.BeanFactory} reflection mechanism.\n You can do this in <code>onModuleLoad()</code>, or at some later point\n before the constructor is used.\n <p>\n If you want to register {@link com.smartgwt.client.widgets.Canvas}\n and all its subclasses found in the classpath (including your custom subclasses), \n you can use the {@link com.smartgwt.client.bean.BeanFactory.CanvasMetaFactory}\n interface to do this automatically:\n <blockquote><pre>\n GWT.create(BeanFactory.CanvasMetaFactory.class);</pre></blockquote>\n <p>\n Similarly, to register {@link com.smartgwt.client.widgets.form.fields.FormItem}\n and all its subclasses found in the classpath (including your custom subclasses),\n you can use the {@link com.smartgwt.client.bean.BeanFactory.FormItemMetaFactory}.\n <blockquote><pre>\n GWT.create(BeanFactory.FormItemMetaFactory.class);</pre></blockquote>\n <p>\n Alternatively, if only specific classes need to be instantiated and\n configured dynamically, you can register just those classes by using the \n {@link com.smartgwt.client.bean.BeanFactory.MetaFactory} interface instead.\n Usage is most easily explained with an example. First, you define an\n interface. (Note that it can be an inner interface.)\n <blockquote><pre>\n public interface MyMetaFactory extends BeanFactory.MetaFactory {\n     BeanFactory&lt;ListGrid&gt; getListGridFactory();\n     BeanFactory&lt;TileGrid&gt; getTileGridBeanFactory();\n }</pre></blockquote>\n ... and then you trigger the generation process:\n <blockquote><pre>\n GWT.create(MyMetaFactory.class);</pre></blockquote>\n <p>\n Each function in the interface you define will result in the creation of\n one registered <code>BeanFactory</code> ... so, in this case, we would end up with\n bean factories for <code>ListGrid</code> and <code>TileGrid</code>. The rules\n are as follows:\n <ol>\n <li>The interface must extend <code>BeanFactory.MetaFactory</code></li>\n <li>The return type for each function must be <code>BeanFactory</code>,\n with a generic type that is the class you want to register for reflection.</li>\n <li>The function must take no arguments.</li>\n <li>The name of the function doesn't matter.</li>\n </ol>\n <p>\n If there are only a limited number of classes which require dynamic\n configuration, it will save code size to use the\n {@link com.smartgwt.client.bean.BeanFactory.MetaFactory} interface to generate\n factories for those specific types, rather than using \n {@link com.smartgwt.client.bean.BeanFactory.CanvasMetaFactory} or\n {@link com.smartgwt.client.bean.BeanFactory.FormItemMetaFactory}. Once a factory\n is generated for a class, GWT's opportunities to prune dead code are more\n limited for that class, since it cannot know what properties will be set or\n retrieved at run-time.",
        name:"reflection",
        seeAlso:[
        ],
        type:"group"
    },
    "method:PortalLayout.getNumColumns":{
        ref:"method:PortalLayout.getNumColumns",
        flags:"",
        description:" Returns the current number of columns displayed in this PortalLayout.\n",
        name:"getNumColumns",
        seeAlso:[
        ],
        returns:{
            description:"numColumns",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:FormItem.errorMessageWidth":{
        ref:"attr:FormItem.errorMessageWidth",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} and ${isc.DocUtils.linkForRef('attr:FormItem.showErrorText')} are both true and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorOrientation')} is \"left\" or \"right\", errorMessageWidth is the amount to reduce\n the width of the editor to accommodate the error message and icon.",
        name:"errorMessageWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"80",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "validation"
        ]
    },
    "attr:SectionItem.sectionExpanded":{
        ref:"attr:SectionItem.sectionExpanded",
        flags:"IR",
        description:"Whether this form section should be initially collapsed. Can be set programmatically\n via ${isc.DocUtils.linkForRef('method:SectionItem.expandSection')} and ${isc.DocUtils.linkForRef('method:SectionItem.collapseSection')}.",
        name:"sectionExpanded",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formSections')}"
        ],
        definingClass:"class:SectionItem"
    },
    "attr:StatefulCanvas.iconOrientation":{
        ref:"attr:StatefulCanvas.iconOrientation",
        flags:"IR",
        description:"If this button is showing an icon should it appear to the left or right of the title?\n valid options are <code>\"left\"</code> and <code>\"right\"</code>.",
        name:"iconOrientation",
        setter:[
            "setIconOrientation"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"left\"",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:ListGrid.createRecordComponent":{
        ref:"method:ListGrid.createRecordComponent",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} is true, this method is called to create\n per-row or per-cell embedded components to display in the grid.\n <p>\n This method should create and return a new component for the record passed in every\n time it is called.\n <P>\n Note that the default ${isc.DocUtils.linkForRef('type:RecordComponentPoolingMode')} is \"viewport\", which means\n that components are destroyed as soon as their records leave the viewport.\n <P>\n For the most efficient implementation, switch the\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentPoolingMode')} to \"recycle\".  Note that, in this mode, in\n addition to implementing this method, developers should also implement\n ${isc.DocUtils.linkForRef('method:ListGrid.updateRecordComponent')} which allows already created components to be\n altered for re-use in new records. See the ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} overview\n for more information.\n <P>\n The colNum parameter is applicable only when\n ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is true.\n\n",
        name:"createRecordComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"record to create a component for",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"cell to which the component applies",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"return the component to embed in the passed record",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DateRangeItem.absoluteItemConstructor":{
        ref:"attr:DateRangeItem.absoluteItemConstructor",
        flags:"R",
        description:"The ${isc.DocUtils.linkForRef('class:FormItem')} class to create when ${isc.DocUtils.linkForRef('attr:DateRangeItem.allowRelativeDates')} is false.",
        name:"absoluteItemConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"DateItem\"",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "method:MetricSettings.formatDataValue":{
        ref:"method:MetricSettings.formatDataValue",
        flags:"",
        description:" Return the text string to display in ${isc.DocUtils.linkForRef('attr:MetricSettings.showValueOnHover','hovers')} or via ${isc.DocUtils.linkForRef('attr:MetricSettings.showDataValues')}\n given the raw value for the metric displayed on the value axis.\n <p>\n Note that the rendering of values for gradation labels is handled by\n ${isc.DocUtils.linkForRef('method:MetricSettings.formatAxisValue')}.\n",
        name:"formatDataValue",
        seeAlso:[
        ],
        params:[
            {
                description:"raw value of the metric",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"the text to display.",
            type:"String"
        },
        type:"method",
        definingClass:"object:MetricSettings",
        groups:[
            "display_values"
        ]
    },
    "attr:MultiGroupPanel.optionsGrid":{
        ref:"attr:MultiGroupPanel.optionsGrid",
        flags:"IR",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ListGrid')} allowing the user to configure a set of \n ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.optionsGridProperties</code> and \n <code>multiGroupPanel.optionsGridDefaults</code>.",
        name:"optionsGrid",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:DataSourceField.displayFormat":{
        ref:"attr:DataSourceField.displayFormat",
        deprecated:"Use ${isc.DocUtils.linkForRef('attr:DataSourceField.dateFormatter')} or ${isc.DocUtils.linkForRef('attr:DataSourceField.timeFormatter')}   instead.",
        flags:"IR",
        description:"The default date formatter to use for displaying this field.  Only applicable to fields of \n type \"date\" and \"datetime\".  Note that this property is honored when exporting directly to \n Excel spreadsheets (ie, when using XLS or XLSX/OOXML form, <b>not</b> CSV); \"date\" and\n \"datetime\" fields with this property set will deliver real dates and formatting information\n to Excel, rather than formatted strings or unformatted dates.",
        name:"displayFormat",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "method:GridRenderer.cellMouseDown":{
        ref:"method:GridRenderer.cellMouseDown",
        flags:"A",
        description:" Called when a cell receives a mousedown event.\n \n",
        name:"cellMouseDown",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:FormItem.showFocused":{
        ref:"attr:FormItem.showFocused",
        flags:"IRWA",
        description:"When this item receives focus, should it be re-styled to indicate it has focus?",
        name:"showFocused",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:AdvancedHiliteEditor.callback":{
        ref:"attr:AdvancedHiliteEditor.callback",
        flags:"IR",
        description:"The callback to fire when the ${isc.DocUtils.linkForRef('attr:AdvancedHiliteEditor.saveButton','saveButton')} is clicked.",
        name:"callback",
        seeAlso:[
        ],
        valueType:"Callback",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "method:MenuItem.checkIf":{
        ref:"method:MenuItem.checkIf",
        flags:"",
        description:" Contains the condition that will check or uncheck the current menuItem. The handler must be specified\n as a function or string of script.  Return false to uncheck the menuItem or true to check it\n <p>\n If you don't need to set this state dynamically, use ${isc.DocUtils.linkForRef('attr:MenuItem.checked')} instead.\n <p>\n May be defined as a ${isc.DocUtils.linkForRef('group:stringMethods','stringMethod')}.\n <p>\n",
        name:"checkIf",
        seeAlso:[
        ],
        params:[
            {
                description:"${isc.DocUtils.linkForRef('attr:Menu.target','target')} attribute for the top level menu.",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"${isc.DocUtils.linkForRef('class:Menu','menu')} contains the reference to the menu that contains the current item",
                optional:false,
                name:"menu",
                defaultValue:null,
                type:"Menu"
            },
            {
                description:"contains the reference to the current item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem"
            }
        ],
        returns:{
            description:"Return true to show a checkmark by this menu item",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('menuDynamicItems')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "dynamicMenuItem"
        ]
    },
    "attr:Canvas.shadowDepth":{
        ref:"attr:Canvas.shadowDepth",
        flags:"IR",
        description:"Depth of the shadow, or the virtual height above the page of the widget throwing the shadow.\n <P>\n This is a single parameter that can be used to control both <code>shadowSoftness</code> and\n <code>shadowOffset</code>.",
        name:"shadowDepth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"4",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "shadow"
        ]
    },
    "method:Canvas.setSnapTo":{
        ref:"method:Canvas.setSnapTo",
        flags:"",
        description:" Set the snapTo property of this canvas, and handle repositioning.\n\n",
        name:"setSnapTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new snapTo value",
                optional:false,
                name:"snapTo",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:TextItem.browserAutoCapitalize":{
        ref:"attr:TextItem.browserAutoCapitalize",
        flags:"IRWA",
        description:null,
        name:"browserAutoCapitalize",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "attr:MenuItem.title":{
        ref:"attr:MenuItem.title",
        flags:"IR",
        description:"The text displayed for the menu item",
        name:"title",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MenuItem",
        groups:[
            "menuBasic"
        ]
    },
    "method:FormulaBuilder.saveAddAnother":{
        ref:"method:FormulaBuilder.saveAddAnother",
        flags:"",
        description:" Call to finish working, test the formula and call \n ${isc.DocUtils.linkForRef('method:FormulaBuilder.fireOnClose','fireOnClose()')}.  If the formula saves ok, don't close\n the builder but instead reset it, ready to add a new formula-field.\n\n",
        name:"saveAddAnother",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:RelativeDateItem.timeUnitOptions":{
        ref:"attr:RelativeDateItem.timeUnitOptions",
        flags:"IR",
        description:"List of time units that will be offered for relative dates.\n <P>\n Each available time unit option will cause two options to appear in the \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.valueField')}.  For example, if \"day\" is an available ${isc.DocUtils.linkForRef('type:TimeUnit','time unit')}\n option, there will be ${isc.DocUtils.linkForRef('attr:RelativeDateItem.daysAgoTitle','\"N days ago\"')} and \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.daysFromNowTitle','\"N days from now\"')}.",
        name:"timeUnitOptions",
        seeAlso:[
            {
                ref:"attr:RelativeDateItem.showPastOptions",
                description:null
            },
            {
                ref:"attr:RelativeDateItem.showFutureOptions",
                description:null
            },
            {
                ref:"attr:RelativeDateItem.rangeRoundingGranularity",
                description:null
            }
        ],
        valueType:"Array of TimeUnit",
        defaultValue:"[\"day\", \"week\", \"month\"]",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:TreeGrid.useAllDataSourceFields":{
        ref:"attr:TreeGrid.useAllDataSourceFields",
        flags:"IRW",
        description:"If true, the set of fields given by the \"default binding\" (see \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')}) is used, with any fields specified in\n <code>component.fields</code> acting as overrides that can suppress or modify the\n display of individual fields, without having to list the entire set of fields that\n should be shown.\n <P>\n If <code>component.fields</code> contains fields that are not found in the DataSource,\n they will be shown after the most recently referred to DataSource field.  If the new\n fields appear first, they will be shown first.\n <P>\n ${isc.DocUtils.linkForExampleId('validationFieldBinding', 'This example')} shows a mixture of component\n fields and DataSource fields, and how they interact for validation.",
        name:"useAllDataSourceFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('validationFieldBinding')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "databinding"
        ]
    },
    "attr:DetailViewerField.name":{
        ref:"attr:DetailViewerField.name",
        flags:"IR",
        description:"Name property used to identify the field, and determines which attribute from\n records will be displayed in this field.\n <P>\n Must be unique within the DetailViewer as well as a valid JavaScript identifier,\n as specified by ECMA-262 Section 7.6 (the <smartclient>${isc.DocUtils.linkForRef('classMethod:String.isValidID')}</smartclient>\n <smartgwt>StringUtil.isValidID()</smartgwt> function can be used to test whether\n a name is a valid JavaScript identifier).\n <P>\n The attribute of the records to display in this field may also be set by\n ${isc.DocUtils.linkForRef('attr:DetailViewerField.displayField')}.",
        name:"name",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:MultiGroupDialog.levelUpButton":{
        ref:"attr:MultiGroupDialog.levelUpButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n group-levels up in the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.levelUpButtonProperties</code> and \n <code>multiGroupPanel.levelUpButtonDefaults</code>.",
        name:"levelUpButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "attr:ListGrid.canSort":{
        ref:"attr:ListGrid.canSort",
        flags:"IRW",
        description:"Enables or disables interactive sorting behavior for this listGrid. Does not\n affect sorting by direct calls to the ${isc.DocUtils.linkForRef('method:ListGrid.sort','sort')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.setSort','setSort')} methods.",
        name:"canSort",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "class:LinkItem":{
        methods:[
            "method:LinkItem.setLinkTitle"
        ],
        ref:"class:LinkItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:LinkItem.disableIconsOnReadOnly",
            "attr:LinkItem.iconVAlign",
            "attr:LinkItem.readOnlyDisplay",
            "attr:LinkItem.target",
            "attr:LinkItem.linkTitle"
        ],
        description:"A form item that displays a URL. In the default read-only mode (${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')}\n is <code>false</code>) the URL is shown as a link; in editable mode the URL is shown in a textbox.\n <P>\n The link to open is specified as the item value with ${isc.DocUtils.linkForRef('method:FormItem.setValue')} or \n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')}. The link title defaults to the URL unless\n ${isc.DocUtils.linkForRef('attr:LinkItem.linkTitle')} is specified.\n <P>\n Additionally, a custom action can be triggered when the link is clicked: see\n ${isc.DocUtils.linkForRef('attr:LinkItem.target')} for details.",
        name:"LinkItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Calendar.setHeaderLevels":{
        ref:"method:Calendar.setHeaderLevels",
        flags:"",
        description:" For ${isc.DocUtils.linkForRef('class:Timeline')}s, configures the levels of ${isc.DocUtils.linkForRef('object:HeaderLevel','headers')} shown above the \n event area, and their time units, after initialization.\n",
        name:"setHeaderLevels",
        seeAlso:[
        ],
        params:[
            {
                description:"the array of HeaderLevels to set",
                optional:false,
                name:"headerLevels",
                defaultValue:null,
                type:"Array of HeaderLevel"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ListGrid.clearFilterText":{
        ref:"attr:ListGrid.clearFilterText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid,\n and a ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','filter-editor')} is visible, this\n attribute will be shown as the menu item title to clear any existing filter.  This\n menu-item is displayed only in the context menu for the sorter button.",
        name:"clearFilterText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Clear Filter\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DrawItem.prompt":{
        ref:"attr:DrawItem.prompt",
        flags:"IRW",
        description:"Default ${isc.DocUtils.linkForRef('method:DrawItem.getHoverHTML','hover HTML')} that is displayed in the global hover canvas if\n the user hovers over this DrawItem and ${isc.DocUtils.linkForRef('attr:DrawItem.showHover','showHover')} is true.",
        name:"prompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "hovers"
        ]
    },
    "method:ListGrid.getGroupNodeHTML":{
        ref:"method:ListGrid.getGroupNodeHTML",
        flags:"",
        description:" Returns the HTML code necessary to render a group node, including icon, title, and padding.\n The amount of the padding is at least ${isc.DocUtils.linkForRef('attr:ListGrid.groupLeadingIndent')} pixels, and\n an additional ${isc.DocUtils.linkForRef('attr:ListGrid.groupIndentSize')} pixels for each increasing level of the\n node.\n",
        name:"getGroupNodeHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"Specified group node",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TimeItem.hourItemProperties":{
        ref:"attr:TimeItem.hourItemProperties",
        flags:"IRA",
        description:"Custom properties to apply to this timeItem's generated \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourItem','hour picker')}.",
        name:"hourItemProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:Layout.managePercentBreadth":{
        ref:"attr:Layout.managePercentBreadth",
        flags:"IR",
        description:"If set, a Layout with breadthPolicy:\"fill\" will specially interpret a percentage breadth on\n a member as a percentage of available space excluding the ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')}.  If false,\n percentages work exactly as for a non-member, with layoutMargins, if any, ignored.",
        name:"managePercentBreadth",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Layout"
    },
    "type:MenuFieldID":{
        ref:"type:MenuFieldID",
        values:[
            {
                description:"Displays the icon field for the menu. This field contains the items                  specified icon (if there is one), or if the item is checked, the\n                  checkmark icon for the item.",
                value:"\"icon\""
            },
            {
                description:"Displays the item's title",
                value:"\"title\""
            },
            {
                description:"Displays the key field for the menu. This field contains the name or                title of any shortcut keys for this menu item.",
                value:"\"key\""
            },
            {
                description:"Field to display the submenu image for items that have a submenu.",
                value:"\"subMenu\""
            }
        ],
        description:"Simple string identifiers for standard menu fields.",
        name:"MenuFieldID",
        seeAlso:[
        ],
        type:"type"
    },
    "classMethod:Canvas.setNeverUseFilters":{
        ref:"classMethod:Canvas.setNeverUseFilters",
        flags:"",
        description:" Changes the system-wide ${isc.DocUtils.linkForRef('classAttr:Canvas.neverUseFilters')} setting.\n",
        name:"setNeverUseFilters",
        seeAlso:[
        ],
        params:[
            {
                description:"new setting",
                optional:false,
                name:"neverUseFilters",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Canvas",
        groups:[
            "IEFilters"
        ]
    },
    "method:Canvas.getPageBottom":{
        ref:"method:Canvas.getPageBottom",
        flags:"",
        description:" Return the page-relative bottom coordinate of this object, in pixels.\n",
        name:"getPageBottom",
        seeAlso:[
        ],
        returns:{
            description:"GLOBAL bottom coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "classMethod:MathFunction.getDefaultFunctionIndex":{
        ref:"classMethod:MathFunction.getDefaultFunctionIndex",
        flags:"",
        description:" Returns an index of all default registered functions by name, ordered by \n ${isc.DocUtils.linkForRef('attr:MathFunction.defaultSortPosition')}.\n \n",
        name:"getDefaultFunctionIndex",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Index"
        },
        type:"classMethod",
        definingClass:"class:MathFunction",
        groups:[
            "formulaFields"
        ]
    },
    "attr:GridRenderer.fastCellUpdates":{
        ref:"attr:GridRenderer.fastCellUpdates",
        flags:"IRWA",
        description:"<b>Note: This property only has an effect in Internet Explorer</b>\n <P>\n Advanced property to improve performance for dynamic styling of gridRenderer cells in\n Internet Explorer, at the expense of slightly slower initial drawing, and some \n limitations on supported styling options.\n <P>\n <code>fastCellUpdates</code> speeds up the dynamic styling system used by rollovers,\n selections, and custom styling that calls ${isc.DocUtils.linkForRef('method:GridRenderer.refreshCellStyle')}, at\n the cost of slightly slower draw() and redraw() times.\n <P>\n Notes:\n <ul>\n <li>When this property is set, ListGrid cells may be styled using the \n     ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')}. See ${isc.DocUtils.linkForRef('method:ListGrid.getBaseStyle')} for \n     more information.</li>\n <li>If any cell styles specify a a background image URL, the URL will be resolved relative\n     to the page location rather than the location of the CSS stylesheet. This means cell\n     styles with a background URL should either supply a fully qualified path, or the\n     background image media should be made available at a second location for IE.</li>\n <li>fastCellUpdates will not work if the styles involved are in an external stylesheet loaded\n     from a remote host. Either the stylesheet containing cell styles needs to be loaded\n     from the same host as the main page, or the cell styles need to be inlined in the html \n     of the bootstrap page.</li>\n <li>fastCellUpdates will not work if the css styles for cells are defined in\n     a <code>.css</code> file loaded via <code>@import</code>. Instead the <code>.css</code>\n     file should be loaded via a <code>&lt;link ...&gt;</code> tag.</li>\n </ul>",
        name:"fastCellUpdates",
        setter:[
            "setFastCellUpdates"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:GridRenderer"
    },
    "method:DataSource.hasAllData":{
        ref:"method:DataSource.hasAllData",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} is true, has all the data been retrieved to the client?\n",
        name:"hasAllData",
        seeAlso:[
        ],
        returns:{
            description:"All data has been fetched from the server and is available client-side",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "type:AutoFitEvent":{
        ref:"type:AutoFitEvent",
        values:[
            {
                description:"React to a double click on the listGrid header.",
                value:"\"doubleClick\""
            },
            {
                description:"React to a click on the listGrid header.",
                value:"\"click\""
            },
            {
                description:"No event will trigger auto-fit.",
                value:"\"none\""
            }
        ],
        description:"Event on a listGrid header to trigger auto-fit of the listgrid field.",
        name:"AutoFitEvent",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoFitFields"
        ]
    },
    "attr:DrawImage.height":{
        ref:"attr:DrawImage.height",
        flags:"IR",
        description:"Height in pixels.",
        name:"height",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:DrawImage"
    },
    "method:FormItem.doubleClick":{
        ref:"method:FormItem.doubleClick",
        flags:"",
        description:" Called when this FormItem is double-clicked.\n\n",
        name:"doubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Return false to cancel the doubleClick event. This will prevent the event from   bubbling up, suppressing\n   ${isc.DocUtils.linkForRef('method:Canvas.doubleClick','doubleClick')} on the form containing this item.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "classMethod:Browser.setIsHandset":{
        ref:"classMethod:Browser.setIsHandset",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')} to allow this global variable to be changed at runtime.\n This advanced method is provided to override SmartClient's detection of devices, since the\n framework can only detect devices that existed at the time the platform was released. Any\n changes to ${isc.DocUtils.linkForRef('classAttr:Browser.isDesktop')}, ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')}, or ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}\n must be made before any component is created.\n <p>\n Note that setting <code>Browser.isHandset</code> might affect the values of\n ${isc.DocUtils.linkForRef('classAttr:Browser.isDesktop')} and ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}.\n\n",
        name:"setIsHandset",
        seeAlso:[
        ],
        params:[
            {
                description:"new setting for <code>Browser.isHandset</code>.",
                optional:false,
                name:"isHandset",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Browser"
    },
    "method:SectionStack.hideSection":{
        ref:"method:SectionStack.hideSection",
        flags:"",
        description:" \n Hides a section or sections.  This includes the section header and its items.  The space\n vacated by this action is reassigned to the nearest visible section item above this\n section.  If there are no visible section items above this section, the space is\n reassigned to the nearest visible section item below this section.\n\n",
        name:"hideSection",
        seeAlso:[
            {
                ref:"method:SectionStack.collapseSection",
                description:null
            }
        ],
        params:[
            {
                description:"Section(s) to hide.  For this parameter, you can pass the position \n                      of the section in the SectionStack, the name of the section, or a\n                      List of section names / positions.",
                optional:false,
                name:"sections",
                defaultValue:null,
                type:"int | String | Array of int | Array of String"
            },
            {
                description:"to fire when the section has been hidden",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"HideSectionCallback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsShowAndHide')}"
        ],
        definingClass:"class:SectionStack"
    },
    "attr:ColumnTree.showOpenIcons":{
        ref:"attr:ColumnTree.showOpenIcons",
        flags:"IRW",
        description:"If true, show a different icon for <code>open</code> folders than closed folders.\n This is achieved by appending the ${isc.DocUtils.linkForRef('attr:ColumnTree.openIconSuffix')} onto the \n ${isc.DocUtils.linkForRef('attr:ColumnTree.folderIcon')} URL [for example <code>\"[SKIN]/folder.gif\"</code> might be \n replaced by <code>\"[SKIN]/folder_open.gif\"</code>.<br>\n <b>Note</b> If this property is set to <code>false</code> the same icon is shown for\n open folders as for closed folders, unless a custom folder icon was specified. This will be\n determined by ${isc.DocUtils.linkForRef('attr:ColumnTree.folderIcon')} plus the ${isc.DocUtils.linkForRef('attr:ColumnTree.closedIconSuffix')}.",
        name:"showOpenIcons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('millerColumns')}"
        ],
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "attr:DetailViewerField.hiliteIconLeftPadding":{
        ref:"attr:DetailViewerField.hiliteIconLeftPadding",
        flags:"IRW",
        description:"How much padding should there be on the left of ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIcons','hilite icons')} \n for this field?\n Overrides ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconLeftPadding')}",
        name:"hiliteIconLeftPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "hiliting"
        ]
    },
    "class:TimeItem":{
        methods:[
            "method:TimeItem.setHourValues",
            "method:TimeItem.getHourValues",
            "method:TimeItem.setMinuteValues",
            "method:TimeItem.getMinuteValues",
            "method:TimeItem.setSecondValues",
            "method:TimeItem.getSecondValues",
            "method:TimeItem.setMillisecondValues",
            "method:TimeItem.getMillisecondValues",
            "method:TimeItem.setHours",
            "method:TimeItem.setMinutes",
            "method:TimeItem.setSeconds",
            "method:TimeItem.setMilliseconds",
            "method:TimeItem.getDuration",
            "method:TimeItem.setValue",
            "method:TimeItem.getEnteredValue",
            "method:TimeItem.setMask",
            "method:TimeItem.setSelectionRange",
            "method:TimeItem.getSelectionRange",
            "method:TimeItem.selectValue",
            "method:TimeItem.deselectValue"
        ],
        exampleConfig:"TimeItem.xml",
        ref:"class:TimeItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:TimeItem.textField",
            "attr:TimeItem.textFieldProperties",
            "attr:TimeItem.browserInputType",
            "attr:TimeItem.showHintInField",
            "attr:TimeItem.showHourItem",
            "attr:TimeItem.hourItem",
            "attr:TimeItem.hourItemProperties",
            "attr:TimeItem.hourItemTitle",
            "attr:TimeItem.hourItemPrompt",
            "attr:TimeItem.showMinuteItem",
            "attr:TimeItem.minuteItem",
            "attr:TimeItem.minuteItemProperties",
            "attr:TimeItem.minuteItemTitle",
            "attr:TimeItem.minuteItemPrompt",
            "attr:TimeItem.showSecondItem",
            "attr:TimeItem.secondItem",
            "attr:TimeItem.secondItemProperties",
            "attr:TimeItem.secondItemTitle",
            "attr:TimeItem.secondItemPrompt",
            "attr:TimeItem.showMillisecondItem",
            "attr:TimeItem.millisecondItem",
            "attr:TimeItem.millisecondItemProperties",
            "attr:TimeItem.millisecondItemTitle",
            "attr:TimeItem.millisecondItemPrompt",
            "attr:TimeItem.ampmItem",
            "attr:TimeItem.ampmItemProperties",
            "attr:TimeItem.ampmItemTitle",
            "attr:TimeItem.displayFormat",
            "attr:TimeItem.timeFormatter",
            "attr:TimeItem.useMask",
            "attr:TimeItem.useTextField",
            "attr:TimeItem.textAlign",
            "attr:TimeItem.invalidTimeStringMessage",
            "attr:TimeItem.use24HourTime",
            "attr:TimeItem.textBoxStyle",
            "attr:TimeItem.hourValues",
            "attr:TimeItem.hourMinValue",
            "attr:TimeItem.hourMaxValue",
            "attr:TimeItem.hourIncrement",
            "attr:TimeItem.minuteValues",
            "attr:TimeItem.minuteMinValue",
            "attr:TimeItem.minuteMaxValue",
            "attr:TimeItem.minuteIncrement",
            "attr:TimeItem.secondValues",
            "attr:TimeItem.secondMinValue",
            "attr:TimeItem.secondMaxValue",
            "attr:TimeItem.secondIncrement",
            "attr:TimeItem.millisecondValues",
            "attr:TimeItem.millisecondMinValue",
            "attr:TimeItem.millisecondMaxValue",
            "attr:TimeItem.millisecondIncrement",
            "attr:TimeItem.mask",
            "attr:TimeItem.maskSaveLiterals",
            "attr:TimeItem.maskOverwriteMode"
        ],
        description:"FormItem for editing times in a text field or via a set of selector components.  \n <P>\n ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter')} allows you to set the display format for this field.  See also\n ${isc.DocUtils.linkForRef('classMethod:Time.setNormalDisplayFormat')} for system-wide settings.\n <P>\n TimeItem automatically accepts both 12 and 24 hour time as well as partial times and a\n variety of possible time value separators.  Examples:\n <pre>\n\t\t11:34:45 AM\t=> 11:34:45\n\t\t1:3:5 AM\t=> 01:30:50\n\t\t1:3p\t\t=> 13:30:00\n\t\t11 34 am\t=> 11:34:00\n\t\t11-34\t\t=> 11:34:00\n\t\t113445\t\t=> 11:34:45\n\t\t13445\t\t=> 01:34:45\n\t\t1134\t\t=> 11:34:00\n\t\t134\t\t\t=> 01:34:00\n </pre>\n <P>\n Values entered by the user are stored as JavaScript <code>Date</code> objects in local time.  \n The day, month and year values of this <code>Date</code> object are not relevant and should \n be ignored.\n <P>\n By default, when used in a ${isc.DocUtils.linkForRef('class:SearchForm')} or as a field in a ${isc.DocUtils.linkForRef('class:ListGrid')}'s \n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','filter editor')}, TimeItems will automatically generate \n AdvancedCriteria - for example, entering \"11:00\" into the item will generate a \n ${isc.DocUtils.linkForRef('type:OperatorId','betweenInclusive')} Criterion that selects all times between \n 11:00:00 and 11:59:59.  If the form is databound and the DataSource is marked as being\n ${isc.DocUtils.linkForRef('attr:DataSource.allowAdvancedCriteria','allowAdvancedCriteria')}:false, the criteria generated\n will be simple, checking for data with logical time values equal to the displayed value.",
        name:"TimeItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('timeItem')}"
        ]
    },
    "attr:CanvasItem.shouldSaveValue":{
        ref:"attr:CanvasItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues')}?\n <P>\n Note that by default, <code>shouldSaveValue</code> is false for CanvasItems,\n meaning that no value from the CanvasItem will be present in ${isc.DocUtils.linkForRef('method:DynamicForm.getValues')}\n and no value for the CanvasItem will be saved when ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} is called.\n See the ${isc.DocUtils.linkForRef('class:CanvasItem')} class overview for a discussion of values handling in\n CanvasItems.",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "attr:TextExportSettings.dateTimeFormat":{
        ref:"attr:TextExportSettings.dateTimeFormat",
        flags:"IR",
        description:"Format to use when outputting datetime values.  Default is to combine the configured date\n and time formats with a space (\" \").",
        name:"dateTimeFormat",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "attr:ListGridField.type":{
        ref:"attr:ListGridField.type",
        flags:"IR",
        description:"ListGrids picks a renderer for the view and edit mode of a field based on this attribute.\n  See ${isc.DocUtils.linkForRef('type:ListGridFieldType')} for a summary of how types are rendered.",
        name:"type",
        seeAlso:[
            {
                ref:"type:ListGridFieldType",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            }
        ],
        valueType:"ListGridFieldType",
        defaultValue:"\"text\"",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "method:LoginDialog.loginFunc":{
        ref:"method:LoginDialog.loginFunc",
        flags:"",
        description:" User-supplied callback function to process login transactions.\n <p>If the user clicks the \"Log in\" button, the credentials entered by the user are passed to\n loginFunc as an Object with properties \"username\" and \"password\" (NOTE: both\n property names are all lowercase), as the variable \"credentials\".  For example:\n <pre>{ username: \"barney\", password: \"rUbbL3\" }</pre>\n <P>\n This function should then attempt to log in by whatever means is necessary.  The second\n parameter to the loginFunc, \"dialogCallback\", is a function, which must be called <i>whether\n login succeeds or fails</i> with a true/false value indicating whether login succeeded.\n <P>\n If the login dialog is dismissable (settable as properties.dismissable, default false) and\n the user dismisses it, loginFunc will be fired with null for the credentials.\n <P>\n The following code shows typical usage.  This code assumes you have created a global\n function sendCredentials() that send credentials to some authentication system and fires a\n callback function with the result:\n <pre>\n ...\n loginFunc : function (credentials, dialogCallback) {\n     if (credentials == null) return; // dismissed\n\n     // send credentials\n     sendCredentials(credentials, function (loginSucceeded) {\n         // report success or failure\n         dialogCallback(loginSucceeded);\n     })\n })\n ...\n </pre>\n",
        name:"loginFunc",
        seeAlso:[
        ],
        params:[
            {
                description:"Login credentials supplied by the user",
                optional:false,
                name:"credentials",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"Function that must be called once the login transaction completes",
                optional:false,
                name:"dialogCallback",
                defaultValue:null,
                type:"Function"
            }
        ],
        type:"method",
        definingClass:"class:LoginDialog"
    },
    "attr:OperationBinding.useHttpProxy":{
        ref:"attr:OperationBinding.useHttpProxy",
        flags:"IR",
        description:"Whether to use the ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendProxied','HttpProxy')} servlet to send requests\n described by this operationBinding.  If unset, automatically detects whether using the\n HttpProxy is necessary based on the same-origin policy.\n <P>\n Valid only with ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')} settings other than ISCServer.",
        name:"useHttpProxy",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "method:Canvas.setImage":{
        ref:"method:Canvas.setImage",
        flags:"A",
        description:" Set the URL of an image element by name.\n <p>\n The image element must have been created from HTML generated by calling\n <code>canvas.imgHTML()</code> on this particular Canvas.\n\n",
        name:"setImage",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the image to change, as originally passed to                              <code>imgHTML</code>",
                optional:false,
                name:"identifier",
                defaultValue:null,
                type:"string"
            },
            {
                description:"URL for the image",
                optional:false,
                name:"URL",
                defaultValue:null,
                type:"SCImgURL"
            },
            {
                description:"optional image directory, overrides the default for this Canvas",
                optional:true,
                name:"imgDir",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "images"
        ]
    },
    "attr:PickList.sortField":{
        ref:"attr:PickList.sortField",
        flags:"IR",
        description:"Specifies the field by which this item should be initially sorted.  Can be set to \n either a ${isc.DocUtils.linkForRef('attr:ListGridField.name','field name')} or the index of the field in the fields \n Array. Note that if <code>sortField</code> is initially specified as a number, it will be\n converted to a string (field name) after the item is initialized.",
        name:"sortField",
        seeAlso:[
        ],
        valueType:"String or integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sort')}"
        ],
        definingClass:"interface:PickList",
        groups:[
            "sorting"
        ]
    },
    "attr:GridRenderer.emptyCellValue":{
        ref:"attr:GridRenderer.emptyCellValue",
        flags:"IRW",
        description:"Value to show in empty cells (when getCellValue returns null).",
        name:"emptyCellValue",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "method:TabBar.selectTab":{
        ref:"method:TabBar.selectTab",
        flags:"",
        description:" Select a tab\n",
        name:"selectTab",
        seeAlso:[
        ],
        params:[
            {
                description:"index of tab to select",
                optional:false,
                name:"tabNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:TabBar"
    },
    "attr:FacetChart.legendPadding":{
        ref:"attr:FacetChart.legendPadding",
        flags:"IR",
        description:"Padding around the legend as a whole.",
        name:"legendPadding",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "class:WebService":{
        methods:[
            "method:WebService.getOperationNames",
            "method:WebService.getSchema",
            "method:WebService.callOperation",
            "method:WebService.getSoapMessage",
            "method:WebService.getInputDS",
            "method:WebService.getInputHeaderSchema",
            "method:WebService.getOutputHeaderSchema",
            "method:WebService.getHeaderData",
            "method:WebService.getFetchDS",
            "method:WebService.setLocation"
        ],
        ref:"class:WebService",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:WebService.get",
            "classMethod:WebService.getByName"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:WebService.serviceNamespace",
            "attr:WebService.globalNamespaces"
        ],
        description:"Class representing a WebService definition derived from a WSDL file.\n <P>\n A Web Service object allows you to invoke operations (via\n ${isc.DocUtils.linkForRef('method:WebService.callOperation','callOperation()')}), inspect schema declared in the\n WSDL file (${isc.DocUtils.linkForRef('method:WebService.getSchema','getSchema()')}), and perform simple read-only\n databinding ${isc.DocUtils.linkForRef('method:WebService.getFetchDS')}.  \n <P>\n Once a WebService has been loaded, a DataSource can be declared with a\n ${isc.DocUtils.linkForRef('attr:DataSource.serviceNamespace')} to connect it to the web service, allowing DataSource\n data to be loaded and saved to the web service using\n ${isc.DocUtils.linkForRef('class:OperationBinding','operationBindings')}.",
        name:"WebService",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "webService"
        ]
    },
    "method:PortalLayout.setCanResizeColumns":{
        ref:"method:PortalLayout.setCanResizeColumns",
        flags:"",
        description:" Set whether columns in this portalLayout are drag-resizable, and update any\n drawn columns to reflect this.\n",
        name:"setCanResizeColumns",
        seeAlso:[
            {
                ref:"attr:PortalLayout.canResizeColumns",
                description:null
            }
        ],
        params:[
            {
                description:"Whether columns are drag-resizable",
                optional:false,
                name:"canResize",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:MultiComboBoxItem.displayField":{
        ref:"attr:MultiComboBoxItem.displayField",
        flags:"IRA",
        description:"The <code>displayField</code> of the combo box.",
        name:"displayField",
        seeAlso:[
            {
                ref:"attr:ComboBoxItem.displayField",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:DateItem.showPickerTimeItem":{
        ref:"attr:DateItem.showPickerTimeItem",
        flags:"IRW",
        description:"If this field is of type <code>\"datetime\"</code>, when showing the\n ${isc.DocUtils.linkForRef('class:DateChooser')}, should the ${isc.DocUtils.linkForRef('attr:DateChooser.showTimeItem','time field')} be\n displayed?\n <P>\n Has no effect for fields of type <code>\"date\"</code>.\n <p>\n This attribute does not have an effect if a native HTML5 date input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"showPickerTimeItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "attr:PickTreeItem.valueField":{
        ref:"attr:PickTreeItem.valueField",
        flags:"IR",
        description:"Which field in the tree-data should be returned as this item's value?\n If unspecified, the path will be used",
        name:"valueField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('pickTree')}"
        ],
        definingClass:"class:PickTreeItem"
    },
    "attr:RelativeDateItem.weeksFromNowTitle":{
        ref:"attr:RelativeDateItem.weeksFromNowTitle",
        flags:"IR",
        description:"The title to show for future periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"week\".",
        name:"weeksFromNowTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N weeks from now\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TreeNode.canAcceptDrop":{
        ref:"attr:TreeNode.canAcceptDrop",
        flags:"IRA",
        description:"Governs whether dragged data (typically other <code>treeNode</code>s) may be dropped over\n this node. Only has an effect if this node is displayed in a ${isc.DocUtils.linkForRef('class:TreeGrid')} where\n ${isc.DocUtils.linkForRef('attr:TreeGrid.canAcceptDroppedRecords')}, ${isc.DocUtils.linkForRef('attr:TreeGrid.canReorderRecords')} or \n ${isc.DocUtils.linkForRef('attr:TreeGrid.canReparentNodes')} is true.",
        name:"canAcceptDrop",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "method:Toolbar.deselectButton":{
        ref:"method:Toolbar.deselectButton",
        flags:"",
        description:"\tDeselects the specified button from the toolbar, where buttonID is the index of\n  the button's object initializer. The button will be redrawn if necessary.\n  The button identifier can be a number (index), string (id), or object (widget or init block),\n as with the getButtonNumber() method.\n",
        name:"deselectButton",
        seeAlso:[
            {
                ref:"method:Toolbar.getButtonNumber",
                description:null
            }
        ],
        params:[
            {
                description:"Button / Button identifier",
                optional:false,
                name:"buttonID",
                defaultValue:null,
                type:"number | string | object | canvas"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar",
        groups:[
            "selection"
        ]
    },
    "attr:FacetChart.pointShapes":{
        ref:"attr:FacetChart.pointShapes",
        flags:"IR",
        description:"For charts where ${isc.DocUtils.linkForRef('attr:FacetChart.showDataPoints')} is enabled, this property specifies an array of\n geometric shapes to draw for the data points of each series.",
        name:"pointShapes",
        seeAlso:[
        ],
        valueType:"Array of PointShape",
        defaultValue:"[\"Oval\", \"Square\", \"Diamond\", \"Triangle\"]",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "class:Log":{
        methods:[
        ],
        ref:"class:Log",
        classAttrs:[
            "classAttr:Log.defaultPriority",
            "classAttr:Log.stackTracePriority"
        ],
        classMethods:[
            "classMethod:Log.getCallTrace",
            "classMethod:Log.getStackTrace",
            "classMethod:Log.echoLeaf",
            "classMethod:Log.echo",
            "classMethod:Log.echoAll",
            "classMethod:Log.logDebug",
            "classMethod:Log.logInfo",
            "classMethod:Log.logWarn",
            "classMethod:Log.logError",
            "classMethod:Log.logFatal",
            "classMethod:Log.setLogPriority",
            "classMethod:Log.setDefaultLogPriority",
            "classMethod:Log.getDefaultLogPriority",
            "classMethod:Log.applyLogPriorities",
            "classMethod:Log.getLogPriorities",
            "classMethod:Log.getPriority",
            "classMethod:Log.setPriority",
            "classMethod:Log.setDefaultPriority",
            "classMethod:Log.getDefaultPriority",
            "classMethod:Log.clearPriority",
            "classMethod:Log.isEnabledFor",
            "classMethod:Log.show",
            "classMethod:Log.clear",
            "classMethod:Log.traceMethod",
            "classMethod:Log.timeMethod"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"A logging system similar to the Java log4j package: messages are logged with a \"category\" and\n \"priority\", and developers can dynamically set which log messages are being displayed.\n <P>\n 5 log priorities are available, with the following general meaning:\n <ul>\n <li> \"debug\": diagnostic info which is only likely to be understood by a developer with\n source access, or would occur too frequently for normal usage\n <li> \"info\": reports of significant events in the normal operation of the subsystem\n <li> \"warn\": some kind of problem is likely to occur, an API appears is apparently being\n misused or will yield a partial or very slow result\n <li> \"error\": a definite error has occurred which may be recoverable\n <li> \"fatal\": total failure with no possibility of recovery\n </ul>\n <P>\n Log categories do not need to be declared in advance - you can simply make up a category name and\n start logging to it, and control whether that category's messages will be displayed via\n <code>setPriority()</code>.\n <P>\n <b>NOTE:</b> to open the Developer Console in any page that loads ISC, type\n javascript:isc.Log.show() in the URL bar - this URL is bookmarkable.  \n <P>\n The Developer Console should <b>always</b> be open while developing any ISC-enabled application,\n because ISC logs many important errors and warnings to the Developer Console.\n <P>\n In Internet Explorer, the Developer Console is able to log a stack trace for every JS error,\n including errors that occur in non-ISC code.\n <P>\n NOTE: if you have the Microsoft JavaScript Debugger installed, ISC will be unable to log stack\n traces on JS errors until you go to Tools->Internet Options->Advanced Tab and check \"Disable\n script debugging\".  The ability to see stack traces in the Developer Console is generally much\n more useful for debugging ISC-based applications than the generic Javascript Debugging\n facilities.",
        name:"Log",
        seeAlso:[
            {
                ref:"classMethod:Log.setPriority",
                description:null
            }
        ],
        type:"class",
        groups:[
            "debug"
        ]
    },
    "attr:FilterBuilder.matchAllTitle":{
        ref:"attr:FilterBuilder.matchAllTitle",
        flags:"IR",
        description:"Title for the \"Match All\" (and) operator \n when using ${isc.DocUtils.linkForRef('type:TopOperatorAppearance','topOperatorAppearance')}:\"radio\".",
        name:"matchAllTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Match All\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:RestDataSource.prettyPrintJSON":{
        ref:"attr:RestDataSource.prettyPrintJSON",
        flags:"IR",
        description:"When using dataFormat:\"json\" and dataProtocol:\"postMessage\" should we use the\n ${isc.DocUtils.linkForRef('attr:JSONEncoder.prettyPrint')} feature to enable indented, highly readable JSON messages.\n <P>\n True by default because the bandwidth involved is generally negligible and the benefits for\n troubleshooting are key.",
        name:"prettyPrintJSON",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "method:FacetChart.getDataGradient":{
        ref:"method:FacetChart.getDataGradient",
        flags:"",
        description:" Get a gradient from the ${isc.DocUtils.linkForRef('attr:FacetChart.dataGradients')} Array\n <P>\n Override to provide a dynamic gradient generation scheme.\n\n",
        name:"getDataGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the visual element to be colored",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"the gradient identifier",
            type:"String"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:PrintCanvas.setHTML":{
        ref:"method:PrintCanvas.setHTML",
        flags:"",
        description:" Update the HTML content displayed in this print canvas. If the printCanvas is not yet\n drawn the HTML will be displayed when the canvas is drawn.\n\n",
        name:"setHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"HTML to show in this print canvas",
                optional:false,
                name:"HTML",
                defaultValue:null,
                type:"String"
            },
            {
                description:"callback function to fire when the HTML is displayed. The  callback will be passed a pointer to this print canvas as the first parameter with the\n  name <code>printPreview</code>. If this canvas is not drawn when this method is called,\n  the callback will not be fired until the canvas is drawn and the HTML rendered out into\n  the page.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"PrintCanvasCallback"
            }
        ],
        type:"method",
        definingClass:"class:PrintCanvas"
    },
    "attr:Hilite.fieldName":{
        ref:"attr:Hilite.fieldName",
        flags:"IR",
        description:"Name of the field, or array of fieldNames, this hilite should be applied to.  \n <P>\n If unset, hilite is applied to every field of the record.",
        name:"fieldName",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "method:DynamicForm.filterData":{
        ref:"method:DynamicForm.filterData",
        flags:"",
        description:" Retrieve data that matches the provided criteria, and edit the first record returned.<br>\n Differs from ${isc.DocUtils.linkForRef('method:DynamicForm.fetchData')} in that a case insensitive substring match\n will be performed against the criteria to retrieve the data.\n \n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"search criteria",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:ResultSet.resultSize":{
        ref:"attr:ResultSet.resultSize",
        flags:"IRWA",
        description:"How many rows to retrieve at once.\n <P>\n Applicable only with <code>fetchMode: \"paged\"</code>.  When a paged ResultSet is asked\n for rows that have not yet been loaded, it will fetch adjacent rows that are likely to\n be required soon, in batches of this size.",
        name:"resultSize",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"75",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "fetching"
        ]
    },
    "attr:DataBoundComponent.iconField":{
        ref:"attr:DataBoundComponent.iconField",
        flags:"IR",
        description:"Designates a field of ${isc.DocUtils.linkForRef('type:FieldType','type')}:\"image\" as the field to use when rendering a\n record as an image, for example, in a ${isc.DocUtils.linkForRef('class:TileGrid')}. \n <P>\n This attribute has the same function as ${isc.DocUtils.linkForRef('attr:DataSource.iconField')} but can be\n set for a component with no dataSource, or can be used to override the dataSource setting.",
        name:"iconField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:Scrollbar.trackEndImg":{
        ref:"attr:Scrollbar.trackEndImg",
        flags:"IR",
        description:"The StretchItem for the end of a scrollbar track. The default is:\n <smartclient><code>{ name:\"track_end\", width:\"trackEndSize\", height:\"trackEndSize\" }</code></smartclient>\n <smartgwt><code>new StretchItem(\"track_end\", \"trackEndSize\", \"trackEndSize\")</code></smartgwt>",
        name:"trackEndImg",
        seeAlso:[
        ],
        valueType:"StretchItem",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "attr:Button.iconHeight":{
        ref:"attr:Button.iconHeight",
        flags:"IR",
        description:"Height in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ListGridField.editorValueIcons":{
        ref:"attr:ListGridField.editorValueIcons",
        flags:"IRW",
        description:"When some cell in this field is being edited, setting this property will specify the\n value icons to display in the cell's editor. If unset, the editor's valueIcons\n will be determined in the same way as it would be for a static cell.",
        name:"editorValueIcons",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:Canvas.groupTitle":{
        ref:"attr:Canvas.groupTitle",
        flags:"IRW",
        description:"The title/label for the grouping. Only applicable when ${isc.DocUtils.linkForRef('attr:Canvas.isGroup','isGroup')} is set to true.",
        name:"groupTitle",
        setter:[
            "setGroupTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "method:Date.toUSShortDate":{
        ref:"method:Date.toUSShortDate",
        flags:"",
        description:"\t\t\tReturn this date in the format: <code>MM/DD/YYYY</code>\n",
        name:"toUSShortDate",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "method:ResultTree.compareCriteria":{
        ref:"method:ResultTree.compareCriteria",
        flags:"",
        description:" Default behavior is to call ${isc.DocUtils.linkForRef('method:DataSource.compareCriteria')} to determine whether new\n criteria is equivalent to the old criteria (returns 0) or not.\n <P>\n See ${isc.DocUtils.linkForRef('method:DataSource.compareCriteria')} for a full explanation of the default behavior.\n The ${isc.DocUtils.linkForRef('type:CriteriaPolicy')} used is \"dropOnChange\".\n <P>\n Override this method or ${isc.DocUtils.linkForRef('method:DataSource.compareCriteria')} to implement your own client-side\n filtering behavior.\n\n",
        name:"compareCriteria",
        seeAlso:[
            {
                ref:"type:CriteriaPolicy",
                description:null
            }
        ],
        params:[
            {
                description:"new filter criteria",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"old filter criteria",
                optional:false,
                name:"oldCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"dataSource request properties",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"0 if the criteria are equivalent, -1 if the criteria are different",
            type:"Number"
        },
        type:"method",
        definingClass:"class:ResultTree"
    },
    "attr:DetailViewerField.imageWidth":{
        ref:"attr:DetailViewerField.imageWidth",
        flags:"IRW",
        description:"Width of images shown for fieldTypes image in this field.\n <P>\n If set to a String, assumed to be a property on each record that specifies the image\n width.  For example, if <code>field.imageWidth</code> is \"logoWidth\",\n <code>record.logoWidth</code> will control the width of the image.",
        name:"imageWidth",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.imageSize",
                description:null
            },
            {
                ref:"attr:DetailViewerField.imageHeight",
                description:null
            }
        ],
        valueType:"Integer | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "imageColumns"
        ]
    },
    "method:ListGrid.getAllEditRows":{
        ref:"method:ListGrid.getAllEditRows",
        flags:"",
        description:" Returns an array of every rowNum for which we have pending (unsubmitted) edits.\n This will return records that have been marked as removed (see ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')}\n as well as records with unsaved changes to field values.\n",
        name:"getAllEditRows",
        seeAlso:[
        ],
        returns:{
            description:"Array of rowNums for rows with edit values pending submission.",
            type:"Array of int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "group:scroll":{
        ref:"group:scroll",
        refs:[
            "method:Scrollbar.setScrollTarget",
            "method:NativeScrollbar.setScrollTarget"
        ],
        name:"scroll",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Applet.getPluginID":{
        ref:"method:Applet.getPluginID",
        flags:"",
        description:"\n",
        name:"getPluginID",
        seeAlso:[
        ],
        returns:{
            description:"ID used for the &lt;applet&gt; or &lt;object&gt; DOM element generated by this component.",
            type:"String"
        },
        type:"method",
        definingClass:"class:Applet"
    },
    "method:ResultSet.applyFilter":{
        ref:"method:ResultSet.applyFilter",
        flags:"A",
        description:" The ResultSet will call applyFilter() when it needs to determine whether rows match the\n current filter criteria.\n <P>\n Default behavior is to call ${isc.DocUtils.linkForRef('method:DataSource.applyFilter')} to determine which rows match\n that provided criteria.\n <P>\n Override this method or ${isc.DocUtils.linkForRef('method:DataSource.applyFilter')} to implement your own client-side\n filtering behavior.\n\n",
        name:"applyFilter",
        seeAlso:[
        ],
        params:[
            {
                description:"the list of rows",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Array"
            },
            {
                description:"the filter criteria",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"dataSource request properties",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"the list of matching rows",
            type:"Array"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "group:platformDependencies":{
        ref:"group:platformDependencies",
        title:"Platform Dependencies",
        treeLocation:[
            "/Client Reference/System"
        ],
        refs:[
        ],
        description:"Client-side processing of web services, XML parsing, and some UI loading mechanisms rely on\n a native in-browser XML parser and/or the XMLHttpRequest object - one or both of which will\n not be available if the end user disables ActiveX support in Internet Explorer.  Note that\n these features do not require plugins or downloads of any kind - IE simply exposes certain\n built-in functionality like the XML parser and XMLHttpRequest through the ActiveX\n interface.  Disabling ActiveX also disables all browser plugins such as Flash, Java, SVG, etc.\n <p>\n Barring ActiveX being disabled, the XMLHttpRequest object is available to SmartClient on all\n supported browsers and an XML parser is available on all supported browsers except Safari\n versions prior to 3.0.3.\n <p>\n SmartClient client-server communication is not affected by the lack of an XML parser or the\n XMLHttpRequest object, but the <code>xmlHttpRequest</code> transport will not be available\n if the XMLHttpRequest object is not available.  Instead, the <code>hiddenFrame</code> or the\n <code>scriptInclude</code> transports are used for client-server communication.\n <p>\n <b><u>XML Parser</u></b>\n <p>\n If an XML Parser is not available to SmartClient, all client-side web service bindings and\n related methods will be unavailable.  Turning off ActiveX disables integration paths 2 and 3\n in the diagram below.  If you want to bind to web services and require deployment to IE\n without ActiveX (or you need to support Safari pre 3.0.3), you'll need to do all XML processing on the\n server and use either the SmartClient DSRequest or JSON operation pathways (integration\n paths 1 and 4 in the diagram below).  See the discussion in ${isc.DocUtils.linkForRef('group:clientServerIntegration')}\n for more information on the integration paths shown in the diagram below.\n <p>\n You call ${isc.DocUtils.linkForRef('classMethod:XMLTools.nativeXMLAvailable')} to check for the availability of a native XML\n parser at runtime.\n <p>\n <img src=\"${isc.DocViewer.instance.referenceRoot}skin/ds_bindings.png\" width=763 height=475>\n <p>\n <b><u>XMLHttpRequest</u></b>\n <p>\n The XMLHttpRequest object is used for the <code>xmlHttpRequest</code> ${isc.DocUtils.linkForRef('type:RPCTransport')}.\n Safari, Mozilla, Firefox, and IE 7 provide a native XMLHttpRequest implementation that is\n not affected by ActiveX being disabled (although the native IE 7 implementation can still be\n explicitly disabled by the end user).  IE 5.5 and IE 6.0 rely on the ActiveX bridge to\n support XMLHttpRequest, so if ActiveX is disabled in these browsers, XMLHttpRequest will not\n be available.\n <p>\n The lack of the XMLHttpRequest objects affects UI loading features like ${isc.DocUtils.linkForRef('class:ViewLoader')},\n and ${isc.DocUtils.linkForRef('class:HTMLFlow')} when used in remote loading mode (via ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL')},\n ${isc.DocUtils.linkForRef('method:HTMLFlow.setContentsURL')}, but does not affect the typical client/server communication\n pathways (integration paths 1 and 5 in the diagram above).\n <p>\n Also affected are low level features ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')},\n ${isc.DocUtils.linkForRef('attr:RPCRequest.evalResult')}, and ${isc.DocUtils.linkForRef('attr:RPCResponse.httpResponseCode')}.\n <p>\n In all of the above cases, it is possible to use the <code>hiddenFrame</code> transport to\n support these features when XMLHttpRequest is not available.  SmartClient will automatically\n send the request using the <code>hiddenFrame</code> transport when it detects that\n XMLHttpRequest is unavailable.  To support the above features, you'll need to use the\n RPCManager APIs on the server to send back the data that would normally be returned by\n XMLHttpRequest.  Since XMLHttpRequest cannot target URLs outside of the current domain, this\n strategy applies also to using the above features with cross-domain URLs.\n <p>\n You can call ${isc.DocUtils.linkForRef('classMethod:RPCManager.xmlHttpRequestAvailable')} to check for the availability of\n XMLHttpRequest at runtime.",
        name:"platformDependencies",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateItem.daySelector":{
        ref:"attr:DateItem.daySelector",
        flags:"R",
        description:"Select item to hold the day part of the date.",
        name:"daySelector",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "method:EditPane.getSaveData":{
        ref:"method:EditPane.getSaveData",
        flags:"",
        description:" Returns an Array of ${isc.DocUtils.linkForRef('object:PaletteNode')}s representing all current ${isc.DocUtils.linkForRef('object:EditNode')}s in this\n pane, suitable for saving and restoring via passing each paletteNode to ${isc.DocUtils.linkForRef('method:EditContext.addNode','addNode()')}.\n",
        name:"getSaveData",
        seeAlso:[
        ],
        returns:{
            description:"paletteNodes suitable for saving for subsequent restoration",
            type:"Array of PaletteNode"
        },
        type:"method",
        definingClass:"class:EditPane"
    },
    "classAttr:RPCResponse.STATUS_TRANSPORT_ERROR":{
        ref:"classAttr:RPCResponse.STATUS_TRANSPORT_ERROR",
        flags:"R",
        description:"This response code is usable only with the XMLHttpRequest transport and indicates that\n the server returned an HTTP response code outside the range 200-299 (all of these statuses\n indicate success, but ordinarily only 200 is used).  To get the actual\n response code, you can query rpcResponse.httpResponseCode in your callback.\n <p>\n Note that currently this error code will never occur for the <code>hiddenFrame</code>\n transport - instead, use ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_SERVER_TIMEOUT')} to detect\n <code>hiddenFrame</code> transport errors.",
        name:"STATUS_TRANSPORT_ERROR",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"-90",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:RPCResponse.httpHeaders":{
        ref:"attr:RPCResponse.httpHeaders",
        flags:"R",
        description:"HTTP headers returned by the server as a map from header name to header value.\n <P>\n Headers are available only when the default ${isc.DocUtils.linkForRef('type:RPCTransport')} \"xmlHttpRequest\" is in use,\n and browsers may limit access to headers for cross-domain requests or in other\n security-sensitive scenarios.",
        name:"httpHeaders",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCResponse"
    },
    "classAttr:Validator.mustBeGreaterThan":{
        ref:"classAttr:Validator.mustBeGreaterThan",
        flags:"IRA",
        description:"Default error message to display when standard <code>integerRange</code> type validator\n  returns false because the value passed in is less than the specified minimum.\n <p>This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeGreaterThan",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be at least ${min}\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Tree.getDescendantFolders":{
        ref:"method:Tree.getDescendantFolders",
        flags:"",
        description:"\n Returns the list of all descendants of a node that are folders.  This works just like\n ${isc.DocUtils.linkForRef('method:Tree.getDescendants')}, except leaf nodes are not part of the returned list.\n Like ${isc.DocUtils.linkForRef('method:Tree.getDescendants')}, this method can be very slow for large trees.\n Generally, ${isc.DocUtils.linkForRef('method:Tree.find')} in combination with ${isc.DocUtils.linkForRef('method:Tree.getFolders')} \n will be much faster.\n <br><br>\n For load on demand trees (those that only have a partial representation client-side), this\n method will return only nodes that have already been loaded from the server.\n\n",
        name:"getDescendantFolders",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question (the root node is assumed if none is specified)",
                optional:true,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"List of descendants of the node that are folders.",
            type:"List"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "classAttr:GroupingMessages.byDayOfMonthTitle":{
        ref:"classAttr:GroupingMessages.byDayOfMonthTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a date field by day of month.",
        name:"byDayOfMonthTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Day of Month\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "class:PresetDateRangeItem":{
        methods:[
            "method:PresetDateRangeItem.getCriterion"
        ],
        ref:"class:PresetDateRangeItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"Allows the user to pick from pre-set date ranges or choose a custom date range via a\n ${isc.DocUtils.linkForRef('class:DateRangeDialog')}.\n <P>\n To use this item in the ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','FilterEditor')} or \n ${isc.DocUtils.linkForRef('class:FilterBuilder')}, create a trivial ${isc.DocUtils.linkForRef('classMethod:ClassFactory.defineClass','subclass')} which \n defines ${isc.DocUtils.linkForRef('attr:PresetCriteriaItem.options','preset options')}, then set\n ${isc.DocUtils.linkForRef('attr:ListGridField.filterEditorType')} to use this class with the FilterEditor, or define a\n custom operator and set ${isc.DocUtils.linkForRef('attr:Operator.editorType')} to use it with the FilterBuilder.\n <P>\n See the ${isc.DocUtils.linkForExampleId('dateRangeFilterPresets', 'Date Range (Presets)')} example for sample code.",
        name:"PresetDateRangeItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FusionChart.chartsBaseURL":{
        ref:"attr:FusionChart.chartsBaseURL",
        flags:"IR",
        description:"Base URL where FusionCharts are installed.  SmartClient expects to find the FusionCharts\n \".swf\" files under this URL.\n <P>\n The default value indicates that SmartClient will look for a FusionCharts directory\n parallel to the \"isomorphic/\" directory.\n <P>\n Note that the URL formation logic automatically compensates for various inconsistencies and\n typos in the default names for the chart .swf files, as well as differences between\n FusionCharts 2.3 and 3.0.   The chart .swf files should be left exactly as found in the\n FusionCharts distribution.  If you have renamed the charts for other purposes, you\n can set ${isc.DocUtils.linkForRef('attr:FusionChart.chartURL')} to the full path to any given chart type.",
        name:"chartsBaseURL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"[ISOMORPHIC]/../FusionCharts/\"",
        type:"attr",
        definingClass:"class:FusionChart"
    },
    "attr:Calendar.dateLabel":{
        ref:"attr:Calendar.dateLabel",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('type:AutoChild')} ${isc.DocUtils.linkForRef('class:Label')} used to display the current date or range above the \n selected calendar view.",
        name:"dateLabel",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:Window.headerLabel":{
        ref:"attr:Window.headerLabel",
        flags:"R",
        description:"Label that shows Window title in header.\n <p>\n The following ${isc.DocUtils.linkForRef('group:autoChildUsage','passthrough')} applies:\n ${isc.DocUtils.linkForRef('attr:Window.title','title')} for ${isc.DocUtils.linkForRef('attr:Label.contents')}.",
        name:"headerLabel",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "object:TestFunctionResult":{
        methods:[
        ],
        ref:"object:TestFunctionResult",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/FormulaBuilder"
        ],
        attrs:[
            "attr:TestFunctionResult.failedGeneration",
            "attr:TestFunctionResult.failedExecution",
            "attr:TestFunctionResult.emptyTestValue",
            "attr:TestFunctionResult.errorText",
            "attr:TestFunctionResult.result",
            "attr:TestFunctionResult.record"
        ],
        description:"A TestFunctionResult is an ordinary JavaScript Object with properties that indicate the \n status of an attempt to generate and execute a function for ${isc.DocUtils.linkForRef('class:FormulaBuilder')} and \n it's subclasses.\n <P>\n Because TestFunctionResult is always an ordinary JavaScript Object, it supports the\n normal behaviors of JavaScript Objects, including accessing and assigning to properties\n via dot notation:\n <pre>\n     var propValue = testFunctionResult.<i>propName</i>;\n     testFunctionResult.<i>propName</i> = newValue;\n </pre>\n <P>",
        name:"TestFunctionResult",
        seeAlso:[
        ],
        type:"object",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Tree.showRoot":{
        ref:"attr:Tree.showRoot",
        flags:"IRW",
        description:"Controls whether the implicit root node is returned as part of the visible tree,\n specifically, whether it is returned in ${isc.DocUtils.linkForRef('method:Tree.getOpenList')}, which is the API view\n components typically use to get the list of visible nodes.\n <p>\n Default is to have the root node be implicit and not included in the open list, which means\n that the visible tree begins with the children of root.  This allows multiple nodes to\n appear at the top level of the tree.\n <P>\n You can set <code>showRoot:true</code> to show the single, logical root node as the only\n top-level node.  This property is only meaningful for Trees where you supplied a value for\n ${isc.DocUtils.linkForRef('attr:Tree.root')}, otherwise, you will see an automatically generated root node that is\n meaningless to the user.",
        name:"showRoot",
        setter:[
            "setShowRoot"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Tree"
    },
    "attr:FilterBuilder.showAddButton":{
        ref:"attr:FilterBuilder.showAddButton",
        flags:"IR",
        description:"If set, a button will be shown underneath all current clauses allowing a new clause to be\n added.",
        name:"showAddButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:TreeMenuButton.unselectedTitle":{
        ref:"attr:TreeMenuButton.unselectedTitle",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeMenuButton.title','title')} is null, this value will be displayed as a title \n when the user has not selected any value from the hierarchical menu.",
        name:"unselectedTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Choose a value\"",
        type:"attr",
        definingClass:"class:TreeMenuButton",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Button.iconClick":{
        ref:"method:Button.iconClick",
        flags:"",
        description:" If this button is showing an ${isc.DocUtils.linkForRef('attr:Button.icon','icon')}, a separate click handler for the\n icon may be defined as <code>this.iconClick</code>.\n Returning false will suppress the standard button click handling code.\n",
        name:"iconClick",
        seeAlso:[
        ],
        returns:{
            description:"false to suppress the standard button click event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:Chart.valueTitle":{
        ref:"attr:Chart.valueTitle",
        flags:"IR",
        description:"A label for the data values, such as \"Sales in Thousands\", typically used as the label for\n the value axis.",
        name:"valueTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "attr:ListGridField.userFormula":{
        ref:"attr:ListGridField.userFormula",
        flags:"IRW",
        description:"Formula definition for this field.\n <P>\n Advanced applications that wish to save formulas separately from a grid's\n ${isc.DocUtils.linkForRef('method:ListGrid.getViewState','viewState')} can provide a ${isc.DocUtils.linkForRef('object:UserFormula')} as part of the field\n definition, and may subsequently access the formula is updated via the\n ${isc.DocUtils.linkForRef('method:ListGrid.formulaUpdated')} notification.",
        name:"userFormula",
        seeAlso:[
        ],
        valueType:"UserFormula",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:CubeGrid.facets":{
        ref:"attr:CubeGrid.facets",
        flags:"I",
        description:"Facet definitions for this CubeGrid.  Facets, also called \"dimensions\", are orthogonal\n aspects of the data model.\n <P>\n For example, you can look at profit by the facets \"plant and product\" or by \"product and\n plant\" and it's the same number, because the facets - plant and product - are the same.\n What would change the profit numbers would be to remove a facet, called \"summarizing\",\n or add a new facet, called \"drilling down\".  For example, showing profit by plant and\n product, you could \"drill down\" by adding the region facet, which would divide profit\n among each region.  Or you could remove the \"plant\" facet, showing total profit for each\n \"product\", summed across all plants.\n <P>\n This property need not be set and will automatically be constructed during widget\n initialization if data is provided up front and ${isc.DocUtils.linkForRef('attr:CubeGrid.rowFacets')} and \n ${isc.DocUtils.linkForRef('attr:CubeGrid.columnFacets')} have been set.  If ${isc.DocUtils.linkForRef('attr:CubeGrid.facets')} is not set and\n there is no initial data but a DataSource is present, drawing the grid will\n automatically issue a fetch to allow ${isc.DocUtils.linkForRef('attr:CubeGrid.facets')} to be resolved.",
        name:"facets",
        seeAlso:[
            {
                ref:"method:CubeGrid.getFacet",
                description:null
            },
            {
                ref:"class:Facet",
                description:null
            },
            {
                ref:"method:CubeGrid.getFacetValue",
                description:null
            },
            {
                ref:"class:FacetValue",
                description:null
            }
        ],
        valueType:"Array of Facet",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:CheckboxItem.valueIconHeight":{
        ref:"attr:CheckboxItem.valueIconHeight",
        flags:"IRW",
        description:"Height of the checkbox image.",
        name:"valueIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"13",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:List.lastIndexOf":{
        ref:"method:List.lastIndexOf",
        flags:"",
        description:" Return the position in the list of the last instance of the specified object.\n <p>\n If pos is specified, starts looking before that position.\n <p>\n Returns -1 if not found.\n\n",
        name:"lastIndexOf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"earliest index to consider",
                optional:true,
                name:"endPos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"position of the item, if found, -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "attr:ListGrid.headerMenuButton":{
        ref:"attr:ListGrid.headerMenuButton",
        flags:"RA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, when the user rolls over the header buttons in this\n grid the headerMenuButton will be shown over the header button in question. When clicked\n this button will display the standard header context menu (see\n ${isc.DocUtils.linkForRef('method:ListGrid.displayHeaderContextMenu')}).\n <P>\n ${isc.DocUtils.linkForRef('group:headerMenuButton','Several properties')} exist to customize the appearance of the\n headerMenuButton. Also see the ${isc.DocUtils.linkForRef('type:AutoChild')} documentation for information on how\n to make freeform modifications to autoChild widgets",
        name:"headerMenuButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "method:Canvas.showRecursively":{
        ref:"method:Canvas.showRecursively",
        flags:"",
        description:" Recursively show the canvas and all it's parents so the canvas will be visible.\n <P>\n If the widget has not yet been drawn, this method calls the draw method as well.\n\n",
        name:"showRecursively",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "visibility"
        ]
    },
    "class:ColumnTree":{
        methods:[
            "method:ColumnTree.fetchData",
            "method:ColumnTree.filterData",
            "method:ColumnTree.getSelectedRecord",
            "method:ColumnTree.navigateBack",
            "method:ColumnTree.nodeSelected",
            "method:ColumnTree.shouldShowHeader",
            "method:ColumnTree.getColumnTitle",
            "method:ColumnTree.getRecord",
            "method:ColumnTree.getIcon",
            "method:ColumnTree.getNodeTitle",
            "method:ColumnTree.getData",
            "method:ColumnTree.setData",
            "method:ColumnTree.getColumn",
            "method:ColumnTree.getColumnProperties",
            "method:ColumnTree.selectRecord",
            "method:ColumnTree.deselectRecord",
            "method:ColumnTree.selectRecords",
            "method:ColumnTree.deselectRecords",
            "method:ColumnTree.selectAllRecords",
            "method:ColumnTree.deselectAllRecords",
            "method:ColumnTree.anySelected"
        ],
        ref:"class:ColumnTree",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:ColumnTree.dataSource",
            "attr:ColumnTree.data",
            "attr:ColumnTree.dataProperties",
            "attr:ColumnTree.autoFetchData",
            "attr:ColumnTree.autoFetchTextMatchStyle",
            "attr:ColumnTree.initialCriteria",
            "attr:ColumnTree.showDetailFields",
            "attr:ColumnTree.dataFetchMode",
            "attr:ColumnTree.folderIcon",
            "attr:ColumnTree.customIconProperty",
            "attr:ColumnTree.nodeIcon",
            "attr:ColumnTree.openIconSuffix",
            "attr:ColumnTree.closedIconSuffix",
            "attr:ColumnTree.showOpenIcons",
            "attr:ColumnTree.showCustomIconOpen",
            "attr:ColumnTree.customIconOpenProperty",
            "attr:ColumnTree.showMultipleColumns",
            "attr:ColumnTree.loadDataOnDemand",
            "attr:ColumnTree.column",
            "attr:ColumnTree.columnProperties",
            "attr:ColumnTree.fields",
            "attr:ColumnTree.showHeaders",
            "attr:ColumnTree.firstColumnTitle",
            "attr:ColumnTree.showNodeCount",
            "attr:ColumnTree.backButtonTitle",
            "attr:ColumnTree.backButton"
        ],
        description:"The SmartClient system supports hierarchical data (also referred to as tree data\n due to its \"branching\" organization) with:\n <ul>\n   <li> the ${isc.DocUtils.linkForRef('class:Tree')} class, which manipulates hierarchical data sets\n   <li> the TreeGrid widget class, which extends the ListGrid class to visually\n        present tree data in an expandable/collapsible format.\n   <li> the ColumnTree widget class, which visually\n        presents tree data in a so-called \n        \"<a href=http://en.wikipedia.org/wiki/Miller_Columns>Miller Column</a>\" format.\n </ul>\n For information on DataBinding Trees, see ${isc.DocUtils.linkForRef('group:treeDataBinding')}.\n <p>\n A ColumnTree shows a single branch of the underlying ${isc.DocUtils.linkForRef('class:Tree')} horizontally, from \n left to right. Thus, the leftmost column shows all the top-level nodes. When the user clicks\n one of those nodes, a new column is shown immediately to the right of the top-level column,\n showing the selected node's children. Additional columns are shown as required to present\n lower-level children. The behavior of ColumnTree is similar to that of the Browser interface\n in the Apple&trade; iTunes&trade; application.",
        name:"ColumnTree",
        implementsInterfaces:[
            "DataBoundComponent"
        ],
        seeAlso:[
        ],
        type:"class"
    },
    "attr:SelectItem.displayField":{
        ref:"attr:SelectItem.displayField",
        flags:"IRW",
        getter:[
            "getDisplayFieldName"
        ],
        description:"Specifies an alternative field from which display values should be retrieved for this\n item.\n <P>\n The display field can be either another field value in the same record or a field that\n must be retrieved from a related ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}.\n <P>\n If this item is not databound (${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} is unset), or bound \n to the same dataSource as the form as a whole, this item will call\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValue','form.getValue()')} \n the form named after is implemented by picking up the\n value of the specified field from the Form's values object.\n <P>\n Otherwise this item will attempt to map its underlying value to a display value\n by retrieving a record from the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} where the \n ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} matches this item's value, and displaying the \n <code>displayField</code> value from that record.\n Note that if <code>optionDataSource</code> is set and this value is not\n set, ${isc.DocUtils.linkForRef('method:FormItem.getDisplayFieldName')} will return the dataSource title field by default.\n <P>\n This essentially enables the specified <code>optionDataSource</code> to be used as\n a server based ${isc.DocUtils.linkForRef('group:valueMap')}.",
        name:"displayField",
        seeAlso:[
            {
                ref:"method:FormItem.invalidateDisplayValueCache",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('relatedRecords')}"
        ],
        definingClass:"class:SelectItem",
        groups:[
            "display_values"
        ]
    },
    "method:Menu.getItems":{
        ref:"method:Menu.getItems",
        flags:"",
        description:" Get all the MenuItems in the current menu as an Array.\n\n",
        name:"getItems",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array of MenuItem"
        },
        type:"method",
        definingClass:"class:Menu"
    },
    "class:Class":{
        methods:[
            "method:Class.init",
            "method:Class.destroy",
            "method:Class.getID",
            "method:Class.getClass",
            "method:Class.getSuperClass",
            "method:Class.getClassName",
            "method:Class.addProperties",
            "method:Class.addPropertyList",
            "method:Class.setProperty",
            "method:Class.setProperties",
            "method:Class.isA",
            "method:Class.observe",
            "method:Class.ignore",
            "method:Class.isObserving",
            "method:Class.evaluate",
            "method:Class.fireCallback",
            "method:Class.delayCall",
            "method:Class.addAutoChild",
            "method:Class.createAutoChild",
            "method:Class.map",
            "method:Class.Super",
            "method:Class.toString",
            "method:Class.getCallTrace",
            "method:Class.getStackTrace",
            "method:Class.echoLeaf",
            "method:Class.echo",
            "method:Class.echoAll",
            "method:Class.logDebug",
            "method:Class.logInfo",
            "method:Class.logWarn",
            "method:Class.logError",
            "method:Class.logFatal",
            "method:Class.logIsEnabledFor",
            "method:Class.logIsDebugEnabled",
            "method:Class.logIsInfoEnabled",
            "method:Class.logIsWarnEnabled",
            "method:Class.logIsErrorEnabled",
            "method:Class.setLogPriority",
            "method:Class.setDefaultLogPriority",
            "method:Class.getDefaultLogPriority",
            "method:Class.clearLogPriority"
        ],
        ref:"class:Class",
        classAttrs:[
            "classAttr:Class.isFrameworkClass"
        ],
        classMethods:[
            "classMethod:Class.create",
            "classMethod:Class.modifyFrameworkStart",
            "classMethod:Class.modifyFrameworkDone",
            "classMethod:Class.markUnsupportedMethods",
            "classMethod:Class.isMethodSupported",
            "classMethod:Class.getClassName",
            "classMethod:Class.getSuperClass",
            "classMethod:Class.addMethods",
            "classMethod:Class.registerStringMethods",
            "classMethod:Class.evaluate",
            "classMethod:Class.addClassProperties",
            "classMethod:Class.markAsFrameworkClass",
            "classMethod:Class.addProperties",
            "classMethod:Class.addPropertyList",
            "classMethod:Class.changeDefaults",
            "classMethod:Class.setProperties",
            "classMethod:Class.isA",
            "classMethod:Class.Super",
            "classMethod:Class.map",
            "classMethod:Class.getInstanceProperty",
            "classMethod:Class.setInstanceProperty",
            "classMethod:Class.fireCallback",
            "classMethod:Class.delayCall",
            "classMethod:Class.toString",
            "classMethod:Class.getCallTrace",
            "classMethod:Class.getStackTrace",
            "classMethod:Class.echoLeaf",
            "classMethod:Class.echo",
            "classMethod:Class.echoAll",
            "classMethod:Class.logDebug",
            "classMethod:Class.logInfo",
            "classMethod:Class.logWarn",
            "classMethod:Class.logError",
            "classMethod:Class.logFatal",
            "classMethod:Class.logIsEnabledFor",
            "classMethod:Class.logIsDebugEnabled",
            "classMethod:Class.logIsInfoEnabled",
            "classMethod:Class.logIsWarnEnabled",
            "classMethod:Class.logIsErrorEnabled",
            "classMethod:Class.setLogPriority",
            "classMethod:Class.setDefaultLogPriority",
            "classMethod:Class.getDefaultLogPriority",
            "classMethod:Class.clearLogPriority"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:Class.addPropertiesOnCreate"
        ],
        description:"The Class object is root of the Isomorphic SmartClient inheritance tree -- it includes\n functionality for creating instances, adding methods and properties, getting prototypes,\n etc.<br><br>\n\n To add functionality to ALL classes, add them to Class.<br><br>\n\n To create a Class, call <code>ClassFactory.defineClass(\"MyClass\", \"MySuperClass\")</code>\n <P>\n <code>defineClass</code> will return the created class, and make it available as\n <code>isc.MyClass</code>, and as the global variable <code>MyClass</code> if not in\n ${isc.DocUtils.linkForRef('class:isc','portal mode')}.\n <P>\n You can then:\n <UL>\n\t\t<LI>add class-level (static) properties and methods to the class:\n\t\t\t\t<code>MyClass.addClassProperties()</code>\n\t\t\tthese methods and properties are accessed through the Class variable itself, eg:\n\t\t\t\t<code>MyClass.someStaticMethod()</code> or <code>MyClass.someStaticProperty</code>\n\n\t\t<LI>add default instance properties and methods to the class:\n\t\t\t\t<code>MyClass.addProperties()</code>\n\t\t\tthese methods and properties are accessed through a class instance, eg:\n\t\t\t\t<code>var myInstance = MyClass.create();</code>\n\t\t\t\t<code>myInstance.someInstanceMethod()</code>\n\n\t\t<LI>create new instances of this class:\n\t\t\t\t<code>var myInstance = MyClass.create()</code>\n </UL>\n NOTE: as a convention, all class names begin with a capital letter and all instances begin\n with a lower case letter.",
        name:"Class",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Criterion.fieldName":{
        ref:"attr:Criterion.fieldName",
        flags:"IR",
        description:"Name of the field in each ${isc.DocUtils.linkForRef('object:Record')} that this criterion applies to.  Not applicable for a\n criterion with ${isc.DocUtils.linkForRef('attr:Criterion.criteria','sub-criteria')}. Can be specified as a dataPath to \n allow matching nested objects. Use '/' as delimiters for dataPath. See \n ${isc.DocUtils.linkForRef('type:DataPath','dataPath')} for more information.",
        name:"fieldName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Criterion",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:DrawItem.showHover":{
        ref:"attr:DrawItem.showHover",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DrawItem.canHover','canHover')} is true, should we show the global hover canvas by default\n when the user hovers over this DrawItem?",
        name:"showHover",
        seeAlso:[
            {
                ref:"method:DrawItem.getHoverHTML",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "hovers"
        ]
    },
    "classAttr:FieldPickerField.decimalPadTitle":{
        ref:"classAttr:FieldPickerField.decimalPadTitle",
        flags:"IR",
        description:"The title displayed for the decimalPad property",
        name:"decimalPadTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Decimal Pad\"",
        type:"classAttr",
        definingClass:"class:FieldPickerField",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TreeGrid.willAcceptDrop":{
        ref:"method:TreeGrid.willAcceptDrop",
        flags:"A",
        description:" \n This method overrides ${isc.DocUtils.linkForRef('method:ListGrid.willAcceptDrop')} and works as follows:\n <br><br>\n First, ${isc.DocUtils.linkForRef('method:ListGrid.willAcceptDrop')} (the superclass definition) is consulted.  If it\n returns false, then this method returns false immediately.<br>\n This handles the following cases:<br>\n - reordering of records withing this TreeGrid when ${isc.DocUtils.linkForRef('attr:ListGrid.canReorderRecords')} is true<br>\n - accepting dropped records from another dragTarget when ${isc.DocUtils.linkForRef('attr:ListGrid.canAcceptDroppedRecords')} \n   is true and the dragTarget gives us a valid set of records to drop into place.<br>\n - disallowing drop over disabled nodes, or nodes with <code>canAcceptDrop:false</code>\n <br>\n This method will also return false if the drop occurred over a leaf node whos immediate \n parent has <code>canAcceptDrop</code> set to <code>false</code><br>\n If ${isc.DocUtils.linkForRef('attr:TreeGrid.canReparentNodes')} is true, and the user is dragging a node from one folder\n to another, this method will return true to allow the change of parent folder.<br>\n <br><br>\n Otherwise this method returns true.\n\n",
        name:"willAcceptDrop",
        seeAlso:[
        ],
        returns:{
            description:"true if this component will accept a drop of the dragData",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "event handling"
        ]
    },
    "attr:FacetChart.showStandardDeviationLines":{
        ref:"attr:FacetChart.showStandardDeviationLines",
        flags:"IR",
        description:"Display multiple ${isc.DocUtils.linkForRef('method:FacetChart.getStdDev','standard deviations')} away from the mean as lines.\n The exact deviations to display can be customized with ${isc.DocUtils.linkForRef('attr:FacetChart.standardDeviations')}.\n <P>\n Note that these standard deviations are computed using all of the data points, pooled\n across all facets.  The computation relies only on the values of the main value axis\n metric and the ${isc.DocUtils.linkForRef('attr:FacetChart.probabilityMetric','probability metric')}.\n <P>\n See <a href=\"http://en.wikipedia.org/wiki/Standard_deviation\">http://en.wikipedia.org/wiki/Standard_deviation</a>.",
        name:"showStandardDeviationLines",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Canvas.maxWidth":{
        ref:"attr:Canvas.maxWidth",
        flags:"IRWA",
        description:"Maximum width that this Canvas can be resized to.",
        name:"maxWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"10000",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:FacetChart.setZoomEndValue":{
        ref:"method:FacetChart.setZoomEndValue",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FacetChart.zoomEndValue')}.\n <p>\n Note that the ${isc.DocUtils.linkForRef('attr:FacetChart.zoomStartValue')} and ${isc.DocUtils.linkForRef('attr:FacetChart.zoomEndValue')} may be set simultaneously using\n ${isc.DocUtils.linkForRef('method:FacetChart.zoomTo')}.\n",
        name:"setZoomEndValue",
        seeAlso:[
        ],
        params:[
            {
                description:"New end value for the data range shown in the main chart",
                optional:false,
                name:"zoomEndValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Array.makeIndex":{
        ref:"method:Array.makeIndex",
        flags:"A",
        description:" Make an index for the items in this Array by a particular property of each item.\n <P>\n Returns an Object with keys for each distinct listItem[property] value.  Each key will point\n to an array of items that share that property value.  The sub-array will be in the same order\n that they are in this list.\n\n",
        name:"makeIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"names of the property to index by",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"strings"
            },
            {
                description:"if true, we always make an array for every index.  if false, we make an Array only\n              when more than one item has the same value for the index property",
                optional:false,
                name:"alwaysMakeArray",
                defaultValue:"false",
                type:"boolean"
            }
        ],
        returns:{
            description:"index object",
            type:"object"
        },
        type:"method",
        definingClass:"object:Array"
    },
    "method:StretchImg.setSrc":{
        ref:"method:StretchImg.setSrc",
        flags:"",
        description:" Changes the base ${isc.DocUtils.linkForRef('attr:StretchImg.src')} for this stretchImg, redrawing if necessary.\n\n",
        name:"setSrc",
        seeAlso:[
        ],
        params:[
            {
                description:"new URL for the image",
                optional:false,
                name:"src",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('loadImages')}"
        ],
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "method:TileGrid.getCurrentTile":{
        ref:"method:TileGrid.getCurrentTile",
        flags:"",
        description:" Returns the tile currently under the mouse.\n",
        name:"getCurrentTile",
        seeAlso:[
        ],
        returns:{
            description:"the tile currently under the mouse",
            type:"SimpleTile"
        },
        type:"method",
        definingClass:"class:TileGrid"
    },
    "attr:FormItem.hintClassName":{
        ref:"attr:FormItem.hintClassName",
        deprecated:"As of SmartClient version 5.5, deprecated in favor of ${isc.DocUtils.linkForRef('attr:FormItem.hintStyle')}",
        flags:"IRW",
        description:"CSS class for the \"hint\" string.",
        name:"hintClassName",
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"formHint\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Slider.vThumbStyle":{
        ref:"attr:Slider.vThumbStyle",
        flags:"IR",
        description:"Optional CSS style for the thumb for a vertically oriented slider.  See\n ${isc.DocUtils.linkForRef('attr:Slider.hThumbStyle')} for state suffixes.",
        name:"vThumbStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Slider"
    },
    "group:members":{
        ref:"group:members",
        refs:[
            "method:ValuesManager.getMembers",
            "method:ValuesManager.getMember",
            "method:ValuesManager.getMemberForField",
            "method:ValuesManager.addMember",
            "method:ValuesManager.addMembers",
            "method:ValuesManager.removeMember",
            "method:ValuesManager.removeMembers"
        ],
        name:"members",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateRangeItem.validateCriteria":{
        ref:"attr:DateRangeItem.validateCriteria",
        flags:"IRW",
        description:"If this attribute is set to <code>true</code> when ${isc.DocUtils.linkForRef('method:FormItem.getCriteriaValue','getCriteria()')} is\n called, the item will validate the <i>\"to\"</i> and <i>\"from\"</i> fields and\n return null if either field fails validation.\n See ${isc.DocUtils.linkForRef('method:DateRangeItem.validateRange')}",
        name:"validateCriteria",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:FacetChart.pieLabelAngleStart":{
        ref:"attr:FacetChart.pieLabelAngleStart",
        flags:"IR",
        description:"Angle where first label is placed in a Pie chart in stacked mode, in degrees.",
        name:"pieLabelAngleStart",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DrawItem.show":{
        ref:"method:DrawItem.show",
        flags:"",
        description:" Make this drawItem visible.\n",
        name:"show",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:DataBoundComponent.canAddSummaryFields":{
        ref:"attr:DataBoundComponent.canAddSummaryFields",
        flags:"IRW",
        description:"Adds an item to the header context menu allowing users to launch a dialog to define a new\n text field that can contain both user-defined text and the formatted values present in other \n fields, using the ${isc.DocUtils.linkForRef('class:SummaryBuilder')}.\n <P>\n User-added summary fields can be persisted via ${isc.DocUtils.linkForRef('method:ListGrid.getFieldState')} and \n ${isc.DocUtils.linkForRef('method:ListGrid.setFieldState')}.",
        name:"canAddSummaryFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "summaryFields"
        ]
    },
    "attr:Facet.width":{
        ref:"attr:Facet.width",
        flags:"IR",
        description:"Integer number of pixels.  For row facets, width of headers.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"width",
        seeAlso:[
            {
                ref:"attr:CubeGrid.defaultFacetWidth",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"cubeGrid.defaultFacetWidth",
        type:"attr",
        definingClass:"class:Facet"
    },
    "classMethod:Time.toTime":{
        ref:"classMethod:Time.toTime",
        flags:"",
        description:" Given a date object, return the time associated with the date as a formatted string.\n If no formatter is passed, use the standard formatter set up via \n ${isc.DocUtils.linkForRef('classMethod:Time.setNormalDisplayFormat')}.\n \n",
        name:"toTime",
        seeAlso:[
        ],
        params:[
            {
                description:"Date to convert to a time string.",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"Optional custom formatter to use. Will accept  a function (which will be passed a pointer to the date to perform the conversion), or\n  a string designating a standard formatter",
                optional:true,
                name:"formatter",
                defaultValue:null,
                type:"TimeDisplayFormat | function"
            },
            {
                description:"Is the date passed in a representation of a logical time value such as  a value from a <code>\"time\"</code> type field on a dataSource or a datetime value? \n  For datetime values the formatted string will respect any custom \n ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone','display timezone')}.\n If not explicitly specified, the date passed in will be assumed to be a datetime unless\n it was created explicitly as a time via ${isc.DocUtils.linkForRef('classMethod:Time.createLogicalTime')} or similar APIs.",
                optional:true,
                name:"logicalTime",
                defaultValue:null,
                type:null
            }
        ],
        type:"classMethod",
        definingClass:"class:Time"
    },
    "attr:FormItemIcon.showOver":{
        ref:"attr:FormItemIcon.showOver",
        flags:"IRWA",
        description:"Should this icon's image and/or ${isc.DocUtils.linkForRef('attr:FormItemIcon.baseStyle','baseStyle')} switch to the\n appropriate \"Over\" value when the user rolls over or focuses on the icon?",
        name:"showOver",
        seeAlso:[
            {
                ref:"attr:FormItem.showOverIcons",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "attr:FilterBuilder.topOperator":{
        ref:"attr:FilterBuilder.topOperator",
        flags:"IRW",
        description:"Default logical operator for all top-level clauses in the FilterBuilder.\n <P>\n May be able to be changed by the user via the UI, according to ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')}.",
        name:"topOperator",
        setter:[
            "setTopOperator"
        ],
        seeAlso:[
        ],
        valueType:"LogicalOperator",
        defaultValue:"\"and\"",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:Calendar.rowHeight":{
        ref:"attr:Calendar.rowHeight",
        flags:"IRW",
        description:"The height of time-slots in the calendar.",
        name:"rowHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:HiliteEditor.hiliteRule":{
        ref:"attr:HiliteEditor.hiliteRule",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:HiliteRule')} used to create new simple hilites.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteEditor.hiliteRuleProperties</code>.",
        name:"hiliteRule",
        seeAlso:[
        ],
        valueType:"AutoChild HiliteRule",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteEditor"
    },
    "attr:Splitbar.capSize":{
        ref:"attr:Splitbar.capSize",
        flags:"IR",
        description:"If the default items are used, capSize is the size in pixels of the first and last\n          images in this stretchImg.",
        name:"capSize",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.snapHDirection":{
        ref:"attr:Canvas.snapHDirection",
        flags:"IRW",
        description:"The horizontal snap direction.\n Set this value to \"before\" to snap to the nearest gridpoint to the left;\n set it to \"after\" to snap to the nearest gridpoint to the right; and set\n it to \"nearest\" to snap to the nearest gridpoint in either direction.",
        name:"snapHDirection",
        seeAlso:[
            {
                ref:"attr:Canvas.snapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.snapResizeToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapToGrid",
                description:null
            },
            {
                ref:"attr:Canvas.childrenSnapResizeToGrid",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"after\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "classMethod:SimpleType.setDefaultSummaryFunction":{
        ref:"classMethod:SimpleType.setDefaultSummaryFunction",
        flags:"",
        description:" Set up a default summary function for some field type.\n <P>\n Note that the following default summary functions are set up when SmartClient initializes:\n <br>- <code>\"integer\"</code> defaults to <code>\"sum\"</code>\n <br>- <code>\"float\"</code> defaults to <code>\"sum\"</code>.\n\n",
        name:"setDefaultSummaryFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"type name",
                optional:false,
                name:"typeName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"summary function to set as the default for   this data type.",
                optional:false,
                name:"summaryFunction",
                defaultValue:null,
                type:"SummaryFunction"
            }
        ],
        type:"classMethod",
        definingClass:"class:SimpleType"
    },
    "attr:ListGrid.canCollapseGroup":{
        ref:"attr:ListGrid.canCollapseGroup",
        flags:"IR",
        description:"Can a group be collapsed/expanded? When true a collapse/expand icon is shown\n (${isc.DocUtils.linkForRef('attr:ListGrid.groupIcon','groupIcon')}) and clicking the icon or double-clicking the group title\n will collapse or expand the group.\n\n When false the group icon is not shown and double-clicking on the title does\n not change group state. Additionally ${isc.DocUtils.linkForRef('type:GroupStartOpen','groupStartOpen')} is\n initialized to \"all\".",
        name:"canCollapseGroup",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:Tab.paneMargin":{
        ref:"attr:Tab.paneMargin",
        flags:"IR",
        description:"Space to leave around the pane within this Tab.\n If specified, this property takes precedence over ${isc.DocUtils.linkForRef('attr:TabSet.paneMargin')}",
        name:"paneMargin",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "attr:PickList.valueIconField":{
        ref:"attr:PickList.valueIconField",
        flags:"IRWA",
        description:"For Databound formItems, this property determines which column \n ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} should show up in for this formItem's pickList.<br>\n If unset, valueIcons show up in the ${isc.DocUtils.linkForRef('attr:PickList.displayField')} column if specified, \n otherwise the ${isc.DocUtils.linkForRef('attr:PickList.valueField')} column.<br>\n In most cases only the <code>displayField</code> or <code>valueField</code> will be visible.\n This property is typically only required if custom ${isc.DocUtils.linkForRef('attr:PickList.pickListFields')} \n have been specified for this item.",
        name:"valueIconField",
        seeAlso:[
            {
                ref:"attr:FormItem.valueIcons",
                description:null
            },
            {
                ref:"attr:PickList.pickListFields",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "method:Tree.setRoot":{
        ref:"method:Tree.setRoot",
        flags:"",
        description:"\n Set the root node of the tree. \n\n",
        name:"setRoot",
        seeAlso:[
        ],
        params:[
            {
                description:"new root node",
                optional:false,
                name:"newRoot",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"set to true to automatically open the new root node.",
                optional:false,
                name:"autoOpen",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:Window.keepInParentRect":{
        ref:"attr:Window.keepInParentRect",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Window.canDragReposition')} or ${isc.DocUtils.linkForRef('attr:Window.canDragResize')} is true, should the\n windows size and position be constrained such that it remains within the viewport of\n its parent element (or for top level windows, within the viewport of the browser window)?\n <br>\n Can also be set to an array denoting an arbitrary rect [Left,Top,Width,Height] beyond\n which the window cannot be moved.\n <p>\n Note: keepInParentRect affects only user drag interactions, not programmatic moves.",
        name:"keepInParentRect",
        seeAlso:[
            {
                ref:"attr:Window.canDragReposition",
                description:null
            }
        ],
        valueType:"boolean or rect",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "dragdrop"
        ]
    },
    "method:Tree.getOpenList":{
        ref:"method:Tree.getOpenList",
        flags:"",
        description:"\n Return a flattened list of nodes that are open under some parent, including the parent\n itself.  If the passed in node is a leaf, this method returns null\n\n",
        name:"getOpenList",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:true,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"flattened list of open nodes",
            type:"List of TreeNode"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:FloatItem.getValueAsFloat":{
        ref:"method:FloatItem.getValueAsFloat",
        flags:"",
        description:" Return the value tracked by this form item as a Float.  If the value cannot\n be parsed to a valid float, null will be returned.\n\n",
        name:"getValueAsFloat",
        seeAlso:[
            {
                ref:"method:FormItem.getValue",
                description:null
            }
        ],
        returns:{
            description:"value of this element",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FloatItem"
    },
    "group:sharingNodes":{
        ref:"group:sharingNodes",
        title:"Sharing Nodes",
        refs:[
        ],
        description:"For local Trees, that is, Trees that don't use load on demand, SmartClient supports setting\n up the Tree structure by setting properties such as \"childrenProperty\", directly on data\n nodes.  This allows for simpler, faster structures for many common tree uses, but can create\n confusion if nodes need to be shared across Trees.\n <P>\n <b>using one node in two places in one Tree</b>\n <P>\n To do this, either clone the shared node like so:<pre>\n\n     tree.add(isc.addProperties({}, sharedNode));\n\n </pre> or place the shared data in a shared subobject instead.\n <P>\n <b>sharing nodes or subtrees across Trees</b>\n <P>\n Individual nodes within differing tree structures can be shared by two Trees only if\n ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')}, ${isc.DocUtils.linkForRef('attr:Tree.childrenProperty')}, and ${isc.DocUtils.linkForRef('attr:Tree.openProperty')} have\n different values in each Tree.\n <P>\n As a special case of this, two Trees can maintain different open state across a single\n read-only structure as long as just \"openProperty\" has a different value in each Tree.",
        name:"sharingNodes",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Array.findIndex":{
        ref:"method:Array.findIndex",
        flags:"",
        description:" Find the index of the first Object where property == value in the object.\n <P>\n Pass an Object instead to match multiple properties.\n <P>\n Note: for string values, matches are case sensitive.\n\n",
        name:"findIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access",
            "find"
        ]
    },
    "method:List.sort":{
        ref:"method:List.sort",
        flags:"",
        description:" Sorts the elements of the List in place.\n <P>\n The optional comparator function should take two parameters \"a\" and \"b\" which are the two list\n items to compare, and should return:\n <ul>\n <li> a value less than zero, if \"a\" is less than \"b\" such that \"a\" should appear earlier in the\n      list\n <li> zero, if \"a\" and \"b\" are equal\n <li> a value greater than zero, if \"a\" is greater than \"b\" such that \"b\" should appear earlier in\n      the list\n </ul>\n \n",
        name:"sort",
        seeAlso:[
        ],
        params:[
            {
                description:"comparator function to use",
                optional:true,
                name:"comparator",
                defaultValue:null,
                type:"function"
            }
        ],
        returns:{
            description:"the list itself",
            type:"List"
        },
        type:"method",
        definingClass:"interface:List"
    },
    "attr:Portlet.height":{
        ref:"attr:Portlet.height",
        flags:"IRW",
        description:"If you initialize the height of a Portlet, then that height will be used as the \n Portlet's ${isc.DocUtils.linkForRef('attr:Portlet.rowHeight','rowHeight')} (if no rowHeight is set).\n <p>\n After initialization, the ${isc.DocUtils.linkForRef('class:PortalLayout')} manages the height of Portlets. If you\n want to change the height, use ${isc.DocUtils.linkForRef('method:Portlet.setRowHeight')}.",
        name:"height",
        setter:[
            "setHeight"
        ],
        seeAlso:[
            {
                ref:"attr:Portlet.rowHeight",
                description:null
            },
            {
                ref:"method:Portlet.setRowHeight",
                description:null
            }
        ],
        valueType:"Number or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Portlet"
    },
    "attr:JSONEncoder.dateFormat":{
        ref:"attr:JSONEncoder.dateFormat",
        flags:"IR",
        description:"Format for encoding JavaScript Date values in JSON.  See ${isc.DocUtils.linkForRef('type:JSONDateFormat')} for\n valid options, or override ${isc.DocUtils.linkForRef('method:JSONEncoder.encodeDate')} to do something custom.",
        name:"dateFormat",
        seeAlso:[
        ],
        valueType:"JSONDateFormat",
        defaultValue:"\"xmlSchema\"",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:DateRangeItem.relativeItemConstructor":{
        ref:"attr:DateRangeItem.relativeItemConstructor",
        flags:"R",
        description:"The ${isc.DocUtils.linkForRef('class:FormItem')} class to create when ${isc.DocUtils.linkForRef('attr:DateRangeItem.allowRelativeDates')} is true.",
        name:"relativeItemConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"RelativeDateItem\"",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "type:DateEditingStyle":{
        ref:"type:DateEditingStyle",
        values:[
            {
                description:"allows editing of the logical start and end dates of the event",
                value:"\"date\""
            },
            {
                description:"allows editing of both date and time",
                value:"\"datetime\""
            },
            {
                description:"allows editing of the time portion of the event only",
                value:"\"time\""
            }
        ],
        description:"The type of date/time editing style to use when editing an event.",
        name:"DateEditingStyle",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ColumnTree.dataSource":{
        ref:"attr:ColumnTree.dataSource",
        flags:"IRW",
        description:"The DataSource that this component should bind to for default fields and for performing\n ${isc.DocUtils.linkForRef('class:DSRequest','DataSource requests')}.\n <P>\n Can be specified as either a DataSource instance or the String ID of a DataSource.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataSourceFields')}"
        ],
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "class:ActiveXControl":{
        methods:[
            "method:ActiveXControl.getPluginID",
            "method:ActiveXControl.getPluginHandle"
        ],
        ref:"class:ActiveXControl",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Client Bridges"
        ],
        attrs:[
            "attr:ActiveXControl.id",
            "attr:ActiveXControl.params",
            "attr:ActiveXControl.uuid",
            "attr:ActiveXControl.classID",
            "attr:ActiveXControl.codeBase"
        ],
        description:"ISC Abstraction for ActiveX controls",
        name:"ActiveXControl",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "PluginBridges"
        ]
    },
    "attr:DataSource.iconField":{
        ref:"attr:DataSource.iconField",
        flags:"IR",
        description:"Designates a field of ${isc.DocUtils.linkForRef('type:FieldType','type')}:\"image\" as the field to use when rendering a\n record as an image, for example, in a ${isc.DocUtils.linkForRef('class:TileGrid')}.\n <p>\n For example, for a DataSource of employees, a \"photo\" field of type \"image\" should be\n designated as the iconField.\n <p>\n If not explicitly set, iconField looks for fields named \"picture\", \"thumbnail\", \"icon\",\n \"image\" and \"img\", in that order, and will use any of these fields as the iconField if it\n exists and has type \"image\". \n <P>\n To avoid any field being used as the iconField, set iconField to <code>null</code>.",
        name:"iconField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"see below",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "dsSpecialFields"
        ]
    },
    "classMethod:EventHandler.setDragTrackerImage":{
        ref:"classMethod:EventHandler.setDragTrackerImage",
        flags:"",
        description:" This API may be called to set the native HTML5 drag tracker image. The <code>x</code> and\n <code>y</code> parameters may be specified to affect the placement of the drag tracker image\n relative to the mouse cursor. The size of the drag tracker image is the intrinsic size of the\n image. Browsers may apply certain visual effects (such as a slight transparency) to this image.\n <p>\n Can only be called during the ${isc.DocUtils.linkForRef('method:Canvas.dragStart')} event (or methods called during the\n handling of that event).\n <p>\n <b>NOTES:</b>\n <ul>\n <li>Not supported in Opera 12.x or Safari.</li>\n <li>For best results, this image should be preloaded. Otherwise, the image might not appear\n for the first drag using this image.</li>\n <li>This API does not work in Chrome or Firefox on Windows 7 if the \"Use visual styles on windows and buttons\"\n setting is turned off.</li>\n </ul>\n",
        name:"setDragTrackerImage",
        seeAlso:[
        ],
        params:[
            {
                description:"image source",
                optional:false,
                name:"src",
                defaultValue:null,
                type:"SCImgURL"
            },
            {
                description:"offset-x from the mouse cursor",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"offset-y from the mouse cursor",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"classMethod",
        definingClass:"class:EventHandler"
    },
    "method:PickList.dataArrived":{
        ref:"method:PickList.dataArrived",
        flags:"",
        description:" If this item is showing a dataBound pickList, this notification method will be fired \n when new data arrives from the server.\n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"index of first row returned by the server",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"index of last row returned by the server",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"pointer to this pickList's data",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"ResultSet"
            }
        ],
        type:"method",
        definingClass:"interface:PickList"
    },
    "attr:DSRequest.useFlatFields":{
        ref:"attr:DSRequest.useFlatFields",
        flags:"IR",
        description:"When <code>useFlatFields</code> is set for a request to be sent to a WSDL web service, when\n creating the input XML message to send to the web service, properties in\n ${isc.DocUtils.linkForRef('attr:DSRequest.data','request.data')} will be used as the values for XML elements of the same name, at\n any level of nesting.\n <P>\n <code>useFlatFields</code> allows you to ignore gratuitous XML message structure, such as\n extra levels of nested elements, and provides some insulation against changes in the\n required structure of the input message.\n <P>\n For example, given this input message:\n <pre>\n &lt;FindServices&gt;\n     &lt;searchFor&gt;search text&lt;/searchFor&gt;\n     &lt;Options&gt;\n         &lt;caseSensitive&gt;false&lt;/caseSensitive&gt;\n     &lt;/Options&gt;\n     &lt;IncludeInSearch&gt;\n         &lt;serviceName&gt;true&lt;/serviceName&gt;\n         &lt;documentation&gt;true&lt;/documentation&gt;\n         &lt;keywords&gt;true&lt;/keywords&gt;\n     &lt;/IncludeInSearch&gt;\n &lt;/FindServices&gt;\n </pre>\n If <code>useFlatFields</code> were <b>not</b> set, in order to fill out this message\n correctly, <code>request.data</code> would need to be:\n <pre>{\n    searchFor: \"search text\",\n    Options : {\n        caseSensitive: false,\n    },\n    IncludeInSearch : {\n        serviceName: true,\n        documentation : true,\n        keywords : true\n    }\n }</pre>\n However if useFlatFields were set, <code>request.data</code> could be just:\n <pre>{\n    searchFor: \"search text\",\n    caseSensitive: false,\n    serviceName: true,\n    documentation : true,\n    keywords : true\n }</pre>\n <code>useFlatFields</code> is often set when the input data comes from a ${isc.DocUtils.linkForRef('class:DynamicForm')}\n to avoid the cumbersome and fragile process of mapping input fields to an XML structure.\n <P>\n ${isc.DocUtils.linkForRef('attr:OperationBinding.useFlatFields')} can also be set to cause <b>all</b> dsRequests of a\n particular type to <code>useFlatFields</code> automatically.\n <P>\n For ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')}, \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.useFlatFields','component.useFlatFields')} can be set use \"flattened\"\n binding to fields of a WSDL message or XML Schema.\n <P>\n Note that <code>useFlatFields</code> is not generally recommended for use with XML input\n messages where multiple simple type fields exist with the same name, however if used in this\n way, the first field to use a given name wins.  \"first\" means the first field encountered in a\n depth first search.  \"wins\" means only the first field will be populated in the generated\n XML message.",
        name:"useFlatFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "flatFields"
        ]
    },
    "classMethod:Class.evaluate":{
        ref:"classMethod:Class.evaluate",
        flags:"",
        description:" Evaluate a string of script and return the result.\n <P>\n This method is a wrapper around the native javascript method <code>eval()</code>. It\n papers over some native issues to ensure evaluation of script behaves consistently across\n browsers\n\n",
        name:"evaluate",
        seeAlso:[
        ],
        params:[
            {
                description:"the expression to be evaluated",
                optional:false,
                name:"expression",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Optional mapping of argument names to values - each key will      be available as a local variable when the script is executed.",
                optional:false,
                name:"evalArgs",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"the result of the eval",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:DateItem.useMask":{
        ref:"attr:DateItem.useMask",
        flags:"IA",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is not <code>false</code> this property determines if\n an input mask should be used. The format of the mask is determined by the \n ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat')} or ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter')} (in that order).\n <p>\n This attribute does not have an effect if a native HTML5 date input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"useMask",
        seeAlso:[
            {
                ref:"attr:DateItem.maskDateSeparator",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "basics"
        ]
    },
    "method:ListGrid.setAutoFitExtraRecords":{
        ref:"method:ListGrid.setAutoFitExtraRecords",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitExtraRecords')}.\n",
        name:"setAutoFitExtraRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"Number of extra rows beyond the data-size we'll expand to accommodate if ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData','auto fit')} is enabled vertically.",
                optional:false,
                name:"extraRecords",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "method:Dialog.buttonClick":{
        ref:"method:Dialog.buttonClick",
        flags:"",
        description:" Fires when any button in this Dialog's toolbar is clicked.  Default implementation does nothing.\n\n",
        name:"buttonClick",
        seeAlso:[
        ],
        params:[
            {
                description:"button that was clicked",
                optional:false,
                name:"button",
                defaultValue:null,
                type:"Button"
            },
            {
                description:"index of the button that was clicked",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "attr:RPCRequest.callback":{
        ref:"attr:RPCRequest.callback",
        flags:"IRW",
        description:"If you expect to receive a response to your RPC request, you can specify a callback that\n will be called with an instance or RPCResponse class as sent by the server.  Queuing does\n not affect callbacks in any way - your specified callback will be invoked for each\n RPCRequest that contained a callback regardless of whether the request was sent as part of a\n queue or not.\n <P>\n Note that if the request encounters an error (such as 500 server error), by default the\n callback will <b>not</b> be fired, instead, ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')} is called to\n invoke the default system-wide error handling.  Set ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')}:true to have your\n callback invoked regardless of whether there are errors, however, make sure your callback\n properly handles malformed responses when ${isc.DocUtils.linkForRef('attr:RPCResponse.status')} is non-zero.  See the\n ${isc.DocUtils.linkForRef('group:errorHandling','error handling overview')} for more details.",
        name:"callback",
        seeAlso:[
        ],
        valueType:"RPCCallback",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "errorHandling"
        ]
    },
    "attr:FormItem.required":{
        ref:"attr:FormItem.required",
        flags:"IR",
        description:"Whether a non-empty value is required for this field to pass validation.\n <P>\n If the user does not fill in the required field, the error message to be shown will\n be taken from these properties in the following order: ${isc.DocUtils.linkForRef('attr:FormItem.requiredMessage')},\n ${isc.DocUtils.linkForRef('attr:DynamicForm.requiredMessage')}, ${isc.DocUtils.linkForRef('attr:DataSource.requiredMessage')}, \n ${isc.DocUtils.linkForRef('classAttr:Validator.requiredField')}.\n <P>\n <b>Note:</b> if specified on a FormItem, <code>required</code> is only enforced on the\n client.  <code>required</code> should generally be specified on a\n ${isc.DocUtils.linkForRef('class:DataSourceField')}.",
        name:"required",
        setter:[
            "setRequired"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formShowAndHide')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "validation"
        ]
    },
    "attr:FacetChart.data":{
        ref:"attr:FacetChart.data",
        flags:"IR",
        description:"Dataset for this chart.\n <P>\n Two basic formats are supported:\n <ul>\n <li> \"Standard model\": <code>data</code> is an array of CellRecords where each record\n contains one data value.  Each record also contains a property named after each facetId\n whose value is a facetValueId from that facet.\n <p>\n For example, with a facet with id \"regions\" and facetValues \"west\", \"north\" and \"east\", and\n with ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')} with it's default value \"_value\", the <code>data</code> property\n could be:\n <pre>\n    isc.Chart.create({\n       facets:[{ id:\"regions\" }],\n       data : [\n          {regions:\"west\", _value:4},\n          {regions:\"north\", _value:2},\n          {regions:\"east\", _value:5}\n       ]\n    })</pre>\n If there were a second facet with id \"product\" and facetValues \"cars\" and \"trucks\", a Chart\n with a complete set of values would be:\n <pre>\n    isc.Chart.create({\n       facets:[{ id:\"regions\" }, { id:\"product\" }],\n       data : [\n          {product:\"cars\", regions:\"west\", _value:4},\n          {product:\"cars\", regions:\"north\", _value:2},\n          {product:\"cars\", regions:\"east\", _value:5},\n          {product:\"trucks\", regions:\"west\", _value:1},\n          {product:\"trucks\", regions:\"north\", _value:9},\n          {product:\"trucks\", regions:\"east\", _value:3}\n       ]\n    })</pre>\n This 2 facet (or \"2 dimensional\") dataset, if rendered as a bar chart, would use stacked or\n clustered bars and a legend.\n <P>\n\n <li> \"Inlined facet\": <code>data</code> is a single CellRecord or Array of CellRecords where\n each record contains multiple data values.  In this case, one facet definition is considered\n \"inlined\", meaning that the facetValueIds from this facet appear as properties in each\n record, and each such property holds one data value.  For example, a complete chart\n definition whose dataset is equivalent to the previous example would be:\n <pre>\n    isc.Chart.create({\n       facets: [{ \n          inlinedValues:true,\n          values : [ { id:\"west\" }, { id:\"north\" }, { id : \"east\" } ]\n       }],\n       data : { west:4, north:5, east:2 }\n    })</pre>\n Note that the property \"inlinedValues\" must be set on the facet definition, and the set of\n facetValueIds must be specified outside of the data array (with the \"standard model\",\n facetValueIds can be automatically derived from the data).  \n <P>\n A two facet chart with an inlined facet can be defined as follows:\n <pre>\n    isc.Chart.create({\n       facets: [\n         { \n            inlinedValues:true,\n            values : [ { id:\"west\" }, { id:\"north\" }, { id : \"east\" } ]\n         }, \n         { id:\"product\" }\n       ],\n       data : [\n           { product:\"cars\", west:4, north:5, east:2 },\n           { product:\"trucks\", west:1, north:9, east:3 }\n       ]\n    })</pre>\n </ul>\n Comparing between the formats, the \"standard model\" format treats all facets identically,\n which can be of use when integrating with server technology that likewise treats all facets\n identically.  The \"inlined facet\" format is a more compact data representation and allows\n easier conversion from data displayed in a ListGrid.",
        name:"data",
        seeAlso:[
        ],
        valueType:"Array of CellRecord or CellRecord",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:NumberUtil.toUSCurrencyString":{
        ref:"classMethod:NumberUtil.toUSCurrencyString",
        flags:"",
        description:"  Format the passed number as a US Dollar currency string. Returns empty string if not passed \n a number.\n\n",
        name:"toUSCurrencyString",
        seeAlso:[
        ],
        params:[
            {
                description:"the number object to format",
                optional:false,
                name:"number",
                defaultValue:null,
                type:"Number"
            },
            {
                description:null,
                optional:true,
                name:"decimalPrecision",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"formatted number",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil"
    },
    "method:PortalLayout.willClosePortlet":{
        ref:"method:PortalLayout.willClosePortlet",
        flags:"",
        description:" Method called when a ${isc.DocUtils.linkForRef('class:Portlet')} in this PortalLayout is about to be closed.\n This method is called before ${isc.DocUtils.linkForRef('attr:Portlet.showCloseConfirmationMessage')} is applied.\n Note that this method is called only when the user explicitly closes a Portlet.\n It is not called when programmatically removing a Portlet via ${isc.DocUtils.linkForRef('method:PortalLayout.removePortlet')}.\n <p>\n Return false to cancel the action.\n \n",
        name:"willClosePortlet",
        seeAlso:[
            {
                ref:"attr:Portlet.showCloseConfirmationMessage",
                description:null
            },
            {
                ref:"method:PortalLayout.portletsChanged",
                description:null
            }
        ],
        params:[
            {
                description:"the Portlet which will be closed",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        returns:{
            description:"whether the action should proceed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:Calendar.otherDayHeaderBaseStyle":{
        ref:"attr:Calendar.otherDayHeaderBaseStyle",
        flags:"IRW",
        description:"The base name for the CSS class applied to the day headers of the month view.\n This style will have \"Dark\", \"Over\", \"Selected\", or \"Disabled\"\n appended to it according to the state of the cell.",
        name:"otherDayHeaderBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calMonthDayHeader\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "method:DrawLabel.moveBy":{
        ref:"method:DrawLabel.moveBy",
        flags:"",
        description:" Change the label's ${isc.DocUtils.linkForRef('attr:DrawLabel.left','left')} and ${isc.DocUtils.linkForRef('attr:DrawLabel.top','top')} by the specified amounts.\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of pixels to move horizontally",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"number of pixels to move vertically",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLabel"
    },
    "classAttr:LoginDialog.LOGIN_TITLE":{
        ref:"classAttr:LoginDialog.LOGIN_TITLE",
        flags:"IRW",
        description:"Default title for the dialog displayed by ${isc.DocUtils.linkForRef('classMethod:isc.showLoginDialog')}.\n A custom title can alternatively be specified as the <code>title</code> attribute of the\n <code>properties</code> parameter passed to that method.",
        name:"LOGIN_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Please log in\"",
        type:"classAttr",
        definingClass:"class:LoginDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MultiGroupDialog.applyButton":{
        ref:"attr:MultiGroupDialog.applyButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing the mechanism for accepting\n the current group configuration.  Fires the passed callback with a single parameter,\n groupLevels, representing the current group configuration as an array of \n ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.applyButtonProperties</code> and \n <code>multiGroupPanel.applyButtonDefaults</code>.",
        name:"applyButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "attr:DetailViewer.labelStyle":{
        ref:"attr:DetailViewer.labelStyle",
        flags:"IRW",
        description:"CSS style for a normal detail label",
        name:"labelStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"detailLabel\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "method:TabSet.setTabIcon":{
        ref:"method:TabSet.setTabIcon",
        flags:"A",
        description:" Changes the icon for a tab\n",
        name:"setTabIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"tab to update",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | number | ID | name"
            },
            {
                description:"new icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"SCImgURL"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:SchemaSet.getSchema":{
        ref:"method:SchemaSet.getSchema",
        flags:"A",
        description:" Get the schema definition of any complexType or element of complexType defined within\n the &lt;schema&gt; element this SchemaSet represents.\n\n",
        name:"getSchema",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the schema to retrieve",
                optional:false,
                name:"schemaName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"optional type of schema to return, either \"element\" for                              xs:element definitions only or \"type\" for xs:complexType\n                              definitions.  If unspecified, either will be returned,\n                              with types preferred if names collide",
                optional:true,
                name:"schemaType",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the schema if found, or null",
            type:"DataSource"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlSchemaImport')}"
        ],
        definingClass:"class:SchemaSet"
    },
    "attr:ListGridRecord.isGridSummary":{
        ref:"attr:ListGridRecord.isGridSummary",
        flags:"IRW",
        description:"This attribute will automatically be set to true for the record representing the\n grid-level summary row shown if ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true.\n <P>\n Note that <code>isGridSummary</code> is the default property name for this attribute but\n it may be modified by setting ${isc.DocUtils.linkForRef('attr:ListGrid.gridSummaryRecordProperty')}",
        name:"isGridSummary",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord"
    },
    "classMethod:EventHandler.targetIsMasked":{
        ref:"classMethod:EventHandler.targetIsMasked",
        flags:"A",
        description:" Return whether this Canvas is masked by a clickMask (see ${isc.DocUtils.linkForRef('method:Canvas.showClickMask')}).\n\n",
        name:"targetIsMasked",
        seeAlso:[
        ],
        params:[
            {
                description:"widget to check",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"true if masked, false if not masked.",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "clickMask"
        ]
    },
    "attr:ListGridField.decimalPrecision":{
        ref:"attr:ListGridField.decimalPrecision",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and affects how many significant digits are shown.\n <P>\n For example, with decimalPrecision 3, if the field value is 343.672677, 343.673 is shown.\n <P>\n If the value is 125.2, 125.2 is shown - decimalPrecision will not cause extra zeros to be\n added.  Use ${isc.DocUtils.linkForRef('attr:DataSourceField.decimalPad')} for this.\n <P>\n A number is always shown with its original precision when edited.",
        name:"decimalPrecision",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "group:line":{
        ref:"group:line",
        refs:[
            "attr:DrawItem.lineWidth",
            "attr:DrawItem.lineColor",
            "attr:DrawItem.lineOpacity",
            "attr:DrawItem.linePattern",
            "attr:DrawItem.lineCap",
            "attr:DrawRect.lineCap",
            "attr:DrawLabel.lineColor",
            "attr:DrawCurve.lineCap",
            "attr:DrawPolygon.lineCap",
            "type:LinePattern",
            "type:LineCap"
        ],
        name:"line",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateChooser.weekendHeaderStyle":{
        ref:"attr:DateChooser.weekendHeaderStyle",
        flags:"IRW",
        description:"Optional CSS style applied to the day-of-week headers for weekend days. If unset \n ${isc.DocUtils.linkForRef('attr:DateChooser.headerStyle')} will be applied to both weekdays and weekend days.",
        name:"weekendHeaderStyle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:FilterBuilder.radioOperatorLayout":{
        ref:"attr:FilterBuilder.radioOperatorLayout",
        flags:"IR",
        description:"HLayout of radioOperationForm and optional modeSwitcher.",
        name:"radioOperatorLayout",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:MenuBar.tabIndex":{
        ref:"attr:MenuBar.tabIndex",
        flags:"IRWA",
        description:"By default exclude menubars from the page's tab order. To include a menubar in the page's\n tab order, set tabIndex to an explicit tab index, or <code>null</code> for automatically \n assigned tabIndex",
        name:"tabIndex",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"-1",
        type:"attr",
        definingClass:"class:MenuBar"
    },
    "method:ColorPicker.setRed":{
        ref:"method:ColorPicker.setRed",
        flags:"",
        description:" Sets the Red element of the selected color\n",
        name:"setRed",
        seeAlso:[
            {
                ref:"method:ColorPicker.getRed",
                description:null
            }
        ],
        params:[
            {
                description:"An integer between 0 and 255",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "method:Canvas.focus":{
        ref:"method:Canvas.focus",
        flags:"",
        description:" If this canvas can accept focus, give it keyboard focus. After this method, the canvas\n will appear focused and will receive keyboard events.\n",
        name:"focus",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "method:GridRenderer.selectionChanged":{
        ref:"method:GridRenderer.selectionChanged",
        flags:"A",
        description:" Called when (row-based) selection changes within this grid. Note this method fires for\n each record for which selection is modified - so when a user clicks inside a grid this\n method will typically fire twice (once for the old record being deselected, and once for\n the new record being selected).\n <P>\n NOTE: For updating other components based on selections or triggering selection-oriented\n events within an application, see the\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectionUpdated','selectionUpdated()')} event\n which is likely more suitable.  Calls to ${isc.DocUtils.linkForRef('method:Selection.getSelection','getSelection()')}\n from within this event may not return a valid set of selected records if the event has\n been triggered by a call to ${isc.DocUtils.linkForRef('method:Selection.selectAll','selectAll()')} or \n ${isc.DocUtils.linkForRef('method:Selection.deselectAll','deselectAll()')} - in this case use the \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectionUpdated','selectionUpdated()')} event instead.\n\n",
        name:"selectionChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"record for which selection changed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"New selection state (true for selected, false for unselected)",
                optional:false,
                name:"state",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "selection"
        ]
    },
    "method:Layout.hasMember":{
        ref:"method:Layout.hasMember",
        flags:"",
        description:" Returns true if the layout includes the specified canvas.\n",
        name:"hasMember",
        seeAlso:[
        ],
        params:[
            {
                description:"the canvas to check for",
                optional:false,
                name:"canvas",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"true if the layout includes the specified canvas",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "classAttr:GroupingMessages.bySecondsTitle":{
        ref:"classAttr:GroupingMessages.bySecondsTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a time field by seconds.",
        name:"bySecondsTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Seconds\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TabSet.leftEdgeOffsets":{
        ref:"attr:TabSet.leftEdgeOffsets",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeOffsets</code>, \n <code>rightEdgeOffsets</code>, <code>topEdgeOffsets</code> and <code>bottomEdgeOffsets</code> \n properties allow the offsets of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge offsets where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"leftEdgeOffsets",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:HiliteRule.remove":{
        ref:"method:HiliteRule.remove",
        flags:"",
        description:" Remove this HiliteRule.  Default implementation calls markForDestroy(). \n\n",
        name:"remove",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:HiliteRule"
    },
    "method:Canvas.click":{
        ref:"method:Canvas.click",
        flags:"A",
        description:"\n Executed when the left mouse is clicked (pressed and then released) on this widget.  No default\n implementation.\n\n",
        name:"click",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:ComboBoxItem.pickListFields":{
        ref:"attr:ComboBoxItem.pickListFields",
        flags:"IRA",
        description:"This property allows the developer to specify which field[s] will be displayed in the \n drop down list of options.\n <P>\n Only applies to databound pickLists (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}, or pickLists\n with custom data set up via the advanced ${isc.DocUtils.linkForRef('method:PickList.getClientPickListData')} method.\n <P>\n If this property is unset, we display the ${isc.DocUtils.linkForRef('attr:PickList.displayField')}, if specified, \n otherwise the ${isc.DocUtils.linkForRef('attr:PickList.valueField')}.\n <P>\n If there are multiple fields, column headers will be shown for each field, the\n height of which can be customized via the ${isc.DocUtils.linkForRef('attr:PickList.pickListHeaderHeight')} attribute.\n <P>\n Each field to display should be specified as a ${isc.DocUtils.linkForRef('object:ListGridField')} object. Note that\n unlike in ${isc.DocUtils.linkForRef('class:ListGrid','listGrids')}, dataSource fields marked as \n ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden','hidden:true')} will be hidden by default in pickLists. To\n override this behavior, ensure that you specify an explicit value for \n ${isc.DocUtils.linkForRef('method:ListGridField.showIf','showIf')}.",
        name:"pickListFields",
        seeAlso:[
            {
                ref:"attr:ComboBoxItem.valueField",
                description:null
            },
            {
                ref:"attr:PickList.pickListHeaderHeight",
                description:null
            }
        ],
        valueType:"Array of ListGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:Array.removeList":{
        ref:"method:Array.removeList",
        flags:"",
        description:" Remove all instances of objects in the specified list from this list, sliding the remaining\n objects around to fill gaps.\n\n",
        name:"removeList",
        seeAlso:[
        ],
        params:[
            {
                description:"list of items to remove",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array"
            }
        ],
        returns:{
            description:"list of items passed in",
            type:"list"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "attr:DataSource.showPrompt":{
        ref:"attr:DataSource.showPrompt",
        flags:"IRW",
        description:"Whether RPCRequests sent by this DataSource should enable\n ${isc.DocUtils.linkForRef('attr:RPCRequest.showPrompt')} in order to block user interactions until the\n request completes.  \n <p>\n DataSource requests default to blocking UI interaction because, very often, if the user\n continues to interact with an application that is waiting for a server response, some\n kind of invalid or ambiguous situation can arise.\n <p>\n Examples include pressing a \"Save\" button a second time before the first save completes,\n making further edits while edits are still being saved, or trying to initiate editing on\n a grid that hasn't loaded data.\n <p>\n Defaulting to blocking the UI prevents these bad interactions, or alternatively, avoids\n the developer having to write repetitive code to block invalid interactions on every\n screen.\n <p>\n If an operation should ever be non-blocking, methods that initiate DataSource requests\n (such as ${isc.DocUtils.linkForRef('method:DataSource.fetchData')}) will generally have a\n <code>requestProperties</code> argument allowing <code>showPrompt</code> to be set to\n false for a specific request.",
        name:"showPrompt",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:ListGrid.animateRollUnder":{
        ref:"attr:ListGrid.animateRollUnder",
        flags:"IRWA",
        description:"If the ${isc.DocUtils.linkForRef('attr:ListGrid.rollUnderCanvas','rollUnderCanvas')} is enabled, setting this property\n to <code>true</code> ensures that when the <code>rollUnderCanvas</code> is displayed it\n is animated into view via ${isc.DocUtils.linkForRef('method:Canvas.animateShow')}. Note that the animation effect\n may be customized via ${isc.DocUtils.linkForRef('attr:Canvas.animateShowEffect')}, ${isc.DocUtils.linkForRef('attr:Canvas.animateShowTime')} and\n ${isc.DocUtils.linkForRef('attr:Canvas.animateShowAcceleration')} set in <code>rollUnderCanvasProperties</code>.",
        name:"animateRollUnder",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridAnimatedSelection')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "attr:DSRequest.callback":{
        ref:"attr:DSRequest.callback",
        flags:"IR",
        description:"A callback method that will be called with an instance of DSResponse, as sent by the server.\n Queuing does not affect callbacks in any way - your specified callback will be invoked for \n each DSRequest that contained a callback regardless of whether the request was sent as part\n of a queue or not.\n <P>\n Note that if the request encounters an error (such as 500 server error), by default the\n callback will <b>not</b> be fired.  Instead, ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')} is called to\n invoke the default system-wide error handling.  Set ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError','willHandleError')}:true to have your\n callback invoked regardless of whether there are errors; however, make sure your callback\n properly handles malformed responses when ${isc.DocUtils.linkForRef('attr:RPCResponse.status')} is non-zero.  See the\n ${isc.DocUtils.linkForRef('group:errorHandling','error handling overview')} below for more details.",
        name:"callback",
        seeAlso:[
        ],
        valueType:"DSCallback",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "errorHandling"
        ]
    },
    "attr:SelectItem.autoFetchData":{
        ref:"attr:SelectItem.autoFetchData",
        flags:"IRA",
        description:"If this select item retrieves its options from a <code>dataSource</code>, should options\n be fetched from the server when the item is first drawn, or should this fetch be\n delayed until the user opens the pickList.\n <P>\n The default is true in order to allow the user to select a value via keyboard input\n while keyboard focus is on the SelectItem but the pickList has not actually been shown.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"attr:PickList.optionDataSource",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "class:NavigationBar":{
        methods:[
            "method:NavigationBar.setTitle",
            "method:NavigationBar.setLeftButtonTitle",
            "method:NavigationBar.setLeftButtonIcon",
            "method:NavigationBar.setShowLeftButton",
            "method:NavigationBar.setRightButtonTitle",
            "method:NavigationBar.setRightButtonIcon",
            "method:NavigationBar.setShowRightButton",
            "method:NavigationBar.navigationClick"
        ],
        ref:"class:NavigationBar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:NavigationBar.leftButtonTitle",
            "attr:NavigationBar.leftButtonIcon",
            "attr:NavigationBar.leftButton",
            "attr:NavigationBar.title",
            "attr:NavigationBar.titleLabel",
            "attr:NavigationBar.rightButtonTitle",
            "attr:NavigationBar.rightButtonIcon",
            "attr:NavigationBar.rightButton"
        ],
        description:"Navigation control implemented as a horizontal layout showing back and forward controls \n and a title.",
        name:"NavigationBar",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('navigationBar')}"
        ],
        inheritsFrom:"HLayout"
    },
    "method:StretchImgButton.iconClick":{
        ref:"method:StretchImgButton.iconClick",
        flags:"",
        description:" If this button is showing an ${isc.DocUtils.linkForRef('attr:StretchImgButton.icon','icon')}, a separate click\n handler for the icon may be defined as <code>this.iconClick</code>.\n Returning false will suppress the standard button click handling code.\n",
        name:"iconClick",
        seeAlso:[
        ],
        returns:{
            description:"false to suppress the standard button click event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:FormItem.valueIconWidth":{
        ref:"attr:FormItem.valueIconWidth",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} is specified, use this property to specify a width for\n the value icon written out.",
        name:"valueIconWidth",
        seeAlso:[
            {
                ref:"attr:FormItem.valueIconHeight",
                description:null
            },
            {
                ref:"attr:FormItem.valueIconSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "classAttr:RPCResponse.STATUS_TRANSACTION_FAILED":{
        ref:"classAttr:RPCResponse.STATUS_TRANSACTION_FAILED",
        flags:"R",
        description:"Indicates that the request was either never attempted or was rolled back, because \n automatic or user transactions are in force and another request in the same transaction\n failed.  Note that the request(s) that actually failed will have a code specific to the\n failure; it is only the requests that would otherwise have succeeded that are marked \n with this failure code.",
        name:"STATUS_TRANSACTION_FAILED",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-10",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "type:FetchMode":{
        ref:"type:FetchMode",
        values:[
            {
                description:"All records that match the current filter are fetched.  Sorting is                performed on the client.",
                value:"\"basic\""
            },
            {
                description:"Only requested ranges of records are fetched, with predictive fetch                ahead.  Sorting is performed on the server.",
                value:"\"paged\""
            },
            {
                description:"All records available from the DataSource are fetched.  Filtering by                search criteria and sorting are both performed on the client.",
                value:"\"local\""
            }
        ],
        description:"Mode of fetching records from the server.\n <P>\n Generally, \"paged\" mode should be used unless the maximum number of records is\n guaranteed to be small.",
        name:"FetchMode",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "fetching"
        ]
    },
    "attr:DataSource.clientOnly":{
        flags:"IR",
        type:"attr",
        ref:"attr:DataSource.clientOnly",
        description:"A clientOnly DataSource simulates the behavior of a remote data store by manipulating a\n static dataset in memory as ${isc.DocUtils.linkForRef('class:DSRequest','DSRequests')} are executed on it.  Any changes\n are lost when the user reloads the page or navigates away.\n <P>\n A clientOnly DataSource will return responses asynchronously, just as a DataSource\n accessing remote data does.  This allows a clientOnly DataSource to be used as a\n temporary placeholder while a real DataSource is being implemented - if a clientOnly\n DataSource is replaced by a DataSource that accesses a remote data store, UI code for\n components that used the clientOnly DataSource will not need be changed.\n <P>\n A clientOnly DataSource can also be used as a shared cache of modifiable data across\n multiple UI components when immediate saving is not desirable.  In this case, several\n components may interact with a clientOnly DataSource and get the benefit of\n ${isc.DocUtils.linkForRef('class:ResultSet')} behaviors such as automatic cache sync and in-browser data filtering\n and sorting.  When it's finally time to save, ${isc.DocUtils.linkForRef('attr:DataSource.cacheData')} can be\n inspected for changes and data can be saved to the original DataSource via\n ${isc.DocUtils.linkForRef('method:DataSource.addData')}, ${isc.DocUtils.linkForRef('method:DataSource.updateData')} and ${isc.DocUtils.linkForRef('method:DataSource.removeData')}, possibly in a\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','transactional queue')}.  Note that\n ${isc.DocUtils.linkForRef('method:DataSource.getClientOnlyDataSource')} lets you easily obtain a\n <code>clientOnly</code> DataSource representing a subset of the data available from a\n normal DataSource.  \n <P>\n See also ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} - a <code>cacheAllData</code> behaves like a write-through\n cache, performing fetch and filter operations locally while still performing remote save\n operations immediately.\n <P>\n ClientOnly DataSources can be populated programmatically via ${isc.DocUtils.linkForRef('attr:DataSource.cacheData')} - see\n ${isc.DocUtils.linkForRef('group:clientOnlyDataSources','this discussion')} for other ways to populate a\n client-only DataSource with data.",
        name:"clientOnly",
        setter:[
            "setClientOnly"
        ],
        valueType:"Boolean",
        seeAlso:[
        ],
        examples:[
            "${isc.DocUtils.linkForExampleId('localDataSource')}"
        ],
        serverDS:"allowed",
        defaultValue:"false",
        definingClass:"class:DataSource",
        groups:[
            "clientOnlyDataSources"
        ]
    },
    "method:EditContext.setDefaultPalette":{
        ref:"method:EditContext.setDefaultPalette",
        flags:"",
        description:"${isc.DocUtils.linkForRef('interface:Palette')} to use when an ${isc.DocUtils.linkForRef('object:EditNode')} is being created directly by this EditContext,\n instead of being created due to a user interaction with a palette (eg dragging from\n a ${isc.DocUtils.linkForRef('class:TreePalette')}, or clicking on ${isc.DocUtils.linkForRef('class:MenuPalette')}).\n <P>\n If no defaultPalette is provided, the EditContext uses an automatically created\n ${isc.DocUtils.linkForRef('class:HiddenPalette')}.",
        name:"setDefaultPalette",
        seeAlso:[
        ],
        valueType:"Palette",
        params:[
            {
                description:"the default Palette",
                optional:false,
                name:"palette",
                defaultValue:null,
                type:"Palette"
            }
        ],
        type:"method",
        defaultValue:"null",
        definingClass:"interface:EditContext"
    },
    "method:ListGridField.parseEditorValue":{
        ref:"method:ListGridField.parseEditorValue",
        flags:"",
        description:" Method used to convert the value displayed in an editor for some cell in this field into\n a raw value for saving.<br>\n Takes precedence over <code>parseEditorValue</code> defined at the grid level.\n\n",
        name:"parseEditorValue",
        seeAlso:[
            {
                ref:"method:ListGrid.parseEditorValue",
                description:null
            },
            {
                ref:"method:ListGridField.formatEditorValue",
                description:null
            }
        ],
        params:[
            {
                description:"value displayed in the editor for the cell",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"record object for the row being edited. May be null if this                          is a new row being added to the end of the list.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number for the cell.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"A pointer to the ListGrid displaying the cell",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid instance"
            }
        ],
        returns:{
            description:"raw value for the field derived from formatted value in editor",
            type:"any"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:Calendar.getDateLabelText":{
        ref:"method:Calendar.getDateLabelText",
        flags:"",
        description:" Returns the text to display between the navigation buttons above the Calendar - indicates \n the visible date range.\n",
        name:"getDateLabelText",
        seeAlso:[
        ],
        params:[
            {
                description:"one of \"day\", \"week\", \"month\" or \"timeline\"",
                optional:false,
                name:"viewName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the start of the visible date range",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the optional end of the visible date range",
                optional:true,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"a formatted date or date-range string appropriate to the passed view",
            type:"String"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:Canvas.snapOnDrop":{
        ref:"attr:Canvas.snapOnDrop",
        flags:"IRWA",
        description:"When this canvas is dropped onto an object supporting snap-to-grid, should it snap\n to the grid (true, the default) or just drop wherever the mouse is (false).",
        name:"snapOnDrop",
        seeAlso:[
            {
                ref:"attr:Canvas.snapToGrid",
                description:null
            },
            {
                ref:"method:Canvas.shouldSnapOnDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:FacetChart.setChartType":{
        ref:"method:FacetChart.setChartType",
        flags:"",
        description:" Method to change the current ${isc.DocUtils.linkForRef('type:ChartType','chartType')}.\n Will redraw the chart if drawn. \n Will use default settings for the new chart type for ${isc.DocUtils.linkForRef('attr:FacetChart.stacked','stacked')}\n and ${isc.DocUtils.linkForRef('attr:FacetChart.filled','filled')} if those values are null.\n <p>\n Note that for ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis')} charts this method changes the\n <code>chartType</code> for the main value axis only.\n\n",
        name:"setChartType",
        seeAlso:[
        ],
        params:[
            {
                description:"new chart type",
                optional:false,
                name:"chartType",
                defaultValue:null,
                type:"ChartType"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:RadioGroupItem.itemProperties":{
        ref:"attr:RadioGroupItem.itemProperties",
        flags:"IR",
        description:"Map of properties to apply to generated items within this RadioGroup. This allows you to \n customize the generated radio items for this item.",
        name:"itemProperties",
        seeAlso:[
        ],
        valueType:"RadioItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RadioGroupItem"
    },
    "attr:ListGridField.icons":{
        ref:"attr:ListGridField.icons",
        flags:"IRA",
        description:"If this field is editable, this property can be used to specify\n ${isc.DocUtils.linkForRef('attr:FormItem.icons','icons')} to be displayed in the editors displayed for this field",
        name:"icons",
        seeAlso:[
        ],
        valueType:"Array of FormItemIcon Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:Layout.dropLine":{
        ref:"attr:Layout.dropLine",
        flags:"R",
        description:"Line showed to mark the drop position when components are being dragged onto this Layout.\n A simple Canvas typically styled via CSS.  The default dropLine.styleName is\n \"layoutDropLine\".",
        name:"dropLine",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragMove')}"
        ],
        definingClass:"class:Layout"
    },
    "classMethod:DataSource.getSortSpecifiers":{
        ref:"classMethod:DataSource.getSortSpecifiers",
        flags:"",
        description:" Return a an array of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s, given an array of Strings in the format\n expected by ${isc.DocUtils.linkForRef('attr:DSRequest.sortBy')}.\n\n",
        name:"getSortSpecifiers",
        seeAlso:[
        ],
        params:[
            {
                description:"A list of sortBy strings in the format expected by ${isc.DocUtils.linkForRef('attr:DSRequest.sortBy')}",
                optional:false,
                name:"sortBy",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        returns:{
            description:"An array of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s equivalent to the passed in string array",
            type:"Array of String"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:Layout.layoutBottomMargin":{
        ref:"attr:Layout.layoutBottomMargin",
        flags:"IRW",
        description:"Space outside of all members, on the bottom side.  Defaults to ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')}.\n <P>\n Requires a manual call to <code>setLayoutMargin()</code> if changed on the fly.",
        name:"layoutBottomMargin",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "method:Dialog.saveData":{
        ref:"method:Dialog.saveData",
        flags:"A",
        description:" Method to save this Dialog's data. Called from <code>okClick()</code>,\n <code>applyClick()</code>.\n No default implementation - override to perform some action if required.\n\n",
        name:"saveData",
        seeAlso:[
            {
                ref:"method:Dialog.okClick",
                description:null
            },
            {
                ref:"method:Dialog.applyClick",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "attr:RichTextEditor.colorControls":{
        ref:"attr:RichTextEditor.colorControls",
        flags:"IRA",
        description:"Control group for modifying text color / background color. \n Consists of an array of ${isc.DocUtils.linkForRef('type:ControlName')}s and/or ${isc.DocUtils.linkForRef('class:Canvas')} instances.\n To display this group of controls for some RichTextEditor,\n include <code>\"formatControls\"</code> in the ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')} array.",
        name:"colorControls",
        seeAlso:[
        ],
        valueType:"Array of ControlName",
        defaultValue:"[\"color\", \"backgroundColor\"]",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "method:ImgButton.setSelected":{
        ref:"method:ImgButton.setSelected",
        flags:"",
        description:" Select this object.\n",
        name:"setSelected",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "classMethod:Process.getProcess":{
        ref:"classMethod:Process.getProcess",
        flags:"",
        description:" Get a Process instance by it's ID.  See ${isc.DocUtils.linkForRef('classMethod:Process.loadProcess')}.\n",
        name:"getProcess",
        seeAlso:[
        ],
        params:[
            {
                description:"process IDs to retrieve",
                optional:false,
                name:"processId",
                defaultValue:null,
                type:"Identifier"
            }
        ],
        returns:{
            description:"the process, or null if not loaded",
            type:"Process"
        },
        type:"classMethod",
        definingClass:"class:Process"
    },
    "attr:FilterBuilder.subClauseButtonPrompt":{
        ref:"attr:FilterBuilder.subClauseButtonPrompt",
        flags:"IR",
        description:"The hover prompt text for the subClauseButton.",
        name:"subClauseButtonPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Add Subclause\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.blur":{
        ref:"method:Canvas.blur",
        flags:"",
        description:" If this canvas has keyboard focus, blur it. After this method, the canvas\n will no longer appear focused and will stop receiving keyboard events.\n",
        name:"blur",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "method:Slider.setLabelWidth":{
        ref:"method:Slider.setLabelWidth",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.labelWidth')} property of the slider\n\n",
        name:"setLabelWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new label width",
                optional:false,
                name:"labelWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:Canvas.contextMenu":{
        ref:"attr:Canvas.contextMenu",
        flags:"IRWA",
        description:"Context menu to show for this object, an instance of the Menu widget.\n <P>\n Note: if ${isc.DocUtils.linkForRef('method:Canvas.destroy')} is called on a canvas, any specified context menu is\n not automatically destroyed as well. This is in contrast to ${isc.DocUtils.linkForRef('class:MenuButton')}s which\n automatically destroy their specified ${isc.DocUtils.linkForRef('attr:MenuButton.menu')} by default. The behavior\n is intentional as context menus are commonly reused across components.",
        name:"contextMenu",
        seeAlso:[
            {
                ref:"method:Canvas.showContextMenu",
                description:null
            }
        ],
        valueType:"Menu",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('contextMenus')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "cues"
        ]
    },
    "attr:DataSource.resultBatchSize":{
        ref:"attr:DataSource.resultBatchSize",
        flags:"IRWA",
        description:"Very advanced: for servers that do not support paging, and must return large numbers of XML\n records in one HTTP response, SmartClient breaks up the processing of the response\n in order to avoid the \"script running slowly\" dialog appearing for an end user.\n <P>\n If you have a relatively small number of records with a great deal of properties or\n subobjects on each record, and you have not set ${isc.DocUtils.linkForRef('attr:DataSource.dropExtraFields')} to eliminate unused\n data, and you see the \"script running slowly\" dialog, you may need to set this number\n lower.",
        name:"resultBatchSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"150",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:Canvas.shadowImage":{
        ref:"attr:Canvas.shadowImage",
        flags:"IRA",
        description:"Base name of the series of images for the sides, corners, and center of the shadow.\n <P>\n The actual image names fetched for the dropShadow combine the segment name and the\n <code>shadowDepth</code> setting.  For example, given \"ds.png\" as the base name, a depth of\n 4, and the top-left segment of the shadow, we'd use \"ds4_TL.png\".\n <P>\n The names for segments are the same as those given for controlling resizable edges; see\n ${isc.DocUtils.linkForRef('attr:Canvas.resizeFrom')}.  The center segment has the name \"center\".  The center segment is\n the only segment that doesn't include the depth in the URL, so the final image name for the\n center given a baseName of \"ds.png\" would be just \"ds_center.png\".",
        name:"shadowImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]ds.png\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "shadow"
        ]
    },
    "attr:HeaderLevel.titles":{
        ref:"attr:HeaderLevel.titles",
        flags:"IR",
        description:"Optional sparse array of titles for the spans on this headerLevel.  If a given span in this\n headerLevel has a corresponding entry in this array, it will be used as the span's title.\n <P> \n If not specified, default titles are generated (eg \"Q1\" for unit \"quarter\") and then passed\n into the ${isc.DocUtils.linkForRef('method:HeaderLevel.titleFormatter','formatter function')}, if one has been installed,\n for further customization.",
        name:"titles",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderLevel"
    },
    "attr:CubeGrid.fixedFacetValues":{
        ref:"attr:CubeGrid.fixedFacetValues",
        flags:"IR",
        description:"A ${isc.DocUtils.linkForRef('object:FacetValueMap')} describing the set of facet values that should be regarded as\n \"fixed\" in this cubeGrid.  These are used as fixed criteria for load on demand, and also\n allow using a dataset with more facets in it than are currently shown in the grid.",
        name:"fixedFacetValues",
        seeAlso:[
            {
                ref:"method:CubeGrid.addFacet",
                description:null
            },
            {
                ref:"method:CubeGrid.removeFacet",
                description:null
            }
        ],
        valueType:"FacetValueMap",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "classMethod:EventHandler.setNativeDragData":{
        ref:"classMethod:EventHandler.setNativeDragData",
        flags:"",
        description:" Sets the data available in a cross-frame HTML5 drag (see ${isc.DocUtils.linkForRef('attr:Canvas.useNativeDrag')}).\n <p>\n Data provided to this method must be valid for serialization to JSON via the\n ${isc.DocUtils.linkForRef('class:JSONEncoder')}, or can simply be a String.\n <p>\n Can only be called during the ${isc.DocUtils.linkForRef('method:Canvas.dragStart')} event (or methods called during the\n handling of that event).\n <p>\n Do not pass in sensitive data (e.g. passwords, auth/session tokens, credit card numbers, SSNs, etc.).\n",
        name:"setNativeDragData",
        seeAlso:[
        ],
        params:[
            {
                description:"data to make available to foreign frames",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Object | String"
            },
            {
                description:"text data to set. This is the text that users may see if the drag is dropped into an external application such as Notepad or a non-Smart&#67;lient/Smart&nbsp;GWT\n web application.",
                optional:true,
                name:"strData",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:EventHandler"
    },
    "attr:DataBoundComponent.removeSummaryFieldText":{
        ref:"attr:DataBoundComponent.removeSummaryFieldText",
        flags:"IRW",
        description:"Text for a menu item allowing users to remove a summary field",
        name:"removeSummaryFieldText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Remove summary format...\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Scrollbar.startImg":{
        ref:"attr:Scrollbar.startImg",
        flags:"IR",
        description:"The StretchItem for the start of a scrollbar (the \"scroll up\" or \"scroll left\" button\n image). The default is:\n <smartclient><code>{ name:\"start\", width:\"btnSize\", height:\"btnSize\" }</code></smartclient>\n <smartgwt><code>new StretchItem(\"start\", \"btnSize\", \"btnSize\")</code></smartgwt>",
        name:"startImg",
        seeAlso:[
        ],
        valueType:"StretchItem",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "method:Dialog.yesClick":{
        ref:"method:Dialog.yesClick",
        flags:"",
        description:" Handle a click on the 'yes' button of this Dialog.\n Default implementation is to return <code>true</code>.\n Override to do something else\n",
        name:"yesClick",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "method:CanvasItem.canEditChanged":{
        ref:"method:CanvasItem.canEditChanged",
        flags:"",
        description:" Notification method called when the ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')} setting is modified.\n Developers may make use of this to toggle between an editable and a read-only appearance\n of the ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas','canvas')}.\n <p>\n The default behavior is:\n <ul>\n <li>If <code>canvas</code> is a ${isc.DocUtils.linkForRef('class:DynamicForm')}, the form's ${isc.DocUtils.linkForRef('attr:DynamicForm.canEdit')}\n setting is set to <code>canEdit</code>.\n <li>${isc.DocUtils.linkForRef('method:CanvasItem.shouldDisableCanvas')} is called to determine if the <code>canvas</code> should\n be disabled.\n </ul>\n <p>\n Standard <code>CanvasItem</code>-based form items may customize the default behavior.\n For example, a ${isc.DocUtils.linkForRef('class:MultiComboBoxItem')} will hide its ${isc.DocUtils.linkForRef('attr:MultiComboBoxItem.comboForm','comboForm')}\n if the ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay','readOnlyDisplay')} is\n <smartclient>\"readOnly\" or \"static\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.ReadOnlyDisplayAppearance#READONLY} or\n {@link com.smartgwt.client.types.ReadOnlyDisplayAppearance#STATIC}</smartgwt>\n and also disable the buttons when made read-only.\n",
        name:"canEditChanged",
        seeAlso:[
            {
                ref:"method:CanvasItem.readOnlyDisplayChanged",
                description:null
            }
        ],
        returns:{
            description:"<code>false</code> to cancel the default behavior.",
            type:"boolean"
        },
        params:[
            {
                description:"New <code>canEdit</code> value",
                optional:false,
                name:"canEdit",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CanvasItem"
    },
    "method:DataSource.getUpdatedData":{
        ref:"method:DataSource.getUpdatedData",
        flags:"A",
        description:" Helper method to retrieve the updated data from a successful dataSource update or add \n operation.\n",
        name:"getUpdatedData",
        seeAlso:[
        ],
        params:[
            {
                description:"Update request object passed to the server. Note that this  request may have been modified by ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"Response returned by the server",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            },
            {
                description:"If ${isc.DocUtils.linkForRef('attr:DSResponse.data')} is empty, should data be  derived from the submitted request.",
                optional:false,
                name:"useDataFromRequest",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"data (DataSourceRecord || Array of DataSourceRecords} Updated data.",
            type:null
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:CheckboxItem.uncheckedImage":{
        ref:"attr:CheckboxItem.uncheckedImage",
        flags:"IRW",
        description:"URL for the image to display when this checkbox is not selected, or unchecked",
        name:"uncheckedImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/unchecked.gif\"",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSource.sqlPaging":{
        ref:"attr:DataSource.sqlPaging",
        flags:"IRW",
        description:"The paging strategy to use for this DataSource.  If this property is not set, the \n default paging strategy, specified with the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n setting <code>sql.defaultPaging</code>, is used.  \n <p>\n This setting can be overridden with the ${isc.DocUtils.linkForRef('attr:OperationBinding.sqlPaging')} property.\n <P>\n <b>NOTE:</b> Operations that involve a ${isc.DocUtils.linkForRef('attr:OperationBinding.customSQL','customSQL')} \n clause ignore this property, because customSQL operations usually need to be treated\n as special cases.  For these operations, the paging strategy comes from the \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} setting\n <code>sql.defaultCustomSQLPaging</code> or \n <code>sql.defaultCustomSQLProgressivePaging</code>, depending on whether or not \n ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressiveLoading')} is in force.  Note that these\n can always be overridden by a <code>sqlPaging</code> setting on the OperationBinding.",
        name:"sqlPaging",
        seeAlso:[
            {
                ref:"attr:OperationBinding.sqlPaging",
                description:null
            }
        ],
        valueType:"SQLPagingStrategy",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:MiniDateRangeItem.pickerIcon":{
        ref:"attr:MiniDateRangeItem.pickerIcon",
        flags:"IR",
        description:"Icon that launches a ${isc.DocUtils.linkForRef('class:DateChooser')} for choosing an absolute date.",
        name:"pickerIcon",
        seeAlso:[
        ],
        valueType:"FormItemIcon Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "method:ListGrid.getOriginalData":{
        ref:"method:ListGrid.getOriginalData",
        flags:"",
        description:" Returns the original, ungrouped data in the grid. If the grid is ungrouped,\n returns ${isc.DocUtils.linkForRef('method:ListGrid.getData')}.\n",
        name:"getOriginalData",
        seeAlso:[
        ],
        returns:{
            description:"The ungrouped data that is being displayed and observed",
            type:"object"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:ListGrid.selectRange":{
        ref:"method:ListGrid.selectRange",
        flags:"",
        description:" Select a contiguous range of records by index\n",
        name:"selectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start of selection range",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection range (non-inclusive)",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TileLayout.dragLine":{
        ref:"attr:TileLayout.dragLine",
        flags:"R",
        description:"Canvas used to display a drop indicator when a another canvas is dragged over this widget.",
        name:"dragLine",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileLayout"
    },
    "classMethod:DataSource.getAutoTitle":{
        ref:"classMethod:DataSource.getAutoTitle",
        flags:"",
        description:" Utility method to derive a reasonable user-visible title from an identifier.\n <P>\n The following approach is taken:\n <ul>\n <li> any underscores (_) or dollar signs ($) become spaces, except that there will never\n      be either a leading or trailing space.\n <li> if the fieldName is either entirely uppercase or lowercase, all words separated by\n      spaces are given a leading capital letter.  Example USER_NAME or user_name -> \"User\n      Name\".\n <li> if there is any use of mixed case, camelCaps convention is assumed, and the field name\n      is split into separate words based on 1) everywhere an uppercase letter appears after a\n      lowercase letter 2) everywhere a series of uppercase letters ends.  Letter case will\n      not be modified, with the exception that the first word or any word after an\n      underscore will have its first letter capitalized.  Examples: useHTTPProxy -> \"Use\n      HTTP Proxy\", audit_userName -> \"Audit User Name\"\n </ul>\n\n",
        name:"getAutoTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"identifier for which a title is desired.",
                optional:false,
                name:"identifier",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"auto-derived title",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:DataSource",
        groups:[
            "title"
        ]
    },
    "class:MockupElement":{
        methods:[
        ],
        ref:"class:MockupElement",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools"
        ],
        attrs:[
        ],
        description:"MockupElements are produced by the ${isc.DocUtils.linkForRef('group:balsamiqImport','Balsamiq Mockup Importer')} as\n placeholders for Balsamiq controls that cannot be meaningfully translated to SmartClient\n controls (such as the big red X markup control).\n <p>\n MockupElement is just an instance of Img that uses .png files stored in the\n tools/visualBuilder/mockups folder.  \n <p>\n MockupElement is not intended to be included in any final applications.",
        name:"MockupElement",
        seeAlso:[
        ],
        type:"class"
    },
    "type:DragTrackerMode":{
        ref:"type:DragTrackerMode",
        values:[
            {
                description:"Don't display a drag tracker at all",
                value:"\"none\""
            },
            {
                description:"Display an icon to represent the record(s) being dragged. Icon src is              derived from ${isc.DocUtils.linkForRef('method:ListGrid.getDragTrackerIcon')}",
                value:"\"icon\""
            },
            {
                description:"Display a title for the record being dragged. Title derived from              ${isc.DocUtils.linkForRef('method:ListGrid.getDragTrackerTitle')}",
                value:"\"title\""
            },
            {
                description:"Display the entire record being dragged",
                value:"\"record\""
            }
        ],
        description:"When records are being dragged from within a ListGrid, what sort of drag-tracker\n should be displayed?",
        name:"DragTrackerMode",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "dragTracker"
        ]
    },
    "attr:ValuesManager.autoSynchronize":{
        ref:"attr:ValuesManager.autoSynchronize",
        flags:"IRWA",
        description:"If explicitly set to false, prevents the ValuesManager from automatically propagating\n data value changes to its members.  You can manually synchronize member data values \n at any time with a call to ${isc.DocUtils.linkForRef('method:ValuesManager.synchronizeMembers')}.",
        name:"autoSynchronize",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager"
    },
    "attr:FormulaBuilder.samplePrompt":{
        ref:"attr:FormulaBuilder.samplePrompt",
        flags:"IRWA",
        getter:[
            "getSamplePrompt"
        ],
        description:"This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed.\n <P>\n Default value returns <P>\n <code>\n <i>For Record: + the value of the rows title-field <br>\n Output: + the result of he generated function<br>\n </i>\n </code>",
        name:"samplePrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&lt;nobr&gt;For record: ${title}&lt;/nobr&gt;&lt;br&gt;&lt;nobr&gt;Output: ${output}&lt;/nobr&gt;\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColorPicker.lumWidth":{
        ref:"attr:ColorPicker.lumWidth",
        flags:"IR",
        description:"Width of the Luminosity bar",
        name:"lumWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"15",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "method:ListGrid.fieldIsVisible":{
        ref:"method:ListGrid.fieldIsVisible",
        flags:"",
        description:" Check whether a field is currently visible\n\n",
        name:"fieldIsVisible",
        seeAlso:[
        ],
        params:[
            {
                description:"field to be checked",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"String | ListGridField"
            }
        ],
        returns:{
            description:"true if the field is currently visible, false otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:FilterBuilder.addClause":{
        ref:"method:FilterBuilder.addClause",
        flags:"",
        description:" Add a new ${isc.DocUtils.linkForRef('class:FilterClause')} to this FilterBuilder.\n <P>\n This API is intended for the rare use case of adding a highly customized FilterClause\n component that does not include the standard field/operator/value picking interface, instead\n providing a custom interface and returning a criterion via ${isc.DocUtils.linkForRef('method:FilterClause.getCriterion')}.\n <P>\n If you just want to programmatically add a new FilterClause showing a specific Criterion use\n ${isc.DocUtils.linkForRef('method:FilterBuilder.addCriterion')}.\n <P>\n If you want to use the standard field/operator/value interface but provide a custom control\n for editing the value, see ${isc.DocUtils.linkForRef('method:DataSource.addSearchOperator')} and ${isc.DocUtils.linkForRef('attr:Operator.editorType')}.\n \n",
        name:"addClause",
        seeAlso:[
        ],
        params:[
            {
                description:"A ${isc.DocUtils.linkForRef('class:FilterClause')} instance",
                optional:false,
                name:"filterClause",
                defaultValue:null,
                type:"FilterClause"
            }
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:DataSource.enumConstantProperty":{
        ref:"attr:DataSource.enumConstantProperty",
        flags:"IA",
        description:"The name of the property this DataSource uses for constant name when translating\n Java enumerated types to and from Javascript, if the ${isc.DocUtils.linkForRef('type:EnumTranslateStrategy')} is set\n to \"bean\".  Defaults to \"_constant\" if not set.\n <p>\n  This property is only applicable if you are using the SmartClient server",
        name:"enumConstantProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:Hilite.htmlAfter":{
        ref:"attr:Hilite.htmlAfter",
        flags:"IR",
        description:"HTML to append to the end of cell values where this hilite is applied.",
        name:"htmlAfter",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "classAttr:RPCManager.actionURL":{
        ref:"classAttr:RPCManager.actionURL",
        flags:"RW",
        description:"Specifies the default URL for RPCRequests and DSRequests that do not specify a\n URL.\n <p>\n URLs can be set on a per-request basis via ${isc.DocUtils.linkForRef('attr:RPCRequest.actionURL')}, or on a\n per-DataSource or per-operationType basis via ${isc.DocUtils.linkForRef('attr:DataSource.dataURL')} and\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataURL')} respectively.  However, note that in order to be able to\n make use of ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queuing')}, you should have all data loading and\n saving requests go to a single URL unless you are forced to use distinct URLs by legacy\n services.\n <p>\n The primary use case for setting the default <code>actionURL</code> is to add a CSRF / XSRF \n (<a href='http://en.wikipedia.org/wiki/Cross-site_request_forgery' target='_blank'>Cross-site Request Forgery</a>) \n token.  Assuming you are using a single URL for all data requests as covered above,\n adding a CSRF token to the default <code>actionURL</code> as a simple HTTP parameter\n will cause the CSRF token to be included in all RPCRequests and DSRequests from all\n DataSources without further effort.",
        name:"actionURL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"RPCManager.actionURL",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "attr:RelativeDateItem.valueFieldWidth":{
        ref:"attr:RelativeDateItem.valueFieldWidth",
        flags:"IRW",
        description:"The ${isc.DocUtils.linkForRef('attr:FormItem.width','width')} for the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.valueField','valueField')}\n in this item.  Defaults to the current default value for the width attribute on the \n ${isc.DocUtils.linkForRef('class:DateTimeItem')} class - this is assumed to be just wide enough to show a full \n datetime string, in the current global datetime format.\n <P>\n Setting the width globally on the ${isc.DocUtils.linkForRef('DateTimeItem.width','DateTimeItem')} class results\n in all text-based datetime entry fields assuming the same default width - this caters for\n custom date-time formatters that need differing amounts of space.",
        name:"valueFieldWidth",
        seeAlso:[
        ],
        valueType:"int | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:FacetChart.dataLabelHover":{
        ref:"method:FacetChart.dataLabelHover",
        flags:"",
        description:" Fires when the mouse hovers over a data label, that is, a text label showing values from\n the first facet.  For example, the labels underneath the X-axis of a column chart,\n labelling each column.\n\n",
        name:"dataLabelHover",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValue that was hovered",
                optional:false,
                name:"facetValue",
                defaultValue:null,
                type:"FacetValue"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drillCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "attr:ListGridField.autoFitWidthApproach":{
        ref:"attr:ListGridField.autoFitWidthApproach",
        flags:"IRW",
        description:"When a user requests column autofitting via the\n ${isc.DocUtils.linkForRef('method:ListGrid.getHeaderContextMenuItems','header contextmenu')} or via a\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerAutoFitEvent','mouse gesture')}, what autofit approach is used. If set, this\n setting overrides the autoFitWidthApproach specified at the ListGrid level.",
        name:"autoFitWidthApproach",
        seeAlso:[
        ],
        valueType:"AutoFitWidthApproach",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "autoFitFields"
        ]
    },
    "attr:ListGrid.groupByFieldSummaries":{
        ref:"attr:ListGrid.groupByFieldSummaries",
        flags:"IRWA",
        description:"If this grid is ${isc.DocUtils.linkForRef('attr:ListGrid.groupByField','grouped')}, and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true, this attribute may be set to an array of\n groupBy field names for which group summaries should appear.\n <P>\n This is particularly useful for listGrids grouped by more than one field as it allows developers\n to display the group summary for a particular nested group without showing a summary for every\n level of the tree.",
        name:"groupByFieldSummaries",
        setter:[
            "setGroupByFieldSummaries"
        ],
        seeAlso:[
            {
                ref:"attr:ListGrid.showGroupSummary",
                description:null
            }
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:WSRequest.headerData":{
        ref:"attr:WSRequest.headerData",
        flags:"IR",
        description:"Data to be serialized to form the SOAP headers, as a map from the header part name to the\n data.  For example, given WSDL like this:\n <pre>\n     &lt;soap:header part=\"SessionHeader\" message=\"tns:HeaderMessage\"/&gt;\n     &lt;soap:header part=\"CallOptions\" message=\"tns:HeaderMessage/&gt;\n </pre>\n <code>headerData</code> like this might be provided:\n <pre>\n     dsRequest.headerData = \n         { SessionHeader : <i>data</i>\n           CallOptions : <i>data</i> };\n </pre>\n The provided data will be serialized to XML by the\n ${isc.DocUtils.linkForRef('method:WebService.getInputHeaderSchema','SOAP header schema')} via\n ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')}",
        name:"headerData",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:WSRequest"
    },
    "method:ListGrid.getSortNumeralHTML":{
        ref:"method:ListGrid.getSortNumeralHTML",
        flags:"",
        description:" When multiple fields are sorted, this method returns the HTML for the sort-numeral that\n appears after the sort-arrows in the header-buttons of sorted fields.  If you don't want\n sort-numerals in the header-buttons, you can override this\n method to return null or an empty string, or set ${isc.DocUtils.linkForRef('attr:ListGrid.showSortNumerals')} to false.\n <P>\n Note that the sortIndex passed in is zero based. The default implementation of this method\n returns an HTML element with the ${isc.DocUtils.linkForRef('attr:ListGrid.sortNumeralStyle')} applied to it, containing the\n specified sortIndex incremented by 1 (therefore showing the more user-friendly 1-based\n numbering system).\n\n",
        name:"getSortNumeralHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"The name of a sort-field to get the  ${isc.DocUtils.linkForRef('attr:ListGrid.sortNumeralStyle','sortNumeral')} HTML for.",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"The sort index for the field.",
                optional:false,
                name:"sortIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"The HTML for this field's sortNumeral",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:FormItem.titleDoubleClick":{
        ref:"method:FormItem.titleDoubleClick",
        flags:"",
        description:" Notification method fired when the user double-clicks the title for this item\n",
        name:"titleDoubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item whose title was double-clicked",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Return false to cancel the doubleclick event. This will prevent the event from   bubbling up, suppressing\n   ${isc.DocUtils.linkForRef('method:Canvas.doubleClick','doubleClick')} on the form containing this item.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:Operator.fieldTypes":{
        ref:"attr:Operator.fieldTypes",
        flags:"IR",
        description:"List of types that this Operator is valid for.\n <P>\n If omitted, the operator is assumed to be valid for all FieldTypes unless a list of \n FieldTypes is passed to ${isc.DocUtils.linkForRef('method:DataSource.addSearchOperator')}.",
        name:"fieldTypes",
        seeAlso:[
        ],
        valueType:"Array of FieldType",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:RelativeDateItem.displayFormat":{
        ref:"attr:RelativeDateItem.displayFormat",
        deprecated:"in favor of RelativeDateItem.dateFormatter",
        flags:"IR",
        description:"Format for displaying dates in the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.valueField')} and ${isc.DocUtils.linkForRef('attr:RelativeDateItem.calculatedDateField')}.  \n Defaults to the system-wide default established by ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}, or\n if this item has its type specified as datetime, ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat')}.",
        name:"displayFormat",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "method:CubeGrid.selectFacetValues":{
        ref:"method:CubeGrid.selectFacetValues",
        flags:"",
        description:" Select/deselect the header showing a given set of facet values.\n\n",
        name:"selectFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValues to select the header of",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            },
            {
                description:"new selection state - if null defaults to true",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:Class.getClassName":{
        ref:"method:Class.getClassName",
        flags:"",
        description:"\n\tGets the name of this class as a string.\n\n",
        name:"getClassName",
        seeAlso:[
        ],
        returns:{
            description:"String name of this instance's Class object.",
            type:"string"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "group:autoChildUsage":{
        ref:"group:autoChildUsage",
        title:"Using AutoChildren",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"An AutoChild is an automatically generated subcomponent that a parent component creates to\n handle part of its presentation or functionality.  An example is the ${isc.DocUtils.linkForRef('class:Window')} component and\n its subcomponent the ${isc.DocUtils.linkForRef('attr:Window.header','header')}.\n\n <smartclient>\n <p>\n AutoChildren support a standard set of properties that can be used to customize or skin\n them.  The names of these properties are derived from the name of the AutoChild itself.\n These properties will generally not be separately documented for every AutoChild unless\n there are special usage instructions; the existence of the properties is implied whenever\n you see an AutoChild documented.\n <P>\n The properties affecting AutoChildren are:\n <dl>\n\n <dt> <b>\"show\" + name</b> (eg showHeader)\n <dd> Controls whether the AutoChild should be created and shown at all. Note that the\n first letter of the AutoChild name is uppercased for this property (\"header\" -> \"Header\").\n\n <dt> <b>name + \"Properties\"</b> (eg headerProperties)\n <dd> Properties to apply to the autoChild created by this particular instance of the\n parent component.  For example:\n <pre>\n        isc.Window.create({\n            ID: \"myWindow\",\n            headerProperties: { layoutMargin: 10 }\n        });\n </pre>\n The above applies a ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin','layoutMargin')} of 10 to the header of <code>myWindow</code>,\n increasing the empty space around the subcomponents of the header (buttons, title label,\n etc).\n <P>\n Generally, *Properties is null.  <b>Do not</b> use the *Properties mechanism for\n skinning.  See *Defaults next.\n\n <dt> <b>name + \"Defaults\"</b> (eg headerDefaults)\n <dd> Defaults that will be applied to the AutoChild created by any instance of the\n parent class.  *Defaults is used for skinning.  This property should never be set when\n creating an instance of the parent component, as it will generally wipe out defaults\n required for the component's operation.  Use ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults','changeDefaults()')}\n to alter defaults instead. This is generally as part of a custom skin and/or custom component\n creation - see the ${isc.DocUtils.linkForRef('group:autoChildren','overview of AutoChildren for component development')}\n for details and examples.\n\n <dt> <b>name + \"Constructor\"</b> (eg headerConstructor)\n <dd> SmartClient Class of the component to be created.  An advanced option, this\n property should generally only be used when there is documentation encouraging you to do\n so.  For example, ${isc.DocUtils.linkForRef('class:ListGrid')} offers the ability to use simple CSS-based headers or\n more complex ${isc.DocUtils.linkForRef('class:StretchImg')} based headers via ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonConstructor')}.\n The constructor can also be specified using the <code>_constructor</code> property in the\n defaults for the AutoChild.\n </dl>\n </smartclient><smartgwt>\n <p>\n AutoChildren support four standard configuration mechanisms that can be used to customize or skin\n them. Note, however, that configuring AutoChildren in Smart&nbsp;GWT is advanced usage.\n <p>\n To determine which AutoChildren exist for a particular component type, search the class' Javadocs\n for \"AutoChild\" as there is a getter for each AutoChild that is supported. In the case\n of a ${isc.DocUtils.linkForRef('group:multiAutoChildren','MultiAutoChild')}, the getter is non-functional (always\n returns null) and exists only to make you aware that the MultiAutoChild exists.\n <p>\n The four different ways to configure AutoChildren in Smart&nbsp;GWT are:\n <dl>\n <dt> <b>Visibility</b>\n <dd> Controls whether the AutoChild should be created and shown at all.  The\n {@link com.smartgwt.client.widgets.Canvas#setAutoChildVisibility(String, boolean)} or\n {@link com.smartgwt.client.widgets.form.fields.FormItem#setAutoChildVisibility(String, boolean)} API\n as appropriate is used to change this property for the named AutoChild.\n\n <dt> <b>Properties</b>\n <dd> Properties to apply to the AutoChild created by a particular instance of the\n parent component. In the case of a ${isc.DocUtils.linkForRef('type:MultiAutoChild')}, the properties are applied to each\n instance created by the parent.\n <P>\n To change the properties of an AutoChild of a widget, the\n {@link com.smartgwt.client.widgets.Canvas#setAutoChildProperties(String, com.smartgwt.client.widgets.Canvas)} or\n {@link com.smartgwt.client.widgets.Canvas#setAutoChildProperties(String, FormItem)} API\n is used. To change the properties of an AutoChild of a form item, the\n {@link com.smartgwt.client.widgets.form.fields.FormItem#setAutoChildProperties(String, com.smartgwt.client.widgets.Canvas)} or\n {@link com.smartgwt.client.widgets.form.fields.FormItem#setAutoChildProperties(String, FormItem)}\n API is used. For example:\n <pre>\n        final Window myWindow = new Window();\n        final Layout headerProperties = new Layout();\n        headerProperties.setLayoutMargin(10);\n        myWindow.setAutoChildProperties(\"header\", headerProperties);\n </pre>\n The above applies a ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin','layoutMargin')} of 10 to the header of <code>myWindow</code>,\n increasing the empty space around the subcomponents of the header (buttons, title label,\n etc).\n <P>\n <b>Do not</b> use the Properties mechanism for skinning.  See Defaults next.\n\n <dt> <b>Defaults</b>\n <dd> Defaults that will be applied to the AutoChild created by any instance of the\n parent class.  Changing the defaults is used for skinning.  The <code>changeAutoChildDefaults()</code>\n static method of the target Smart&nbsp;GWT class is used to change the defaults for all\n instances of the class.  For example, to change the ${isc.DocUtils.linkForRef('attr:Window.header','Window.header')}\n defaults, the {@link com.smartgwt.client.widgets.Window#changeAutoChildDefaults(String, com.smartgwt.client.widgets.Canvas)}\n API is used passing \"header\" for the <code>autoChildName</code>.\n <p>\n <code>changeAutoChildDefaults()</code> must be called before any\n components are created, and will generally be the first thing in your module's\n <code>onModuleLoad()</code> function.  Alternatively, you can use the JavaScript equivalent\n <code>Class.changeDefaults()</code> inside of a load_skin.js file - see <i>Skinning\n AutoChildren</i> below.\n\n <dt> <b>Constructor</b>\n <dd> &#83;martClient Class of the component to be created.  An advanced option, the\n AutoChild constructor should generally only be changed when there is documentation encouraging\n you to do so.  For example, ${isc.DocUtils.linkForRef('class:ListGrid')} offers the ability to use simple CSS-based headers or\n more complex ${isc.DocUtils.linkForRef('class:StretchImg')} headers via\n <code>listGridInstance.setAutoChildConstructor(\"headerButton\", \"StretchImg\")</code>.\n To change the constructor of AutoChildren, the\n {@link com.smartgwt.client.widgets.Canvas#setAutoChildConstructor(String, String)} or\n {@link com.smartgwt.client.widgets.form.fields.FormItem#setAutoChildConstructor(String, String)}\n API is used.\n <smartgwt>\n <p> In order for any class to be referenced within a constructor you must\n register the class for reflection, and use the fully qualified name of the target\n class. See ${isc.DocUtils.linkForRef('group:reflection','Reflection')} for details.\n </smartgwt>\n <p>\n For some drastic customizations of an AutoChild where the constructor is changed, the\n signature of the <code>get[AutoChild]()</code> method may have too specific a return type and the\n {@link com.smartgwt.client.widgets.Canvas#getCanvasAutoChild(String)},\n {@link com.smartgwt.client.widgets.Canvas#getFormItemAutoChild(String)},\n {@link com.smartgwt.client.widgets.form.fields.FormItem#getCanvasAutoChild(String)}, or\n {@link com.smartgwt.client.widgets.form.fields.FormItem#getFormItemAutoChild(String)} API\n as appropriate would need to be used instead to retrieve the AutoChild instance.\n </dl>\n <p>\n <b>NOTE:</b> When setting Properties or Defaults in Smart&nbsp;GWT, attributes and event\n handlers can be set, but override points are not supported.\n </smartgwt>\n\n <p>\n The AutoChild system can be used to create both ${isc.DocUtils.linkForRef('attr:Canvas.children','direct children')}\n and indirect children (children of children).  For example, the\n ${isc.DocUtils.linkForRef('attr:Window.minimizeButton','minimizeButton')} of the Window is also an autoChild, even\n though it is actually located within the window header.\n <P>\n <h4>Skinning AutoChildren</h4>\n <P>\n Skinning AutoChildren by changing the AutoChild defaults is typically done for two purposes:\n <ul>\n <li> Changing the default appearance or behavior of a component, for example, making all\n Window headers shorter\n <li> Creating a customized variation of an existing component <i>while retaining the\n base component unchanged</i>.  For example, creating a subclass of Window called\n \"PaletteWindow\" with a very compact appearance, while leaving the base Window class\n unchanged so that warning dialogs and other core uses of Windows do not look like\n PaletteWindows.\n </ul>\n The best code examples for skinning are in the load_skin.js file for the \"&#83;martClient\"\n skin, in <code>isomorphic/skins/&#83;martClient/load_skin.js</code>.\n <P>\n <h4>Passthroughs (eg window.headerStyle)</h4>\n <P>\n In many cases a component will provide shortcuts to skinning or customizing its\n AutoChildren, such as ${isc.DocUtils.linkForRef('attr:Window.headerStyle')}, which becomes header.styleName.  When\n these shortcuts exist, they must be used instead of the more general AutoChild skinning\n system.\n <P>\n <h4>Safe Skinning</h4>\n <P>\n Before skinning an AutoChild consider the ${isc.DocUtils.linkForRef('group:safeSkinning','safe skinning guidelines')}.\n <P>\n <h4>Accessing AutoChildren Dynamically</h4>\n <P>\n For a component \"Window\" with an AutoChild named \"header\", if you create a Window\n called <code>myWindow</code>, the header AutoChild is available\n <smartclient>as <code>myWindow.header</code></smartclient>\n <smartgwt>via <code>myWindow.getHeader()</code></smartgwt>.\n <P>\n Unless documented otherwise, an AutoChild should be considered an internal part of a\n component.  Always configure AutoChildren by APIs on the parent component when they\n exist.  It makes sense to access an AutoChild for troubleshooting purposes or for\n workarounds, but in general, an AutoChild's type, behavior, and internal structure are\n subject to change without notice in future SmartClient versions.\n <P>\n Accessing an AutoChild may give you a way to make a dynamic change to a component that\n is not otherwise supported by the parent component (for example, changing a text label\n where there is no setter on the parent).  Before using this approach, consider whether\n simply recreating the parent component from scratch is a viable option. This approach\n is more than fast enough for most smaller components, and will not create a reliance on\n unsupported APIs.",
        name:"autoChildUsage",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MenuButton.hiliteAccessKey":{
        ref:"attr:MenuButton.hiliteAccessKey",
        flags:"IR",
        description:"If this MenuButton has a specified ${isc.DocUtils.linkForRef('attr:Canvas.accessKey','accessKey')}, underline it\n in the title of the button by default",
        name:"hiliteAccessKey",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "attr:ListGrid.clearAllSortingText":{
        ref:"attr:ListGrid.clearAllSortingText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid, this\n attribute will be shown as the menu item title to clear any existing sort on all fields.  This\n menu-item is displayed only in the context menu for the sorter button.",
        name:"clearAllSortingText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Clear All Sorting\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Menu.iconBodyStyleName":{
        ref:"attr:Menu.iconBodyStyleName",
        flags:"IR",
        description:"If set, the CSS style used for the body of this menu when there <em>is</em> an icon field.\n In RTL mode, the iconBodyStyleName is suffixed with \"RTL\", which allows skins to apply\n different styles in LTR and RTL modes.\n <p>\n Note: Any skin which uses iconBodyStyleName should add \"RTL\" styles as well, even if\n identical to LTR styles. Otherwise, menus may lose their styling in RTL mode.",
        name:"iconBodyStyleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu",
        groups:[
            "appearance"
        ]
    },
    "method:Canvas.imgHTML":{
        ref:"method:Canvas.imgHTML",
        flags:"A",
        description:" Generates the HTML for an image unique to this Canvas.\n <P>\n The full URL for the image will be formed according to the rules documented for\n <code>${isc.DocUtils.linkForRef('method:Canvas.getImgURL')}</code>.\n <P>\n The created image will have an identifier unique to this Canvas, and subsequent calls to\n <code>${isc.DocUtils.linkForRef('method:Canvas.getImage')}</code> and\n <code>${isc.DocUtils.linkForRef('method:Canvas.setImage')}</code>\n with the name passed to this function will act on the image object produced by the HTML\n returned from this call.\n\n",
        name:"imgHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"URL local to the skin or application directory.<br>\t\tNOTE: instead of passing several parameters, you can pass an object as the 'src'\n      parameter with properties for all the various function parameters with, eg:<br>\n      canvas.imgHTML( {src:\"foo\", width:10, height:10} );",
                optional:false,
                name:"src",
                defaultValue:null,
                type:"SCImgURL"
            },
            {
                description:"width of the image",
                optional:true,
                name:"width",
                defaultValue:null,
                type:"number"
            },
            {
                description:"height of the image",
                optional:true,
                name:"height",
                defaultValue:null,
                type:"number"
            },
            {
                description:"name for the image",
                optional:true,
                name:"name",
                defaultValue:null,
                type:"string"
            },
            {
                description:"additional attributes to write in the tag",
                optional:true,
                name:"extraStuff",
                defaultValue:null,
                type:"string"
            },
            {
                description:"image-specific image directory to override the default                                  for this Canvas",
                optional:true,
                name:"imgDir",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"HTML to draw the image.",
            type:"string"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "images"
        ]
    },
    "type:ZoomStartPosition":{
        ref:"type:ZoomStartPosition",
        values:[
            {
                description:"start at the beginning of the range",
                value:"\"start\""
            },
            {
                description:"start at the end of the range",
                value:"\"end\""
            }
        ],
        description:null,
        name:"ZoomStartPosition",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:NavigationBar.leftButton":{
        ref:"attr:NavigationBar.leftButton",
        flags:"IR",
        description:"The button displayed to the left of the title in this NavigationBar. By default this\n will be a ${isc.DocUtils.linkForRef('class:NavigationButton')} with ${isc.DocUtils.linkForRef('attr:NavigationButton.direction','direction')} set\n to <code>\"back\"</code>.",
        name:"leftButton",
        seeAlso:[
        ],
        valueType:"AutoChild NavigationButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "group:thumb":{
        ref:"group:thumb",
        refs:[
            "attr:Scrollbar.allowThumbDownState",
            "attr:Scrollbar.allowThumbOverState",
            "attr:Scrollbar.thumbMinSize",
            "attr:Scrollbar.thumbOverlap",
            "attr:Scrollbar.startThumbOverlap",
            "attr:Scrollbar.endThumbOverlap",
            "attr:Scrollbar.thumbInset"
        ],
        name:"thumb",
        seeAlso:[
        ],
        type:"group"
    },
    "method:TabSet.saveTabTitle":{
        ref:"method:TabSet.saveTabTitle",
        flags:"",
        description:" If the user is currently editing a tab title (see ${isc.DocUtils.linkForRef('attr:TabSet.canEditTabTitles')}), save\n the edited tab title and hide the editor.\n",
        name:"saveTabTitle",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:DrawImage.top":{
        ref:"attr:DrawImage.top",
        flags:"IRW",
        description:"Top coordinate in pixels relative to the DrawPane.",
        name:"top",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawImage"
    },
    "method:EditContext.serializeAllEditNodesAsJSON":{
        ref:"method:EditContext.serializeAllEditNodesAsJSON",
        flags:"",
        description:" Encode the tree of ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} to a JSON representation\n of ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')}. The result can be supplied to \n ${isc.DocUtils.linkForRef('method:EditContext.addPaletteNodesFromJSON','addPaletteNodesFromJSON()')} to recreate\n the EditNodes.\n\n",
        name:"serializeAllEditNodesAsJSON",
        seeAlso:[
            {
                ref:"method:EditContext.addPaletteNodesFromJSON",
                description:null
            }
        ],
        params:[
            {
                description:"If true, specify DataSources in full rather than                               assuming they can be downloaded from the server.\n                               Defaults to false.",
                optional:true,
                name:"serverless",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"a JSON representation of PaletteNodes which can be used to                  recreate the tree of EditNodes.",
            type:"String"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:Canvas.getScrollLeft":{
        ref:"method:Canvas.getScrollLeft",
        flags:"A",
        description:" Get the number of pixels this Canvas is scrolled from its left edge.\n",
        name:"getScrollLeft",
        seeAlso:[
        ],
        returns:{
            description:"scrollLeft",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning",
            "scrolling"
        ]
    },
    "attr:MultiGroupPanel.initialGrouping":{
        ref:"attr:MultiGroupPanel.initialGrouping",
        flags:"IR",
        description:"The initial group configuration to show in the \n ${isc.DocUtils.linkForRef('attr:MultiGroupPanel.optionsGrid','optionsGrid')}.",
        name:"initialGrouping",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "classMethod:isc.addDefaults":{
        ref:"classMethod:isc.addDefaults",
        flags:"",
        description:"\n Copy any properties that do not already have a value in destination.  Null and zero values\n are not overwritten, but 'undef' values will be.\n\n",
        name:"addDefaults",
        seeAlso:[
        ],
        params:[
            {
                description:"Object to which properties will be added.",
                optional:false,
                name:"destination",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"Object from which properties will be added.",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"Object"
            }
        ],
        returns:{
            description:"The destination object is returned.",
            type:"Object"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:FieldPicker.availableTitleTitle":{
        ref:"attr:FieldPicker.availableTitleTitle",
        flags:"IR",
        description:"The title displayed for the title property of the available fields",
        name:"availableTitleTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Name\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "group:dragDrop":{
        ref:"group:dragDrop",
        refs:[
            "classMethod:EventHandler.setDragTracker"
        ],
        name:"dragDrop",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DynamicForm.colWidths":{
        ref:"attr:DynamicForm.colWidths",
        flags:"IRW",
        description:"An array of widths for the columns of items in this form's layout grid. \n <P>\n If specified, these widths should sum to the total width of the form (form.width).\n If not specified, we assume every other column will contain form item titles, and so\n should have <code>form.titleWidth</code>, and all other columns should share the\n remaining space.\n <P>\n Acceptable values for each element in the array are:<br>\n <ul>\n <li>A number (e.g. 100) representing the number of pixel widths to allocate to a\n     column.\n <li>A percent (e.g. 20%) representing the percentage of the total form.width to\n     allocate to a column.\n <li>\"*\" (all) to allocate remaining width (form.width minus all specified column\n     widths). Multiple columns can use \"*\", in which case remaining width is divided\n     between all columns marked \"*\".\n </ul>",
        name:"colWidths",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('columnSpanning')}"
        ],
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "attr:ListGrid.hiliteRowOnFocus":{
        ref:"attr:ListGrid.hiliteRowOnFocus",
        flags:"IRW",
        description:"When the grid body gets keyboard focus, should we highlight the current focus row,\n using the rollover cell style?\n <P>\n This property may be explicitly set to control this behavior independently of\n ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOver')}.\n Otherwise (if this property is null), we will show the roll-over styling for the\n keyboard focus row if ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOver')} is true.",
        name:"hiliteRowOnFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:HLayout":{
        methods:[
        ],
        exampleConfig:"HLayout.xml",
        ref:"class:HLayout",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
        ],
        description:"A subclass of Layout that applies a sizing policy along the horizontal axis, interpreting\n  percent and \"*\" sizes as proportions of the width of the layout. HLayouts will set any members\n  that do not have explicit heights to match the layout.",
        name:"HLayout",
        seeAlso:[
            {
                ref:"attr:Layout.hPolicy",
                description:null
            }
        ],
        type:"class"
    },
    "attr:DataBoundComponent.canEditFieldAttribute":{
        ref:"attr:DataBoundComponent.canEditFieldAttribute",
        flags:"IRA",
        description:"If this component is bound to a dataSource, this attribute may be specified to customize\n what fields from the dataSource may be edited by default. For example the ${isc.DocUtils.linkForRef('class:SearchForm')}\n class has this attribute set to <code>\"canFilter\"</code> which allows search forms to edit\n dataSource fields marked as <code>canEdit:false</code> (but not those marked as\n <code>canFilter:false</code>).\n <P>\n Note that if <code>canEdit</code> is explicitly specified on a field in \n the ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')} array, that property will be respected in preference to \n the canEditAttribute value. (See ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')}, ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit')}).\n Also note that individual dataBoundComponents may have additional logic around whether a field\n can be edited - for example ${isc.DocUtils.linkForRef('method:ListGrid.canEditCell')} may be overridden.",
        name:"canEditFieldAttribute",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"\"canEdit\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:GridRenderer.autoFit":{
        ref:"attr:GridRenderer.autoFit",
        flags:"IRWA",
        description:"If true, make columns only wide enough to fit content, ignoring any widths specified.\n Overrides fixedFieldWidths.",
        name:"autoFit",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "sizing"
        ]
    },
    "method:List.getRange":{
        ref:"method:List.getRange",
        flags:"",
        description:" Return the items between position start and end, non-inclusive at the end.\n\n",
        name:"getRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start position",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end position",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"subset of the array from start -&gt; end-1",
            type:"Array"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "method:TimeItem.getHourValues":{
        ref:"method:TimeItem.getHourValues",
        flags:"A",
        description:" Returns an array of the current valid hour values, whether set directly as \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourValues')} or generated according to \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourMinValue','hourMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourMaxValue','hourMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.hourIncrement','hourIncrement')}.\n",
        name:"getHourValues",
        seeAlso:[
        ],
        returns:{
            description:"array of available Hour values",
            type:"Array of Number"
        },
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:AdvancedHiliteEditor.hiliteIcons":{
        ref:"attr:AdvancedHiliteEditor.hiliteIcons",
        flags:"IRW",
        description:"Specifies a list of icons that can be used in hilites.\n <P>\n <code>hiliteIcons</code> should be specified as an Array of ${isc.DocUtils.linkForRef('type:SCImgURL')}.\n When present, ${isc.DocUtils.linkForRef('class:HiliteRule','hilite rules')}\n will offer the user a drop down for picking one of these icons.\n <P>\n If the user picks an icon, the created hiliting rule will have ${isc.DocUtils.linkForRef('attr:Hilite.icon')} set to \n the chosen icon.  ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconPosition')} controls where the icon will \n appear for that field -- the default is that it appears in front of the normal cell content.",
        name:"hiliteIcons",
        seeAlso:[
        ],
        valueType:"Array of SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "attr:FusionChart.chartURL":{
        ref:"attr:FusionChart.chartURL",
        flags:"IR",
        description:"Full URL to the chart.  Needed only if you have renamed the charts such that automatic\n URL formation won't work.",
        name:"chartURL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FusionChart"
    },
    "method:HibernateBrowser.getGeneratedDataSource":{
        ref:"method:HibernateBrowser.getGeneratedDataSource",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('class:DataSource')} most recently auto-derived by this HibernateBrowser.  This will\n correspond to the currently-selected class mapping.\n",
        name:"getGeneratedDataSource",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:HibernateBrowser"
    },
    "object:DetailViewerRecord":{
        methods:[
        ],
        ref:"object:DetailViewerRecord",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/DetailViewer"
        ],
        attrs:[
            "attr:DetailViewerRecord.linkText"
        ],
        description:"A DetailViewerRecord is an object literal with properties that define the values for the\n various fields of a ${isc.DocUtils.linkForRef('class:DetailViewer')}.\n <p>\n For example a DetailViewer that defines the following fields:\n <pre>\n fields : [\n     {name: \"field1\"},\n     {name: \"field2\"}\n ],\n </pre>\n Might have the following data:\n <pre>\n data : [\n     {field1: \"foo\", field2: \"bar\"},\n     {field1: \"field1 value\", field2: \"field2 value\"}\n ]\n </pre>\n Each element in the data array above is an instance of DetailViewerRecord - notice that\n these are specified simply as object literals with properties.",
        name:"DetailViewerRecord",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:Lane.name":{
        ref:"attr:Lane.name",
        flags:"IR",
        description:"To determine whether a CalendarEvent should be placed in this lane, the value of this \n attribute is compared with the ${isc.DocUtils.linkForRef('attr:Calendar.laneNameField')} property on the CalendarEvent.",
        name:"name",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Lane"
    },
    "attr:ImgSectionHeader.controlsLayout":{
        ref:"attr:ImgSectionHeader.controlsLayout",
        flags:"IR",
        description:"A ${isc.DocUtils.linkForRef('class:Layout')} containing specified ${isc.DocUtils.linkForRef('attr:ImgSectionHeader.controls')} if any.  Sets\n ${isc.DocUtils.linkForRef('attr:Layout.membersMargin')}:5, ${isc.DocUtils.linkForRef('attr:Layout.defaultLayoutAlign')}:\"center\", and\n RTL-sensitive ${isc.DocUtils.linkForRef('attr:Layout.align')} (right by default).",
        name:"controlsLayout",
        seeAlso:[
        ],
        valueType:"AutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSectionHeader"
    },
    "method:SplitPane.showNavigationPane":{
        ref:"method:SplitPane.showNavigationPane",
        flags:"",
        description:" Causes a transition to the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')}.\n",
        name:"showNavigationPane",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "classAttr:Browser.isSupported":{
        ref:"classAttr:Browser.isSupported",
        flags:"R",
        description:"Whether SmartClient supports the current browser.\n <P>\n Note that this flag will only be available on browsers that at least support basic\n JavaScript.",
        name:"isSupported",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:null,
        type:"classAttr",
        definingClass:"class:Browser"
    },
    "attr:ListGridField.cellIcon":{
        ref:"attr:ListGridField.cellIcon",
        flags:"IR",
        description:"For a field of type:\"icon\" only, set the icon that appears in body cells.  Unless\n setting ${isc.DocUtils.linkForRef('attr:ListGridField.icon','field.icon')}, setting field.cellIcon will not show an\n icon in the header.\n <p>\n To change this property after fields have been passed to ${isc.DocUtils.linkForRef('method:ListGrid.setFields')},\n use ${isc.DocUtils.linkForRef('method:ListGrid.setFieldCellIcon')}.",
        name:"cellIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:FilterClause.getValueFieldProperties":{
        ref:"method:FilterClause.getValueFieldProperties",
        flags:"",
        description:" \n Override to return properties for the FormItem(s) used for the \"value\" field displayed in this\n filterClause.\n <P>\n Default implementation simply calls ${isc.DocUtils.linkForRef('method:FilterBuilder.getValueFieldProperties')} on the\n filterBuilder in which this clause is displayed.\n <P>\n Note that the ${isc.DocUtils.linkForRef('attr:Operator.valueType')} impacts when this method is called. For operators with\n valueType <code>\"fieldType\"</code> or <code>\"custom\"</code>, a single value field is displayed.\n For operators with valueType <code>\"valueRange\"</code> two value-field items are displayed\n (one for the start and one for the end position). The <code>valueItemType</code> parameter may\n be used to determine which form item is being generated.\n \n",
        name:"getValueFieldProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"type of the DataSource field for this filter row",
                optional:false,
                name:"type",
                defaultValue:null,
                type:"FieldType"
            },
            {
                description:"name of the DataSource field for this filter row",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"${isc.DocUtils.linkForRef('type:OperatorId')} for the chosen operator",
                optional:false,
                name:"operatorId",
                defaultValue:null,
                type:"OperatorId"
            },
            {
                description:"What valueItem is being generated.",
                optional:false,
                name:"itemType",
                defaultValue:null,
                type:"ValueItemType"
            }
        ],
        returns:{
            description:"properties for the value field",
            type:"FormItem Properties"
        },
        type:"method",
        definingClass:"class:FilterClause"
    },
    "attr:ResultTree.keepParentsOnFilter":{
        ref:"attr:ResultTree.keepParentsOnFilter",
        flags:"IR",
        description:"If set, tree-based filtering is performed such that parent nodes are kept as long as\n they have children that match the filter criteria, even if the parents themselves do not\n match the filter criteria. If not set, filtering will exclude parent nodes not matching\n the criteria and all nodes below it in the tree.\n <P>\n When <code>keepParentsOnFilter</code> is enabled for paged ResultTrees, server-side\n filtering is required.\n <P>\n When enabled for non-paged trees, ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"local\"')} is automatically\n enabled so that all filtering behavior shifts to the client-side and full criteria are\n no longer sent to the server.  Instead, server fetches will always load all nodes, or\n with ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand')}:true, will always load all nodes under a given parent.\n This means that the server does not need to implement special tree filtering logic.\n <P>\n Optionally, ${isc.DocUtils.linkForRef('attr:ResultTree.serverFilterFields')} can be set to a list of field names that\n will be sent to the server whenever they are present in the criteria.",
        name:"keepParentsOnFilter",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultTree",
        groups:[
            "treeDataBinding"
        ]
    },
    "method:TileGrid.selectionChanged":{
        ref:"method:TileGrid.selectionChanged",
        flags:"A",
        description:" Called when selection changes within this tileGrid. Note this method fires for\n each record for which selection is modified - so when a user clicks inside a tileGrid this\n method will typically fire twice (once for the old record being deselected, and once for\n the new record being selected).\n\n",
        name:"selectionChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"record for which selection changed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"New selection state (true for selected, false for unselected)",
                optional:false,
                name:"state",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:DateChooser.previousYearButton":{
        ref:"attr:DateChooser.previousYearButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} that shifts\n the calendar view backward by a year.",
        name:"previousYearButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:ListGrid.useRemoteValidators":{
        ref:"attr:ListGrid.useRemoteValidators",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.saveLocally')} is specified, but this grid is bound to a DataSource which\n includes remote field validators, by default edits will be saved synchronously and\n these validators will not be executed.<br>\n Set this property to <code>true</code> to ensure these remote validators are called when\n saving edits in saveLocally mode. Note that since these remote validators need to run on\n the server, saving with this property set is asynchronous, even though the data that\n ultimately gets updated is already present on the client.",
        name:"useRemoteValidators",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "object:SimpleGradient":{
        methods:[
        ],
        ref:"object:SimpleGradient",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/Gradients"
        ],
        attrs:[
            "attr:SimpleGradient.direction",
            "attr:SimpleGradient.startColor",
            "attr:SimpleGradient.endColor"
        ],
        description:"Definition of a simple linear gradient defined by 2 colors and a ${isc.DocUtils.linkForRef('attr:SimpleGradient.direction','direction')}.",
        name:"SimpleGradient",
        seeAlso:[
        ],
        type:"object",
        inheritsFrom:"Gradient"
    },
    "group:upload":{
        ref:"group:upload",
        title:"Uploading Files",
        treeLocation:[
            "Client Reference/Forms/Form Items/FileItem"
        ],
        refs:[
            "class:UploadItem",
            "class:FileItem",
            "class:MultiFileItem",
            "class:MultiFilePicker",
            "class:ViewFileItem",
            "attr:FileItem.editForm",
            "attr:FileItem.uploadItem",
            "attr:FileItem.displayForm",
            "attr:FileItem.displayItem",
            "attr:FileItem.displayCanvas"
        ],
        description:"SmartClient provides special client and server-side support for file upload that allows\n uploaded files to be treated like ordinary DataSource fields.  This includes:\n <ul>\n <li>the ${isc.DocUtils.linkForRef('class:FileItem')} and ${isc.DocUtils.linkForRef('class:MultiFileItem')} FormItems that enable users to upload one or\n more files as a background operation, without leaving the current page\n <li>server-side support that allows binary uploads to be treated as a normal DataSource field\n values, with all other aspects of server-side integration unchanged\n <li>built-in SQL &amp; Hibernate DataSource support that can store and retrieve uploaded\n files from SQL databases\n </ul>\n The following documentation assumes you are using the SmartClient Java Server.  If you are\n not, skip to the sections near the end of this document.\n <P>\n <b>Single file upload: \"binary\" field type</b>\n <P>\n To use SmartClient's client-server upload system, you use a DataSource field of\n ${isc.DocUtils.linkForRef('attr:DataSourceField.type','type')} \"binary\".  By default, a DynamicForm bound to a DataSource\n with a field of type \"binary\" will use the ${isc.DocUtils.linkForRef('class:FileItem')}, which displays a standard HTML\n &lt;input type=\"upload\"&gt; form control.\n <P>\n When you call ${isc.DocUtils.linkForRef('method:DynamicForm.saveData')} on a DynamicForm containing a FileItem,\n SmartClient processes the save identically to a saveData() call that did not include a file\n upload:\n <ul>\n <li> if you are using the built-in SQL connectors via serverType:\"sql\", the file will be\n saved to SQL as described under ${isc.DocUtils.linkForRef('type:FieldType','field type \"binary\"')}.\n <li> if you have server-side business logic, the inbound request may be routed to your\n business logic via RPCManager dispatch or DMI declarations as normal, your business logic\n will receive a normal DSRequest, and you are expected to provide a normal DSResponse.\n </ul>\n <P>\n Client-side callbacks, such as the callback passed to saveData(), fire normally.\n <P>\n Note that FileItems cannot be programmatically populated - this is a browser security\n restriction over which we have no control.  This restriction means that we are unable to \n populate a FileItem with the correct filename when a form is editing an existing record.\n Also, when you call saveData() on a form that is editing a new record, the FileItem will\n be cleared on successful completion of the saveData() call; this is a side-effect of the\n form being placed into \"edit\" mode.  In both of these cases, the fact that the FileItem \n has been cleared will not cause the persisted binary data to be removed by SmartClient \n Server on subsequent calls to setData().  If the user selects another file, it will \n overwrite the existing one; if the FileItem is left blank, the server simply ignores it.\n If you actually wish to wipe out the value of a binary field, call \n ${isc.DocUtils.linkForRef('method:DataSource.updateData','updateData()')} on the underlying dataSource, passing an \n explicit null value for the binary field.\n <P>\n <b>Processing File Uploads with server-side business logic</b>\n <P>\n Server-side business logic that processes file uploads may retrieve upload files via the\n server side API dsRequest.getUploadedFile(<i>fieldName</i>).  The uploaded file is returned\n as an instance of ISCFileItem, which provides access to a Java InputStream as well as\n metadata about the file (size, name).  \n See the server-side JavaDoc (com.isomorphic.*) for details.\n <P>\n <span style=\"color:red;font-weight:bold;\">NOTE:</span> request processing engines such as\n Struts may parse the inbound request before SmartClient receives it.  If you are creating an\n RPCManager object inside of a Struts Action and the file being uploaded is not available via\n <code>dsRequest.getUploadedFile()</code>, this is likely to be the problem, and you should\n remove Struts from the processing of the upload.\n <P>\n Server-side validation errors may be provided, including validation errors for the uploaded\n file (such as too large or invalid content), and will be displayed in the form that\n attempted an upload.\n <P>\n Be aware of the following special concerns when processing file uploads:\n <ul>\n <li> if you provide your own Java Servlet or JSP that creates an instance of RPCManager in\n order process SmartClient requests, many APIs of the HttpServletRequest are not safe to call\n before you have created the RPCManager, passing in the HttpServletRequest.  These include\n getReader(), getParameter() and other commonly called methods.  This is a limitation of\n Java Servlets, not specific to SmartClient\n <li> unlike other DataSource \"add\" and \"update\" operations, you are not expected to return\n the file as part of the data returned in the DSResponse\n </ul>\n <P>\n <b>Multi file upload: MultiFileItem</b>\n <P>\n The MultiFileItem provides an interface for a user to save one or more files that are\n related to a DataSource record, where each file is represented by a record in a\n related DataSource.\n <P>\n See the ${isc.DocUtils.linkForRef('class:MultiFileItem')} docs for details.\n <P>\n <b>Upload without the SmartClient Server</b>\n <P>\n If it is acceptable that the application will do a full-page reload after the upload\n completes, you can simply:\n <ul>\n <li> set ${isc.DocUtils.linkForRef('attr:DynamicForm.encoding')} to \"multipart\"\n <li> include an ${isc.DocUtils.linkForRef('class:UploadItem')} to get a basic HTML upload control\n <li> set ${isc.DocUtils.linkForRef('attr:DynamicForm.action')} to a URL where you have deployed server-side code to\n handle the upload\n <li> call ${isc.DocUtils.linkForRef('method:DynamicForm.submitForm')} to cause the form to be submitted\n </ul>\n This cause the DynamicForm component to submit to the form.action URL like an ordinary HTML\n &lt;form&gt; element.  Many \n <a href='http://www.google.com/search?q=html+file+upload+example' target='_blank'>online tutorials</a>\n are available which explain how to handle HTML form file upload in various server-side\n technologies.\n <P>\n Note that when you submitForm(), the only values that will be sent to your actionURL are \n values for which actual FormItems exist.  This differs from saveData(), in which the\n entire set of ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form values')} are always sent.  To handle submitting\n extra values, use ${isc.DocUtils.linkForRef('class:HiddenItem')}s.\n <P>\n For further details, see the ${isc.DocUtils.linkForRef('class:UploadItem')} docs.\n <P>\n <b>Background upload without the SmartClient Server</b>\n <P>\n Achieving background file upload without using the SmartClient server is also possible\n although considerably more advanced.  In addition to the steps above, create a hidden\n &lt;iframe&gt; element in the page, and use ${isc.DocUtils.linkForRef('attr:DynamicForm.target')} to target the form\n submission at this IFRAME.  In order receive a callback notification when the upload\n completes, after processing the file upload, your server should output HTML content for the\n IFRAME that includes a &lt;SCRIPT&gt; block which will navigate out of the IFRAME (generally\n via the JavaScript global \"top\") and call a global method you have declared as a callback.",
        name:"upload",
        seeAlso:[
        ],
        type:"group",
        examples:[
            "${isc.DocUtils.linkForExampleId('upload')}",
            "${isc.DocUtils.linkForExampleId('customBinaryField')}",
            "${isc.DocUtils.linkForExampleId('multiFileItem')}"
        ]
    },
    "attr:ListGrid.autoFitFieldsFillViewport":{
        ref:"attr:ListGrid.autoFitFieldsFillViewport",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} is enabled, and extra space is available after\n autofitting all fields, should the grid automatically expand one field to fill the extra\n space.\n <P>\n When enabled, the field to expand may be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitExpandField')}.\n <P>\n Note this logic will not expand a ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen column')}.",
        name:"autoFitFieldsFillViewport",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "method:Date.toNormalDatetime":{
        ref:"method:Date.toNormalDatetime",
        flags:"",
        description:" Returns the datetime as a formatted string using the format set up via the\n <code>setNormalDatetimeDisplayFormat()</code> method.\n",
        name:"toNormalDatetime",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional Format for the date returned",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"DateDisplayFormat"
            },
            {
                description:"If a custom timezone has been set via   Time.setDefaultDisplayTimezone(), by default date formatters will respect this timezone.\n   To suppress this behavior, this parameter should be set to false.",
                optional:true,
                name:"useCustomTimezone",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:DetailViewer.hiliteIconHeight":{
        ref:"attr:DetailViewer.hiliteIconHeight",
        flags:"IRW",
        description:"Height for hilite icons for this listGrid.\n Overrides ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconSize','hiliteIconSize')}.\n Can be overridden at the field level",
        name:"hiliteIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "hiliting"
        ]
    },
    "group:exportBGColor":{
        ref:"group:exportBGColor",
        title:"Exports &amp; Cell Background Color",
        refs:[
        ],
        description:"Several APIs and settings influence the background color which will be used for spreadsheet\ncells when exporting to Excel/OpenOffice formats using ${isc.DocUtils.linkForRef('method:ListGrid.exportData')} or\n${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}.  The following APIs are called in the order \nshown, so <code>hilite.backgroundColor</code> takes precedence over \n <code>exportDefaultBGColor</code>, for example.\n <ol>\n <li> ${isc.DocUtils.linkForRef('method:ListGrid.getExportBGColor','getExportBGColor(rowNum, colNum, record)')}\n <li> ${isc.DocUtils.linkForRef('attr:Hilite.backgroundColor')}\n <li> ${isc.DocUtils.linkForRef('method:ListGrid.getExportRowBGColor','getExportRowBGColor(rowNum, record)')}\n <li> ${isc.DocUtils.linkForRef('method:ListGrid.getExportColumnBGColor','getExportColumnBGColor(colNum)')}\n <li> ${isc.DocUtils.linkForRef('attr:ListGrid.exportAlternateRowBGColor','exportAlternateRowBGColor')}\n <li> ${isc.DocUtils.linkForRef('attr:ListGrid.exportDefaultBGColor','exportDefaultBGColor')}\n </ol>\nIf overriding any of the above methods, return null to allow methods later in the precedence\norder to influence background color.  For example, if you want certain rows to have a\nspecial background color but also want to show alternating colors per row, override\ngetExportRowBGColor and return null for all rows that should just show normal alternating\ncolors, and not a special color.",
        name:"exportBGColor",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormItem.globalTabIndex":{
        ref:"attr:FormItem.globalTabIndex",
        flags:"IRWA",
        description:"TabIndex for the form item within the page. Takes precedence over any local tab index\n specified as ${isc.DocUtils.linkForRef('attr:FormItem.tabIndex','item.tabIndex')}.\n <P>\n Use of this API is <b>extremely</b> advanced and essentially implies taking over\n management of tab index assignment for all components on the page.",
        name:"globalTabIndex",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "focus"
        ]
    },
    "method:DataSource.getDisplayValue":{
        ref:"method:DataSource.getDisplayValue",
        flags:"",
        description:" Given a fieldName and a dataValue, apply any ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap')} for the\n field and return the display value for the field\n",
        name:"getDisplayValue",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the field to retrieve a value for",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"data value for the field",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"display value for the field",
            type:"any"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "group:sqlSettings":{
        ref:"group:sqlSettings",
        title:"SQL Database Settings in <code>server.properties</code>",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        refs:[
        ],
        description:"Although the Admin Console provides a UI to let you to configure database access for \n DataSources that use SmartClient's built-in ${isc.DocUtils.linkForRef('group:sqlDataSource','SQL engine')}, it is \n also possible to configure these DataSources with manual entries in your \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file.\n <p>\n When you manually configure a DataSource like this, you do so by maintaining a set of \n properties with names structured like this:\n <pre>   sql.{dbName}.x.y\n </pre>\n where <code>{dbName}</code> is the name of the database configuration you are providing.\n Note that this database name is just an arbitrary name for a particular database \n configuration; many of the default ones provided with SmartClient are named after a database\n <em>type</em>, in order to make their intended use more immediately obvious, but this is \n not by any means a requirement.\n <p>\n For the remainder of this discussion, we will assume we are configuring a database with a \n name of \"MyDatabase\".\n <p>\n <h4>SQL configuration properties</h4><p>\n <b><code>sql.MyDatabase.database.type</code></b><br>\n This should be set to one of the supported database types.  These are:<p>\n <table style=\"font-size:10px\">\n <tr><td><b>hsqldb</b></td><td>HSQLDB 1.7.x and greater</td></tr>\n <tr><td><b>db2</b></td><td>IBM DB2 8.x and greater</td></tr>\n <tr><td><b>db2iSeries</b></td><td>IBM DB2 for iSeries/i5, V5R4 and greater</td></tr>\n <tr><td><b>firebirdsql</b></td><td>Firebird 2.5 and greater</td></tr>\n <tr><td><b>informix</b></td><td>Informix 11.5 and greater</td></tr>\n <tr><td><b>sqlserver</b></td><td>Microsoft SQL Server 2000 and greater</td></tr>\n <tr><td><b>mysql</b></td><td>MySQL 3.2.x and greater</td></tr>\n <tr><td><b>oracle</b></td><td>Oracle 8.0.5, 8i and greater</td></tr>\n <tr><td><b>postgresql</b></td><td>PostgreSQL 7.x and greater</td></tr>\n <tr><td><b>generic</b></td><td>A generic SQL92 database, with limitations described in\n ${isc.DocUtils.linkForRef('group:sqlDataSource','this article')}</td></tr>\n </table><p>\n <code><b>sql.MyDatabase.driver</b></code><br>\n The name of the JDBC driver implementation.  This depends upon your database product and \n version, and the specific JDBC driver you are using (JDBC drivers can usually be downloaded\n from your database vendor's website).  Bearing in mind the caveat that this information can\n vary by release and JDBC implementation, here are some suggested values for our supported \n databases:<p>\n <table style=\"font-size:10px\">\n <tr><td><b>hsqldb</b></td><td><code>org.hsqldb.jdbcDriver</code></td></tr>\n <tr><td><b>db2</b></td><td><code>com.ibm.db2.jcc.DB2DataSource</code></td></tr>\n <tr><td><b>db2iSeries</b></td><td><code>com.ibm.as400.access.AS400JDBCDriver</code></td></tr>\n <tr><td><b>firebirdsql</b></td><td><code>org.firebirdsql.jdbc.FBDriver</code></td></tr>\n <tr><td><b>informix</b></td><td><code>com.informix.jdbc.IfxDriver</code></td></tr>\n <tr><td><b>sqlserver</b></td><td><code>com.microsoft.jdbc.sqlserver.SQLServerDriver</code> or \n <code>com.microsoft.sqlserver.jdbc.SQLServerDriver</code> (Microsoft changed the order of \n \"jdbc\" and \"sqlserver\" between the 2000 and 2005 editions of the product)</td></tr>\n <tr><td><b>mysql</b></td><td><code>com.mysql.jdbc.jdbc2.optional.MysqlDataSource</code></td></tr>\n <tr><td><b>oracle</b></td><td><code>oracle.jdbc.driver.OracleDriver</code></td></tr>\n <tr><td><b>postgresql</b></td><td><code>org.postgresql.Driver</code></td></tr>\n </table><p>\n <code><b>sql.MyDatabase.driver.serverName</b></code><br>\n The name or IP address of the database server\n <p>\n <code><b>sql.MyDatabase.driver.portNumber</b></code><br>\n The port on which the database server is listening\n <p>\n <code><b>sql.MyDatabase.driver.user</b></code><br>\n The user to connect as\n <p>\n <code><b>sql.MyDatabase.driver.password</b></code><br>\n The user's password\n <p>\n <code><b>sql.MyDatabase.driver.databaseName</b></code><br>\n The database to connect to.  A \"database\" in this context is a named collection of tables\n and other database resources that are somehow grouped together by the database product.\n The specifics of how this is implemented vary by database.  Note that some database \n products use the terms \"catalog\" or \"schema\" to refer to the same concept, and Oracle - \n although it does also have a concept of catalog - uses the term \"SID\" for this concept.<p>\n <code><b>sql.MyDatabase.interface.type</b></code><br>\n Indicates how the JDBC connection will be created or looked up; the value of this setting \n depends on the capabilities of the particular JDBC driver you are using, and is inherently\n connected to the value of <code>sql.MyDatabase.driver</code>.  The following settings are \n supported:<p>\n <b>dataSource</b> - the driver is an instance of <code>javax.sql.DataSource</code> and \n should be instantiated by SmartClient Server<br>\n <b>driverManager</b> - the driver is an instance of <code>java.sql.DriverManager</code><br>\n <b>jndi</b> - the driver is an instance of <code>javax.sql.DataSource</code> and should be \n looked up using JNDI<p>\n <code><b>sql.MyDatabase.driver.url</b></code><br>\n For configurations where <code>sql.MyDatabase.interface.type</code> is \"driverManager\", \n this property allows you to manually enter the URL we use to connect to the database.  If \n this property is not provided, we build the URL from other settings such as \n <code>sql.MyDatabase.driver.serverName</code> and \n <code>sql.MyDatabase.driver.databaseName</code>.<p>\n\n <b>Other properties</b><br>\n Different JDBC drivers support different properties to support product-specific quirks and\n features.  You can often specify these properties by embedding them as parameters in the \n URL used to connect to the database.<p>\n\n Alternatively, any subproperty you set on the \"driver\" in server.properties is applied to \n the JDBC driver object via Reflection. For example, the MySQL JDBC driver supports a property\n \"useUnicode\", which forces the database to use Unicode character encoding.  If \n <code>sql.MyDatabase.driver</code> is <code>com.mysql.jdbc.jdbc2.optional.MysqlDataSource</code>,\n setting <code>sql.MyDatabase.driver.useUnicode</code> to true means we'll attempt to call \n <code>setUseUnicode(true)</code> on this class.  This would have exactly the same effect as\n defining the connection URL manually and specifying the parameter <code>useUnicode=true</code>",
        name:"sqlSettings",
        seeAlso:[
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "type:SelectionStyle":{
        ref:"type:SelectionStyle",
        values:[
            {
                description:"don't select at all",
                value:"Selection.NONE"
            },
            {
                description:"select only one item at a time",
                value:"Selection.SINGLE"
            },
            {
                description:"select one or more items",
                value:"Selection.MULTIPLE"
            },
            {
                description:"select one or more items as a toggle \t\t\t\t\t\t\t\t  so you don't need to hold down control keys to select \n                                  more than one object",
                value:"Selection.SIMPLE"
            }
        ],
        description:"Different styles of selection that a list, etc. might support",
        name:"SelectionStyle",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "selection"
        ]
    },
    "attr:CheckboxItem.titleStyle":{
        ref:"attr:CheckboxItem.titleStyle",
        flags:"IRW",
        description:"Base CSS class for this item's title cell.\n <P>\n <B>Note:</B> This styling applies to the standard form item title cell for this item - it\n does not apply to item's ${isc.DocUtils.linkForRef('attr:CheckboxItem.showLabel','label')}.\n To modify the styling for that text, use ${isc.DocUtils.linkForRef('attr:CheckboxItem.textBoxStyle')} instead.",
        name:"titleStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "appearance"
        ]
    },
    "method:Date.toJapanShortDateTime":{
        ref:"method:Date.toJapanShortDateTime",
        flags:"",
        description:"\t\t\tReturn this date in the format: <code>YYYY/MM/DD HH:MM:SS</code>\n",
        name:"toJapanShortDateTime",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:MultiSortPanel.firstSortLevelTitle":{
        ref:"attr:MultiSortPanel.firstSortLevelTitle",
        flags:"IR",
        description:"The title-text to appear in the first column for the first sort-level.",
        name:"firstSortLevelTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Sort by\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Window.removeItem":{
        ref:"method:Window.removeItem",
        flags:"A",
        description:" Removes a widget from the body area of the window. \n",
        name:"removeItem",
        seeAlso:[
        ],
        params:[
            {
                description:"the widget to be removed",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"the array of widgets removed",
            type:"array"
        },
        type:"method",
        definingClass:"class:Window",
        groups:[
            "windowItems"
        ]
    },
    "attr:DrawnValue.facetValues":{
        ref:"attr:DrawnValue.facetValues",
        flags:"IR",
        description:"FacetValues for the data value.",
        name:"facetValues",
        seeAlso:[
        ],
        valueType:"FacetValueMap",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "attr:ListGridField.showAlternateStyle":{
        ref:"attr:ListGridField.showAlternateStyle",
        flags:"IRWA",
        description:"When set to false, don't apply alternate-row styling to this field.",
        name:"showAlternateStyle",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:Tree.getDescendants":{
        ref:"method:Tree.getDescendants",
        flags:"",
        description:"\n Returns the list of all descendants of a node.  Note: this method can be very slow,\n especially on large trees because it assembles a list of all descendants recursively.\n Generally, ${isc.DocUtils.linkForRef('method:Tree.find')} in combination with ${isc.DocUtils.linkForRef('method:Tree.getChildren')} will\n be much faster.\n <br><br>\n For load on demand trees (those that only have a partial representation client-side), this\n method will return only nodes that have already been loaded from the server.\n\n",
        name:"getDescendants",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question (the root node is assumed if none is specified)",
                optional:true,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"List of descendants of the node.",
            type:"List"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:StretchImgButton.setActionType":{
        ref:"method:StretchImgButton.setActionType",
        flags:"",
        description:" Update the 'actionType' for this canvas (radio / checkbox / button)\n If the canvas is currently selected, and the passed in actionType is 'button'\n this method will deselect the canvas.\n",
        name:"setActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:ColorPicker.defaultPickMode":{
        ref:"attr:ColorPicker.defaultPickMode",
        flags:"IR",
        description:"The <code>ColorPicker</code> can operate in either a \"simple\" mode (where it displays just the\n 40 basic colors and allows the user to click one), or a \"complex\" mode (where the\n user can specify a color from anywhere in the spectrum, with an optional alpha\n element). The <code>defaultPickMode</code> attribute specifies which of these two modes is\n in force when the picker first loads.",
        name:"defaultPickMode",
        setter:[
            "setCurrentPickMode"
        ],
        seeAlso:[
            {
                ref:"attr:ColorPicker.allowComplexMode",
                description:null
            }
        ],
        valueType:"ColorPickerMode",
        defaultValue:"\"simple\"",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:PickList.emptyPickListMessage":{
        ref:"attr:PickList.emptyPickListMessage",
        flags:"IRWA",
        description:"Empty message to display in the pickList if \n ${isc.DocUtils.linkForRef('attr:PickList.hideEmptyPickList')} is <code>false</code>.",
        name:"emptyPickListMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"No items to show\"",
        type:"attr",
        definingClass:"interface:PickList",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.itemHoverStyle":{
        ref:"attr:DynamicForm.itemHoverStyle",
        flags:"IRW",
        description:"CSS Style for hovers shown for items",
        name:"itemHoverStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.hoverStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"formHover\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "method:Selection.selectSingle":{
        ref:"method:Selection.selectSingle",
        flags:"",
        description:" Select a single item and deselect everything else\n",
        name:"selectSingle",
        seeAlso:[
        ],
        params:[
            {
                description:"object to select",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:MultiGroupPanel.propertyFieldTitle":{
        ref:"attr:MultiGroupPanel.propertyFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"property\" field.",
        name:"propertyFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Calendar.baseStyle":{
        ref:"attr:Calendar.baseStyle",
        flags:"IRW",
        description:"The base name for the CSS class applied to the grid cells of the day and week views\n of the calendar. This style will have \"Dark\", \"Over\", \"Selected\", or \"Disabled\"\n appended to it according to the state of the cell.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calendar\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.shouldPrint":{
        ref:"attr:Canvas.shouldPrint",
        flags:"IRW",
        description:"Whether this canvas should be included in a printable view.\n <P>\n Default is to:\n <ul>\n <li> omit all peers (edges generated by showEdges:true, etc)\n <li> omit anything considered a \"control\", such as a button or menu (see\n ${isc.DocUtils.linkForRef('attr:PrintProperties.omitControls')})\n <li> include everything else not marked shouldPrint:false\n </ul>",
        name:"shouldPrint",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "printing"
        ]
    },
    "attr:StretchImg.capSize":{
        ref:"attr:StretchImg.capSize",
        flags:"IRW",
        description:"If the default items are used, capSize is the size in pixels of the first and last\n          images in this stretchImg.",
        name:"capSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.getDrawnRowHeight":{
        ref:"method:ListGrid.getDrawnRowHeight",
        flags:"A",
        description:" Get the drawn height of a row.\n\n",
        name:"getDrawnRowHeight",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"height",
            type:"number"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "method:PortalLayout.addPortlet":{
        ref:"method:PortalLayout.addPortlet",
        flags:"",
        description:" Adds a ${isc.DocUtils.linkForRef('class:Portlet')} instance to this portalLayout in the specified position.\n",
        name:"addPortlet",
        seeAlso:[
        ],
        params:[
            {
                description:"Portlet to add to this layout.",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            },
            {
                description:"Column in which the Portlet should be added. If unspecified,  defaults to zero.  If specified, but the specified column does not exist, a column is\n  automatically added at the specified colNum index.",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"Row within the column for the Portlet.",
                optional:true,
                name:"rowNum",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"Offset within the row. If you specify a    rowOffset, then the Portlet will be added to the existing row. If not, then a new row\n   will be created at rowNum.",
                optional:true,
                name:"rowOffset",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "class:Browser":{
        methods:[
        ],
        ref:"class:Browser",
        classAttrs:[
            "classAttr:Browser.isTouch",
            "classAttr:Browser.isTablet",
            "classAttr:Browser.isHandset",
            "classAttr:Browser.isDesktop",
            "classAttr:Browser.isSupported",
            "classAttr:Browser.useCSS3"
        ],
        classMethods:[
            "classMethod:Browser.setIsTouch",
            "classMethod:Browser.setIsTablet",
            "classMethod:Browser.setIsHandset",
            "classMethod:Browser.setIsDesktop"
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
        ],
        description:"The <code>Browser</code> class contains various class attributes that indicate basic properties\n of the browser and whether certain features are enabled.",
        name:"Browser",
        seeAlso:[
        ],
        type:"class"
    },
    "classAttr:Browser.isDesktop":{
        ref:"classAttr:Browser.isDesktop",
        flags:"RW",
        description:"Is the application running in a desktop browser? This is true if ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}\n and ${isc.DocUtils.linkForRef('classAttr:Browser.isHandset')} are both <code>false</code>.",
        name:"isDesktop",
        setter:[
            "setIsDesktop"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:null,
        type:"classAttr",
        definingClass:"class:Browser"
    },
    "attr:EdgedCanvas.edgeLeft":{
        ref:"attr:EdgedCanvas.edgeLeft",
        flags:"IR",
        description:"Height in pixels for left corners and edges.  Defaults to edgeSize when unset.",
        name:"edgeLeft",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "method:FacetChart.getDataLabelFacet":{
        ref:"method:FacetChart.getDataLabelFacet",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('class:Facet')} in the list of ${isc.DocUtils.linkForRef('attr:FacetChart.facets','facets')} whose\n ${isc.DocUtils.linkForRef('attr:Facet.values','values')} are rendered as labels along the data axis of the chart or in\n the main chart area.\n <p>\n Most single-facet charts and all multi-facet charts have the data label facet as their\n first facet.  The exceptions are that single-facet Pie/Doughnut charts and Scatter charts\n do not have data label facets.\n <p>\n Note that the user may swap the data label facet and the\n ${isc.DocUtils.linkForRef('method:FacetChart.getLegendFacet','legend facet')} in most chart types using the context menu.\n",
        name:"getDataLabelFacet",
        seeAlso:[
            {
                ref:"attr:FacetChart.facets",
                description:null
            }
        ],
        returns:{
            description:"the data label facet, or <code>null</code> if there is no such facet",
            type:"Facet"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Button.titleHoverHTML":{
        ref:"method:Button.titleHoverHTML",
        flags:"",
        description:" Returns the HTML that is displayed by the default ${isc.DocUtils.linkForRef('method:Button.titleHover','titleHover')}\n handler. Return null or an empty string to cancel the hover.\n <smartgwt><p>Use <code>setTitleHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n",
        name:"titleHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:Button"
    },
    "method:DataSource.setTestData":{
        ref:"method:DataSource.setTestData",
        flags:"",
        description:" Call this method to set the data in the client-side test-data after initialization. \n ${isc.DocUtils.linkForRef('method:DataSource.setCacheData','setCacheData()')} should be called instead and setTestData() is deprecated and will eventually be removed.\n",
        name:"setTestData",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of records to apply as the client-side test-data",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Array of Record"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:HiliteRule.colorFieldTitle":{
        ref:"attr:HiliteRule.colorFieldTitle",
        flags:"IR",
        description:"The title for the Color picker field.",
        name:"colorFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Color\"",
        type:"attr",
        definingClass:"class:HiliteRule",
        groups:[
            "i18nMessages"
        ]
    },
    "method:PortalLayout.portletsResized":{
        ref:"method:PortalLayout.portletsResized",
        flags:"",
        description:" Fires when ${isc.DocUtils.linkForRef('class:Portlet','portlets')} or columns in this PortalLayout are resized.\n Note that this fires on a short delay -- otherwise, it would fire multiple times\n for each change, since most portlet size changes will affect multiple portlets.\n Does not fire when a portlet is ${isc.DocUtils.linkForRef('method:PortalLayout.portletMaximized','maximized')} or\n ${isc.DocUtils.linkForRef('method:PortalLayout.portletRestored','restored')}.\n",
        name:"portletsResized",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "method:Tree.getDescendantLeaves":{
        ref:"method:Tree.getDescendantLeaves",
        flags:"",
        description:"\n Returns the list of all descendants of a node that are leaves.  This works just like\n ${isc.DocUtils.linkForRef('method:Tree.getDescendants')}, except folders are not part of the returned list.\n Folders are still recursed into, just not returned.  Like ${isc.DocUtils.linkForRef('method:Tree.getDescendants')},\n this method can be very slow for large trees.  Generally, ${isc.DocUtils.linkForRef('method:Tree.find')} in\n combination with ${isc.DocUtils.linkForRef('method:Tree.getLeaves')} will be much faster.\n <br><br>\n For load on demand trees (those that only have a partial representation client-side), this\n method will return only nodes that have already been loaded from the server.\n\n",
        name:"getDescendantLeaves",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question (the root node is assumed if none specified)",
                optional:true,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"List of descendants of the node that are leaves.",
            type:"List"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:Calendar.canDeleteEvents":{
        ref:"attr:Calendar.canDeleteEvents",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:Calendar.canRemoveEvents')}",
        flags:"IR",
        description:"If true, users can delete existing events. Defaults to ${isc.DocUtils.linkForRef('attr:Calendar.canEditEvents')}.",
        name:"canDeleteEvents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "allowedOperations"
        ]
    },
    "group:noFrames":{
        ref:"group:noFrames",
        title:"Don't Misuse Frames",
        refs:[
        ],
        description:"Loading the SmartClient framework into multiple frames or iframes within the same browser is\n not a supported configuration, or more accurately, not a <i>supportable</i> configuration,\n for the following reasons:\n <ul>\n <li> each additional frame multiplies the memory footprint and reduces speed\n <li> having multiple frames prevents drag and drop between components in different frames\n <li> modality handling (eg modal dialogs) doesn't automatically take into account multiple\n frames (consider tabbing order, nested modality and other issues, you'll see it's not\n realistic to provide automatic cross-frame modality handling)\n <li> inter-frame communication triggers several browser bugs: memory leaks, performance\n issues, intermittent crashes in some browsers, inconsistencies in basic JavaScript operators\n such as \"typeof\", and problems with form focus handling in IE, among many other bugs\n </ul>\n None of these problems are specific to SmartClient.  They happen with Ajax frameworks in\n general as well as other RIA technologies.  This is why no successful Ajax application has\n ever used the approach of double-loading a component framework into multiple frames.\n <P>\n The recommended ${isc.DocUtils.linkForRef('group:smartArchitecture','SmartClient Architecture')} involves loading as many\n SmartClient-based application views as possible in the first page load, then showing and\n hiding different views as the user navigates through the application.\n <P>\n If, for whatever reason, you cannot follow the SmartClient Architecture and must load new\n SmartClient-based views by contacting the server each time, use the ${isc.DocUtils.linkForRef('class:ViewLoader')} class\n to load new views, never frames.\n <P>\n Note that the use of IFrames is appropriate in certain circumstances, including loading\n certain types of content within an ${isc.DocUtils.linkForRef('class:HTMLFlow','contentsType,HTMLFlow')}.  The only\n prohibited usage is loading the SmartClient framework into multiple frames within the same\n browser.",
        name:"noFrames",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateChooser.prevYearIconHeight":{
        ref:"attr:DateChooser.prevYearIconHeight",
        flags:"IR",
        description:"Height of the icon for the previous year button",
        name:"prevYearIconHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:TimeItem.minuteItemPrompt":{
        ref:"attr:TimeItem.minuteItemPrompt",
        flags:"IRW",
        description:"The hover prompt to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.minuteItem','minute picker')}.",
        name:"minuteItemPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Choose minutes\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "group:chartAppearance":{
        ref:"group:chartAppearance",
        refs:[
            "attr:Chart.threeD",
            "attr:Chart.shouldAnimateShow",
            "attr:Chart.labelValues"
        ],
        name:"chartAppearance",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:CheckboxItem.unsetImage":{
        ref:"attr:CheckboxItem.unsetImage",
        flags:"IRW",
        description:"URL for the image to display when this checkbox is unset. Note that if \n ${isc.DocUtils.linkForRef('attr:CheckboxItem.showUnsetImage')} is false or ${isc.DocUtils.linkForRef('attr:CheckboxItem.allowEmptyValue')} is false\n the ${isc.DocUtils.linkForRef('attr:CheckboxItem.uncheckedImage')} will be used for null values rather than this\n image.",
        name:"unsetImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/unsetcheck.gif\"",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "appearance"
        ]
    },
    "method:List.getProperty":{
        ref:"method:List.getProperty",
        flags:"",
        description:" Return a new Array where the value of item i is the value of \"property\" of item i in this\n array.  If an item doesn't have that property or is null, return item will be null.\n\n",
        name:"getProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to look for",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"array of the values of property in each item of this list",
            type:"Array"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "iteration"
        ]
    },
    "method:ListGrid.getGridSummaryFunction":{
        ref:"method:ListGrid.getGridSummaryFunction",
        flags:"A",
        description:" Determines the ${isc.DocUtils.linkForRef('type:SummaryFunction')} to use when calculating per-field summary values\n describing multiple records in this grid.\n Used to determine the summary function to use for both ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')}.\n <P>\n Default implementation picks up ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')} if explicitly specified,\n otherwise checks for a default summary function based on field type (see\n ${isc.DocUtils.linkForRef('classMethod:SimpleType.setDefaultSummaryFunction')})\n",
        name:"getGridSummaryFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"field to check for summary function",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"listGridField"
            }
        ],
        returns:{
            description:"summary function for the field in question",
            type:"SummaryFunction"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "type:LabelRotationMode":{
        ref:"type:LabelRotationMode",
        values:[
            {
                description:"do not rotate labels",
                value:"\"never\""
            },
            {
                description:"rotate labels if needed in order to make them legible and non-overlapping",
                value:"\"auto\""
            },
            {
                description:"always rotate labels",
                value:"\"always\""
            }
        ],
        description:"Strategy for determining whether to rotate the X-axis labels by 90 degrees.",
        name:"LabelRotationMode",
        seeAlso:[
        ],
        type:"type"
    },
    "type:TextMatchStyle":{
        ref:"type:TextMatchStyle",
        values:[
            {
                description:"case-insensitive exact match (\"foo\" matches \"foo\" and \"FoO\", but not \"FooBar\")",
                value:"\"exact\""
            },
            {
                description:"case-sensitive exact match (\"foo\" matches only \"foo\")",
                value:"\"exactCase\""
            },
            {
                description:"case-insenstive substring match (\"foo\" matches \"foobar\" and \"BarFoo\")",
                value:"\"substring\""
            },
            {
                description:"case-insensitive prefix match (\"foo\" matches \"FooBar\" but not \"BarFoo\") <p>\n textMatchStyle behavior is consistent across the client and all three of the built-in\n server DataSource implementations - SQL, Hibernate and JPA - to the maximum extent that is\n practical.  Known inconsistencies, some of which can be tweaked with configuration settings,\n are described below<ul>\n <li>textMatchStyle can be disabled for any individual field with the \n ${isc.DocUtils.linkForRef('attr:DataSourceField.ignoreTextMatchStyle')} declaration.  This behavior is consistent\n across client and server implementations, with the proviso that case-sensitive behavior \n is inherently inconsistent in the server-side implementations (see below for a more \n detailed discussion of this)</li>\n <li>textMatchStyle does not apply to boolean or temporal (date, datetime, time)\n ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field types')}.  Such fields are always checked for equality.  If \n you have a need for more complex matching, such as date-range checking, use AdvancedCriteria</li>\n <li>Critiera values for temporal fields <b>must</b> be real dates (Javascript <code>Date</code>\n objects on the client, instances of <code>java.util.Date</code> on the server).  Attempting\n to match against a string or any other type of value will result in an \"always fails\" \n clause being generated.  This behavior is how the client code has always worked, but is a \n change for the server-side DataSources, in the interests of consistency.  The previous\n behavior was:<ul>\n   <li>SQLDataSource used to attempt to match the date column to the criteria value provided;\n   if that value was an appropriately-formatted string, that attempt <i>might</i> have \n   worked, but it would be database-specific.  If you have an application that depends on \n   this old behavior, you can switch it back on by adding the following to your\n   <code>server.properties</code> file: \n   <code>sql.temporal.fields.require.date.criteria: false</code></li>\n   <li>HibernateDataSource and JPADataSource used to skip such clauses altogether, which \n   results in the opposite behavior (there is an implied \"always succeeds\" clause, because \n   the clause is not present in the query at all).  If you have an application that depends on \n   this old behavior, you can switch it back on by adding the following to your\n   <code>server.properties</code> file: \n   <code>jpa.temporal.fields.require.date.criteria: false</code> or \n   <code>hibernate.temporal.fields.require.date.criteria: false</code>, as appropriate</li>\n </ul></li>\n <li>textMatchStyle does not apply to fields used in the joins generated to satisfy \n ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom','includeFrom')} declarations or entity relations in\n Hibernate or JPA.  Again, such comparisons are always for equality</li>\n <li>textMatchStyle is applied to numeric fields <b>only</b> if the supplied criteria value\n is a string.  So for a numeric field \"myNumber\", we will match 10, 100, 110 and 1000 if a \n criteria value of \"10\" (the quoted string) is supplied, but we will only match 10 if a \n criteria value of 10 (the actual number) is supplied<ul>\n   <li>This is a change in behavior for the server-side DataSource implementations, in the \n   interests of consistency with the client behavior.  Previously, all three of the built-in\n   DataSource implementations applied textMatchStyle to numeric fields regardless of the \n   criteria value's type.  If you have an application that depends on this old behavior, \n   you can switch it back on by adding the following to your <code>server.properties</code>\n   file: <code>sql.substring.numeric.criteria: true</code> or \n   <code>hibernate.substring.numeric.criteria: true</code> or \n   <code>jpa.substring.numeric.criteria: true</code>, as appropriate</li>\n </ul></li>\n <li>\"exactCase\" matching cannot be made consistent across all database providers because \n each database has its own idea of whether case-sensitive matching should be the default, \n and how to switch it on and off (if that is even possible)<ul>\n   <li>Microsoft SQL Server must have case-sensitive matching enabled by setting a \n   case-sensitive collation when the database is created (there are more fine-grained \n   options, but we do not recommend them because of the scope for further inconsistency, \n   where \"exactCase\" works correctly on table A but not on table B).  See \n   <a href=http://msdn.microsoft.com/en-us/library/ms175835.aspx>MSDN</a> for details</li>\n   <li>HSQLDB has case sensitivity set with the <code>SET IGNORECASE</code> directive -\n   <a href=http://www.hsqldb.org/doc/guide/ch09.html#set_ignorecase-section>see here</a></li>\n   <li>MySQL is case-insensitive, but since it provides an easy way to do per-query,\n   case-sensitive matching in SQL, we work around it for that database, but <b>only</b> in\n   SQL DataSources</li>\n </ul></li>\n <li>If you are using Hibernate or JPA, whether \"exactCase\" works as expected depends \n entirely on the underlying database.  Unlike the SQL DataSource, where we have fine-grained\n control of the SQL that the database executes, we are constrained by what the ORM will \n allow.  This prevents us from compensating for database quirks, like we do with MySQL's\n case-insensitivity in the SQL DataSource</li>\n </ul>",
                value:"\"startsWith\""
            }
        ],
        description:"For \"fetch\" operations, how simple search criteria should be interpreted for text fields \n (and to some extent numeric fields, see the notes below).  For greater flexibility, use \n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}.",
        name:"TextMatchStyle",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:SliderItem.minValue":{
        ref:"attr:SliderItem.minValue",
        flags:"IRW",
        description:"The minimum slider value. The slider value is equal to minValue when the thumb is at the\n bottom or left of the slider (unless flipValues is true, in which case the minimum value\n is at the top/right of the slider)",
        name:"minValue",
        setter:[
            "setMinValue"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.flipValues",
                description:null
            }
        ],
        valueType:"float",
        defaultValue:"1",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sliderItem')}"
        ],
        definingClass:"class:SliderItem"
    },
    "attr:DatabaseBrowser.catalog":{
        ref:"attr:DatabaseBrowser.catalog",
        flags:"IR",
        description:"The name of the database catalog to use, if the RDBMS in use recognizes the concept of\n multiple catalogs.  Leave this property unset to include all catalogs.\n <p>\n Note that this property only applies where ${isc.DocUtils.linkForRef('attr:DatabaseBrowser.serverType')} is \"sql\"",
        name:"catalog",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "attr:StretchImgButton.labelBreadthPad":{
        ref:"attr:StretchImgButton.labelBreadthPad",
        flags:"IRW",
        description:"The padding for a StretchImgButton's label is determined as follows.\n <P>\n If <code>labelHPad</code> is set it will specify the horizontal padding applied to the\n label. Similarly if <code>labelVPad</code> is set it will specify the vertical padding\n for the label, regardless of the button's ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical','vertical')} setting.\n <P>\n Otherwise <code>labelLengthPad</code> can be set to specify the label padding along the\n length axis (ie: horizontal padding if ${isc.DocUtils.linkForRef('attr:StretchImgButton.vertical')} is false,\n otherwise vertical padding), and \n <code>labelBreadthPad</code> can be set to specify the label padding along the other axis.\n <P>\n Otherwise the padding on the length axis will match the ${isc.DocUtils.linkForRef('attr:StretchImgButton.capSize')} and\n will be set to zero on the breadth axis.\n <P>\n So by default the label will be sized to match the center image of the StretchImgButton, but\n these settings allow the label to partially or wholly overlap the caps.",
        name:"labelBreadthPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "attr:ListGridField.exportFieldWidth":{
        ref:"attr:ListGridField.exportFieldWidth",
        flags:"IRW",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')} with ${isc.DocUtils.linkForRef('attr:ListGrid.exportFieldWidths')} set,\n set this flag false to cause this field to \"opt out\" of width export.  Fields that opt out\n in this way have the corresponding spreadsheet column autosized (ie, made just wide enough\n that content is not clipped).\n <p>\n This setting has no effect if <code>listGrid.exportFieldWidths</code> is not set.",
        name:"exportFieldWidth",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ListGrid.canTabToHeader":{
        ref:"attr:ListGrid.canTabToHeader",
        flags:"IR",
        description:"Should the header be included in the tab-order for the page? If not explicitly specified,\n the header will be included in the tab order for the page if ${isc.DocUtils.linkForRef('classMethod:isc.setScreenReaderMode','isc.setScreenReaderMode()')} is\n called.",
        name:"canTabToHeader",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "accessibility"
        ]
    },
    "method:Array.or":{
        ref:"method:Array.or",
        flags:"",
        description:" Returns true if at least one value between the start and end indices is true.\n\n",
        name:"or",
        seeAlso:[
        ],
        params:[
            {
                description:"optional start index (default is 0)",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional end index (default is list.length)",
                optional:true,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"at least one of the items is true",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "arrayMath"
        ]
    },
    "attr:MultiSortPanel.levelUpButtonTitle":{
        ref:"attr:MultiSortPanel.levelUpButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Up button.",
        name:"levelUpButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Up\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "type:PercentBoxModel":{
        ref:"type:PercentBoxModel",
        values:[
            {
                description:"use coordinates relative to the {${isc.DocUtils.linkForRef('method:Canvas.getVisibleHeight')},visibleHeight} and width of the other canvas",
                value:"\"visible\""
            },
            {
                description:"use coordinates relative to the {${isc.DocUtils.linkForRef('method:Canvas.getViewportHeight')},viewportHeight} and width of the other canvas",
                value:"\"viewport\""
            }
        ],
        description:"Determines sizing model when sizing / positioning a canvas relative to its\n ${isc.DocUtils.linkForRef('attr:Canvas.percentBox','percentBox')}.",
        name:"PercentBoxModel",
        seeAlso:[
        ],
        type:"type"
    },
    "method:ListGrid.getSort":{
        ref:"method:ListGrid.getSort",
        flags:"",
        description:" Returns the current ${isc.DocUtils.linkForRef('object:SortSpecifier','SortSpecifiers')} for this ListGrid. Will return null if this grid\n has never been sorted (and has no specified ${isc.DocUtils.linkForRef('attr:ListGrid.initialSort')} or ${isc.DocUtils.linkForRef('attr:ListGrid.sortField')}).\n <P>\n Note that if sorting was applied via ${isc.DocUtils.linkForRef('method:ListGrid.sort')} [rather than ${isc.DocUtils.linkForRef('method:ListGrid.setSort')}] the\n sortSpecifiers returned will have been created based on the specified sort field / direction\n passed into ${isc.DocUtils.linkForRef('method:ListGrid.sort')}.\n\n",
        name:"getSort",
        seeAlso:[
        ],
        returns:{
            description:"current sort specifiers for this grid (may be null if  this grid is unsorted).",
            type:"Array of SortSpecifier"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "attr:CheckboxItem.textBoxStyle":{
        ref:"attr:CheckboxItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class for this item's title text",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"labelAnchor\"",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.showDownIcon":{
        ref:"attr:ListGridField.showDownIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the mouse goes\n down on the button.",
        name:"showDownIcon",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Slider.setThumbThinWidth":{
        ref:"method:Slider.setThumbThinWidth",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.thumbThinWidth')} property of the slider\n\n",
        name:"setThumbThinWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new thumbThinWidth",
                optional:false,
                name:"newWidth",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "method:CubeGrid.facetAdded":{
        ref:"method:CubeGrid.facetAdded",
        flags:"",
        description:"      Notification fired when a new facet is added.\n \n",
        name:"facetAdded",
        seeAlso:[
            {
                ref:"method:CubeGrid.facetRemoved",
                description:null
            }
        ],
        params:[
            {
                description:"facetId that was added",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "method:GridRenderer.getNearestColToEvent":{
        ref:"method:GridRenderer.getNearestColToEvent",
        flags:"",
        description:"\t\t\tReturns the nearest column to the event coordinates\n",
        name:"getNearestColToEvent",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events",
            "selection"
        ]
    },
    "attr:DataSource.enumOrdinalProperty":{
        ref:"attr:DataSource.enumOrdinalProperty",
        flags:"IA",
        description:"The name of the property this DataSource uses for ordinal number when translating\n Java enumerated types to and from Javascript, if the ${isc.DocUtils.linkForRef('type:EnumTranslateStrategy')} is set\n to \"bean\".  Defaults to \"_ordinal\" if not set.\n <p>\n  This property is only applicable if you are using the SmartClient server",
        name:"enumOrdinalProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "method:FormItem.canEditCriterion":{
        ref:"method:FormItem.canEditCriterion",
        flags:"A",
        description:" When a dynamic form is editing an advanced criteria\n object via ${isc.DocUtils.linkForRef('method:DynamicForm.setValuesAsCriteria')}, this method is used to determine\n which sub-criteria apply to which form item(s).\n <P>\n This method will be called on each item, and passed the sub-criterion of the\n AdvancedCriteria object. It should return true if the item can edit the criterion,\n otherwise false. If it returns true, setValuesAsCriteria() will call \n ${isc.DocUtils.linkForRef('method:FormItem.setCriterion')} to actually apply the criterion to the form item, and\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} can subsequently retrieve the edited criterion\n by calling ${isc.DocUtils.linkForRef('method:FormItem.getCriterion')}.\n <P>\n Default implementation will return true if the criterion <code>fieldName</code> and\n <code>operator</code> match the fieldName and operator (or default operator) for\n this item.\n\n",
        name:"canEditCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"sub-criterion from an AdvancedCriteria object",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criterion"
            }
        ],
        returns:{
            description:"return true if this item can edit the criterion in question.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:FormItem.hoverOpacity":{
        ref:"attr:FormItem.hoverOpacity",
        flags:"IRW",
        description:"Opacity for any hover shown for this item",
        name:"hoverOpacity",
        seeAlso:[
            {
                ref:"attr:DynamicForm.itemHoverOpacity",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:ColumnTree.customIconOpenProperty":{
        ref:"attr:ColumnTree.customIconOpenProperty",
        flags:"IRWA",
        description:"This property allows the developer to rename the \n ${isc.DocUtils.linkForRef('attr:TreeNode.showOpenIcon','default node.showOpenIcon')} property.",
        name:"customIconOpenProperty",
        seeAlso:[
            {
                ref:"attr:TreeGrid.customIconProperty",
                description:null
            },
            {
                ref:"attr:TreeGrid.showCustomIconOpen",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"showOpenIcon\"",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "method:Canvas.getViewportHeight":{
        ref:"method:Canvas.getViewportHeight",
        flags:"A",
        description:"  Returns the height of the viewport onto the scrollable content.\n\n",
        name:"getViewportHeight",
        seeAlso:[
        ],
        returns:{
            description:"height of the viewport, in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:TestFunctionResult.errorText":{
        ref:"attr:TestFunctionResult.errorText",
        flags:"IRW",
        description:"If the formula or summary format caused a JavaScript error, this contains the JavaScript error text.",
        name:"errorText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TestFunctionResult",
        groups:[
            "formulaFields"
        ]
    },
    "attr:RelativeDateItem.startDate":{
        ref:"attr:RelativeDateItem.startDate",
        flags:"IRW",
        description:"Minimum date the selectors will allow the user to pick.\n <P>\n <b>NOTE:</b> by design, setting <code>startDate</code> and <code>endDate</code> will not\n always prevent the user from picking invalid values.  In particular:\n <ul>\n <li> the set of available days will only be restricted if the start and end dates fall\n within the same month\n <li> the set of available months will only be restricted if the start and end dates fall\n within the same year\n </ul>\n <P>\n This is <b>by design</b> as it allows the user to set the day, month and year in\n whatever order is convenient, rather than forcing them to pick in a specific order.\n <P>\n For actual enforcement of a date being in correct range before data is submitted, a\n ${isc.DocUtils.linkForRef('class:Validator')} of type \"dateRange\" should always be declared.",
        name:"startDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"1/1/1995",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "appearance"
        ]
    },
    "method:Canvas.setShowShadow":{
        ref:"method:Canvas.setShowShadow",
        flags:"",
        description:" Method to update ${isc.DocUtils.linkForRef('attr:Canvas.showShadow')}.\n",
        name:"setShowShadow",
        seeAlso:[
        ],
        params:[
            {
                description:"true if the shadow should be visible false if not",
                optional:false,
                name:"showShadow",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "shadow"
        ]
    },
    "attr:Button.wrap":{
        ref:"attr:Button.wrap",
        flags:"IRW",
        description:"A boolean indicating whether the button's title should word-wrap, if necessary.",
        name:"wrap",
        setter:[
            "setWrap"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "basics"
        ]
    },
    "attr:DrawImage.src":{
        ref:"attr:DrawImage.src",
        flags:"IRW",
        description:"URL to the image file.",
        name:"src",
        setter:[
            "setSrc"
        ],
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"blank.png\"",
        type:"attr",
        definingClass:"class:DrawImage"
    },
    "attr:HiddenItem.colSpan":{
        ref:"attr:HiddenItem.colSpan",
        flags:"IRW",
        description:"hidden fields don't take up any columns",
        name:"colSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:HiddenItem",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.pickerIconStyle":{
        ref:"attr:FormItem.pickerIconStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's picker icon cell. If unset, inherits from\n this item's ${isc.DocUtils.linkForRef('attr:FormItem.controlStyle','controlStyle')}.",
        name:"pickerIconStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon",
            "appearance"
        ]
    },
    "object:TreeNode":{
        methods:[
        ],
        ref:"object:TreeNode",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/TreeGrid",
            "Client Reference/System/Tree"
        ],
        attrs:[
            "attr:TreeNode.enabled",
            "attr:TreeNode.canDrag",
            "attr:TreeNode.canAcceptDrop",
            "attr:TreeNode.isFolder",
            "attr:TreeNode.name",
            "attr:TreeNode.title",
            "attr:TreeNode.id",
            "attr:TreeNode.parentId",
            "attr:TreeNode.children",
            "attr:TreeNode.icon",
            "attr:TreeNode.showOpenIcon",
            "attr:TreeNode.showDropIcon"
        ],
        description:"Every node in the tree is represented by a TreeNode object which is an object literal with a\n set of properties that configure the node.\n <p>\n When a Tree is supplied as ${isc.DocUtils.linkForRef('attr:TreeGrid.data')} to ${isc.DocUtils.linkForRef('class:TreeGrid')}, you can also set\n properties from ${isc.DocUtils.linkForRef('object:ListGridRecord')} on the TreeNode (e.g. setting\n ${isc.DocUtils.linkForRef('attr:ListGridRecord.enabled')}:<code>false</code> on the node).",
        name:"TreeNode",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:Facet.borderAfter":{
        ref:"attr:Facet.borderAfter",
        flags:"IR",
        description:"CSS line style to apply as a border after this facet, eg \"1px dashed blue\"\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"borderAfter",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "class:FacetChart":{
        methods:[
            "method:FacetChart.getFacet",
            "method:FacetChart.getFacetValue",
            "method:FacetChart.setShowScatterLines",
            "method:FacetChart.setDataLineType",
            "method:FacetChart.setUseMultiplePointShapes",
            "method:FacetChart.zoomChanged",
            "method:FacetChart.valueClick",
            "method:FacetChart.legendClick",
            "method:FacetChart.dataLabelClick",
            "method:FacetChart.dataLabelHover",
            "method:FacetChart.getDataLabelHoverHTML",
            "method:FacetChart.legendHover",
            "method:FacetChart.getLegendHoverHTML",
            "method:FacetChart.getPrintHTML",
            "method:FacetChart.getChartTop",
            "method:FacetChart.getChartHeight",
            "method:FacetChart.getChartLeft",
            "method:FacetChart.getChartWidth",
            "method:FacetChart.setStacked",
            "method:FacetChart.setFilled",
            "method:FacetChart.setChartType",
            "method:FacetChart.chartBackgroundDrawn",
            "method:FacetChart.chartDrawn",
            "method:FacetChart.getGradations",
            "method:FacetChart.getYCoord",
            "method:FacetChart.getXCoord",
            "method:FacetChart.getChartCenter",
            "method:FacetChart.getChartRadius",
            "method:FacetChart.formatAxisValue",
            "method:FacetChart.formatDataValue",
            "method:FacetChart.getNumDataPoints",
            "method:FacetChart.getMean",
            "method:FacetChart.getMedian",
            "method:FacetChart.getPercentile",
            "method:FacetChart.getRange",
            "method:FacetChart.getStdDev",
            "method:FacetChart.getVariance",
            "method:FacetChart.getMax",
            "method:FacetChart.getMin",
            "method:FacetChart.setRegressionLineType",
            "method:FacetChart.setShowRegressionLine",
            "method:FacetChart.setRegressionPolynomialDegree",
            "method:FacetChart.getSimpleLinearRegressionFunction",
            "method:FacetChart.getPolynomialRegressionFunction",
            "method:FacetChart.pointClick",
            "method:FacetChart.getPointHoverHTML",
            "method:FacetChart.getLegendFacet",
            "method:FacetChart.getDataLabelFacet",
            "method:FacetChart.setDataColors",
            "method:FacetChart.getDataColor",
            "method:FacetChart.getDataGradient",
            "method:FacetChart.getDrawnValueAtPoint",
            "method:FacetChart.getDrawnValuesAtPoint",
            "method:FacetChart.drawnValueContainsPoint",
            "method:FacetChart.getNearestDrawnValue",
            "method:FacetChart.getNearestDrawnValues",
            "method:FacetChart.getDrawnValue",
            "method:FacetChart.getDrawnValues",
            "method:FacetChart.zoomTo",
            "method:FacetChart.setZoomStartValue",
            "method:FacetChart.setZoomEndValue"
        ],
        ref:"class:FacetChart",
        classAttrs:[
            "classAttr:FacetChart.allChartTypes",
            "classAttr:FacetChart.regressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.hideRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.linearRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.polynomialRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.polynomialDegreeRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.polynomialDegreePrompt",
            "classAttr:FacetChart.invalidPolynomialDegreeMessage"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Charts"
        ],
        attrs:[
            "attr:FacetChart.styleName",
            "attr:FacetChart.valueProperty",
            "attr:FacetChart.data",
            "attr:FacetChart.facets",
            "attr:FacetChart.chartType",
            "attr:FacetChart.stacked",
            "attr:FacetChart.filled",
            "attr:FacetChart.allowedChartTypes",
            "attr:FacetChart.title",
            "attr:FacetChart.showTitle",
            "attr:FacetChart.titleProperties",
            "attr:FacetChart.valueTitle",
            "attr:FacetChart.showValueAxisLabel",
            "attr:FacetChart.valueAxisLabelProperties",
            "attr:FacetChart.showDataAxisLabel",
            "attr:FacetChart.dataAxisLabelProperties",
            "attr:FacetChart.minDataSpreadPercent",
            "attr:FacetChart.axisStartValue",
            "attr:FacetChart.xAxisStartValue",
            "attr:FacetChart.minXDataSpreadPercent",
            "attr:FacetChart.gradationLabelProperties",
            "attr:FacetChart.gradationLineProperties",
            "attr:FacetChart.gradationZeroLineProperties",
            "attr:FacetChart.bandedBackground",
            "attr:FacetChart.backgroundBandProperties",
            "attr:FacetChart.showRadarGradationLabels",
            "attr:FacetChart.xAxisMetric",
            "attr:FacetChart.yAxisMetric",
            "attr:FacetChart.showScatterLines",
            "attr:FacetChart.dataLineType",
            "attr:FacetChart.probabilityMetric",
            "attr:FacetChart.showStatisticsOverData",
            "attr:FacetChart.showExpectedValueLine",
            "attr:FacetChart.expectedValueLineProperties",
            "attr:FacetChart.showStandardDeviationLines",
            "attr:FacetChart.standardDeviationLineProperties",
            "attr:FacetChart.useSymmetricStandardDeviations",
            "attr:FacetChart.standardDeviations",
            "attr:FacetChart.bandedStandardDeviations",
            "attr:FacetChart.standardDeviationBandProperties",
            "attr:FacetChart.showRegressionLine",
            "attr:FacetChart.regressionLineProperties",
            "attr:FacetChart.regressionLineType",
            "attr:FacetChart.regressionPolynomialDegree",
            "attr:FacetChart.showDataPoints",
            "attr:FacetChart.dataPointSize",
            "attr:FacetChart.dataPointProperties",
            "attr:FacetChart.pointShapes",
            "attr:FacetChart.useMultiplePointShapes",
            "attr:FacetChart.logScale",
            "attr:FacetChart.useLogGradations",
            "attr:FacetChart.logBase",
            "attr:FacetChart.logGradations",
            "attr:FacetChart.showChartRect",
            "attr:FacetChart.chartRectProperties",
            "attr:FacetChart.chartRectMargin",
            "attr:FacetChart.dataMargin",
            "attr:FacetChart.rotateLabels",
            "attr:FacetChart.autoRotateLabels",
            "attr:FacetChart.labelCollapseMode",
            "attr:FacetChart.minLabelGap",
            "attr:FacetChart.dataLabelProperties",
            "attr:FacetChart.decimalPrecision",
            "attr:FacetChart.canZoom",
            "attr:FacetChart.zoomChart",
            "attr:FacetChart.zoomChartProperties",
            "attr:FacetChart.zoomSelectionChart",
            "attr:FacetChart.zoomSelectionChartProperties",
            "attr:FacetChart.zoomShowSelection",
            "attr:FacetChart.zoomChartSlider",
            "attr:FacetChart.zoomChartHeight",
            "attr:FacetChart.zoomLogScale",
            "attr:FacetChart.colorMutePercent",
            "attr:FacetChart.zoomMutePercent",
            "attr:FacetChart.zoomStartPosition",
            "attr:FacetChart.zoomStartValue",
            "attr:FacetChart.zoomEndValue",
            "attr:FacetChart.printZoomChart",
            "attr:FacetChart.showInlineLabels",
            "attr:FacetChart.showGradationsOverData",
            "attr:FacetChart.showLegend",
            "attr:FacetChart.legendMargin",
            "attr:FacetChart.legendPadding",
            "attr:FacetChart.legendSwatchSize",
            "attr:FacetChart.legendSwatchProperties",
            "attr:FacetChart.legendTextPadding",
            "attr:FacetChart.legendItemPadding",
            "attr:FacetChart.legendRectProperties",
            "attr:FacetChart.legendLabelProperties",
            "attr:FacetChart.showShadows",
            "attr:FacetChart.shadowProperties",
            "attr:FacetChart.barMargin",
            "attr:FacetChart.minBarThickness",
            "attr:FacetChart.maxBarThickness",
            "attr:FacetChart.clusterMarginRatio",
            "attr:FacetChart.barProperties",
            "attr:FacetChart.dataLineProperties",
            "attr:FacetChart.dataOutlineProperties",
            "attr:FacetChart.dataShapeProperties",
            "attr:FacetChart.valueLineProperties",
            "attr:FacetChart.discontinuousLines",
            "attr:FacetChart.radarBackgroundProperties",
            "attr:FacetChart.radialLabelOffset",
            "attr:FacetChart.pieStartAngle",
            "attr:FacetChart.pieSliceProperties",
            "attr:FacetChart.pieBorderProperties",
            "attr:FacetChart.pieRingBorderProperties",
            "attr:FacetChart.showDoughnut",
            "attr:FacetChart.doughnutRatio",
            "attr:FacetChart.doughnutHoleProperties",
            "attr:FacetChart.pieLabelLineProperties",
            "attr:FacetChart.pieLabelAngleStart",
            "attr:FacetChart.pieLabelLineExtent",
            "attr:FacetChart.lowErrorMetric",
            "attr:FacetChart.highErrorMetric",
            "attr:FacetChart.errorBarWidth",
            "attr:FacetChart.errorLineProperties",
            "attr:FacetChart.errorBarColorMutePercent",
            "attr:FacetChart.showValueOnHover",
            "attr:FacetChart.hoverLabelProperties",
            "attr:FacetChart.hoverRectProperties",
            "attr:FacetChart.showDataValues",
            "attr:FacetChart.valueAxisMargin",
            "attr:FacetChart.gradationTickMarkLength",
            "attr:FacetChart.tickMarkToValueAxisMargin",
            "attr:FacetChart.canMoveAxes",
            "attr:FacetChart.extraAxisMetrics",
            "attr:FacetChart.extraAxisSettings",
            "attr:FacetChart.useAutoGradients",
            "attr:FacetChart.dataColors",
            "attr:FacetChart.dataGradients"
        ],
        description:"HTML5-based charting engine, implementing all ${isc.DocUtils.linkForRef('attr:Chart.chartType','chartTypes')} of the\n ${isc.DocUtils.linkForRef('interface:Chart')} interface.\n <P>\n Can be used directly, or specified as ${isc.DocUtils.linkForRef('attr:ListGrid.chartConstructor')} or\n ${isc.DocUtils.linkForRef('attr:CubeGrid.chartConstructor')}.\n <P>\n <b>NOTE:</b> you must load the Drawing and Charts\n ${isc.DocUtils.linkForRef('group:loadingOptionalModules','Optional Modules')} before you can use FacetChart.   Also, \n the Charts Module is available in Pro Edition or better, please see \n <a href='http://www.smartclient.com/product' target='_blank'>smartclient.com/product</a> for licensing \n information.\n <P>\n To create a FacetChart, set ${isc.DocUtils.linkForRef('attr:FacetChart.facets')} to an Array of Facet objects describing the\n chart dimensions and ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')} to value field name. For example:\n <smartclient>\n <pre>\n isc.FacetChart.create({\n     facets: [{\n         id: \"season\",    // the key used for this facet in the data above\n         title: \"Season\"  // the user-visible title you want in the chart\n     }],\n     valueProperty: \"temp\", // the property in our data that is the numerical value to chart\n     data: [\n         {season: \"Spring\", temp: 79},\n         {season: \"Summer\", temp: 102},\n         {season: \"Autumn\", temp: 81},\n         {season: \"Winter\", temp: 59}\n     ],\n     title: \"Average temperature in Las Vegas\"\n });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n // Creating data\n Record sprRec = new Record();\n sprRec.setAttribute(\"season\", \"Spring\");\n sprRec.setAttribute(\"temp\", \"79\");\n Record sumRec = new Record();\n sumRec.setAttribute(\"season\", \"Summer\");\n sumRec.setAttribute(\"temp\", \"102\");\n Record autRec = new Record();\n autRec.setAttribute(\"season\", \"Autumn\");\n autRec.setAttribute(\"temp\", \"81\");\n Record winRec = new Record();\n winRec.setAttribute(\"season\", \"Winter\");\n winRec.setAttribute(\"temp\", \"59\");\n \n // Creating chart\n FacetChart chart = new FacetChart();\n chart.setFacets(new Facet(\"season\", \"Season\"));\n chart.setValueProperty(\"temp\");\n chart.setData(new Record[]{sprRec, sumRec, autRec, winRec});\n chart.setTitle(\"Average temperature in Las Vegas\");\n </pre>\n </smartgwt>\n <p>\n The following SDK examples demonstrate charts with a single facet:\n <ul>\n <li>${isc.DocUtils.linkForExampleId('logScalingChart', 'Log Scaling')} example,</li>\n <li>${isc.DocUtils.linkForExampleId('dataPointsChart', 'Interactive Data Points')} example, and</li>\n <li>${isc.DocUtils.linkForExampleId('addingElements', 'Adding Element')} example.</li>\n </ul>\n See the following SDK examples for examples of charts with multiple facets:\n <ul>\n <li>${isc.DocUtils.linkForExampleId('simpleChart', 'Simple Chart')} example,</li>\n <li>${isc.DocUtils.linkForExampleId('multiSeriesChart', 'Multi-Series Chart')} example, and</li>\n <li>${isc.DocUtils.linkForExampleId('dynamicDataCharting', 'Dynamic Data')} example.</li>\n </ul>\n <p>\n <h3>the Inlined Facet</h3>\n <p>\n Having an \"inlined facet\" is another method to provide data to the chart.  In this case each CellRecord\n contains multiple data values; one facet definition is considered \"inlined\", meaning that\n the facetValueIds from this facet appear as properties in each Record, and each such\n property holds one data value.  In this case the singular <code>valueProperty</code> is ignored.\n For example:\n <smartclient>\n <pre>\n isc.FacetChart.create({\n     facets: [\n         {\n             inlinedValues: true,\n             values: [\n                 {id: \"spring\", title: \"Spring\"},\n                 {id: \"summer\", title: \"Summer\"},\n                 {id: \"autumn\", title: \"Autumn\"},\n                 {id: \"winter\", title: \"Winter\"}\n             ]\n         }\n     ],\n     data: [\n         {spring: 79, summer: 102, autumn: 81, winter: 59}\n     ],\n     title: \"Average temperature in Las Vegas\"\n });\n </pre>\n Example with two facets:\n <pre>\n isc.FacetChart.create({\n     facets: [\n         {\n             inlinedValues: true,\n             values: [\n                 {id: \"spring\", title: \"Spring\"},\n                 {id: \"summer\", title: \"Summer\"},\n                 {id: \"autumn\", title: \"Autumn\"},\n                 {id: \"winter\", title: \"Winter\"}\n             ]\n         },\n         {id: \"city\"}\n     ],\n     data: [\n         {city: \"Las Vegas\", spring: 79, summer: 102, autumn: 81, winter: 59},\n         {city: \"New York\", spring: 60, summer: 83, autumn: 66, winter: 40}\n     ],\n     stacked: false,\n     title: \"Average temperatures\"\n });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n // Creating data\n CellRecord lvRec = new CellRecord();\n lvRec.setAttribute(\"spring\", \"79\");\n lvRec.setAttribute(\"summer\", \"102\");\n lvRec.setAttribute(\"autumn\", \"81\");\n lvRec.setAttribute(\"winter\", \"59\");\n \n // Creating inlined facet\n Facet inlinedFacet = new Facet();\n inlinedFacet.setInlinedValues(true);\n inlinedFacet.setValues(\n         new FacetValue(\"spring\", \"Spring\"),\n         new FacetValue(\"summer\", \"Summer\"),\n         new FacetValue(\"autumn\", \"Autumn\"),\n         new FacetValue(\"winter\", \"Winter\")\n );\n \n // Creating chart\n FacetChart chart = new FacetChart();\n chart.setFacets(inlinedFacet);\n chart.setData(new Record[]{lvRec});\n chart.setTitle(\"Average temperature in Las Vegas\");\n </pre>\n Example with two facets:\n <pre>\n // Creating data\n CellRecord lvRec = new CellRecord();\n lvRec.setAttribute(\"city\", \"Las Vegas\");\n lvRec.setAttribute(\"spring\", \"79\");\n lvRec.setAttribute(\"summer\", \"102\");\n lvRec.setAttribute(\"autumn\", \"81\");\n lvRec.setAttribute(\"winter\", \"59\");\n CellRecord nyRec = new CellRecord();\n nyRec.setAttribute(\"city\", \"New York\");\n nyRec.setAttribute(\"spring\", \"60\");\n nyRec.setAttribute(\"summer\", \"83\");\n nyRec.setAttribute(\"autumn\", \"66\");\n nyRec.setAttribute(\"winter\", \"40\");\n \n // Creating inlined facet\n Facet inlinedFacet = new Facet();\n inlinedFacet.setInlinedValues(true);\n inlinedFacet.setValues(\n         new FacetValue(\"spring\", \"Spring\"),\n         new FacetValue(\"summer\", \"Summer\"),\n         new FacetValue(\"autumn\", \"Autumn\"),\n         new FacetValue(\"winter\", \"Winter\")\n );\n \n // Creating chart\n FacetChart chart = new FacetChart();\n chart.setFacets(inlinedFacet, new Facet(\"city\", \"City\"));\n chart.setData(new Record[]{lvRec, nyRec});\n chart.setStacked(false);\n chart.setTitle(\"Average temperatures\");\n </pre>\n </smartgwt>\n <P>\n <h3>Dual axis or multi-axis charts</h3>\n <p>\n FacetChart supports drawing multiple vertical axes.  This is commonly used to show values\n with different units (for example: sales in dollars, total units shipped) and/or very different\n ranges (for example: gross revenue, profit) on the same chart.  Each set of values, referred\n to as a \"metric\", gets its own axis and gradation marks.\n <p>\n To use multiple axes, you add an additional facet called the \"metric facet\" that specifies\n each axis to be plotted as a facetValueId.  The metric facet is an inlined facet, so as with\n inlined facets in general, each CellRecord has a value for each facetValueId of the metric\n facet.  You then set ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','extraAxisMetrics')} to the list of\n metrics that should be plotted as additional axes.\n <p>\n For example, if you were plotting revenue and profit for each month of the year, you would\n have one facet named \"metric\" with facetValueIds \"revenue\" and \"profit\" and a second facet\n \"month\".  Each CellRecord would have the revenue and profit for one month, stored under the\n properties \"revenue\" and \"profit\".  Setting <code>extraAxisMetrics</code> to [\"profit\"]\n would cause plofit to be plotted as the second axis.  See the\n ${isc.DocUtils.linkForExampleId('dualAxisChartMA', 'Dual Axis')} SDK sample for an example.\n <p>\n You can have multiple extra axes and the additional axes and gradation tics will be drawn at\n increasing distances from the chart.  By default, the first metric is drawn as a column chart\n and subsequent metrics are drawn as lines; you can override this via\n ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisSettings','extraAxisSettings')}.  See the\n ${isc.DocUtils.linkForExampleId('threePlusChartMA', '3+ Axes')} SDK sample for an example of multiple extra axes.\n <p>\n Multi-axis, multi-facet charts are also allowed.  Extending the previous example, you might\n add a new facet \"company\", for a total of 3 facets.  Each CellRecord would have \"revenue\"\n and \"profit\" for one combination of \"company\" and \"month\".  The default appearance in this\n case would show revenue as clustered columns (one cluster per month, one column per company)\n and would show profit as multiple lines (one per company).  See the\n ${isc.DocUtils.linkForExampleId('multiSeriesChartMA', 'Multi-Series')} SDK sample for an example of a\n multi-axis, multi-facet chart.\n <p>\n <h3>Mixed plots</h3>\n In some cases you want to show some data series as one shape and other data series as\n another shape <i>but use the same axis</i>.  This is commonly used when one series is of a\n fundamentally different kind than the other series (for example, a projection or average)\n but still has the same scale.\n <p>\n To achieve a mixed plot like this, define it as a multi-axis chart as explained above, but\n set ${isc.DocUtils.linkForRef('attr:MetricSettings.showAxis')} false to avoid a second axis appearing, and set\n ${isc.DocUtils.linkForRef('attr:MetricSettings.matchGradations')} to cause the same gradations to be used for both\n plots.\n <p>\n See the ${isc.DocUtils.linkForExampleId('mixedPlotsChart', 'Mixed Plots')} SDK example.\n <p>\n <h3>Scatter Charts</h3>\n <p>\n Scatter charts differ from other chart types in that both axes represent continuous numeric\n data rather than a discrete set of facet values (like months of the year).  For this reason\n Scatter charts use the same concept of a \"metric\" facet as is used by Dual-Axis charts,\n where the metric facet is expected to have exactly two metrics: the\n ${isc.DocUtils.linkForRef('attr:FacetChart.xAxisMetric','xAxisMetric')} and ${isc.DocUtils.linkForRef('attr:FacetChart.yAxisMetric','yAxisMetric')}.\n <p>\n Unlike all other chart types, a scatter plot may be specified with only the metric facet.\n However one additional facet can be defined, which allows multiple sets of x,y points to be\n drawn in different colors, analogous to the different colors of a multi-series line chart.\n <p>\n See the ${isc.DocUtils.linkForExampleId('scatterPlotCharting', 'Scatter Plot')} SDK example.\n <p>\n <b>Date values on the X axis</b>\n <p>\n FacetChart also supports scatter charts where the x-axis represents date- or time-valued\n data and the y-axis represents numeric data, as normal.  To enable this mode all records in\n the data must have values for the facetValueId of the\n ${isc.DocUtils.linkForRef('attr:FacetChart.xAxisMetric','xAxisMetric')} that are true Date objects, not Strings or\n <code>null</code>s.  For these charts, vertical lines are drawn to represent a sequence of\n significant datetime values on the x-axis, such as the first day of the month or week.  The\n mechanism used to select these Dates and format them into the x-axis labels is the same\n mechanism used by charts with ${isc.DocUtils.linkForRef('attr:FacetChart.labelCollapseMode','labelCollapseMode')} set to\n \"time\".\n <p>\n <h3>Notes on printing</h3>\n <P>\n FacetCharts support printing on all supported desktop browsers.  When using Pro Edition or \n better with the SmartClient Server Framework installed, charts can also be exported to PDF \n via ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportContent')} or to images via ${isc.DocUtils.linkForRef('classMethod:RPCManager.exportImage')}.",
        name:"FacetChart",
        implementsInterfaces:[
            "Chart"
        ],
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawPane",
        requiresModules:[
            "Charts"
        ]
    },
    "classAttr:FacetChart.polynomialDegreeRegressionLinesContextMenuItemTitle":{
        ref:"classAttr:FacetChart.polynomialDegreeRegressionLinesContextMenuItemTitle",
        flags:"IRW",
        description:"Title for the <code>\"Polynomial Degree...\"</code> option of the <code>\"Regression Lines\"</code>\n option in the context menu for scatter plots.",
        name:"polynomialDegreeRegressionLinesContextMenuItemTitle",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Polynomial Degree...\"",
        type:"classAttr",
        definingClass:"class:FacetChart",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ValuesManager.submit":{
        ref:"method:ValuesManager.submit",
        flags:"",
        description:" <code>submit()</code> is automatically called when a ${isc.DocUtils.linkForRef('class:SubmitItem')} in a member form\n is clicked, or if ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOnEnter','saveOnEnter')} is set for some member form,\n when the\n \"Enter\" key is pressed in a text input.  Submit can also be manually called.\n <P>\n If ${isc.DocUtils.linkForRef('method:ValuesManager.submitValues','valuesManager.submitValues()')} exists, it\n will be called, and no further action will be taken.\n <P>\n Otherwise, ${isc.DocUtils.linkForRef('method:ValuesManager.saveData')} will be called to\n handle saving via SmartClient databinding.  \n <P>\n The parameters to <code>submit()</code> apply only if <code>submit()</code> will be\n calling ${isc.DocUtils.linkForRef('method:ValuesManager.saveData')}.  If you override <code>submit()</code>, you can safely\n ignore the parameters as SmartClient framework code does not pass them.\n\n",
        name:"submit",
        seeAlso:[
            {
                ref:"method:ValuesManager.submitValues",
                description:null
            }
        ],
        params:[
            {
                description:"callback to invoke on completion.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:ListGrid.errorIconWidth":{
        ref:"attr:ListGrid.errorIconWidth",
        flags:"IRW",
        description:"Height of the error icon, if we're showing icons when validation errors occur.",
        name:"errorIconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "errorIcon"
        ]
    },
    "attr:Canvas.groupLabelStyleName":{
        ref:"attr:Canvas.groupLabelStyleName",
        flags:"IR",
        description:"Sets the style for the grouping label. Only necessary when ${isc.DocUtils.linkForRef('attr:Canvas.isGroup')}\n is set to true.\n <p>\n Note that ${isc.DocUtils.linkForRef('attr:Canvas.groupLabelBackgroundColor')} overrides any background-color of this style.",
        name:"groupLabelStyleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"groupLabel\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.childrenSnapToGrid":{
        ref:"attr:Canvas.childrenSnapToGrid",
        flags:"IRW",
        description:"If true, causes this canvas's children to snap to its grid when dragging.\n This behavior can be overridden on a per-child basis by setting the\n ${isc.DocUtils.linkForRef('attr:Canvas.snapToGrid','snapToGrid')} value on the child.",
        name:"childrenSnapToGrid",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:Canvas.htmlPosition":{
        ref:"attr:Canvas.htmlPosition",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.htmlElement')} is specified, this attribute specifies the position where\n the canvas should be inserted relative to the <code>htmlElement</code> in the DOM.",
        name:"htmlPosition",
        setter:[
            "setHtmlPosition"
        ],
        seeAlso:[
        ],
        valueType:"DrawPosition",
        defaultValue:"\"afterBegin\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "htmlElement",
            "positioning"
        ]
    },
    "type:HoverMode":{
        ref:"type:HoverMode",
        values:[
            {
                description:"Show a single field's value in an ${isc.DocUtils.linkForRef('class:HTMLFlow')}. Field      to use is ${isc.DocUtils.linkForRef('attr:ListGrid.detailField')}.",
                value:"\"detailField\""
            },
            {
                description:"Show a ${isc.DocUtils.linkForRef('class:DetailViewer')} displaying those fields from the      record which are not already displayed in the grid.",
                value:"\"details\""
            },
            {
                description:"Show a separate ${isc.DocUtils.linkForRef('class:ListGrid')} containing related-records.      See ${isc.DocUtils.linkForRef('attr:ListGridRecord.detailDS')} and ${isc.DocUtils.linkForRef('attr:ListGrid.recordDetailDSProperty')} for\n      more information.",
                value:"\"related\""
            },
            {
                description:"Show a ${isc.DocUtils.linkForRef('class:DetailViewer')} displaying those fields      from the record not already displayed in the grid, together with a separate\n      ${isc.DocUtils.linkForRef('class:ListGrid')} containing related-records.",
                value:"\"detailRelated\""
            }
        ],
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canHover','canHover')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHoverComponents','showHoverComponents')} are both true, HoverMode\n dictates the type of UI to be displayed when a user hovers over a row or cell.\n <P>\n There are a number of builtin HoverModes and you can override\n ${isc.DocUtils.linkForRef('method:ListGrid.getCellHoverComponent','getCellHoverComponent()')} to create your own\n hover behaviors.",
        name:"HoverMode",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "hoverComponents"
        ]
    },
    "type:ExportDisplay":{
        ref:"type:ExportDisplay",
        values:[
            {
                description:"Show the Save As dialog and download the file",
                value:"\"download\""
            },
            {
                description:"Show the data in a new browser window",
                value:"\"window\""
            },
            {
                description:"Return the data for further programmatic processing in the browser",
                value:"\"return\""
            }
        ],
        description:"Method to use for displaying the exported data.",
        name:"ExportDisplay",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed"
    },
    "classAttr:Operators.iNotContainsFieldTitle":{
        ref:"classAttr:Operators.iNotContainsFieldTitle",
        flags:"IR",
        description:"Title for the \"iNotContainsField\" operator",
        name:"iNotContainsFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not contain (case insensitive) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FilterBuilder.setCriteria":{
        ref:"method:FilterBuilder.setCriteria",
        flags:"",
        description:" Set new criteria for editing.  \n <P>\n An interface for editing the provided criteria will be generated identically to what happens\n when initialized with ${isc.DocUtils.linkForRef('type:Criteria')}.\n <P>\n Any existing criteria entered by the user will be discarded.  \n \n",
        name:"setCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"new criteria.  Pass null or {} to effectively reset the                                    filterBuilder to it's initial state when no criteria are\n                                    specified",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:DrawLinePath.startTop":{
        ref:"attr:DrawLinePath.startTop",
        flags:"IR",
        description:"Starting top coordinate of the line.  Overrides top coordinate of ${isc.DocUtils.linkForRef('attr:DrawLinePath.startPoint')} if\n both are set.",
        name:"startTop",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0 , IRW",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "attr:EditContext.persistCoordinates":{
        ref:"attr:EditContext.persistCoordinates",
        flags:"IRW",
        description:"If enabled, changes to a ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObject')}'s position\n and size will be persisted to their ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')}.  This\n applies to both programmatic calls and user interaction (drag reposition\n or drag resize).",
        name:"persistCoordinates",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:EditContext"
    },
    "attr:ComboBoxItem.autoFetchData":{
        ref:"attr:ComboBoxItem.autoFetchData",
        flags:"IRA",
        description:"If this combo box retrieves its options from a <code>dataSource</code>, should options\n be fetched from the server when the item is first written out, or should this fetch be\n delayed until the user opens the pickList.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"attr:PickList.optionDataSource",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:Canvas.isDisabled":{
        ref:"method:Canvas.isDisabled",
        flags:"",
        description:" Is this canvas disabled? Note that the disabled state is inherited - this method will return\n true if this widget, or any of its ancestors are marked disabled.\n",
        name:"isDisabled",
        seeAlso:[
        ],
        returns:{
            description:"true if the widget or any widget above it in the containment hierarchy                      are disabled.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "enable"
        ]
    },
    "attr:ToolStripGroup.autoSizeToTitle":{
        ref:"attr:ToolStripGroup.autoSizeToTitle",
        flags:"IR",
        description:"By default, ToolStripGroups are assigned a minimum width that allows the entire title \n to be visible.  To prevent this bahavior and have group-titles cut off when they're \n wider than the buttons they contain, set this attribute to false",
        name:"autoSizeToTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "group:safeSkinning":{
        ref:"group:safeSkinning",
        title:"Safe Skinning",
        refs:[
        ],
        description:"The skinning mechanism is extremely powerful and gives you the ability to change\n internal functionality of components.  While this is useful for workarounds, you should\n think through any properties you override, considering what will happen with future\n versions of SmartClient, where the defaults may change or be expanded.\n <P>\n The following kinds of overrides are generally very safe:\n <ul>\n <li> Change ${isc.DocUtils.linkForRef('attr:Canvas.styleName','styleName')} or ${isc.DocUtils.linkForRef('attr:Button.baseStyle','baseStyle')} to\n provide a custom CSS style or series of styles\n <li> Change a media path such as the ${isc.DocUtils.linkForRef('attr:Img.src','src')} of the\n ${isc.DocUtils.linkForRef('attr:Window.minimizeButton')}.\n <li> Change the size of any part of the UI that has a fixed pixel size, such as\n the height and width of the ${isc.DocUtils.linkForRef('attr:Window.minimizeButton')}, especially when this is done\n to match the size of media you have created\n <li> Set properties such as ${isc.DocUtils.linkForRef('attr:Button.showRollOver')} that cause a component to\n visually react to more or fewer UI states (disabled, over, down, etc)\n </ul>\n The following should be very carefully considered:\n <ul>\n <li> Adding custom behaviors by passing in event handlers such as\n (eg ${isc.DocUtils.linkForRef('method:Canvas.showContextMenu','showContextMenu()')}).  If future versions of the\n component add more functionality, you may prevent new features from functioning, cause\n them to function only partially, or break.\n <P>\n If you want to ensure that you do not break new functionality added in future SmartClient\n versions, be sure to call ${isc.DocUtils.linkForRef('method:Class.Super','Super()')} for methods you override, and do not\n prevent events from bubbling.\n <P>\n If you want to ensure that <b>only</b> your custom behavior is used if a future version\n of a SmartClient component adds functionality, override all methods involved in the\n interaction, even if your methods do nothing.  For example, for a custom drop\n interaction, override dropOver, dropMove, dropOut and drop, even if you do nothing on\n dropMove().  Then, do not call Super() if there is no superclass behavior required for\n the interaction you've implemented.  Also, for any event handlers (such as drop())\n return false if you consider your code to have completely handled the event (no\n parent component should react).\n </ul>\n The following are not recommended:\n <ul>\n <li> Providing a global ${isc.DocUtils.linkForRef('attr:Canvas.ID','ID')} to a subcomponent (only works once).\n <li> Overriding ${isc.DocUtils.linkForRef('attr:Canvas.backgroundColor')}, ${isc.DocUtils.linkForRef('attr:Canvas.border','border')},\n ${isc.DocUtils.linkForRef('attr:Canvas.margin','margin')}, ${isc.DocUtils.linkForRef('attr:Canvas.padding','padding')}, or in general any single\n attribute otherwise controlled by CSS.  Future SmartClient versions may change the base\n CSS style, rendering your single-property customization senseless.  Change the entire\n CSS style via ${isc.DocUtils.linkForRef('attr:Canvas.styleName','styleName')} instead.\n </ul>",
        name:"safeSkinning",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormItem.wrapTitle":{
        ref:"attr:FormItem.wrapTitle",
        flags:"IRW",
        description:"If specified determines whether this items title should wrap.\n Overrides ${isc.DocUtils.linkForRef('attr:DynamicForm.wrapItemTitles','wrapItemTitles')} at the DynamicForm level.",
        name:"wrapTitle",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "attr:GridRenderer.emptyMessageTableStyle":{
        ref:"attr:GridRenderer.emptyMessageTableStyle",
        flags:"IRW",
        description:"CSS styleName for the table as a whole if we're showing the empty message",
        name:"emptyMessageTableStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "emptyMessage"
        ]
    },
    "method:ListGrid.showRecordComponent":{
        ref:"method:ListGrid.showRecordComponent",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} is true, return false from this method\n to prevent the recordComponent system from processing the passed record or cell.\n <P>\n <b>If ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell','showRecordComponentsByCell')} is true, \n it is important to implement this method</b> - especially if the grid has many fields - \n otherwise, the internal automatic detection will process every visible cell, checking,\n for example, whether a component already exists for that cell, before eventually running \n ${isc.DocUtils.linkForRef('method:ListGrid.createRecordComponent')} to check if one is required.  Implementing this\n method avoids all that processing for cells that aren't expected to have components.\n <P>\n The second parameter is only applicable if ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is true.\n\n",
        name:"showRecordComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"record being processed",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"column index of the cell in which the record component   may be shown. Will be null unless showRecordComponentsByCell is true.",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"integer"
            }
        ],
        returns:{
            description:"return false to cancel showRecordComponent behavior",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:RibbonBar.addGroup":{
        ref:"method:RibbonBar.addGroup",
        flags:"",
        description:" Add a new group to this RibbonBar. You can either create your group externally and pass \n it in, or you can pass a properties block from which to automatically construct it.\n\n",
        name:"addGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"the new group to add to this ribbon",
                optional:false,
                name:"group",
                defaultValue:null,
                type:"RibbonGroup"
            },
            {
                description:"the index at which to insert the new group",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:RibbonBar"
    },
    "method:Slider.setRoundValues":{
        ref:"method:Slider.setRoundValues",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.roundValues')} property of the slider\n\n",
        name:"setRoundValues",
        seeAlso:[
        ],
        params:[
            {
                description:"round slider values?",
                optional:false,
                name:"roundValues",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:TreeNode.name":{
        ref:"attr:TreeNode.name",
        flags:"IR",
        description:"Provides a name for the node that is unique among its immediate siblings, thus allowing a\n unique path to be used to identify the node, similar to a file system.  See\n ${isc.DocUtils.linkForRef('method:Tree.getPath')}.\n <p>\n If the nameProperty is not set on a given node, the ${isc.DocUtils.linkForRef('attr:TreeNode.id')} will be used instead.  If\n this is also missing, ${isc.DocUtils.linkForRef('method:Tree.getName')} and ${isc.DocUtils.linkForRef('method:Tree.getPath')} will auto-generate a\n unique name for you.  Thus names are not required, but if the dataset you are using already\n has usable names for each node, using them can make APIs such as ${isc.DocUtils.linkForRef('method:Tree.find')} more\n useful.  Alternatively, if your dataset has unique ids consider providing those as\n ${isc.DocUtils.linkForRef('attr:TreeNode.id')}.\n <P>\n If a value provided for the nameProperty of a node (e.g. node.name) is not a\n string, it will be converted to a string by the Tree via \"\"+value.\n <p>\n This property is also used as the default title for the node (see ${isc.DocUtils.linkForRef('method:Tree.getTitle')})\n if ${isc.DocUtils.linkForRef('attr:TreeNode.title')} is not specified.\n <p>\n Note: the name of this property can be changed by setting ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')}.",
        name:"name",
        seeAlso:[
            {
                ref:"attr:Tree.nameProperty",
                description:null
            },
            {
                ref:"attr:Tree.pathDelim",
                description:null
            },
            {
                ref:"method:Tree.getPath",
                description:null
            },
            {
                ref:"method:Tree.getTitle",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null, but see below",
        type:"attr",
        definingClass:"object:TreeNode"
    },
    "attr:FacetChart.backgroundBandProperties":{
        ref:"attr:FacetChart.backgroundBandProperties",
        flags:"IR",
        description:"Properties for background band",
        name:"backgroundBandProperties",
        seeAlso:[
        ],
        valueType:"DrawRect Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classAttr:Validator.mustBeLaterThan":{
        ref:"classAttr:Validator.mustBeLaterThan",
        flags:"IRA",
        description:"Default error message to display when standard <code>dateRange</code> type validator\n returns false because the value passed in is greater than the specified maximum date.\n <p>This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeLaterThan",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be later than ${min}\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:RelativeDate.value":{
        ref:"attr:RelativeDate.value",
        flags:"IR",
        description:"The value of this relative date, specified as a ${isc.DocUtils.linkForRef('type:RelativeDateString')} \n or ${isc.DocUtils.linkForRef('type:RelativeDateShortcut')}.",
        name:"value",
        seeAlso:[
        ],
        valueType:"RelativeDateString or RelativeDateShortcut",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:RelativeDate"
    },
    "attr:DateItem.inputFormat":{
        ref:"attr:DateItem.inputFormat",
        flags:"IRW",
        getter:[
            "getInputFormat"
        ],
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is <code>true</code> this property can be used to specify\n the input format for date strings. \n If unset, the input format will be determined based on the specified\n ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter')} if possible (see ${isc.DocUtils.linkForRef('method:DateItem.getInputFormat')}), otherwise\n picked up from the Date class (see ${isc.DocUtils.linkForRef('classMethod:Date.setInputFormat')}).\n <P>\n Should be set to a standard ${isc.DocUtils.linkForRef('type:DateInputFormat')}\n <P>\n Note that the ${isc.DocUtils.linkForRef('type:DateInputFormat')} property is sufficient to parse date or datetime\n strings specified in most standard date formats. However should an entirely custom\n parsing function be required developers can \n <smartclient>implement a custom ${isc.DocUtils.linkForRef('method:DateItem.parseEditorValue')} method.</smartclient>\n <smartgwt>apply a custom <code>editorValueParser</code> function.</smartgwt>\n <p>\n This attribute does not have an effect if a native HTML5 date input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"inputFormat",
        seeAlso:[
            {
                ref:"attr:DateItem.displayFormat",
                description:null
            }
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "attr:Lane.height":{
        ref:"attr:Lane.height",
        flags:"IR",
        description:"In ${isc.DocUtils.linkForRef('class:Timeline')}s, the height of this Lane's row.  Has no effect when set on a Lane being\n displayed in a ${isc.DocUtils.linkForRef('attr:Calendar.dayView','dayView')} as a result of ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes','showDayLanes')} being set.",
        name:"height",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Lane"
    },
    "attr:FacetChart.showScatterLines":{
        ref:"attr:FacetChart.showScatterLines",
        flags:"IRW",
        description:"Whether to draw lines between adjacent data points in \"Scatter\" plots.  See also\n ${isc.DocUtils.linkForRef('type:DataLineType')} for enabling smoothing.",
        name:"showScatterLines",
        setter:[
            "setShowScatterLines"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('scatterPlotCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "classMethod:AutoTest.locateCanvasFromDOMElement":{
        ref:"classMethod:AutoTest.locateCanvasFromDOMElement",
        flags:"",
        description:" Given an element in the DOM, returns the canvas containing this element, or null if\n the element is not contained in any canvas handle.\n",
        name:"locateCanvasFromDOMElement",
        seeAlso:[
        ],
        params:[
            {
                description:"DOM element within in the page",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"DOMElement"
            }
        ],
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "type:FormItemBaseStyle":{
        ref:"type:FormItemBaseStyle",
        description:"This string is the base CSS class name applied to a FormItem (or some part of a form item).\n The style name will be modified as the 'state' of the form item changes. Specifically:<ul>\n <li>If ${isc.DocUtils.linkForRef('attr:FormItem.showFocused')} is true, when the form item receives focus, this\n     style will have the suffix \"Focused\" appended to it.</li>\n <li>If ${isc.DocUtils.linkForRef('attr:FormItem.showErrorStyle')} is true, if the form item has errors, this\n     style will have the suffix \"Error\" appended to it.</li>\n <li>If ${isc.DocUtils.linkForRef('attr:FormItem.showDisabled')} is true, when the form item is disabled, this\n     style will have the suffix \"Disabled\" appended to it.</li>\n <li>Finally, if ${isc.DocUtils.linkForRef('attr:FormItem.showRTL')} is true, when the form item is in RTL mode, this\n     style will have the suffix \"RTL\" appended to it.</ul>\n So for example if the cellStyle for some form item is set to \"formCell\" and showFocused\n is true, when the form item receives focus, the form item's cell will have the \"formCellFocused\"\n style applied to it.",
        name:"FormItemBaseStyle",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "attr:SectionHeader.clipTitle":{
        ref:"attr:SectionHeader.clipTitle",
        flags:"IR",
        description:"If the title for this section header is too large for the available space, should the title be\n clipped?\n <p>\n This feature is supported only in browsers that support the CSS UI text-overflow\n property (IE6+, Firefox 7+, Safari, Chrome, Opera 9+).",
        name:"clipTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionHeader"
    },
    "attr:ResultSet.sortSpecifiers":{
        ref:"attr:ResultSet.sortSpecifiers",
        flags:"IA",
        description:"Initial sort specifiers for a ResultSet. Use ${isc.DocUtils.linkForRef('method:ResultSet.setSort')} and \n ${isc.DocUtils.linkForRef('method:ResultSet.getSort')} to sort the data after initialization rather than\n attempting to read or modify this property directly.\n <P>\n Note: if ${isc.DocUtils.linkForRef('attr:ResultSet.initialData')} was specified, the data is assumed to already\n be sorted to match this sort configuration.",
        name:"sortSpecifiers",
        seeAlso:[
        ],
        valueType:"Array of SortSpecifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "fetching",
            "cacheSync"
        ]
    },
    "attr:ColorItem.defaultPickerMode":{
        ref:"attr:ColorItem.defaultPickerMode",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('class:ColorPicker')} associated with this ColorItem can operate in either a \"simple\" mode \n (where it displays just the 40 basic colors and allows the user to click one), or a \n \"complex\" mode (where the user can specify a color from anywhere in the spectrum, with \n an optional alpha element). The defaultPickMode attribute specifies which of these two \n modes is in force when the picker first loads.",
        name:"defaultPickerMode",
        seeAlso:[
            {
                ref:"attr:ColorPicker.defaultPickMode",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"simple\"",
        type:"attr",
        definingClass:"class:ColorItem"
    },
    "method:Window.flash":{
        ref:"method:Window.flash",
        flags:"A",
        description:"          Makes the window header flash if it's visible; if there's no header, or the header\n          is hidden, makes the window body flash instead.\n          <p>\n\t\t\tThis method is executed when users click outside the bounds of a modal window\n\t\t\tso they'll notice that they have to do something with the window.\n",
        name:"flash",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Window",
        groups:[
            "modal"
        ]
    },
    "attr:ListGrid.recordCanRemoveProperty":{
        ref:"attr:ListGrid.recordCanRemoveProperty",
        flags:"IRA",
        description:"If set to false on a record and ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords','canRemoveRecords')} is\n true, removal of that record is disallowed in the UI. The icon in the remove field\n is not shown.",
        name:"recordCanRemoveProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"_canRemove\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:DataSource.patternMultiWildcard":{
        ref:"attr:DataSource.patternMultiWildcard",
        flags:"IR",
        description:"When using the \"matchesPattern\", \"iMatchesPattern\", \"containsPattern\" or \"iContainsPattern\"\n ${isc.DocUtils.linkForRef('type:OperatorId','search operator')}, character that matches a series of one or more characters.\n <p>\n Pass multiple strings to provide multiple alternative wildcards.",
        name:"patternMultiWildcard",
        seeAlso:[
        ],
        valueType:"String | Array of String",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "group:emptyMessage":{
        ref:"group:emptyMessage",
        refs:[
            "attr:DetailViewer.showEmptyMessage",
            "attr:DetailViewer.emptyMessage",
            "attr:DetailViewer.emptyMessageStyle",
            "attr:DetailViewer.loadingMessage",
            "attr:DetailViewer.loadingMessageStyle",
            "attr:GridRenderer.showEmptyMessage",
            "attr:GridRenderer.emptyMessage",
            "attr:GridRenderer.emptyMessageTableStyle",
            "attr:GridRenderer.emptyMessageStyle",
            "attr:GridRenderer.showOfflineMessage",
            "attr:GridRenderer.offlineMessageStyle",
            "attr:GridRenderer.offlineMessage",
            "attr:ListGrid.showEmptyMessage",
            "attr:ListGrid.emptyMessage",
            "attr:ListGrid.emptyMessageStyle",
            "attr:ListGrid.loadingDataMessage",
            "attr:ListGrid.loadingDataMessageStyle",
            "attr:ListGrid.loadingMessage"
        ],
        name:"emptyMessage",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridField.headerHoverDelay":{
        ref:"attr:ListGridField.headerHoverDelay",
        flags:"IRW",
        description:"Delay in ms for hovers shown over this field's header.\n <P>\n If unset, any ${isc.DocUtils.linkForRef('attr:ListGridField.hoverDelay')} will be used for both header hovers\n and hovers shown over cells in the grid's body.",
        name:"headerHoverDelay",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:DrawKnob.y":{
        ref:"attr:DrawKnob.y",
        flags:"IR",
        description:"Y-Coordinate for this DrawKnob. DrawKnob will initially be drawn centered over this\n coordinate",
        name:"y",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawKnob"
    },
    "attr:ColorPicker.opacityText":{
        ref:"attr:ColorPicker.opacityText",
        flags:"IR",
        description:"The text to show underneath the selected color box, so that it can \n be seen through semi-transparent colors. If you do not want such text, set \n this value to blank. This value is irrelevant if \n ${isc.DocUtils.linkForRef('attr:ColorPicker.supportsTransparency')} is false.",
        name:"opacityText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Lorem ipsum dolor sit amet, consectetuer adipiscing elit.\"",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "group:formValuesManager":{
        ref:"group:formValuesManager",
        refs:[
            "attr:DynamicForm.valuesManager"
        ],
        name:"formValuesManager",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DrawKnob.x":{
        ref:"attr:DrawKnob.x",
        flags:"IR",
        description:"X-Coordinate for this DrawKnob. DrawKnob will initially be drawn centered over this\n coordinate",
        name:"x",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawKnob"
    },
    "method:FormItem.getIconHeight":{
        ref:"method:FormItem.getIconHeight",
        flags:"A",
        description:"\tTakes an icon definition object, and returns the height for that icon in px.\n",
        name:"getIconHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"icon definition object for this item.",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"height of the form item icon in px",
            type:"number"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "sizing"
        ]
    },
    "method:TileGrid.exportData":{
        ref:"method:TileGrid.exportData",
        flags:"",
        description:" Sends the current filter criteria and sort direction to the server, then exports data in the\n requested ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportFormat')}.\n <P>\n A variety of DSRequest settings, such as \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportAs')} and ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename')}, affect the \n exporting process: see ${isc.DocUtils.linkForRef('attr:DSRequest.exportResults','exportResults')} for further detail.\n <P>\n Note that data exported via this method does not include any client-side formatting and\n relies on both the SmartClient server and server-side DataSources.  To export client-data \n with formatters applied, \n see ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData')}, which still requires the\n SmartClient server but does not rely on server-side DataSource definitions (.ds.xml files).\n <P>\n For more information on exporting data, see ${isc.DocUtils.linkForRef('method:DataSource.exportData')}.\n\n",
        name:"exportData",
        seeAlso:[
        ],
        params:[
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"callback to invoke on completion.  Note that this parameter                                  only applies where ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient')} is \n                                  explicitly set to false, because  file downloads do not \n                                  provide ordinary SmartClient callbacks",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:MetricSettings.logBase":{
        ref:"attr:MetricSettings.logBase",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:MetricSettings.useLogGradations')}, base value for logarithmic gradation lines.  Gradation\n lines will be shown at every power of this value plus intervening values specified by\n ${isc.DocUtils.linkForRef('attr:MetricSettings.logGradations')}.",
        name:"logBase",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"10",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:ListGrid.getGroupSummaryData":{
        ref:"method:ListGrid.getGroupSummaryData",
        flags:"",
        description:" If this grid is ${isc.DocUtils.linkForRef('attr:ListGrid.groupByField','grouped')}, and ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true,\n this method will <smartclient>be called for each group to</smartclient> return the\n  group summary data <smartclient>to display</smartclient><smartgwt>displayed</smartgwt>\n  at the end of the group.\n <P><smartclient>\n By default this will call ${isc.DocUtils.linkForRef('method:ListGridField.getGroupSummary')} if defined for each field and\n generate an array of records containing the resulting values. If no explicit per-field\n getGroupSummary method is present, this method will fall back to calling the appropriate\n ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')}.\n <P></smartclient>\n This method may <smartclient>be overridden for custom group-summary display, and\n may</smartclient> return multiple records if more than one summary row per group is desired.\n\n",
        name:"getGroupSummaryData",
        seeAlso:[
        ],
        params:[
            {
                description:"the records in the group, for which the summary values                                  are being calculated",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record"
            },
            {
                description:"object with specified groupValue and groupName for this group",
                optional:false,
                name:"groupNode",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"summary record(s)",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DetailViewerField.cellStyle":{
        ref:"attr:DetailViewerField.cellStyle",
        flags:"IRW",
        getter:[
            "getCellStyle"
        ],
        description:"If specified, cells in this field will be rendered using this css className rather than\n ${isc.DocUtils.linkForRef('attr:DetailViewer.cellStyle')}",
        name:"cellStyle",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:Validator.dependentFields":{
        ref:"attr:Validator.dependentFields",
        flags:"IRA",
        description:"User-defined list of fields on which this validator depends. Primarily used for validators\n of type \"custom\" but can also be used to supplement ${isc.DocUtils.linkForRef('attr:Validator.applyWhen')} criteria.",
        name:"dependentFields",
        seeAlso:[
            {
                ref:"attr:Validator.applyWhen",
                description:null
            }
        ],
        valueType:"Array[] of String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allow",
        definingClass:"class:Validator"
    },
    "method:ResultTree.setOpenState":{
        ref:"method:ResultTree.setOpenState",
        flags:"",
        description:" Reset the set of open folders within this tree's data to match the \n ${isc.DocUtils.linkForRef('type:TreeGridOpenState')} object passed in.\n <P>\n Used to restore previous state retrieved from the tree by a call to \n ${isc.DocUtils.linkForRef('method:ResultTree.getOpenState')}.\n\n",
        name:"setOpenState",
        seeAlso:[
            {
                ref:"method:ResultTree.getOpenState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired set of open folders.",
                optional:false,
                name:"openState",
                defaultValue:null,
                type:"TreeGridOpenState"
            }
        ],
        type:"method",
        definingClass:"class:ResultTree",
        groups:[
            "viewState"
        ]
    },
    "attr:TabSet.closeTabIcon":{
        ref:"attr:TabSet.closeTabIcon",
        flags:"IR",
        description:"Default src for the close icon for tabs to display if ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')} is true.",
        name:"closeTabIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"[SKIN]/TabSet/close.png",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:RelativeDateItem.parseEditorValue":{
        ref:"method:RelativeDateItem.parseEditorValue",
        flags:"A",
        description:" RelativeDateItems do not make use of the standard ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} and\n ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} methods. Developers can customize the display values\n for these items in the following ways:<ul>\n <li>The ${isc.DocUtils.linkForRef('attr:RelativeDateItem.presetOptions')} map allows standard preset RelativeDateString \n     and RelativeDateShortcut values to be mapped to custom display values</li>\n <li>The text displayed for each of the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.timeUnitOptions')} (e.g:\"N days ago\") may be\n     customized via the per-time unit title attributes (${isc.DocUtils.linkForRef('attr:RelativeDateItem.daysFromNowTitle')}, \n     ${isc.DocUtils.linkForRef('attr:RelativeDateItem.daysAgoTitle')}, etc)</li>\n <li>The ${isc.DocUtils.linkForRef('attr:RelativeDateItem.dateFormatter')} and ${isc.DocUtils.linkForRef('attr:RelativeDateItem.inputFormat')} may be used modify how date values\n     are displayed (both in the text entry box and in the\n    ${isc.DocUtils.linkForRef('attr:RelativeDateItem.showCalculatedDateField','calculatedDateField')}</li>\n </ul>\n",
        name:"parseEditorValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "method:ListGrid.unmarkRecordRemoved":{
        ref:"method:ListGrid.unmarkRecordRemoved",
        flags:"",
        description:" Reverses a previous call to ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')}.\n <P>\n Note that a record that is marked for removal and then un-marked retains any uncommited\n edits from before it was marked for removal.  These can be discarded with\n ${isc.DocUtils.linkForRef('method:ListGrid.discardEdits')}.\n",
        name:"unmarkRecordRemoved",
        seeAlso:[
        ],
        params:[
            {
                description:"index of record to clear the 'removed'",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:ListGrid.groupIconSize":{
        ref:"attr:ListGrid.groupIconSize",
        flags:"IRW",
        description:"Default width and height of group icons for this ListGrid.",
        name:"groupIconSize",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"Number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:ListGrid.recordEditProperty":{
        ref:"attr:ListGrid.recordEditProperty",
        flags:"IRWA",
        description:"Property name on a record that should be checked to determine whether the record may be\n edited.\n <br>\n This property is configurable to avoid possible collision with data values in record.\n With the default setting of \"_canEdit\", a record can be set non-editable by ensuring\n record._canEdit == false.\n <br>\n For controlling editability for the entire grid or for a field, set grid.canEdit or\n field.canEdit.",
        name:"recordEditProperty",
        seeAlso:[
            {
                ref:"attr:ListGrid.canEdit",
                description:null
            },
            {
                ref:"attr:ListGridField.canEdit",
                description:null
            },
            {
                ref:"method:ListGrid.canEditCell",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"_canEdit\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:RelativeDateItem.getInputFormat":{
        ref:"method:RelativeDateItem.getInputFormat",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is <code>true</code> this method returns a\n standard ${isc.DocUtils.linkForRef('type:DateInputFormat')}, determining how values entered\n by the user are to be converted to Javascript Date objects.\n <P>\n If an explicit ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat')} has been specified it will be returned,\n otherwise, if a custom ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter')} or ${isc.DocUtils.linkForRef('dateItem.format')} are\n specified, the input format will be automatically derived from that property.\n <P>\n Otherwise, the global ${isc.DocUtils.linkForRef('DateUtil.setInputFormat','inputFormat')} is used.\n <P>\n Note that the inputFormat will ignore any separator characters and padding of values.\n However if necessary entirely custom date formatting and parsing may be achieved via the\n <smartclient>${isc.DocUtils.linkForRef('method:DateItem.formatEditorValue')} and\n ${isc.DocUtils.linkForRef('method:DateItem.parseEditorValue')} methods.</smartclient>\n <smartgwt><code>setEditorValueFormatter()</code> and \n <code>setEditorValueParser()</code> APIs.</smartgwt>\n \n",
        name:"getInputFormat",
        seeAlso:[
        ],
        returns:{
            description:"expected format of date strings to parse",
            type:"DateInputFormat"
        },
        type:"method",
        definingClass:"class:RelativeDateItem"
    },
    "method:SectionHeader.titleHoverHTML":{
        ref:"method:SectionHeader.titleHoverHTML",
        flags:"",
        description:" Returns the HTML that is displayed by the default ${isc.DocUtils.linkForRef('method:SectionHeader.titleHover','titleHover')}\n handler. Return null or an empty string to cancel the hover.\n <smartgwt><p>Use <code>setTitleHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n",
        name:"titleHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If an empty string, then the hover is canceled. If null, then the default HTML is used.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:SectionHeader"
    },
    "type:RowSpanEditMode":{
        ref:"type:RowSpanEditMode",
        values:[
            {
                description:"This setting assumes that only the field-value for the first record  spanned by this cell is significant. In this case the editor will only show for this\n  cell if the user is editing the first spanned record. If the user initialized the edit\n  on another spanned row, the editor will not show for this field.",
                value:"\"first\""
            },
            {
                description:"This setting assumes that each row's values are logically separate, so if  a cell spans multiple rows, and a user initializes an edit on some cell in the\n  second spanned row, the spanning cell will show an editor containing the value for\n  the second spanned row. This may differ from the value displayed when not\n  in edit mode (which is derived from the first spanned row by default). This setting may\n  be useful for developers who which to implement their own logic on how to handle\n  spanning cell display values and/or edit values (for example by using custom\n  ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue','formatting')} and applying custom logic to handle\n  editing on ${isc.DocUtils.linkForRef('method:ListGridField.editorEnter')} and ${isc.DocUtils.linkForRef('method:ListGridField.editorExit')}).",
                value:"\"each\""
            }
        ],
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.allowRowSpanning')} is enabled, certain cells may span multiple\n rows. In this case, the cell displays the value from the record in the first row.\n If the grid is ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','editable')} (and the\n ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit','field is also editable')}), these settings allow the user\n to specify what happens to the data when the user edits this cell.\n <P>\n Note that in this scenario, a user may begin an edit on the row-spanning cell directly\n (via double-click for example), or on a cell in another column in any of the rows\n spanned by the cell. The appropriate behavior with respect to user-experience and how\n the data is manipulated will depend on the application in question. Developers may\n of course entirely disable editing for the field via ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.canEditCell')}.\n <P>\n See also: ${isc.DocUtils.linkForRef('attr:ListGrid.useRowSpanStyling')}",
        name:"RowSpanEditMode",
        seeAlso:[
        ],
        type:"type"
    },
    "classAttr:RPCResponse.STATUS_SERVER_TIMEOUT":{
        ref:"classAttr:RPCResponse.STATUS_SERVER_TIMEOUT",
        flags:"R",
        description:"Indicates a request timed out with no server response.\n <p>\n This is a client-only error code - never sent by the server (since it's the server\n that times out).\n <p>\n NOTE that if using <code>hiddenFrame</code> as the transport (not the default), a\n malformed response such as a \"500 Server Error\" or 404 errors will be reported as a\n timeout.",
        name:"STATUS_SERVER_TIMEOUT",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"-100",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:DrawLinePath.startLeft":{
        ref:"attr:DrawLinePath.startLeft",
        flags:"IR",
        description:"Starting left coordinate of the line.  Overrides left coordinate of ${isc.DocUtils.linkForRef('attr:DrawLinePath.startPoint')} if\n both are set.",
        name:"startLeft",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0 , IRW",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "attr:FormItem.titleErrorClassName":{
        ref:"attr:FormItem.titleErrorClassName",
        deprecated:"As of SmartClient Version 5.5, use ${isc.DocUtils.linkForRef('attr:FormItem.titleStyle')} instead",
        flags:"IRW",
        description:"CSS class for a form item's title when a validation error is showing.",
        name:"titleErrorClassName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"formTitleError\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "group:tableLayout":{
        ref:"group:tableLayout",
        refs:[
        ],
        name:"tableLayout",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MathFunction.defaultSortPosition":{
        ref:"attr:MathFunction.defaultSortPosition",
        flags:"IR",
        description:"Indicates the sort-order of this MathFunction in an index returned from static method \n ${isc.DocUtils.linkForRef('classMethod:MathFunction.getDefaultFunctionIndex')}.    Unlike , the result\n is an index of  to return\n a list of",
        name:"defaultSortPosition",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"-1",
        type:"attr",
        definingClass:"class:MathFunction",
        groups:[
            "formulaFields"
        ]
    },
    "attr:FacetChart.standardDeviations":{
        ref:"attr:FacetChart.standardDeviations",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:FacetChart.showStandardDeviationLines')} is set, the number of standard deviation lines drawn\n and their respective standard deviation away from the mean are specified by this property.\n The default is to display lines corresponding to the mean plus or minus one standard\n deviation.\n <p>\n Note that having zero in this list of standard deviations is identical to drawing\n a line at the mean.\n <p>\n For example assume that chart1 and chart2 both plot data with mean 1 and standard deviation 0.1.\n chart1 will draw a blue line at the value 1 and two red lines at the values 0.7 and 1.2.\n chart2 will draw three red lines at values 0.9, 1.0, and 1.1.\n <p>\n <smartclient>\n <pre>\n isc.FacetChart.create({\n     ID: \"chart1\",\n     standardDeviations: [-3, 2],\n     showExpectedValueLine: true,\n     showStandardDeviationLines: true,\n     expectedValueLineProperties: { lineColor: \"blue\" },\n     standardDeviationLineProperties: { lineColor: \"red\" },\n     // ...\n });\n\n isc.FacetChart.create({\n     ID: \"chart2\",\n     standardDeviations: [-1, 0, 1],\n     showExpectedValueLine: false,\n     showStandardDeviationLines: true,\n     expectedValueLineProperties: { lineColor: \"blue\" },\n     standardDeviationLineProperties: { lineColor: \"red\" },\n     // ...\n });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n DrawLine blueLine = new DrawLine(),\n     redLine = new DrawLine();\n blueLine.setLineColor(\"blue\");\n redLine.setLineColor(\"red\");\n\n FacetChart chart1 = new FacetChart();\n chart1.setID(\"chart1\");\n chart1.setStandardDeviations(new Float[] { -3f, 2f });\n chart1.setShowExpectedValueLine(true);\n chart1.setShowStandardDeviationLines(true);\n chart1.setExpectedValueLineProperties(blueLine);\n chart1.setStandardDeviationLineProperties(redLine);\n chart1.setUseSymmetricStandardDeviations(false);\n // ...\n\n FacetChart chart2 = new FacetChart();\n chart2.setID(\"chart2\");\n chart2.setStandardDeviations(new Float[] { -1f, 0f, 1f });\n chart2.setShowExpectedValueLine(false);\n chart2.setShowStandardDeviationLines(true);\n chart2.setExpectedValueLineProperties(blueLine);\n chart2.setStandardDeviationLineProperties(redLine);\n chart2.setUseSymmetricStandardDeviations(false);\n // ...\n\n chart1.draw();\n chart2.draw();\n </pre>\n </smartgwt>",
        name:"standardDeviations",
        seeAlso:[
        ],
        valueType:"Array of Float",
        defaultValue:"[-1, 1]",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ImgSectionHeader.setAlign":{
        ref:"method:ImgSectionHeader.setAlign",
        flags:"",
        description:" Sets the horizontal alignment of the title.\n",
        name:"setAlign",
        seeAlso:[
        ],
        params:[
            {
                description:"the new alignment",
                optional:false,
                name:"align",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ImgSectionHeader"
    },
    "attr:ListGridField.hiliteIconWidth":{
        ref:"attr:ListGridField.hiliteIconWidth",
        flags:"IRW",
        description:"Width for hilite icons for this field.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconSize')}, ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconWidth')}, and\n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconSize')}.",
        name:"hiliteIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "hiliting"
        ]
    },
    "attr:TreeGrid.cascadeSelection":{
        ref:"attr:TreeGrid.cascadeSelection",
        flags:"IR",
        description:"Should children be selected when parent is selected? And should parent be\n selected when any child is selected?",
        name:"cascadeSelection",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "method:SummaryBuilder.save":{
        ref:"method:SummaryBuilder.save",
        flags:"",
        description:" Call to finish working, test the formula and call \n ${isc.DocUtils.linkForRef('method:FormulaBuilder.fireOnClose','fireOnClose()')}.  Called automatically\n when the Save button is clicked.\n\n",
        name:"save",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:SummaryBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:ResultSet.useClientFiltering":{
        ref:"attr:ResultSet.useClientFiltering",
        flags:"IRWA",
        description:"Whether to filter data locally when all DataSource records have been loaded (that is,\n criteria is blank and cache is complete).\n <P>\n This may need to be disabled if client-side filtering differs from server-side filtering\n in a way that affects functionality or is surprising.\n <P>\n This setting is distinct from <code>fetchMode:\"local\"</code>, which explicitly loads all\n available DataSource records up front and always performs all filtering on the client.\n <P>\n See ${isc.DocUtils.linkForRef('method:ResultSet.applyFilter')} for default filtering behavior.\n <P>\n <b>NOTE:</b> even with useClientFiltering false, client-side filtering will be used\n during cache sync to determine if an updated or added row matches the current criteria.\n To avoid relying on client-side filtering in this case, either:<br>\n - avoid returning update data when the updated row doesn't match the current filter<br>\n - set dropCacheOnUpdate<br>",
        name:"useClientFiltering",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ResultSet"
    },
    "attr:Calendar.eventLaneFieldTitle":{
        ref:"attr:Calendar.eventLaneFieldTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:Calendar.laneFields','laneField')} field in the quick and advanced event dialogs",
        name:"eventLaneFieldTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Lane\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "method:EditContext.getPaletteNodesFromXML":{
        ref:"method:EditContext.getPaletteNodesFromXML",
        flags:"",
        description:" Obtain ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')} from an XML representation,\n but do not add them to the EditContext.\n\n",
        name:"getPaletteNodesFromXML",
        seeAlso:[
            {
                ref:"method:Callbacks.PaletteNodeCallback",
                description:null
            },
            {
                ref:"method:EditContext.serializeAllEditNodes",
                description:null
            },
            {
                ref:"method:EditContext.serializeEditNodes",
                description:null
            }
        ],
        params:[
            {
                description:"XML string",
                optional:false,
                name:"xmlString",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Callback used to return the PaletteNodes",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"PaletteNodeCallback"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:ValuesManager.editRecord":{
        ref:"method:ValuesManager.editRecord",
        flags:"",
        description:"\n Edit an existing record.  Updates this editors values to match the values of the record \n passed in, via ${isc.DocUtils.linkForRef('method:ValuesManager.setValues')}.\n <P>\n This method will also call ${isc.DocUtils.linkForRef('method:DynamicForm.setSaveOperationType')} to ensure \n subsequent calls to <code>saveData()</code> will use an <code>update</code> rather than\n an <code>add</code> operation.\n\n",
        name:"editRecord",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            }
        ],
        params:[
            {
                description:"the record to be edited as a map of field names to their corresponding values",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:RangeSlider.startValue":{
        ref:"attr:RangeSlider.startValue",
        flags:"IRW",
        description:"The beginning of the selected range.",
        name:"startValue",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "classAttr:Time.AMIndicator":{
        ref:"classAttr:Time.AMIndicator",
        flags:"RWA",
        description:"String appended to times to indicate am (when not using 24 hour format).",
        name:"AMIndicator",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\" am\"",
        type:"classAttr",
        definingClass:"class:Time",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.showTitlesWithErrorMessages":{
        ref:"attr:DynamicForm.showTitlesWithErrorMessages",
        flags:"IRW",
        description:"Indicates whether on validation failure, the error message displayed to the\n          user should be prepended with the title for the item.",
        name:"showTitlesWithErrorMessages",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:ListGrid.reselectOnUpdate":{
        ref:"attr:ListGrid.reselectOnUpdate",
        flags:"IRA",
        description:"If true, when an update operation occurs on a selected record in a\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource','databound')} listGrid, ensure the updated record is\n re-selected when the operation completes.\n The ${isc.DocUtils.linkForRef('attr:ListGrid.reselectOnUpdateNotifications')} attributes governs whether\n ${isc.DocUtils.linkForRef('method:ListGrid.selectionUpdated')} and ${isc.DocUtils.linkForRef('method:ListGrid.selectionChanged')} will fire\n when this occurs.",
        name:"reselectOnUpdate",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:CubeGrid.chartConfirmThreshold":{
        ref:"attr:CubeGrid.chartConfirmThreshold",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('method:CubeGrid.makeChart')} is called with a chart specification that will show more than\n <code>chartConfirmThreshold</code> data elements, the user will be presented with a\n ${isc.DocUtils.linkForRef('classMethod:isc.confirm','confirmation dialog')}.\n <P>\n Set to 0 to disable this confirmation.",
        name:"chartConfirmThreshold",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"2000",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "method:List.addListAt":{
        ref:"method:List.addListAt",
        flags:"",
        description:" Add list of items list to this array at item pos.  All items after array[pos] will slide down to\n fit new items.\n\n",
        name:"addListAt",
        seeAlso:[
        ],
        params:[
            {
                description:"new array of items",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array"
            },
            {
                description:"position in this list to put the new items",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the list of items that was added",
            type:"array"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "attr:Calendar.monthViewTitle":{
        ref:"attr:Calendar.monthViewTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month view')}.",
        name:"monthViewTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Month\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MultiSortDialog.deleteLevelButtonTitle":{
        ref:"attr:MultiSortDialog.deleteLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the deleteLevelButton\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"deleteLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Delete Level\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Calendar.showDetailFields":{
        ref:"attr:Calendar.showDetailFields",
        flags:"IR",
        description:"Whether to show fields marked <code>detail:true</code> when a DataBoundComponent is \n given a DataSource but no <code>component.fields</code>.\n <p>\n The <code>detail</code> property is used on DataSource fields to mark fields that \n shouldn't appear by default in a view that tries to show many records in a small space.",
        name:"showDetailFields",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "databinding"
        ]
    },
    "classMethod:Page.setEvent":{
        ref:"classMethod:Page.setEvent",
        flags:"",
        description:" Register to be called whenever a given type of event occurs, at the page level.\n <p>\n This includes events that also occur on widgets (like \"click\") and events that only occur at\n the page level (\"resize\" and \"load\").\n <p>\n For events that also occur on widgets, page level event registrations will fire BEFORE the\n event handlers on Canvases.   If your action returns <code>false</code>, this will prevent\n the event from getting to the intended Canvas.\n <p>\n Capturing events on widgets can be done by setting one of the event methods available on Canvas\n (and hence available to all widget classes).  See ${isc.DocUtils.linkForRef('group:widgetEvents')}.\n\n",
        name:"setEvent",
        seeAlso:[
            {
                ref:"class:EventHandler",
                description:null
            },
            {
                ref:"classMethod:EventHandler.getX",
                description:null
            },
            {
                ref:"classMethod:EventHandler.getY",
                description:null
            }
        ],
        params:[
            {
                description:"event type to register for (\"mouseDown\", \"load\", etc)",
                optional:false,
                name:"eventType",
                defaultValue:null,
                type:"pageEvent"
            },
            {
                description:"string to be eval'd when event fires\t\t\t\t\t\t(function)\t\t\tfunction to be executed when event fires\n                      (object)            an object to call on which a method named \"page\" +\n                                          eventType will be called",
                optional:false,
                name:"action",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Flag to set automatic removal of the event after\t\t\t\t\t\t\t\t\t\t\t\tit fires one or more times",
                optional:true,
                name:"fireStyle",
                defaultValue:null,
                type:"FireStyle"
            },
            {
                description:"optional - if an object was passed in as the second                                          parameter, this is a name of a method to call on that\n                                          object.",
                optional:true,
                name:"functionName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"ID number of this event, may be used to remove the event later\t\t\t\t\t\t\t\t\t\tvia a call to <code>Page.clearEvent()</code>",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "EventRegistry"
        ]
    },
    "method:FormulaBuilder.setFormula":{
        ref:"method:FormulaBuilder.setFormula",
        flags:"",
        description:" Call to set the formula-string in this FormulaBuilder.\n <P>\n Note that calling setFormula() will update the UI, generate the formula's function and \n test it automatically.\n\n",
        name:"setFormula",
        seeAlso:[
        ],
        params:[
            {
                description:"The new formula-string for this builder",
                optional:false,
                name:"",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "group:date":{
        ref:"group:date",
        refs:[
            "attr:Calendar.chosenDate",
            "attr:Calendar.firstDayOfWeek",
            "attr:Calendar.workdayStart",
            "attr:Calendar.workdayEnd"
        ],
        name:"date",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.zoomStartValue":{
        ref:"attr:FacetChart.zoomStartValue",
        flags:"IRW",
        description:"For a ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom','zoomed chart')}, start value of the data range shown in the main\n chart.  If ${isc.DocUtils.linkForRef('attr:FacetChart.zoomEndValue')} is not also set on initialization (or if\n ${isc.DocUtils.linkForRef('method:FacetChart.setZoomEndValue','setZoomEndValue(null)')} is called after initialization) then the\n range shown will be from <code>zoomStartValue</code> to the end of the dataset.\n <P>\n The value provided should be a value in the range of the facet for the X axis, for example, for\n a time-based axis, a Date instance, for a numeric axis, a Number, for an axis that just has\n text labels (such as city names), a String.",
        name:"zoomStartValue",
        setter:[
            "setZoomStartValue"
        ],
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:FieldPicker.showFieldOrderButtons":{
        ref:"attr:FieldPicker.showFieldOrderButtons",
        flags:"IR",
        description:"When set to false, hides the right-most set of buttons, used for re-ordering fields in the\n Visible Fields list.",
        name:"showFieldOrderButtons",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FieldPicker"
    },
    "attr:RPCResponse.httpResponseCode":{
        ref:"attr:RPCResponse.httpResponseCode",
        flags:"R",
        description:"This attribute (available when using the the <code>xmlHttpRequest</code> transport) contains\n the HTTP response code sent by the server.\n <p>\n Note that this is different from ${isc.DocUtils.linkForRef('attr:RPCResponse.status')} - that attribute is used to\n indicate a status code for the RPC itself whereas httpResponseCode is the raw HTTP response\n code for the HTTP request that contained the RPCRequest.\n <p>\n This feature relies on the XMLHttpRequest object which can be disabled by end-users in some\n supported browsers.  See ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information.\n <p>\n If you're using this attribute, you'll typically want to avoid the default error\n handling response of RPCManager.  To do so, set\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')} to <code>true</code>.",
        name:"httpResponseCode",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCResponse"
    },
    "attr:NavigationBar.leftButtonTitle":{
        ref:"attr:NavigationBar.leftButtonTitle",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:Button.title','Title')} for the ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButton','leftButton')}.",
        name:"leftButtonTitle",
        setter:[
            "setLeftButtonTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "method:FormItem.getValueFieldName":{
        ref:"method:FormItem.getValueFieldName",
        flags:"",
        description:" Getter method to retrieve the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item.\n If unset, default behavior will return the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this field.\n",
        name:"getValueFieldName",
        seeAlso:[
        ],
        returns:{
            description:"fieldName to use a \"value field\" in records from this items               ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}",
            type:"string"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "classAttr:Operators.iNotEqualFieldTitle":{
        ref:"classAttr:Operators.iNotEqualFieldTitle",
        flags:"IR",
        description:"Title for the \"iNotEqualField\" operator",
        name:"iNotEqualFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"differs from field (case insensitive)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.keyPress":{
        ref:"method:ListGrid.keyPress",
        flags:"",
        description:" Handle a keyPress event on the ListGrid as a whole.\n <P>\n Note that the majority of keyboard handling for a ListGrid is performed by\n ${isc.DocUtils.linkForRef('method:ListGrid.bodyKeyPress')} and most overrides are better performed there.\n\n",
        name:"keyPress",
        seeAlso:[
        ],
        returns:{
            description:"return false to cancel",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.editPendingBaseStyle":{
        ref:"attr:ListGrid.editPendingBaseStyle",
        flags:"IRA",
        description:"A base name for the CSS class applied to cells containing pending (unsaved) edits<br>\n As with the default 'baseStyle' property, this style will have \"Dark\", \"Over\", \"Selected\",\n or \"Disabled\" appended to it according to the state of the cell.\n <P>\n If this property is null (the default setting), cells with pending edits will pick up\n custom css text to be applied on top of the normal base style from\n <code>this.editPendingCSSText</code>.",
        name:"editPendingBaseStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.baseStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "group:data":{
        ref:"group:data",
        refs:[
            "method:Calendar.setData",
            "method:DataBoundComponent.getDragData",
            "method:ListGrid.setData",
            "method:ListGrid.getCellValue",
            "method:ListGrid.getDragData",
            "method:Menu.setData",
            "method:Menu.setItems",
            "method:TileLayout.getDragData",
            "method:TileGrid.getDragData",
            "object:CalendarEvent",
            "attr:Calendar.data",
            "attr:ListGrid.data",
            "attr:ListGridField.name",
            "attr:ListGridField.dataPath",
            "attr:TreeGrid.data",
            "attr:Menu.data",
            "attr:Menu.items",
            "attr:TileGrid.data",
            "attr:ColumnTree.data"
        ],
        description:null,
        name:"data",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DrawLabel.moveTo":{
        ref:"method:DrawLabel.moveTo",
        flags:"",
        description:" Move the label to the absolute x, y coordinates\n\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new startLeft coordinate in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new startTop coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawLabel"
    },
    "method:ResultSet.setSort":{
        ref:"method:ResultSet.setSort",
        flags:"",
        description:" Sort this ResultSet by the passed list of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s. \n <P>\n If the ResultSet is already sorted and this method is called with an identical list of\n specifiers, this method will no-op.  To cause data to be resorted with the same set of\n specifiers, use ${isc.DocUtils.linkForRef('method:ResultSet.resort','resort()')}.\n",
        name:"setSort",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:FormulaBuilder.cancelled":{
        ref:"attr:FormulaBuilder.cancelled",
        flags:"R",
        description:"Was the builder operation cancelled?  Set to true when the user cancels with the cancel\n button or the dialog's close-button.",
        name:"cancelled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:ValuesManager.removeMember":{
        ref:"method:ValuesManager.removeMember",
        flags:"",
        description:"  Remove a member form from this valuesManager, so its values are no longer managed\n  by this instance.\n  This does not clear the values associated with the form from the valuesManager - they\n  will still be available via <code>valuesManager.getValues()</code>, but will not be\n  updated as the form is manipulated.\n",
        name:"removeMember",
        seeAlso:[
            {
                ref:"method:ValuesManager.removeMembers",
                description:null
            }
        ],
        params:[
            {
                description:"form (or ID of form) to remove from this valuesManager",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"DynamicForm | String"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "members"
        ]
    },
    "attr:TextItem.keyPressFilter":{
        ref:"attr:TextItem.keyPressFilter",
        flags:"IRWA",
        description:"Sets a keypress filter regular expression to limit valid characters\n that can be entered by the user. If defined, keys that match the\n regular expression are allowed; all others are suppressed. The\n filter is applied after character casing, if defined.\n <P>\n Note: keypress filtering cannot be used at the same time as a ${isc.DocUtils.linkForRef('attr:TextItem.mask')}.",
        name:"keyPressFilter",
        setter:[
            "setKeyPressFilter"
        ],
        seeAlso:[
            {
                ref:"attr:TextItem.characterCasing",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formFilters')}"
        ],
        definingClass:"class:TextItem"
    },
    "attr:Layout.placeHolderDefaults":{
        ref:"attr:Layout.placeHolderDefaults",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:Layout.showDragPlaceHolder','this.showDragPlaceHolder')} is true, this \n defaults object determines the default appearance of the placeholder displayed\n when the user drags a widget out of this layout.<br>\n Default value for this property sets the placeholder ${isc.DocUtils.linkForRef('attr:Canvas.styleName','styleName')} to\n <code>\"layoutPlaceHolder\"</code><br>\n To modify this object, use ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')}",
        name:"placeHolderDefaults",
        seeAlso:[
        ],
        valueType:"Canvas Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "dragdrop"
        ]
    },
    "attr:RPCRequest.promptDelay":{
        ref:"attr:RPCRequest.promptDelay",
        flags:"IRWA",
        description:"Overrides RPCManager.promptDelay for this request only. Defaults to ${isc.DocUtils.linkForRef('classAttr:RPCManager.promptDelay')}.\n <p>\n If you're using queuing, note that the promptDelay of the first request is used for the entire queue.",
        name:"promptDelay",
        seeAlso:[
            {
                ref:"attr:RPCRequest.showPrompt",
                description:null
            },
            {
                ref:"classAttr:RPCManager.promptDelay",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"RPCManager.promptDelay",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:ListGrid.body":{
        ref:"attr:ListGrid.body",
        flags:"R",
        getter:[
            "getBody"
        ],
        description:"GridRenderer used to render the dataset.\n <p>\n Note that this is a multi-instance component when there are frozen fields because in\n addition to the primary body AutoChild, a \"frozen body\" AutoChild is created to render\n the frozen portion of the dataset.",
        name:"body",
        seeAlso:[
            {
                ref:"method:ListGrid.getBody",
                description:null
            }
        ],
        valueType:"MultiAutoChild GridRenderer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:TileGrid.anySelected":{
        ref:"method:TileGrid.anySelected",
        flags:"",
        description:" Whether at least one item is selected\n",
        name:"anySelected",
        seeAlso:[
        ],
        returns:{
            description:"true == at least one item is selected\t\t\t\t\t\t\t\tfalse == nothing at all is selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Criterion.operator":{
        ref:"attr:Criterion.operator",
        flags:"IR",
        description:"Operator this criterion applies.",
        name:"operator",
        seeAlso:[
        ],
        valueType:"OperatorId",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Criterion",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:FacetChart.filled":{
        ref:"attr:FacetChart.filled",
        flags:"IRW",
        description:"Whether shapes are filled, for example, whether a multi-series line chart appears as a\n stack of filled regions as opposed to just multiple lines.\n <P>\n If unset, fills will be automatically used when there are multiple facets and stacking\n is active (so Line and Radar charts will show stacked regions).  \n <P>\n You can explicitly set filled:false to create multi-facet Line or Radar charts where\n translucent regions overlap, or filled:true to fill in a single-facet Line or Radar\n chart.",
        name:"filled",
        setter:[
            "setFilled"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DoubleItem.getValueAsDouble":{
        ref:"method:DoubleItem.getValueAsDouble",
        flags:"",
        description:" Return the value tracked by this form item as a Double.  If the value cannot\n be parsed to a valid double, null will be returned.\n\n",
        name:"getValueAsDouble",
        seeAlso:[
            {
                ref:"method:FormItem.getValue",
                description:null
            }
        ],
        returns:{
            description:"the value of this element",
            type:"Double"
        },
        type:"method",
        definingClass:"class:DoubleItem"
    },
    "method:TabSet.titleChanged":{
        ref:"method:TabSet.titleChanged",
        flags:"",
        description:" This notification method fired when the user changes the title of a tab in this TabSet.\n This can happen either through user interaction with the UI if \n ${isc.DocUtils.linkForRef('attr:TabSet.canEditTabTitles','canEditTabTitles')} is set, or programmatically if application \n code calls ${isc.DocUtils.linkForRef('method:TabSet.editTabTitle','editTabTitle')}.<p>\n Return false from this method to cancel the change.\n",
        name:"titleChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"the new title",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the old title",
                optional:false,
                name:"oldTitle",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the tab whose title has changed",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab"
            }
        ],
        returns:{
            description:"return false to suppress the title change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:TabSet"
    },
    "type:VisibilityMode":{
        ref:"type:VisibilityMode",
        values:[
            {
                description:"Only one section can be expanded at a time.",
                value:"\"mutex\""
            },
            {
                description:"Multiple sections can be expanded at the same time, and will share space.",
                value:"\"multiple\""
            }
        ],
        description:"Settings for whether multiple sections can be in the expanded state simultaneously.",
        name:"VisibilityMode",
        seeAlso:[
        ],
        type:"type"
    },
    "type:PreserveOpenState":{
        ref:"type:PreserveOpenState",
        values:[
            {
                description:"Never try to automatically preserve the openState.  Nodes will be initially open \n  or closed based solely on the ${isc.DocUtils.linkForRef('attr:Tree.openProperty')} optionally set by the server.",
                value:"never"
            },
            {
                description:"If either the ${isc.DocUtils.linkForRef('attr:Tree.idField')} or ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')} has been set on \n  the Tree, (so that nodes have either unique ids or unique paths), \n  preserve openState by respecting the ${isc.DocUtils.linkForRef('attr:Tree.openProperty')} set by the server, \n  then applying the openState.",
                value:"whenUnique"
            },
            {
                description:"Like \"whenUnique\" but automatically preserves openState even if nodes cannot be\n  uniquely identified.  This means that nodes at the same tree positions \n  (eg 3rd child of 5th node under root) will be placed in the same openState, \n  regardless of whether that node has anything to do with the node that previously \n  was at that tree position.",
                value:"always"
            }
        ],
        description:null,
        name:"PreserveOpenState",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Canvas.focusInPreviousTabElement":{
        ref:"method:Canvas.focusInPreviousTabElement",
        flags:"",
        description:" Shifts focus to the previous focusable element before this one.  This is the programmatic \n equivalent of the user pressing Shift-Tab.  A \"focusable element\" is a ${isc.DocUtils.linkForRef('class:Canvas')}\n or ${isc.DocUtils.linkForRef('class:FormItem')} that is ${isc.DocUtils.linkForRef('attr:Canvas.canFocus','focusable')}, and is not  \n ${isc.DocUtils.linkForRef('attr:FormItem.disabled','disabled')} or ${isc.DocUtils.linkForRef('method:Canvas.showClickMask','masked')}.  Note that the \n movement of focus to a <code>FormItem</code> is managed by the containing \n ${isc.DocUtils.linkForRef('class:DynamicForm')}; calling this method on a <code>DynamicForm</code> will move the \n focus to the previous focusable <code>FormItem</code> in the form if there is one, and onto\n the previous focusable <code>Canvas</code> if not.\n <p>\n <p>\n <b>NOTE: </b>This method only considers SmartClient elements.  Native elements that you \n create directly - for example, with ${isc.DocUtils.linkForRef('method:HTMLFlow.setContents')} or by creating a custom\n widget with ${isc.DocUtils.linkForRef('method:Canvas.getInnerHTML')} that has focusable elements that are not child\n Canvases - will not be noticed by this method.\n\n",
        name:"focusInPreviousTabElement",
        seeAlso:[
            {
                ref:"attr:Canvas.tabIndex",
                description:null
            },
            {
                ref:"method:Canvas.focusInNextTabElement",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "focus"
        ]
    },
    "attr:FilterBuilder.bracket":{
        ref:"attr:FilterBuilder.bracket",
        flags:"IR",
        description:"Widget used as a \"bracket\" to hint to the user that a subclause groups several\n field-by-field filter criteria under one logical operator.\n <P>\n By default, a simple CSS-style Canvas with borders on three sides.  A vertical StretchImg\n could provide a more elaborate appearance.",
        name:"bracket",
        seeAlso:[
        ],
        valueType:"MultiAutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "method:TileGrid.recordDoubleClick":{
        ref:"method:TileGrid.recordDoubleClick",
        flags:"",
        description:" Executed when the tileGrid receives a 'doubleclick' event on a\n tile. The default implementation does nothing -- override to perform some action\n when any record is doubleclicked.<br>\n A record event handler can be specified either as\n a function to execute, or as a string of script to evaluate. If the handler is defined\n as a string of script, all the parameters below will be available as variables for use\n in the script.<br>\n If you want to cancel the doubleclick based on the parameters, return false. Otherwise, return \n true so that the doubleclick event be registered with the tile.\n\n",
        name:"recordDoubleClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the TileGrid itself",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"TileGrid"
            },
            {
                description:"the tile that was doubleclicked on",
                optional:false,
                name:"tile",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"the record that was doubleclicked on",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"TileRecord"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('tilingEditing')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "events"
        ]
    },
    "classAttr:LoginDialog.LOGIN_BUTTON_TITLE":{
        ref:"classAttr:LoginDialog.LOGIN_BUTTON_TITLE",
        flags:"IRW",
        description:"Default title for login button in the dialog displayed by\n ${isc.DocUtils.linkForRef('classMethod:isc.showLoginDialog')}.",
        name:"LOGIN_BUTTON_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Log in\"",
        type:"classAttr",
        definingClass:"class:LoginDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:GroupSpecifier.context":{
        ref:"attr:GroupSpecifier.context",
        flags:"IR",
        description:"A DataBoundComponent providing the context for the group-normalizer.",
        name:"context",
        seeAlso:[
        ],
        valueType:"DataBoundComponent",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:GroupSpecifier"
    },
    "attr:TextSettings.escapingMode":{
        ref:"attr:TextSettings.escapingMode",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:EscapingMode')} expected for escaping special characters embedded in text values.",
        name:"escapingMode",
        seeAlso:[
        ],
        valueType:"EscapingMode",
        defaultValue:"\"backslash\"",
        type:"attr",
        definingClass:"class:TextSettings"
    },
    "group:xmlTag":{
        ref:"group:xmlTag",
        title:"&lt;isomorphic:XML&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> JavaScript\n <p>\n This tag converts SmartClient UI components declaratively specified in the body of the tag to\n JavaScript for execution in the browser.\n <p>\n The XML->JS translation works just like with ${isc.DocUtils.linkForRef('group:loadUITag')}, but the XML is read\n from the body of the tag.  If you wish, you can also specify an external filename, and XML\n will be read from that file, in addition to any XML encountered in the body of the tag.  If\n you do specify that an external file should be read, it is read from a path starting in \n your webroot (as opposed to the <code>&lt;loadUI&gt;</code> tag, which looks in \n <code>shared/ui</code>) \n \n <p>\n Note that this JSP tag must be surrounded by &lt;SCRIPT&gt; tags in the JSP because it\n generates JavaScript code.  Like other tags that generate JavaScript code, this tag can be\n used in a JSP that is included from your main page in order to create separate\n cacheability.  For example:\n <pre>\n &lt;SCRIPT SRC=\"myUIDefinitions.jsp\"&gt;&lt;/SCRIPT&gt;\n </pre>\n <p>\n Example of using this tag :\n <pre>\n &lt;isomorphic:XML&gt;\n &lt;Canvas&nbsp;backgroundColor=\"black\"/&gt;\n &lt;/isomorphic:XML&gt;\n </pre>\n Would output the following JavaScript code:\n <pre>\n Canvas.create({\n   backgroundColor: \"black\"\n });\n </pre>\n <p>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>filename</b><br>\n <i>value format</i>: String - name of XML file to load (including the \"XML\" extension)<br>\n <i>default value</i>: NONE\n <p>\n This optional attribute specifies the name of an XML file to read and convert.\n <p>\n An example that specifies both a filename and some XML in the tag body:\n <pre>\n &lt;isomorphic:XML filename=\"test.xml\"&gt;\n   &lt;Canvas backgroundColor=\"red\"/&gt;\n &lt;/isomorphic:XML&gt;\n </pre>",
        name:"xmlTag",
        seeAlso:[
            {
                ref:"group:loadUITag",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ListGrid.generateClickOnEnter":{
        ref:"attr:ListGrid.generateClickOnEnter",
        flags:"IRWA",
        description:"If true, when the user navigates to a cell using arrow keys and hits Enter,\n the cell will respond to a click event.",
        name:"generateClickOnEnter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:LoginDialog.loginButtonTitle":{
        ref:"attr:LoginDialog.loginButtonTitle",
        flags:"IR",
        description:"Specifies the contents of the login submission button of the ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"loginButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"Dialog.LOGIN_BUTTON_TITLE",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:DateTimeItem.browserInputType":{
        ref:"attr:DateTimeItem.browserInputType",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:DateTimeItem.useTextField','useTextField')} is true and browserInputType is set to\n \"datetime\", then a native <a href='http://www.w3.org/TR/html5/forms.html#local-date-and-time-state-(type=datetime-local)' target='_blank'>HTML5 local datetime input</a>\n is used in place of a text input.\n <p>\n The use of a native HTML5 datetime input causes certain features to be disabled. Input masks,\n the picker icon, and a custom ${isc.DocUtils.linkForRef('attr:DynamicForm.datetimeFormatter','datetimeFormatter')} are not supported.\n In-field hints are currently supported in Chrome/Chromium/Opera 15 and iOS 5.0+, but future browser\n changes might force this support to be removed. Therefore, it is safest to <em>not</em>\n use in-field hints (set showHintInField to false) in conjunction with a native HTML5 datetime\n input. In-field hints are not supported in Opera 12 when using a native HTML5 datetime\n input. If in-field hints are not supported in the browser, then showHintInField has no\n effect and any hint will be shown to the side of the input.\n <p>\n <b>NOTES:</b>\n <ul>\n   <li>This feature requires specific CSS changes. Currently these changes have been made\n       to the Enterprise, EnterpriseBlue, and Graphite skins only.</li>\n   <li>In Chrome/Chromium/Opera 15 and Opera 12, native datetime inputs need to be made\n       wider in order to fit the full datetime value within the native control. However,\n       on iOS 5.0+, the normal width is fine. Be sure to test the layout of the form in\n       all browsers that you wish to support.</li>\n </ul>",
        name:"browserInputType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateTimeItem"
    },
    "attr:Menu.titleFieldProperties":{
        ref:"attr:Menu.titleFieldProperties",
        flags:"IR",
        description:"Custom properties for the automatically generated title column.",
        name:"titleFieldProperties",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:ListGrid.selectionProperty":{
        ref:"attr:ListGrid.selectionProperty",
        flags:"IRA",
        description:"If specified, the selection object for this list will use this property to mark records\n as selected.  In other words, if this attribute were set to <code>\"isSelected\"</code>\n any records in the listGrid data where <code>\"isSelected\"</code> is <code>true</code>\n will show up as selected in the grid. Similarly if records are selected within the grid\n after the grid has been created, this property will be set to true on the selected\n records.",
        name:"selectionProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "selection",
            "appearance"
        ]
    },
    "method:TextAreaItem.setSelectionRange":{
        ref:"method:TextAreaItem.setSelectionRange",
        flags:"",
        description:" Puts focus into this form item and selects characters between the given indices.\n Only applies to drawn text based items.\n",
        name:"setSelectionRange",
        seeAlso:[
        ],
        params:[
            {
                description:"selection starting character index",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection character index",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:TextAreaItem"
    },
    "attr:Window.contentLayout":{
        ref:"attr:Window.contentLayout",
        flags:"IRWA",
        description:"The layout policy that should be used for widgets within the Window body.\n <P>\n Valid values are \"vertical\", \"horizontal\", \"none\".  If the body is a Layout, this\n controls how the items are stacked in the body by setting ${isc.DocUtils.linkForRef('attr:Layout.vertical')}.  \n See ${isc.DocUtils.linkForRef('attr:Window.bodyConstructor')} for details.",
        name:"contentLayout",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"vertical\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance"
        ]
    },
    "attr:MetricSettings.dataPointProperties":{
        ref:"attr:MetricSettings.dataPointProperties",
        flags:"IR",
        description:"Common properties to apply for all data points (see ${isc.DocUtils.linkForRef('attr:MetricSettings.showDataPoints')}).",
        name:"dataPointProperties",
        seeAlso:[
        ],
        valueType:"DrawItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:ListGrid.transferDragData":{
        ref:"method:ListGrid.transferDragData",
        flags:"A",
        description:"\n During a drag-and-drop interaction, this method is called to transfer a set of records that\n were dropped onto some other component.  This method is called after the set of records has\n been copied to the other component.  Whether or not this component's data is modified is \n determined by the value of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dragDataAction')}.\n <P>\n With a <code>dragDataAction</code> of \"move\", a databound component will issue \"remove\"\n dsRequests against its DataSource to actually remove the data, via\n ${isc.DocUtils.linkForRef('method:DataSource.removeData')}.\n\n",
        name:"transferDragData",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.getDragData",
                description:null
            },
            {
                ref:"method:ListGrid.willAcceptDrop",
                description:null
            }
        ],
        returns:{
            description:"Array of objects that were dragged out of this ListGrid.",
            type:"Array"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DrawCurve.getBoundingBox":{
        ref:"method:DrawCurve.getBoundingBox",
        flags:"",
        description:" Returns the smallest box containing the entire curve.\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "attr:Facet.align":{
        ref:"attr:Facet.align",
        flags:"IR",
        description:"Default alignment for facet label title, and cells for this facet.\n Can be overridden at the facetValue level, or by setting titleAlign or cellAlign\n on the facet.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')} (see, for\n example, ${isc.DocUtils.linkForRef('attr:CubeGrid.facetValueAlign')}).",
        name:"align",
        seeAlso:[
            {
                ref:"attr:Facet.titleAlign",
                description:null
            },
            {
                ref:"attr:Facet.cellAlign",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "classAttr:Operators.containsPatternTitle":{
        ref:"classAttr:Operators.containsPatternTitle",
        flags:"IR",
        description:"Title for the \"containsPattern\" operator",
        name:"containsPatternTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"contains pattern (exact case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "type:Side":{
        ref:"type:Side",
        values:[
            {
                description:"Left side",
                value:"Canvas.LEFT"
            },
            {
                description:"Right side",
                value:"Canvas.RIGHT"
            },
            {
                description:"Top side",
                value:"Canvas.TOP"
            },
            {
                description:"Bottom side",
                value:"Canvas.BOTTOM"
            }
        ],
        description:"Side of a component.",
        name:"Side",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Calendar.backgroundClick":{
        ref:"method:Calendar.backgroundClick",
        flags:"",
        description:" Callback fired when the mouse is clicked in a background-cell, ie, one without an \n event.\n\n",
        name:"backgroundClick",
        seeAlso:[
        ],
        params:[
            {
                description:"start datetime of the selected slot",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"end datetime of the selected slot",
                optional:false,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"return false to cancel the default behavior of creating a new                       event at the selected location and showing its editor.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:DataSource.downloadFile":{
        ref:"method:DataSource.downloadFile",
        flags:"",
        description:" Download a file stored in a field of type:\"binary\" in a DataSource record.\n <P>\n This will trigger the browser's \"Save As\" dialog and allow the user to save the file\n associated with some record.\n <P>\n Note that if this method is called for a record with no associated file, the\n download URL may not be functional.  By default when dataSources encounter a \n ${isc.DocUtils.linkForRef('type:FieldType','binary type fields')}, an additional field,\n <code>&lt;fieldName&gt;_filename</code>, is generated to\n store the filename for the binary field value. If this field is present in the\n data source but has no value for this record, developers can assume they're working\n with a record with no stored file. If this field is not present in some custom\n dataSource configuration, or the record is not loaded on the client, an additional\n server transaction may be required to determine whether the record has an associated\n file before calling this method to download a file.\n <P>\n See the overview of ${isc.DocUtils.linkForRef('group:binaryFields','Binary Fields')} for more details.\n\n",
        name:"downloadFile",
        seeAlso:[
        ],
        params:[
            {
                description:"Record to download.  Only required to have a value                                       for the primary key field.",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"optional name of the binary field containing the                                         file.  If not provided, the first binary field\n                                         is used",
                optional:true,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "class:SimpleType":{
        methods:[
            "method:SimpleType.getAtomicValue",
            "method:SimpleType.updateAtomicValue",
            "method:SimpleType.shortDisplayFormatter",
            "method:SimpleType.normalDisplayFormatter",
            "method:SimpleType.editFormatter",
            "method:SimpleType.parseInput"
        ],
        ref:"class:SimpleType",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:SimpleType.getType",
            "classMethod:SimpleType.registerSummaryFunction",
            "classMethod:SimpleType.setDefaultSummaryFunction",
            "classMethod:SimpleType.getDefaultSummaryFunction",
            "classMethod:SimpleType.applySummaryFunction"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:SimpleType.validOperators",
            "attr:SimpleType.name",
            "attr:SimpleType.inheritsFrom",
            "attr:SimpleType.validators",
            "attr:SimpleType.valueMap",
            "attr:SimpleType.editorType",
            "attr:SimpleType.readOnlyEditorType",
            "attr:SimpleType.fieldProperties",
            "attr:SimpleType.format",
            "attr:SimpleType.exportFormat"
        ],
        description:"An atomic type such as a string or number, that is generally stored, displayed and\n manipulated as a single value.\n <P>\n SimpleTypes can be created at any time, and subsequently referred to as a \n ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field type')} in ${isc.DocUtils.linkForRef('class:DataSource','DataSources')} and\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')}.  This allows you to define\n ${isc.DocUtils.linkForRef('attr:SimpleType.validators','validation')}, ${isc.DocUtils.linkForRef('method:SimpleType.normalDisplayFormatter','formatting')}\n and ${isc.DocUtils.linkForRef('attr:SimpleType.editorType','editing')} behaviors for a type to be reused across all\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','DataBoundComponents')}.\n <P>\n The SimpleType class also allows data to be stored in some opaque format but treated as\n simple atomic values as far as SmartClient components are concerned by implementing\n ${isc.DocUtils.linkForRef('method:SimpleType.getAtomicValue')} and ${isc.DocUtils.linkForRef('method:SimpleType.updateAtomicValue')} methods.\n For example, if some record has a field value set to a javascript object with the\n following properties:\n <pre>\n { stringValue:\"A String\", length: 9 }\n </pre>\n this value could be treated as a simple string by defining a SimpleType with \n ${isc.DocUtils.linkForRef('attr:SimpleType.inheritsFrom')} set to <code>\"text\"</code> and a custom \n <code>getAtomicValue()</code> method that simply extracted the <i>\"stringValue\"</i>\n attribute from the data object. DataBoundComponents would then display\n the string value, and use it for sorting and other standard databinding features.\n <P>\n Note that the term \"simpleType\" is used in the same sense as in\n <a href='XML Schema' target='_blank'>http://www.w3.org/TR/xmlschema-0/</a>, and\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadXMLSchema')} will create new SimpleType definitions.\n <P>\n When using the SmartClient Server, SimpleTypes can be defined server-side, and should\n be defined server-side if validators are going to be declared so that the server will\n enforce validation. To define server-side SimpleTypes using Component XML you should create\n file {typeName}.type.xml in the following format:\n <pre>\n   &lt;SimpleType name=\"{typeName}\" inheritsFrom=\"{otherSimpleType}\" \n                  editorType=\"{FormItemClassName}\"&gt;\n     &lt;validators&gt;\n       &lt;!-- validator definition just like DataSourceField --&gt;\n     &lt;/validators&gt;\n   &lt;/SimpleType&gt;\n </pre>\n .. and place this file alongside your DataSource files (.ds.xml) files - in any of folders\n listed in <code>project.datasources</code> property in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.\n <P>\n SimpleTypes can be loaded via DataSourceLoader or ${isc.DocUtils.linkForRef('group:loadDSTag','loadDS JSP tags')} and\n should be loaded <b>before</b> the definitions of any DataSources that use them (so\n generally put all SimpleType definitions first).\n <P>\n Define validators in the server-side type definition, for example:\n <pre>\n   &lt;SimpleType name=\"countryCodeType\" inheritsFrom=\"text\"&gt;\n     &lt;validators&gt;\n       &lt;validator type=\"lengthRange\" min=\"2\" max=\"2\"\n         errorMessage=\"Length of country code should be equals to 2.\" /&gt;\n       &lt;validator type=\"regexp\" expression=\"[A-Z][A-Z]\"\n         errorMessage=\"CountryCode should have only uppercase letters.\" /&gt;\n     &lt;/validators&gt;\n   &lt;/SimpleType&gt;\n </pre>\n <P>\n For client-side formatters, add these to the type definition after loading it from the\n server, for example:\n <smartclient>\n   <pre>\n     isc.SimpleType.getType(\"independenceDateType\").addProperties({\n         normalDisplayFormatter : function (value) {\n             if (value == null) return \"\";\n             return \"&lt;i&gt;\" + (value.getYear() + 1900) + \"&lt;/i&gt;\";\n         }\n     });\n   </pre>\n </smartclient>\n <smartgwt>\n   <pre>\n     SimpleType.getType(\"independenceDateType\").setShortDisplayFormatter(new SimpleTypeFormatter() {\n       public String format(Object value, DataClass field, DataBoundComponent component, Record record) {\n         if (value == null) return null;\n         return \"&lt;i&gt;\" + (((java.util.Date) value).getYear() + 1900) + \"&lt;/i&gt;\";\n       }\n     });\n   </pre>\n </smartgwt>\n Note that formatters must be added to the SimpleType definition <b>before</b> any\n DataBoundComponent binds to a DataSource that uses the SimpleType.\n <p>\n An ${isc.DocUtils.linkForExampleId('formsCustomSimpleType', 'example')} is here.",
        name:"SimpleType",
        seeAlso:[
        ],
        type:"class",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('extCustomSimpleType')}"
        ]
    },
    "method:Tree.setSortFoldersBeforeLeaves":{
        ref:"method:Tree.setSortFoldersBeforeLeaves",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:Tree.sortFoldersBeforeLeaves')}.\n",
        name:"setSortFoldersBeforeLeaves",
        seeAlso:[
        ],
        params:[
            {
                description:"new <code>sortFoldersBeforeLeaves</code> value",
                optional:false,
                name:"sortFoldersBeforeLeaves",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:EditTree.rootComponent":{
        ref:"attr:EditTree.rootComponent",
        flags:"IR",
        description:"Root of data to edit.  Must contain the \"_constructor\" property, with the name of a\n valid ${isc.DocUtils.linkForRef('class:DataSource','schema')} or nothing will be able to be dropped on this EditTree.\n <P>\n Can be retrieved at any time.",
        name:"rootComponent",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EditTree",
        groups:[
            "devTools"
        ]
    },
    "attr:Window.showHeader":{
        ref:"attr:Window.showHeader",
        flags:"IRA",
        description:"If true, show a ${isc.DocUtils.linkForRef('attr:Window.header')} for this Window. \n <P>\n Note that in certain Smartclient skins ${isc.DocUtils.linkForRef('attr:Window.showHeaderBackground')} may be set to\n <code>false</code> and the header's appearance implemented as part of the\n window's ${isc.DocUtils.linkForRef('attr:Canvas.showEdges','edge media')}. In this case suppressing the header can be achieved\n by overriding the edge media as well as setting this property to false. For example, to\n create a headerless window with a similar appearance to a ${isc.DocUtils.linkForRef('class:Menu')} in the\n <code><i>TreeFrog</i></code> skin, the following attributes could be used:\n <pre>\n      showHeader:false,\n      edgeImage:\"[SKIN]/Menu/m.png\",\n      edgeSize:10, edgeTop:17, edgeBottom:17,\n      edgeCenterBackgroundColor:\"#F7F7F7\"\n </pre>",
        name:"showHeader",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "attr:DrawPath.points":{
        ref:"attr:DrawPath.points",
        flags:"IRW",
        description:"Array of Points for the line.",
        name:"points",
        seeAlso:[
        ],
        valueType:"Array of Point",
        defaultValue:"[[0,0], [100,100]]",
        type:"attr",
        definingClass:"class:DrawPath"
    },
    "class:ToolStripSeparator":{
        methods:[
        ],
        ref:"class:ToolStripSeparator",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/ToolStrip"
        ],
        attrs:[
            "attr:ToolStripSeparator.skinImgDir",
            "attr:ToolStripSeparator.vSrc",
            "attr:ToolStripSeparator.hSrc"
        ],
        description:"Simple subclass of Img with appearance appropriate for a ToolStrip separator",
        name:"ToolStripSeparator",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSourceField.readOnlyEditorType":{
        ref:"attr:DataSourceField.readOnlyEditorType",
        flags:"IR",
        description:"Sets the default FormItem to be used if this field is marked as \n ${isc.DocUtils.linkForRef('attr:DataSourceField.canEdit','canEdit false')} and displayed in an editor component such\n as a DynamicForm.\n <P>\n This property may also be specified at the type level by specifying \n ${isc.DocUtils.linkForRef('attr:SimpleType.readOnlyEditorType')}.",
        name:"readOnlyEditorType",
        seeAlso:[
        ],
        valueType:"FormItem className",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "attr:CellRecord.enabled":{
        ref:"attr:CellRecord.enabled",
        flags:"IR",
        description:"Default property name denoting whether this record is enabled. Property name may be\n modified for some grid via ${isc.DocUtils.linkForRef('attr:ListGrid.recordEnabledProperty')}.",
        name:"enabled",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('disabledRows')}"
        ],
        definingClass:"object:CellRecord"
    },
    "attr:LinkItem.disableIconsOnReadOnly":{
        ref:"attr:LinkItem.disableIconsOnReadOnly",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} is set to false, should ${isc.DocUtils.linkForRef('attr:FormItem.icons','icons')} be disabled\n by default?\n <P>\n This may also be specified at the icon level. See ${isc.DocUtils.linkForRef('attr:FormItemIcon.disableOnReadOnly')}.",
        name:"disableIconsOnReadOnly",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:LinkItem",
        groups:[
            "formIcons"
        ]
    },
    "method:StretchImgButton.removeFromRadioGroup":{
        ref:"method:StretchImgButton.removeFromRadioGroup",
        flags:"",
        description:" Remove this widget from the specified mutually exclusive selection group with the ID\n passed in.\n No-op's if this widget is not a member of the groupID passed in.\n If no groupID is passed in, defaults to removing from whatever radioGroup this widget\n is a member of.\n",
        name:"removeFromRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- optional radio group ID (to ensure the widget is removed                                        from the appropriate group.",
                optional:true,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:ListGrid.clearEditValue":{
        ref:"method:ListGrid.clearEditValue",
        flags:"A",
        description:"\n  Clear a field value being tracked as an unsaved user edit.<P>\n  The saved record value will be displayed in the the appropriate cell instead.\n  Will also discard any validation errors for the specified field / row.\n\n",
        name:"clearEditValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Row number, primary keys object for the record,                                              or editValues object",
                optional:false,
                name:"editValuesID",
                defaultValue:null,
                type:"number | object"
            },
            {
                description:"Column number, or Name of field for which                                      the value is to be cleared",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number | string"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:MiniDateRangeItem.shouldSaveValue":{
        ref:"attr:MiniDateRangeItem.shouldSaveValue",
        flags:"IR",
        description:"Allow miniDateRangeItems' values to show up in the form's values array, or if \n ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} is called, for the criterion to be included\n in the returned AdvancedCriteria object",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MiniDateRangeItem"
    },
    "attr:DataSource.auditDataSourceID":{
        ref:"attr:DataSource.auditDataSourceID",
        flags:"IR",
        description:"For DataSources with ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing enabled')}, optionally specifies the ID of the audit\n DataSource.  If this property is not specified, the ID of the audit DataSource will\n be <code>audit_[OriginalDSID] </code>",
        name:"auditDataSourceID",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:FieldPicker.cancelButtonTitle":{
        ref:"attr:FieldPicker.cancelButtonTitle",
        flags:"IR",
        description:"The title shown on the Cancel button",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DrawImage.getCenter":{
        ref:"method:DrawImage.getCenter",
        flags:"",
        description:" Get the center point of the image.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the center point",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawImage"
    },
    "attr:DetailViewerField.hiliteIconWidth":{
        ref:"attr:DetailViewerField.hiliteIconWidth",
        flags:"IRW",
        description:"Width for hilite icons for this field.\n Overrides ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconSize')}, ${isc.DocUtils.linkForRef('attr:DetailViewer.hiliteIconWidth')}, and\n ${isc.DocUtils.linkForRef('attr:DetailViewerField.hiliteIconSize')}.",
        name:"hiliteIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "hiliting"
        ]
    },
    "method:ValuesManager.fetchData":{
        ref:"method:ValuesManager.fetchData",
        flags:"",
        description:" Retrieve data that matches the provided criteria, and edit the first record returned\n \n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"search criteria",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:DataSourceField.imageSize":{
        ref:"attr:DataSourceField.imageSize",
        flags:"IR",
        description:"Width and height of the image-content of this field.  If set as a string, represents the \n name of another field in the record that holds the imageSize.  Applicable only to fields \n of image type or fields that use a ${isc.DocUtils.linkForRef('class:ViewFileItem','ViewFileItem')} as an editor.",
        name:"imageSize",
        seeAlso:[
        ],
        valueType:"number or String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "method:Selection.deselectList":{
        ref:"method:Selection.deselectList",
        flags:"",
        description:"\t\t\tDeselect an array of items (subset of the entire list)\n",
        name:"deselectList",
        seeAlso:[
        ],
        params:[
            {
                description:"array of objects to select",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"object[]"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:SectionStack.scrollSectionIntoView":{
        ref:"attr:SectionStack.scrollSectionIntoView",
        flags:"IR",
        description:"If an expanded or shown section expands past the current viewport and this property is\n true, then the viewport will auto-scroll to fit as much of the section content into the\n viewport without scrolling the top of the section out of the viewport.",
        name:"scrollSectionIntoView",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:SliderItem.vertical":{
        ref:"attr:SliderItem.vertical",
        flags:"IR",
        description:"Indicates whether this is a vertical or horizontal slider.",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('slider')}"
        ],
        definingClass:"class:SliderItem"
    },
    "attr:Canvas.appImgDir":{
        ref:"attr:Canvas.appImgDir",
        flags:"IRWA",
        description:"Default directory for app-specific images, relative to the Page-wide\n ${isc.DocUtils.linkForRef('classMethod:Page.getAppImgDir','appImgDir')}.",
        name:"appImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "images"
        ]
    },
    "classAttr:Operators.iMatchesPatternTitle":{
        ref:"classAttr:Operators.iMatchesPatternTitle",
        flags:"IR",
        description:"Title for the \"iMatchesPattern\" operator",
        name:"iMatchesPatternTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"matches pattern\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:PaletteNode.title":{
        ref:"attr:PaletteNode.title",
        flags:"IR",
        description:"Textual title for this paletteNode.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PaletteNode"
    },
    "attr:ImgButton.showFocus":{
        ref:"attr:ImgButton.showFocus",
        deprecated:"as of SmartClient version 6.1 in favor of ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused')}",
        flags:"IRW",
        description:"Should we visibly change state when the canvas receives focus?  Note that by default the\n <code>over</code> state is used to indicate focus.",
        name:"showFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "classAttr:Messaging.messagingURL":{
        ref:"classAttr:Messaging.messagingURL",
        flags:"IR",
        description:"URL where the MessagingServlet has been installed.  See the server-side JavaDoc for\n details on the MessagingServlet.",
        name:"messagingURL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"[ISOMORPHIC]/messaging\"",
        type:"classAttr",
        definingClass:"class:Messaging"
    },
    "group:display":{
        ref:"group:display",
        refs:[
            "method:ListGrid.getFieldName",
            "method:ListGrid.getFieldNum",
            "method:ListGrid.getSummaryTitle"
        ],
        name:"display",
        seeAlso:[
        ],
        type:"group"
    },
    "method:FilterClause.remove":{
        ref:"method:FilterClause.remove",
        flags:"",
        description:" Remove this clause by destroy()ing it.\n \n",
        name:"remove",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FilterClause"
    },
    "group:gridLayout":{
        ref:"group:gridLayout",
        refs:[
            "method:CubeGrid.setFacetTitleAlign",
            "method:CubeGrid.setFacetValueTitleAlign",
            "attr:CubeGrid.canResizeColumns",
            "attr:CubeGrid.canMinimizeColumns",
            "attr:CubeGrid.autoSizeHeaders",
            "attr:CubeGrid.facetTitleAlign",
            "attr:CubeGrid.facetValueAlign",
            "attr:CubeGrid.cellAlign",
            "attr:CubeGrid.wrapFacetTitles",
            "attr:CubeGrid.wrapFacetValueTitles",
            "attr:CubeGrid.padTitles",
            "attr:CubeGrid.defaultFacetWidth",
            "attr:CubeGrid.bodyMinWidth",
            "attr:CubeGrid.bodyMinHeight"
        ],
        description:null,
        name:"gridLayout",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:MultiGroupDialog.askForGrouping":{
        ref:"classMethod:MultiGroupDialog.askForGrouping",
        flags:"",
        description:" Launches a MultiGroupDialog and obtains a group-definition from the user.\n\n",
        name:"askForGrouping",
        seeAlso:[
        ],
        params:[
            {
                description:"A source for Fields which the user can choose to group by",
                optional:false,
                name:"fieldSource",
                defaultValue:null,
                type:"Array of Field or DataSource or DataBoundComponent"
            },
            {
                description:"The initial group definition.",
                optional:false,
                name:"initialGrouping",
                defaultValue:null,
                type:"Array"
            },
            {
                description:"Called when the user defines and accepts one or more  ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.  Single parameter <code>groupLevels</code> is an Array of \n GroupSpecifier or null if the user cancelled the dialog.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"classMethod",
        definingClass:"class:MultiGroupDialog"
    },
    "attr:FacetValue.borderBefore":{
        ref:"attr:FacetValue.borderBefore",
        flags:"IR",
        description:"CSS line style to apply as a border before this facetValue.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"borderBefore",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:TabSet.titleEditor":{
        ref:"attr:TabSet.titleEditor",
        flags:"R",
        description:"TextItem we use to edit tab titles in this TabSet.  You can override this property \n using the normal ${isc.DocUtils.linkForRef('type:AutoChild')} facilities.",
        name:"titleEditor",
        seeAlso:[
            {
                ref:"attr:TabSet.canEditTabTitles",
                description:null
            },
            {
                ref:"attr:Tab.canEditTitle",
                description:null
            },
            {
                ref:"method:TabSet.editTabTitle",
                description:null
            }
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "method:SplitPane.setNavigationPane":{
        ref:"method:SplitPane.setNavigationPane",
        flags:"",
        description:" Update the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')} at runtime.\n",
        name:"setNavigationPane",
        seeAlso:[
        ],
        params:[
            {
                description:"new navigation pane for this widget.",
                optional:false,
                name:"pane",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:Button.setIconOrientation":{
        ref:"method:Button.setIconOrientation",
        flags:"",
        description:" Changes the orientation of the icon relative to the text of the button.\n\n",
        name:"setIconOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"The new orientation of the icon relative to the text of the button.",
                optional:false,
                name:"orientation",
                defaultValue:null,
                type:"\"left\" or \"right\""
            }
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Tree.getTitle":{
        ref:"method:Tree.getTitle",
        flags:"",
        description:"\n Return the title of a node -- the name as it should be presented to the user.  This method\n works as follows:\n <ul>\n <li> If a ${isc.DocUtils.linkForRef('attr:Tree.titleProperty')} is set on the node, the value of that property is\n returned.\n <li> Otherwise, if the ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')} is set on the node, that value is\n returned, minus any trailing ${isc.DocUtils.linkForRef('attr:Tree.pathDelim')}.\n <li> Finally, if none of the above yielded a title, the value of\n ${isc.DocUtils.linkForRef('attr:Tree.defaultNodeTitle')} is returned.\n </ul>\n You can override this method to return the title of your choice for a given node.\n <br><br>\n To override the title for an auto-constructed tree (for example, in a databound TreeGrid),\n override ${isc.DocUtils.linkForRef('method:TreeGrid.getNodeTitle')} instead.\n\n",
        name:"getTitle",
        seeAlso:[
            {
                ref:"method:TreeGrid.getNodeTitle",
                description:null
            }
        ],
        params:[
            {
                description:"node for which the title is being requested",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"title to display",
            type:"string"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:ListGrid.frozenBaseStyle":{
        ref:"attr:ListGrid.frozenBaseStyle",
        flags:"IRW",
        description:"If this listGrid contains any frozen fields, this property can be used to apply a custom\n baseStyle to all cells in those frozen fields. If unset, the standard base style will be\n used for both frozen and unfrozen cells.",
        name:"frozenBaseStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.baseStyle",
                description:null
            },
            {
                ref:"attr:ListGridField.frozen",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance",
            "frozenFields"
        ]
    },
    "attr:DataSourceField.decimalPad":{
        ref:"attr:DataSourceField.decimalPad",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and enforces a minimum number of digits shown after\n the decimal point.\n <P>\n For example, a field value of 343.1, 343.104 and 343.09872677 would all be shown as 343.10\n if decimalPad is 2.\n <P>\n The original unpadded value is always shown when the value is edited.",
        name:"decimalPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "appearance"
        ]
    },
    "attr:SplitPane.detailToolButtons":{
        ref:"attr:SplitPane.detailToolButtons",
        flags:"IRW",
        description:"<code>detailToolButtons</code> allows you to specify a set of controls that are specially\n placed based on the ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode')} and ${isc.DocUtils.linkForRef('attr:SplitPane.pageOrientation','pageOrientation')}.\n This is generally useful for a compact strip of ${isc.DocUtils.linkForRef('class:ImgButton')} controls, approximately\n 5 of which will fit comfortably using typical size icons and in the most space-constricted\n modes.\n <p>\n These controls are placed as follows:\n <ul>\n <li> in <code>deviceMode:\"desktop\"</code> and <code>deviceMode</code> \"tablet\" with\n      <code>pageOrientation</code> \"landscape\", <code>detailToolButtons</code> appear in the\n      ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolStrip')} shown <i>above</i> of the <code>detailPane</code>.\n <li> in <code>deviceMode:\"handset\"</code>, <code>detailToolButtons</code> appear in a\n       ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolStrip')} <i>underneath</i> the detailPane.  This toolstrip\n      is only created in \"handset\" mode if <code>detailToolButtons</code> are provided.\n <li> in <code>deviceMode:\"tablet\"</code> and <code>pageOrientation:\"portrait\"</code>,\n      <code>detailToolButtons</code> appear in <code>splitPane.navigationBar</code>.\n </ul>",
        name:"detailToolButtons",
        setter:[
            "setDetailToolButtons"
        ],
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "class:StretchImgButton":{
        methods:[
            "method:StretchImgButton.getTitle",
            "method:StretchImgButton.setTitle",
            "method:StretchImgButton.setIconOrientation",
            "method:StretchImgButton.setIcon",
            "method:StretchImgButton.setAutoFit",
            "method:StretchImgButton.setBaseStyle",
            "method:StretchImgButton.setTitleStyle",
            "method:StretchImgButton.setLabelSkinImgDir",
            "method:StretchImgButton.select",
            "method:StretchImgButton.deselect",
            "method:StretchImgButton.isSelected",
            "method:StretchImgButton.setSelected",
            "method:StretchImgButton.addToRadioGroup",
            "method:StretchImgButton.removeFromRadioGroup",
            "method:StretchImgButton.setActionType",
            "method:StretchImgButton.getActionType",
            "method:StretchImgButton.setState",
            "method:StretchImgButton.setDisabled",
            "method:StretchImgButton.getState",
            "method:StretchImgButton.action",
            "method:StretchImgButton.titleClipped",
            "method:StretchImgButton.titleHoverHTML",
            "method:StretchImgButton.iconClick",
            "method:StretchImgButton.titleHover"
        ],
        ref:"class:StretchImgButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:StretchImgButton.title",
            "attr:StretchImgButton.showClippedTitleOnHover",
            "attr:StretchImgButton.wrap",
            "attr:StretchImgButton.icon",
            "attr:StretchImgButton.iconSize",
            "attr:StretchImgButton.iconWidth",
            "attr:StretchImgButton.iconHeight",
            "attr:StretchImgButton.iconOrientation",
            "attr:StretchImgButton.iconAlign",
            "attr:StretchImgButton.iconSpacing",
            "attr:StretchImgButton.showDisabledIcon",
            "attr:StretchImgButton.showRollOverIcon",
            "attr:StretchImgButton.showFocusedIcon",
            "attr:StretchImgButton.showDownIcon",
            "attr:StretchImgButton.showSelectedIcon",
            "attr:StretchImgButton.autoFit",
            "attr:StretchImgButton.baseStyle",
            "attr:StretchImgButton.titleStyle",
            "attr:StretchImgButton.labelSkinImgDir",
            "attr:StretchImgButton.selected",
            "attr:StretchImgButton.radioGroup",
            "attr:StretchImgButton.actionType",
            "attr:StretchImgButton.state",
            "attr:StretchImgButton.showDisabled",
            "attr:StretchImgButton.showDown",
            "attr:StretchImgButton.showFocus",
            "attr:StretchImgButton.showFocused",
            "attr:StretchImgButton.showRollOver",
            "attr:StretchImgButton.align",
            "attr:StretchImgButton.valign",
            "attr:StretchImgButton.showTitle",
            "attr:StretchImgButton.labelHPad",
            "attr:StretchImgButton.labelVPad",
            "attr:StretchImgButton.labelLengthPad",
            "attr:StretchImgButton.labelBreadthPad",
            "attr:StretchImgButton.hiliteAccessKey",
            "attr:StretchImgButton.src",
            "attr:StretchImgButton.vertical",
            "attr:StretchImgButton.capSize"
        ],
        description:"A StretchImg that behaves like a button, going through up/down/over state transitions in response\n to user events.  Supports an optional title, and will auto-size to accommodate the title text if\n <code>overflow</code> is set to \"visible\".\n <P>\n Examples of use include fancy buttons, poplist headers, and tabs.",
        name:"StretchImgButton",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:CalendarEvent.endDate":{
        ref:"attr:CalendarEvent.endDate",
        flags:"IRW",
        description:"Date object which represents the end date of a ${isc.DocUtils.linkForRef('object:CalendarEvent')}\n The name of this field within the CalendarEvent can be changed via\n ${isc.DocUtils.linkForRef('attr:Calendar.endDateField')}",
        name:"endDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "attr:ListGrid.expansionEditorSaveButton":{
        ref:"attr:ListGrid.expansionEditorSaveButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} for saving the values in the expanded\n portion of a ListGrid row.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.expansionEditorSaveButtonProperties</code> and\n <code>listGrid.expansionEditorSaveButtonDefaults</code>.\n <P>\n Note, however, that this is a multi-instance component (potentially one per record),\n so it is created using ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')} not\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')}, and no default single instance is created by\n name on the grid.",
        name:"expansionEditorSaveButton",
        seeAlso:[
        ],
        valueType:"MultiAutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:FieldPicker.sampleRecord":{
        ref:"attr:FieldPicker.sampleRecord",
        flags:"IR",
        description:"If a <code>sampleRecord</code> is provided, the FieldPicker will show a second column in the\n Current Fields dialog showing the cell value that will appear for that field given the\n provided sample record.\n <br>\n A value of \"first\" means the first record.  If the underlying\n ${isc.DocUtils.linkForRef('attr:FieldPicker.dataBoundComponent')} is a ${isc.DocUtils.linkForRef('class:TreeGrid')}, you can specify \"firstOpenLeaf\"\n to use the first open leaf as the sampleRecord (this is often desirable in trees where the\n first record may be a folder that's used for organizational purposes only and hence would\n have no actual data for columns other than the tree column).",
        name:"sampleRecord",
        seeAlso:[
        ],
        valueType:"Record|\"first\"|\"firstOpenLeaf\"",
        defaultValue:"\"first\"",
        type:"attr",
        definingClass:"class:FieldPicker"
    },
    "classMethod:Page.getAppImgDir":{
        ref:"classMethod:Page.getAppImgDir",
        flags:"",
        description:" Return the directory for app-specific images.\n\n",
        name:"getAppImgDir",
        seeAlso:[
        ],
        returns:{
            description:"URL for page-specific images.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "method:Button.setVAlign":{
        ref:"method:Button.setVAlign",
        flags:"",
        description:" Sets the vertical alignment of this buttons content.\n",
        name:"setVAlign",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "positioning"
        ]
    },
    "attr:RichTextEditor.editArea":{
        ref:"attr:RichTextEditor.editArea",
        flags:"R",
        description:"The edit canvas created automatically for this RichTextEditor.",
        name:"editArea",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "method:EBay.setProductionToken":{
        ref:"method:EBay.setProductionToken",
        flags:"",
        description:"\n Sets the token to be used by queries to the eBay production environment.\n \n",
        name:"setProductionToken",
        seeAlso:[
        ],
        params:[
            {
                description:"Your production authToken, provided to you by eBay.",
                optional:false,
                name:"authToken",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:EBay"
    },
    "type:HashAlgorithm":{
        ref:"type:HashAlgorithm",
        values:[
            {
                description:"Message Digest algorithm 5",
                value:"\"MD5\""
            },
            {
                description:"Secure Hashing Algorithm (SHA-1)",
                value:"\"SHA\""
            }
        ],
        description:"Algorithms to use when hashing field values (see ${isc.DocUtils.linkForRef('attr:DataSourceField.storeWithHash')})",
        name:"HashAlgorithm",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:Portlet.closeConfirmationMessage":{
        ref:"attr:Portlet.closeConfirmationMessage",
        flags:"IRW",
        description:"Confirmation message to show the user when closing portlets if\n ${isc.DocUtils.linkForRef('attr:Portlet.showCloseConfirmationMessage')} is true.",
        name:"closeConfirmationMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Close portlet?\"",
        type:"attr",
        definingClass:"class:Portlet",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataBoundComponent.addDropValues":{
        ref:"attr:DataBoundComponent.addDropValues",
        flags:"IRW",
        description:"Indicates whether to add \"drop values\" to items dropped on this component, if both \n          the source and target widgets are databound, either to the same DataSource or \n          to different DataSources that are related via a foreign key.  \"Drop values\" are \n          properties of the dropped item that you wish to change (and persist) as a \n          result of the item being dropped on this grid.\n          <P>\n          If this value is true and this component is databound, ${isc.DocUtils.linkForRef('method:DataBoundComponent.getDropValues')} will \n          be called for every databound item dropped on this grid, and an update performed\n          on the item",
        name:"addDropValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('listRecategorize')}"
        ],
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragging"
        ]
    },
    "attr:StretchImgButton.autoFit":{
        ref:"attr:StretchImgButton.autoFit",
        flags:"IRW",
        description:"If true, ignore the specified size of this widget and always size just large\n enough to accommodate the title.  If <code>setWidth()</code> is explicitly called on an\n autoFit:true button, autoFit will be reset to <code>false</code>.\n <P>\n Note that for StretchImgButton instances, autoFit will occur horizontally only, as \n unpredictable vertical sizing is likely to distort the media. If you do want vertical \n auto-fit, this can be achieved by simply setting a small height, and having \n overflow:\"visible\"",
        name:"autoFit",
        setter:[
            "setAutoFit"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "sizing"
        ]
    },
    "method:FormulaBuilder.testFunction":{
        ref:"method:FormulaBuilder.testFunction",
        flags:"",
        description:" Test the formula by generating it's function and trying to run it.\n",
        name:"testFunction",
        seeAlso:[
        ],
        returns:{
            description:"result of the function",
            type:"string"
        },
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:CubeGrid.addFacet":{
        ref:"method:CubeGrid.addFacet",
        flags:"",
        description:"\n Add a facet to the view, into the row or column facets (intoRows true or false), at index\n \"index\".  Handles the facet already being in the view (does a pivot).\n <P>\n The facet being added should currently have a fixed facet value (unless it's already part of the\n view), which will be removed from cubeGrid.fixedFacetValues.\n\n",
        name:"addFacet",
        seeAlso:[
            {
                ref:"method:CubeGrid.removeFacet",
                description:null
            },
            {
                ref:"attr:CubeGrid.fixedFacetValues",
                description:null
            }
        ],
        params:[
            {
                description:"facetId to add.  Definition must have been provided at init time.",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"whether to add facet as a row facet",
                optional:true,
                name:"intoRows",
                defaultValue:"true",
                type:"Boolean"
            },
            {
                description:"index to add the facet at.  0 = outermost (default innermost)",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:DataSourceField.autoGenerated":{
        ref:"attr:DataSourceField.autoGenerated",
        flags:"IR",
        description:"Indicates that values for this field are automatically generated by the database or ORM \n provider.  Setting this flag makes the field behave somewhat like a \n ${isc.DocUtils.linkForRef('attr:DataSourceField.sequenceName','sequence field')}, in that server-side logic does not expect client code\n to provide values for the field on \"add\" operations.  However, it is not entirely the same\n as a sequence:<ul>\n <li>Sequences must be integers, whereas autoGenerated fields can be of any type</li>\n <li>SmartClient Server's DataSource implementations are capable of discovering the value\n     that was generated by the database for sequence fields.  With autoGenerated fields, \n     your code is responsible for doing this - similar to sequence fields when the\n     ${isc.DocUtils.linkForRef('type:SequenceMode','sequenceMode')} is  \"none\"</li>\n </ul>",
        name:"autoGenerated",
        seeAlso:[
            {
                ref:"attr:DataSourceField.sequenceName",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            },
            {
                ref:"type:SequenceMode",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "dataType"
        ]
    },
    "method:ListGrid.setFieldHeaderBaseStyle":{
        ref:"method:ListGrid.setFieldHeaderBaseStyle",
        flags:"",
        description:" Update the ${isc.DocUtils.linkForRef('attr:ListGridField.headerBaseStyle')} for a field within the grid at runtime.\n",
        name:"setFieldHeaderBaseStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the field.",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new baseStyle for the field header",
                optional:false,
                name:"newStyle",
                defaultValue:null,
                type:"CSSClass"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:MenuItem.submenu":{
        ref:"attr:MenuItem.submenu",
        flags:"IR",
        description:"A reference to another menu, to display as a submenu when the mouse cursor hovers over\n this menu item.",
        name:"submenu",
        seeAlso:[
        ],
        valueType:"Menu",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "menuBasic"
        ]
    },
    "method:DynamicForm.titleClipped":{
        ref:"method:DynamicForm.titleClipped",
        flags:"",
        description:" Is the title for the given form item clipped? The form item must have title clipping enabled.\n\n",
        name:"titleClipped",
        seeAlso:[
            {
                ref:"attr:DynamicForm.clipItemTitles",
                description:null
            },
            {
                ref:"attr:FormItem.clipTitle",
                description:null
            }
        ],
        params:[
            {
                description:"the form item.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"true if the title is clipped; false otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "object:ClassFactory":{
        methods:[
        ],
        ref:"object:ClassFactory",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:ClassFactory.defineClass",
            "classMethod:ClassFactory.overwriteClass",
            "classMethod:ClassFactory.getClass",
            "classMethod:ClassFactory.newInstance"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Sets up a real inheritance structure for Javascript objects.\n\tWe separate out class objects from prototypes, so each gets its own inheritance chain.\n\tThis allows us to set up superclass calls, maintain class vs. instance variables and more!\n\n\tThe ClassFactory is a singleton object that holds the miscellaneous pieces of our inheritance\n\tmechanism.\n\n\tYour main interaction with the ClassFactory is to create new classes:\n\t\t<code>ClassFactory.defineClass(\"MyClass\", \"mySuperClass\");</code>",
        name:"ClassFactory",
        seeAlso:[
            {
                ref:"class:Class",
                description:null
            }
        ],
        type:"object"
    },
    "method:FacetChart.getXCoord":{
        ref:"method:FacetChart.getXCoord",
        flags:"",
        description:" Returns the X coordination where the passed data value would be drawn.  \n For example, this would be the X coordinate where a bar would end in a bar\n chart.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n <P>\n If the ${isc.DocUtils.linkForRef('type:ChartType')} is \"Scatter\" or \"Bar\" then <code>value</code> argument should be a\n number.  For other rectangular charts, this method expects a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that\n uniquely identifies the data cell whose x-axis coordinate to retrieve.\n\n",
        name:"getXCoord",
        seeAlso:[
        ],
        params:[
            {
                description:"the value to be drawn.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float | FacetValueMap"
            }
        ],
        returns:{
            description:"the X coordinate where the passed data value would be drawn.",
            type:"float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:DateRangeItem.setValue":{
        ref:"method:DateRangeItem.setValue",
        flags:"",
        description:" Sets the value for this dateRangeItem.  The value parameter is a \n ${isc.DocUtils.linkForRef('object:DateRange')} object that optionally includes both start and end values.  If\n passed null, both start- and end-range values are cleared.\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new value for this item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"DateRange"
            }
        ],
        type:"method",
        definingClass:"class:DateRangeItem"
    },
    "attr:HeaderItem.endRow":{
        ref:"attr:HeaderItem.endRow",
        flags:"IRW",
        description:"these items are in a row by themselves by default",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:HeaderItem",
        groups:[
            "appearance"
        ]
    },
    "method:Layout.getMemberSizes":{
        ref:"method:Layout.getMemberSizes",
        flags:"",
        description:" \n",
        name:"getMemberSizes",
        seeAlso:[
        ],
        returns:{
            description:"array of member sizes",
            type:"Array"
        },
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:HTMLFlow.dynamicContents":{
        ref:"attr:HTMLFlow.dynamicContents",
        flags:"IRWA",
        description:"Dynamic contents allows the contents string to be treated as a simple, but powerful\n template.  When this attribute is set to true, expressions of the form &#36;{arbitrary JS\n here} are replaced by the result of the evaluation of the JS code inside the curly\n brackets.  This evaluation happens at draw time.  If you want to trigger a re-evaluation\n of the expressions in the contents string you can call markForRedraw() on the canvas.\n <p>\n You can use this feature to build some simple custom components. For example, let's say\n you want to show the value of a Slider in a Canvas somewhere on the screen.  You can do\n this by observing the valueChanged() method on the slider and calling setContents() on\n your canvas with the new string or you can set the contents of the canvas to something\n like:\n <p><code>\n \"The slider value is &#36;{sliderInstance.getValue()}.\"\n </code><p>\n Next you set dynamicContents: true on the canvas, observe valueChanged() on the slider\n and call canvas.markForRedraw() in that observation.  This approach is cleaner than\n setContents() when the Canvas is aggregating several values or dynamic expressions.\n Like so:\n <p>\n <pre>\n Slider.create({\n     ID: \"mySlider\"\n });\n\n Canvas.create({\n     ID: \"myCanvas\",\n     dynamicContents: true,\n     contents: \"The slider value is &#36;{mySlider.getValue()}.\"\n });\n\n myCanvas.observe(mySlider, \"valueChanged\",\n                  \"observer.markForRedraw()\");\n </pre>\n You can embed an arbitrary number of dynamic expressions in the contents string.  The\n search and replace is optimized for speed.\n <p>\n If an error occurs during the evaluation of one of the expressions, a warning is logged\n to the ISC Developer Console and the error string is embedded in place of the expected\n value in the Canvas.\n <p>\n The value of a function is its return value.  The value of any variable is the same as\n that returned by its toString() representation.\n <p>\n Inside the evaluation contentext, <code>this</code> points to the canvas instance that\n has the dynamicContents string as its contents - in other words the canvas instance on\n which the template is declared.",
        name:"dynamicContents",
        seeAlso:[
            {
                ref:"attr:HTMLFlow.contents",
                description:null
            },
            {
                ref:"attr:Canvas.dynamicContentsVars",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dynamicContents')}"
        ],
        definingClass:"class:HTMLFlow",
        groups:[
            "contents"
        ]
    },
    "attr:StaticTextItem.canSelectText":{
        ref:"attr:StaticTextItem.canSelectText",
        flags:"IRW",
        description:"Should the user be able to select the text in this item?",
        name:"canSelectText",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StaticTextItem"
    },
    "method:StretchImgButton.setTitle":{
        ref:"method:StretchImgButton.setTitle",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.title','title')}.\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"the new title HTML.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.isExportingClientData":{
        ref:"method:ListGrid.isExportingClientData",
        flags:"",
        description:" Returns true if this component is currently \n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exporting client data')}.  This method can be called from\n custom cell formatters if you need to return a different formatted value for an export\n than for a live ListGrid\n",
        name:"isExportingClientData",
        seeAlso:[
            {
                ref:"method:ListGrid.exportClientData",
                description:null
            }
        ],
        returns:{
            description:"returns true if this component is currently exporting client data",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:SectionStack.expandSection":{
        ref:"method:SectionStack.expandSection",
        flags:"",
        description:" \n Expands a section or sections.  This action shows all the items assigned to the section.\n If the section is currently hidden, it is shown first and then expanded.  Calling this\n method is equivalent to the user clicking on the SectionHeader of a collapsed section.\n <smartclient>This method is called when the user clicks on SectionHeaders\n to expand / collapse sections and so may be overridden to act as a notification method\n for the user expanding or collapsing sections.</smartclient>\n\n",
        name:"expandSection",
        seeAlso:[
            {
                ref:"method:SectionStack.showSection",
                description:null
            },
            {
                ref:"attr:SectionStack.scrollSectionIntoView",
                description:null
            }
        ],
        params:[
            {
                description:"Section(s) to expand.  For this parameter, you can pass the position \n                      of the section in the SectionStack, the name of the section, or a\n                      List of section names/positions.",
                optional:false,
                name:"sections",
                defaultValue:null,
                type:"int | String | Array of int | Array of String"
            },
            {
                description:"callback to fire when the section has been expanded.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"ExpandSectionCallback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsExpandCollapse')}"
        ],
        definingClass:"class:SectionStack"
    },
    "method:Slider.setStepPercent":{
        ref:"method:Slider.setStepPercent",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.stepPercent')} property of the slider\n\n",
        name:"setStepPercent",
        seeAlso:[
        ],
        params:[
            {
                description:"new slider step percent",
                optional:false,
                name:"stepPercent",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "type:MultipleFieldStorage":{
        ref:"type:MultipleFieldStorage",
        values:[
            {
                description:"values are saved as a simple delimeter-separated string.  Delimeter        can be configured via ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorageSeparator')}.  An empty\n        array is stored as \"\", and null as the database <code>null</code> value.",
                value:"\"simpleString\""
            },
            {
                description:"values are serialized to JSON.  Empty array as a distinct value         from null (it appears as the text \"[]\").",
                value:"\"json\""
            },
            {
                description:"no transformation is applied to values; server-side field value remains a Java        List when passed to the execute(Fetch|Add|Update|Remove) method of the server-side\n        DataSource class",
                value:"\"none\""
            }
        ],
        description:"Options for how values are stored for a field that is\n ${isc.DocUtils.linkForRef('attr:ListGridField.multiple','multiple:true')}.  See ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorage')}.",
        name:"MultipleFieldStorage",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "multipleField"
        ]
    },
    "type:ClickMaskMode":{
        ref:"type:ClickMaskMode",
        values:[
            {
                description:"When the mask receives a click, it will fire its click action,                   and cancel the event, leaving the clickMask up.",
                value:"\"hard\""
            },
            {
                description:"When the mask receives a click, it will fire its click action,                   then dismiss the clickMask and allow the event to proceed to its target.",
                value:"\"soft\""
            }
        ],
        description:"Passed as a parameter to ${isc.DocUtils.linkForRef('method:Canvas.showClickMask')} to determine the masks behavior\n when clicked.",
        name:"ClickMaskMode",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "clickMask"
        ]
    },
    "attr:FormItem.showErrorIcon":{
        ref:"attr:FormItem.showErrorIcon",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','showErrorIcons')}, \n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText','showErrorText')}, and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorStyle','showErrorStyle')} control how validation errors are\n displayed when they are displayed inline in the form (next to the form item where there\n is a validation error).  To instead display all errors at the top of the form, set\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors','showInlineErrors')}:false.\n <P>\n <code>showErrorIcons</code>, <code>showErrorText</code> and <code>showErrorStyle</code>\n are all boolean properties, and can be set on a DynamicForm to control the behavior\n form-wide, or set on individual FormItems.  \n <P>\n The HTML displayed next to a form item with errors is generated by \n ${isc.DocUtils.linkForRef('method:FormItem.getErrorHTML')}.\n The default implementation of that method respects <code>showErrorIcons</code> and\n <code>showErrorText</code> as follows:\n <P>\n <code>showErrorIcons</code>, or <code>showErrorIcon</code> at the FormItem level controls\n whether an error icon should appear next to fields which have validation errors.  The icon's\n appearance is governed by ${isc.DocUtils.linkForRef('attr:FormItem.errorIconSrc')}, ${isc.DocUtils.linkForRef('attr:FormItem.errorIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorIconHeight')}\n <P>\n <code>showErrorText</code> determines whether the text of the validation error should be\n displayed next to fields which have validation errors. The attribute\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showTitlesWithErrorMessages')} may be set to prefix error messages with the \n form item's title + <code>\":\"</code> (may be desired if the item has \n ${isc.DocUtils.linkForRef('attr:FormItem.showTitle')} set to false).\n <P>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')} controls where the error HTML should appear relative \n to form items. Therefore the combination of ${isc.DocUtils.linkForRef('attr:FormItem.showErrorText')}<code>:false</code> and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorOrientation')}<code>:\"left\"</code> creates a compact validation error display\n consisting of just an icon, to the left of the item with the error message\n available via a hover (similar appearance to ListGrid validation error display).  \n <P>\n In addition to this, <code>showErrorStyle</code> determines whether fields  with validation\n errors should have special styling applied to them. See ${isc.DocUtils.linkForRef('type:FormItemBaseStyle')} for a \n discussion for how error styling is calculated.",
        name:"showErrorIcon",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "errorIcon",
            "validation",
            "appearance"
        ]
    },
    "group:performance":{
        ref:"group:performance",
        refs:[
            "attr:GridRenderer.showAllRows",
            "attr:GridRenderer.showAllColumns",
            "attr:GridRenderer.drawAllMaxCells",
            "attr:GridRenderer.instantScrollTrackRedraw",
            "attr:GridRenderer.scrollRedrawDelay",
            "attr:GridRenderer.scrollWheelRedrawDelay",
            "attr:GridRenderer.drawAheadRatio",
            "attr:GridRenderer.quickDrawAheadRatio",
            "attr:ListGrid.showAllRecords",
            "attr:ListGrid.showAllColumns",
            "attr:ListGrid.drawAllMaxCells",
            "attr:ListGrid.drawAheadRatio",
            "attr:ListGrid.quickDrawAheadRatio",
            "attr:ListGrid.instantScrollTrackRedraw",
            "attr:ListGrid.scrollRedrawDelay",
            "attr:ListGrid.scrollWheelRedrawDelay",
            "attr:ListGrid.dataPageSize",
            "attr:ListGrid.fastCellUpdates"
        ],
        name:"performance",
        seeAlso:[
        ],
        type:"group"
    },
    "group:loadState":{
        ref:"group:loadState",
        refs:[
            "method:ResultTree.loadChildren",
            "method:ResultTree.unloadChildren",
            "method:Tree.getLoadState",
            "method:Tree.isLoaded",
            "method:Tree.allChildrenLoaded",
            "method:Tree.loadChildren",
            "method:Tree.unloadChildren",
            "method:Tree.reloadChildren",
            "type:LoadState"
        ],
        name:"loadState",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.showValueOnHover":{
        ref:"attr:FacetChart.showValueOnHover",
        flags:"IR",
        description:"Shows the value of the nearest data value in a floating label whenever the mouse moves\n within the main chart area.  The visual element representing the data\n value will also be emphasized by brightening or highlighting it (appearance differs by\n chart type).\n <p>\n Calculates nearest value based on ${isc.DocUtils.linkForRef('method:FacetChart.getNearestDrawnValue')}.\n <p>\n The data value will be formatted using ${isc.DocUtils.linkForRef('method:FacetChart.formatDataValue')}.\n The label's appearance is controlled by ${isc.DocUtils.linkForRef('attr:FacetChart.hoverLabelProperties')}.",
        name:"showValueOnHover",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:SelectItem.textBoxStyle":{
        ref:"attr:SelectItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class name for a form item's text box element.\n <P>\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special\n skinning considerations.",
        name:"textBoxStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"selectItemText\", [IRA]",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "appearance"
        ]
    },
    "method:ListPropertiesDialog.cancelClick":{
        ref:"method:ListPropertiesDialog.cancelClick",
        flags:"",
        description:" Notification method fired when the ${isc.DocUtils.linkForRef('attr:ListPropertiesDialog.cancelButton','Cancel button')}\n is clicked.\n",
        name:"cancelClick",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListPropertiesDialog"
    },
    "attr:ListGridField.canFilter":{
        ref:"attr:ListGridField.canFilter",
        flags:"IRW",
        description:"If showing a filter row for this ListGrid, should the filter criteria for this\n      field be editable",
        name:"canFilter",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('disableFilter')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "filterEditor"
        ]
    },
    "classMethod:DataSource.exportClientData":{
        ref:"classMethod:DataSource.exportClientData",
        flags:"",
        description:" Exports arbitrary client-side data, with client-side formatters applied, so is suitable \n for direct display to users.  This method can be used to export data formatted outside\n of any kind of visual component.\n <P>\n Requires the SmartClient server, but does not rely on any server-side DataSources.  If \n you need to intervene in the export process server-side - for example, if you need to\n do something not directly supported with the exported object, such as attach it to an\n email - use the ${isc.DocUtils.linkForRef('method:DataSource.exportClientData','instance method')} with an \n appropriate ${isc.DocUtils.linkForRef('class:OperationBinding')}, as described in the method documentation.\n <P>\n To export unformatted data, see ${isc.DocUtils.linkForRef('method:DataSource.exportData','exportData')} which does\n not include client-side formatters, but requires both the SmartClient server and the \n presence of server-side DataSources.\n <P>\n Note that field ${isc.DocUtils.linkForRef('attr:DataSourceField.displayFormat','displayFormat')} is honored for \n \"date\" and \"datetime\" fields when exporting direct to Excel; see the displayFormat\n docs for details.\n\n",
        name:"exportClientData",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of Records to export",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Array of Record"
            },
            {
                description:"Request properties for the export",
                optional:false,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest properties"
            },
            {
                description:"Optional callback.  Note that this is only applicable  if you also specify ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient','exportToClient')}: false in the \n request properties",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "method:EditContext.addPaletteNodesFromJS":{
        ref:"method:EditContext.addPaletteNodesFromJS",
        flags:"",
        description:" Add ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')} from a JavaScript source representation.\n <P>\n By default, components that have ${isc.DocUtils.linkForRef('attr:Canvas.ID','global IDs')} will not\n actually be allowed to take those global IDs - instead, only widgets that have one of the\n global IDs passed as the <code>globals</code> parameter will actually receive their global\n IDs.  To override this behavior, pass the special value ${isc.DocUtils.linkForRef('classAttr:RPCManager.ALL_GLOBALS')}\n for the <code>globals</code> parameter.\n\n",
        name:"addPaletteNodesFromJS",
        seeAlso:[
        ],
        params:[
            {
                description:"JavaScript code to eval.",
                optional:false,
                name:"jsCode",
                defaultValue:null,
                type:"String"
            },
            {
                description:"parent node (defaults to the root)",
                optional:true,
                name:"parentNode",
                defaultValue:null,
                type:"EditNode"
            },
            {
                description:"widgets to allow to take their global IDs",
                optional:true,
                name:"globals",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:TreeMenuButton.emptyMenuMessage":{
        ref:"attr:TreeMenuButton.emptyMenuMessage",
        flags:"IRW",
        description:"If this button's menu (or any of its submenus) are empty, this property can be used\n to specify the message to display (as a disabled item) in the empty menu.",
        name:"emptyMenuMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeMenuButton"
    },
    "group:monthViewEvents":{
        ref:"group:monthViewEvents",
        refs:[
            "method:Calendar.dayBodyClick",
            "method:Calendar.dayHeaderClick",
            "method:Calendar.eventChanged",
            "method:Calendar.eventRemoved",
            "method:Calendar.eventAdded",
            "method:Calendar.eventClick",
            "method:Calendar.eventRemoveClick",
            "method:Calendar.eventMoved",
            "method:Calendar.eventResized"
        ],
        name:"monthViewEvents",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Canvas.containsPoint":{
        ref:"method:Canvas.containsPoint",
        flags:"A",
        description:" Return whether or not this object contains the specified global (x,y) coordinates.\n <P>\n Will return false if any parent canvas does not contain the specified point, (EG:\n you're hovering over an element's absolute location, but it is scrolled out of\n view in a parent element)\n\n",
        name:"containsPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"GLOBAL x-coordinate",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"GLOBAL y-coordinate",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            },
            {
                description:"point lies specifically within our viewport                                              (drawn area excluding margins and scrollbars if\n                                              present)",
                optional:true,
                name:"withinViewport",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"true if this object contains the specified point; false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "type:TreeGridOpenState":{
        ref:"type:TreeGridOpenState",
        description:"An object containing the open state for a treeGrid.\n Note that this object is not intended to be interrogated directly, but may be stored \n (for example) as a blob on the server for state persistence across sessions.",
        name:"TreeGridOpenState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "attr:StateTask.type":{
        ref:"attr:StateTask.type",
        flags:"IR",
        description:"Type of the value for stateTask.outputField.\n <p>\n This can be used in conjunction with ${isc.DocUtils.linkForRef('attr:StateTask.value')} to declare the type of the\n value, or can be used to convert the type of the ${isc.DocUtils.linkForRef('attr:Task.inputField','inputField')} to\n the declared type.\n <p>\n If no type is declared, the value from an inputField is unchanged or provided via a call\n to setValue() is unchanged.\n <p>\n A value specified for <code>stateTask.value</code> via an attribute in\n ${isc.DocUtils.linkForRef('group:componentXML')} (see ${isc.DocUtils.linkForRef('classMethod:Process.loadProcess')}) is treated as a boolean if\n it is the exact string \"true\" or \"false\", treated as a \"decimal\" or \"integer\" if it\n parsable as a valid number, otherwise treated as a String.  If these heuristics don't\n work in your case, just declare the type explicitly via <code>stateTask.type</code>.\n <p>\n A value of \"record\" type or \"array\" type can be declared in Component XML using the same\n formats allowed for ${isc.DocUtils.linkForRef('attr:DataSourceField.valueMap','valueMap')}.  Each array value or\n record attribute value undergoes the same heuristics as for ${isc.DocUtils.linkForRef('attr:StateTask.value')}\n declared as an attribute.\n <p>\n ${isc.DocUtils.linkForRef('attr:StateTask.type')} is invalid to use with multiple outputFields.\n - simplest implementation of using type conversion for component XML but not for calls\n to setValue() is probably to have the type conversion logic applied by default, but\n bypassed by a direct call to setValue()",
        name:"type",
        seeAlso:[
        ],
        valueType:"ProcessValueType",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StateTask"
    },
    "attr:ColumnTree.backButtonTitle":{
        ref:"attr:ColumnTree.backButtonTitle",
        flags:"IRW",
        description:"When using ${isc.DocUtils.linkForRef('attr:ColumnTree.showMultipleColumns','single-column mode')}, this i18n property\n dictates the title for the ${isc.DocUtils.linkForRef('attr:ColumnTree.backButton','button')} docked to the top left \n which allows navigation back through the column tree.",
        name:"backButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Back\"",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:SectionStack.locateSectionsType":{
        ref:"attr:SectionStack.locateSectionsType",
        flags:"IRWA",
        description:"${isc.DocUtils.linkForRef('type:LocatorTypeStrategy')} to use when finding Sections within this section Stack.",
        name:"locateSectionsType",
        seeAlso:[
        ],
        valueType:"LocatorTypeStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SectionStack",
        groups:[
            "autoTest"
        ]
    },
    "attr:Calendar.minimumDayHeight":{
        ref:"attr:Calendar.minimumDayHeight",
        flags:"IRW",
        description:"In the ${isc.DocUtils.linkForRef('attr:Calendar.monthView','month view')} when ${isc.DocUtils.linkForRef('attr:Calendar.showDayHeaders')} is true, this is the minimum\n height applied to a day cell and its header combined.\n <P>\n If <code>showDayHeaders</code> is false, this attribute has no effect - the minimum height \n of day cells is either an equal share of the available height, or the rendered height of the\n cell's HTML content, whichever is greater.  If the latter, a vertical scrollbar is shown.",
        name:"minimumDayHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"80",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "attr:MultiSortPanel.deleteLevelButton":{
        ref:"attr:MultiSortPanel.deleteLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for deleting levels\n from the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.deleteLevelButtonProperties</code> and \n <code>multiSortPanel.deleteLevelButtonDefaults</code>.",
        name:"deleteLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "method:TimeItem.setMillisecondValues":{
        ref:"method:TimeItem.setMillisecondValues",
        flags:"A",
        description:" Sets the array of valid ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondValues','millisecond values')} to use when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for limiting available valid Millisecond values, or when using the TimeItem to record\n duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMinValue','millisecondMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMaxValue','millisecondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondIncrement','millisecondIncrement')} for another method of controlling the \n content in the millisecond picker.\n",
        name:"setMillisecondValues",
        seeAlso:[
        ],
        params:[
            {
                description:"array of available Millisecond values",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Array of Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "type:LinePattern":{
        ref:"type:LinePattern",
        values:[
            {
                description:"Solid line",
                value:"\"solid\""
            },
            {
                description:"Dotted line",
                value:"\"dot\""
            },
            {
                description:"Dashed line",
                value:"\"dash\""
            },
            {
                description:"Dotted line, with more tightly spaced dots",
                value:"\"shortdot\""
            },
            {
                description:"Dashed line, with shorter, more tightly spaced dashes",
                value:"\"shortdash\""
            },
            {
                description:"Dashed line, with longer, more widely spaced dashes",
                value:"\"longdash\""
            }
        ],
        description:"Supported styles of drawing lines.",
        name:"LinePattern",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "line"
        ]
    },
    "attr:RecordEditor.actionButtonStyle":{
        ref:"attr:RecordEditor.actionButtonStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:Button.baseStyle','baseStyle')} for the ${isc.DocUtils.linkForRef('attr:RecordEditor.actionButton')}",
        name:"actionButtonStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:RecordEditor"
    },
    "attr:DataSource.validateRelatedRecords":{
        ref:"attr:DataSource.validateRelatedRecords",
        flags:"IR",
        description:"If true, indicates that the SmartClient Server should automatically apply a \n ${isc.DocUtils.linkForRef('type:ValidatorType')} of \"hasRelatedRecord\" to every field \n on this dataSource that has a ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} defined.",
        name:"validateRelatedRecords",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "method:DrawItem.scaleTo":{
        ref:"method:DrawItem.scaleTo",
        flags:"",
        description:" Scale the shape by the x, y multipliers\n",
        name:"scaleTo",
        seeAlso:[
        ],
        params:[
            {
                description:"scale in the x direction",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"float"
            },
            {
                description:"scale in the y direction",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:RestDataSource.recordXPath":{
        ref:"attr:RestDataSource.recordXPath",
        flags:"IRW",
        description:"For RestDataSources, by default, either the ${isc.DocUtils.linkForRef('attr:RestDataSource.xmlRecordXPath')} or \n ${isc.DocUtils.linkForRef('attr:RestDataSource.jsonRecordXPath')} is used based on the ${isc.DocUtils.linkForRef('attr:RestDataSource.dataFormat')}\n setting.\n <P>\n Note that you can also apply record xpath binding via\n ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath')}.",
        name:"recordXPath",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "attr:DetailViewer.printLabelStyle":{
        ref:"attr:DetailViewer.printLabelStyle",
        flags:"IRW",
        description:"Optional CSS style for a label cell in printable HTML for this component. If unset\n ${isc.DocUtils.linkForRef('attr:DetailViewer.labelStyle')} will be used for printing as well as normal presentation.",
        name:"printLabelStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "printing"
        ]
    },
    "attr:Lane.width":{
        ref:"attr:Lane.width",
        flags:"IR",
        description:"When set on a Lane being displayed in a ${isc.DocUtils.linkForRef('attr:Calendar.dayView','dayView')} as a result of ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes','showDayLanes')} \n being set, dictates the width of the Lane's column.  Has no effect in ${isc.DocUtils.linkForRef('class:Timeline')}s.",
        name:"width",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Lane"
    },
    "attr:TimeItem.millisecondIncrement":{
        ref:"attr:TimeItem.millisecondIncrement",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondValues','millisecondValues')} is unset, this attribute specifies \n the increment to use when generating entries for the millisecond picker.  For example, \n if this attribute is set to 5, the millisecond picker will contain only every fifth \n value between the ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMinValue','millisecondMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMaxValue','millisecondMaxValue')}.",
        name:"millisecondIncrement",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:FormItem.emptyValueIcon":{
        ref:"attr:FormItem.emptyValueIcon",
        flags:"IRW",
        description:"This property allows the developer to specify an icon to display when this item has\n no value. It is configured in the same way as any other valueIcon \n (see ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')})",
        name:"emptyValueIcon",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:Tree.getRoot":{
        ref:"method:Tree.getRoot",
        flags:"",
        description:"\n Returns the root node of the tree.\n\n",
        name:"getRoot",
        seeAlso:[
        ],
        returns:{
            description:"the root node",
            type:"TreeNode"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:Calendar.autoFetchTextMatchStyle":{
        ref:"attr:Calendar.autoFetchTextMatchStyle",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:Calendar.autoFetchData')} is <code>true</code>, this attribute allows the developer to\n specify a textMatchStyle for the initial ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} call.",
        name:"autoFetchTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "databinding"
        ]
    },
    "attr:SelectItem.pickerIconHeight":{
        ref:"attr:SelectItem.pickerIconHeight",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:SelectItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n size of the picker icon. If unset, the picker icon will be sized as a square to fit in the\n available height for the icon.\n <p>\n It is not recommended to change the pickerIconHeight from the default value if ${isc.DocUtils.linkForRef('group:skinning','spriting')}\n is enabled because the image sprites are set up assuming specific, fixed dimensions of the picker\n icon. If the pickerIconHeight must be changed, then the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')}\n should be changed to a custom CSS style name.",
        name:"pickerIconHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "pickerIcon"
        ]
    },
    "method:FormItem.pickerIconClick":{
        ref:"method:FormItem.pickerIconClick",
        flags:"",
        description:" Notification method called when the ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','picker icon')} is clicked.\n",
        name:"pickerIconClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the DynamicForm containing the picker icon's item.",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the FormItem containing the picker icon.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"the picker icon.",
                optional:false,
                name:"pickerIcon",
                defaultValue:null,
                type:"FormItemIcon"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "group:loadWSDLTag":{
        ref:"group:loadWSDLTag",
        title:"&lt;isomorphic:loadWSDL&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> JavaScript\n <p>\n Load a WSDL file and create an instance of ${isc.DocUtils.linkForRef('class:WebService')} that allows invoking operations\n and binding DataSources to web service operations. This tag works just like\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadWSDL')}, except it's synchronous and the result is server-cacheable.\n <p>\n Note that this JSP tag must be surrounded by &lt;SCRIPT&gt; tags in the JSP because it\n generates JavaScript code.  Like other tags that generate JavaScript code, this tag can be\n used in a JSP that is included from your main page in order to create separate\n cacheability.  For example:\n <pre>\n &lt;SCRIPT SRC=\"myWebServiceDefinition.jsp\"&gt;&lt;/SCRIPT&gt;\n </pre>\n <p>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>url</b><br>\n <i>value format</i>: URL or URI\n <i>default value</i>: NONE\n <p>\n This attribute specifies the URL or URI of the WSDL file to fetch and translate.  This can\n be either a remote URL - e.g: <code>http://host:port/wsdlFile.wsdl</code> or a relative or\n absolute URI to a file local to this container - e.g: <code>/some/wsdlFile.wsdl</code> or\n <code>../some/wsdlFile.wsdl</code>.  If the url is a remote URL, then an HTTP request will\n be made for the file.  If it is local, it will be fetched from disk using standard Servlet\n APIs (<code>ServletContext.getResourceAsStream()</code>).\n <p>\n <b>cache</b><br>\n <i>value format</i>: Integer (number of seconds to cache result)\n <i>default value</i>: 3600 (1 hour)\n <p>\n This attribute specifies the number of seconds for which the fetched WSDL is cacheable on\n the server.  Fetching a WSDL file from a remote server can cause a significant delay in JSP\n processing, and WSDL files rarely change outside of a development environment.  Set this\n value to zero to disable caching.",
        name:"loadWSDLTag",
        seeAlso:[
            {
                ref:"group:wsdlBinding",
                description:null
            },
            {
                ref:"classMethod:XMLTools.loadWSDL",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:FormItem.editorEnter":{
        ref:"method:FormItem.editorEnter",
        flags:"",
        description:" Notification method fired when the user enters this formItem.\n Differs from ${isc.DocUtils.linkForRef('method:FormItem.focus')} in that while <code>focus</code> and <code>blur</code>\n may fire multiple as the user navigates sub elements of an item (such as interacting\n with a pick list), <code>editorEnter</code> will typically fire once when the user \n starts to edit this item as a whole, and once when the user moves onto a different\n item or component\n",
        name:"editorEnter",
        seeAlso:[
        ],
        params:[
            {
                description:"form containing this item",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"form item recieving focus",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"current item value.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"Any"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "attr:DateItem.startDate":{
        ref:"attr:DateItem.startDate",
        flags:"IRW",
        description:"Minimum date the selectors will allow the user to pick.\n <P>\n <b>NOTE:</b> by design, setting <code>startDate</code> and <code>endDate</code> will not\n always prevent the user from picking invalid values.  In particular:\n <ul>\n <li> the set of available days will only be restricted if the start and end dates fall\n within the same month\n <li> the set of available months will only be restricted if the start and end dates fall\n within the same year\n </ul>\n <P>\n This is <b>by design</b> as it allows the user to set the day, month and year in\n whatever order is convenient, rather than forcing them to pick in a specific order.\n <P>\n For actual enforcement of a date being in correct range before data is submitted, a\n ${isc.DocUtils.linkForRef('class:Validator')} of type \"dateRange\" should always be declared.",
        name:"startDate",
        setter:[
            "setStartDate"
        ],
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"1/1/1995",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "appearance"
        ]
    },
    "attr:TreeGridField.canExport":{
        ref:"attr:TreeGridField.canExport",
        flags:"IR",
        description:"Dictates whether the data in this field be exported.  Explicitly set this\n  to false to prevent exporting.  Has no effect if the underlying \n  ${isc.DocUtils.linkForRef('attr:DataSourceField.canExport','dataSourceField')} is explicitly set to \n  canExport: false.",
        name:"canExport",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TreeGridField"
    },
    "method:SectionStack.showSection":{
        ref:"method:SectionStack.showSection",
        flags:"",
        description:" \n Shows a section or sections.  This includes the section header and its items.  If the\n section is collapsed, only the header is shown.  If the section is expanded, the section\n header and all items are shown.\n\n",
        name:"showSection",
        seeAlso:[
            {
                ref:"method:SectionStack.expandSection",
                description:null
            },
            {
                ref:"attr:SectionStack.scrollSectionIntoView",
                description:null
            }
        ],
        params:[
            {
                description:"Section(s) to show.  For this parameter, you can pass the position \n                      of the section in the SectionStack, the name of the section, or a\n                      List of section names / positions.",
                optional:false,
                name:"sections",
                defaultValue:null,
                type:"int | String | Array of int | Array of String"
            },
            {
                description:"callback to fire when the sections have been shown.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"ShowSectionCallback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsShowAndHide')}"
        ],
        definingClass:"class:SectionStack"
    },
    "attr:ColorPicker.blueFieldPrompt":{
        ref:"attr:ColorPicker.blueFieldPrompt",
        flags:"IR",
        description:"The text to show when the mouse hovers over the 'Blue' field in the complex chooser.",
        name:"blueFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The Blue component of the selected color\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DSRequest.exportHeaderless":{
        ref:"attr:DSRequest.exportHeaderless",
        flags:"IRW",
        description:"This property allows omitting column names from CSV and Excel exports (no effect on JSON or XML exports).",
        name:"exportHeaderless",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:RelativeDateItem.yearsAgoTitle":{
        ref:"attr:RelativeDateItem.yearsAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"year\".",
        name:"yearsAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N years ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.autoFitWidth":{
        ref:"attr:ListGridField.autoFitWidth",
        flags:"IR",
        description:"Enables autofitting to values or titles for this field.. This overrides\n the ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')} attribute on a per-field basis.",
        name:"autoFitWidth",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "autoFitFields"
        ]
    },
    "attr:IMenuButton.hiliteAccessKey":{
        ref:"attr:IMenuButton.hiliteAccessKey",
        flags:"IR",
        description:"If this MenuButton has a specified ${isc.DocUtils.linkForRef('attr:Canvas.accessKey','accessKey')}, underline it\n in the title of the button by default",
        name:"hiliteAccessKey",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "attr:PortalLayout.stretchColumnWidthsProportionally":{
        ref:"attr:PortalLayout.stretchColumnWidthsProportionally",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('attr:PortalLayout.canStretchColumnWidths','stretching column widths')}, should we stretch all column widths proportionally,\n or just stretch the columns that need extra width?\n <p>\n Note that this implies turning off ${isc.DocUtils.linkForRef('attr:PortalLayout.canShrinkColumnWidths','canShrinkColumnWidths')}.",
        name:"stretchColumnWidthsProportionally",
        setter:[
            "setStretchColumnWidthsProportionally"
        ],
        seeAlso:[
            {
                ref:"attr:PortalLayout.canStretchColumnWidths",
                description:null
            },
            {
                ref:"attr:PortalLayout.canShrinkColumnWidths",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "method:StretchImgButton.titleClipped":{
        ref:"method:StretchImgButton.titleClipped",
        flags:"A",
        description:" Is the title of this button clipped?\n",
        name:"titleClipped",
        seeAlso:[
        ],
        returns:{
            description:"whether the title is clipped.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "class:MiniDateRangeItem":{
        methods:[
            "method:MiniDateRangeItem.setAutoValidate",
            "method:MiniDateRangeItem.hasAdvancedCriteria",
            "method:MiniDateRangeItem.getCriterion",
            "method:MiniDateRangeItem.setCriterion",
            "method:MiniDateRangeItem.canEditCriterion",
            "method:MiniDateRangeItem.setValue",
            "method:MiniDateRangeItem.getValue"
        ],
        ref:"class:MiniDateRangeItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:MiniDateRangeItem.textBoxStyle",
            "attr:MiniDateRangeItem.shouldSaveValue",
            "attr:MiniDateRangeItem.rangeDialog",
            "attr:MiniDateRangeItem.canFocus",
            "attr:MiniDateRangeItem.fromDateOnlyPrefix",
            "attr:MiniDateRangeItem.toDateOnlyPrefix",
            "attr:MiniDateRangeItem.pickerIconPrompt",
            "attr:MiniDateRangeItem.pickerIcon",
            "attr:MiniDateRangeItem.allowRelativeDates",
            "attr:MiniDateRangeItem.dateDisplayFormat",
            "attr:MiniDateRangeItem.fromDate",
            "attr:MiniDateRangeItem.toDate",
            "attr:MiniDateRangeItem.autoValidate"
        ],
        description:"Provides a compact interface for editing a date range, by providing a formatted, read-only\n display of the current selected date range with an icon to launch a ${isc.DocUtils.linkForRef('class:DateRangeDialog')} \n to edit the range.",
        name:"MiniDateRangeItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:FilterBuilder.validate":{
        ref:"method:FilterBuilder.validate",
        flags:"",
        description:" Validate the clauses of this FilterBuilder.\n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"true if all clauses are valid, false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "class:UploadItem":{
        methods:[
            "method:UploadItem.setValue",
            "method:UploadItem.getSelectionRange",
            "method:UploadItem.setSelectionRange",
            "method:UploadItem.selectValue",
            "method:UploadItem.deselectValue"
        ],
        exampleConfig:"UploadItem.xml",
        ref:"class:UploadItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:UploadItem.textBoxStyle",
            "attr:UploadItem.multiple",
            "attr:UploadItem.accept",
            "attr:UploadItem.width",
            "attr:UploadItem.height"
        ],
        description:"FormItem that creates an HTML &lt;input type=\"file\"&gt; control, with an interface that\n allows a user to pick a file from his machine to upload to the server.\n <P>\n <b>NOTE:</b> use ${isc.DocUtils.linkForRef('class:FileItem')}, <b>not</b> UploadItem, if you are using the SmartClient\n Server framework.  FileItem is much easier to use and addresses all the limitations of\n UploadItem discussed below.  See the ${isc.DocUtils.linkForRef('group:upload','Uploading Files')} overview for\n details.\n <P>\n If a form containing an UploadItem is ${isc.DocUtils.linkForRef('method:Canvas.redraw','redrawn')} (which may\n happen if other form items are shown or hidden, the form is\n ${isc.DocUtils.linkForRef('attr:Canvas.redrawOnResize','resized')}, or other items show validation errors) then the value\n in the upload item is lost (because an HTML upload field may not be created with a value).\n For this reason, if you are building a form that combines an UploadItem with other FormItems\n that could trigger redraw()s, recommended practice is to place each UploadItem in a distinct\n DynamicForm instance and create the visual appearance of a single logical form via combining\n the DynamicForms in a ${isc.DocUtils.linkForRef('class:Layout')}.\n <P>\n <B>NOTE: Browser-specific behaviors:</B> \n <ul>\n <li> while getDisplayValue() can be used to retrieve the filesystem path of the uploaded file on some\n browsers, different browsers will return either just the file name without path or the full path.  It\n is plausible that some browsers may switch behavior in the future to not supply this value at all.  Do\n not rely on this value.\n <li> the appearance of the UploadItem is not consistent across browsers and we do not\n recommend trying to make it consistent or trying to apply styling to the upload control at all.  It is\n a potential security problem if an end user is unable to reliably recognize the upload control, hence,\n all browsers limit what styling can be applied.  Various hacks exists to get further control of\n styling, but it is likely these hacks will be broken by browser upgrades in the future.\n </ul>",
        name:"UploadItem",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "upload"
        ]
    },
    "attr:RelativeDateItem.daysAgoTitle":{
        ref:"attr:RelativeDateItem.daysAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"day\".",
        name:"daysAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N days ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.dragResizeStart":{
        ref:"method:Canvas.dragResizeStart",
        flags:"A",
        description:"\n Executed when resize dragging first starts. No default implementation.\n Create this handler to set things up for the drag resize.\n\n",
        name:"dragResizeStart",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel the drag reposition action",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "type:ViewName":{
        ref:"type:ViewName",
        values:[
            {
                description:"day view",
                value:"\"day\""
            },
            {
                description:"week view",
                value:"\"week\""
            },
            {
                description:"month view",
                value:"\"month\""
            },
            {
                description:"timeline view",
                value:"\"timeline\""
            }
        ],
        description:"The names of the Calendar views.",
        name:"ViewName",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:Menu.fetchSubmenus":{
        ref:"attr:Menu.fetchSubmenus",
        flags:"IR",
        description:"When using a Tree or hierarchical DataSource as the menu's data, submenus are\n automatically generated from child nodes.  <code>fetchSubmenus</code>\n can be set to false to disable this for the whole menu, or can be set false on a\n per-item basis via ${isc.DocUtils.linkForRef('attr:MenuItem.fetchSubmenus')}.",
        name:"fetchSubmenus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:FormItemIcon.height":{
        ref:"attr:FormItemIcon.height",
        flags:"IRW",
        description:"If set, this property determines the height of this icon in px.\n      If unset the form item's <code>iconHeight</code> property will be used instead.",
        name:"height",
        seeAlso:[
            {
                ref:"attr:FormItem.iconHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "attr:DrawLine.startLeft":{
        ref:"attr:DrawLine.startLeft",
        flags:"IR",
        description:"Starting left coordinate of the line.  Overrides left coordinate of ${isc.DocUtils.linkForRef('attr:DrawLine.startPoint')} if\n both are set.",
        name:"startLeft",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawLine"
    },
    "attr:Canvas.animateHideAcceleration":{
        ref:"attr:Canvas.animateHideAcceleration",
        flags:"IRWA",
        description:"Default acceleration function for performing an animated hide.  If unset, \n <code>this.animateAcceleration</code> will be used by default instead",
        name:"animateHideAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:PaletteNode.icon":{
        ref:"attr:PaletteNode.icon",
        flags:"IR",
        description:"Icon for this paletteNode.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PaletteNode"
    },
    "attr:TableView.navIcon":{
        ref:"attr:TableView.navIcon",
        flags:"IRW",
        description:"The navigation icon shown next to records when\n ${isc.DocUtils.linkForRef('attr:TableView.showNavigation')} is true and ${isc.DocUtils.linkForRef('type:NavigationMode')} is set to\n \"navIconOny\".",
        name:"navIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKINIMG]/iOS/listArrow_button.png\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "attr:FacetChart.showDataValues":{
        ref:"attr:FacetChart.showDataValues",
        flags:"IR",
        description:"Should data values be shown as text labels near the shape representing the value, for example,\n above columns of a column chart, or adjacent to points in a line chart?\n <p>\n If set to false, then data values will not be shown.\n <p>\n If set to true, data values will be shown unless the data density is high enough that\n labels will potentially overlap, in which case, data values will not be shown and\n ${isc.DocUtils.linkForRef('attr:FacetChart.showValueOnHover')} will be enabled instead.",
        name:"showDataValues",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:Class.create":{
        ref:"classMethod:Class.create",
        flags:"",
        description:"\n Create an instance of this class.\n <P>\n All arguments passed to this method are passed on to the ${isc.DocUtils.linkForRef('method:Class.init')} instance\n method.  Unless ${isc.DocUtils.linkForRef('attr:Class.addPropertiesOnCreate')} is set to <code>false</code>, all\n arguments passed to this method must be Objects and all properties on those\n objects will be copied to the newly created instance before ${isc.DocUtils.linkForRef('method:Class.init')} is\n called.  If there are overlapping properties in the passed arguments, the last wins.\n <p>\n Any return value from ${isc.DocUtils.linkForRef('method:Class.init')} is thrown away.\n <p>\n Note: Generally, you would not override this method.  If you want to specify a\n constructor for your class, provide an override for ${isc.DocUtils.linkForRef('method:Class.init')} for generic\n classes or ${isc.DocUtils.linkForRef('method:Canvas.initWidget')} for any subclasses of UI components\n (i.e. descendants of ${isc.DocUtils.linkForRef('class:Canvas')}).\n\n",
        name:"create",
        seeAlso:[
        ],
        params:[
            {
                description:"Any arguments passed will be passed along to the init() routine of the instance.\n      Unless ${isc.DocUtils.linkForRef('attr:Class.addPropertiesOnCreate')} is set to false, any arguments passed to\n      this method must be of type Object.",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"New instance of this class, whose init() routine has already been called",
            type:"object"
        },
        type:"classMethod",
        examples:[
            "<code>var myInstance = MyClass.create()</code>",
            "${isc.DocUtils.linkForExampleId('create')}"
        ],
        definingClass:"class:Class"
    },
    "attr:ToolbarItem.colSpan":{
        ref:"attr:ToolbarItem.colSpan",
        flags:"IRW",
        description:"these items span all columns",
        name:"colSpan",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ToolbarItem",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.showErrorText":{
        ref:"attr:FormItem.showErrorText",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','showErrorIcons')}, \n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText','showErrorText')}, and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorStyle','showErrorStyle')} control how validation errors are\n displayed when they are displayed inline in the form (next to the form item where there\n is a validation error).  To instead display all errors at the top of the form, set\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors','showInlineErrors')}:false.\n <P>\n <code>showErrorIcons</code>, <code>showErrorText</code> and <code>showErrorStyle</code>\n are all boolean properties, and can be set on a DynamicForm to control the behavior\n form-wide, or set on individual FormItems.  \n <P>\n The HTML displayed next to a form item with errors is generated by \n ${isc.DocUtils.linkForRef('method:FormItem.getErrorHTML')}.\n The default implementation of that method respects <code>showErrorIcons</code> and\n <code>showErrorText</code> as follows:\n <P>\n <code>showErrorIcons</code>, or <code>showErrorIcon</code> at the FormItem level controls\n whether an error icon should appear next to fields which have validation errors.  The icon's\n appearance is governed by ${isc.DocUtils.linkForRef('attr:FormItem.errorIconSrc')}, ${isc.DocUtils.linkForRef('attr:FormItem.errorIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorIconHeight')}\n <P>\n <code>showErrorText</code> determines whether the text of the validation error should be\n displayed next to fields which have validation errors. The attribute\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showTitlesWithErrorMessages')} may be set to prefix error messages with the \n form item's title + <code>\":\"</code> (may be desired if the item has \n ${isc.DocUtils.linkForRef('attr:FormItem.showTitle')} set to false).\n <P>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')} controls where the error HTML should appear relative \n to form items. Therefore the combination of ${isc.DocUtils.linkForRef('attr:FormItem.showErrorText')}<code>:false</code> and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorOrientation')}<code>:\"left\"</code> creates a compact validation error display\n consisting of just an icon, to the left of the item with the error message\n available via a hover (similar appearance to ListGrid validation error display).  \n <P>\n In addition to this, <code>showErrorStyle</code> determines whether fields  with validation\n errors should have special styling applied to them. See ${isc.DocUtils.linkForRef('type:FormItemBaseStyle')} for a \n discussion for how error styling is calculated.",
        name:"showErrorText",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "validation",
            "appearance"
        ]
    },
    "attr:DataSourceField.editorType":{
        ref:"attr:DataSourceField.editorType",
        flags:"IR",
        description:"Sets the default FormItem to be used whenever this field is edited (whether in a grid, form,\n or other component).\n <P>\n If unset, a FormItem will be automatically chosen based on the type of the field, by the\n rules explained ${isc.DocUtils.linkForRef('type:FormItemType','here')}.",
        name:"editorType",
        seeAlso:[
        ],
        valueType:"FormItem className",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "type:RecordComponentPoolingMode":{
        ref:"type:RecordComponentPoolingMode",
        values:[
            {
                description:"components are destroyed when the record is not being rendered.  Best        for large datasets where embedded components differ greatly per record.",
                value:"\"viewport\""
            },
            {
                description:"components are ${isc.DocUtils.linkForRef('method:Canvas.clear','clear()ed')} when not in the viewport, but        stay with a record until the record is dropped from cache.  Best for guaranteed\n        small datasets.",
                value:"\"data\""
            },
            {
                description:"components are pooled and will be passed to       ${isc.DocUtils.linkForRef('method:ListGrid.updateRecordComponent','updateRecordComponent()')} with the\n       <code>recordChanged</code> parameter set to true.  Best for large datasets where\n       embedded components are uniform across different records and can be efficiently\n       reconfigured to work with a new record",
                value:"\"recycle\""
            }
        ],
        description:"The method of component-pooling to employ for ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponents')}.\n <P>",
        name:"RecordComponentPoolingMode",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:AutoFitTextAreaItem.maxHeight":{
        ref:"attr:AutoFitTextAreaItem.maxHeight",
        flags:"IRW",
        description:"If specified, the autoFitTextArea will not grow taller than this height",
        name:"maxHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:AutoFitTextAreaItem"
    },
    "attr:Snapbar.showRollOver":{
        ref:"attr:Snapbar.showRollOver",
        flags:"IRW",
        description:"Snapbars show rollover styling.",
        name:"showRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Snapbar"
    },
    "method:FacetChart.drawnValueContainsPoint":{
        ref:"method:FacetChart.drawnValueContainsPoint",
        flags:"",
        description:" Returns whether a given ${isc.DocUtils.linkForRef('object:DrawnValue')} contains a point. The point's X and Y coordinates may\n be passed into this method, or, if unspecified, the coordinates used are the current mouse event\n coordinates.\n <p>\n For Scatter, Area, Line, and Radar charts, a DrawnValue is considered to contain a point\n if the Euclidean distance from the DrawnValue's center (${isc.DocUtils.linkForRef('attr:DrawnValue.x','x')}, ${isc.DocUtils.linkForRef('attr:DrawnValue.y','y')})\n to the point is less than ${isc.DocUtils.linkForRef('attr:FacetChart.dataPointSize','this.dataPointSize')}. For Pie\n charts, the DrawnValue is considered to contain a point if the point is within the\n pie slice. Similarly, for Doughnut charts, the DrawnValue is considered to contain a point\n if the point is within the pie slice and not in the doughnut hole. For Bar and Column\n charts, the DrawnValue is considered to contain a point if the point is within the\n bar or column, respectively. Note that for stacked Bar and Column charts, the point must\n also be in the stacked portion as opposed to anywhere within the bar or column.\n\n",
        name:"drawnValueContainsPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"the DrawnValue to check. The DrawnValue must be a valid DrawnValue from this chart.",
                optional:false,
                name:"drawnValue",
                defaultValue:null,
                type:"DrawnValue"
            },
            {
                description:"X coordinate of the point. If this parameter is specified, then <code>y</code> is a required parameter.",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Y coordinate of the point",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"true if the DrawnValue contains the point at the given X, Y coordinates (or current mouse event coordinates); false if the DrawnValue does not contain the point;\n null for invalid parameters.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:MultiGroupPanel.maxLevels":{
        ref:"attr:MultiGroupPanel.maxLevels",
        flags:"IR",
        description:"The maximum number of levels of grouping that can be applied.  Since each group-property or\n field-name can be used only once in a given multi-group operation, if no maxLevels value\n or a value larger than the total number of available properties is specified, it will \n default to the total number of available properties.",
        name:"maxLevels",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:TimeItem.browserInputType":{
        ref:"attr:TimeItem.browserInputType",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is true and browserInputType is set to\n \"time\", then a native <a href='http://www.w3.org/TR/html5/forms.html#time-state-(type=time)' target='_blank'>HTML5 time input</a>\n is used in place of a text input.\n <p>\n The use of a native HTML5 time input causes certain features to be disabled. Input masks\n and a custom ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter','timeFormatter')} are not supported.\n ${isc.DocUtils.linkForRef('attr:TimeItem.showHintInField','In-field hints')} are currently supported, but future browser\n changes might force this support to be removed. Therefore, it is safest to <em>not</em>\n use in-field hints (set showHintInField to false) in conjunction with a native HTML5 time\n input.\n <p>\n <b>NOTE:</b> This feature requires specific CSS changes. Currently these changes have\n been made to the Enterprise, EnterpriseBlue, and Graphite skins only.",
        name:"browserInputType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:MultiGroupPanel.invalidListPrompt":{
        ref:"attr:MultiGroupPanel.invalidListPrompt",
        flags:"IR",
        description:"This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed.\n <P>\n Default value returns <P>\n <code>\n <i>Columns may only be used once: <code>[some field's title]</code> is used multiple times</i>\n </code>",
        name:"invalidListPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Columns may only be used once: '${title}' is used multiple times.\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "class:StateTask":{
        methods:[
        ],
        ref:"class:StateTask",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:StateTask.value",
            "attr:StateTask.type",
            "attr:StateTask.nextElement",
            "attr:StateTask.failureElement"
        ],
        description:"StateTask can either copy fields of ${isc.DocUtils.linkForRef('attr:Process.state')} to other fields, or apply hardcoded\n values to ${isc.DocUtils.linkForRef('attr:Process.state')} via ${isc.DocUtils.linkForRef('attr:StateTask.value')}.",
        name:"StateTask",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:SummaryBuilder.autoHideCheckBoxLabel":{
        ref:"attr:SummaryBuilder.autoHideCheckBoxLabel",
        flags:"IRW",
        description:"Text label for the checkbox that allows the user to automatically hide the\n fields used in the summary format.",
        name:"autoHideCheckBoxLabel",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Auto hide fields used in summary\"",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.getCellHoverComponent":{
        ref:"method:ListGrid.getCellHoverComponent",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:ListGrid.showHoverComponents')} is set, this method is called to get the component to show\n as a hover for the current cell.\n <P>\n By default, this method returns one of a set of builtin components, according to the\n value of ${isc.DocUtils.linkForRef('type:HoverMode','listGrid.hoverMode')}.  You can override this method\n to return any component you wish to provide as a hoverComponent, or invoke the superclass\n method to have the default hover component generated, then further customize it.\n <P>\n By default, components returned by <code>getCellHoverComponent()</code> will be\n automatically destroyed when the hover is hidden.  To prevent this, set\n ${isc.DocUtils.linkForRef('attr:Canvas.hoverAutoDestroy')} to false on the returned component.\n\n",
        name:"getCellHoverComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"record to get the hoverComponent for",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"the component to show as a hover",
            type:"Canvas | Canvas Properties"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "hoverComponents"
        ]
    },
    "attr:Calendar.eventWindowStyleField":{
        ref:"attr:Calendar.eventWindowStyleField",
        flags:"IR",
        description:"The name of the field used to override ${isc.DocUtils.linkForRef('attr:Calendar.eventWindowStyle')} for an individual\n ${isc.DocUtils.linkForRef('object:CalendarEvent')}.  See ${isc.DocUtils.linkForRef('attr:CalendarEvent.eventWindowStyle')}.",
        name:"eventWindowStyleField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"eventWindowStyle\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent",
            "appearance"
        ]
    },
    "attr:DataSourceField.maxFileSize":{
        ref:"attr:DataSourceField.maxFileSize",
        flags:"IRW",
        description:"For fields of a type that are represented by binary data initially uploaded from a file\n (currently \"binary\" and \"imageFile\", see ${isc.DocUtils.linkForRef('type:FieldType')}), this sets the maximum \n file size allowed, in bytes.",
        name:"maxFileSize",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:Flashlet.src":{
        ref:"attr:Flashlet.src",
        flags:"IR",
        description:"Location from which to load the Flashlet.",
        name:"src",
        setter:[
            "setSrc"
        ],
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Flashlet"
    },
    "method:Canvas.showClickMask":{
        ref:"method:Canvas.showClickMask",
        flags:"",
        description:" Show a clickMask over the entire screen that intercepts mouse clicks and fires some action.\n The mask created will be associated with this canvas - calling this method multiple times\n will not show multiple (stacked) clickMasks if the mask associated with this canvas is\n already up.<br><br>\n\n The clickMask useful for modal dialogs, menus and similar uses, where any click outside of\n some Canvas should either be suppressed (as in a modal dialog) or just cause something (like\n dismissing a menu).\n\n",
        name:"showClickMask",
        seeAlso:[
            {
                ref:"method:Canvas.hideClickMask",
                description:null
            }
        ],
        params:[
            {
                description:"action to fire when the user clicks on the mask",
                optional:false,
                name:"clickAction",
                defaultValue:null,
                type:"callback"
            },
            {
                description:"whether to automatically hide the clickMask on mouseDown                                      and suppress the mouseDown event from reaching\n                                      the target under the mouse",
                optional:false,
                name:"mode",
                defaultValue:null,
                type:"ClickMaskMode"
            },
            {
                description:"initially unmasked targets for this clickMask. Note that if this is a\n  <code>\"hard\"</code> mask, unmasked children of masked parents are not supported\n  so any non-top-level widgets passed in will have their parents unmasked.\n  Children of masked parents can never be masked.",
                optional:false,
                name:"unmaskedTargets",
                defaultValue:null,
                type:"widget | array of widgets"
            }
        ],
        returns:{
            description:"clickMask ID",
            type:"string"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "clickMask"
        ]
    },
    "attr:FormItem.showHint":{
        ref:"attr:FormItem.showHint",
        flags:"IRWA",
        description:"If a hint is defined for this form item, should it be shown?",
        name:"showHint",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "method:Canvas.setDisabled":{
        ref:"method:Canvas.setDisabled",
        flags:"A",
        description:" set the disabled state of this object\n",
        name:"setDisabled",
        seeAlso:[
        ],
        params:[
            {
                description:"new disabled state of this object - pass <code>true</code> to disable the widget",
                optional:false,
                name:"disabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "enable"
        ]
    },
    "object:Lane":{
        methods:[
        ],
        ref:"object:Lane",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Calendar"
        ],
        attrs:[
            "attr:Lane.name",
            "attr:Lane.height",
            "attr:Lane.width",
            "attr:Lane.title"
        ],
        description:"Lane shown in a ${isc.DocUtils.linkForRef('class:Timeline')} view, or in a ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day view')} when \n ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes','showDayLanes')} is true.  Each lane is a row or column, respectively, that can contain a\n set of ${isc.DocUtils.linkForRef('object:CalendarEvent')}s.  CalendarEvents are placed in lanes by matching the\n ${isc.DocUtils.linkForRef('attr:Lane.name')} property to the value of the ${isc.DocUtils.linkForRef('attr:Calendar.laneNameField')} property on the\n CalendarEvent.\n <P>\n Lanes are typically used to show tasks assigned to different people, broadcasts planned for\n different channels, and similar displays.",
        name:"Lane",
        seeAlso:[
        ],
        type:"object"
    },
    "method:Tree.closeFolders":{
        ref:"method:Tree.closeFolders",
        flags:"",
        description:"\n Close a set of folders, specified by path or as pointers to nodes.\n\n",
        name:"closeFolders",
        seeAlso:[
        ],
        params:[
            {
                description:"List of nodes or node paths.",
                optional:false,
                name:"nodeList",
                defaultValue:null,
                type:"List of TreeNode"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "type:RecordSummaryFunction":{
        ref:"type:RecordSummaryFunction",
        values:[
            {
                description:"Iterates through each field, picking up the numeric field values from the record and summing them.",
                value:"sum"
            },
            {
                description:"Iterates through each field, picking up the numeric field values from the record and calculating the mean value.",
                value:"avg"
            },
            {
                description:"Iterates through each field, picking up the numeric field values from the record and calculating the maximum value.",
                value:"max"
            },
            {
                description:"Iterates through each field, picking up the numeric field values from the record and calculating the minimum value.",
                value:"min"
            },
            {
                description:"Iterates through each field, picking up the numeric field values from the record and multiplying them together.",
                value:"multiplier"
            }
        ],
        description:"Function to produce a summary value based on field values within a record.\n Example usage is record-level summaries in \n ${isc.DocUtils.linkForRef('type:ListGridFieldType','\"summary\" type ListGrid fields')}.\n <P>\n SummaryFunctions may be specified in one of 2 ways:<ul>\n <li>as an explicit function or executable\n ${isc.DocUtils.linkForRef('group:stringMethods','StringMethod')}. Takes 3 parameters:\n <br><code>record</code> the record for which the value is being calculated\n <br><code>fields</code> Array of listGridFields from which summaries should be calculated\n <br><code>summaryField</code> pointer to the summary type field on which the summary function\n is being run.</li>\n <li>As a registered RecordSummaryFunction identifier</li></ul>\n Note that ${isc.DocUtils.linkForRef('classMethod:DataSource.registerRecordSummaryFunction')} may be used to expand the\n set of registered RecordSummaryFunctions.",
        name:"RecordSummaryFunction",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:DSResponse.offlineTimestamp":{
        ref:"attr:DSResponse.offlineTimestamp",
        flags:"R",
        description:"Timestamp (millisecond value) to indicate when this dsResponse was cached in \n ${isc.DocUtils.linkForRef('class:Offline','offline storage')}.  Not applicable if the response has never been \n stored offline.",
        name:"offlineTimestamp",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "offlineGroup"
        ]
    },
    "attr:SectionStack.itemIndent":{
        ref:"attr:SectionStack.itemIndent",
        flags:"IRW",
        description:"Size, in pixels, of indentation of all member items. Items will be offset\n and reduced in width by this amount. Overridden by\n ${isc.DocUtils.linkForRef('attr:SectionStack.itemStartIndent')} or ${isc.DocUtils.linkForRef('attr:SectionStack.itemEndIndent')}.\n Setting itemIndent is equivalent to setting itemStartIndent to the same amount\n and itemEndIndent to 0.",
        name:"itemIndent",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:SectionStack",
        groups:[
            "layoutMember"
        ]
    },
    "attr:FormItem.printTitleStyle":{
        ref:"attr:FormItem.printTitleStyle",
        flags:"IRW",
        description:"Base CSS stylename for a form item's title when generating print HTML for the item.\n If unset ${isc.DocUtils.linkForRef('attr:FormItem.titleStyle')} will be used instead.",
        name:"printTitleStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "printing"
        ]
    },
    "method:FacetChart.getDataColor":{
        ref:"method:FacetChart.getDataColor",
        flags:"",
        description:" Get a color from the ${isc.DocUtils.linkForRef('attr:FacetChart.dataColors')} Array\n <smartclient>\n <P>\n Override to provide a dynamic color generation scheme.\n </smartclient>\n\n",
        name:"getDataColor",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the visual element to be colored",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:null,
            type:"CSSColor"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:ColorPicker.okButtonTitle":{
        ref:"attr:ColorPicker.okButtonTitle",
        flags:"IR",
        description:"The title for the 'OK' button.",
        name:"okButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"OK\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ColorStop.opacity":{
        ref:"attr:ColorStop.opacity",
        flags:"IR",
        description:"0 is transparent, 1 is fully opaque",
        name:"opacity",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1.0",
        type:"attr",
        definingClass:"object:ColorStop"
    },
    "attr:ListGrid.expansionEditorCollapseOnSave":{
        ref:"attr:ListGrid.expansionEditorCollapseOnSave",
        flags:"RW",
        description:"When ${isc.DocUtils.linkForRef('type:ExpansionMode')} is <i>editor</i>, should the row be collapsed following a\n save initiated by the expansion-component's ${isc.DocUtils.linkForRef('attr:ListGrid.expansionEditorSaveButton','save button')}.",
        name:"expansionEditorCollapseOnSave",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:FacetChart.dataColors":{
        ref:"attr:FacetChart.dataColors",
        flags:"IRW",
        description:"An array of colors to use for a series of visual elements representing data (eg columns,\n bars, pie slices), any of which may be adjacent to any other.\n <P>\n Colors must be in the format of a leading hash (#) plus 6 hexadecimal digits, for example, \n \"#FFFFFF\" is white, \"#FF0000\" is pure red.",
        name:"dataColors",
        setter:[
            "setDataColors"
        ],
        seeAlso:[
        ],
        valueType:"Array of CSSColor",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DynamicForm.getErrorsHTML":{
        ref:"method:DynamicForm.getErrorsHTML",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} is false, the form will render all errors in a list at\n the top of the form. This method returns the HTML for this list of errors.\n",
        name:"getErrorsHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"Map of field names to error messages. Each field may contain a single                        error message (string) or an array of errors",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"error HTML.",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "type:Positioning":{
        ref:"type:Positioning",
        values:[
            {
                description:"The canvas is absolutely positioned with respect to its parent.",
                value:"Canvas.ABSOLUTE"
            },
            {
                description:"The canvas is relatively positioned according to the document flow.",
                value:"Canvas.RELATIVE"
            }
        ],
        description:null,
        name:"Positioning",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "positioning"
        ]
    },
    "method:CubeGrid.setEditValues":{
        ref:"method:CubeGrid.setEditValues",
        flags:"",
        description:" Set the temporary edit values for some cell in the cubeGrid.<br>\n Note that only the ${isc.DocUtils.linkForRef('attr:CubeGrid.valueProperty','this.valueProperty')} of the object passed in\n will be displayed in the cell.\n",
        name:"setEditValues",
        seeAlso:[
        ],
        params:[
            {
                description:"2 element array of the form                   <code>[rowNum,colNum]</code> indicating the record being edited",
                optional:false,
                name:"cell",
                defaultValue:null,
                type:"Array of numbers"
            },
            {
                description:"New values for the record",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "method:ListGrid.cellMouseUp":{
        ref:"method:ListGrid.cellMouseUp",
        flags:"",
        description:" Called when a cell receives a mouseup event.\n\n",
        name:"cellMouseUp",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object (retrieved from getCellRecord(rowNum, colNum))",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:ResultSet.useClientSorting":{
        ref:"attr:ResultSet.useClientSorting",
        flags:"IRWA",
        description:"Whether to sort data locally when all records matching the current criteria have been\n cached.\n <P>\n This may need to be disabled if client-side sort order differs from server-side sort\n order in a way that affects functionality or is surprising.",
        name:"useClientSorting",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ResultSet"
    },
    "attr:DataSource.translatePatternOperators":{
        ref:"attr:DataSource.translatePatternOperators",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:OperatorId','Search operators')} like \"matchesPattern\" use patterns like\n \"foo*txt\" to match text values.  The patterns are similar to the patterns you use to\n match names of files in a command-line interface, or to the pattern allowed for the SQL\n \"LIKE\" operator.\n <p>\n <code>translatePatternOperators</code> controls whether these pattern operators should\n be translated to a nested series of \"startsWith\"/\"endsWidth\"/\"contains\" operators before\n being sent to the server.  This allows a server that only implements simple operators\n like \"startsWith\" to support pattern operators such as \"matchesPattern\" and\n \"containsPattern\", but with caveats:\n    <ul>\n        <li> single-character wildcards are not supported\n        <li> multiple wildcards are not truly order-dependent, for example *1*2*3* will\n             match 1,2,3 as interior characters in any order.  \n        <li> may be less efficient than a direct server-side implementation that is able to\n             translate the pattern directly to the underlying storage engine.\n    </ul>\n <p>\n Note that since \"containsPattern\" is essentially equivalent to \"matchesPattern\" but with\n \"*\" wildcards at the beginning and end of every pattern, the second limitation (pattern\n not really order dependent) may be fairly obvious to users when using this feature.  For\n example, \"m*t\" will match \"we meet\" and \"we teem\".\n <p>\n The following are examples of how patterns are translated to simpler operators.  Note\n that the case sensitive version of the operator is referred to below, but of course\n \"iMatchesPattern\" and \"iContainsPattern\" will be translated to case-insensitive versions\n of these operators, such as \"iStartsWith\".\n <p>\n *foo (endsWith)<br>\n foo* (startsWith)<br>\n *foo* (contains)<br>\n *foo*bar (contains and endsWith)<br>\n foo*bar* (startsWith and contains)<br>\n foo*bar (startsWith and endsWith)<br>\n *foo*bar* (multiple contains)\n <p>\n Also supported: one startsWith, multiple contains, one endsWith.",
        name:"translatePatternOperators",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "classMethod:Class.getSuperClass":{
        ref:"classMethod:Class.getSuperClass",
        flags:"",
        description:"\n\tGets a pointer to the superClass' Class object.\n\n",
        name:"getSuperClass",
        seeAlso:[
        ],
        returns:{
            description:"Class object for superclass.",
            type:"Class"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "group:loadUITag":{
        ref:"group:loadUITag",
        title:"&lt;isomorphic:loadUI&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> JavaScript\n <p>\n This tag converts SmartClient UI components declaratively specified in an XML \"UI\" file to\n JavaScript for execution in the browser.\n <p>\n The XML->JS translation works just like with ${isc.DocUtils.linkForRef('group:xmlTag')}, except the XML is read\n from an external file instead of from the body of the tag.\n <p>\n Note that this JSP tag must be surrounded by &lt;SCRIPT&gt; tags in the JSP because it\n generates JavaScript code.  Like other tags that generate JavaScript code, this tag can be\n used in a JSP that is included from your main page in order to create separate\n cacheability.  For example:\n <pre>\n &lt;SCRIPT SRC=\"myUIDefinitions.jsp\"&gt;&lt;/SCRIPT&gt;\n </pre>\n <p>\n <p>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>name</b><br>\n <i>value format</i>: String - name of UI file to load (minus extension)<br>\n <i>default value</i>: NONE\n <p>\n This attribute specifies the name of the file that contains the UI components to translate.\n UI files are located in <code>[webroot]/shared/ui</code> by default.  This location is\n changeable in <code>[webroot]/WEB-INF/classes/server.properties</code> by setting the config\n parameter <code>project.ui</code> to the directory where your UI files are located.   \n We recommend that for prototyping, at least, you use the default directory.\n <p>\n For example:\n <pre>\n &lt;isomorphic:loadUI name=\"test\"/&gt;\n </pre>\n Would translate declarative XML in the file <code>[webroot]/shared/ui/test.ui.xml</code> to\n JavaScript and output the results into the JSP output stream at the location of the tag.",
        name:"loadUITag",
        seeAlso:[
            {
                ref:"group:xmlTag",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ListGrid.virtualScrolling":{
        ref:"attr:ListGrid.virtualScrolling",
        flags:"IRA",
        description:"When incremental rendering is switched on and there are variable record heights, the virtual\n scrolling mechanism manages the differences in scroll height calculations due to the\n unknown sizes of unrendered rows to make the scrollbar and viewport appear correctly.\n <P>\n virtualScrolling is switched on automatically when fixedRecordHeights is false and when\n using the ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponents subsystem')}, as\n recordComponents expand the rows that contain them. This flag should be manually enabled\n when calling ${isc.DocUtils.linkForRef('method:ListGrid.addEmbeddedComponent')}(...) if embedded components can\n cause record sizes to expand beyond specified cellHeight.\n <P>\n virtualScrolling is also automatically enabled when ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is true\n to handle the fact that expanded rows may render at variable heights.",
        name:"virtualScrolling",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Toolbar.canReorderItems":{
        ref:"attr:Toolbar.canReorderItems",
        flags:"IRWA",
        description:"If true, items can be reordered by dragging on them.",
        name:"canReorderItems",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Toolbar",
        groups:[
            "dragndrop"
        ]
    },
    "attr:FacetChart.minLabelGap":{
        ref:"attr:FacetChart.minLabelGap",
        flags:"IR",
        description:"Minimum gap between labels on the X axis before some labels are omitted or larger time\n granularity is shown (eg show days instead of hours) based on the\n ${isc.DocUtils.linkForRef('attr:FacetChart.labelCollapseMode')}.\n <P>\n Default is based on label orientation.  If labels are vertical, the minimum gap is the height\n of half a line of text.  If horizontal it's the width of 4 \"X\" letters.",
        name:"minLabelGap",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:FormItem.showValueIconOnly":{
        ref:"attr:FormItem.showValueIconOnly",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} is set, this property may be set to show the valueIcon\n only and prevent the standard form item element or text from displaying",
        name:"showValueIconOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:Array.containsAll":{
        ref:"method:Array.containsAll",
        flags:"",
        description:" Return whether this list contains all the item in the specified list.\n\n",
        name:"containsAll",
        seeAlso:[
        ],
        params:[
            {
                description:"items to look for",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"List"
            }
        ],
        returns:{
            description:"whether all items were found",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:Scrollbar.trackEndHeight":{
        ref:"attr:Scrollbar.trackEndHeight",
        flags:"IRA",
        description:"The minimum pixel height of the track end segments (if enabled with showTrackEnds).",
        name:"trackEndHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"12",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "track"
        ]
    },
    "classMethod:WebService.get":{
        ref:"classMethod:WebService.get",
        flags:"",
        description:" Retrieve a WebService object by the targetNamespace declared on the &lt;wsdl:definitions&gt;\n element in the WSDL file from which the WebService was derived.\n <P>\n If you have more than one &lt;wsdl:service&gt; in the same target namespace, use\n ${isc.DocUtils.linkForRef('classMethod:WebService.getByName')} to disambiguate.\n\n",
        name:"get",
        seeAlso:[
        ],
        params:[
            {
                description:"uri from the \"targetNamespace\" attribute of the &lt;wsdl:definitions&gt; element in the WSDL file",
                optional:false,
                name:"serviceNamespace",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the requested WebService, or null if not loaded",
            type:"WebService"
        },
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('wsdlBinding')}"
        ],
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "method:ListGrid.setBodyOverflow":{
        ref:"method:ListGrid.setBodyOverflow",
        flags:"A",
        description:" Update the ${isc.DocUtils.linkForRef('attr:ListGrid.bodyOverflow','bodyOverflow')} for this listGrid.\n",
        name:"setBodyOverflow",
        seeAlso:[
        ],
        params:[
            {
                description:"new overflow setting for the body",
                optional:false,
                name:"overflow",
                defaultValue:null,
                type:"Overflow"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:LoginDialog.usernameItem":{
        ref:"attr:LoginDialog.usernameItem",
        flags:"IR",
        description:"Username field item in ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"usernameItem",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "group:Items":{
        ref:"group:Items",
        refs:[
            "method:ResultTree.get",
            "method:ResultTree.getRange"
        ],
        name:"Items",
        seeAlso:[
        ],
        type:"group"
    },
    "classAttr:NumberUtil.currencySymbol":{
        ref:"classAttr:NumberUtil.currencySymbol",
        flags:"IR",
        description:"The currency symbol to use when formatting numbers",
        name:"currencySymbol",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"$\"",
        type:"classAttr",
        definingClass:"class:NumberUtil",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataSource.nullFloatValue":{
        ref:"attr:DataSource.nullFloatValue",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DataSource.noNullUpdates')} is set, the value to use for any float field that has a null\n value assigned on an update operation, and does not specify an explicit\n ${isc.DocUtils.linkForRef('attr:DataSourceField.nullReplacementValue','nullReplacementValue')}.",
        name:"nullFloatValue",
        seeAlso:[
            "noNullUpdates,noNullUpdates",
            {
                ref:"attr:DataSourceField.nullReplacementValue",
                description:null
            }
        ],
        valueType:"float",
        defaultValue:"0.0",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "classMethod:Date.setShowChooserFiscalYearPickers":{
        ref:"classMethod:Date.setShowChooserFiscalYearPickers",
        flags:"",
        description:" Sets the global attribute that dictates whether the ${isc.DocUtils.linkForRef('class:DateChooser','choosers')} shelled\n from ${isc.DocUtils.linkForRef('class:DateItem','DateItems')} show a UI for working with Fiscal Years.\n\n",
        name:"setShowChooserFiscalYearPickers",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to show Fiscal Year pickers in DateChoosers by default",
                optional:false,
                name:"showChooserFiscalYearPickers",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:FacetValue.cellAlign":{
        ref:"attr:FacetValue.cellAlign",
        flags:"IR",
        description:"Default alignment of cells (in the body) for this facetValue.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')} (see, for\n example, ${isc.DocUtils.linkForRef('attr:CubeGrid.cellAlign')}).",
        name:"cellAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"facet.cellAlign",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:StatefulCanvas.overCanvasDefaults":{
        ref:"attr:StatefulCanvas.overCanvasDefaults",
        flags:"IRWA",
        description:"Default properties for this widgets ${isc.DocUtils.linkForRef('attr:StatefulCanvas.overCanvas','overCanvas')}. To modify\n these defaults, use ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')}",
        name:"overCanvasDefaults",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"{ ... }",
        type:"attr",
        definingClass:"class:StatefulCanvas"
    },
    "type:ListGridViewState":{
        ref:"type:ListGridViewState",
        description:"An object containing the \"view state\" information for a listGrid.<br>\n This object contains state information reflecting<br>\n - ${isc.DocUtils.linkForRef('type:ListGridFieldState')}<br>\n - ${isc.DocUtils.linkForRef('type:ListGridSortState')}<br>\n - ${isc.DocUtils.linkForRef('type:ListGridSelectedState')}<br>\n for the grid.<br>\n Note that this object is a JavaScript string, and may be stored (for example) as a blob\n on the server for state persistence across sessions.",
        name:"ListGridViewState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "classMethod:DateUtil.format":{
        ref:"classMethod:DateUtil.format",
        flags:"",
        description:" Return the parameter date formatted according to the parameter ${isc.DocUtils.linkForRef('type:FormatString')}.  \n This method is used to implement the ${isc.DocUtils.linkForRef('attr:DataSourceField.format','DataSourceField.format')}\n functionality, but it can also be used to format arbitrary dates programmatically.\n",
        name:"format",
        seeAlso:[
        ],
        params:[
            {
                description:"The date to format",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"The format to apply to this date",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"FormatString"
            }
        ],
        returns:{
            description:"formatted date string",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:DateUtil",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:Tree.data":{
        ref:"attr:Tree.data",
        flags:"IR",
        description:"Optional initial data for the tree. How this data is interpreted depends on this tree's\n ${isc.DocUtils.linkForRef('attr:Tree.modelType')}.\n <P>\n If <code>modelType</code> is <code>\"parent\"</code>, the list that you provide will be passed \n to ${isc.DocUtils.linkForRef('method:Tree.linkNodes')}, integrating the nodes into the tree.\n <p>\n In this case the root node may be supplied explicitly via ${isc.DocUtils.linkForRef('attr:Tree.root')}, or auto generated,\n picking up its <code>id</code> via ${isc.DocUtils.linkForRef('attr:Tree.rootValue')}. Any nodes in the data with no\n explicitly specified ${isc.DocUtils.linkForRef('attr:TreeNode.parentId')} will be added as children to this root element.\n <P>\n To create this tree:\n <pre>\n foo\n   bar\n zoo\n </pre>\n with modelType:\"parent\", you can do this:\n <pre>\n Tree.create({\n   data: [\n     {name: \"foo\", id: \"foo\"},\n     {name: \"bar\", id: \"bar\", parentId: \"foo\"},\n     {name: \"zoo\", id: \"zoo\"}\n });\n </pre>\n Or this (explicitly specified root):\n <pre>\n Tree.create({\n   root: {id: \"root\"},\n   data: [\n     {name: \"foo\", id: \"foo\", parentId: \"root\"},\n     {name: \"bar\", id: \"bar\", parentId: \"foo\"},\n     {name: \"zoo\", id: \"zoo\", parentId: \"root\"}\n });\n </pre>\n Or this (explicitly specified rootValue):\n <pre>\n Tree.create({\n   rootValue: \"root\",\n   data: [\n     {name: \"foo\", id: \"foo\", parentId: \"root\"},\n     {name: \"bar\", id: \"bar\", parentId: \"foo\"},\n     {name: \"zoo\", id: \"zoo\", parentId: \"root\"}\n });\n </pre>\n Specifying the root node explicitly allows you to give it a name, changing the way path\n derivation works (see ${isc.DocUtils.linkForRef('attr:Tree.root')} for more on naming the root node).\n <P>\n For <code>modelType:\"children\"</code> trees, the data passed in will be assumed to be an \n array of children of the tree's root node.",
        name:"data",
        seeAlso:[
            {
                ref:"attr:Tree.modelType",
                description:null
            },
            {
                ref:"object:TreeNode",
                description:null
            }
        ],
        valueType:"List of TreeNode",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:Tree"
    },
    "attr:CubeGrid.enableCharting":{
        ref:"attr:CubeGrid.enableCharting",
        flags:"IRW",
        description:"If set to true, context menu items will be included on the cells and headers providing the\n user with an option to create a chart of the cubeGrid's data set.\n See ${isc.DocUtils.linkForRef('method:CubeGrid.makeChart')} for more information.",
        name:"enableCharting",
        setter:[
            "setEnableCharting"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "classAttr:RPCManager.showPrompt":{
        ref:"classAttr:RPCManager.showPrompt",
        flags:"RW",
        description:"If set to <code>true</code>, the RPCManager will block the UI with a modal dialog containing\n the text from RPCManager.defaultPrompt (or the per-RPCRequest override) until the RPC to the\n server completes.\n <p>\n If set to <code>false</code>, the RPC happens transparently, allowing the user to continue\n interacting with the UI.\n <p>\n DataSource requests, which are a particular type of RPCRequest, are controlled by the\n more-specific DataSource-level setting ${isc.DocUtils.linkForRef('attr:DataSource.showPrompt')}.",
        name:"showPrompt",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.defaultPrompt",
                description:null
            },
            {
                ref:"attr:RPCRequest.showPrompt",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"RPCManager.showPrompt",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:Canvas.extraSpace":{
        ref:"attr:Canvas.extraSpace",
        flags:"IR",
        description:"When this Canvas is included as a member in a Layout, extra blank space that should be left\n after this member in a Layout.",
        name:"extraSpace",
        seeAlso:[
            {
                ref:"class:LayoutSpacer",
                description:"for more control"
            }
        ],
        valueType:"positiveInteger",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "layoutMember"
        ]
    },
    "attr:TreeGrid.parentAlreadyContainsChildMessage":{
        ref:"attr:TreeGrid.parentAlreadyContainsChildMessage",
        flags:"IR",
        description:"Message displayed when user attempts to drag a node into a parent that already contains\n a child of the same name.",
        name:"parentAlreadyContainsChildMessage",
        seeAlso:[
            {
                ref:"attr:TreeGrid.canDragRecordsOut",
                description:null
            },
            {
                ref:"attr:TreeGrid.canAcceptDroppedRecords",
                description:null
            },
            {
                ref:"attr:TreeGrid.canReorderRecords",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"This item already contains a child item with that name.\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "method:TabSet.removeTabs":{
        ref:"method:TabSet.removeTabs",
        flags:"A",
        description:" Remove one or more tabs.  The pane(s) associated with the removed tab(s) is automatically\n destroyed when you call this method.\n\n",
        name:"removeTabs",
        seeAlso:[
            {
                ref:"method:TabSet.removeTab",
                description:null
            }
        ],
        params:[
            {
                description:"list of tabs, tabIDs, tab names, or tab numbers",
                optional:false,
                name:"tabs",
                defaultValue:null,
                type:"Tab | ID | name | number"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:StretchImgButton.showFocused":{
        ref:"attr:StretchImgButton.showFocused",
        flags:"IRW",
        description:"Should we visibly change state when the canvas receives focus?  If\n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is <code>true</code>, then <b><code>\"over\"</code></b>\n will be used to indicate focus. Otherwise a separate <b><code>\"focused\"</code></b> state\n will be used.",
        name:"showFocused",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "attr:SectionStack.canDropComponents":{
        ref:"attr:SectionStack.canDropComponents",
        flags:"IRA",
        description:"SectionStacks provide the same default implementation of drag and drop interactions as\n ${isc.DocUtils.linkForRef('attr:Layout.canDropComponents','Layouts')}, except that members are added as items into\n the section over which they're dropped.\n <P>\n If you want to completely suppress the builtin drag and drop logic, but still receive drag\n and drop events for your own custom implementation, set ${isc.DocUtils.linkForRef('attr:Canvas.canAcceptDrop')} to\n <code>true</code> and <code>canDropComponents</code> to <code>false</code> on your\n SectionStack.",
        name:"canDropComponents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionStack",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DateRangeDialog.clearButton":{
        ref:"attr:DateRangeDialog.clearButton",
        flags:"IR",
        description:"Button used for clearing the dialog's values.  Note that, since this is an ${isc.DocUtils.linkForRef('type:AutoChild')},\n it can be configured using clearButtonDefaults and clearButtonProperties.",
        name:"clearButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeDialog"
    },
    "attr:RPCResponse.clientContext":{
        ref:"attr:RPCResponse.clientContext",
        flags:"R",
        description:"The ${isc.DocUtils.linkForRef('attr:RPCRequest.clientContext')} object as set on the ${isc.DocUtils.linkForRef('class:RPCRequest')}.",
        name:"clientContext",
        seeAlso:[
            {
                ref:"attr:RPCRequest.clientContext",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCResponse"
    },
    "attr:DataBoundComponent.hiliteEditor":{
        ref:"attr:DataBoundComponent.hiliteEditor",
        flags:"R",
        description:"This component's HiliteEditor instance used to allow the user to create, modify, or delete\n hilites.\n <p>\n The following ${isc.DocUtils.linkForRef('group:autoChildUsage','passthroughs')} apply:\n <ul>\n <li>${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons')} for ${isc.DocUtils.linkForRef('attr:HiliteEditor.hiliteIcons')}</li>\n </ul>",
        name:"hiliteEditor",
        seeAlso:[
        ],
        valueType:"AutoChild HiliteEditor",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "classAttr:Date.shortMonthNames":{
        ref:"classAttr:Date.shortMonthNames",
        flags:"IRWA",
        description:"This property may be set to an array of shortened month-names.<br>\n For example:\n <pre>\n [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"]\n </pre>\n The appropriate month name will then be returned from ${isc.DocUtils.linkForRef('method:Date.getShortMonthName')},\n and may be used whenever SmartClient components display month-names (for example in the\n ${isc.DocUtils.linkForRef('class:DateItem','DateItem class')}).",
        name:"shortMonthNames",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:Date",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DynamicForm.rememberValues":{
        ref:"method:DynamicForm.rememberValues",
        flags:"",
        description:"\t\t\tMake a snapshot of the current set of values, so we can reset to them later.\n\t\t\tCreates a new object, then adds all non-method properties of values\n\t\t\tto the new object.  Use <code>resetValues()</code> to revert to these values.\n          Note that this method is automatically called when the values for this form are\n          set programmatically via a call to ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}.\n\n",
        name:"rememberValues",
        seeAlso:[
        ],
        returns:{
            description:"copy of current form values",
            type:"object"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "attr:SelectItem.pickButtonHeight":{
        ref:"attr:SelectItem.pickButtonHeight",
        deprecated:"As of SmartClient version 5.5, pickButtonHeight has been deprecated in   favor of ${isc.DocUtils.linkForRef('attr:SelectItem.pickerIconHeight')}.",
        flags:"IRWA",
        description:"How large should the pick button be rendered?",
        name:"pickButtonHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "class:ToolStripGroup":{
        methods:[
            "method:ToolStripGroup.setTitle",
            "method:ToolStripGroup.setShowTitle",
            "method:ToolStripGroup.setTitleAlign",
            "method:ToolStripGroup.setTitleOrientation",
            "method:ToolStripGroup.setControlColumn",
            "method:ToolStripGroup.setControls",
            "method:ToolStripGroup.addControls",
            "method:ToolStripGroup.addControl",
            "method:ToolStripGroup.removeControl"
        ],
        ref:"class:ToolStripGroup",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:ToolStripGroup.styleName",
            "attr:ToolStripGroup.controls",
            "attr:ToolStripGroup.label",
            "attr:ToolStripGroup.labelConstructor",
            "attr:ToolStripGroup.titleAlign",
            "attr:ToolStripGroup.titleStyle",
            "attr:ToolStripGroup.autoSizeToTitle",
            "attr:ToolStripGroup.titleOrientation",
            "attr:ToolStripGroup.titleProperties",
            "attr:ToolStripGroup.body",
            "attr:ToolStripGroup.bodyConstructor",
            "attr:ToolStripGroup.numRows",
            "attr:ToolStripGroup.rowHeight",
            "attr:ToolStripGroup.titleHeight"
        ],
        description:"A widget that groups other controls for use in ${isc.DocUtils.linkForRef('class:ToolStrip','tool-strips')}.",
        name:"ToolStripGroup",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Calendar.dayViewTitle":{
        ref:"attr:Calendar.dayViewTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day view')}.",
        name:"dayViewTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Day\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DrawOval.setHeight":{
        ref:"method:DrawOval.setHeight",
        flags:"",
        description:" Set the height of the drawOval\n",
        name:"setHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:Tree.autoOpenRoot":{
        ref:"attr:Tree.autoOpenRoot",
        flags:"IRW",
        description:"If true, the root node is automatically opened when the tree is created or\n ${isc.DocUtils.linkForRef('method:Tree.setRoot')} is called.",
        name:"autoOpenRoot",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Tree"
    },
    "class:NativeCheckboxItem":{
        methods:[
        ],
        ref:"class:NativeCheckboxItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:NativeCheckboxItem.textBoxStyle",
            "attr:NativeCheckboxItem.showLabel"
        ],
        description:"A checkbox for manipulating 2-valued fields based on the native checkbox element.",
        name:"NativeCheckboxItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.warnOnRemovalMessage":{
        ref:"attr:ListGrid.warnOnRemovalMessage",
        flags:"IRW",
        description:"Warning message to show the user on a click on the 'remove' icon\n if ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is true and\n ${isc.DocUtils.linkForRef('attr:ListGrid.warnOnRemoval')} is true.",
        name:"warnOnRemovalMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Are you sure you want to delete this record?\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:CubeGrid.canSelectHeaders":{
        ref:"attr:CubeGrid.canSelectHeaders",
        flags:"IRW",
        description:"Determines whether row or column facetValue headers can be selected.",
        name:"canSelectHeaders",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "method:PresetDateRangeItem.getCriterion":{
        ref:"method:PresetDateRangeItem.getCriterion",
        flags:"",
        description:" Get the criterion based on the value selected by the user.\n\n",
        name:"getCriterion",
        seeAlso:[
        ],
        returns:{
            description:"the criteria for the selected option",
            type:"Criterion or AdvancedCriteria"
        },
        type:"method",
        definingClass:"class:PresetDateRangeItem"
    },
    "group:debugModules":{
        ref:"group:debugModules",
        title:"Using the Debug Modules",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"<smartclient>\n SmartClient comes with a debug / readable version of the SmartClient JS files that may\n be useful during development.\n\n <p>To use the debug modules, simply change each &lt;script&gt; tag's SRC to the URI of the\n debug version of the module. For example:\n <pre>&lt;script src=\"/isomorphic/system/modules/ISC_Core.js\"&gt;&lt;/script&gt;</pre>\n should be changed to:\n <pre>&lt;script src=\"/isomorphic/system/modules<b>-debug</b>/ISC_Core.js\"&gt;&lt;/script&gt;</pre>\n\n <p>Alternatively, the &lt;isomorphic:loadISC&gt; and &lt;isomorphic:loadModules&gt; tags\n support a <code>useDebugModules</code> attribute:\n <pre>&lt;isomorphic:loadISC skin=\"Enterprise\" useDebugModules=\"true\"/&gt;</pre>\n </smartclient>\n <smartgwt>\n Smart&nbsp;GWT LGPL, Pro, Power, and Enterprise come with debug / readable versions of the\n SmartClient JS files that may be useful during development.\n\n <p>To enable the use of debug modules, you will need to change the &lt;inherits&gt; lines\n in the application's GWT module file to reference the debug versions of the Smart&nbsp;GWT modules:\n <table border=\"1\" cellpadding=\"5\" cellspacing=\"0\">\n <tbody>\n <tr><th>Edition</th><th>Original &lt;inherits&gt;</th><th>New &lt;inherits&gt;</th></tr>\n <tr>\n <th>LGPL</th>\n <td><code>&lt;inherits name=\"com.smartgwt.SmartGwt\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwt<b>.debug.</b>SmartGwt<b>Debug</b>\"/&gt;</code></td>\n </tr>\n <tr>\n <th>Pro</th>\n <td><code>&lt;inherits name=\"com.smartgwtpro.SmartGwtPro\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwtpro<b>.debug.</b>SmartGwtPro<b>Debug</b>\"/&gt;</code></td>\n </tr>\n <tr>\n <th>Power</th>\n <td><code>&lt;inherits name=\"com.smartgwtpower.SmartGwtPower\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwtpower<b>.debug.</b>SmartGwtPower<b>Debug</b>\"/&gt;</code></td>\n </tr>\n <tr>\n <th>Enterprise</th>\n <td><code>&lt;inherits name=\"com.smartgwtee.SmartGwtEE\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwtee<b>.debug.</b>SmartGwtEE<b>Debug</b>\"/&gt;</code></td>\n </tr>\n </tbody>\n </table>\n\n <p>The convention is that the names of debug GWT modules end with \"Debug\".\n\n <p>If using the NoScript modules, you will need to change the &lt;inherits&gt; lines\n <table border=\"1\" cellpadding=\"5\" cellspacing=\"0\">\n <tbody>\n <tr><th>Edition</th><th>Original &lt;inherits&gt;</th><th>New &lt;inherits&gt;</th></tr>\n <tr>\n <th>LGPL</th>\n <td><code>&lt;inherits name=\"com.smartgwt.SmartGwtNoScript\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwt<b>.debug.</b>SmartGwtNoScript<b>Debug</b>\"/&gt;</code></td>\n </tr>\n <tr>\n <th>Pro</th>\n <td><code>&lt;inherits name=\"com.smartgwtpro.SmartGwtProNoScript\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwtpro<b>.debug.</b>SmartGwtProNoScript<b>Debug</b>\"/&gt;</code></td>\n </tr>\n <tr>\n <th>Power</th>\n <td><code>&lt;inherits name=\"com.smartgwtpower.SmartGwtPowerNoScript\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwtpower<b>.debug.</b>SmartGwtPowerNoScript<b>Debug</b>\"/&gt;</code></td>\n </tr>\n <tr>\n <th>Enterprise</th>\n <td><code>&lt;inherits name=\"com.smartgwtee.SmartGwtEENoScript\"/&gt;</code></td>\n <td><code>&lt;inherits name=\"com.smartgwtee<b>.debug.</b>SmartGwtEENoScript<b>Debug</b>\"/&gt;</code></td>\n </tr>\n </tbody>\n </table>\n and change the &lt;script&gt; tags in the application's HTML file to the debug modules\n instead of the normal SmartClient modules. For example:\n <pre>&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_Core.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_Foundation.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_Containers.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_Grids.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_Forms.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_RichTextEditor.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_Calendar.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_DataBinding.js\"&gt;&lt;/script&gt;\n&lt;script src=\"myapp/sc/modules<b>-debug</b>/ISC_Drawing.js\"&gt;&lt;/script&gt;</pre>\n\n <p>Alternatively, the &lt;isomorphic:loadISC&gt; and &lt;isomorphic:loadModules&gt; tags\n support a <code>useDebugModules</code> attribute:\n <pre>&lt;isomorphic:loadISC skin=\"Enterprise\" useDebugModules=\"true\"/&gt;</pre>\n </smartgwt>",
        name:"debugModules",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:SpinnerItem.decreaseIcon":{
        ref:"attr:SpinnerItem.decreaseIcon",
        flags:"R",
        description:"Icon to decrease the spinner's value (a down arrow by default).",
        name:"decreaseIcon",
        seeAlso:[
        ],
        valueType:"FormItemIcon AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "group:draw":{
        ref:"group:draw",
        refs:[
        ],
        name:"draw",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateRangeItem.shouldSaveValue":{
        ref:"attr:DateRangeItem.shouldSaveValue",
        flags:"IR",
        description:"Allow dateRangeItems' values to show up in the form's values array, or if \n ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} is called, for the criterion to be included\n in the returned AdvancedCriteria object",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:DataSource.pluralTitle":{
        ref:"attr:DataSource.pluralTitle",
        flags:"IR",
        description:"User-visible plural name for this DataSource.\n <P>\n For example, for the supplyItem DataSource, \"Supply Items\".\n <P>\n Defaults to <code>dataSource.title</code> + \"s\".",
        name:"pluralTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"dataSource.ID",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "titles"
        ]
    },
    "method:FormItem.keyPress":{
        ref:"method:FormItem.keyPress",
        flags:"",
        description:" StringMethod fired when the user presses a key while focused in this form item.\n\n",
        name:"keyPress",
        seeAlso:[
        ],
        params:[
            {
                description:"Item over which the keypress occurred",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"Pointer to the item's form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"Name of the key pressed (Example: <code>\"A\"</code>, <code>\"Enter\"</code>)",
                optional:false,
                name:"keyName",
                defaultValue:null,
                type:"KeyName"
            },
            {
                description:"If this was a character key, this is the numeric value        for the character",
                optional:false,
                name:"characterValue",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"return false to attempt to cancel the event.  Note for general purpose                   APIs for managing whether user input is allowed, use ${isc.DocUtils.linkForRef('method:FormItem.change')} \n                   or ${isc.DocUtils.linkForRef('method:FormItem.transformInput')} instead.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "method:TileGrid.deselectAllRecords":{
        ref:"method:TileGrid.deselectAllRecords",
        flags:"",
        description:"\n Deselect all records\n\n",
        name:"deselectAllRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:GridRenderer.drawAllMaxCells":{
        ref:"attr:GridRenderer.drawAllMaxCells",
        flags:"IRWA",
        description:"If drawing all rows would cause less than <code>drawAllMaxCells</code> cells to be rendered,\n the full dataset will instead be drawn even if ${isc.DocUtils.linkForRef('attr:ListGrid.showAllRecords','showAllRecords')}\n is false and the viewport size and ${isc.DocUtils.linkForRef('attr:GridRenderer.drawAheadRatio')} setting would normally have caused\n incremental rendering to be used.\n <P>\n The <code>drawAllMaxCells</code> setting prevents incremental rendering from being used in\n situations where it's really unnecessary, such as a 40 row, 5 column dataset (only 200\n cells) which happens to be in a grid with a viewport showing only 20 or so rows.\n Incremental rendering causes a brief \"flash\" during scrolling as the visible portion of the\n dataset is redrawn, and a better scrolling experience can be obtained in this situation by\n drawing the entire dataset up front, which in this example would have negligible effect on\n initial draw time.\n <P>\n <code>drawAllMaxCells:0</code> disables this features.  You may want to disable this feature\n if performance is an issue and:\n <ul>\n <li> you are very frequently redraw a grid\n <li> you do a lot of computation when rendering each cell (eg formulas)\n <li> you are showing many grids on one screen and the user won't scroll most of them\n </ul>",
        name:"drawAllMaxCells",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"250",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "attr:RPCRequest.prompt":{
        ref:"attr:RPCRequest.prompt",
        flags:"IRW",
        description:"Overrides RPCManager.defaultPrompt for this request only.  If you're using queuing, note that the\n prompt string from the first request in the queue is the one that is shown to the user.",
        name:"prompt",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.defaultPrompt",
                description:null
            },
            {
                ref:"classAttr:RPCManager.showPrompt",
                description:null
            },
            {
                ref:"classAttr:RPCManager.promptStyle",
                description:null
            },
            {
                ref:"classAttr:RPCManager.promptCursor",
                description:null
            },
            {
                ref:"attr:RPCRequest.showPrompt",
                description:null
            },
            {
                ref:"attr:RPCRequest.promptStyle",
                description:null
            },
            {
                ref:"attr:RPCRequest.promptCursor",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"RPCManager.defaultPrompt",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:ListGridField.canGroupBy":{
        ref:"attr:ListGridField.canGroupBy",
        flags:"IRW",
        description:"Determines whether this field will be groupable in the header context menu.",
        name:"canGroupBy",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "group:drag":{
        ref:"group:drag",
        refs:[
            "type:DragDataAction"
        ],
        name:"drag",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MultiGroupPanel.firstGroupLevelTitle":{
        ref:"attr:MultiGroupPanel.firstGroupLevelTitle",
        flags:"IR",
        description:"The title-text to appear in the first column for the first group-level.",
        name:"firstGroupLevelTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Group by\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ComboBoxItem.pickerIconWidth":{
        ref:"attr:ComboBoxItem.pickerIconWidth",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ComboBoxItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n size of the picker icon. If unset, the picker icon will be sized as a square to fit in the\n available height for the icon.\n <p>\n It is not recommended to change the pickerIconWidth from the default value if ${isc.DocUtils.linkForRef('group:skinning','spriting')}\n is enabled because the image sprites are set up assuming specific, fixed dimensions of the picker\n icon. If the pickerIconWidth must be changed, then the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')}\n should be changed to a custom CSS style name.",
        name:"pickerIconWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"15",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:ImgButton.showFocused":{
        ref:"attr:ImgButton.showFocused",
        flags:"IRW",
        description:"Should we visibly change state when the canvas receives focus?  If\n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is <code>true</code>, then <b><code>\"over\"</code></b>\n will be used to indicate focus. Otherwise a separate <b><code>\"focused\"</code></b> state\n will be used.",
        name:"showFocused",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "method:ImgButton.removeFromRadioGroup":{
        ref:"method:ImgButton.removeFromRadioGroup",
        flags:"",
        description:" Remove this widget from the specified mutually exclusive selection group with the ID\n passed in.\n No-op's if this widget is not a member of the groupID passed in.\n If no groupID is passed in, defaults to removing from whatever radioGroup this widget\n is a member of.\n",
        name:"removeFromRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- optional radio group ID (to ensure the widget is removed                                        from the appropriate group.",
                optional:true,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:Canvas.canDragReposition":{
        ref:"attr:Canvas.canDragReposition",
        flags:"IRWA",
        description:"Indicates whether this widget can be moved by a user of your application by simply\n      dragging with the mouse.",
        name:"canDragReposition",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragEffects')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DateChooser.monthChooserButton":{
        ref:"attr:DateChooser.monthChooserButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} that shows \n a picker for selecting a specific month.",
        name:"monthChooserButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "class:MenuPalette":{
        methods:[
        ],
        ref:"class:MenuPalette",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools/Palette"
        ],
        attrs:[
        ],
        description:"A Menu that implements the ${isc.DocUtils.linkForRef('interface:Palette')} behavior, so it can be used as the source for \n drag and drop instantiation of components when combined with an ${isc.DocUtils.linkForRef('interface:EditContext')} as \n the drop target.\n <P>\n Each ${isc.DocUtils.linkForRef('object:MenuItem')} can be a ${isc.DocUtils.linkForRef('object:PaletteNode')}.",
        name:"MenuPalette",
        implementsInterfaces:[
            "Palette"
        ],
        seeAlso:[
        ],
        type:"class",
        groups:[
            "devTools"
        ]
    },
    "attr:HeaderSpan.name":{
        ref:"attr:HeaderSpan.name",
        flags:"IR",
        description:"Name for this headerSpan, for use in APIs like ${isc.DocUtils.linkForRef('method:ListGrid.setHeaderSpanTitle')}.\n <P>\n Name is optional, but if specified, must be unique for this ListGrid (but not globally\n unique) as well as a valid JavaScript identifier, as specified by ECMA-262 Section 7.6\n (the <smartclient>${isc.DocUtils.linkForRef('classMethod:String.isValidID')}</smartclient><smartgwt>StringUtil.isValidID()</smartgwt>\n function can be used to test whether a name is a valid JavaScript identifier).",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "attr:Layout.showDragPlaceHolder":{
        ref:"attr:Layout.showDragPlaceHolder",
        flags:"IRW",
        description:"If set to true, when a member is dragged out of layout, a visible placeholder canvas \n will be displayed in place of the dragged widget for the duration of the drag and drop\n interaction.",
        name:"showDragPlaceHolder",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragMove')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "dragdrop"
        ]
    },
    "attr:IconButton.showMenuIcon":{
        ref:"attr:IconButton.showMenuIcon",
        flags:"IRW",
        description:"Whether to show the ${isc.DocUtils.linkForRef('attr:IconButton.menuIconSrc','menu-icon')} which fires the ${isc.DocUtils.linkForRef('method:IconButton.menuIconClick')} \n notification method when clicked.",
        name:"showMenuIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "method:TimeItem.setMask":{
        ref:"method:TimeItem.setMask",
        flags:"",
        description:" A custom mask cannot be defined for a time item.\n",
        name:"setMask",
        seeAlso:[
            {
                ref:"attr:TimeItem.useMask",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:DateChooser.navigationLayoutHeight":{
        ref:"attr:DateChooser.navigationLayoutHeight",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayoutHeight')}",
        flags:"IR",
        description:"Height of the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation area')}, containing the \n various buttons for navigating the ${isc.DocUtils.linkForRef('attr:DateChooser.dateGrid','calendar view')}.",
        name:"navigationLayoutHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DataSource.ID":{
        ref:"attr:DataSource.ID",
        flags:"IR",
        description:"Unique identifier for this DataSource.  Required for all DataSources.\n\n <smartclient>DataSources will make themselves available as JavaScript globals under\n the same name as their ID only if ${isc.DocUtils.linkForRef('attr:DataSource.addGlobalId')} is set.</smartclient>",
        name:"ID",
        seeAlso:[
            {
                ref:"group:memoryLeaks",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "identity"
        ]
    },
    "classAttr:Array.DATETIME_VALUES":{
        ref:"classAttr:Array.DATETIME_VALUES",
        flags:null,
        description:"This is a built-in comparator for the ${isc.DocUtils.linkForRef('method:Array.find','find')} and ${isc.DocUtils.linkForRef('method:Array.findIndex','findIndex')}\n methods of Array.  Passing this comparator to those methods will find instances where Dates  \n in the search criteria match Dates in the array members (ordinarily, Javascript only regards\n Dates as equal if they refer to the exact same object).  This comparator compares entire\n date values, including the time elements of the values being compared, so two Dates\n representing different times on the same day (even if they are only a millisecond apart)\n will not be considered equal.",
        name:"DATETIME_VALUES",
        seeAlso:[
            {
                ref:"classAttr:Array.DATE_VALUES",
                description:null
            }
        ],
        valueType:"Function",
        defaultValue:"See below",
        type:"classAttr",
        definingClass:"object:Array"
    },
    "method:DrawItem.supportsEndArrow":{
        ref:"method:DrawItem.supportsEndArrow",
        flags:"A",
        description:" Does this DrawItem ${isc.DocUtils.linkForRef('classMethod:Class.isMethodSupported','support')} ${isc.DocUtils.linkForRef('method:DrawItem.setEndArrow')}?\n For example, this is false for ${isc.DocUtils.linkForRef('class:DrawRect')} and ${isc.DocUtils.linkForRef('class:DrawOval')}, and true for ${isc.DocUtils.linkForRef('class:DrawLine')}.\n",
        name:"supportsEndArrow",
        seeAlso:[
        ],
        returns:{
            description:"whether setEndArrow() is supported by this DrawItem.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawItem"
    },
    "class:IPickTreeItem":{
        methods:[
        ],
        ref:"class:IPickTreeItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:IPickTreeItem.button"
        ],
        description:"Subclass of ${isc.DocUtils.linkForRef('class:PickTreeItem')} which shows an ${isc.DocUtils.linkForRef('class:IMenuButton')} rather than a\n simple ${isc.DocUtils.linkForRef('class:MenuButton')} as it's main button.",
        name:"IPickTreeItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:OperationBinding.dataTransport":{
        ref:"attr:OperationBinding.dataTransport",
        flags:"IR",
        description:"Transport to use for this operation.  Defaults to ${isc.DocUtils.linkForRef('attr:DataSource.dataTransport')}, which in\n turn defaults to ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTransport')}.  This would typically only be set to\n enable \"scriptInclude\" transport for contacting ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','JSON')} web\n services hosted on servers other than the origin server.\n <p>\n When using the \"scriptInclude\" transport, be sure to set ${isc.DocUtils.linkForRef('attr:DataSource.callbackParam')} or\n ${isc.DocUtils.linkForRef('attr:OperationBinding.callbackParam')} to match the name of the query parameter name expected\n by your JSON service provider.",
        name:"dataTransport",
        seeAlso:[
            {
                ref:"type:RPCTransport",
                description:null
            },
            {
                ref:"attr:DataSource.callbackParam",
                description:null
            }
        ],
        valueType:"RPCTransport",
        defaultValue:"RPCManager.defaultTransport",
        type:"attr",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:TabSet.showTabScroller":{
        ref:"attr:TabSet.showTabScroller",
        flags:"IR",
        description:"If there is not enough space to display all the tab-buttons in this tabSet, should \n scroller buttons be displayed to allow access to tabs that are clipped?",
        name:"showTabScroller",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "attr:SelectItem.pickButtonWidth":{
        ref:"attr:SelectItem.pickButtonWidth",
        deprecated:"As of SmartClient version 5.5, pickButtonWidth has been deprecated in   favor of ${isc.DocUtils.linkForRef('attr:SelectItem.pickerIconWidth')}.",
        flags:"IRWA",
        description:"How large should the pick button be rendered?",
        name:"pickButtonWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:FormItem.imageURLPrefix":{
        ref:"attr:FormItem.imageURLPrefix",
        flags:"IRWA",
        description:"Prefix to apply to the beginning of any ${isc.DocUtils.linkForRef('attr:FormItem.valueIcons')} when determining the\n URL for the image.\n Will not be applied if the <code>valueIcon</code> URL is absolute.",
        name:"imageURLPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "attr:FacetChart.regressionPolynomialDegree":{
        ref:"attr:FacetChart.regressionPolynomialDegree",
        flags:"IRW",
        description:"For scatter plots only, specify the degree of polynomial to use for any polynomial regression\n that is calculated.",
        name:"regressionPolynomialDegree",
        setter:[
            "setRegressionPolynomialDegree"
        ],
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"3",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ResultSet.getProperty":{
        ref:"method:ResultSet.getProperty",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:List.getProperty')}.  Checks only loaded rows and will not trigger a fetch.\n",
        name:"getProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to look for",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"array of the values of property in each item of this list",
            type:"Array"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "iteration"
        ]
    },
    "attr:DatabaseBrowser.serverType":{
        ref:"attr:DatabaseBrowser.serverType",
        flags:"IR",
        description:"The type of database server this DatabaseBrowser should connect to. Valid values are \n \"sql\" (SmartClient's own built-in support for SQL databases) or \"hibernate\"",
        name:"serverType",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"sql\"",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "method:Canvas.getParentElements":{
        ref:"method:Canvas.getParentElements",
        flags:"",
        description:" Returns an array of object references to all ancestors of this widget in the containment\n hierarchy, starting with the direct parent and ending with the top element.\n",
        name:"getParentElements",
        seeAlso:[
        ],
        returns:{
            description:"array of parents, closest first; empty array if no parents",
            type:"Array of Canvas"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:ListGrid.showBackgroundComponents":{
        ref:"attr:ListGrid.showBackgroundComponents",
        flags:"IRW",
        description:"If <code>true</code> this grid will create and show per-row backgroundComponents\n as detailed ${isc.DocUtils.linkForRef('attr:ListGrid.backgroundComponent','here')}.",
        name:"showBackgroundComponents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:TileLayout.tiles":{
        ref:"attr:TileLayout.tiles",
        flags:"IR",
        description:"List of tiles to lay out.",
        name:"tiles",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileLayout"
    },
    "attr:UploadItem.accept":{
        ref:"attr:UploadItem.accept",
        flags:"IR",
        description:"A comma-separated list of valid MIME types, used as a filter for the file picker window.",
        name:"accept",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:UploadItem"
    },
    "method:Canvas.setValuesManager":{
        ref:"method:Canvas.setValuesManager",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:Canvas.valuesManager')} attribute. This method may be called directly at \n runtime to set the ValuesManager for a component; it has the same effect as calling \n ${isc.DocUtils.linkForRef('method:ValuesManager.addMember')}, passing in this DataBoundComponent.\n",
        name:"setValuesManager",
        seeAlso:[
        ],
        params:[
            {
                description:"new dataPath",
                optional:false,
                name:"dataPath",
                defaultValue:null,
                type:"dataPath"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "group:sqlVsJPA":{
        ref:"group:sqlVsJPA",
        title:"SQL DataSource vs JPA, EJB, Ibatis and other technologies",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"If you are free to choose which persistence mechanism your application will use, you should\n consider using the SmartClient SQL DataSource instead of a more heavyweight, bean-based \n solution.  This article discusses the advantages of doing so.\n <p>\n <b>Simplicity</b>\n <p>\n With the SmartClient SQL DataSource, simple CRUD connectivity can be set up via a \n ${isc.DocUtils.linkForExampleId('sqlWizard', 'wizard')} and requires zero server side code.  Only a DataSource \n descriptor (.ds.xml file) needs to exist; this descriptor can be generated by the wizard \n or created by hand.  The descriptor actually serves double duty by also providing the \n configuration for UI components - in other words, this is information that you would need \n to express anyway.\n <p>\n Semi-technical product managers, testers, business analysts and IT staff who have no\n familiarity with Java can easily comprehend DataSource definitions and even customized\n SQL queries, allowing them to go further with prototyping efforts, provide more specific\n feedback and capture more relevant diagnostics when reporting issues.\n <p>\n This level of simplicity is lost when using more heavyweight systems.  JPA / EJB \n best practices indicate creation of a bean class for every domain object, as well as \n related \"services\" or \"session beans\", DTOs \n (<a href='http://en.wikipedia.org/wiki/Data_Transfer_Object' target='_blank'>Data Transfer Objects</a>) and \n other unnecessary scaffolding.  Ibatis avoids some of this scaffolding, but requires every \n SQL query to be written by hand.  In contrast the SQL DataSource supports basic CRUD queries\n out of the box.\n <p>\n <b>Performance</b>\n <p>\n Systems like JPA work nicely when dealing with a single object at a time, but enterprise\n applications routinely work with lists or trees of objects that draw data from multiple\n tables.  In these situations, it's trivial to express an efficient SQL query for retrieving\n the desired results (as shown in ${isc.DocUtils.linkForExampleId('largeValueMap', 'this example')}).  Fetching the\n same data using getter methods on Java Beans often leads to nightmare performance scenarios\n (such as 3 or more separate SQL queries per object retrieved).\n <P>\n Trying to \"trick\" the persistence system into generating efficient queries doesn't make\n sense - this just leads to a far more complex and fragile solution that now requires deep\n knowledge of how the ORM system generates SQL as well as SQL itself. \n <P>\n SQLDataSource allows you to directly write SQL when it makes sense, and \n ${isc.DocUtils.linkForRef('attr:DataSource.beanClassName','to use beans')} when object oriented approaches are\n clearer and simpler.  When you do write SQL directly, you override just the parts of the\n query that you need to change - you still leverage SQLDataSource's ability to generate\n cross-database SQL for complex search criteria, efficient data paging and sorting, even in a\n complex reporting query (see ${isc.DocUtils.linkForExampleId('dynamicReporting', 'this example')}).\n <p>\n <b>Portability</b>\n <p>\n SmartClient DataSources provide cross-database portability like JPA and other solutions.\n However, DataSources can also be replaced with an entirely different integration strategy or\n entirely different server platform, such as a SOA architecture where the browser contacts\n WSDL web services directly.  The clear data requirements definition represented by a\n DataSource makes such drastic technology changes much easier with the SQL DataSource than\n with any other technology.\n <p>\n <b>Power</b>\n <p>\n The SQL DataSource has out of the box support for server-side advanced filtering without\n the need to write any code (see the \n ${isc.DocUtils.linkForExampleId('filterBuilderBracket', 'SQL Advanced Filtering example')}), and SmartClient\n provides ${isc.DocUtils.linkForRef('class:FilterBuilder','pre-built user interfaces for filtering')}.  The effort\n required to develop similar functionality with another persistence mechanism would vary from \n substantial to spectacular.\n <p>\n You can leverage advanced, automatic SQL generation, such as advanced filter criteria, \n GROUP BY and ORDER BY clauses, and selection of row ranges, even in very heavily customized\n queries.  The ${isc.DocUtils.linkForExampleId('dynamicReporting', 'Dynamic Reporting example')} shows this.\n <p>\n With the SQL DataSource and Transaction Chaining, you can chain together multiple SQL \n queries, or a mixture of SQL queries and other data access, with simple declarations right \n in the DataSource, as ${isc.DocUtils.linkForExampleId('queuedAdd', 'this example')} demonstrates.\n <p>\n Because you write the SQL, you can use database-specific features when absolutely \n necessary.  Features such as query optimizer hints or stored procedures are thus accessible\n but, importantly, are within the same processing model used for all other data access.\n <p>\n <b>Security</b>\n <p>\n Because the central DataSource definition expresses all the available operations, how they\n are performed and who has access to them, things are clear and simple.  It's much easier to \n understand and audit a DataSource definition than a slew of Java classes.\n <p>\n There is no information leakage from server to client with the SQL DataSource.  All \n server-side declarations, such as SQL templates, are automatically stripped out of the \n DataSource definition before the browser sees it.\n <p>\n Custom SQL in a SmartClient SQL DataSource is protected from SQL injection attacks.  It is\n impossible for a developer to write a SQL template that is vulnerable to SQL injection \n without going through the ${isc.DocUtils.linkForRef('group:velocitySupport','$rawValue')} feature, a rarely used\n feature that is very prominently flagged in the documentation as requiring special care.\n Other ORM systems tend to require hand-coded SQL queries for advanced use cases such as\n reporting; these hand-written queries are where most security holes appear.  By providing a\n safe environment for SQL customizations, SQL DataSource removes these risks.",
        name:"sqlVsJPA",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DataBoundComponent.getTitleField":{
        ref:"method:DataBoundComponent.getTitleField",
        flags:"",
        description:" Method to return the fieldName which represents the \"title\" for records in this\n Component.<br>\n If this.titleField is explicitly specified it will always be used.\n Otherwise, default implementation will check ${isc.DocUtils.linkForRef('attr:DataSource.titleField')} for databound\n compounds.<br>\n For non databound components returns the first defined field name of <code>\"title\"</code>,\n <code>\"name\"</code>, or <code>\"id\"</code> where the field is visible. If we dont find any\n field-names that match these titles, the first field in the component will be used instead.\n",
        name:"getTitleField",
        seeAlso:[
        ],
        returns:{
            description:"fieldName for title field for this component.",
            type:"string"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:Gauge.sectorColors":{
        ref:"attr:Gauge.sectorColors",
        flags:"IR",
        description:"Array of preset fill colors used by the default implementation of ${isc.DocUtils.linkForRef('method:Gauge.getDefaultFillColor')}\n to initialize the fill color of new sectors.\n\n <p>The default array of colors is:\n <table border=\"0\" cellpadding=\"0\" cellspacing=\"2\">\n   <tr>\n     <td style=\"background-color:#AFFFFF;width:90px;height:90px;text-align:center\"><a style=\"vertical-align:middle\">#AFFFFF</a></td>\n     <td style=\"background-color:#008080;color:#FFF;width:90px;height:90px;text-align:center\"><a style=\"vertical-align:middle\">#008080</a></td>\n     <td style=\"background-color:#AAAFFF;width:90px;height:90px;text-align:center\"><a style=\"vertical-align:middle\">#AAAFFF</a></td>\n     <td style=\"background-color:#FF0000;color:#FFF;width:90px;height:90px;text-align:center\"><a style=\"vertical-align:middle\">#FF0000</a></td>\n     <td style=\"background-color:#FFCC99;width:90px;height:90px;text-align:center\"><a style=\"vertical-align:middle\">#FFCC99</a></td>\n     <td style=\"background-color:#800080;color:#FFF;width:90px;height:90px;text-align:center\"><a style=\"vertical-align:middle\">#800080</a></td>\n   </tr>\n </table>",
        name:"sectorColors",
        seeAlso:[
            {
                ref:"attr:DrawItem.fillColor",
                description:null
            }
        ],
        valueType:"Array of CSSColor",
        defaultValue:"[ \"#AFFFFF\", \"#008080\", \"#AAAFFF\", \"#FF0000\", \"#FFCC99\", \"#800080\" ]",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "group:flags":{
        ref:"group:flags",
        title:"Flag Abbreviations",
        refs:[
        ],
        description:"<ul>\n <li> <b>I</b>: property can be initialized (provided in constructor block)\n <li> <b>R</b>: property can be read.  If a getter method exists, it must be called.\n <li> <b>W</b>: property can be written to after initialization.  If a setter method\n exists, it must be called.  If no setter method exists,\n ${isc.DocUtils.linkForRef('method:Class.setProperty','setProperty()')} must be called.\n </ul>",
        name:"flags",
        seeAlso:[
        ],
        type:"group"
    },
    "method:CubeGrid.hiliteFacetValue":{
        ref:"method:CubeGrid.hiliteFacetValue",
        flags:"",
        description:"      Apply a hilite to all cells corresponding to a facetValue.\n\n      <br><i>methodType</i> action\n",
        name:"hiliteFacetValue",
        seeAlso:[
        ],
        params:[
            {
                description:"facet ID",
                optional:false,
                name:"facetID",
                defaultValue:null,
                type:"string"
            },
            {
                description:"facet value ID",
                optional:false,
                name:"facetValueID",
                defaultValue:null,
                type:"string"
            },
            {
                description:"hilite ID",
                optional:false,
                name:"hiliteID",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if the cells were successfully hilited.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "hiliting"
        ]
    },
    "method:ListGrid.getToggleFreezeText":{
        ref:"method:ListGrid.getToggleFreezeText",
        flags:"",
        description:" If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','this.canFreezeFields')} is true, this string will be shown as the\n title for the menu item to toggle whether a field is frozen or unfrozen.\n <P>\n Default implementation evaluates and returns ${isc.DocUtils.linkForRef('attr:ListGrid.freezeFieldText')} or\n ${isc.DocUtils.linkForRef('attr:ListGrid.unfreezeFieldText')} depending on whether the field is currently frozen.\n",
        name:"getToggleFreezeText",
        seeAlso:[
        ],
        params:[
            {
                description:"field to get the menu item title for",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"Title to show in the menu item",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.setMargin":{
        ref:"method:Canvas.setMargin",
        flags:"",
        description:" Set the CSS Margin, in pixels, for this component.  Margin provides blank space outside of\n the border.\n <P>\n This property sets the same thickness of margin on every side.  Differing per-side\n margins can be set in a CSS style and applied via ${isc.DocUtils.linkForRef('attr:Canvas.styleName')}.\n <P>\n Note that the specified size of the widget will be the size <b>including</b> the margin\n thickness on each side.\n\n",
        name:"setMargin",
        seeAlso:[
        ],
        params:[
            {
                description:"new margin in pixels",
                optional:false,
                name:"margin",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:DrawItem.destroyed":{
        ref:"attr:DrawItem.destroyed",
        flags:"RA",
        description:"Flag indicating a drawItem has been destroyed, similar to ${isc.DocUtils.linkForRef('attr:Canvas.destroyed')}.",
        name:"destroyed",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:HiliteEditor.addAdvancedRuleButtonTitle":{
        ref:"attr:HiliteEditor.addAdvancedRuleButtonTitle",
        flags:"IR",
        description:"The title text for the ${isc.DocUtils.linkForRef('attr:HiliteEditor.addAdvancedRuleButton','add advanced rule')}\n button.",
        name:"addAdvancedRuleButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Add Advanced Rule\"",
        type:"attr",
        definingClass:"class:HiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.containsEvent":{
        ref:"method:Canvas.containsEvent",
        flags:"",
        description:"\t\t\tReturn true if the last event's mouse coordinates are within the bounds of this component.\n\t\tNOTE: Z-ordering is not considered for the purposes of this test.  If the coordinate you're\n\t\ttesting is occluded by other component, but the X,Y coordinates are still within the bounds\n\t\tof that component, this method will return true.\n\n",
        name:"containsEvent",
        seeAlso:[
        ],
        returns:{
            description:"true if the event occurred within the bounds of this component",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "events",
            "positioning"
        ]
    },
    "attr:FacetChart.axisStartValue":{
        ref:"attr:FacetChart.axisStartValue",
        flags:"IR",
        description:"Start value for the primary axis of the chart.\n <p>\n Defaults to 0, or to a value that makes good use of vertical space based on\n ${isc.DocUtils.linkForRef('attr:FacetChart.minDataSpreadPercent')}.\n <p>\n For multi-axis charts and Scatter charts, the <code>facetChart.axisStartValue</code>\n affects only the <b>first</b> axis of the chart.  Start values for other axes of\n multi-axis charts can be set on a per-axis basis via\n ${isc.DocUtils.linkForRef('attr:MetricSettings.axisStartValue')}.  For Scatter charts, the ${isc.DocUtils.linkForRef('attr:FacetChart.xAxisStartValue')}\n property must be used to set the start value of the x-axis.",
        name:"axisStartValue",
        seeAlso:[
        ],
        valueType:"Float",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:TimeItem.millisecondMinValue":{
        ref:"attr:TimeItem.millisecondMinValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondValues','millisecondValues')} is unset, this attribute specifies \n the minimum value present in the millisecond picker.\n <P>Used for specifying a limited set of valid Millisecond values, or when using the \n TimeItem to record duration, rather than time per-se.  The default is zero in all cases.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMaxValue','millisecondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondIncrement','millisecondIncrement')}.",
        name:"millisecondMinValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "classMethod:Date.getWeekendDays":{
        ref:"classMethod:Date.getWeekendDays",
        flags:"",
        description:" Return an array of days that are considered \"weekend\" days. Values will be the integers\n returned by the JavaScript built-in Date.getDay(), eg, 0 is Sunday and 6 is Saturday.\n Override ${isc.DocUtils.linkForRef('classAttr:Date.weekendDays')} to accommodate different workweeks such as Saudi Arabia\n (Saturday -> Wednesday) or  Israel (Sunday -> Thursday).\n",
        name:"getWeekendDays",
        seeAlso:[
        ],
        returns:{
            description:"array of weekend days",
            type:"Array of integer"
        },
        type:"classMethod",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "group:readOnly":{
        ref:"group:readOnly",
        refs:[
            "method:DynamicForm.setCanEdit",
            "method:FormItem.getCanEdit",
            "method:FormItem.setCanEdit",
            "attr:DynamicForm.canEdit",
            "attr:DynamicForm.readOnlyDisplay",
            "attr:FormItem.canEdit"
        ],
        name:"readOnly",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ResultSet.getCriteria":{
        ref:"method:ResultSet.getCriteria",
        flags:"",
        description:" Get the current criteria for this ResultSet.\n",
        name:"getCriteria",
        seeAlso:[
        ],
        returns:{
            description:"current criteria",
            type:"Criteria"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "method:ListGrid.recordMarkedAsRemoved":{
        ref:"method:ListGrid.recordMarkedAsRemoved",
        flags:"",
        description:" Returns true if the specified record is marked as removed via a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')}\n",
        name:"recordMarkedAsRemoved",
        seeAlso:[
        ],
        params:[
            {
                description:"index of row to verify",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"true if the specified record has been marked for removal",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:ListGrid.animateRollOver":{
        ref:"attr:ListGrid.animateRollOver",
        flags:"IRWA",
        description:"If the ${isc.DocUtils.linkForRef('attr:ListGrid.rollOverCanvas','rollOverCanvas')} is enabled, setting this property\n to <code>true</code> ensures that when the <code>rollOverCanvas</code> is displayed it\n is animated into view via ${isc.DocUtils.linkForRef('method:Canvas.animateShow')}. Note that the animation effect\n may be customized via ${isc.DocUtils.linkForRef('attr:Canvas.animateShowEffect')}, ${isc.DocUtils.linkForRef('attr:Canvas.animateShowTime')} and\n ${isc.DocUtils.linkForRef('attr:Canvas.animateShowAcceleration')} set in <code>rollOverCanvasProperties</code>.",
        name:"animateRollOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "method:Chart.getValue":{
        ref:"method:Chart.getValue",
        flags:"",
        description:" Lookup a data value by the set of matching facetValues expressed as a\n ${isc.DocUtils.linkForRef('object:FacetValueMap')}.  Automatically handles the ${isc.DocUtils.linkForRef('attr:Chart.data','inlinedFacet')}, if any.\n <P>\n This method is designed to be called by a concrete Chart implementation.\n <P>\n As a special case, if ${isc.DocUtils.linkForRef('attr:Chart.data')} is a single Object and the only facet is\n ${isc.DocUtils.linkForRef('attr:Chart.data','inlined')}, any value can be used as the single facetId required.  For example, a\n legal FacetValueMap in this case would be {inlined:\"west\"}.\n\n",
        name:"getValue",
        seeAlso:[
        ],
        params:[
            {
                description:"set of facetValues describing the data value to retrieve",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"matching value from the dataset, or null if no value exists",
            type:"any"
        },
        type:"method",
        definingClass:"interface:Chart"
    },
    "method:DataBoundComponent.setDragTracker":{
        ref:"method:DataBoundComponent.setDragTracker",
        flags:"",
        description:" Sets the custom tracker HTML to display next to the mouse when the user initiates a drag\n operation on this component. Default implementation will examine ${isc.DocUtils.linkForRef('attr:ListGrid.dragTrackerMode')}\n and set the custom drag tracker to display the appropriate HTML based on the selected record.\n <br>\n To display custom drag tracker HTML, this method may be overridden - call \n ${isc.DocUtils.linkForRef('classMethod:EventHandler.setDragTracker')} to actually update the drag tracker HTML.\n",
        name:"setDragTracker",
        seeAlso:[
        ],
        returns:{
            description:"returns false by default to suppress 'setDragTracker' on any ancestors                   of this component.",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragTracker"
        ]
    },
    "attr:Canvas.scrollbarConstructor":{
        ref:"attr:Canvas.scrollbarConstructor",
        flags:"IA",
        description:"The class that will be used to create custom scrollbars for this component. Set this\n attribute to a Scrollbar subclass with e.g. a different skinImgDir, to customize scrollbar\n appearance for this component only.",
        name:"scrollbarConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Scrollbar\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:TableView.dataField":{
        ref:"attr:TableView.dataField",
        flags:"IRW",
        description:"Field to display as part of individual record in \"summary\" ${isc.DocUtils.linkForRef('type:RecordLayout')}s.",
        name:"dataField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"data\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "group:strutsIntegration":{
        ref:"group:strutsIntegration",
        title:"Integration with Struts",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"<b>Overview of SmartClient integration with Struts and other popular server-side\n frameworks.</b>\n <p>\n Current and upcoming server-side frameworks solve a lot of problems endemic to the past\n generation of web applications.  Piles of JSPs and Servlets have been replaced by MVC and\n other paradigms that enhance developer productivity.  Unfortunately the end-user\n presentation remains vanilla HTML.  SmartClient solves this problem by providing rich\n databindable components. SmartClient was designed to integrate cleanly with existing\n server-side frameworks.  Because SmartClient components only require an HTML context to\n render, they can be used with any server-side frameworks that use HTML for presentation.\n <p>\n SmartClient provides a rich UI by doing more work on the client (browser) rather than\n sending every user action to the server for re-rendering.  Instead of doing page transitions\n to redraw the whole page, SmartClient sends RPC (Remote Procedure Call) requests (or AJAX\n requests) to the server while the UI allows the user to continue interacting with the\n system.  Current server-side frameworks, on the other hand are typically designed around\n page transitions - for example in Struts user actions are typically mapped to URLs that\n dispatch through a central servlet and ultimately return new HTML to be rendered by the\n browser.  The problem with page transitions is that they destroy client-side state and\n introduce client-server latency (and generally use more bandwidth since HTML is sent over\n the wire rather than just data) - essentially destroying a large part of the Rich\n Internet Application (RIA) experience.\n <p>\n Fortunately, there's a way to get the best of both worlds - to leverage the power of your\n favorite server-side framework and combine it with the SmartClient UI.  There are several\n approaches to integrating SmartClient into an existing framework:\n <p>\n <u><b>Plug-replacing HTML components with SmartClient components</b></u>\n <p>\n SmartClient components can be instructed to draw at page load time using by specifying\n <code>position: \"relative\"</code> at construction time.  This enables you to replace any\n chunk of HTML with a SmartClient component - the new component simply inserts its HTML in\n the page flow during page load.  This is the easiest integration option - you get a better\n UI with minimal work.  The downside is that you don't get the full power of a rich client\n because most user actions will still trigger a page transition.\n <p>\n <u><b>Eliminating page transitions</b></u>\n <p>\n Most SmartClient components can accept new data (or even dynamically pre-fetch and expire\n data) without needing to be recreated.  For example - let's say you want to draw a grid on a\n page.  In a traditional server-side-rendered application the server would generate all of\n the html with \"next 20 records\" and \"previous 20 records\" buttons. When the user wants to\n see the next set of data, he clicks one of the buttons and the server replaces the entire\n page with a new grid that contains the next/previous 20 records.  In a SmartClient\n application, you would create a databound ListGrid.  Based on its configuration this grid\n will fetch the first N (say 20) records and display a scrollbar for the user to scroll\n through the data.  When the user scrolls off the last cached record the ListGrid\n automatically sends an RPC to the server asking for the next 20 records.  This RPC (fetch)\n is performed without destroying the page the user is currently looking at - it just happens\n seamlessly in the background.  If the user now scrolls back to the first 20 records -\n they're already cached in the grid, so no fetch is performed.  Of course, in a real world\n application, it's typical that a page has hundreds of components and in a server-side-only\n rendering all of them need to be rebuilt by the server and resent to the client when a piece\n of data in just one needs to be updated.  SmartClient components can intelligently update\n just their data without the need to redraw the whole page.\n <p>\n The plug-replacement strategy listed above gives us a SmartClient component in place of a\n raw HTML rendering.  Now we need to databind that component so that actions like scrolling a\n grid or validating a form don't cause a page transition.  To do this, you need to set up a \n Struts Action that will handle <b>all</b> SmartClient <code>RPCRequest</code>s and \n <code>DSRequest</code>s.  This is important, as requests need to be sent to the same URL \n to enable queuing to work.  In your Action class, you simply need to invoke \n <code>RPCManager.processRequest()</code> to hook straight into the normal \n <code>DSRequest</code> processing flow.\n <p>\n The SDK contains a simple example of doing form validation without incurring a page\n transition. These examples also show how to populate e.g. field names using the struts-bean\n taglib and how to set validation errors using the standard Struts Validation plugin.\n Point your browser to <a href='/examples/struts/forms' target='_blank'>/examples/struts/forms</a> in the SmartClient SDK to take a\n look.",
        name:"strutsIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DrawGroup.mouseOver":{
        ref:"method:DrawGroup.mouseOver",
        flags:"",
        description:" Notification fired when the mouse enters this DrawGroup.\n <p>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n",
        name:"mouseOver",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:StatefulCanvas.valign":{
        ref:"attr:StatefulCanvas.valign",
        flags:"IRW",
        description:"Vertical alignment of this component's title.",
        name:"valign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "appearance"
        ]
    },
    "method:FacetChart.chartDrawn":{
        ref:"method:FacetChart.chartDrawn",
        flags:"",
        description:" Called when all elements of the chart (data lines / shapes, gradations, legend, labels etc)\n have completed drawing.  \n <P>\n See ${isc.DocUtils.linkForRef('method:FacetChart.chartBackgroundDrawn')} for usage information.\n\n",
        name:"chartDrawn",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:ListGrid.hiliteIcons":{
        ref:"attr:ListGrid.hiliteIcons",
        flags:"IR",
        description:"Specifies a list of icons that can be used in ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites','hilites')}.\n <P>\n <code>hiliteIcons</code> should be specified as an Array of ${isc.DocUtils.linkForRef('type:SCImgURL')}.\n When present, the hilite editing interface shown when ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites')} is called \n will offer the user a drop down for picking one of these icons when defining either a \n simple or advanced hilite rule.\n <P>\n If the user picks an icon, the created hiliting rule will have ${isc.DocUtils.linkForRef('attr:Hilite.icon')} set to \n the chosen icon.  ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconPosition')} controls where the icon will \n appear for that field -- the default is that it appears in front of the normal cell content.\n This can also be overriden at the field level.",
        name:"hiliteIcons",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"[\"[SKINIMG]/Dialog/notify.png\", \"[SKINIMG]/Dialog/warn.png\", \"[SKINIMG]/actions/approve.png\"]",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "method:FormItem.setReadOnlyDisplay":{
        ref:"method:FormItem.setReadOnlyDisplay",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay')}.\n",
        name:"setReadOnlyDisplay",
        seeAlso:[
        ],
        params:[
            {
                description:"new <code>readOnlyDisplay</code> value.",
                optional:false,
                name:"appearance",
                defaultValue:null,
                type:"ReadOnlyDisplayAppearance"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "class:SelectOtherItem":{
        methods:[
        ],
        exampleConfig:"SelectOtherItem.xml",
        ref:"class:SelectOtherItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:SelectOtherItem.separatorTitle",
            "attr:SelectOtherItem.separatorValue",
            "attr:SelectOtherItem.otherTitle",
            "attr:SelectOtherItem.otherValue",
            "attr:SelectOtherItem.selectOtherPrompt",
            "attr:SelectOtherItem.dialogWidth"
        ],
        description:"FormItem that shows a list of options, plus an \"Other...\" option that allows them to enter\n another value.",
        name:"SelectOtherItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Class.logInfo":{
        ref:"method:Class.logInfo",
        flags:"",
        description:" Log a message at \"info\" priority\n \n",
        name:"logInfo",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:DrawItem.endArrow":{
        ref:"attr:DrawItem.endArrow",
        flags:"IRW",
        description:"Style of arrowhead to draw at the end of the line or path.",
        name:"endArrow",
        setter:[
            "setEndArrow"
        ],
        seeAlso:[
        ],
        valueType:"ArrowStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:ColorPicker.cancelButton":{
        ref:"attr:ColorPicker.cancelButton",
        flags:"R",
        description:"Cancel button for the ColorPicker",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:ListGrid.reverseRTLAlign":{
        ref:"attr:ListGrid.reverseRTLAlign",
        flags:"IRW",
        description:"If a page is rendered in ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','RTL mode')}, should\n cell alignments specified ${isc.DocUtils.linkForRef('attr:ListGridField.cellAlign')} be reversed (so\n an <code>align:\"right\"</code> field will have content aligned on the left and\n vice versa)?\n <P>\n This is true by default to match user expectation that text flows from\n start-to end and is aligned with the start of text flow (left in LTR mode,\n right in RTL mode) by default. May be set to false to have the specified\n alignments be taken literally in RTL mode.",
        name:"reverseRTLAlign",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "RTL"
        ]
    },
    "attr:FilterBuilder.radioOperatorTitle":{
        ref:"attr:FilterBuilder.radioOperatorTitle",
        flags:"IR",
        description:"The title for the Operator RadioGroupItem displayed in the ${isc.DocUtils.linkForRef('attr:FilterBuilder.radioOperatorForm')}.",
        name:"radioOperatorTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Overall Operator\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Button.actionType":{
        flags:"IRW",
        getter:[
            "getActionType"
        ],
        type:"attr",
        ref:"attr:Button.actionType",
        description:"Behavior on state changes -- BUTTON, RADIO or CHECKBOX",
        name:"actionType",
        setter:[
            "setActionType"
        ],
        valueType:"SelectionType",
        seeAlso:[
        ],
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonRadioToggle')}"
        ],
        defaultValue:"\"button\"",
        definingClass:"class:Button",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:SplitPane.navigationBar":{
        ref:"attr:SplitPane.navigationBar",
        flags:"IR",
        description:"The AutoChild ${isc.DocUtils.linkForRef('class:NavigationBar')} managed by this widget.\n <p>\n The following ${isc.DocUtils.linkForRef('group:autoChildUsage','passthroughs')} apply:\n <ul>\n <li>${isc.DocUtils.linkForRef('attr:SplitPane.showRightButton','showRightButton')} for NavigationBar.showRightButton.</li>\n <li>${isc.DocUtils.linkForRef('attr:SplitPane.showLeftButton','showLeftButton')} for NavigationBar.showLeftButton.</li>\n </ul>",
        name:"navigationBar",
        seeAlso:[
        ],
        valueType:"AutoChild NavigationBar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "attr:FacetChart.barMargin":{
        ref:"attr:FacetChart.barMargin",
        flags:"IR",
        description:"Distance between bars.  May be reduced if bars would be smaller than\n ${isc.DocUtils.linkForRef('attr:FacetChart.minBarThickness')}.",
        name:"barMargin",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"4",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ToolbarItem.endRow":{
        ref:"attr:ToolbarItem.endRow",
        flags:"IRW",
        description:"these items are in a row by themselves by default",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ToolbarItem",
        groups:[
            "appearance"
        ]
    },
    "attr:RelativeDateItem.pickerIcon":{
        ref:"attr:RelativeDateItem.pickerIcon",
        flags:"IR",
        description:"Icon that launches a ${isc.DocUtils.linkForRef('class:DateChooser')} for choosing an absolute date.",
        name:"pickerIcon",
        seeAlso:[
        ],
        valueType:"AutoChild FormItemIcon",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "type:PointShape":{
        ref:"type:PointShape",
        values:[
            {
                description:null,
                value:"Oval"
            },
            {
                description:null,
                value:"Square"
            },
            {
                description:null,
                value:"Diamond"
            },
            {
                description:null,
                value:"Triangle"
            }
        ],
        description:"Supported data point shapes for ${isc.DocUtils.linkForRef('attr:FacetChart.pointShapes')} are:",
        name:"PointShape",
        seeAlso:[
        ],
        type:"type"
    },
    "method:ViewLoader.handleError":{
        ref:"method:ViewLoader.handleError",
        flags:"",
        description:"\n This method is called when a transport error occurs.  Typically, this is the result of the\n server returning an HTTP error code such as 404 - document not found.  You can inspect the\n RPCResponse object for the reasons for the error and take appropriate action.  Typical\n properties to look at are rpcResponse.status, and rpcResponse.httpResponseCode.\n <p>\n This method is called from the response processing pipeline.  If you want to provide your\n own HTML response as the result of the error, you can do\n so by setting rpcResponse.data to your HTML string.  Returning false from this method\n suppresses any further response handling.  The default implementation of this method causes\n an error message to be logged to the Developer Console and sets the HTML to the error\n string.\n\n",
        name:"handleError",
        seeAlso:[
        ],
        params:[
            {
                description:"The RPCRequest that was made to the server",
                optional:false,
                name:"rpcRequest",
                defaultValue:null,
                type:"RPCRequest"
            },
            {
                description:"The RPCResponse that was received",
                optional:false,
                name:"rpcResponse",
                defaultValue:null,
                type:"RPCResponse"
            }
        ],
        returns:{
            description:"false to suppress further response processing",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ViewLoader",
        groups:[
            "contentLoading"
        ]
    },
    "attr:HibernateBrowser.dataGrid":{
        ref:"attr:HibernateBrowser.dataGrid",
        flags:"IR",
        description:"Instance of ListGrid used to display the actual data in the database table associated with\n the mapping selected in the ${isc.DocUtils.linkForRef('attr:HibernateBrowser.mappingTree','mappingTree')}.",
        name:"dataGrid",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HibernateBrowser"
    },
    "method:DataBoundComponent.dragComplete":{
        ref:"method:DataBoundComponent.dragComplete",
        flags:"",
        description:" This method is invoked on the source component whenever a drag operation or \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.transferSelectedData')} completes.  This method is called when the entire chain of \n operations - including, for databound components, server-side updates and subsequent \n integration of the changes into the client-side cache - has completed.<p>\n There is no default implementation of this method; you are intended to override it if you \n are interested in being notified when drag operations complete.\n\n",
        name:"dragComplete",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.dropComplete",
                description:null
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragging"
        ]
    },
    "classMethod:FileLoader.cacheModules":{
        ref:"classMethod:FileLoader.cacheModules",
        flags:"",
        description:"\n Caches the specified SmartClient modules.\n\n",
        name:"cacheModules",
        seeAlso:[
        ],
        params:[
            {
                description:"List of SmartClient modules to cache.  This can either be a                                  string with comma separated module names or an Array of module\n                                  names.",
                optional:false,
                name:"modules",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when the last of the specified                                      modules has been cached.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "attr:TreeGrid.indentRecordComponents":{
        ref:"attr:TreeGrid.indentRecordComponents",
        flags:"IRW",
        description:"For record components placed \"within\" the ${isc.DocUtils.linkForRef('attr:TreeGridField.treeField','treeField')}\n column, should the component be indented to the position where a title would normally\n show?\n <P>\n For more general placement of embedded components, see\n ${isc.DocUtils.linkForRef('method:ListGrid.addEmbeddedComponent','addEmbeddedComponent')}.",
        name:"indentRecordComponents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "attr:DataSource.sequenceMode":{
        ref:"attr:DataSource.sequenceMode",
        flags:"IR",
        description:"For fields of ${isc.DocUtils.linkForRef('attr:DataSourceField.type','type')} \"sequence\" in a dataSource of \n ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')} \"sql\", indicates the \n ${isc.DocUtils.linkForRef('type:SequenceMode')} to use.  This property has no effect for fields or dataSources of \n other types.\n <p>\n You can set a default sequenceMode for all DataSources of a given database type by setting\n property \"sql.{database_type}.default.sequence.mode\" in <code>server.properties</code>.  \n You set a global default sequenceMode that applies to all database types by setting property\n \"sql.default.sequence.mode\".  For example:<pre>\n   sql.mysql.default.sequence.mode: jdbcDriver\n </pre>\n <P>",
        name:"sequenceMode",
        seeAlso:[
        ],
        valueType:"SequenceMode",
        defaultValue:"\"native\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:DrawnValue.startAngle":{
        ref:"attr:DrawnValue.startAngle",
        flags:"IR",
        description:"For pie mode only, start angle of the segment for the data value.",
        name:"startAngle",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "method:TimeItem.setSecondValues":{
        ref:"method:TimeItem.setSecondValues",
        flags:"A",
        description:" Sets the array of valid ${isc.DocUtils.linkForRef('attr:TimeItem.secondValues','second values')} to use when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for limiting available valid Second values, or when using the TimeItem to record\n duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.secondMinValue','secondMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondMaxValue','secondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondIncrement','secondIncrement')} for another method of controlling the \n content in the second picker.\n",
        name:"setSecondValues",
        seeAlso:[
        ],
        params:[
            {
                description:"array of available Second values",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Array of Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "type:RegressionLineType":{
        ref:"type:RegressionLineType",
        values:[
            {
                description:"linear regression",
                value:"\"line\""
            },
            {
                description:"polynomial regression",
                value:"\"polynomial\""
            }
        ],
        description:"Supported regression algorithms for fitting the data points of a scatter plot.",
        name:"RegressionLineType",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ListGrid.printAutoFit":{
        ref:"attr:ListGrid.printAutoFit",
        flags:"IRW",
        description:"Whether cell contents should wrap during printing.  Equivalent to ${isc.DocUtils.linkForRef('type:Autofit')}, but\n specific to printed output.",
        name:"printAutoFit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "printing"
        ]
    },
    "attr:Chart.subTitle":{
        ref:"attr:Chart.subTitle",
        flags:"IR",
        description:"Subtitle for the chart as a whole, typically used to describe fixed facet values (such as\n \"for Q1, 1999\").\n <P>\n The subTitle should appear under the title in less emphasized text.",
        name:"subTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "attr:ListGrid.headerHoverHeight":{
        ref:"attr:ListGrid.headerHoverHeight",
        flags:"IRW",
        description:"Optional default height for the\n hover shown on ${isc.DocUtils.linkForRef('method:ListGrid.headerHover')}.",
        name:"headerHoverHeight",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.confirmDiscardEdits":{
        ref:"attr:ListGrid.confirmDiscardEdits",
        flags:"IRW",
        description:"For editable listGrids, outstanding unsaved edits when the user performs a new filter\n or sort will be discarded. This flag determines whether we should display a confirmation\n dialog with options to save or discard the edits, or cancel the action in this case.",
        name:"confirmDiscardEdits",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:FacetChart.zoomSelectionChart":{
        ref:"attr:FacetChart.zoomSelectionChart",
        flags:"IR",
        description:"Mini-chart created when ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom')} is enabled.  This chart represents the currently\n selected range of data shown in the main chart.",
        name:"zoomSelectionChart",
        seeAlso:[
        ],
        valueType:"FacetChart AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.validateRow":{
        ref:"method:ListGrid.validateRow",
        flags:"",
        description:" Validate the current set of edit values for the row in question.\n <P>\n Called when the user moves to a new edit row, or when an edited record is to be saved if\n client side validation is enabled for this grid.\n <P>\n This method may also be called directly to perform row level validation at any time.\n\n",
        name:"validateRow",
        seeAlso:[
        ],
        params:[
            {
                description:"index of row to be validated.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"returns true if validation was successful (no errors encountered), false                    otherwise.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "classAttr:GroupingMessages.upcomingThisWeekTitle":{
        ref:"classAttr:GroupingMessages.upcomingThisWeekTitle",
        flags:"IRW",
        description:"When a ${isc.DocUtils.linkForRef('class:ListGrid')} is grouped by a date field in 'Upcoming' mode, \n this is the group title for all records in which the grouped date field occurs this week,\n relative to the current date.",
        name:"upcomingThisWeekTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"This Week\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.showAllRecords":{
        ref:"attr:ListGrid.showAllRecords",
        flags:"IRW",
        description:"Whether all rows should be drawn all at once, or only rows visible in the viewport.\n <P>\n Drawing all rows causes longer initial rendering time, but allows smoother vertical scrolling.\n With a very large number of rows, showAllRows will become too slow.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio')} and ${isc.DocUtils.linkForRef('attr:ListGrid.drawAllMaxCells')}.",
        name:"showAllRecords",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('autofitRows')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "attr:RichTextItem.showTitle":{
        ref:"attr:RichTextItem.showTitle",
        flags:"IR",
        description:"Don't show the title for rich text items by default",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RichTextItem"
    },
    "attr:RibbonGroup.newControlDefaults":{
        ref:"attr:RibbonGroup.newControlDefaults",
        flags:"IR",
        description:"Properties used by ${isc.DocUtils.linkForRef('method:RibbonGroup.createControl')} when creating new controls.",
        name:"newControlDefaults",
        seeAlso:[
        ],
        valueType:"MultiAutoChild IconButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RibbonGroup"
    },
    "method:Canvas.setRight":{
        ref:"method:Canvas.setRight",
        flags:"",
        description:" Resizes the widget horizontally to position its right side at the specified coordinate.\n <P>\n NOTE: if you're setting multiple coordinates, use setRect(), moveTo() or resizeTo()\n instead\n\n",
        name:"setRight",
        seeAlso:[
        ],
        params:[
            {
                description:"new right coordinate",
                optional:false,
                name:"right",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:ListGrid.getEditorType":{
        ref:"method:ListGrid.getEditorType",
        flags:"A",
        description:"\n  Returns the form item type (Class Name) to display for a field when it is displayed in the\n  editor while editing some record.<br>\n  Default implementation will return field.editorType if specified.\n  If not specified, the default form item for the appropriate data type will be displayed\n  - can be overridden to provide a different specific form item type for some field based on\n  the record/field data.\n\n",
        name:"getEditorType",
        seeAlso:[
        ],
        params:[
            {
                description:"field definition field for which we need a valueMap",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"current edit values for the record (may be null, if editing a                              new record)",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"form item type for the edit field",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:DrawItem.supportsStartArrow":{
        ref:"method:DrawItem.supportsStartArrow",
        flags:"A",
        description:" Does this DrawItem ${isc.DocUtils.linkForRef('classMethod:Class.isMethodSupported','support')} ${isc.DocUtils.linkForRef('method:DrawItem.setStartArrow')}?\n For example, this is false for ${isc.DocUtils.linkForRef('class:DrawRect')} and ${isc.DocUtils.linkForRef('class:DrawOval')}, and true for ${isc.DocUtils.linkForRef('class:DrawLine')}.\n",
        name:"supportsStartArrow",
        seeAlso:[
        ],
        returns:{
            description:"whether setStartArrow() is supported by this DrawItem.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:ListGridRecord.backgroundComponent":{
        ref:"attr:ListGridRecord.backgroundComponent",
        flags:"IR",
        description:"Has no effect unless ${isc.DocUtils.linkForRef('attr:ListGrid.showBackgroundComponents')} is <code>true</code>.\n <P>\n Canvas created and embedded in the body behind a given record.   When set, either as\n a Canvas or Canvas Properties, will be constructed if necessary, combined with the\n autoChild properties specified for ${isc.DocUtils.linkForRef('attr:ListGrid.backgroundComponent')} and displayed\n behind this record in the page's z-order, meaning\n it will only be visible if the cell styling is transparent.",
        name:"backgroundComponent",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord",
        groups:[
            "rowEffects"
        ]
    },
    "object:SortSpecifier":{
        methods:[
        ],
        ref:"object:SortSpecifier",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:SortSpecifier.property",
            "attr:SortSpecifier.direction",
            "attr:SortSpecifier.normalizer",
            "attr:SortSpecifier.context"
        ],
        description:"A Javascript object defining the details of a single sort operation.\n <P>\n You can convert between SortSpecifiers and the string format required by \n ${isc.DocUtils.linkForRef('attr:DSRequest.sortBy')} by calling ${isc.DocUtils.linkForRef('classMethod:DataSource.getSortBy')} and \n ${isc.DocUtils.linkForRef('classMethod:DataSource.getSortSpecifiers')}.",
        name:"SortSpecifier",
        seeAlso:[
        ],
        type:"object"
    },
    "method:Class.echoLeaf":{
        ref:"method:Class.echoLeaf",
        flags:"",
        description:" Return a very short (generally less than 40 characters) string representation of any object,\n suitable for viewing by a developer for debugging purposes.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echoLeaf\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"echoLeaf",
        seeAlso:[
            {
                ref:"method:Class.echo",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "debug"
        ]
    },
    "method:DataSource.recordsAreEqual":{
        ref:"method:DataSource.recordsAreEqual",
        flags:"",
        description:" Convenience method to test if two records are equal. Testing is done only for the\n fields defined in the DataSource, anything else is ignored.\n\n",
        name:"recordsAreEqual",
        seeAlso:[
        ],
        params:[
            {
                description:"record to be compared against.",
                optional:false,
                name:"record1",
                defaultValue:null,
                type:"any"
            },
            {
                description:"record to be compared.",
                optional:false,
                name:"record2",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"true if the records are equal, false otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "method:ListGrid.validateCell":{
        ref:"method:ListGrid.validateCell",
        flags:"",
        description:" Validate the current edit value for the cell in question.  Called when the user moves to a\n new edit cell if ${isc.DocUtils.linkForRef('attr:ListGrid.validateByCell')} is true.<br>\n This method may also be called directly to perform cell level validation at any time.\n",
        name:"validateCell",
        seeAlso:[
        ],
        params:[
            {
                description:"index of row to be validated.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"field name (or column index) of field to be validated",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string | number"
            }
        ],
        returns:{
            description:"returns true if validation was successful (no errors encountered), false                    otherwise.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "method:ToolStripGroup.removeControl":{
        ref:"method:ToolStripGroup.removeControl",
        flags:"",
        description:" Removes a control from this toolStripGroup, destroying an existing column if this is the\n last widget in that column.\n \n",
        name:"removeControl",
        seeAlso:[
        ],
        params:[
            {
                description:"a widget to remove from this group",
                optional:false,
                name:"control",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "classMethod:isc.echoLeaf":{
        ref:"classMethod:isc.echoLeaf",
        flags:"",
        description:" Same as ${isc.DocUtils.linkForRef('classMethod:Log.echoLeaf')}.\n\n",
        name:"echoLeaf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "method:NavigationBar.setShowLeftButton":{
        ref:"method:NavigationBar.setShowLeftButton",
        flags:"",
        description:" Show or hide the ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButton','leftButton')}.\n",
        name:"setShowLeftButton",
        seeAlso:[
        ],
        params:[
            {
                description:"if true, the button will be shown, otherwise hidden.",
                optional:false,
                name:"visible",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "attr:ToolStrip.groupTitleOrientation":{
        ref:"attr:ToolStrip.groupTitleOrientation",
        flags:"IR",
        description:"If set, this attribute affects the orientation of the titles in \n ${isc.DocUtils.linkForRef('class:ToolStripGroup','ToolStripGroups')}.  You can override this at the \n ${isc.DocUtils.linkForRef('attr:ToolStripGroup.titleAlign','individual ToolStripGroup')} level.",
        name:"groupTitleOrientation",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"\"top\"",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "attr:ListGrid.escapeKeyEditAction":{
        ref:"attr:ListGrid.escapeKeyEditAction",
        flags:"IRW",
        description:"What to do when a user hits escape while editing a cell:<ul>\n <li>\"cancel\": close the editor and discard the current set of edit values\n <li>\"done\": just close the editor (the edit is complete, but the edited values are retained).\n </ul>\n Note that if ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')} is true, this may cause a save of the current edit values",
        name:"escapeKeyEditAction",
        seeAlso:[
        ],
        valueType:"EscapeKeyEditAction",
        defaultValue:"\"cancel\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:DrawOval.resizeBy":{
        ref:"method:DrawOval.resizeBy",
        flags:"",
        description:" Resize by the specified delta. Note that the resize will occur from the current top/left \n coordinates, meaning the center positon of the oval may change. You may also use\n ${isc.DocUtils.linkForRef('method:DrawOval.setRadii')} to change the radius in either direction without modifying the\n centerpoint.\n",
        name:"resizeBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of pixels to resize by horizontally",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"number of pixels to resize by vertically",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:StretchImg.src":{
        ref:"attr:StretchImg.src",
        flags:"IRW",
        description:"The base URL for the image. \n <P>\n The ${isc.DocUtils.linkForRef('type:State')} for the component will be combined with this URL using the\n same approach as described in ${isc.DocUtils.linkForRef('attr:Img.src')}.\n Then the image segment ${isc.DocUtils.linkForRef('attr:StretchItem.name','name')} as specified by each ${isc.DocUtils.linkForRef('object:StretchItem')}\n is added.\n <P>\n For example, for a stretchImg in \"Over\" state with a <code>src</code> of \"button.png\"\n and a segment name of \"stretch\", the resulting URL would be \"button_Over_stretch.png\".",
        name:"src",
        setter:[
            "setSrc"
        ],
        seeAlso:[
            {
                ref:"attr:StretchImg.hSrc",
                description:null
            },
            {
                ref:"attr:StretchImg.vSrc",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "class:ToolStripMenuButton":{
        methods:[
        ],
        ref:"class:ToolStripMenuButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/ToolStrip"
        ],
        attrs:[
        ],
        description:"Simple subclass of IMenuButton with appearance appropriate for a ToolStrip menu button.\n Can be used to create an icon-only menu button, and icon with text, or a text only button by setting the \n icon and title attibutes as required.",
        name:"ToolStripMenuButton",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ValuesManager.setMemberValues":{
        ref:"method:ValuesManager.setMemberValues",
        flags:"",
        description:" Set the values for some member form.\n",
        name:"setMemberValues",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of the member form to update",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new values for the form",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "classMethod:Class.logDebug":{
        ref:"classMethod:Class.logDebug",
        flags:"",
        description:" Log a message at \"debug\" priority\n <P>\n A method named log<i>Priority</i> exists for each priority level, on every ISC Class and\n instance of an ISC Class.  Messages logged on a Class or instance have a default\n category of the classname.  Messages logged on an instance will also automatically\n incorporate the instance ID.  General best practice is to call logDebug() et al as\n \"this.logDebug\" whenever \"this\" is an instance, or as \"Log.logDebug\" otherwise.\n\n",
        name:"logDebug",
        seeAlso:[
            {
                ref:"classMethod:Log.echo",
                description:"for dumping datastructures to the log"
            },
            {
                ref:"classMethod:Log.setPriority",
                description:"for controlling what messages appear in the log"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:MetricSettings.showAxis":{
        ref:"attr:MetricSettings.showAxis",
        flags:"IR",
        description:"Whether to show the extra value axis.",
        name:"showAxis",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:HeaderItem.showTitle":{
        ref:"attr:HeaderItem.showTitle",
        flags:"IRW",
        description:"Don't show a separate title cell for headers",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:HeaderItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSource.tableName":{
        ref:"attr:DataSource.tableName",
        flags:"IR",
        description:"For DataSources using the ${isc.DocUtils.linkForRef('group:sqlDataSource','SmartClient SQL engine')} for\n persistence, what database table name to use.  The default is to use the DataSource ID\n as the table name.",
        name:"tableName",
        seeAlso:[
            {
                ref:"attr:DataSource.quoteTableName",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:MultiGroupDialog.groupingFieldTitle":{
        ref:"attr:MultiGroupDialog.groupingFieldTitle",
        flags:"IR",
        description:"The title-text to appear in the header of the \"property\" field.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiGroupPanel for i18n.",
        name:"groupingFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Grouping\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Canvas.disabled":{
        ref:"attr:Canvas.disabled",
        flags:"IRW",
        getter:[
            "isDisabled"
        ],
        description:"If set to true, the widget will be disabled. A widget is only considered enabled\n if it is individually enabled and all parents above it in the containment hierarchy\n are enabled. This allows you to enable or disable all components of a complex\n nested widget by enabling or disabling the top-level parent only.",
        name:"disabled",
        setter:[
            "setDisabled"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "enable"
        ]
    },
    "classMethod:Time.setShortDisplayFormat":{
        ref:"classMethod:Time.setShortDisplayFormat",
        flags:"",
        description:" Sets the default format for strings returned by ${isc.DocUtils.linkForRef('classMethod:Time.toShortTime')}.\n",
        name:"setShortDisplayFormat",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional custom formatter to use. Will accept  a function (which will be passed a pointer to the date to perform the conversion), or\n  a string designating a standard formatter",
                optional:false,
                name:"formatter",
                defaultValue:null,
                type:"TimeDisplayFormat | function"
            }
        ],
        type:"classMethod",
        definingClass:"class:Time"
    },
    "method:Selection.getSelection":{
        ref:"method:Selection.getSelection",
        flags:"",
        description:" Return an ordered array of all of the selected items\n",
        name:"getSelection",
        seeAlso:[
        ],
        params:[
            {
                description:"When true, partially selected records will not be returned.                                   Otherwise, all fully and partially selected records are\n                                   returned.",
                optional:true,
                name:"excludePartialSelections",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"list of selected items",
            type:"array"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "method:ListGrid.setHeaderHeight":{
        ref:"method:ListGrid.setHeaderHeight",
        flags:"",
        description:" Modify the height of a listGrid. To hide the header set height to zero.\n",
        name:"setHeaderHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"new height for the header",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sizing",
            "gridHeader"
        ]
    },
    "classAttr:Operators.lessThanTitle":{
        ref:"classAttr:Operators.lessThanTitle",
        flags:"IR",
        description:"Title for the \"lessThan\" operator",
        name:"lessThanTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"less than\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "class:WSDataSource":{
        methods:[
        ],
        ref:"class:WSDataSource",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
        ],
        description:"A WSDataSource is a DataSource that is preconfigured to contact the WSDL web service built\n into the SDK (see isomorphic/system/schema/SmartClientOperations.wsdl).  This WSDL service\n can be easily implemented on Java and non-Java backends.  \n <P>\n WSDataSource supports all 4 DataSource operations (fetch, add, update, remove) and can be\n used with ListGrids, DynamicForms and other ${isc.DocUtils.linkForRef('interface:DataBoundComponent')}s just like other\n DataSources.\n <P>\n Note that WSDataSource is specifically designed for use with SmartClientOperations.wsdl.  If\n you are trying to connect to a pre-existing WSDL service, start with just ${isc.DocUtils.linkForRef('class:DataSource')}, \n not WSDataSource, and see the ${isc.DocUtils.linkForRef('group:wsdlBinding','WSDL Integration')} chapter for an\n overview.",
        name:"WSDataSource",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ResultSet.getValueMap":{
        ref:"method:ResultSet.getValueMap",
        flags:"",
        description:" Get a map of the form <code>{ item[idField] -&gt; item[displayField] }</code>, for all \n items in the list.  If more than one item has the same <code>idProperty</code>, \n the value for the later item in the list will clobber the value for the earlier item.\n <P>\n If this method is called when the ${isc.DocUtils.linkForRef('method:ResultSet.allMatchingRowsCached','cache is incomplete')}, it\n will trigger fetches, and will return a valueMap reflecting only the currently loaded rows.\n\n",
        name:"getValueMap",
        seeAlso:[
            {
                ref:"method:ResultSet.allMatchingRowsCached",
                description:null
            }
        ],
        params:[
            {
                description:"Property to use as ID (data value) in the valueMap",
                optional:false,
                name:"idField",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Property to use as a display value in the valueMap",
                optional:false,
                name:"displayField",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"valueMap object",
            type:"object"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:FormItem.hoverWidth":{
        ref:"attr:FormItem.hoverWidth",
        flags:"IRW",
        description:"Option to specify a width for any hover shown for this item.",
        name:"hoverWidth",
        seeAlso:[
            {
                ref:"attr:DynamicForm.itemHoverWidth",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "method:Date.getShortDayName":{
        ref:"method:Date.getShortDayName",
        flags:"",
        description:" Return the abbreviated (up to 3 chars) day of week name for this date (Mon, Tue, etc).\n To modify the value returned by this method, set ${isc.DocUtils.linkForRef('classAttr:Date.shortDayNames')}\n\n",
        name:"getShortDayName",
        seeAlso:[
        ],
        params:[
            {
                description:"Number of characters to return (Defaults to 3, can't be                                  longer than 3)",
                optional:false,
                name:"length",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Abbreviated day name",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:DSResponse.queueStatus":{
        ref:"attr:DSResponse.queueStatus",
        flags:"IR",
        description:"An extra property of each DSResponse to a queued request that indicates whether the queue\n as a whole succeeded.  A queueStatus of ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_SUCCESS')}, or 0, indicates\n that the queue succeeded whereas a queueStatus of ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_FAILURE')}, or -1,\n indicates that the queue failed.\n\n <p>For example, if two \"update\" requests are sent in a queue and the first succeeded, but\n the second failed validation, then both DSResponses' queueStatus would be -1, but the\n ${isc.DocUtils.linkForRef('attr:DSResponse.status','status')} of the first would be ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_SUCCESS')} and\n the status of the second would be an error code such as ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_VALIDATION_ERROR')}.",
        name:"queueStatus",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:null,
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "errorHandling"
        ]
    },
    "type:RecordDropPosition":{
        ref:"type:RecordDropPosition",
        values:[
            {
                description:"User dropped directly onto the record",
                value:"ListGrid.OVER"
            },
            {
                description:"User dropped before the record",
                value:"ListGrid.BEFORE"
            },
            {
                description:"User dropped after the record",
                value:"ListGrid.AFTER"
            },
            {
                description:"Drop position is not over a record",
                value:"ListGrid.NONE"
            }
        ],
        description:"Position of a ${isc.DocUtils.linkForRef('method:ListGrid.recordDrop')} operation with respect to the target record.",
        name:"RecordDropPosition",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DetailViewer.fieldIsVisible":{
        ref:"method:DetailViewer.fieldIsVisible",
        flags:"",
        description:" Check whether a field is currently visible\n\n",
        name:"fieldIsVisible",
        seeAlso:[
        ],
        params:[
            {
                description:"field to be checked",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"String | DetailViewerField"
            }
        ],
        returns:{
            description:"true if the field is currently visible, false otherwise.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DetailViewer"
    },
    "classMethod:DMI.call":{
        ref:"classMethod:DMI.call",
        flags:"",
        description:"\n Calls a server-side DMI method.  At a minimum, you need to specify the appID \n (${isc.DocUtils.linkForRef('group:applicationDeclaration','.app.xml file')}), ${isc.DocUtils.linkForRef('attr:ServerObject.className')}\n or ${isc.DocUtils.linkForRef('attr:ServerObject.ID')} and methodName to call.\n Arguments and callback are optional.  There are two ways to invoke this method:\n <pre>\n DMI.call(appID, className, methodName, \n          arg1, arg2 ...argN, callback);\n </pre>\n or:\n <pre>\n DMI.call({\n     appID: appID,\n     className: className,\n     methodName: methodName,\n     arguments: [arg1, arg2, ...argN], //optional\n     callback: callback, //optional\n     requestParams: requestProps // optional\n });\n </pre>\n If you use the first signature, you must either specify a callback or if you don't want a\n callback, pass a <code>null</code> as the last argument.  The second signature allows you to\n specify requestParams that are applied to the ${isc.DocUtils.linkForRef('class:RPCRequest')} generated by this DMI call.\n This allows you to override some defaults - for example to suppress the \"Contacting Server\"\n prompt, change it's text; change the timeout or set any other property settable on\n ${isc.DocUtils.linkForRef('class:RPCRequest')}.\n <p>\n Arguments to be passed to the server method may be specified.\n If present, each argument will be serialized into JSON, \n sent to the server and translated to an equivalent Java object to be passed into the\n method. The translation follows the same rules as for data passed to the server as \n part of a standard ${isc.DocUtils.linkForRef('attr:RPCRequest.data','RPCRequest')}. <br>\n For example if a server side method has the signature\n <pre>\n someMethod(String title, Map overrides);\n </pre>\n a DMI call to that method would could pass in a standard String and JavaScript object -\n for example:\n <pre>\n isc.DMI.call({\n     appID: \"someApp\",\n     className: \"com.smartclient.demo.MyClass\",\n     methodName: \"someMethod\",\n     arguments: [\"Title String\", {field1:\"Value 1\", field2:\"Value 2\"}]\n });\n </pre>\n <p>\n Note that you can use the ${isc.DocUtils.linkForRef('group:loadDMIStubsTag')} tag to bind all methods of\n <code>ServerObjects</code> defined in a given .app.xml file and call methods on them\n directly.\n\n",
        name:"call",
        seeAlso:[
        ],
        params:[
            {
                description:"the appID (.app.xml file to look in) or comprehensive request                          object as documented above.",
                optional:false,
                name:"appID",
                defaultValue:null,
                type:"string or Object"
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:ServerObject.className')} or ${isc.DocUtils.linkForRef('attr:ServerObject.ID')}",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            },
            {
                description:"the name of the method to call on the serverObject",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"The next N-1 params specify arguments to the server-side method.",
                optional:true,
                name:"args",
                defaultValue:null,
                type:"any"
            },
            {
                description:"The callback of the response.  If you do not want a callback, you                          must specify a <code>null</code> value for this parameter when\n                          using the first signature (documented above).",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"RPCCallback"
            }
        ],
        returns:{
            description:"the RPCRequest that was sent to the server.",
            type:"RPCRequest"
        },
        type:"classMethod",
        definingClass:"class:DMI"
    },
    "attr:Calendar.canDragEvents":{
        ref:"attr:Calendar.canDragEvents",
        flags:"IR",
        description:"If true, users can drag-reposition existing events.",
        name:"canDragEvents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "allowedOperations"
        ]
    },
    "method:CubeGrid.addRowFacet":{
        ref:"method:CubeGrid.addRowFacet",
        flags:"",
        description:" Add a row facet to the view at index \"index\".  Handles the facet already being in the view\n (does a pivot).<br><br>\n\n The facet being added should currently have a fixed facet value (unless it's already part of the\n view), which will be removed from cubeGrid.fixedFacetValues.\n\n <br><i>methodType</i>  action\n",
        name:"addRowFacet",
        seeAlso:[
            {
                ref:"method:CubeGrid.removeFacet",
                description:null
            },
            {
                ref:"attr:CubeGrid.fixedFacetValues",
                description:null
            }
        ],
        params:[
            {
                description:"facetId to add.  Definition must have been provided at init time.",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"index to add the facet at.  0 = outermost (default innermost)",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "method:Canvas.getHSnapPosition":{
        ref:"method:Canvas.getHSnapPosition",
        flags:"A",
        description:"\n Override this method to provide a custom snap-to grid.  Note that you do not need to do\n this if your grid is regular (ie, grid points are every x pixels); regular grids should be\n defined using ${isc.DocUtils.linkForRef('attr:Canvas.snapHGap')} and ${isc.DocUtils.linkForRef('attr:Canvas.snapVGap')}.\n You should only override this method if you want to provide support for a grid of\n irregularly-placed points\n\n",
        name:"getHSnapPosition",
        seeAlso:[
        ],
        params:[
            {
                description:"x-coordinate of the drag event relative to the inside of this widget",
                optional:false,
                name:"coordinate",
                defaultValue:null,
                type:"int"
            },
            {
                description:"\"before\" or \"after\" denoting whether the returned coordinate should   match the left or right edge of the current square. If unset ${isc.DocUtils.linkForRef('attr:Canvas.snapHDirection')} will\n   be used by default",
                optional:true,
                name:"direction",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"The horizontal coordinate to snap to",
            type:"int"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "classAttr:FileLoader.modulesDir":{
        ref:"classAttr:FileLoader.modulesDir",
        flags:"IR",
        description:"Path to module files (ISC_Core.js et al) relative to the isomorphicDir (see\n ${isc.DocUtils.linkForRef('class:FileLoader','FileLoader overview')}).\n <p>\n Does not normally need to be set for SmartClient.  If using Smart GWT, set to \"modules/\".",
        name:"modulesDir",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"system/modules/\"",
        type:"classAttr",
        definingClass:"class:FileLoader"
    },
    "attr:Facet.cellAlign":{
        ref:"attr:Facet.cellAlign",
        flags:"IR",
        description:"Default alignment of cells (in the body) for this facet.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"cellAlign",
        seeAlso:[
            {
                ref:"attr:CubeGrid.cellAlign",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"cubeGrid.cellAlign",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:Calendar.autoFetchData":{
        ref:"attr:Calendar.autoFetchData",
        flags:"IR",
        description:"If true, when this component is first drawn, automatically call <code>this.fetchData()</code>.\n Criteria for this fetch may be picked up from ${isc.DocUtils.linkForRef('attr:Calendar.initialCriteria')}, and textMatchStyle may\n be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}.\n <P>\n <span style='color:red'>NOTE:</span> if <code>autoFetchData</code> is set, calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} before draw will cause two requests to be issued, one from the manual\n call to fetchData() and one from the autoFetchData setting.  The second request will use\n only ${isc.DocUtils.linkForRef('attr:Calendar.initialCriteria')} and not any other criteria or settings from the first request.\n Generally, turn off autoFetchData if you are going to manually call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} at any time.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fetchOperation')}"
        ],
        definingClass:"class:Calendar",
        groups:[
            "databinding"
        ]
    },
    "classMethod:EventHandler.middleButtonDown":{
        ref:"classMethod:EventHandler.middleButtonDown",
        flags:"A",
        description:" Returns true if the middle mouse button is being pressed.\n <p>\n Checking whether the middle mouse button is pressed can be used to implement power user\n shortcuts; however, note that many pointing devices do not have a middle button. Thus, the\n application should <strong>not</strong> require the user to press a middle button in order\n to perform some action.\n",
        name:"middleButtonDown",
        seeAlso:[
            {
                ref:"classMethod:EventHandler.leftButtonDown",
                description:null
            },
            {
                ref:"classMethod:EventHandler.rightButtonDown",
                description:null
            }
        ],
        returns:{
            description:"true if the middle mouse button is pressed; false otherwise.",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "mouseEvents"
        ]
    },
    "method:Canvas.dragStart":{
        ref:"method:Canvas.dragStart",
        flags:"A",
        description:" Executed when dragging first starts. Your widget can use this opportunity to set\n things up for the drag, such as setting the drag tracker. Returning false from this\n event handler will cancel the drag action entirely.\n <p>\n A drag action is considered to be begin when the mouse has moved\n ${isc.DocUtils.linkForRef('attr:Canvas.dragStartDistance')} with the left mouse down.\n\n",
        name:"dragStart",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag action.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragPan')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:MetricSettings.axisLineProperties":{
        ref:"attr:MetricSettings.axisLineProperties",
        flags:"IR",
        description:"Properties for the axis line drawn if this extra value axis is not positioned\n directly adjacent to the chart rect.  The default is to match the\n ${isc.DocUtils.linkForRef('attr:DrawItem.lineCap','lineCap')}, ${isc.DocUtils.linkForRef('attr:DrawItem.lineColor','lineColor')},\n ${isc.DocUtils.linkForRef('attr:DrawItem.lineOpacity','lineOpacity')}, ${isc.DocUtils.linkForRef('attr:DrawItem.linePattern','linePattern')},\n and ${isc.DocUtils.linkForRef('attr:DrawItem.lineWidth','lineWidth')} of the FacetChart's\n ${isc.DocUtils.linkForRef('attr:FacetChart.chartRectProperties','chart rect.')} for each axis line.",
        name:"axisLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:TileGrid.removeData":{
        ref:"method:TileGrid.removeData",
        flags:"",
        description:" Perform a DataSource \"remove\" operation to remove records from this component's\n DataSource.\n\n",
        name:"removeData",
        seeAlso:[
        ],
        params:[
            {
                description:"primary key values of record to delete,                                           (or complete record)",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"method to call on operation completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundRemove')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:PortalLayout.getPortletArray":{
        ref:"method:PortalLayout.getPortletArray",
        flags:"",
        description:" Returns a multi-level array of the ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} in this PortalLayout,\n where the first level corresponds to columns, the second to rows, and the third\n to Portlets within rows.\n",
        name:"getPortletArray",
        seeAlso:[
            {
                ref:"method:PortalLayout.getPortlets",
                description:null
            }
        ],
        returns:{
            description:"portlets",
            type:"Array of Array of Array of Portlet"
        },
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:CubeGrid.canSortData":{
        ref:"attr:CubeGrid.canSortData",
        flags:"IRW",
        description:"If true, sort controls will be shown on facet values.\n <P>\n When clicked, sort controls call ${isc.DocUtils.linkForRef('method:CubeGrid.sortByFacetValues')}.",
        name:"canSortData",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:ListGrid.rowNumberStyle":{
        ref:"attr:ListGrid.rowNumberStyle",
        flags:"IRWA",
        description:"The CSS Style name for the ${isc.DocUtils.linkForRef('attr:ListGrid.rowNumberField')}.",
        name:"rowNumberStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"specialCol\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowNumberField"
        ]
    },
    "attr:ListGrid.headerHeight":{
        ref:"attr:ListGrid.headerHeight",
        flags:"IRW",
        description:"The height of this listGrid's header, in pixels.",
        name:"headerHeight",
        setter:[
            "setHeaderHeight"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"22",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "sizing"
        ]
    },
    "method:FormulaBuilder.fireOnClose":{
        ref:"method:FormulaBuilder.fireOnClose",
        flags:"A",
        description:" Override to execute a callback function when the Formula is Cancelled or Saved.\n \n",
        name:"fireOnClose",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:StretchImgButton.setLabelSkinImgDir":{
        ref:"method:StretchImgButton.setLabelSkinImgDir",
        flags:"",
        description:" setter for ${isc.DocUtils.linkForRef('attr:StretchImgButton.labelSkinImgDir')}.\n",
        name:"setLabelSkinImgDir",
        seeAlso:[
        ],
        params:[
            {
                description:"new skin img dir to apply to the label holding title text for   this widget.",
                optional:false,
                name:"URL",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "attr:OperationBinding.useFlatFields":{
        ref:"attr:OperationBinding.useFlatFields",
        flags:"IR",
        description:"Setting <code>useFlatFields</code> on an operationBinding is equivalent to setting\n ${isc.DocUtils.linkForRef('attr:DSRequest.useFlatFields')} on all DataSource requests with the same ${isc.DocUtils.linkForRef('attr:OperationBinding.operationType')}\n as this <code>operationBinding</code>.\n <P>\n Typical usage is to combine operationBinding.useFlatFields with \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.useFlatFields','searchForm.useFlatFields')}, with the ${isc.DocUtils.linkForRef('class:SearchForm')}\n bound to the ${isc.DocUtils.linkForRef('method:WebService.getInputDS','input message')} of the web service operation set\n as ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation')}.  This allows gratuitous nesting to be consistently\n bypassed in both the user presentation and in the actual XML messaging.\n <P>\n Note that <code>useFlatFields</code> is not generally recommended for use with input messages\n where multiple simple type fields exist with the same name, however if used in this way,\n the first field to use a given name wins.  \"first\" means the first field encountered in a\n depth first search.  \"wins\" means only the first field will be available in data binding,\n and only the first field will be populated in the generated XML message.",
        name:"useFlatFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:DrawShape.knobs":{
        ref:"attr:DrawShape.knobs",
        flags:"IR",
        description:"<b>NOTE:</b> DrawShape items do not support knobs.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawShape"
    },
    "method:ListGridField.changed":{
        ref:"method:ListGridField.changed",
        flags:"",
        description:" If this field is editable, any ${isc.DocUtils.linkForRef('method:FormItem.changed','changed')} handler specified\n on the ListGridField will be passed onto the editors for this field.\n Note that if ${isc.DocUtils.linkForRef('attr:ListGridField.canToggle')} is true, the user may change the value of\n a boolean field without going into edit mode by single clicking on the field. In this\n case the ${isc.DocUtils.linkForRef('method:ListGridField.change')} and ${isc.DocUtils.linkForRef('method:ListGridField.changed')} handlers will\n fire but the <code>form</code> and <code>item</code> parameters will be null.\n\n",
        name:"changed",
        seeAlso:[
            {
                ref:"method:ListGridField.change",
                description:null
            },
            {
                ref:"method:ListGrid.cellChanged",
                description:null
            }
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the editor (form item) itself (also available as \"this\").                              Note that in addition to the standard FormItem APIs available\n                              on the editor, it also has:<br>\n                              - a pointer back to the containing listGrid\n                              [<code>item.grid</code>]<br>\n                              - the colNum being edited [<code>item.colNum</code>]<br>\n                              - the rowNum being edited [<code>item.rowNum</code>]",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"The current value (after the change).",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:ViewLoader.getView":{
        ref:"method:ViewLoader.getView",
        flags:"",
        description:" Retrieve the current view.  May be null if the view has not yet been loaded, or has been\n explicitly set to null.\n\n",
        name:"getView",
        seeAlso:[
        ],
        returns:{
            description:"the current view",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ViewLoader",
        groups:[
            "contentLoading"
        ]
    },
    "attr:EdgedCanvas.edgeStyleName":{
        ref:"attr:EdgedCanvas.edgeStyleName",
        flags:"IRW",
        description:"Optional property specifying the CSS ClassName to apply to the various parts of this edged canvas\n (top, bottom, corners, sides and center). To\n apply separate styles for each part, use ${isc.DocUtils.linkForRef('attr:EdgedCanvas.addEdgeStyleSuffix')}.",
        name:"edgeStyleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdgeStyles",
            "imageEdges"
        ]
    },
    "classMethod:DataSource.flattenCriteria":{
        ref:"classMethod:DataSource.flattenCriteria",
        flags:"",
        description:" Returns new criteria that has at most one top-level LogicalOperator (\"and\" or \"or\").\n This new criteria will be considered \"flat\" by ${isc.DocUtils.linkForRef('classMethod:DataSource.isFlatCriteria')}.\n <p>\n Not all AdvancedCriteria can be flattened and remain logically equivalent.  When\n criteria will be logically modified by flattening, all criteria that appear anywhere in\n the AdvancedCriteria structure will appear under a single top-level operator, which\n will be the same top-level operator as the passed AdvancedCriteria.\n <p>\n For example, given criteria like this (in the JSON representation of AdvancedCriteria):\n <pre>\n      { operator: \"and\", criteria: [\n         { fieldName: \"continent\", operator: \"equals\", value: \"Europe\"},\n         { operator: \"or\", criteria: [\n            { fieldName: \"countryName\", operator: \"iEndsWith\", value: \"land\"},\n            { fieldName: \"population\", operator: \"lessThan\", value: 3000000}\n         ]}\n        ]\n      }\n </pre>\n The returned criteria would be:\n <pre>\n      { operator: \"and\", criteria: [\n         { fieldName: \"continent\", operator: \"equals\", value: \"Europe\"},\n         { fieldName: \"countryName\", operator: \"iEndsWith\", value: \"land\"},\n         { fieldName: \"population\", operator: \"lessThan\", value: 3000000}\n       ]}\n </pre>\n This returned criteria is not logically equivalent to the passed criteria - the\n \"iEndsWith\" and \"lessThan\" criteria that were formerly nested under a logical \"or\"\n operator must now <i>both</i> be satisfied instead of <i>either</i> being satisfied.\n You can use ${isc.DocUtils.linkForRef('classMethod:DataSource.canFlattenCriteria')} to detect whether an AdvancedCriteria is going\n to be changed by <code>flattenCriteria()</code>.\n <p>\n Because the returned criteria may not be logically equivalent,\n <code>flattenCriteria</code> should not be used as a means of simplifying criteria to\n make server implementation easier or anything of the kind.  The primary purpose of\n returning logically different criteria is to enable an end user to switch from an\n interface for editing nested criteria to an interface that can't handle nested\n criteria and convert the criteria while preserving as much as possible.\n\n",
        name:"flattenCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"the AdvancedCriteria to flatten",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        returns:{
            description:"flattened criteria",
            type:"AdvancedCriteria"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "method:DrawOval.resizeTo":{
        ref:"method:DrawOval.resizeTo",
        flags:"",
        description:" Resize to the specified size. Note that the resize will occur from the current top/left \n coordinates, meaning the center positon of the oval may change. You may also use\n ${isc.DocUtils.linkForRef('method:DrawOval.setRadii')} to change the radius in either direction without modifying the\n centerpoint.\n",
        name:"resizeTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:RPCRequest.promptStyle":{
        ref:"attr:RPCRequest.promptStyle",
        flags:"IRW",
        description:"Controls the prompt style for this request only.  Defaults to\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.promptStyle')}.",
        name:"promptStyle",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.promptStyle",
                description:null
            }
        ],
        valueType:"PromptStyle",
        defaultValue:"RPCManager.promptStyle",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:Canvas.hoverAlign":{
        ref:"attr:Canvas.hoverAlign",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true, this property can be used to customize the\n alignment of content in the hover canvas.",
        name:"hoverAlign",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "method:DynamicForm.setCanEdit":{
        ref:"method:DynamicForm.setCanEdit",
        flags:"",
        description:" Is this form editable or read-only? Setting the form to non-editable causes all\n form items to render as read-only unless a form item is specifically marked as editable\n (the item's ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')} attribute is <code>true</code>).\n\n",
        name:"setCanEdit",
        seeAlso:[
            {
                ref:"attr:DynamicForm.canEdit",
                description:null
            }
        ],
        params:[
            {
                description:"Can this form be edited?",
                optional:false,
                name:"canEdit",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "readOnly"
        ]
    },
    "attr:EdgedCanvas.skinImgDir":{
        ref:"attr:EdgedCanvas.skinImgDir",
        flags:"IR",
        description:"Standard skin directory for edge images (sides and corners).",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/edges/\"",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "method:DrawGroup.setHeight":{
        ref:"method:DrawGroup.setHeight",
        flags:"",
        description:" Sets the height of this <code>DrawGroup</code>'s ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')}.\n Note that setting the height will not move or resize the items in this <code>DrawGroup</code>.\n\n",
        name:"setHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"new height for the group rectangle",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:SliderItem.maxValue":{
        ref:"attr:SliderItem.maxValue",
        flags:"IRW",
        description:"The maximum slider value. The slider value is equal to maxValue when the thumb is at the\n top or right of the slider (unless flipValues is true, in which case the maximum value\n is at the bottom/left of the slider)",
        name:"maxValue",
        setter:[
            "setMaxValue"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.flipValues",
                description:null
            }
        ],
        valueType:"float",
        defaultValue:"100",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sliderItem')}"
        ],
        definingClass:"class:SliderItem"
    },
    "attr:TimeItem.maskSaveLiterals":{
        ref:"attr:TimeItem.maskSaveLiterals",
        flags:"IRWA",
        description:"Internal-use only for a TimeItem.",
        name:"maskSaveLiterals",
        seeAlso:[
            {
                ref:"attr:TimeItem.useMask",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:TreeGrid.iconSize":{
        ref:"attr:TreeGrid.iconSize",
        flags:"IRW",
        description:"The standard size (same height and width, in pixels) of node icons in this\n          treeGrid.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:ListGridField.recordClick":{
        ref:"method:ListGridField.recordClick",
        flags:"",
        description:"\n Executed when this field is clicked on.  Note that if ${isc.DocUtils.linkForRef('method:ListGrid.recordClick')} is\n also defined, it will be fired for fields that define a recordClick handler if the\n field-level handler returns true. Return false to prevent the grid-level handler from firing.\n\n",
        name:"recordClick",
        seeAlso:[
            {
                ref:"method:ListGrid.recordClick",
                description:null
            }
        ],
        params:[
            {
                description:"the listGrid that contains the click event",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"ListGrid"
            },
            {
                description:"the record that was clicked on",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"number of the record clicked on in the current set of                                  displayed records (starts with 0)",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the field that was clicked on (field definition)",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"number of the field clicked on in the listGrid.fields                                  array",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"value of the cell (after valueMap, etc. applied)",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"raw value of the cell (before valueMap, etc applied)",
                optional:false,
                name:"rawValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"false to stop event bubbling",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('recordClicks')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "events"
        ]
    },
    "attr:HTMLFlow.httpMethod":{
        ref:"attr:HTMLFlow.httpMethod",
        flags:"IRW",
        description:"Selects the HTTP method that will be used when fetching content.  Valid values are \"POST\"\n and \"GET\".",
        name:"httpMethod",
        seeAlso:[
        ],
        valueType:"SendMethod",
        defaultValue:"\"GET\"",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "method:FormItem.showIf":{
        ref:"method:FormItem.showIf",
        flags:"A",
        description:" Expression that's evaluated to see if an item should be dynamically hidden.\n <p>\n <code>showIf()</code> is evaluated whenever the form draws or redraws.\n <P>\n Note that explicit calls to ${isc.DocUtils.linkForRef('method:FormItem.show')} or ${isc.DocUtils.linkForRef('method:FormItem.hide')} will\n will wipe out the <code>showIf</code> expression.\n\n",
        name:"showIf",
        seeAlso:[
        ],
        params:[
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"current value of the form item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the current set of values for the form as a whole",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Object"
            }
        ],
        returns:{
            description:"whether the item should be shown",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('formShowAndHide')}"
        ],
        definingClass:"class:FormItem"
    },
    "method:TileGrid.fetchData":{
        ref:"method:TileGrid.fetchData",
        flags:"",
        description:" Retrieves data from the DataSource that matches the specified criteria.\n <p>\n When <code>fetchData()</code> is first called, if data has not already been provided via\n ${isc.DocUtils.linkForRef('method:ListGrid.setData','setData()')}, this method will create a ${isc.DocUtils.linkForRef('class:ResultSet')}, which will be\n configured based on component settings such as ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fetchOperation')}\n and ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataPageSize')}, as well as the general purpose\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataProperties')}.  The created ResultSet will automatically send a DSRequest\n to retrieve data from ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource','listGrid.dataSource')}, and from then on will  \n automatically manage paging through large datasets, as well as performing filtering and\n sorting operations inside the browser when possible - see the ${isc.DocUtils.linkForRef('class:ResultSet')} docs for\n details.\n <p>\n <b>NOTE:</b> do not use <b>both</b> ${isc.DocUtils.linkForRef('attr:DataBoundComponent.autoFetchData','autoFetchData:true')} <b>and</b> a\n call to <code>fetchData()</code> - this may result in two DSRequests to fetch data.  Use\n either ${isc.DocUtils.linkForRef('attr:DataBoundComponent.autoFetchData','autoFetchData')} and ${isc.DocUtils.linkForRef('type:Criteria')} <b>or</b> a manual call to fetchData()\n passing criteria.\n <p>\n Whether a ResultSet was automatically created or provided via ${isc.DocUtils.linkForRef('method:ListGrid.setData','setData()')}, subsequent\n calls to fetchData() will simply call ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria')}.\n <p>\n Changes to criteria may or may not result in a DSRequest to the server due to\n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering','client-side filtering')}.  You can call\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.willFetchData','willFetchData(criteria)')} to determine if new criteria will result in a\n server fetch.\n <P>\n If you need to force data to be re-fetched, you can call\n ${isc.DocUtils.linkForRef('method:ListGrid.invalidateCache','invalidateCache()')} and new data will automatically be fetched\n from the server using the current criteria and sort direction.  <b>NOTE:</b> when using\n <code>invalidateCache()</code> there is no need to <b>also</b> call <code>fetchData()</code>\n and in fact this could produce unexpected results.\n <p>\n This method takes an optional callback parameter (set to a ${isc.DocUtils.linkForRef('type:DSCallback')}) to fire when\n the fetch completes. Note that this callback will not fire if no server fetch is performed.\n In this case the data is updated synchronously, so as soon as this method completes you\n can interact with the new data. If necessary, you can use\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.willFetchData','willFetchData()')} to determine whether or not a server\n fetch will occur when <code>fetchData()</code> is called with new criteria.\n <p>\n In addition to the callback parameter for this method, developers can use \n ${isc.DocUtils.linkForRef('method:ListGrid.dataArrived','dataArrived()')} to be notified every time data is loaded.\n\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria. If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed                                          in as this argument instead of a raw criteria \n                                          object, will be derived by calling\n                                          ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete. Fires                                          only if server contact was required",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundFetch')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:MultiFileItem.pickerUploadButtonInitialTitle":{
        ref:"attr:MultiFileItem.pickerUploadButtonInitialTitle",
        flags:"IR",
        description:"The initial title of the upload button in the picker lauched by the\n ${isc.DocUtils.linkForRef('attr:MultiFileItem.editButton','edit button')} that is used before the form is saved.",
        name:"pickerUploadButtonInitialTitle",
        seeAlso:[
            {
                ref:"attr:MultiFileItem.pickerUploadButtonTitle",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"OK\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Label.styleName":{
        ref:"attr:Label.styleName",
        flags:"IRW",
        description:"Set the CSS class for this widget.  For a Label, this is equivalent to\n setting ${isc.DocUtils.linkForRef('attr:Button.baseStyle')}.",
        name:"styleName",
        setter:[
            "setStyleName"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:Label"
    },
    "attr:Window.headerIconDefaults":{
        ref:"attr:Window.headerIconDefaults",
        flags:"IRWA",
        description:"This is an object literal property block specifying the various properties of the\n headerIcon - the icon that appears at the top left of the window and is by default the\n Isomorphic logo.  Overrideable defaults are as follows:\n <ul>\n <li>width - default to <code>16</code> and specifies the width of the headerIcon.\n <li>height - default to <code>14</code> and specifies the height of the headerIcon.\n <li>src - defaults to <code>\"[SKIN]/Window/minimize.gif\"</code> and specifies the image\n for the headerIcon.\n </ul>\n You can override the the above properties by calling ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')}.",
        name:"headerIconDefaults",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"...",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "classMethod:DataSource.copyCriteria":{
        ref:"classMethod:DataSource.copyCriteria",
        flags:"",
        description:" Create a copy of a criteria.\n\n",
        name:"copyCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"criteria to copy",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            }
        ],
        returns:{
            description:"copy of criteria",
            type:"Criteria"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:FormItem.decimalPad":{
        ref:"attr:FormItem.decimalPad",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and enforces a minimum number of digits shown after\n the decimal point.\n <P>\n For example, a field value of 343.1, 343.104 and 343.09872677 would all be shown as 343.10\n if decimalPad is 2.\n <P>\n The original unpadded value is always shown when the value is edited.",
        name:"decimalPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "method:DataSource.getClientOnlyDataSource":{
        ref:"method:DataSource.getClientOnlyDataSource",
        flags:"",
        description:" Produces a clientOnly \"copy\" of a particular subset of data from a normal \n DataSource, via calling fetchData() to fetch matching rows, and constructing \n a clientOnly DataSource that ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')} the original DataSource.\n <P>\n This clientOnly \"copy\" can be useful in situations where you want to allow \n a series of local changes without immediately committing to the server.  \n See also ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')} for more fine-grained tracking of \n edits (eg, special styling for uncommitted changes).\n <P>\n The new DataSource is returned via the \"callback\" argument.  If ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} is\n enabled and ${isc.DocUtils.linkForRef('method:DataSource.hasAllData')} returns true, the new DataSource is synchronously\n returned as the result of the method.  In this case, if a callback was passed, it also\n is executed synchronously.\n\n",
        name:"getClientOnlyDataSource",
        seeAlso:[
        ],
        params:[
            {
                description:"The criteria for the clientOnly DS",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"The callback to fire passing the clientOnly DS",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"ClientOnlyDataSourceCallback"
            },
            {
                description:"optional properties to pass through to the DSRequest",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"optional properties to pass                                                        through to the clientOnly DS",
                optional:true,
                name:"dataSourceProperties",
                defaultValue:null,
                type:"DataSource Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:DetailViewer.loadingMessage":{
        ref:"attr:DetailViewer.loadingMessage",
        flags:"IRW",
        description:"The string to display in the body of a detailViewer which is loading records.\n Use <code>\"&#36;{loadingImage}\"</code> to include ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSrc','a loading image')}.",
        name:"loadingMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;${loadingImage}\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "emptyMessage"
        ]
    },
    "method:FacetChart.getDrawnValue":{
        ref:"method:FacetChart.getDrawnValue",
        flags:"",
        description:" Returns rendering information for the data value specified by the passed facet values.\n <p>\n If called before ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')}, logs a warning and returns null.\n\n",
        name:"getDrawnValue",
        seeAlso:[
        ],
        params:[
            {
                description:"facet values of desired data value",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"the drawn value, or null for invalid arguments / incorrect timing                   of call",
            type:"DrawnValue"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:ViewLoader.viewLoaded":{
        ref:"method:ViewLoader.viewLoaded",
        flags:"",
        description:" StringMethod fired when the view has been loaded.  Has no default implementation.  May be\n observed or overridden to fire custom logic when loading completes.\n\n",
        name:"viewLoaded",
        seeAlso:[
        ],
        params:[
            {
                description:"the view that was loaded",
                optional:false,
                name:"view",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:ViewLoader",
        groups:[
            "contentLoading"
        ]
    },
    "attr:DataSource.globalNamespaces":{
        ref:"attr:DataSource.globalNamespaces",
        flags:"IRW",
        description:"Namespaces definitions to add to the root element of outbound XML messages sent to a web\n service, as a mapping from namespace prefix to namespace URI.\n <P>\n The default value is:\n <pre>\n   globalNamespaces : {\n      xsi: \"http://www.w3.org/2001/XMLSchema-instance\",\n      xsd: \"http://www.w3.org/2001/XMLSchema\"\n   },\n </pre>\n This default value allows the use of the xsi:type and xsi:nil attributes without further\n declarations.\n <P>\n Note that some web services will only accept specific revisions of the XML Schema URI.\n If xsi-namespaced attributes seem to be ignored by an older webservice, try the URI\n \"http://www.w3.org/1999/XMLSchema-instance\" instead.",
        name:"globalNamespaces",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"...",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "group:xmlTransform":{
        ref:"group:xmlTransform",
        refs:[
            "classMethod:XMLTools.selectNodes",
            "classMethod:XMLTools.selectString",
            "classMethod:XMLTools.selectNumber",
            "classMethod:XMLTools.transformNodes",
            "classMethod:XMLTools.serializeToString"
        ],
        name:"xmlTransform",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridField.showTitle":{
        ref:"attr:ListGridField.showTitle",
        flags:"IRW",
        description:"This property may be set to <code>false</code> to explicitly suppress display of\n the field title in the column header button for the field.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:FormulaBuilder.saveButton":{
        ref:"attr:FormulaBuilder.saveButton",
        flags:"IR",
        description:"Button to Save the formula, by generating it's function, testing it and firing \n formulaBuilder.fireOnClose",
        name:"saveButton",
        seeAlso:[
        ],
        valueType:"AutoChild Button",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:DateItem.displayFormat":{
        ref:"attr:DateItem.displayFormat",
        deprecated:"Use ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter')} instead.",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is <code>true</code> this property can be used to \n customize the format in which dates are displayed.<br>\n Should be set to a standard ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} or\n a function which will return a formatted date string.\n <P>\n If unset, the standard shortDate format as set up via ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}\n will be used.\n <P>\n <B>NOTE: you may need to update the ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat','inputFormat')} to ensure the\n DateItem is able to parse user-entered date strings back into Dates</B>\n <p>\n This attribute does not have an effect if a native HTML5 date input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"displayFormat",
        seeAlso:[
            {
                ref:"attr:DateItem.inputFormat",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "object:Gradient":{
        methods:[
        ],
        ref:"object:Gradient",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/Gradients"
        ],
        attrs:[
            "attr:Gradient.id",
            "attr:Gradient.colorStops",
            "attr:Gradient.startColor",
            "attr:Gradient.endColor"
        ],
        description:"Defines a simple gradient vertical gradient between ${isc.DocUtils.linkForRef('attr:Gradient.startColor','two')}\n ${isc.DocUtils.linkForRef('attr:Gradient.endColor','colors')}, or using ${isc.DocUtils.linkForRef('attr:Gradient.colorStops','colorStops')}.  See\n ${isc.DocUtils.linkForRef('object:SimpleGradient')}, ${isc.DocUtils.linkForRef('object:LinearGradient')} and ${isc.DocUtils.linkForRef('object:RadialGradient')} for further\n properties to define more advanced gradients.",
        name:"Gradient",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:DrawLine.startTop":{
        ref:"attr:DrawLine.startTop",
        flags:"IR",
        description:"Starting top coordinate of the line.  Overrides top coordinate of ${isc.DocUtils.linkForRef('attr:DrawLine.startPoint')} if\n both are set.",
        name:"startTop",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawLine"
    },
    "attr:TextItem.textBoxStyle":{
        ref:"attr:TextItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class name for this item's input element.\n NOTE: See the ${isc.DocUtils.linkForRef('group:CompoundFormItem_skinning')} discussion for special skinning considerations.",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"textItem\"",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "appearance"
        ]
    },
    "group:calendarEvent":{
        ref:"group:calendarEvent",
        refs:[
            "attr:Calendar.nameField",
            "attr:Calendar.descriptionField",
            "attr:Calendar.startDateField",
            "attr:Calendar.endDateField",
            "attr:Calendar.leadingDateField",
            "attr:Calendar.trailingDateField",
            "attr:Calendar.laneNameField",
            "attr:Calendar.eventWindowStyleField",
            "attr:Calendar.canEditField",
            "attr:Calendar.canEditLaneField",
            "attr:Calendar.canRemoveField",
            "attr:Calendar.canDragEventField",
            "attr:Calendar.eventAutoArrange",
            "attr:Calendar.bringEventsToFront",
            "attr:Calendar.eventOverlap",
            "attr:Calendar.eventOverlapPercent",
            "attr:Calendar.eventOverlapIdenticalStartTimes"
        ],
        name:"calendarEvent",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DrawOval.getBoundingBox":{
        ref:"method:DrawOval.getBoundingBox",
        flags:"",
        description:" Returns the top, left, top+height, left+width \n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:ListGrid.sortField":{
        ref:"attr:ListGrid.sortField",
        flags:"IR",
        getter:[
            "getSortField"
        ],
        description:"Specifies the field by which this grid should be initially sorted. Can be set to either a\n ${isc.DocUtils.linkForRef('attr:ListGridField.name','field name')} or the index of the field in the fields Array.\n <P>\n ListGrids also support being initialized with multiple-field sort via\n ${isc.DocUtils.linkForRef('attr:ListGrid.initialSort')}. If initialSort is specified, it will be used in preference\n to this property.\n <P>\n To sort the grid after it has been initialized, use ${isc.DocUtils.linkForRef('method:ListGrid.sort')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.setSort')}. Details about the current sort of a live grid can be\n retrieved by calling ${isc.DocUtils.linkForRef('method:ListGrid.getSortField')} or ${isc.DocUtils.linkForRef('method:ListGrid.getSort')}",
        name:"sortField",
        seeAlso:[
        ],
        valueType:"String | int",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sort')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "group:menuItemEvents":{
        ref:"group:menuItemEvents",
        refs:[
            "method:MenuItem.click"
        ],
        name:"menuItemEvents",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Calendar.getMonthViewHoverHTML":{
        ref:"method:Calendar.getMonthViewHoverHTML",
        flags:"",
        description:" This method returns the hover HTML to be displayed when the user hovers over a cell\n displayed in the calendar month view tab.\n <P>\n Default implementation will display a list of the events occurring on the date the user is\n hovering over. Override for custom behavior. Note that returning null will suppress the\n hover altogether.\n\n",
        name:"getMonthViewHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"Date the user is hovering over",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"array of events occurring on the current date. May be empty.",
                optional:false,
                name:"events",
                defaultValue:null,
                type:"Array of CalendarEvent"
            }
        ],
        returns:{
            description:"HTML string to display",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "method:Window.close":{
        ref:"method:Window.close",
        flags:"",
        description:" Close this window. \n This method is fired by the default ${isc.DocUtils.linkForRef('method:Window.closeClick')} implementation.\n Default implementation will hide the window.\n",
        name:"close",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "method:ListGridField.defaultDynamicValue":{
        ref:"method:ListGridField.defaultDynamicValue",
        flags:"",
        description:" If this field ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit','can be edited')}, this property can be used to\n set a dynamic default value which will show up in editors for this field.\n Will be applied to the editor for the field as ${isc.DocUtils.linkForRef('method:FormItem.defaultDynamicValue')}\n\n",
        name:"defaultDynamicValue",
        seeAlso:[
        ],
        params:[
            {
                description:"The editor for the cell itself (also available as \"this\").                              Note that in addition to the standard FormItem APIs available\n                              on the editor, it also has:<br>\n                              - a pointer back to the containing listGrid\n                              [<code>item.grid</code>]<br>\n                              - the colNum being edited [<code>item.colNum</code>]<br>\n                              - the rowNum being edited [<code>item.rowNum</code>]",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the current set of values for the form as a whole",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:DataSourceField.viewRequires":{
        ref:"attr:DataSourceField.viewRequires",
        flags:"IR",
        description:"Indicates that the specified ${isc.DocUtils.linkForRef('type:VelocityExpression')} must evaluate to true if\n values for the field are to be fetched.  If the specified expression does not evaluate\n to true, the field will be dropped as described for \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresAuthentication','viewRequiresAuthentication')}.\n <p>\n In addition to the normal context variables available to Velocity expressions in SmartClient,\n expressions you write for field-level <code>requires</code> clauses - <code>viewRequires</code>, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequires','editRequires')}, ${isc.DocUtils.linkForRef('attr:DataSourceField.initRequires','initRequires')} and \n ${isc.DocUtils.linkForRef('attr:DataSourceField.updateRequires','updateRequires')} - can reference two additional variables: \n <code>$fieldName</code> and <code>$dsName</code>.  These are the names of the dataSource and \n field currently undergoing <code>requires</code> checks.  They are helpful because they allow\n you to write a generic checker function that can be used to handle <code>requires</code>\n checks for multiple fields and dataSources.",
        name:"viewRequires",
        seeAlso:[
            {
                ref:"attr:DataSourceField.viewRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.viewRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.editRequires",
                description:null
            }
        ],
        valueType:"VelocityExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:GridRenderer.wrapCells":{
        ref:"attr:GridRenderer.wrapCells",
        flags:"IRWA",
        description:"Should content within cells be allowed to wrap?",
        name:"wrapCells",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "attr:ToolStripGroup.controls":{
        ref:"attr:ToolStripGroup.controls",
        flags:"IRW",
        description:"The array of controls to show in this group.",
        name:"controls",
        setter:[
            "setControls"
        ],
        seeAlso:[
        ],
        valueType:"Array of Widget",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "method:List.setLength":{
        ref:"method:List.setLength",
        flags:"",
        description:" Set the length of this list.\n <P>\n If the length of the list is shortened, any elements past the new length of the list are removed.\n If the length is increased, all positions past the old length have the value\n <code>undefined</code>.\n\n",
        name:"setLength",
        seeAlso:[
        ],
        params:[
            {
                description:"new length",
                optional:false,
                name:"length",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "attr:CubeGrid.autoFetchData":{
        ref:"attr:CubeGrid.autoFetchData",
        flags:"IR",
        description:"If true, when this component is first drawn, automatically call <code>this.fetchData()</code>.\n Criteria for this fetch may be picked up from ${isc.DocUtils.linkForRef('attr:CubeGrid.initialCriteria')}, and textMatchStyle may\n be specified via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}.\n <P>\n <span style='color:red'>NOTE:</span> if <code>autoFetchData</code> is set, calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} before draw will cause two requests to be issued, one from the manual\n call to fetchData() and one from the autoFetchData setting.  The second request will use\n only ${isc.DocUtils.linkForRef('attr:CubeGrid.initialCriteria')} and not any other criteria or settings from the first request.\n Generally, turn off autoFetchData if you are going to manually call ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} at any time.",
        name:"autoFetchData",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fetchOperation')}"
        ],
        definingClass:"class:CubeGrid",
        groups:[
            "databinding"
        ]
    },
    "classMethod:Time.getDefaultDisplayTimezone":{
        ref:"classMethod:Time.getDefaultDisplayTimezone",
        flags:"",
        description:" Returns the default display timezone set up by ${isc.DocUtils.linkForRef('classMethod:Time.setDefaultDisplayTimezone')}.\n If no explicit timezone has been set this will return the browser locale timezone offset.\n",
        name:"getDefaultDisplayTimezone",
        seeAlso:[
        ],
        returns:{
            description:"String of the format <code>+/-HH:MM</code>",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Time"
    },
    "group:display_values":{
        ref:"group:display_values",
        refs:[
            "method:ListGridField.getCellValue",
            "method:ListGridField.formatCellValue",
            "method:ListGrid.formatCellValue",
            "method:MetricSettings.formatAxisValue",
            "method:MetricSettings.formatDataValue",
            "method:FacetChart.formatAxisValue",
            "method:FacetChart.formatDataValue",
            "method:FormItem.getValueFieldName",
            "method:FormItem.getOptionDataSource",
            "method:FormItem.invalidateDisplayValueCache",
            "method:FormItem.getSelectedRecord",
            "method:PickList.getValueFieldName",
            "method:SelectItem.getValueFieldName",
            "method:SelectItem.getSelectedRecord",
            "method:ComboBoxItem.getValueFieldName",
            "method:ComboBoxItem.getSelectedRecord",
            "method:PickTreeItem.setEmptyDisplayValue",
            "attr:ListGridRecord.linkText",
            "attr:ListGrid.autoFetchDisplayMap",
            "attr:ListGridField.linkText",
            "attr:ListGridField.linkTextProperty",
            "attr:ListGridField.valueMap",
            "attr:ListGridField.emptyCellValue",
            "attr:ListGridField.autoFetchDisplayMap",
            "attr:ListGridField.optionTextMatchStyle",
            "attr:ListGridField.optionFilterContext",
            "attr:ListGridField.optionOperationId",
            "attr:ListGridField.optionDataSource",
            "attr:ListGridField.valueField",
            "attr:ListGridField.displayField",
            "attr:ListGridField.sortByDisplayField",
            "attr:ListGridField.optionCriteria",
            "attr:ListGridField.includeFrom",
            "attr:ListGrid.linkTextProperty",
            "attr:FormItem.emptyDisplayValue",
            "attr:FormItem.optionDataSource",
            "attr:FormItem.valueField",
            "attr:FormItem.displayField",
            "attr:FormItem.multipleValueSeparator",
            "attr:FormItem.fetchMissingValues",
            "attr:FormItem.alwaysFetchMissingValues",
            "attr:FormItem.loadingDisplayValue",
            "attr:FormItem.filterLocally",
            "attr:PickList.valueField",
            "attr:PickList.displayField",
            "attr:SelectItem.emptyDisplayValue",
            "attr:SelectItem.displayField",
            "attr:SelectItem.valueField",
            "attr:ComboBoxItem.displayField",
            "attr:ComboBoxItem.valueField",
            "attr:PickTreeItem.emptyDisplayValue",
            "attr:PickTreeItem.optionDataSource"
        ],
        name:"display_values",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.expansionComponentPoolingMode":{
        ref:"attr:ListGrid.expansionComponentPoolingMode",
        flags:"IRWA",
        description:"The method of ${isc.DocUtils.linkForRef('type:RecordComponentPoolingMode','component-pooling')} to employ for\n ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords','expansionComponents')}.\n <P>\n The default mode is \"destroy\", which means that automatically created expansionComponents\n are destroyed when rows are collapsed.",
        name:"expansionComponentPoolingMode",
        seeAlso:[
        ],
        valueType:"ExpansionComponentPoolingMode",
        defaultValue:"\"destroy\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DSRequest.exportHeader":{
        ref:"attr:DSRequest.exportHeader",
        flags:"IR",
        description:"Optional text to appear at the beginning of the file.",
        name:"exportHeader",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:DynamicForm.getEditorType":{
        ref:"method:DynamicForm.getEditorType",
        flags:"A",
        description:"\n Returns the form item type (Class Name) to be created for some field.<br>\n By default <code>field.editorType</code> will be used if present - otherwise backs off to\n deriving the appropriate form item type from the data type of the field (see\n ${isc.DocUtils.linkForRef('type:FormItemType')} for details.\n\n",
        name:"getEditorType",
        seeAlso:[
        ],
        params:[
            {
                description:"field definition for which we are deriving form item type.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"form item type for the field",
            type:"string"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "editing"
        ]
    },
    "group:autoDraw":{
        ref:"group:autoDraw",
        refs:[
            "classMethod:isc.setAutoDraw"
        ],
        name:"autoDraw",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DSRequest.data":{
        ref:"attr:DSRequest.data",
        flags:"IR",
        description:"Data, such as search criteria or an updated record, to be acted upon.  Contents differ by\n <code>operationType</code>, see ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource Operations')} for\n details.\n <P>\n This field is generally filled in by passing the \"data\" argument to methods such as\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}.",
        name:"data",
        seeAlso:[
        ],
        valueType:"Object or Array of Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:DateRangeItem.fromField":{
        ref:"attr:DateRangeItem.fromField",
        flags:"IR",
        description:"The field for the \"from\" date - a ${isc.DocUtils.linkForRef('class:RelativeDateItem')} or ${isc.DocUtils.linkForRef('class:DateItem')} according to\n ${isc.DocUtils.linkForRef('attr:DateRangeItem.allowRelativeDates')}.",
        name:"fromField",
        seeAlso:[
        ],
        valueType:"AutoChild FormItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:SelectItem.allowEmptyValue":{
        ref:"attr:SelectItem.allowEmptyValue",
        flags:"IRW",
        description:"If set to true, always show an empty option in this item's pickList, allowing the user\n to clear the value (even if there is no empty entry in the valueMap for the item).\n <P>\n The empty value will be displayed with the\n ${isc.DocUtils.linkForRef('attr:FormItem.emptyDisplayValue','emptyDisplayValue')}.\n <P>\n With a ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource','databound selectItem')}, enabling\n <code>allowEmptyValue</code> disables data paging - all data matching the\n ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria','current criteria')} will be requested.",
        name:"allowEmptyValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "type:DialogButtons":{
        ref:"type:DialogButtons",
        values:[
            {
                description:"Dismisses dialog<smartclient> by calling ${isc.DocUtils.linkForRef('method:Dialog.okClick')}</smartclient>.              Title derived from ${isc.DocUtils.linkForRef('classAttr:Dialog.OK_BUTTON_TITLE')}.",
                value:"OK"
            },
            {
                description:"Does not dismiss dialog.  <smartgwt>Handle via ${isc.DocUtils.linkForRef('method:Dialog.buttonClick')}</smartgwt>          <smartclient>Calls ${isc.DocUtils.linkForRef('method:Dialog.applyClick')}</smartclient>\n              Title derived from ${isc.DocUtils.linkForRef('classAttr:Dialog.APPLY_BUTTON_TITLE')}.",
                value:"APPLY"
            },
            {
                description:"Dismisses dialog<smartclient> by calling ${isc.DocUtils.linkForRef('method:Dialog.yesClick')}</smartclient>.              Title derived from ${isc.DocUtils.linkForRef('classAttr:Dialog.YES_BUTTON_TITLE')}.",
                value:"YES"
            },
            {
                description:"Dismisses dialog<smartclient> by calling ${isc.DocUtils.linkForRef('method:Dialog.noClick')}</smartclient>.              Title derived from ${isc.DocUtils.linkForRef('classAttr:Dialog.NO_BUTTON_TITLE')}.",
                value:"NO"
            },
            {
                description:"Dismisses dialog<smartclient> by calling ${isc.DocUtils.linkForRef('method:Dialog.cancelClick')}</smartclient>.                  Title derived from ${isc.DocUtils.linkForRef('classAttr:Dialog.CANCEL_BUTTON_TITLE')}.",
                value:"CANCEL"
            },
            {
                description:"Dismisses dialog<smartclient> by calling ${isc.DocUtils.linkForRef('method:Dialog.doneClick')}</smartclient>.                   Title derived from ${isc.DocUtils.linkForRef('classAttr:Dialog.DONE_BUTTON_TITLE')}.",
                value:"DONE"
            }
        ],
        description:"Default buttons that you can use in your Dialogs.\n <p>\n <smartgwt>\n Each <code>DialogButtons</code> enum value has a same-named static Button on the Dialog\n class, and these buttons can be passed to ${isc.DocUtils.linkForRef('attr:Dialog.buttons','Dialog.setButtons()')}:\n <pre>\n   Dialog.setButtons(Dialog.OK, Dialog.CANCEL);\n </pre>\n </smartgwt>\n <smartclient>\n Refer to these buttons via the syntax <code>isc.Dialog.OK</code> when passing them into\n ${isc.DocUtils.linkForRef('attr:Dialog.buttons')} or into the <code>properties</code> argument of helper\n methods such as ${isc.DocUtils.linkForRef('classMethod:isc.say')}.\n </smartclient>\n <p>\n All buttons added via <code>setButtons</code> will fire the\n ${isc.DocUtils.linkForRef('method:Dialog.buttonClick','buttonClick event')} (whether they are built-in or custom\n buttons).  Built-in buttons automatically close a Dialog, with the exception of the\n \"Apply\" button.",
        name:"DialogButtons",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DrawItem.dragStart":{
        ref:"method:DrawItem.dragStart",
        flags:"",
        description:" Notification fired when the user starts to drag this DrawItem. Will only fire if ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag','canDrag')}\n is true.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"dragStart",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag action.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragPan')}"
        ],
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:ListGrid.groupTitleColumnDefaults":{
        ref:"attr:ListGrid.groupTitleColumnDefaults",
        flags:"IR",
        description:"Default properties for the automatically generated <code>groupTitleColumn</code>.\n Default object includes properties to enable autoFitWidth to group title values.\n <P>\n To modify the behavior or appearance of this column, developers may set\n ${isc.DocUtils.linkForRef('attr:ListGrid.groupTitleColumnProperties')} at the instance level, or override this\n object at the class level. If overriding this object, we recommend using\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} rather than replacing this object entirely.\n <P>\n See ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupTitleColumn')} for an overview of the groupTitleColumn.",
        name:"groupTitleColumnDefaults",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"object",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:Tree.isDescendantOf":{
        ref:"method:Tree.isDescendantOf",
        flags:"",
        description:"\t\t\tIs one node a descendant of the other?\n\n",
        name:"isDescendantOf",
        seeAlso:[
        ],
        params:[
            {
                description:"child node",
                optional:false,
                name:"child",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"parent node",
                optional:false,
                name:"parent",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true == parent is an ancestor of child",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:GridRenderer.getRowPageTop":{
        ref:"method:GridRenderer.getRowPageTop",
        flags:"A",
        description:" Returns the Y-coordinate for a given row number as a page-relative coordinate.  See\n ${isc.DocUtils.linkForRef('method:GridRenderer.getRowTop')}.\n\n",
        name:"getRowPageTop",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Y-coordinate",
            type:"int"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "positioning"
        ]
    },
    "attr:Button.iconAlign":{
        ref:"attr:Button.iconAlign",
        flags:"IR",
        description:"If this button is showing an icon should it be right or left aligned?",
        name:"iconAlign",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "classAttr:Log.stackTracePriority":{
        ref:"classAttr:Log.stackTracePriority",
        flags:"IRWA",
        description:"At this priority and above, a stack trace will be included automatically along with the log\n message itself.",
        name:"stackTracePriority",
        seeAlso:[
        ],
        valueType:"LogPriority",
        defaultValue:"Log.ERROR",
        type:"classAttr",
        definingClass:"class:Log"
    },
    "attr:Calendar.selectedCellStyle":{
        ref:"attr:Calendar.selectedCellStyle",
        flags:"IRW",
        description:"The base name for the CSS class applied to a cell that is selected via a mouse drag.",
        name:"selectedCellStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"calendarCellSelected\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "class:RichTextEditor":{
        methods:[
            "method:RichTextEditor.doWarn",
            "method:RichTextEditor.richEditorSupported",
            "method:RichTextEditor.setMoveFocusOnTab",
            "method:RichTextEditor.getValue",
            "method:RichTextEditor.setValue"
        ],
        ref:"class:RichTextEditor",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:RichTextEditor.editArea",
            "attr:RichTextEditor.editAreaBackgroundColor",
            "attr:RichTextEditor.value",
            "attr:RichTextEditor.toolArea",
            "attr:RichTextEditor.toolbar",
            "attr:RichTextEditor.toolbarBackgroundColor",
            "attr:RichTextEditor.controlGroups",
            "attr:RichTextEditor.styleControls",
            "attr:RichTextEditor.fontControls",
            "attr:RichTextEditor.fontNames",
            "attr:RichTextEditor.fontSizes",
            "attr:RichTextEditor.formatControls",
            "attr:RichTextEditor.colorControls",
            "attr:RichTextEditor.bulletControls",
            "attr:RichTextEditor.moveFocusOnTab",
            "attr:RichTextEditor.listPropertiesDialog"
        ],
        description:"RichTextEditing component.  Provides a rich-text editing area along with UI for executing\n rich-text commands on selected content.\n <p>\n The HTML generated from this component may vary by browser, and, as with any HTML \n value created on the client, we recommend values be sanitized on the server before \n storing and displaying to other users.",
        name:"RichTextEditor",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('RichTextEditor')}"
        ]
    },
    "attr:Splitbar.showClosedGrip":{
        ref:"attr:Splitbar.showClosedGrip",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:Splitbar.showGrip')} is true, this property determines whether the grip image\n displayed should show the <code>\"Closed\"</code> state when the ${isc.DocUtils.linkForRef('attr:Splitbar.target')} \n is hidden. Note that if ${isc.DocUtils.linkForRef('attr:Splitbar.invertClosedGripIfTargetAfter')} is true, we\n may show the \"closed\" state when the target is visible, rather than when it is hidden.",
        name:"showClosedGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "grip"
        ]
    },
    "attr:Menu.checkmarkDisabledImage":{
        ref:"attr:Menu.checkmarkDisabledImage",
        flags:"IR",
        description:"Default image to display for disabled checkmarked items. See ${isc.DocUtils.linkForRef('object:ImgProperties')}\n for format. Valid src, width and height must be specified.",
        name:"checkmarkDisabledImage",
        seeAlso:[
        ],
        valueType:"Img Properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:Menu"
    },
    "attr:Canvas.enabled":{
        deprecated:"As of SmartClient version 5.5 this property has been deprecated. The   ${isc.DocUtils.linkForRef('attr:Canvas.disabled')} property will be used to govern enabled/disabled state instead\n  if <code>this.enabled</code> has not been changed from its default value.",
        flags:"IRWA",
        type:"attr",
        ref:"attr:Canvas.enabled",
        description:"If set to true, this widget will be enabled, if set to false, or null, this\n widget will be disabled.",
        name:"enabled",
        setter:[
            "setEnabled"
        ],
        valueType:"boolean",
        seeAlso:[
        ],
        defaultValue:"\"unset\"",
        groups:[
            "enable"
        ],
        definingClass:"class:Canvas"
    },
    "attr:ListGrid.canGroupBy":{
        ref:"attr:ListGrid.canGroupBy",
        flags:"IRW",
        description:"If false, grouping via context menu will be disabled.",
        name:"canGroupBy",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:OperationBinding.responseDataSchema":{
        ref:"attr:OperationBinding.responseDataSchema",
        flags:"IRA",
        description:"Optional schema describing how to extract DataSource records from the XML elements selected.\n <P>\n Once a set of XML elements have been selected via <code>recordXPath</code> or\n <code>recordName</code>, those elements are normally transformed to JavaScript objects\n using the <code>fields</code> of the DataSource that owns the operationBinding.  A\n <code>responseDataSchema</code> can be specified instead if the XML differs in some way between\n different DataSource operations, such that different values for\n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath','field.valueXPath')} may be necessary to extract the same\n DataSource record from slightly different XML structures.",
        name:"responseDataSchema",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:Canvas.showResizeBar":{
        ref:"attr:Canvas.showResizeBar",
        flags:"IRW",
        description:"When this Canvas is included as a member in a ${isc.DocUtils.linkForRef('class:Layout')}, whether a resizeBar should be shown\n after this member in the layout, to allow it to be resized.\n <p>\n Whether a resizeBar is actually shown also depends on the \n ${isc.DocUtils.linkForRef('attr:Layout.defaultResizeBars','defaultResizeBars')} attribute of the layout, and whether this\n Canvas is the last layout member.\n <p>\n By default the resize bar acts on the Canvas that it is declared on.  If you want the resize\n bar to instead act on the next member of the Layout (e.g. to collapse down or to the right),\n set ${isc.DocUtils.linkForRef('attr:Canvas.resizeBarTarget')} as well.",
        name:"showResizeBar",
        setter:[
            "setShowResizeBar"
        ],
        seeAlso:[
            {
                ref:"attr:Canvas.resizeBarTarget",
                description:null
            },
            {
                ref:"attr:Layout.defaultResizeBars",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('layoutNesting')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "layoutMember"
        ]
    },
    "classMethod:isc.firstKey":{
        ref:"classMethod:isc.firstKey",
        flags:"",
        description:" Return the first property name in a given Object, according to for..in iteration order.\n\n",
        name:"firstKey",
        seeAlso:[
        ],
        params:[
            {
                description:"Object to get properties from",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"Object"
            }
        ],
        returns:{
            description:"first property name, or null if Object has no properties",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:DrawItem.lineWidth":{
        ref:"attr:DrawItem.lineWidth",
        flags:"IRW",
        description:"Pixel width for lines.",
        name:"lineWidth",
        setter:[
            "setLineWidth"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"3",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "line"
        ]
    },
    "method:TreeGrid.setSelectedPaths":{
        ref:"method:TreeGrid.setSelectedPaths",
        flags:"",
        description:" Reset this grid's selection to match the ${isc.DocUtils.linkForRef('type:ListGridSelectedState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to \n ${isc.DocUtils.linkForRef('method:TreeGrid.getSelectedPaths')}.\n\n",
        name:"setSelectedPaths",
        seeAlso:[
            {
                ref:"method:TreeGrid.getSelectedPaths",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired selection state of                                              the grid",
                optional:false,
                name:"selectedPaths",
                defaultValue:null,
                type:"ListGridSelectedState"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:Progressbar.percentDone":{
        ref:"attr:Progressbar.percentDone",
        flags:"IRW",
        description:"Number from 0 to 100, inclusive, for the percentage to be displayed graphically in\n this progressbar.",
        name:"percentDone",
        setter:[
            "setPercentDone"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Progressbar",
        groups:[
            "appearance"
        ]
    },
    "method:MenuBar.showMenu":{
        ref:"method:MenuBar.showMenu",
        flags:"",
        description:" Shows (opens) a menu.\n",
        name:"showMenu",
        seeAlso:[
        ],
        params:[
            {
                description:"menu to show (may be specified as a menu object, or index of                                   the menu from ${isc.DocUtils.linkForRef('attr:MenuBar.menus','this.menus')}).",
                optional:false,
                name:"menu",
                defaultValue:null,
                type:"Menu | integer"
            }
        ],
        type:"method",
        definingClass:"class:MenuBar"
    },
    "classMethod:ResultSet.getLoadingMarker":{
        ref:"classMethod:ResultSet.getLoadingMarker",
        flags:"",
        description:" Return the singleton marker object that is used as a placeholder for records that are being\n loaded from the server.\n",
        name:"getLoadingMarker",
        seeAlso:[
        ],
        returns:{
            description:"the loading marker",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:ResultSet"
    },
    "attr:SectionHeader.title":{
        ref:"attr:SectionHeader.title",
        flags:"IRW",
        description:"Title to show for the section",
        name:"title",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SectionHeader"
    },
    "attr:ListGrid.recordCustomStyleProperty":{
        ref:"attr:ListGrid.recordCustomStyleProperty",
        flags:"IRW",
        description:"Denotes the name of a property that can be set on records to display a custom style.\n For example if this property is set to <code>\"customStyle\"</code>, setting \n <code>record.customStyle</code> to a css styleName will cause the record in question to\n render out with that styling applied to it.  Note that this will be a static \n style - it will not be modified as the state of the record (selected / over etc) changes.",
        name:"recordCustomStyleProperty",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellStyle",
                description:null
            },
            {
                ref:"attr:ListGrid.recordBaseStyleProperty",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"customStyle\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:LoginDialog.allowBlankPassword":{
        ref:"attr:LoginDialog.allowBlankPassword",
        flags:"IR",
        description:"If true, the login form will allow blank passwords to be submitted. Otherwise\n the form fails to be validated until the user enters at least one character into\n the password field.",
        name:"allowBlankPassword",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:Tree.isFolder":{
        ref:"method:Tree.isFolder",
        flags:"",
        description:"\n Determines whether a particular node is a folder.  The logic works as follows:<br><br>\n <ul>\n <li> If the ${isc.DocUtils.linkForRef('object:TreeNode')} has a value for the ${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty')}\n (${isc.DocUtils.linkForRef('attr:TreeNode.isFolder')} by default) that value is returned.\n <li> Next, the existence of the ${isc.DocUtils.linkForRef('attr:Tree.childrenProperty')} (by default\n ${isc.DocUtils.linkForRef('attr:TreeNode.children')}) is checked on the ${isc.DocUtils.linkForRef('object:TreeNode')}.  If the node has the children\n property defined (regardless of whether it actually has any children), then isFolder()\n returns true for that node.\n </ul>\n <P>\n You can override this method to provide your own interpretation of what constitutes a folder.\n\n",
        name:"isFolder",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the node is a folder",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:TabSet.paneContainerOverflow":{
        ref:"attr:TabSet.paneContainerOverflow",
        flags:"IRWA",
        description:"Specifies the overflow of the pane container (the component that holds the pane contents\n for all tabs).  By default this is set to \"auto\", meaning the pane container will\n automatically introduce scrolling when the pane contents exceed the TabSet's specified\n size.\n <p>\n For other values and their meaning, see ${isc.DocUtils.linkForRef('type:Overflow')}",
        name:"paneContainerOverflow",
        setter:[
            "setPaneContainerOverflow"
        ],
        seeAlso:[
        ],
        valueType:"Overflow",
        defaultValue:"Canvas.AUTO",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:ListGridField.hiliteIconHeight":{
        ref:"attr:ListGridField.hiliteIconHeight",
        flags:"IRW",
        description:"Height for hilite icons for this field.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconSize')}, ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconHeight')}, and\n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconSize')}.",
        name:"hiliteIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "hiliting"
        ]
    },
    "method:TimeItem.setMinutes":{
        ref:"method:TimeItem.setMinutes",
        flags:"A",
        description:" Set the minute value of this TimeItem.\n If the item value has not been initialized with ${isc.DocUtils.linkForRef('method:TimeItem.setValue','setValue()')}, \n the hour will be established to current hour.\n <P>\n You can use ${isc.DocUtils.linkForRef('method:TimeItem.setValue','setValue()')} to set both hours and minutes at the same time.\n <P>\n <smartgwt>\n setMinutes() cannot be called until the item has been added to a DynamicForm and the form has been drawn.\n </smartgwt>    \n",
        name:"setMinutes",
        seeAlso:[
        ],
        params:[
            {
                description:"new minutes value for this TimeItem.",
                optional:false,
                name:"minutes",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:SectionStack.visibilityMode":{
        ref:"attr:SectionStack.visibilityMode",
        flags:"IRW",
        description:"Whether multiple sections can be visible at once",
        name:"visibilityMode",
        seeAlso:[
            {
                ref:"type:VisibilityMode",
                description:null
            }
        ],
        valueType:"VisibilityMode",
        defaultValue:"\"mutex\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsExpandCollapse')}"
        ],
        definingClass:"class:SectionStack"
    },
    "classAttr:RPCManager.credentialsURL":{
        ref:"classAttr:RPCManager.credentialsURL",
        flags:"RWA",
        description:"Specifies URL where credentials should be submitted to attempt relogin when session\n timeout is encountered during a background RPC.  See ${isc.DocUtils.linkForRef('group:relogin','Relogin')}",
        name:"credentialsURL",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"RPCManager.credentialsURL",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "relogin"
        ]
    },
    "method:StatefulCanvas.setIconStyle":{
        ref:"method:StatefulCanvas.setIconStyle",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:StatefulCanvas.iconStyle')}.\n",
        name:"setIconStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"the new <code>iconStyle</code> (may be <code>null</code> to remove the className on the image).",
                optional:false,
                name:"iconStyle",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas"
    },
    "method:SectionHeader.getSectionStack":{
        ref:"method:SectionHeader.getSectionStack",
        flags:"",
        description:" For a SectionHeader embedded in a SectionStack, this method will return \n a pointer to the ${isc.DocUtils.linkForRef('class:SectionStack')} in which this section header is\n embedded.\n",
        name:"getSectionStack",
        seeAlso:[
        ],
        returns:{
            description:"Section Stack containing this section header",
            type:"SectionStack"
        },
        type:"method",
        definingClass:"class:SectionHeader"
    },
    "attr:DataBoundComponent.dataArity":{
        ref:"attr:DataBoundComponent.dataArity",
        flags:"IRWA",
        description:"Does this component represent singular or multiple \"records\" objects?\n Options are \"multiple\" or \"single\", or \"either\"",
        name:"dataArity",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"multiple\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ComboBoxItem.pickerIconSrc":{
        ref:"attr:ComboBoxItem.pickerIconSrc",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ComboBoxItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.src','src')} of the picker icon image to be displayed.",
        name:"pickerIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/ComboBoxItem_PickButton_icon.gif\"",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:ListGrid.confirmDiscardEditsMessage":{
        ref:"attr:ListGrid.confirmDiscardEditsMessage",
        flags:"IRW",
        description:"If <code>this.confirmDiscardEdits</code> is true, this property can be used to customize the\n error message string displayed to the user in a dialog with options to\n cancel the action, or save or discard pending edits in response to sort/filter actions\n that would otherwise drop unsaved edit values.",
        name:"confirmDiscardEditsMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"This action will discard unsaved changes for this list.\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing",
            "i18nMessages"
        ]
    },
    "classMethod:RPCManager.suspendTransaction":{
        ref:"classMethod:RPCManager.suspendTransaction",
        flags:"A",
        description:" Suspends the current transaction, such that all processing of the transaction is halted,\n any remaining ${isc.DocUtils.linkForRef('attr:RPCRequest.callback','callbacks')} in the transaction won't fire, and\n the transaction can never ${isc.DocUtils.linkForRef('attr:RPCRequest.timeout','timeout')}.\n <P>\n <code>suspendTransaction()</code> is typically used to handle total failures for an\n entire transaction, such as HTTP status 500, or session timeout resulting in\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.loginRequired','loginRequired()')} being called.  In both cases the intent\n is to put the transaction on hold so that a transient problem can be resolved, and then\n the transaction can be re-sent successfully.  By using suspendTransaction(), components\n that submitted requests never realize there was a transient failure, and so error\n handling logic does not have to be implemented in every component.\n <P>\n Generally you can only validly suspend a transaction from either\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.loginRequired')} or ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')}, and in the case of\n handleError(), only when the first response in the transaction has an error.  Suspending\n and re-sending a partially processed transaction means that some responses will be\n processed twice, with undefined results for requests issued automatically by UI\n components.\n <P>\n A suspended transaction must ultimately be either cleared via\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.clearTransaction')} or re-sent via ${isc.DocUtils.linkForRef('classMethod:RPCManager.resendTransaction')} or memory will be\n leaked.\n\n",
        name:"suspendTransaction",
        seeAlso:[
            {
                ref:"classMethod:RPCManager.resendTransaction",
                description:null
            }
        ],
        params:[
            {
                description:"transaction to delay.  Defaults to the                      current transaction if there is one",
                optional:true,
                name:"transaction",
                defaultValue:null,
                type:"transaction Obj or ID"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "classAttr:GroupingMessages.upcomingNextWeekTitle":{
        ref:"classAttr:GroupingMessages.upcomingNextWeekTitle",
        flags:"IRW",
        description:"When a ${isc.DocUtils.linkForRef('class:ListGrid')} is grouped by a date field in 'Upcoming' mode, \n this is the group title for all records in which the grouped date field occurs next week, \n relative to the current date.",
        name:"upcomingNextWeekTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Next Week\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TabBar.moreTab":{
        ref:"attr:TabBar.moreTab",
        flags:"IR",
        description:"Tab to show as the \"more\" tab when ${isc.DocUtils.linkForRef('attr:TabBar.showMoreTab')} is enabled and the number\n of tabs to show exceeds ${isc.DocUtils.linkForRef('attr:TabBar.moreTabCount')}.",
        name:"moreTab",
        seeAlso:[
        ],
        valueType:"Tab",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabBar"
    },
    "attr:FormItem.fetchMissingValues":{
        ref:"attr:FormItem.fetchMissingValues",
        flags:"IRWA",
        description:"If this form item has a specified ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}, should the\n item ever perform a fetch against this dataSource to retrieve the related record.\n <P>\n The fetch occurs if the item value is non null on initial draw of the form\n or whenever setValue() is called. Once the fetch completes, the returned record \n is available via the ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord')} api.\n <P>\n By default, a fetch will only occur if ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} is specified, and\n the item does not have an explicit ${isc.DocUtils.linkForRef('attr:FormItem.valueMap')} containing the\n data value as a key.<br>\n However you can also set ${isc.DocUtils.linkForRef('attr:FormItem.alwaysFetchMissingValues')} to have a fetch occur\n even if no <code>displayField</code> is specified. This ensures \n ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord')} will return a record if possible - useful for\n custom formatter functions, etc.\n <P>\n Note - for efficiency we cache the associated record once a fetch has been performed, meaning\n if the value changes, then reverts to a previously seen value, we do not kick\n off an additional fetch to pick up the display value for the previously seen data value.\n If necessary this cache may be explicitly invalidated via a call to \n ${isc.DocUtils.linkForRef('method:FormItem.invalidateDisplayValueCache')}",
        name:"fetchMissingValues",
        seeAlso:[
            {
                ref:"attr:FormItem.optionDataSource",
                description:null
            },
            {
                ref:"method:FormItem.getSelectedRecord",
                description:null
            },
            {
                ref:"attr:FormItem.filterLocally",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "attr:TreeGrid.dropIconSuffix":{
        ref:"attr:TreeGrid.dropIconSuffix",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeGrid.showDropIcons')} is true, this suffix will be appended to the\n ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} when the user drop-hovers over some folder.",
        name:"dropIconSuffix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"drop\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "attr:Dialog.messageIcon":{
        ref:"attr:Dialog.messageIcon",
        flags:"IR",
        description:"AutoChild that shows ${isc.DocUtils.linkForRef('attr:Dialog.icon')}.",
        name:"messageIcon",
        seeAlso:[
        ],
        valueType:"Img AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:CubeGrid.facetLabelHoverHeight":{
        ref:"attr:CubeGrid.facetLabelHoverHeight",
        flags:"IRWA",
        description:"If specified and <code>this.showHover</code> is true, this is the default height to apply\n to hover tips shown for facetLabels. If unset, the hover canvas will be sized to \n <code>this.hoverHeight</code> if specified instead.",
        name:"facetLabelHoverHeight",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverHeight",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "attr:GridRenderer.alternateRowStyles":{
        ref:"attr:GridRenderer.alternateRowStyles",
        flags:"IRW",
        description:"Whether alternating rows should be drawn in alternating styles, in order to create a \"ledger\"\n effect for easier reading.  If enabled, the cell style for alternate rows will have \"Dark\"\n appended to it.",
        name:"alternateRowStyles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "method:ComboBoxItem.hasAdvancedCriteria":{
        ref:"method:ComboBoxItem.hasAdvancedCriteria",
        flags:"",
        description:" Will this item return advancedCriteria if ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')} is \n called on this item's form?\n Overridden for ComboBoxItem to return true if ${isc.DocUtils.linkForRef('attr:ComboBoxItem.generateExactMatchCriteria')} is true\n - in this case if an exact value is chosen from our set of options (always the\n case if <code>addUnkownValues</code> is false), we will use advancedCriteria to ensure\n the generated search criteria exactly matches the chosen value for this item.\n <P>\n Note that ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} are not supported by all dataSources. When a form is bound\n to a dataSource, we therefore default <code>generateExactMatchCriteria</code> to false unless\n the dataSource is known to support AdvancedCriteria.\n <P>\n As with formItem.hasAdvancedCriteria() this will also return true if a ${isc.DocUtils.linkForRef('object:Operator')}\n was explicitly specified for this item\n",
        name:"hasAdvancedCriteria",
        seeAlso:[
        ],
        returns:{
            description:"true if the result of getCriterion() will be an AdvancedCriteria object.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ComboBoxItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:Facet.showParentsLast":{
        ref:"attr:Facet.showParentsLast",
        flags:"IR",
        description:"Indicates internal hierarchy should be displayed in reverse of normal tree order (so\n that parents follow children).\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"showParentsLast",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:Tree.defaultIsFolder":{
        ref:"attr:Tree.defaultIsFolder",
        flags:"IR",
        description:"Controls whether nodes are assumed to be folders or leaves by default.\n <P>\n Nodes that have children or have the ${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty')} set to true will be considered\n folders by default.  Other nodes will be considered folders or leaves by default according\n to this setting.",
        name:"defaultIsFolder",
        seeAlso:[
            {
                ref:"attr:TreeGrid.loadDataOnDemand",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Tree"
    },
    "method:DrawItem.scaleBy":{
        ref:"method:DrawItem.scaleBy",
        flags:"",
        description:" Scale the shape by the x, y multipliers\n",
        name:"scaleBy",
        seeAlso:[
        ],
        params:[
            {
                description:"scale in the x direction",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"float"
            },
            {
                description:"scale in the y direction",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "group:paging":{
        ref:"group:paging",
        refs:[
            "attr:DSResponse.startRow",
            "attr:DSResponse.endRow",
            "attr:DSResponse.totalRows",
            "attr:DSRequest.startRow",
            "attr:DSRequest.endRow"
        ],
        name:"paging",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MultiFileItem.emptyMessage":{
        ref:"attr:MultiFileItem.emptyMessage",
        flags:"IR",
        description:"Empty message to display when there are no files listed.",
        name:"emptyMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Click icon to add...\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:PresetCriteriaItem.getCriterion":{
        ref:"method:PresetCriteriaItem.getCriterion",
        flags:"",
        description:" Get the criterion based on the value selected by the user.\n\n",
        name:"getCriterion",
        seeAlso:[
        ],
        returns:{
            description:"the criteria for the selected option",
            type:"Criterion or AdvancedCriteria"
        },
        type:"method",
        definingClass:"class:PresetCriteriaItem"
    },
    "attr:TabSet.tabBarControlLayout":{
        ref:"attr:TabSet.tabBarControlLayout",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:AutoChild')} of type ${isc.DocUtils.linkForRef('class:Layout')} that holds the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarControls')} as well as\n the built-in controls such as the ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker','tab picker menu')}.",
        name:"tabBarControlLayout",
        seeAlso:[
        ],
        valueType:"AutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:DrawRect.rounding":{
        ref:"attr:DrawRect.rounding",
        flags:"IR",
        description:"Rounding of corners, from 0 (square corners) to 1.0 (shorter edge is a semicircle).",
        name:"rounding",
        setter:[
            "setRounding"
        ],
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawRect"
    },
    "classAttr:Operators.lessOrEqualTitle":{
        ref:"classAttr:Operators.lessOrEqualTitle",
        flags:"IR",
        description:"Title for the \"lessOrEqual\" operator",
        name:"lessOrEqualTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"less than or equal to\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.minimizeAcceleration":{
        ref:"attr:Window.minimizeAcceleration",
        flags:"IRWA",
        description:"Default acceleration function for performing an animated minimize / maximize.  If unset, \n <code>this.animateAcceleration</code> will be used by default instead",
        name:"minimizeAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header",
            "animation"
        ]
    },
    "method:Class.getSuperClass":{
        ref:"method:Class.getSuperClass",
        flags:"",
        description:"\n\tGets a pointer to the class object for this instance's superclass.\n\n",
        name:"getSuperClass",
        seeAlso:[
        ],
        returns:{
            description:"Class object for superclass.",
            type:"Class"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "method:ImgButton.action":{
        ref:"method:ImgButton.action",
        flags:"",
        description:" This property contains the default 'action' for the Button to fire when activated.\n",
        name:"action",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ImgButton"
    },
    "method:Canvas.getImgURL":{
        ref:"method:Canvas.getImgURL",
        flags:"A",
        description:" Return the full URL for an image to be drawn in this canvas.\n <P>\n If the passed URL begins with the special prefix \"[SKIN]\", it will have the\n widget.skinImgDir and Page.skinImgDir prepended.  Otherwise the image is assumed to be\n application-specific, and will have the widget.appImgDir and Page.appImgDir automatically\n prepended.\n <P>\n Note that if passed an absolute path (starting with \"/\" or \"http://\" for example), no extra\n image directory information will be prepended to the generated URL.//\n\n",
        name:"getImgURL",
        seeAlso:[
        ],
        params:[
            {
                description:"URL local to skin or application image directory",
                optional:false,
                name:"URL",
                defaultValue:null,
                type:"string"
            },
            {
                description:"optional image directory to override the default for this Canvas",
                optional:true,
                name:"imgDir",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"URL to use",
            type:"string"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "images"
        ]
    },
    "attr:DataSourceField.hidden":{
        ref:"attr:DataSourceField.hidden",
        flags:"IR",
        description:"Whether this field should be hidden from users by default within a DataBound component.\n This is generally used for internal IDs and other fields not meaningful to users.\n <P>\n See ${isc.DocUtils.linkForRef('attr:DataSourceField.detail')} for fields that should be hidden in a summary view such as\n a ${isc.DocUtils.linkForRef('class:ListGrid')}, but still available to the user.\n <p>\n <b>NOTE:</b> This property is <b>not</b> a security setting - data for hidden fields is \n still delivered to the client, it just isn't shown to the user.  If you wish to make sure \n that only appropriate data reaches the client, use ${isc.DocUtils.linkForRef('attr:OperationBinding.outputs')},\n ${isc.DocUtils.linkForRef('attr:DataSourceField.canView')}:false on the field, or a field-level declarative security setting like \n ${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresRole')}.",
        name:"hidden",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "attr:SplitPane.showDetailToolStrip":{
        ref:"attr:SplitPane.showDetailToolStrip",
        flags:"IR",
        description:"If set to <code>false</code>, the ${isc.DocUtils.linkForRef('attr:SplitPane.detailToolStrip','detailToolStrip')}\n will not be shown.",
        name:"showDetailToolStrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:Callbacks.RPCCallback":{
        ref:"method:Callbacks.RPCCallback",
        flags:"",
        description:" A ${isc.DocUtils.linkForRef('type:Callback')} to evaluate when an RPCRequest completes.\n <smartclient><p>\n Parameters passed to this callback are:\n <ul>\n <li>rpcResponse: an ${isc.DocUtils.linkForRef('class:RPCResponse')} encapsulating the server response to your\n     request\n <li>data: just the \"data\" property from the RPCResponse, for convenience\n <li>rpcRequest: the ${isc.DocUtils.linkForRef('class:RPCRequest')} that was sent.  You can use\n     ${isc.DocUtils.linkForRef('attr:RPCRequest.clientContext')} to track state during the server turnaround.\n </ul>\n For example, to take the data returned by the server and display it in a previously created\n ListGrid with the ID \"myGrid\":\n <pre>\n     isc.RPCManager.send(\"getData\", \"myGrid.setData(data)\");\n </pre>\n Or\n <pre>\n     isc.RPCManager.send(\"getData\", function (rpcResponse, data, rpcRequest) { \n                                        myGrid.setData(data)\n     });\n </pre></smartclient>\n\n",
        name:"RPCCallback",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            },
            {
                ref:"class:RPCResponse",
                description:null
            }
        ],
        params:[
            {
                description:"response a RPCResponse encapsulating the server response to your request",
                optional:false,
                name:"response",
                defaultValue:null,
                type:"RPCResponse"
            },
            {
                description:"rawData The \"data\" property from the RPCResponse, for convenience.  The data can also be obtained via {@link RPCResponse#getDataAsMap()}, {@link RPCResponse#getDataAsString()},\n or {@link RPCResponse#getDataAsObject()}, depending on the type of data that is expected to be\n returned from the server.",
                optional:false,
                name:"rawData",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the RPCRequest that was sent.",
                optional:false,
                name:"request",
                defaultValue:null,
                type:"RPCRequest"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:DataSourceField.precision":{
        ref:"attr:DataSourceField.precision",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" or \"integer\" and affects how many significant\n digits are shown.\n <P>\n For example, a field value of 343.1, 343.104 and 343.09872677 would all be shown as 343.10\n if precision is 5.\n <P>\n The original value is always shown when the value is edited.",
        name:"precision",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "appearance"
        ]
    },
    "attr:TimeItem.minuteItemTitle":{
        ref:"attr:TimeItem.minuteItemTitle",
        flags:"IRW",
        description:"Title to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.minuteItem','minute picker')}.",
        name:"minuteItemTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Min\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ColumnTree.navigateBack":{
        ref:"method:ColumnTree.navigateBack",
        flags:"",
        description:" Navigate to the previous column.\n\n",
        name:"navigateBack",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "classMethod:AutoTest.getPageCoords":{
        ref:"classMethod:AutoTest.getPageCoords",
        flags:"",
        description:" Returns the page-level coordinates corresponding to the supplied locator.  Note: The\n physical position might change due to app redesign, but these coordinates would still\n reflect the same logical part of the DOM element for components where event position\n matters.\n",
        name:"getPageCoords",
        seeAlso:[
        ],
        params:[
            {
                description:"Locator String previously returned by        ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')}",
                optional:false,
                name:"locator",
                defaultValue:null,
                type:"AutoTestLocator"
            }
        ],
        returns:{
            description:"X, Y page position",
            type:"array"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "method:ComboBoxItem.defaultDynamicValue":{
        ref:"method:ComboBoxItem.defaultDynamicValue",
        flags:"A",
        description:" Expression evaluated to determine the ${isc.DocUtils.linkForRef('attr:ComboBoxItem.defaultValue')} when no value is \n provided for this item. To default to the first option use\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.defaultToFirstOption')} instead.\n",
        name:"defaultDynamicValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "classMethod:Log.applyLogPriorities":{
        ref:"classMethod:Log.applyLogPriorities",
        flags:"",
        description:" Apply a batch a batch of priority settings, as a object mapping category names to priority\n levels.\n\n",
        name:"applyLogPriorities",
        seeAlso:[
        ],
        params:[
            {
                description:"priority settings for multiple categories",
                optional:false,
                name:"settings",
                defaultValue:null,
                type:"Object"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:ListGrid.normalBaseStyle":{
        ref:"attr:ListGrid.normalBaseStyle",
        flags:"IR",
        description:"\"Normal\" baseStyle for this listGrid. Only applies if ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} is\n set to null.\n <P>\n If <code>baseStyle</code> is unset, this\n property will be used as a base cell style if the grid is showing fixed height rows, and\n the specified cellHeight matches ${isc.DocUtils.linkForRef('attr:ListGrid.normalCellHeight')} (and in Internet Explorer,\n ${isc.DocUtils.linkForRef('attr:ListGrid.fastCellUpdates')} is false). Otherwise ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')} will\n be used.\n <P>\n Having separate styles defined for fixed vs. variable height rows allows the developer\n to specify css which is designed to render at a specific height (typically using\n background images, which won't scale), without breaking support for styling rows\n of variable height.",
        name:"normalBaseStyle",
        seeAlso:[
            {
                ref:"method:ListGrid.getBaseStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"cell\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DSRequest.shouldUseCache":{
        ref:"attr:DSRequest.shouldUseCache",
        flags:"IRW",
        description:"This is a per-request flag for explicitly controlling whether the cache is used (bypassing\n it when not wanted, or using it when settings would indicate otherwise). See \n ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')}, ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllOperationId')} and\n ${isc.DocUtils.linkForRef('attr:DataSource.cacheAcrossOperationIds')} for caching management for all requests of a \n dataSource.",
        name:"shouldUseCache",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "group:elements":{
        ref:"group:elements",
        refs:[
            "method:DynamicForm.setItems",
            "method:DynamicForm.setFields",
            "method:DynamicForm.getFields",
            "method:DynamicForm.getItems"
        ],
        description:"Manipulating native form elements",
        name:"elements",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.filterData":{
        ref:"method:ListGrid.filterData",
        flags:"",
        description:" Retrieves data that matches the provided criteria and displays the matching data in this\n component.\n <P>\n This method behaves exactly like ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} except that\n ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')} is automatically set to \"substring\" so that String-valued\n fields are matched by case-insensitive substring comparison.\n\n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria.                       If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed in as this argument\n                      instead of a raw criteria object, will be derived by calling\n                      ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete.  Fires                                          only if server contact was required; see\n                                          ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} for details",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"for databound components only - optional                            additional properties to set on the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundFilter')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:IntegerItem.getValueAsInteger":{
        ref:"method:IntegerItem.getValueAsInteger",
        flags:"",
        description:" Return the value tracked by this form item as a Integer.  If the value cannot\n be parsed to an int that matches the original value, null will be returned.\n\n",
        name:"getValueAsInteger",
        seeAlso:[
            {
                ref:"method:FormItem.getValue",
                description:null
            }
        ],
        returns:{
            description:"value of this element",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:IntegerItem"
    },
    "method:TimeItem.getSecondValues":{
        ref:"method:TimeItem.getSecondValues",
        flags:"A",
        description:" Returns an array of the current valid second values, whether set directly as \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondValues')} or generated according to \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondMinValue','secondMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondMaxValue','secondMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.secondIncrement','secondIncrement')}.\n",
        name:"getSecondValues",
        seeAlso:[
        ],
        returns:{
            description:"array of available Second values",
            type:"Array of Number"
        },
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:TreePalette.componentDefaults":{
        ref:"attr:TreePalette.componentDefaults",
        flags:"IR",
        description:"Defaults to apply to all components originating from this palette.",
        name:"componentDefaults",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreePalette",
        groups:[
            "devTools"
        ]
    },
    "attr:ListGrid.generateClickOnSpace":{
        ref:"attr:ListGrid.generateClickOnSpace",
        flags:"IRWA",
        description:"If true, when the user navigates to a cell using arrow keys and hits space,\n the cell will respond to a click event.",
        name:"generateClickOnSpace",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:DrawSector.getBoundingBox":{
        ref:"method:DrawSector.getBoundingBox",
        flags:"",
        description:" Returns the centerPoint endPoint\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawSector"
    },
    "group:memoryLeaks":{
        ref:"group:memoryLeaks",
        title:"Memory Leaks",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"Care must be taken to avoid memory leaks in your application:<ul>\n <li>Any ${isc.DocUtils.linkForRef('class:Canvas')} (including subclasses) that you're done using should be destroy()d to\n avoid memory leaks.  Since ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} is recursive, you only need to\n call destroy() on the topmost component in any hierarchy of widgets you don't need.  This\n includes ${isc.DocUtils.linkForRef('class:DynamicForm')} automatically destroying ${isc.DocUtils.linkForRef('class:FormItem')}s and ${isc.DocUtils.linkForRef('class:DrawPane')}\n automatically destroying ${isc.DocUtils.linkForRef('class:DrawItem')}s.\n <li>Any ${isc.DocUtils.linkForRef('class:ValuesManager')}s that you are done using should be destroy()d to avoid memory\n leaks, and will never be automatically destroyed as a consequence of destroying any related\n Canvas.\n <li>${isc.DocUtils.linkForRef('class:ResultSet')} and ${isc.DocUtils.linkForRef('class:ResultTree')} instances that you <b>manually</b> create need to\n be destroy()d to avoid leaks.  ResultSet and ResultTree instances automatically created by\n ${isc.DocUtils.linkForRef('class:ListGrid')}s and ${isc.DocUtils.linkForRef('class:TreeGrid')}s (see ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}) do not need to be\n destroy()d as they are automatically destroyed with the creating ListGrid or TreeGrid.\n <smartgwt>${isc.DocUtils.linkForRef('RecordList')}s must be destroy()d as they are registered with the\n ${isc.DocUtils.linkForRef('IDManager')}.</smartgwt>\n <li>If your application creates an unbounded number of DataSources while it is running\n (this is very rare), DataSources that are given a ${isc.DocUtils.linkForRef('attr:DataSource.ID')} need to be destroy()d\n to avoid leaks.  Most applications do not need to worry about this, as they create a fixed set of\n DataSources, and ${isc.DocUtils.linkForRef('classMethod:DataSource.get')} will never cause a leak.\n <li>Any other kinds of SmartClient objects you create will be garbage collected normally.\n </ul>\n <p>\n <h3>Testing for memory leaks</h3>\n <p>\n Seeing the browser's memory use rise dramatically after a given operation does not demonstrate\n a memory leak.  It's normal for browser memory usage to fluctuate wildly, because the browser\n will generally not reclaim resources immediately, and in some cases will not reclaim resources\n until memory is nearly exhausted.  Some browsers will also build up pools of resources for\n later re-use.\n <p>\n The only way to demonstrate a real memory leak is to demonstrate <i>memory exhaustion</i>:\n showing that the browser memory usage rises until all memory is exhausted and errors begin\n to occur.  No other pattern of increasing memory usage - no matter how large - is considered\n evidence of a leak, because the browser may suddenly reclaim very large amounts of memory\n after memory usage rises to a certain trigger point.  Memory exhaustion is the <i>only</i>\n way to demonstrate a real memory leak.\n <p>\n Note that all debugging tools must be closed in order to demonstrate memory exhaustion\n because debugging tools may themselves consume large amounts of memory:\n <ul>\n <li>On the RPC tab of the SmartClient Developer Console, make sure that \"Track RPCs\" is\n     <strong>un</strong>checked and then close the SmartClient Developer Console window.\n <li>If using Chrome's or Safari's developer tools, make sure that the developer tools are\n     closed.\n <li>If using Firebug, close Firebug and restart Firefox, as Firebug may still be active\n     even though closed.\n <li>If using Internet Explorer's Developer Tools, close Developer Tools and restart IE, as\n     the Developer Tools may still be active even though closed.\n </ul>\n <p>\n To demonstrate memory exhaustion, you generally need to take whatever operation you suspect\n of leaking memory and cause it to be repeated thousands or hundreds of thousands of times -\n generally, by performing the same operation multiple times in a loop, or, for asynchronous\n operations like ${isc.DocUtils.linkForRef('class:DataSource')} saves, performing the operation again each time you receive\n notification of completion (via callbacks).\n <p>\n In Windows, you can speed up the process of demonstrating memory exhaustion by disabling\n paging of memory to disk, which causes Windows to use the physical memory of the system\n (RAM) only.  To disable paging, go to Advanced System Settings, and in the \"Virtual Memory\"\n section of the \"Performance\" settings, uncheck the \"Automatically manage paging file size\n for all drives\" checkbox and select \"No paging file\" (this process may differ slightly on\n different versions of Windows).  The system will need to be rebooted for these new settings\n to take effect.\n <p>\n Once paging is disabled, verify that you can still open the browser and load the application\n you intend to test.  There needs to be ample physical memory available for the application\n to use.  A rule of thumb is to have enough available memory for the browser's memory footprint\n to at least quadruple in size or at least 500 MB, which ever is greater.  If the system does\n not have enough physical memory, one option is to re-enable paging, but limit the maximum\n size of the page file to 500 MB.  Then begin the process of repeating the operation being\n tested for a memory leak.\n <p>\n If Windows shows a warning about low system memory, you have demonstrated memory exhaustion\n and therefore a memory leak.  If you are working with a minimal, ready-to-run test case,\n you may have found a framework bug or a browser bug that SmartClient can work around.  You\n should post your minimal test case to the <a href='http://forums.smartclient.com/' target='_blank'>SmartClient forums</a>\n for analysis by Isomorphic Support.\n <p>\n If you do not have a minimal test case and have simply shown that your application is leaking\n memory, consider the possible coding errors that could cause memory leaks (explained above),\n and work toward creating a minimal test case if you suspect a framework or browser bug is the\n underlying cause.",
        name:"memoryLeaks",
        seeAlso:[
            {
                ref:"method:Canvas.destroy",
                description:null
            },
            {
                ref:"method:DrawItem.destroy",
                description:null
            },
            {
                ref:"method:Class.destroy",
                description:null
            },
            {
                ref:"class:ValuesManager",
                description:null
            },
            {
                ref:"attr:DataSource.ID",
                description:null
            }
        ],
        type:"group"
    },
    "attr:Canvas.dragAppearance":{
        ref:"attr:Canvas.dragAppearance",
        flags:"IRWA",
        description:"Visual appearance to show when the object is being dragged. May be overridden for\n dragResize or dragReposition events via ${isc.DocUtils.linkForRef('attr:Canvas.dragResizeAppearance')}\n and ${isc.DocUtils.linkForRef('attr:Canvas.dragRepositionAppearance')}.",
        name:"dragAppearance",
        seeAlso:[
        ],
        valueType:"DragAppearance",
        defaultValue:"EventHandler.OUTLINE",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:AdvancedHiliteEditor.saveHilite":{
        ref:"method:AdvancedHiliteEditor.saveHilite",
        flags:"",
        description:" Save changes and fire the ${isc.DocUtils.linkForRef('attr:AdvancedHiliteEditor.callback','callback')}.\n\n",
        name:"saveHilite",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "group:balsamiqImport":{
        ref:"group:balsamiqImport",
        title:"Reify (Balsamiq Importer)",
        refs:[
        ],
        description:"<a href='http://balsamiq.com' target='_blank'>Balsamiq</a> is a tool for rapidly &amp; collaboratively\n creating mockups of user interfaces.  SmartClient Pro and better includes a tool\n called <i>Reify</i> that allows you take exported Balsamiq mockups (.bmml files)\n and instantly turn them into interactive SmartClient applications backed by clean, clear\n code.  This allows you to:\n <ul>\n <li> speed up development by reusing all the careful layout work you did in Balsamiq \n <li> use Balsamiq as a development tool for SmartClient, since you can re-import at any time\n or even continuously\n <li> instantly create a fully interactive version of a Balsamiq mockup in any SmartClient skin\n <li> offer such functionality to your end users as a means of extending your application\n (<i>requires <a href='http://smartclient.com/product' target='_blank'>Visual Builder OEM license</a></i>)\n </ul>\n <h3>Using the tool</h3>\n <P>\n There are two ways to use Reify:\n <ul>\n <li> as a standalone tool: go to &lt;project base&gt;/tools/bmmlImporter.jsp and an import\n dialog similar to Visual Builder's File -&gt; Import dialog will immediately appear.  \n <smartclient>For example, if you are using the server built into the default SDK,\n the standalone importer is at \n <a href='http://localhost:8080/tools/bmmlImporter.jsp' target='_blank'>http://localhost:8080/tools/bmmlImporter.jsp</a>\n </smartclient>\n <smartgwt>For example, if your bootstrap .html file is at\n <i>/myProject/start.html</i>,\n the importer should be at <i>/myProject/tools/bmmlImporter.jsp</i> (be sure your project\n imports the same tools module required to run Visual Builder).\n </smartgwt>\n <li> in Visual Builder: in the \"Screens\" tab of the \"Project\" pane click on the \"Add...\"\n button and select \"Import from Balsamiq\".  You can provide the Balsamiq mockup file in\n various ways; providing a file will automatically load the screen created from the imported\n Balsamiq mockup into Visual Builder for further editing.\n </ul>\n Then, in both cases, what you want to save for further work is the XML source generated by\n the tool, which is called ${isc.DocUtils.linkForRef('group:componentXML','Component XML')}.  In Visual Builder, you\n can copy and paste the XML from the \"Code\" tab; with the standalone tool you can press the\n \"Show Source\" button and copy and paste from there.\n <P>\n When using the standalone tool and running the server on your own machine, when you use the\n \"Select file..\" option to import a mockup from a file on disk, this tool will periodically\n re-import the mockup, so you can work in Balsamiq and the browser will periodically refresh,\n showing the SmartClient version updated to reflect your latest changes.\n <P>\n Both tools can also save to a file under webroot.  In Visual Builder, use File-&gt;Save As.  In\n the standalone tool, use the \"Output File\" text field in the initial dialog.  This is most\n useful if you are using an \"exploded\" deployment <smartclient>like the built-in\n server that comes with the SmartClient SDK</smartclient>.  If you are using the Eclipse IDE \n with the built-in Jetty server, saving under webroot may not be useful since it means saving to\n a generated \"deployment directory\", not your Eclipse project.  In this case copy and paste\n is the best way to grab the generated source code.\n <P>\n For both tools, you can add the URL parameter \"mockup\" to cause your mockup to be immediately\n imported as the tool starts up:\n <pre>\n   tools/bmmlImporter.jsp?mockup=myMockup.bmml\n </pre>\n This makes your imported mockup into something you can bookmark.\n <P>\n For the standalone tool, you can also add the URL parameter \"outputFile\" to specify where the\n generated XML source should be saved.  This makes the entire import &amp; save process\n bookmarkable, but again is most valuable in an \"exploded\" deployment.\n <P>\n The next sections explain how Reify works, and how to tweak your Balsamiq mockup to\n produce the best results, then the section \"From imported mockup to application\" explains how\n to turn your generated SmartClient code into a working application.\n <P>\n <h3>Containers &amp; Layout</h3>\n <P>\n Most Balsamiq mockup elements have a direct SmartClient equivalent - what Balsamiq calls a\n \"Tabs Bar\" is translated to a SmartClient TabSet component, a Balsamiq \"Accordion\" is\n translated to a SmartClient SectionStack, and so on.  However, rather than only translate\n elements 1-to-1, Reify uses heuristics to try to organize your components into layout\n managers and logical forms, as follows.\n <P>\n <h4>Containers</h4>\n <P>\n Balsamiq mockups have no true notion of containers - to put something \"in\" a container in\n Balsamiq, you just make sure it <i>visually</i> appears inside of the container - you never\n <i>assign</i> it as a child of the container.  If Reify did the same thing, the\n resulting code wouldn't be very useful because the screen would become jumbled if anything was\n resized.  Instead, Reify detects that you have placed something inside the visual area of\n a container and automatically creates a true container relationship in SmartClient.  A grid\n inside of a Window really will be <i>inside</i> that Window in SmartClient, and will move with\n the window if it is dragged.\n <P>\n It's also OK to be inexact.  If you look at a typical Balsamiq mockup, if an element doesn't\n have a visible right/bottom border its very common that its logical extents go outside of it's\n container.  Reify automatically recognizes such elements as contained anyway.  If\n something is sticking very far out of its container and Reify didn't realize it was\n meant to be contained, just fix the size in your mockup, and re-run import.\n <P>\n Reify will also recognize extra controls in the header area of a container.  For\n example, just placing buttons or icons in a Window's header area will lead to\n ${isc.DocUtils.linkForRef('attr:Window.headerControls')} being created, similarly, placing controls in an Accordion's\n section will lead to ${isc.DocUtils.linkForRef('attr:SectionHeader.controls')} being created.\n <P>\n <h4>Stacks &amp; Layouts</h4>\n <P>\n Reify recognizes when you have stacked together several things of the same approximate\n size and assumes they go together.  It's OK to be inexact - Reify will ignore small\n differences in size and alignment and still realize that several items are meant to end up in a\n Layout.  If there are two or more possibilities for how elements can be arranged into Layouts,\n Reify will generally pick the option that results in the simplest overall layout.\n <P>\n <h4>Space Filling &amp; Fluid Layout</h4>\n <P>\n By default, Reify assumes your mockup isn't really meant to be fixed size - whatever\n container it's placed into, whether that's the whole browser or something smaller, your design\n is actually intended to fill it.\n <P>\n To achieve this, Reify defaults to ignoring any blank space that appears around the\n outside of the your mockup (ignoring markup elements - see below).  Then, Reify tries to\n find a way to allow your design to \"flex\" by finding elements that can use more space: grids,\n text areas, accordions, etc.  These elements are given flexible size and layout settings are\n applied to all of their parents such that resizing the mockup as a whole will give available\n space to the components that can use it.\n <P>\n To get the best results from this system, pay close attention to whether or not you are filling\n containers - Reify will only assume that a given component would like more space if it\n is <i>already</i> taking up as much space as possible in the mockup.  For example, if you have\n a grid as the sole member of a tab, but the grid only fills half the tab, Reify will\n assume the grid should be fixed size rather than fill the tab.\n <!-- TODO: add support for custom setting to avoid flexing one component, or even actual dimension\n setting -->\n <P>\n If you really want the entire mockup to be exactly the sizes you specified, this fluid layout\n behavior is one of the things you can turn off right in the import dialog: uncheck \"Fill\n Space\" if the design should not be made into a fluid layout, and uncheck \"Trim Space\" if you\n meant the empty space around the mockup to be taken literally.\n <P>\n <h4>Markup Elements</h4>\n <P>\n Elements such as Sticky Notes are considered \"markup\" and are dropped by default since it's\n assumed you don't want them now that you are moving on to creating your real application.\n You can retain them if you'd like by unchecking \"Drop Markup\" in the importer dialog.\n <P>\n Also, if you right-click on a component in Balsamiq (or option-click on MacOS), the menu item\n \"Treat as Markup\" allows you to convert a normal component into markup, which gives you a\n way to have Reify ignore selected components. \n <P>\n <h3>Linked Mockups</h3>\n <P>\n Balsamiq supports\n <a href='http://support.balsamiq.com/customer/portal/articles/111742' target='_blank'>linking multiple mockups together</a> \n to create basic interactivity for guided walkthroughs of\n multi-screen mockups.  Reify understands that certain types of Balsamiq links and can\n create a combined appliction from several linked mockups, with the interactivity you would\n expect.\n <P>\n However, linking <i>only</i> works when mockups are loaded via the \"Select file..\" option\n and exist on disk at correct relative paths (the same relative locations where Balsamiq\n stores them); linking cannot be used with mockups that are uploaded using the web interface.\n <P>\n <h4>Links on Tabs</h4>\n <P>\n A common idiom used in Balsamiq to create the illusion of functioning tabs is to create a\n link on a tab that points to another mockup which is <i>exactly the same</i> except for the\n selected tab and contents of the tab pane.  Reify will recognize this idiom and take\n the contents of the selected tab from the linked mockup and place it in the same-named tab from\n the primary mockup.  As intended, the contents will be initially hidden since the tab will not\n be initially selected, and will be revealed when an end user clicks on the tab.  All other\n content from the linked mockup is ignored.\n <P>\n Unlike other aspects of Reify that compensate for small differences, here it is required\n that the two mockups be exactly the same except for the selected tab and tab contents.  The\n only elements that can differ are \"markup\" elements such as Sticky Notes.\n <P>\n <h4>Links on Accordions</h4>\n <P>\n Similar to the idiom for multiple tabs, links on Accordion components are sometimes used to\n point to mockups that are identical except for the expanded Accordion section.  Reify \n will recognize this idiom in the same way as for tabs, and create a SectionStack where the\n contents of the visible Accordion section from the linked mockup appear in an initially\n collapsed section in the imported application.\n <P>\n <h4>Other links</h4>\n <P>\n A link on an element such as a button that leads to a second mockup will, by default, cause\n both the primary and linked mockup to be imported with all of their components, and an event\n handler will be generated on the button that simply hides all the components of the primary\n mockup and shows all the components of the linked mockup.  \n <P>\n If this is not correct (perhaps the linked mockup is really intended to be the same screen,\n with various changes caused by the button), simply remove the link before importing.  You can\n then add event handling logic to implement the intended effect of the button.  You can also\n separately import the linked mockup and load it as an additional screen - see the follow\n sections on going from imported mockup to full applications.\n <P>\n <h4>Symbols &amp; Assets</h4>\n <P>\n Balsamiq has a concept of\n <a href='http://support.balsamiq.com/customer/portal/articles/110439' target='_blank'>symbols</a>, which are\n reusable elements that can be incorporated into multiple mockups.  Reify supports\n symbols, however, like linked mockups, symbols are only supported when the mockup file and\n symbol file are both present on disk and do not need to be uploaded.  The symbols file\n should be in the same location relative to the mockup as Balsamiq expects it -\n <i>assets/symbols.bmml</i> by default.\n <P>\n <h3>From imported mockup to application</h3>\n <P>\n Once you've imported your mockup, making it into a real application involves 3 things:\n <ol>\n <li> loading the mockup into a larger application (or as the entire application)\n <li> connecting to real DataSources\n <li> adding event handlers and other programmatic logic\n </ol> \n <P>\n <h4>Loading the mockup as an application</h4>\n <P>\n To load your imported mockup into an application, see the \"Loading screens stored in\n Component XML\" section of the ${isc.DocUtils.linkForRef('group:componentXML','Component XML overview')}.\n <P>\n <h4>Connecting to real DataSources</h4>\n <P>\n First, be sure you have read the QuickStart Guide chapters on Data Binding and the Server\n Framework so that you are familiar with DataSources, .ds.xml files and how DataSources are\n loaded into your application.  Then, consider the different data-aware widgets in the\n application created from your mockup:\n <P>\n <b>Grids and Trees</b>\n <P>\n Sample data provided for grids and trees in the mockup is converted to a special kind of\n DataSource called a \"MockDataSource\", which is essentially a\n ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly DataSource')}.  There are two ways to replace these with\n real DataSources that save to a persistent store:\n <ul>\n <li> if you have already separately developed real DataSources: the simplest approach is to\n load your DataSources normally, then just delete the &lt;MockDataSource&gt; definitions from\n the XML source, and replace the <code>dataSource</code> attribute on the &lt;ListGrid&gt; or\n &lt;TreeGrid&gt; element with the ID of your real DataSource\n <li> if you want to start from the mockup DataSources: move the XML definition of the\n MockDataSource into a new .ds.xml file, rename the outer tag to just &lt;DataSource&gt;,\n add <code>clientOnly=\"true\"</code> and remove the &lt;mockData&gt; element.  Load the DataSource\n normally and the application imported from the mockup will continue to function just as it has.\n You can now add settings to the new .ds.xml file to set up persistence (see QuickStart\n Guide) - remove the <code>clientOnly=\"true\"</code> setting and &lt;cacheData&gt; element\n whenever you want to switch over to real persistence.\n </ul>\n <P>\n <b>Forms &amp; ValuesManagers</b>\n <P>\n As far as form controls (anything used to enter data), the basic rules are:\n <ul>\n <li> any series of adjacent form controls that have a roughly tabular layout will be created as\n a single DynamicForm\n <li> all DynamicForm controls within one container will share a common ${isc.DocUtils.linkForRef('class:ValuesManager')}\n </ul>\n To connect these forms and ValuesManagers to DataSources, just set the \"dataSource\" attribute\n on the &lt;DynamicForm&gt; or &lt;ValuesManager&gt; elements respectively.  If Reify has\n created a ValuesManager linking two forms that should be attached to separate DataSources, just\n delete the &lt;ValuesManager&gt; declaration and corresponding &lt;valuesManager&gt; attribute\n on the forms that share the ValuesManager - they will now be independent forms that can use\n independent DataSources.\n <P>\n Bear in mind when adding DataSources: the FormItems within each DynamicForm will only be\n connected to the DataSource field if they <i>have the same name attribute</i>.  You'll notice the\n FormItems are given automatically generated names based on the label for the field in the\n mockup, for example, a title of \"First Name\" yields a field name of \"First_Name\".  You may need\n to edit these in order to match the names of your DataSource fields.\n <P>\n <h3>Setting IDs &amp; Custom Properties</h3>\n <P>\n If you right-click on a component in Balsamiq (or option-click on MacOS), a menu item\n \"Custom Properties\" allows you to set a \"Custom control ID\" and provide \"Custom control\n data\".  The \"Custom control ID\" will become ${isc.DocUtils.linkForRef('attr:Canvas.ID','component.ID')} for the\n SmartClient component generated from the Balsamiq component.\n <P>\n You can use \"Custom control data\" to provide additional properties for the generated\n component, as a semicolon-separated set of properties and values.  For example this setting:\n <pre>\n     showFilterEditor:true; border:\"1px solid black\"\n </pre>\n .. applied to a Balsamiq \"Data Grid\" would enable\n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','showFilterEditor')} on the generated ListGrid.\n <P>\n <smartclient>\n <h3>Custom Components &amp; Symbols</h3>\n <P>\n In some cases you may want to tell Reify to use custom classes you've created in\n SmartClient instead of the default classes.  You can always do this by modifying the\n generated Component XML, however, it can be more convenient to do this in Balsamiq,\n especially if you've used Balsamiq's \"symbols\" feature to create a reusable library of\n Balsamiq \"groups\".\n <P>\n If you've created a custom class but no ${isc.DocUtils.linkForRef('group:componentSchema','Component Schema')}, \n you can set this \"constructor\" property to tell Reify to output the \"constructor\"\n property in the generated Component XML so that your custom class will be used.\n <P>\n If you've created a Component Schema, set the \"schemaName\" property to the ID of your\n component Schema.  For example, if you set schemaName=MyListGrid in the Custom Properties of\n a Balsamiq \"Data Grid\" component, &lt;MyListGrid&gt; will be output instead of the usual\n &lt;ListGrid&gt;.\n </smartclient>\n <P>\n <h3>Event Handlers &amp; Scripting loaded components</h3>\n <P>\n See the section \"Event Handlers &amp; Scripting loaded components\" in the\n ${isc.DocUtils.linkForRef('group:componentXML','Component XML overview')}.\n <P>\n <h3>Troubleshooting</h3>\n <P>\n If you manage to get the importer to crash or do something clearly incorrect, we want to know\n about it.  Take the BMML file(s) that failed and post them to the\n <a href='http://forums.smartclient.com/' target='_blank'>forums</a> along with the exact version of your product\n (lower-left-hand corner of the Developer Console).  If you can isolate the exact portion of the\n mockup that causes the problem and save that as a separate file, that's very helpful in terms\n of fixing the problem as soon as possible.\n <P>\n In terms of getting past the problem while you wait for a fix, the easiest thing is to just\n remove the offending portion of the mockup.  You can then create that portion with normal\n coding techniques or with ${isc.DocUtils.linkForRef('group:componentXML')}.\n <P>\n <h3>Supported balsamiq component types</h3>\n <P>\n Almost all balsamiq components have obvious analogs in smartclient, so during translation\n they converted in according classes. Here is the list of balsamiq components and smartclient\n classes which used for convertation. All balsamiq types that are not in this list converted\n to MockupElement which shows an image of balsamiq component (if there is an image in \n smartclient library for the component) and component title as a Label. \n <ul>\n  <li>\"com.balsamiq.mockups::Accordion\": ${isc.DocUtils.linkForRef('class:SectionStack')}</li>\n  <li>\"com.balsamiq.mockups::BarChart\": ${isc.DocUtils.linkForRef('class:FacetChart')}</li>\n  <li>\"com.balsamiq.mockups::BreadCrumbs\": ${isc.DocUtils.linkForRef('class:HLayout')}</li>\n  <li>\"com.balsamiq.mockups::BrowserWindow\": ${isc.DocUtils.linkForRef('class:VStack')}</li>\n  <li>\"com.balsamiq.mockups::Button\": ${isc.DocUtils.linkForRef('class:ButtonItem')}</li>\n  <li>\"com.balsamiq.mockups::ButtonBar\": ${isc.DocUtils.linkForRef('class:MenuBar')}</li>\n  <li>\"com.balsamiq.mockups::Calendar\": ${isc.DocUtils.linkForRef('class:DateChooser')}</li>\n  <li>\"com.balsamiq.mockups::Canvas\": ${isc.DocUtils.linkForRef('class:VStack')}</li>\n  <li>\"com.balsamiq.mockups::CheckBox\": ${isc.DocUtils.linkForRef('class:CheckboxItem')}</li>\n  <li>\"com.balsamiq.mockups::CheckBoxGroup\": ${isc.DocUtils.linkForRef('class:DynamicForm')}</li>\n  <li>\"com.balsamiq.mockups::ColorPicker\": ${isc.DocUtils.linkForRef('class:ColorItem')}</li>\n  <li>\"com.balsamiq.mockups::ColumnChart\": ${isc.DocUtils.linkForRef('class:FacetChart')}</li>\n  <li>\"com.balsamiq.mockups::ComboBox\": ${isc.DocUtils.linkForRef('class:SelectItem')}</li>\n  <li>\"com.balsamiq.mockups::DataGrid\": ${isc.DocUtils.linkForRef('class:ListGrid')}</li>\n  <li>\"com.balsamiq.mockups::DateChooser\": ${isc.DocUtils.linkForRef('class:DateItem')}</li>\n  <li>\"com.balsamiq.mockups::FieldSet\": ${isc.DocUtils.linkForRef('class:Canvas')}</li>\n  <li>\"com.balsamiq.mockups::FormattingToolbar\": ${isc.DocUtils.linkForRef('class:ToolStrip')}</li>\n  <li>\"com.balsamiq.mockups::HelpButton\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::HorizontalScrollBar\": ${isc.DocUtils.linkForRef('class:Scrollbar')}</li>\n  <li>\"com.balsamiq.mockups::HSlider\": ${isc.DocUtils.linkForRef('class:SliderItem')}</li>\n  <li>\"com.balsamiq.mockups::Icon\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::IconLabel\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::Image\": ${isc.DocUtils.linkForRef('class:Img')}</li>\n  <li>\"com.balsamiq.mockups::Label\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::LineChart\": ${isc.DocUtils.linkForRef('class:FacetChart')}</li>\n  <li>\"com.balsamiq.mockups::Link\": ${isc.DocUtils.linkForRef('class:LinkItem')}</li>\n  <li>\"com.balsamiq.mockups::LinkBar\": ${isc.DocUtils.linkForRef('class:HLayout')}</li>\n  <li>\"com.balsamiq.mockups::List\": ${isc.DocUtils.linkForRef('class:SelectItem')}</li>\n  <li>\"com.balsamiq.mockups::Menu\": ${isc.DocUtils.linkForRef('class:MenuButton')}</li>\n  <li>\"com.balsamiq.mockups::MenuBar\": ${isc.DocUtils.linkForRef('class:MenuBar')}</li>\n  <li>\"com.balsamiq.mockups::MultilineButton\": ${isc.DocUtils.linkForRef('class:Button')}</li>\n  <li>\"com.balsamiq.mockups::NumericStepper\": ${isc.DocUtils.linkForRef('class:SpinnerItem')}</li>\n  <li>\"com.balsamiq.mockups::Paragraph\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::PieChart\": ${isc.DocUtils.linkForRef('class:FacetChart')}</li>\n  <li>\"com.balsamiq.mockups::PointyButton\": ${isc.DocUtils.linkForRef('class:Button')}</li>\n  <li>\"com.balsamiq.mockups::ProgressBar\": ${isc.DocUtils.linkForRef('class:Progressbar')}</li>\n  <li>\"com.balsamiq.mockups::RadioButton\": ${isc.DocUtils.linkForRef('class:RadioItem')}</li>\n  <li>\"com.balsamiq.mockups::RadioButtonGroup\": ${isc.DocUtils.linkForRef('class:DynamicForm')}</li>\n  <li>\"com.balsamiq.mockups::SearchBox\": ${isc.DocUtils.linkForRef('class:TextItem')}</li>\n  <li>\"com.balsamiq.mockups::SubTitle\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::Switch\": ${isc.DocUtils.linkForRef('class:CheckboxItem')}</li>\n  <li>\"com.balsamiq.mockups::TabBar\": ${isc.DocUtils.linkForRef('class:TabSet')}</li>\n  <li>\"com.balsamiq.mockups::TagCloud\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::TextArea\": ${isc.DocUtils.linkForRef('class:TextAreaItem')}</li>\n  <li>\"com.balsamiq.mockups::TextInput\": ${isc.DocUtils.linkForRef('class:TextItem')}</li>\n  <li>\"com.balsamiq.mockups::Title\": ${isc.DocUtils.linkForRef('class:Label')}</li>\n  <li>\"com.balsamiq.mockups::TitleWindow\": ${isc.DocUtils.linkForRef('class:Window')}</li>\n  <li>\"com.balsamiq.mockups::Tree\": ${isc.DocUtils.linkForRef('class:TreeGrid')}</li>\n  <li>\"com.balsamiq.mockups::VerticalScrollBar\": ${isc.DocUtils.linkForRef('class:Scrollbar')}</li>\n  <li>\"com.balsamiq.mockups::VerticalTabBar\": ${isc.DocUtils.linkForRef('class:TabSet')}</li>\n  <li>\"com.balsamiq.mockups::VSlider\": ${isc.DocUtils.linkForRef('class:SliderItem')}</li>\n </ul>",
        name:"balsamiqImport",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:GridRenderer.offlineMessage":{
        ref:"attr:GridRenderer.offlineMessage",
        flags:"IRW",
        description:"The string to display in the body of a listGrid with an empty data array, if\n showOfflineMessage is true and the data array is empty because we are offline and there\n is no suitable cached response",
        name:"offlineMessage",
        seeAlso:[
            {
                ref:"attr:GridRenderer.showOfflineMessage",
                description:null
            },
            {
                ref:"attr:GridRenderer.offlineMessageStyle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"No data available while offline\"",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "offlineGroup",
            "emptyMessage",
            "i18nMessages"
        ]
    },
    "method:Canvas.getWidth":{
        ref:"method:Canvas.getWidth",
        flags:"",
        description:" Return the width of this object, in pixels.\n",
        name:"getWidth",
        seeAlso:[
        ],
        returns:{
            description:"width",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:SelectItem.showPicker":{
        ref:"method:SelectItem.showPicker",
        flags:"",
        description:" Method to show a picker for this item. By default this method is called if the user\n clicks on a ${isc.DocUtils.linkForRef('attr:SelectItem.showPickerIcon','pickerIcon')}.  May also be called programmatically.\n <P>\n Default implementation lazily creates and shows the ${isc.DocUtils.linkForRef('attr:FormItem.picker','Picker Autochild')}.\n May be overridden to implement some custom picker for this item.\n\n",
        name:"showPicker",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:SelectItem"
    },
    "method:TileLayout.addTile":{
        ref:"method:TileLayout.addTile",
        flags:"",
        description:" Add a tile to the layout, dynamically.\n\n",
        name:"addTile",
        seeAlso:[
        ],
        params:[
            {
                description:"new tile to add",
                optional:false,
                name:"tile",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"position where the tile should be added.  Defaults to adding the tile at the end.",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:TileLayout"
    },
    "method:ListGrid.cellHover":{
        ref:"method:ListGrid.cellHover",
        flags:"",
        description:" Called when the mouse hovers over a cell if this.canHover is true. \n  Returning false will suppress the hover text from being shown if this.showHover is true.\n\n",
        name:"cellHover",
        seeAlso:[
            {
                ref:"attr:ListGrid.canHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:Menu.setData":{
        ref:"method:Menu.setData",
        flags:"",
        description:" Change the set of items to display in this menu\n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"new items for this menu",
                optional:false,
                name:"items",
                defaultValue:null,
                type:"array of MenuItems"
            }
        ],
        type:"method",
        definingClass:"class:Menu",
        groups:[
            "data"
        ]
    },
    "attr:Canvas.layoutAlign":{
        ref:"attr:Canvas.layoutAlign",
        flags:"IRW",
        description:"When this Canvas is included as a member in a Layout, layoutAlign controls alignment on the\n breadth axis of the layout.  Default is \"left\" for a VLayout, \"top\" for an HLayout.",
        name:"layoutAlign",
        seeAlso:[
        ],
        valueType:"Alignment | VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('layoutCenterAlign')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "layoutMember"
        ]
    },
    "attr:DataSource.useOfflineStorage":{
        ref:"attr:DataSource.useOfflineStorage",
        flags:"IRW",
        description:"Whether we store server responses for this DataSource into \n ${isc.DocUtils.linkForRef('class:Offline','browser-based offline storage')}, and then use those stored responses\n at a later time if we are offline (ie, the application cannot connect to the server).  \n Note that by default we do NOT use offline storage for a dataSource.",
        name:"useOfflineStorage",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "offlineGroup"
        ]
    },
    "attr:Layout.paddingAsLayoutMargin":{
        ref:"attr:Layout.paddingAsLayoutMargin",
        flags:"IRWA",
        description:"If this widget has padding specified (as ${isc.DocUtils.linkForRef('attr:Canvas.padding','this.padding')} or in the\n CSS style applied to this layout), should it show up as space outside the members,\n similar to layoutMargin?\n <P>\n If this setting is false, padding will not affect member positioning (as CSS padding\n normally does not affect absolutely positioned children).  Leaving this setting true\n allows a designer to more effectively control layout purely from CSS.\n <P>\n Note that ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')} if specified, takes precedence over this value.",
        name:"paddingAsLayoutMargin",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "attr:DataSource.nullIntegerValue":{
        ref:"attr:DataSource.nullIntegerValue",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DataSource.noNullUpdates')} is set, the value to use for any integer field that has a null\n value assigned on an update operation, and does not specify an explicit\n ${isc.DocUtils.linkForRef('attr:DataSourceField.nullReplacementValue','nullReplacementValue')}.",
        name:"nullIntegerValue",
        seeAlso:[
            "noNullUpdates,noNullUpdates",
            {
                ref:"attr:DataSourceField.nullReplacementValue",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:PaletteNode.defaults":{
        ref:"attr:PaletteNode.defaults",
        flags:"IR",
        description:"Defaults for the component to be created from this palette.  \n <P>\n For example, if ${isc.DocUtils.linkForRef('attr:PaletteNode.type')} is \"ListGrid\", properties valid to pass to\n ${isc.DocUtils.linkForRef('classMethod:Class.create','ListGrid.create()')}.",
        name:"defaults",
        seeAlso:[
        ],
        valueType:"Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:PaletteNode"
    },
    "attr:Shadow.color":{
        ref:"attr:Shadow.color",
        flags:"IR",
        description:null,
        name:"color",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"black",
        type:"attr",
        definingClass:"object:Shadow"
    },
    "attr:MultiSortDialog.addLevelButton":{
        ref:"attr:MultiSortDialog.addLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for adding new levels\n to the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.addLevelButtonProperties</code> and \n <code>multiSortPanel.addLevelButtonDefaults</code>.",
        name:"addLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "method:Tree.allChildrenLoaded":{
        ref:"method:Tree.allChildrenLoaded",
        flags:"",
        description:" For a databound tree, do the children of this folder form a ResultSet with a full cache.\n <P>\n Note that this method only applies to ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode')} \"paged\".\n",
        name:"allChildrenLoaded",
        seeAlso:[
            {
                ref:"method:Tree.getChildrenResultSet",
                description:null
            }
        ],
        params:[
            {
                description:"folder in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"folder's children are a ResultSet with a full cache",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "loadState"
        ]
    },
    "classAttr:Operators.equalsFieldTitle":{
        ref:"classAttr:Operators.equalsFieldTitle",
        flags:"IR",
        description:"Title for the \"equalsField\" operator",
        name:"equalsFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"matches other field (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DSRequestModifier.operator":{
        ref:"attr:DSRequestModifier.operator",
        flags:"IR",
        description:"The name of the operator to apply when constructing criteria.  This property only applies \n to criteria; it is ignored if specified as part of a ${isc.DocUtils.linkForRef('attr:OperationBinding.values')} \n attribute.",
        name:"operator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"object:DSRequestModifier"
    },
    "method:ColorPicker.setBlue":{
        ref:"method:ColorPicker.setBlue",
        flags:"",
        description:" Sets the Blue element of the selected color\n",
        name:"setBlue",
        seeAlso:[
            {
                ref:"method:ColorPicker.getBlue",
                description:null
            }
        ],
        params:[
            {
                description:"An integer between 0 and 255",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:ImgSectionHeader.title":{
        ref:"attr:ImgSectionHeader.title",
        flags:"IRW",
        description:"Title to show for the section",
        name:"title",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgSectionHeader"
    },
    "attr:Canvas.edgeOffset":{
        ref:"attr:Canvas.edgeOffset",
        flags:"IR",
        description:"Amount the contained Canvas should be offset.  Defaults to edgeSize; set to less than\n edgeSize to allow the contained Canvas to overlap the edge and corner media.",
        name:"edgeOffset",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('corners')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "type:HiliteIconPosition":{
        ref:"type:HiliteIconPosition",
        values:[
            {
                description:"icon will be placed before the normal cell contents",
                value:"\"before\""
            },
            {
                description:"icon will be placed after the normal cell contents",
                value:"\"after\""
            },
            {
                description:"icon will be shown instead of the normal cell contents",
                value:"\"replace\""
            }
        ],
        description:"Where a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons','hilite icon')} will be placed relative to \n normal cell content.",
        name:"HiliteIconPosition",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "hiliting"
        ]
    },
    "attr:StretchImg.imageType":{
        ref:"attr:StretchImg.imageType",
        flags:"IRW",
        description:"Indicates whether the image should be tiled/cropped, stretched, or centered when the\n          size of this widget does not match the size of the image. See ImageStyle for\n          details.",
        name:"imageType",
        seeAlso:[
        ],
        valueType:"ImageStyle",
        defaultValue:"Img.STRETCH",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.maxHeight":{
        ref:"attr:Canvas.maxHeight",
        flags:"IRWA",
        description:"Maximum height that this Canvas can be resized to.",
        name:"maxHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"10000",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:ListGrid.getCellErrors":{
        ref:"method:ListGrid.getCellErrors",
        flags:"",
        description:"  Returns the current set of errors for this cell.\n",
        name:"getCellErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"index of row to check for validation errors.",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"field to check for validation errors - can be fieldName                                          or index of the column.",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String | number"
            }
        ],
        returns:{
            description:"array of error messages (strings) for the specified cell. If no validation                  errors are present, returns null.",
            type:"Array of String"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridValidation"
        ]
    },
    "attr:ColorPicker.htmlFieldTitle":{
        ref:"attr:ColorPicker.htmlFieldTitle",
        flags:"IR",
        description:"The title for the 'HTML' field in the complex chooser.",
        name:"htmlFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"HTML\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormulaBuilder.instructionsTextStart":{
        ref:"attr:FormulaBuilder.instructionsTextStart",
        flags:"IRWA",
        description:"The text to display as a preamble to the instruction text that appears in the \n ${isc.DocUtils.linkForRef('attr:FormulaBuilder.instructions','instructions label')}.\n <P>\n This is a dynamic string - text within <code>&#36;{...}</code> are dynamic variables and will \n be evaluated as JS code when the message is displayed.\n <P>\n Only one dynamic variable, builderType, is available and represents the type of this\n builder - either Formula or Summary.\n <P>\n Default value returns <P>\n <code>\n <i>The following fields are available for use in this [Formula/Summary]</i>\n </code>",
        name:"instructionsTextStart",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"The following fields are available for use in this ${builderType}\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TileGrid.styleName":{
        ref:"attr:TileGrid.styleName",
        flags:"IR",
        description:"Style for the overall TileGrid component.",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"tileGrid\"",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.showTreeColumnPicker":{
        ref:"attr:ListGrid.showTreeColumnPicker",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans')} are in use, whether to show a hierarchical column picker\n that includes both headerSpans and normal headers, with normal headers indented under\n headerSpans similarly to how a ${isc.DocUtils.linkForRef('class:TreeGrid')} displays a Tree.\n <P>\n If <code>showTreeColumnPicker</code> is false, no column picker will be shown on the\n headerSpan itself, and the column picker for a clicked on a normal field header will include\n only normal fields.",
        name:"showTreeColumnPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "group:nonJavaBackend":{
        ref:"group:nonJavaBackend",
        title:".NET, PHP, Serverless Integration",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"While SmartClient's extensive server features are lost if you cannot install the Java-based\n server framework, SmartClient UI components can be integrated with any server technology.\n This topic provides pointers to documentation that is most relevant for this type of\n integration.\n <p>\n <smartgwt>\n If you are using a non-Java backend such as PHP or .NET, you may want to consider \n SmartGWT's sister product &#83;martClient, which has the same functionality but allows\n programming in JavaScript instead of Java.  However if you prefer to use Java on the client,\n this is fine - SmartGWT and SmartClient have identical capabilities for integrating with\n non-Java servers.\n <p>\n When run on a SmartGWT project, the GWT compiler produces ordinary web assets - JavaScript\n files, .html files, images, etc - which can be deployed on any web server like any other web\n assets.  How best to integrate GWT into your development workflow is outside the scope of\n this documentation, however, consider using the SmartGWT server-side HttpProxy (mentioned\n below) as a means of using a Java IDE to develop GWT Java code in the usual way, while\n allowing your GWT application to contact services hosted on another server (which is\n running your PHP, .NET or other server code).  The HttpProxy can then be eliminated from\n your final deployment by deploying the web assets produced by GWT directly on the server\n running your non-Java server code.\n </smartgwt>\n <smartclient>\n <h4>Installation</h4>\n <P>\n As described in ${isc.DocUtils.linkForRef('group:iscInstall','<i>Deploying SmartClient</i>')}, for a client-only\n integration, installation consists of just copying a directory of JavaScript and media files\n to your webserver.\n <P>\n <h4>Creating Components</h4>\n <P>\n SmartClient components can be included in any .html page, including dynamically generated pages\n produced by .php or .asp files.  The SmartClient libraries can be included in the page as\n follows:\n <pre>\n &lt;HTML&gt;&lt;HEAD&gt;\n &lt;SCRIPT&gt;var isomorphicDir=\"../isomorphic/\";&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=../isomorphic/system/modules/ISC_Core.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=../isomorphic/system/modules/ISC_Foundation.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=../isomorphic/system/modules/ISC_Containers.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=../isomorphic/system/modules/ISC_Grids.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=../isomorphic/system/modules/ISC_Forms.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=../isomorphic/system/modules/ISC_DataBinding.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=../isomorphic/skins/SmartClient/load_skin.js&gt;&lt;/SCRIPT&gt;\n &lt;/HEAD&gt;&lt;BODY&gt;\n ...</pre>\n SmartClient components can then be created via normal JavaScript:\n <pre>\n &lt;SCRIPT&gt;\n isc.Button.create({\n     title:\"Button\",\n     click:\"isc.say('Hello World')\"\n });\n &lt;/SCRIPT&gt;\n </pre>\n This approach is discussed in more detail in the \n <a href='/docs/SmartClient_Quick_Start_Guide.pdf' target='_blank'>QuickStart Guide</a>, Chapter 4, <i>Coding</i>.\n Note that JavaScript-based component instantiation is currently the recommended approach, and\n most examples are provided in the JavaScript format.\n </smartclient>\n <P>\n <h4>Data Loading / Data Binding</h4>\n <P>\n The primary focus of SmartClient integration is connecting DataSource operations to your\n server.  The ${isc.DocUtils.linkForRef('group:clientDataIntegration','Client-side Data Integration')} chapter covers\n the key approaches, including cookbook approaches for REST-based integration with any server\n that can return XML or JSON over HTTP.\n <P>\n <h4>Simple RPCs (non-DataSource requests)</h4>\n <P>\n You can implement simple RPCs by having your server output \n <a href='http://www.json.org/' target='_blank'>JSON</a> (JavaScript Object Notation) and using \n ${isc.DocUtils.linkForRef('attr:RPCRequest.evalResult')} to directly turn JSON results into live JavaScript objects.\n ${isc.DocUtils.linkForRef('attr:RPCRequest.serverOutputAsString')} lets you load arbitrary server results, including\n JSON results that need to be processed before they can be eval()'d.\n <P>\n Alternatively, if you are familiar with WSDL web services, you can implement simple RPCs as\n web service operations: use ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadWSDL')} to load the service definition, and\n then use ${isc.DocUtils.linkForRef('method:WebService.callOperation')} to call the operations.  We don't generally\n recommend this approach unless you are already deeply familiar with WSDL - it's far more\n complicated that producing and consuming JSON.\n <P>\n <h4>HTTPProxy: Cross-site or cross-port data loading</h4>\n <P>\n If you develop a prototype using the SmartClient SDK and SmartClient Java Server, and then\n you migrate the prototype to another server technology, you need to be aware that the\n SmartClient Java Server includes an HTTPProxy servlet that allows SmartClient interfaces to\n contact servers other than the origin server (bypassing what is called the\n <a href='http://www.google.com/search?q=same+origin+policy' target='_blank'>\"same origin policy\"</a>).\n <P>\n SmartClient uses the HttpProxy automatically when needed, so it may not be obvious that the\n HTTPProxy is in use.  Then, your migrated application will encounter errors attempting to\n contact the HTTPProxy servlet.\n <P>\n To avoid these errors, ensure that all services that your application uses are accessed\n using the same hostname and port as the page was loaded from.  In particular, watch for WSDL\n files, which contain the service URL - you may need to use ${isc.DocUtils.linkForRef('method:WebService.setLocation')}\n to ensure that the web service URL and page URL match.\n <P>\n If your production application really does need to access services or content hosted on\n other servers, typical practice is to pursue normal SmartClient integration with your\n server, then write server-side code that contacts other hosts on behalf of your SmartClient\n interface.",
        name:"nonJavaBackend",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridField.valueField":{
        ref:"attr:ListGridField.valueField",
        flags:"IRW",
        description:"Specifies the ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')} field used to retrieve the stored\n values that are to be mapped to the display values (specified by\n ${isc.DocUtils.linkForRef('attr:ListGridField.displayField')}). Note that if this field is editable this will also\n be applied to this field's editors.",
        name:"valueField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "attr:DrawItem.scale":{
        ref:"attr:DrawItem.scale",
        flags:"IRA",
        description:"Array holds 2 values representing scaling along x and y dimensions.",
        name:"scale",
        seeAlso:[
        ],
        valueType:"Array[] of int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:TextAreaItem.emptyStringValue":{
        ref:"attr:TextAreaItem.emptyStringValue",
        flags:"IRW",
        description:"How should an empty string entered by the user be stored?\n This value is typically set to <code>null</code> or <code>\"\"</code>.\n <P>\n Note that a call to ${isc.DocUtils.linkForRef('method:FormItem.setValue','setValue(null)')} or ${isc.DocUtils.linkForRef('method:FormItem.setValue','setValue(\"\")')}\n automatically updates this property to ensure that \"empty\" values are stored in a \n consistent format.",
        name:"emptyStringValue",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "formValues"
        ]
    },
    "method:CubeGrid.facetValueHover":{
        ref:"method:CubeGrid.facetValueHover",
        flags:"",
        description:" StringMethod handler fired when mouse hovers over a facetValue button in a header.\n",
        name:"facetValueHover",
        seeAlso:[
        ],
        params:[
            {
                description:"FacetValueMap for the appropriate header button",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events"
        ]
    },
    "method:TextItem.setKeyPressFilter":{
        ref:"method:TextItem.setKeyPressFilter",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:TextItem.keyPressFilter','keyPressFilter')} for this item\n",
        name:"setKeyPressFilter",
        seeAlso:[
        ],
        params:[
            {
                description:"new keyPress filter for the item",
                optional:false,
                name:"filter",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:TextItem"
    },
    "attr:ListGrid.showHeaderSpanTitlesInSortEditor":{
        ref:"attr:ListGrid.showHeaderSpanTitlesInSortEditor",
        flags:"IRW",
        description:"If this grid has specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')}, should field titles be\n prefixed with the titles of the headerSpans in which they are contained when\n using the ${isc.DocUtils.linkForRef('class:MultiSortDialog','multi-sort editor')}.",
        name:"showHeaderSpanTitlesInSortEditor",
        seeAlso:[
            {
                ref:"attr:ListGrid.sortEditorSpanTitleSeparator",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ListGridField.editorExit":{
        ref:"method:ListGridField.editorExit",
        flags:"A",
        description:" Callback fired when the user attempts to navigate away from the current edit cell,\n or complete the current edit.<br>\n Return false from this method to cancel the default behavior (Saving / cancelling the\n current edit / moving to the next edit cell)\n\n",
        name:"editorExit",
        seeAlso:[
            {
                ref:"method:ListGrid.editorExit",
                description:null
            }
        ],
        params:[
            {
                description:"What interaction triggered this                                                          edit cell exit",
                optional:false,
                name:"editCompletionEvent",
                defaultValue:null,
                type:"EditCompletionEvent"
            },
            {
                description:"record for the cell being edited",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"new value for the cell being edited",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"ListGrid to which this field belongs",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"Returning false from this method will cancel the default behavior                      (for example saving the row) and leave the editor visible and focus\n                      in this edit cell.",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:LoginDialog.lostPasswordItem":{
        ref:"attr:LoginDialog.lostPasswordItem",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('class:LinkItem')} to page requesting forgotten password in ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.\n <p>To handle user clicks on this link, implement ${isc.DocUtils.linkForRef('method:LoginDialog.lostPassword')}.\n <p>To handle a user click as a physical link to another page, set\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue','defaultValue')} via loginDialog.lostPasswordItemProperties:\n <code>\n lostPasswordItemProperties: {\n     defaultValue: \"register.html\"\n },\n </code>",
        name:"lostPasswordItem",
        seeAlso:[
            {
                ref:"attr:LoginDialog.showLostPasswordLink",
                description:null
            },
            {
                ref:"attr:LoginDialog.lostPasswordItemTitle",
                description:null
            }
        ],
        valueType:"AutoChild LinkItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:MultiComboBoxItem.setLayoutStyle":{
        ref:"method:MultiComboBoxItem.setLayoutStyle",
        flags:"",
        description:null,
        name:"setLayoutStyle",
        seeAlso:[
            {
                ref:"attr:MultiComboBoxItem.layoutStyle",
                description:null
            }
        ],
        params:[
            {
                description:"the new layout style",
                optional:false,
                name:"layoutStyle",
                defaultValue:null,
                type:"MultiComboBoxLayoutStyle"
            }
        ],
        type:"method",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:Applet.archive":{
        ref:"attr:Applet.archive",
        flags:"IR",
        description:"URL to the applet JAR or ZIP archive.",
        name:"archive",
        seeAlso:[
            {
                ref:"attr:Applet.code",
                description:null
            },
            {
                ref:"attr:Applet.codeBase",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "method:PortalLayout.setPreventRowUnderflow":{
        ref:"method:PortalLayout.setPreventRowUnderflow",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.preventRowUnderflow','preventRowUnderflow')} and reflows the layout to implement it.\n",
        name:"setPreventRowUnderflow",
        seeAlso:[
        ],
        params:[
            {
                description:"Whether to stretch the last ${isc.DocUtils.linkForRef('class:Portlet')} in a row to to fill the row's width.",
                optional:false,
                name:"preventRowUnderflow",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('portletWidth')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:ResultSet.criteria":{
        ref:"attr:ResultSet.criteria",
        flags:"IRW",
        getter:[
            "getCriteria"
        ],
        description:"Filter criteria used whenever records are retrieved.\n <P>\n Use ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria')} to change the criteria after initialization.",
        name:"criteria",
        setter:[
            "setCriteria"
        ],
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet"
    },
    "attr:Tab.canEditTitle":{
        ref:"attr:Tab.canEditTitle",
        flags:"IRW",
        description:"If specified, overrides the ${isc.DocUtils.linkForRef('attr:TabSet.canEditTabTitles')} setting, for this one tab\n only.\n <p>\n Note that the TabSet's ${isc.DocUtils.linkForRef('attr:TabSet.titleEditEvent','titleEditEvent')} must be set to a\n supported ${isc.DocUtils.linkForRef('type:TabTitleEditEvent')} in order for users to be able to edit this tab's\n title.",
        name:"canEditTitle",
        seeAlso:[
            {
                ref:"attr:TabSet.canEditTabTitles",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('userEditableTitles')}"
        ],
        definingClass:"object:Tab"
    },
    "attr:DataBoundComponent.showOfflineMessage":{
        ref:"attr:DataBoundComponent.showOfflineMessage",
        flags:"IRW",
        description:"Indicates whether the text of the offlineMessage property should be displayed if no data is\n available because we do not have a suitable offline cache",
        name:"showOfflineMessage",
        seeAlso:[
            {
                ref:"attr:DataBoundComponent.offlineMessage",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "offlineGroup"
        ]
    },
    "method:DynamicForm.getValues":{
        ref:"method:DynamicForm.getValues",
        flags:"",
        description:" An Object containing the values of the form as properties, where each propertyName is\n the name of a ${isc.DocUtils.linkForRef('group:Items','form item')} in the form, and each property value is the value\n held by that form item.\n\n",
        name:"getValues",
        seeAlso:[
        ],
        returns:{
            description:"values in the form",
            type:"Object"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "method:ListGrid.invalidateCache":{
        ref:"method:ListGrid.invalidateCache",
        flags:"",
        description:" Invalidate the current data cache for this databound component via a call to\n the dataset's <code>invalidateCache()</code> method, for example,\n ${isc.DocUtils.linkForRef('method:ResultSet.invalidateCache')}.\n <P>\n <b>NOTE:</b> there is no need to call <code>invalidateCache()</code> when a save operation\n is performed on a DataSource.  Automatic cache synchronization features will automatically\n update caches - see ${isc.DocUtils.linkForRef('class:ResultSet')} for details.  If automatic cache synchronization isn't\n working, troubleshoot the problem using the steps suggested \n <a href='http://forums.smartclient.com/showthread.php?t=8159#aGrid' target='_blank'>in the FAQ</a> rather\n than just calling invalidateCache().  Calling <code>invalidateCache()</code> unnecessarily\n causes extra server load and added code complexity.\n <P>\n Calling <code>invalidateCache()</code> will automatically cause a new fetch to \n be performed with the current set of criteria if data had been previously fetched and the\n component is currently drawn with data visible - there is no need to manually call\n fetchData() after invalidateCache() and this could result in duplicate fetches.  \n <P>\n While data is being re-loaded after a call to <code>invalidateCache()</code>, the widget is\n in a state similar to initial data load - it doesn't know the total length of the dataset\n and any APIs that act on records or row indices will necessarily fail and should not be\n called.  To detect that the widget is in this state, call ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown')}.\n <P>\n <code>invalidateCache()</code> only has an effect is this components dataset is a data\n manager class that manages a cache (eg ResultSet or ResultTree).  If data was provided as a\n simple Array or List, invalidateCache() does nothing.\n \n",
        name:"invalidateCache",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:ToolStrip.separatorSize":{
        ref:"attr:ToolStrip.separatorSize",
        flags:"IR",
        description:"Separator thickness in pixels",
        name:"separatorSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"8",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "method:Window.setAutoSize":{
        ref:"method:Window.setAutoSize",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:Window.autoSize')}\n",
        name:"setAutoSize",
        seeAlso:[
        ],
        params:[
            {
                description:"true if the window should auto-size to its content",
                optional:false,
                name:"autoSize",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "object:Tab":{
        methods:[
            "method:Tab.tabSelected",
            "method:Tab.tabDeselected"
        ],
        ref:"object:Tab",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/TabSet"
        ],
        attrs:[
            "attr:Tab.title",
            "attr:Tab.canEditTitle",
            "attr:Tab.prompt",
            "attr:Tab.pickerTitle",
            "attr:Tab.pane",
            "attr:Tab.paneMargin",
            "attr:Tab.ID",
            "attr:Tab.name",
            "attr:Tab.width",
            "attr:Tab.disabled",
            "attr:Tab.icon",
            "attr:Tab.iconSize",
            "attr:Tab.iconWidth",
            "attr:Tab.iconHeight",
            "attr:Tab.canReorder",
            "attr:Tab.canClose",
            "attr:Tab.closeIcon",
            "attr:Tab.closeIconSize"
        ],
        description:"<smartclient>\n Tabs are specified as objects, not class instances.  For example, when\n developing in JavaScript, a typical initialization block for a TabSet would look like\n this:\n <pre>\n TabSet.create({\n     tabs: [\n         {title: \"tab1\", pane: \"pane1\"},\n         {title: \"tab2\"}\n     ]\n });\n </pre>\n And in XML:\n <pre>\n &lt;TabSet&gt;\n    &lt;tabs&gt;\n        &lt;Tab title=\"tab1\" pane=\"pane1\"/&gt;\n        &lt;Tab title=\"tab2\"/&gt;\n    &lt;/tabs&gt;\n &lt;/TabSet&gt;\n </pre>\n </smartclient>\n <smartgwt>\n Tab instances for use with {@link com.smartgwt.client.widgets.tab.TabSet}. Tab \n instances specify the appearance ({@link com.smartgwt.client.widgets.tab.Tab#setTitle setTitle}, \n {@link com.smartgwt.client.widgets.tab.Tab#setIcon setIcon}) of the tab, and provide \n the tab's {@link com.smartgwt.client.widgets.tab.Tab#getPane pane}. See \n {@link com.smartgwt.client.widgets.tab.TabSet#setTabs setTabs} for \n further details.\n </smartgwt>",
        name:"Tab",
        seeAlso:[
        ],
        type:"object"
    },
    "group:metadata":{
        ref:"group:metadata",
        refs:[
            "method:CubeGrid.setFacetTitle",
            "method:CubeGrid.setFacetValueTitle"
        ],
        description:null,
        name:"metadata",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Toolbar.itemClick":{
        ref:"method:Toolbar.itemClick",
        flags:"A",
        description:"\tCalled when one of the buttons receives a click event\n",
        name:"itemClick",
        seeAlso:[
        ],
        params:[
            {
                description:"pointer to the button in question",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"button"
            },
            {
                description:"number of the button in question",
                optional:false,
                name:"itemNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar",
        groups:[
            "event handling"
        ]
    },
    "attr:Canvas.edgeBackgroundColor":{
        ref:"attr:Canvas.edgeBackgroundColor",
        flags:"IR",
        description:"Background color for the EdgedCanvas created to decorate this component.  This can be used\n to provide an underlying \"tint\" color for translucent edge media",
        name:"edgeBackgroundColor",
        seeAlso:[
        ],
        valueType:"Color",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:DetailViewerField.showFileInline":{
        ref:"attr:DetailViewerField.showFileInline",
        flags:"IR",
        description:"For a field of type:\"imageFile\", indicates whether to stream the image and display it\n inline or to display the View and Download icons.",
        name:"showFileInline",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:TimeItem.minuteValues":{
        ref:"attr:TimeItem.minuteValues",
        flags:"IRW",
        getter:[
            "getMinuteValues"
        ],
        description:"An array of values to make available in the ${isc.DocUtils.linkForRef('attr:TimeItem.minuteItem','minute picker')} when\n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.\n <P>Used for specifying a limited set of valid Minute values, or when using the \n TimeItem to record duration, rather than time per-se.\n <P> See ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMinValue','minuteMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMaxValue','minuteMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteIncrement','minuteIncrement')} for another method of controlling the \n content in the minute picker.",
        name:"minuteValues",
        setter:[
            "setMinuteValues"
        ],
        seeAlso:[
        ],
        valueType:"Array of Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:DataSource.useSubselectForRowCount":{
        ref:"attr:DataSource.useSubselectForRowCount",
        flags:"IR",
        description:"This property is only applicable to ${isc.DocUtils.linkForRef('attr:DataSource.serverType','SQL')} DataSources, and \n only for ${isc.DocUtils.linkForRef('class:OperationBinding','operations')} that express a \n ${isc.DocUtils.linkForRef('attr:OperationBinding.customSQL','customSQL')} clause.  In these circumstances, we \n generally switch off paging because we are unable to generate a \"row count\" query that\n tells the framework the size of the complete, unpaged resultset.\n <p>\n The <code>useSubselectForRowCount</code> flag causes the framework to derive a rowcount\n query by simply wrapping the entire customSQL clause in a subselect, like so:<code><br>\n &nbsp;&nbsp;&nbsp;&nbsp;SELECT COUNT(*) FROM ({customSQL clause here})</code>\n <p>\n However, this is not guaranteed to give good results.  Because the customSQL clause can\n contain anything that you can write in SQL, running it inside a subselect in order to \n count the rows might not work, might have unintended side-effects (if, for example, it \n is a stored procedure call that performs updates as part of its function), or it might \n just be a bad idea - for example, if the customSQL query is slow-running, you'll make \n it twice as slow with this flag, simply because you'll be running it twice.  We \n recommend using this flag with care.\n <p>\n NOTE: This setting can be overridden per-operation - see \n ${isc.DocUtils.linkForRef('attr:OperationBinding.useSubselectForRowCount')}.  You can also set a global default for\n this setting, so you don't have to specify it in every dataSource - define \n <code>useSubselectForRowCount</code> as true in your \n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file.",
        name:"useSubselectForRowCount",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "sqlPaging"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "method:Callbacks.CollapseSectionCallback":{
        ref:"method:Callbacks.CollapseSectionCallback",
        flags:"",
        description:" Callback to execute after the section has been collapsed.\n",
        name:"CollapseSectionCallback",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:Tab.prompt":{
        ref:"attr:Tab.prompt",
        flags:"IRW",
        description:"Specifies the prompt to be displayed when the mouse hovers over the tab.",
        name:"prompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "group:valueMap":{
        ref:"group:valueMap",
        refs:[
            "method:FormItem.getDisplayValue",
            "method:FormItem.setValueMap",
            "method:SelectItem.setValueMap",
            "method:CheckboxItem.setValueMap",
            "attr:FormItem.valueMap",
            "attr:CheckboxItem.valueMap"
        ],
        description:"A ${isc.DocUtils.linkForRef('type:ValueMap')} defines the set of legal values for a field, and optionally allows you to provide\n a mapping from stored values to values as seen by the end user.",
        name:"valueMap",
        seeAlso:[
        ],
        type:"group"
    },
    "classAttr:Operators.iNotEqualTitle":{
        ref:"classAttr:Operators.iNotEqualTitle",
        flags:"IR",
        description:"Title for the \"iNotEqual\" operator",
        name:"iNotEqualTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"not equal (ignore case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Facet.id":{
        ref:"attr:Facet.id",
        flags:"IR",
        description:"id of this facet.  Any string or number.",
        name:"id",
        seeAlso:[
        ],
        valueType:"String | Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:ComboBoxItem.textMatchStyle":{
        ref:"attr:ComboBoxItem.textMatchStyle",
        flags:"IR",
        description:"When applying filter criteria to pickList data, what type of matching to use.\n <P>\n For a databound pickList (${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionDataSource')} set), <code>textMatchStyle</code> is\n sent to the server as ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')}.\n <P>\n For a non-databound pickList, <code>textMatchStyle</code> is applied by \n ${isc.DocUtils.linkForRef('method:PickList.filterClientPickListData','filterClientPickListData()')}.",
        name:"textMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"\"startsWith\"",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "classAttr:Operators.iEndsWithTitle":{
        ref:"classAttr:Operators.iEndsWithTitle",
        flags:"IR",
        description:"Title for the \"iEndsWith\" operator",
        name:"iEndsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"ends with\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ComboBoxItem.sortField":{
        ref:"attr:ComboBoxItem.sortField",
        flags:"IR",
        description:"Specifies the field by which this item should be initially sorted.  Can be set to \n either a ${isc.DocUtils.linkForRef('attr:ListGridField.name','field name')} or the index of the field in the fields \n Array. Note that if <code>sortField</code> is initially specified as a number, it will be\n converted to a string (field name) after the item is initialized.",
        name:"sortField",
        seeAlso:[
        ],
        valueType:"String or integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sort')}"
        ],
        definingClass:"class:ComboBoxItem",
        groups:[
            "sorting"
        ]
    },
    "method:Canvas.setPageTop":{
        ref:"method:Canvas.setPageTop",
        flags:"",
        description:" Set the page-relative top coordinate of this widget.\n\n",
        name:"setPageTop",
        seeAlso:[
        ],
        params:[
            {
                description:"new top coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:TableView.recordLayout":{
        ref:"attr:TableView.recordLayout",
        flags:"IRW",
        description:"Sets the arrangement of data fields from the record.\n <p/>\n Note that controls supported by the TableView itself, such as navigation icons, are\n implicitly added to the data fields described in the RecordLayout.  If an\n ${isc.DocUtils.linkForRef('attr:TableView.iconField')} has been configured, it too is an implicitly shown field, to the left\n of the area controlled by RecordLayout.",
        name:"recordLayout",
        seeAlso:[
        ],
        valueType:"RecordLayout",
        defaultValue:"\"titleOnly\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "method:DateItem.getEnteredValue":{
        ref:"method:DateItem.getEnteredValue",
        flags:"",
        description:" Returns the raw text value typed into this items text field if ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} \n is true (otherwise returns the result of this.getValue()).\n",
        name:"getEnteredValue",
        seeAlso:[
        ],
        returns:{
            description:"value the user entered",
            type:"String"
        },
        type:"method",
        definingClass:"class:DateItem"
    },
    "attr:Slider.labelHeight":{
        ref:"attr:Slider.labelHeight",
        flags:"IRW",
        description:"The height of the labels used to display the minimum, maximum and current values of the\n slider.",
        name:"labelHeight",
        setter:[
            "setLabelHeight"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Slider"
    },
    "method:ListGrid.unfreezeField":{
        ref:"method:ListGrid.unfreezeField",
        flags:"",
        description:" Unfreeze a frozen field, so that it will now scroll along with other fields when horizontal\n scrolling occurs.\n\n",
        name:"unfreezeField",
        seeAlso:[
        ],
        params:[
            {
                description:"field or fields to unfreeze.  fields may be specified as ListGridField objects, field names or colNum.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField or Integer or String or Array"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "frozenFields"
        ]
    },
    "group:modal":{
        ref:"group:modal",
        refs:[
            "method:Window.flash",
            "attr:Window.isModal",
            "attr:Window.modalMask",
            "attr:Window.showModalMask",
            "attr:Window.modalMaskOpacity",
            "attr:Window.modalMaskStyle",
            "attr:Window.dismissOnOutsideClick"
        ],
        name:"modal",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DrawItem.setLineWidth":{
        ref:"method:DrawItem.setLineWidth",
        flags:"",
        description:" Update lineWidth for this drawItem.\n",
        name:"setLineWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new pixel lineWidth",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:Canvas.minHeight":{
        ref:"attr:Canvas.minHeight",
        flags:"IRWA",
        description:"Minimum height that this Canvas can be resized to by a user.\n <p>\n Note that a Canvas with overflow:\"visible\" has an implicit minimum size based on it's\n contents.\n <p>\n Note that <code>minHeight</code> affects only user-initiated drag resizes.  To set the\n minimum height of a Canvas embedded in a Layout, you can set ${isc.DocUtils.linkForRef('attr:Layout.minMemberSize')}\n to affect the minimum height of all members of the Layout.",
        name:"minHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:DrawLinePath.getCenter":{
        ref:"method:DrawLinePath.getCenter",
        flags:"",
        description:" Get the center point of the line path.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the center point",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawLinePath"
    },
    "attr:TimeItem.secondItemTitle":{
        ref:"attr:TimeItem.secondItemTitle",
        flags:"IRW",
        description:"Title to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.secondItem','second picker')}.",
        name:"secondItemTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Sec\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ButtonItem.height":{
        ref:"attr:ButtonItem.height",
        flags:"IRW",
        description:"By default buttonItems are sized to match their content (see ${isc.DocUtils.linkForRef('attr:ButtonItem.autoFit')}).\n Specifying an explicit size for the button will disable this behavior.",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ButtonItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.summaryRowStyle":{
        ref:"attr:ListGrid.summaryRowStyle",
        flags:"IRWA",
        description:"${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} for the ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRow')}",
        name:"summaryRowStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"gridSummaryCell\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.border":{
        ref:"attr:Canvas.border",
        flags:"IRW",
        description:"Set the CSS border of this component, as a CSS string including border-width,\n border-style, and/or color (eg \"2px solid blue\").\n <P>\n This property applies the same border to all four sides of this component.  Different\n per-side borders can be set in a CSS style and applied via ${isc.DocUtils.linkForRef('attr:Canvas.styleName')}.\n <p>\n If ${isc.DocUtils.linkForRef('attr:Canvas.isGroup')} is set to true then border is derived from the \n ${isc.DocUtils.linkForRef('attr:Canvas.groupBorderCSS')} attribute, not from the explicit border property.",
        name:"border",
        setter:[
            "setBorder"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:ListPropertiesPane.listProperties":{
        ref:"attr:ListPropertiesPane.listProperties",
        flags:"IRW",
        description:"The properties corresponding to the currently-selected list configuration.",
        name:"listProperties",
        seeAlso:[
        ],
        valueType:"ListProperties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesPane"
    },
    "attr:DataSourceField.propertiesOnly":{
        ref:"attr:DataSourceField.propertiesOnly",
        flags:"IR",
        description:"For use in ${isc.DocUtils.linkForRef('group:componentSchema')} for fields that contain other components, this flag\n suppresses auto-construction for subcomponents that appear under this field.\n <P>\n For example, the ${isc.DocUtils.linkForRef('class:VLayout')} schema sets this for its ${isc.DocUtils.linkForRef('attr:Layout.members','members')}\n property, so that when a VLayout is constructed via XML as follows:\n <pre>\n &lt;VLayout&gt;\n     &lt;members&gt;\n         &lt;ListGrid ID=\"myGrid\" .../&gt;\n         &lt;Toolstrip ID=\"myToolStrip\" ... /&gt;\n     &lt;/members&gt;\n &lt;/VLayout&gt;\n </pre>\n The ListGrid and ToolStrip do not construct themselves automatically.  Instead, the VLayout\n receives the properties of the ListGrid and ToolStrip as ordinary JavaScript Objects, with\n the special property <code>_constructor</code> set to the name of the class that should be\n constructed.",
        name:"propertiesOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentSchema"
        ]
    },
    "attr:MetricSettings.logScale":{
        ref:"attr:MetricSettings.logScale",
        flags:"IR",
        description:"Whether to use logarithmic scaling for values.\n <P>\n Logarithmic scale charts show an equivalent percentage increase as equivalent distance\n on the chart.  That is, 10 and 100 are the same distance apart as 100 and 1000 (each\n being a 10 times or 1000% increase).",
        name:"logScale",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:GridRenderer.getColumnWidth":{
        ref:"method:GridRenderer.getColumnWidth",
        flags:"A",
        description:" Return the width of a particular column.\n",
        name:"getColumnWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the column.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"width",
            type:"number"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "method:CubeGrid.hasChanges":{
        ref:"method:CubeGrid.hasChanges",
        flags:"",
        description:" Determines whether any cells in this cubeGrid have been edited but not yet saved to the\n underlying data set.\n",
        name:"hasChanges",
        seeAlso:[
        ],
        returns:{
            description:"true if any record in the grid has been edited but not yet saved",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "classAttr:Operators.containsFieldTitle":{
        ref:"classAttr:Operators.containsFieldTitle",
        flags:"IR",
        description:"Title for the \"containsField\" operator",
        name:"containsFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"contains (match case) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:Date.dayNames":{
        ref:"classAttr:Date.dayNames",
        flags:"IRWA",
        description:"This property may be set to an array of names of days of the week. <br>\n For example:\n <pre>\n [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"]\n </pre>\n The appropriate day name will then be returned from ${isc.DocUtils.linkForRef('method:Date.getDayName')}, and may\n be used whenever SmartClient components display day-names (for example in the\n ${isc.DocUtils.linkForRef('class:DateItem','DateItem class')}).<br>",
        name:"dayNames",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:Date",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DateItem.selectorFormat":{
        ref:"attr:DateItem.selectorFormat",
        flags:"IRW",
        description:"If showing date selectors rather than the date text field (so when \n <code>this.useTextField</code> is false), this property allows customization of the \n order of the day, month and year selector fields.  If unset these fields will match the\n specified inputFormat for this item.\n <P>\n Note: selectors may be ommitted entirely by setting selectorFormat to (for example) \n <code>\"MD\"</code>. In this case the value for the omitted selector will match the\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue','defaultValue')} specified for the item.  For example,\n if the selector format is \"MD\" (month and day only), the year comes from the Date\n specified as the defaultValue.",
        name:"selectorFormat",
        seeAlso:[
        ],
        valueType:"DateItemSelectorFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "group:writeCustomDataSource":{
        ref:"group:writeCustomDataSource",
        title:"Custom Server DataSources",
        treeLocation:[
            "Concepts/Persistence Technologies"
        ],
        refs:[
        ],
        description:"Out of the box, and with no code to write, SmartClient supports SQL, JPA and Hibernate for \n persistence, which includes EJB 3.0, EclipseLink and other Java persistence systems accessible\n via JPA.  For other Java-based persistence systems, such as legacy EJBs or systems\n proprietary to your company, you write a custom DataSource class in Java.  In most cases, it\n is possible to write a single, generic DataSource class that provides access to all data\n that is a available from a given persistence mechanism; for example, a single DataSource\n class can typically be written for accessing all data accessible via legacy EJB.\n <p>\n Note that a majority of the features of the SmartClient Server framework apply even when\n using your own persistence mechanism.  As with the features supported by SmartClient's\n browser-based visual components, SmartClient's server-side features rely only on the \n concept of a DataSource and not on the details of the ultimate persistence mechanism.  Hence\n they are usable with a custom DataSource regardless of the final data provider.\n <p>\n We provide a complete working example of a custom DataSource in the SmartClient Feature\n Explorer; you can see it in action ${isc.DocUtils.linkForExampleId('ormDataSource', 'here')}.  This example \n \"ormDataSource\" is an adaptor for Hibernate which supports the 4 CRUD operations, \n data paging, server-side sort and filter, and which participates correctly in \n ${isc.DocUtils.linkForRef('class:ResultSet','cache synchronization')}.  The code required is minimal, and the approaches\n taken generalize to any ORM system.  Studying the Java source code for this DataSource -\n which is available in the \"ORMDataSource.java\" tab in the example linked to above - is the\n best way to get a start on implementing your own custom DataSource.\n <p>\n <ul>\n <li><code>ORMDataSource</code> extends <code>BasicDataSource</code>.\n <li><code>ORMDataSource</code> is primarily an implementation of four key methods:\n     <code>executeFetch</code>, <code>executeAdd</code>, <code>executeUpdate</code> and \n     <code>executeRemove</code>.  All the logic related to the actual CRUD data operation\n     takes place in one of these methods.  This is the recommended approach.</li>\n <li>The class also implements the <code>execute</code> method.  This is an override of the\n     method that is actually called by the framework, and as such is an appropriate place to\n     set up shared objects that will be used in more than one CRUD operation, and to perform\n     shared pre- and post-processing.  As you can see, the example is setting up a Hibernate\n     session and transaction, and then calling <code>super.execute</code> - this calls back\n     into the framework and ultimately leads to the appropriate data operation method being\n     called.</li>\n <li>Note how each of the <code>executeXxx</code> methods conforms to the \n     ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource protocol')}.  To take <code>executeFetch</code> as \n     an example, note how it:\n     <ul><li>Retrieves the criteria for the fetch from the supplied <code>DSRequest</code></li>\n         <li>Implements logic to obey the <code>startRow</code>, <code>endRow</code> and \n             <code>batchSize</code> values.  This is only necessary for a DataSource that \n             intends to support automatic data paging.</li>\n         <li>Retrieves <code>sortByFields</code> from the supplied <code>DSrequest</code>, \n             and uses that value to change the order of the resultset.  This is only \n             necessary for a DataSource that intends to support server-side sorting.</li>\n         <li>Populates <code>startRow</code>, <code>endRow</code> and <code>totalRows</code>\n             on the <code>DSResponse</code>.</li>\n         <li>Populates the <code>DSResponse</code>'s <code>data</code> member with the list of \n             objects retrieved by the Hibernate call.</li>\n     </ul><br>\n     These are the only parts of this method that are of significance as far as SmartClient \n     is concerned - the rest of the method is concerned with communicating with the \n     data provider, which is of no interest to SmartClient as long as the method conforms to\n     the DataSource protocol for a \"fetch\" operation.</li>\n </ul>\n <p><br>\n <b>The DataSource descriptor</b>\n <p>\n Once your custom DataSource is implemented, you need to to create a descriptor for each \n instance of the DataSource.  As noted above, it is generally possible to write one custom \n DataSource class that is capable of handling all data access for a particular persistence \n mechanism.  DataSource descriptors, on the other hand, are written per entity.\n <p>\n A DataSource descriptor is an XML file with the special suffix <code>.ds.xml</code>.  The \n descriptor for a custom DataSource is, for the most part, identical to the descriptor for \n a built-in DataSource: it is the central place where you describe the DataSource instance\n to the system - its fields, validations, security constraints, special data operations, \n transaction chaining expressions and so on (see the ${isc.DocUtils.linkForRef('class:DataSource','DataSource docs')} \n for full details).\n <p>\n One property that is always required for a custom DataSource is \n ${isc.DocUtils.linkForRef('attr:DataSource.serverConstructor','serverConstructor')}.  This fully-qualified class \n name tells SmartClient what to instantiate when data operations for this DataSource arrive\n on the server - in other words, it is how you tell SmartClient to use your custom class.  \n In the ${isc.DocUtils.linkForExampleId('ormDataSource', 'ORM DataSource example')}, on the \n <code>ormDataSource_country</code> tab, you will see how we use this property to tie the\n <code>ormDataSource_country</code> DataSource <em>instance</em> to the \n <code>ormDataSource</code> DataSource <em>implementation</em>.\n <p>\n Finally, if your data model is based on Javabeans, or on POJOs that broadly follow the \n Javabean conventions (basically, if they have private state variables accessible via public \n getters and setters), SmartClient can automatically generate basic DataSource definitions \n for your beans that will only need minimal change (ie, specifying a \n <code>serverConstructor</code>) to be fully operational.  Both the \n ${isc.DocUtils.linkForExampleId('javabeanWizard', 'Visual Builder Javabean Wizard')} and the Batch DataSource \n Generator can create DataSource descriptors from existing beans.\n <p>\n <b>Server framework features relevant to custom DataSources</b>\n <P>\n The vast majority of the SmartClient Server framework's key features are not specific to the\n built-in SQL and Hibernate connectors, and still apply even when using a custom persistence\n mechanism.  See ${isc.DocUtils.linkForRef('group:featuresCustomPersistence','this overview')} of which features apply\n when using a custom persistence mechanism and how best to leverage those features.",
        name:"writeCustomDataSource",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DynamicForm.getItemErrorHTML":{
        ref:"method:DynamicForm.getItemErrorHTML",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} is true, this method is called for each item in the form\n and returns the error HTML to be written out next to the item.<br>\n Default implementation falls through to ${isc.DocUtils.linkForRef('method:FormItem.getErrorHTML')} on the item in question.\n",
        name:"getItemErrorHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"Form item for which the HTML should be retrieved",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"Error message to display for the item, or array of error message                              strings.",
                optional:false,
                name:"error",
                defaultValue:null,
                type:"string | array"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "classAttr:Messaging.connectTimeout":{
        ref:"classAttr:Messaging.connectTimeout",
        flags:"IR",
        description:"Number of milliseconds to wait when initiating a server connection before dropping the\n attempt and trying again.",
        name:"connectTimeout",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"4000",
        type:"classAttr",
        definingClass:"class:Messaging"
    },
    "attr:OperationBinding.transformMultipleFields":{
        ref:"attr:OperationBinding.transformMultipleFields",
        flags:"IR",
        description:"If set to \"false\", transformation of values for\n ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','multiple:true')} fields, normally controlled by\n ${isc.DocUtils.linkForRef('attr:DataSourceField.multipleStorage')}, is instead disabled for this OperationBinding.",
        name:"transformMultipleFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "multipleField"
        ]
    },
    "attr:SummaryBuilder.testRecord":{
        ref:"attr:SummaryBuilder.testRecord",
        flags:"IRA",
        description:"Record to use when showing sample output for the format string.\n <P>\n If not specified, the selected record in the component that launched the SummaryBuilder will\n be used, or if there's no selection, the first visible row, or with no component, a dummy\n data row derived automatically from the provided DataSource.",
        name:"testRecord",
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:ListGrid.getEditValue":{
        ref:"method:ListGrid.getEditValue",
        flags:"",
        description:"\n Returns the current temporary locally stored edit value for some field within a record\n being edited.\n\n",
        name:"getEditValue",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the row for which the editValue should be returned",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"index of the field, or fieldName, for which value should be                              returned",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number | string"
            }
        ],
        returns:{
            description:"edit value for the field in question",
            type:"any"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:ListGridField.showHover":{
        ref:"attr:ListGridField.showHover",
        flags:"IRW",
        description:"Whether to show hovers for this field.  The default hover will be the contents of the\n cell the user is hovering over, and can be customized via\n ${isc.DocUtils.linkForRef('method:ListGridField.hoverHTML','field.hoverHTML()')}.\n <P>\n ${isc.DocUtils.linkForRef('attr:ListGrid.canHover')} can be set to true to cause hovers to be shown for all fields\n by default.  In this case, <code>field.showHover</code> can be set to false to suppress\n hovers for an individual field.\n <P>\n All hovers can be disabled, regardless of other settings, by setting\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHover')} to false.",
        name:"showHover",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('valueHoverTips')}"
        ],
        definingClass:"object:ListGridField"
    },
    "method:ListGrid.getRowHeight":{
        ref:"method:ListGrid.getRowHeight",
        flags:"",
        description:" Return the height this row should be.  Default is this.cellHeight. If\n ${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights')} is false, the row may be rendered taller than this\n specified size.\n <P>\n If records will be variable height,\n you should switch on ${isc.DocUtils.linkForRef('attr:ListGrid.virtualScrolling','virtualScrolling')}.\n <P>\n Note if ${isc.DocUtils.linkForRef('attr:ListGrid.allowRowSpanning','row spanning')} is enabled,\n this method should return the height of a single row (with rowSpan set to 1).\n\n",
        name:"getRowHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"height in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.ungroup":{
        ref:"method:ListGrid.ungroup",
        flags:"",
        description:" Removes the grouping from the listgrid, restoring its original data\n\n",
        name:"ungroup",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Calendar.addLaneEvent":{
        ref:"method:Calendar.addLaneEvent",
        flags:"",
        description:" For ${isc.DocUtils.linkForRef('class:Timeline')}s, and for ${isc.DocUtils.linkForRef('attr:Calendar.dayView')}s with ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} set, create a new \n event and adds it to a particular ${isc.DocUtils.linkForRef('object:Lane')}.\n\n",
        name:"addLaneEvent",
        seeAlso:[
        ],
        params:[
            {
                description:"the Lane in which to add this event",
                optional:false,
                name:"laneName",
                defaultValue:null,
                type:"Lane"
            },
            {
                description:"start date of event, or CalendarEvent Object",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date or Object"
            },
            {
                description:"end date of event",
                optional:true,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"name of event",
                optional:true,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"description of event",
                optional:true,
                name:"description",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new values of additional fields to be updated",
                optional:true,
                name:"otherFields",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:MultiFileItem.removeButton":{
        ref:"attr:MultiFileItem.removeButton",
        flags:"IR",
        description:"Button for removing files.  Supports the properties of a ${isc.DocUtils.linkForRef('object:FormItemIcon')}.",
        name:"removeButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiFileItem"
    },
    "classAttr:Validator.notAnInteger":{
        ref:"classAttr:Validator.notAnInteger",
        flags:"IRA",
        description:"Default error message to display when standard <code>isInteger</code> type validator\n  returns false.",
        name:"notAnInteger",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be a whole number.\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataSource.defaultTextMatchStyle":{
        ref:"attr:DataSource.defaultTextMatchStyle",
        flags:"IR",
        description:"The default textMatchStyle to use for ${isc.DocUtils.linkForRef('class:DSRequest')}s that do not explicitly state \n a ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle','textMatchStyle')}.    Note, however, that DSRequests \n issued by ${isc.DocUtils.linkForRef('class:ListGrid')}s and other ${isc.DocUtils.linkForRef('interface:DataBoundComponent','components')} will \n generally have a setting for textMatchStyle on the component itself (see\n ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle')}, for example).",
        name:"defaultTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"\"exact\"",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('jsonDataSource')}",
            "${isc.DocUtils.linkForExampleId('simpleJSON')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration",
            "serverDataIntegration"
        ]
    },
    "attr:SimpleType.validOperators":{
        ref:"attr:SimpleType.validOperators",
        flags:"IR",
        description:"Set of search operators valid for this type.  \n <P>\n If not specified, the ${isc.DocUtils.linkForRef('attr:SimpleType.inheritsFrom','inherited')} type's operators will be used, finally\n defaulting to the default operators for the basic types (eg, integer).",
        name:"validOperators",
        seeAlso:[
        ],
        valueType:"Array of OperatorId",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SimpleType",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:ToolbarItem.buttonConstructor":{
        ref:"attr:ToolbarItem.buttonConstructor",
        flags:"IRWA",
        description:"Use AutoFitButtons rather than simple Buttons for this toolbar's buttons by default.",
        name:"buttonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"AutoFitButton",
        type:"attr",
        definingClass:"class:ToolbarItem"
    },
    "attr:StatefulCanvas.selected":{
        ref:"attr:StatefulCanvas.selected",
        flags:"IRW",
        description:"Whether this component is selected.  For some components, selection affects appearance.",
        name:"selected",
        setter:[
            "setSelected"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "method:String.startsWith":{
        ref:"method:String.startsWith",
        flags:"",
        description:"\t\t\tReturns true if this string starts with another string.\n",
        name:"startsWith",
        seeAlso:[
        ],
        params:[
            {
                description:"other string to check",
                optional:false,
                name:"substring",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"true == this string starts with substring",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:String",
        groups:[
            "stringProcessing"
        ]
    },
    "attr:DateRangeItem.inputFormat":{
        ref:"attr:DateRangeItem.inputFormat",
        flags:"IR",
        description:"For fields of type <code>\"date\"</code>, if this is an editable field such as a\n ${isc.DocUtils.linkForRef('class:TextItem')}, this property \n allows you to specify the ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat','inputFormat')} applied to the item.",
        name:"inputFormat",
        seeAlso:[
            {
                ref:"attr:FormItem.dateFormatter",
                description:null
            }
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "method:ListGrid.setFieldTitle":{
        ref:"method:ListGrid.setFieldTitle",
        flags:"",
        description:" Change the title of a field after the grid is created.\n\n",
        name:"setFieldTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the field, or index.",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"int | String"
            },
            {
                description:"new title",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:RPCRequest.useHttpProxy":{
        ref:"attr:RPCRequest.useHttpProxy",
        flags:"IR",
        description:"Indicates whether this request should use the HttpProxyServlet in order to enable contacting\n hosts other than the origin server (available only in Pro Edition or better).\n <P>\n When various UI components issues requests automatically, or when a call to\n ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendProxied')} is made, the HttpProxy will automatically be used for a URL\n that starts with \"http\" and uses a hostname other than \"localhost\" or\n <code>window.location.hostname</code>, or if the port number differs.\n <P>\n <code>rpcRequest.useHttpProxy</code> should only be used to force requests to go through the\n HttpProxy when the above rules don't work, or to avoid using the HttpProxy when contacting\n hosts that allow cross-site calls via the\n <a href='http://www.google.com/search?q=http+access+control' target='_blank'>Http Access Control</a>\n standard.\n <P>\n You can also set ${isc.DocUtils.linkForRef('classAttr:RPCManager.useHttpProxy')}:false to avoid ever using the\n HttpProxyServlet.",
        name:"useHttpProxy",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:FormItemIcon.showFocused":{
        ref:"attr:FormItemIcon.showFocused",
        flags:"IRWA",
        description:"Should this icon's image and/or ${isc.DocUtils.linkForRef('attr:FormItemIcon.baseStyle','baseStyle')} switch to the\n appropriate \"Focused\" value when the user puts focus on the form item or icon?",
        name:"showFocused",
        seeAlso:[
            {
                ref:"attr:FormItem.showFocusedIcons",
                description:null
            },
            {
                ref:"attr:FormItemIcon.showFocusedWithItem",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "attr:FacetChart.showGradationsOverData":{
        ref:"attr:FacetChart.showGradationsOverData",
        flags:"IR",
        description:"If set, gradation lines are drawn on top of data rather than underneath.",
        name:"showGradationsOverData",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ListGridField.optionDataSource":{
        ref:"attr:ListGridField.optionDataSource",
        flags:"IRW",
        description:"Derive a ${isc.DocUtils.linkForRef('type:ValueMap')} by fetching records from another DataSource and extracting\n the ${isc.DocUtils.linkForRef('attr:ListGridField.valueField','valueField')} and\n ${isc.DocUtils.linkForRef('attr:ListGridField.displayField','displayField')} in the loaded records, to derive one\n valueMap entry per record loaded from the optionDataSource.\n <P>\n Unlike the similar use of ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')} for ${isc.DocUtils.linkForRef('interface:PickList','pickLists')}\n used during editing or filtering, <code>listGridField.optionDataSource</code> causes the\n <b>entire set of records from the optionDataSource to be fetched</b>, without paging.\n Hence listGridField.optionDataSource is appropriate only for smaller valueMaps.  For very\n large valueMap situations, such as an accountId field that should be displayed as an\n accountName where there are thousands of accounts, the correct approach is:\n <ul>\n <li> do not set listGridField.optionDataSource\n <li> declare two fields in the DataSource, eg \"accountId\" and \"accountName\".\n <li> Set the ${isc.DocUtils.linkForRef('attr:ListGridField.displayField')} attribute on the data field to the\n      name of the display field.\n <li> When fetching records for display in a grid, have your server send back values for\n      both fields, but show only the data field (\"accountId\") in the grid.\n </ul>\n In this case the cells in the accountId field will show the record value from the\n accountName field.  This approach means the valueMap will never be loaded in its\n entirety, instead, each loaded record contains the valueMapping for that one record, as\n a pair of fields within the record.\n <p>\n If you are using the SmartClient Server Framework with the SQL or JPA/Hibernate built-in\n connectors, this entire approach can be achieved very easily using the\n ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom')} setting - see the\n ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom','docs for includeFrom')} for details.\n <P>\n Notes:\n <ul>\n <li>When using the above approach, it is key that the server return <b>both</b>\n the underlying stored value <b>and</b> the display value, as suggested above.\n This approach allows the ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')} property to be used to\n provide paged valueMaps during inline editing and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','inline filtering')}. This can be achieved by setting the\n <code>optionDataSource</code> attribute on the form item used to edit the field\n via ${isc.DocUtils.linkForRef('attr:ListGridField.editorProperties')} (for editing) or\n ${isc.DocUtils.linkForRef('attr:ListGridField.filterEditorProperties','field.filterEditorProperties')} (for\n filtering), without specifying an optionDataSource at the listGridField level.\n Alternatively developers can use ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap')} to\n suppress the fetch against the optionDataSource at the listGrid level.</li>\n <li>Setting <code>listGridField.optionDataSource</code> to the same dataSource as the\n listGrid is not the same as omitting the optionDataSource setting entirely. Unless\n ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap')} has been set to explicitly disable fetching,\n a fetch will be performed against the dataSource to build a valueMap which will be used\n as the definitive mapping from data to display values, rather than picking up the display\n values from the records themselves. This distinction is required to support cases where\n the ${isc.DocUtils.linkForRef('attr:ListGridField.valueField')} points to a different field in the grid (useful for\n hierarchical relationships, for example), or where ${isc.DocUtils.linkForRef('attr:ListGridField.optionCriteria')} or\n ${isc.DocUtils.linkForRef('attr:ListGridField.optionOperationId')} are specified and return different data from\n the records displayed within the grid.</li>\n <li>If a displayField is specified, with no associated optionDataSource, and the field is\n editable, updating the edit value for the field may not automatically update the displayField\n edit value, meaning the user may not realize the edit value has been modified.\n If the new value came from the user editing the field, and the edit item has\n a valueMap or optionDataSource specified, the display value is picked up automatically and\n stored out on the displayField for the record. However if the value was set programmatically,\n the developer should also set the edit value for the display field to ensure the displayed\n value reflects the new edit value. Note that when this occurs, a warning will be logged\n which can be disabled via ${isc.DocUtils.linkForRef('attr:ListGrid.warnOnUnmappedValueFieldChange')}.</li>\n <li>For very advanced usage a developer can use ${isc.DocUtils.linkForRef('attr:ListGridField.displayValueFromRecord')}\n to explicitly tell the grid whether or not to display the display field value for the record\n in this field when a displayField is specified. See documentation on that property for more\n information</li>\n </ul>",
        name:"optionDataSource",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "attr:FormItem.width":{
        ref:"attr:FormItem.width",
        flags:"IRW",
        getter:[
            "getWidth"
        ],
        description:"Width of the FormItem.  Can be either a number indicating a fixed width in pixels, or\n \"*\" indicating the FormItem fills the space allocated to it's column (or columns, for a\n ${isc.DocUtils.linkForRef('attr:FormItem.colSpan','column spanning')} item).\n <P>\n <smartgwt>If width is specified as a String, getWidth() will return -1.  Use \n +sgwtLink{getWidthAsString()} in this case.<p></smartgwt>\n See the ${isc.DocUtils.linkForRef('group:formLayout')} overview for details.",
        name:"width",
        seeAlso:[
        ],
        valueType:"int | String",
        defaultValue:"\"*\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('columnSpanning')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "formLayout"
        ]
    },
    "attr:MultiGroupDialog.addLevelButtonTitle":{
        ref:"attr:MultiGroupDialog.addLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the addLevelButton.  \n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiGroupPanel for i18n.",
        name:"addLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add Level\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.showFilterEditor":{
        ref:"attr:ListGrid.showFilterEditor",
        flags:"IRW",
        description:"Should this listGrid display a filter row.  If true, this ListGrid\n will be drawn with a single editable row, (separate from the body) with a filter button.\n <P>\n Values entered into this row are used as filter criteria to filter this List's data on\n enter-keypress or filter button click. ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle')} determines\n the textMatchStyle for the request passed to ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}.\n <P>\n The default ${isc.DocUtils.linkForRef('attr:FormItem.operator','search operator')} for an item in the filterEditor can\n be set via a field's ${isc.DocUtils.linkForRef('attr:ListGridField.filterEditorProperties','filterEditorProperties')}.  When this happens, calls to retrieve the criteria from the\n grid return ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}.\n <P>\n Note that if ${isc.DocUtils.linkForRef('method:ListGrid.filterData')} or ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} is called\n directly while the filter editor is showing, the filter editor values will be updated to\n reflect the new set of criteria. If you wish to retain the user entered filter criteria\n and modify a subset of field values programmatically, this can be achieved by\n copying the existing set of criteria and adding other changes - something\n like this:\n <smartclient>\n <pre><code>\n   var newCriteria = myListGrid.getFilterEditorCriteria();\n   isc.DataSource.combineCriteria(newCriteria, {\n      field1:\"new value1\",\n      field2:\"new value2\"\n   });\n   myListGrid.setCriteria(newCriteria);\n </code></pre>\n </smartclient>\n <smartgwt>\n <pre><code>\n   Criteria newCriteria = myListGrid.getFilterEditorCriteria();\n   newCriteria = DataSource.combineCriteria(newCriteria,\n      new Criteria(\"field1\", \"new value1\")\n   );\n   myListGrid.setCriteria(newCriteria);\n </code></pre>\n </smartgwt>\n In this example code we're using ${isc.DocUtils.linkForRef('method:ListGrid.getFilterEditorCriteria')} rather than\n ${isc.DocUtils.linkForRef('method:ListGrid.getCriteria')} - this ensures that if the user has typed a new value into\n the filter editor, but not yet clicked the filter button, we pick up the value the user\n entered.  This sample code uses ${isc.DocUtils.linkForRef('classMethod:DataSource.combineCriteria')} to combine the\n existing filterEditorCriteria with some new custom criteria.  This technique is\n applicable to both simple and advanced criteria.\n <P>\n If you call <code>filterData()</code> and pass in criteria for dataSource\n fields that are not present in the ListGrid, these criteria will continue to be applied\n along with the user-visible criteria.\n <P>\n <b>filterEditor and advanced criteria</b>: If a developer calls <code>filterData()</code>\n on a ListGrid and passes in ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}, expected behavior of the filter\n editor becomes ambiguous, since AdvancedCriteria has far more complex filter\n expression support than the ordinary filterEditor can represent.\n <P>\n Default behavior for AdvancedCriteria will combine the AdvancedCriteria with the values\n in the filter editor as follows:\n <ul>\n <li>If the top level criteria has operator of type \"and\":<br>\n  Each field in the top level\n  criteria array for which a 'canFilter' true field is shown in the listGrid will show up\n  if the specified operator matches the default filter behavior\n  (based on the ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle')}).<br>\n  If the user enters values in the filter editor, these will be combined with the\n  existing AdvancedCriteria by either replacing or adding field level criteria at the top\n  level.</li>\n <li>If the top level criteria is a single field-criteria:<br>\n  If the field shows up in the listGrid and is canFilter:true, it will be displayed to\n  the user (if the operator matches the default filter behavior for the field).<br>\n  If the user enters new filter criteria in the filterEditor, they will be combined with\n  this existing criterion via a top level \"and\" operator, or if the user modifies the\n  field for which the criterion already existed, it will be replaced.</li>\n <li>Otherwise, if there are multiple top level criteria combined with an \"or\" operator,\n  these will not be shown in the filter editor. Any filter parameters the user enters will\n  be added to the existing criteria via an additional top level \"and\" operator, meaning\n  the user will essentially filter a subset of the existing criteria</li>\n </ul>\n <P>\n See ${isc.DocUtils.linkForRef('attr:ListGrid.dropCriteriaOnHideField')}\n for behavior when hiding fields while the filter-editor is showing.",
        name:"showFilterEditor",
        setter:[
            "setShowFilterEditor"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('filter')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "filterEditor"
        ]
    },
    "attr:SelectItem.progressiveLoading":{
        ref:"attr:SelectItem.progressiveLoading",
        flags:"IRW",
        description:"Indicates whether or not this SelectItem will load its list of options \n ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressively')}.  This property is copied onto the\n underlying ${isc.DocUtils.linkForRef('interface:PickList')}.",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "progressiveLoading"
        ]
    },
    "method:TileLayout.getDragData":{
        ref:"method:TileLayout.getDragData",
        flags:"",
        description:"\n During a drag-and-drop interaction, this method returns the set of records being dragged out\n of the component.  In the default implementation, this is the list of currently selected\n records.<p>\n \n This method is consulted by ${isc.DocUtils.linkForRef('method:ListGrid.willAcceptDrop')}.\n\n",
        name:"getDragData",
        seeAlso:[
        ],
        params:[
            {
                description:"source component from which the records will be transferred",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"DataBoundComponent"
            }
        ],
        returns:{
            description:"Array of ${isc.DocUtils.linkForRef('object:Record')}s that are currently selected.",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"class:TileLayout",
        groups:[
            "dragging",
            "data"
        ]
    },
    "attr:DrawItem.moveKnobPoint":{
        ref:"attr:DrawItem.moveKnobPoint",
        flags:"IR",
        description:"If this item is showing a\n <smartclient>\"move\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.KnobType#MOVE}</smartgwt>\n ${isc.DocUtils.linkForRef('attr:DrawItem.knobs','control knob')}, this attribute specifies where the knob should appear\n with respect to the draw item.",
        name:"moveKnobPoint",
        seeAlso:[
            {
                ref:"attr:DrawItem.moveKnobOffset",
                description:null
            }
        ],
        valueType:"MoveKnobPoint",
        defaultValue:"\"TL\"",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:ListGridField.showSelectedIcon":{
        ref:"attr:ListGridField.showSelectedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n becomes selected.",
        name:"showSelectedIcon",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:EdgedCanvas.edgeOffsetRight":{
        ref:"attr:EdgedCanvas.edgeOffsetRight",
        flags:"IRA",
        description:"Amount the contained Canvas should be offset from the right.  Defaults to the size for\n the right edge.  Set smaller to allow the contained Canvas to overlap the edge and\n corner media.",
        name:"edgeOffsetRight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "method:ListGrid.sorterContextClick":{
        ref:"method:ListGrid.sorterContextClick",
        flags:"A",
        description:" Notification method fired when the user right-clicks on the corner\n ${isc.DocUtils.linkForRef('attr:ListGrid.sorterConstructor','sort button')}.  Return false to suppress the default\n behavior of showing the sorter's context menu.\n\n",
        name:"sorterContextClick",
        seeAlso:[
        ],
        returns:{
            description:"return false to suppress the context menu",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events",
            "sorting"
        ]
    },
    "object:Criterion":{
        methods:[
        ],
        ref:"object:Criterion",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
            "attr:Criterion.operator",
            "attr:Criterion.fieldName",
            "attr:Criterion.value",
            "attr:Criterion.criteria",
            "attr:Criterion.start",
            "attr:Criterion.end"
        ],
        description:"An object representing a criterion to apply to a record.  \n <P>\n A criterion is part of the definition of an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object, which is used to\n filter records according to search criteria. \n <P>\n A criterion consists of an ${isc.DocUtils.linkForRef('attr:Criterion.operator')} and typically a\n ${isc.DocUtils.linkForRef('attr:DataSourceField.name','fieldName')} from a\n ${isc.DocUtils.linkForRef('object:Record')} and a ${isc.DocUtils.linkForRef('attr:Criterion.value','value')} to compare to.  However some operators\n either don't require a value (eg, isNull) or act on other criteria rather than directly on a\n ${isc.DocUtils.linkForRef('object:Record')}'s fields (eg, the \"and\" and \"or\" logical operators).\n <P>\n A shortcut form is also allowed where only <code>fieldName</code> and <code>value</code>\n values are provided. In this case the <code>operator</code> is assumed to be \"equals\".",
        name:"Criterion",
        seeAlso:[
        ],
        type:"object",
        serverDS:"allowed",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:EditNode.type":{
        ref:"attr:EditNode.type",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:SCClassName')} of the <smartclient>${isc.DocUtils.linkForRef('attr:EditNode.liveObject')}</smartclient>\n <smartgwt>${isc.DocUtils.linkForRef('attr:EditNode.canvasLiveObject')}</smartgwt>, for example, \"ListGrid\".",
        name:"type",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:EditNode"
    },
    "method:CubeGrid.getCellColumn":{
        ref:"method:CubeGrid.getCellColumn",
        flags:"",
        description:" Given a record in this grid, this method returns the colNum in which the record is displayed.\n",
        name:"getCellColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"record to find coordinates for",
                optional:false,
                name:"cellRecord",
                defaultValue:null,
                type:"CellRecord"
            }
        ],
        returns:{
            description:"Column number for the record. Returns -1 if the record is not found.",
            type:"int"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:NavigationButton.backBaseStyle":{
        ref:"attr:NavigationButton.backBaseStyle",
        flags:"IRW",
        description:"Base style for navigation buttons where ${isc.DocUtils.linkForRef('type:Direction')} is set to <code>\"back\"</code>",
        name:"backBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"navBackButton\"",
        type:"attr",
        definingClass:"class:NavigationButton"
    },
    "attr:ColorPicker.supportsTransparency":{
        ref:"attr:ColorPicker.supportsTransparency",
        flags:"IR",
        description:"Determines whether to show the opacity slider. This allows the user to select colors\n with an alpha element (ie, semi-transparent colors). If this attribute is set to false,\n no opacity slider is shown, and all colors are completely opaque.",
        name:"supportsTransparency",
        setter:[
            "setSupportsTransparency"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "method:Canvas.getPageTop":{
        ref:"method:Canvas.getPageTop",
        flags:"A",
        description:" Returns the page-relative top coordinate of the widget on the page, in pixels\n",
        name:"getPageTop",
        seeAlso:[
        ],
        returns:{
            description:"GLOBAL top coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:Tab.iconWidth":{
        ref:"attr:Tab.iconWidth",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Tab.icon')} is specified, this property may be used to specify a size for the icon",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "attr:FormulaBuilder.messageLabel":{
        ref:"attr:FormulaBuilder.messageLabel",
        flags:"IR",
        description:"Label used for displaying messages related to the validity of the current formula.",
        name:"messageLabel",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:Canvas.mouseOver":{
        ref:"method:Canvas.mouseOver",
        flags:"A",
        description:"\n Executed when mouse enters this widget.  No default implementation.\n\n",
        name:"mouseOver",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:DetailViewerField.imageHeight":{
        ref:"attr:DetailViewerField.imageHeight",
        flags:"IRW",
        description:"Height of image shown for fieldTypes image in this field.\n <P>\n If set to a String, assumed to be a property on each record that specifies the image\n height.  For example, if <code>field.imageHeight</code> is \"logoHeight\",\n <code>record.logoHeight</code> will control the height of the image.",
        name:"imageHeight",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.imageSize",
                description:null
            },
            {
                ref:"attr:DetailViewerField.imageWidth",
                description:null
            }
        ],
        valueType:"Integer | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:ListGrid.headerContextMenu":{
        ref:"attr:ListGrid.headerContextMenu",
        flags:"R",
        description:"The context menu displayed for column headers.",
        name:"headerContextMenu",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "attr:ComboBoxItem.showPickerIcon":{
        ref:"attr:ComboBoxItem.showPickerIcon",
        flags:"IRW",
        description:"Should we show a special 'picker' ${isc.DocUtils.linkForRef('object:FormItemIcon','icon')} for this form item? Picker\n icons are customizable via ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconProperties','pickerIconProperties')}. By default\n they will be rendered inside the form item's \"control box\" area, and will call\n ${isc.DocUtils.linkForRef('method:FormItem.showPicker')} when clicked.",
        name:"showPickerIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:CheckboxItem.showValueIconOver":{
        ref:"attr:CheckboxItem.showValueIconOver",
        flags:"IRWA",
        description:"Should an \"Over\" state icon be shown when the user rolls over this checkbox",
        name:"showValueIconOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:TabSet.setPaneContainerOverflow":{
        ref:"method:TabSet.setPaneContainerOverflow",
        flags:"",
        description:" Update ${isc.DocUtils.linkForRef('attr:TabSet.paneContainerOverflow')} after creation.\n\n",
        name:"setPaneContainerOverflow",
        seeAlso:[
        ],
        params:[
            {
                description:"new overflow setting",
                optional:false,
                name:"newOverflow",
                defaultValue:null,
                type:"Overflow"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:Calendar.initialCriteria":{
        ref:"attr:Calendar.initialCriteria",
        flags:"IR",
        description:"Criteria to be used when ${isc.DocUtils.linkForRef('attr:Calendar.autoFetchData')} is set.",
        name:"initialCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:DrawItem.destroying":{
        ref:"attr:DrawItem.destroying",
        flags:"RA",
        description:"Flag indicating a drawItem is mid-destruction, similar to ${isc.DocUtils.linkForRef('attr:Canvas.destroying')}.",
        name:"destroying",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:DSResponse.invalidateCache":{
        ref:"attr:DSResponse.invalidateCache",
        flags:"R",
        description:"Optional flag that can be set by the server to force ResultSets to drop any caches of\n records from the DataSource that was the target of the operation.",
        name:"invalidateCache",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "cacheSync"
        ]
    },
    "classMethod:Page.getScrollTop":{
        ref:"classMethod:Page.getScrollTop",
        flags:"",
        description:"\t\tGet the amount that the browser window has been scrolled vertically.\n",
        name:"getScrollTop",
        seeAlso:[
        ],
        returns:{
            description:"vertical scroll amount",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "sizing"
        ]
    },
    "attr:FilterBuilder.topOperatorTitle":{
        ref:"attr:FilterBuilder.topOperatorTitle",
        flags:"IR",
        description:"The title for the left-aligned Operator selectItem in the ${isc.DocUtils.linkForRef('attr:FilterBuilder.topOperatorForm')}.",
        name:"topOperatorTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Clause Operator\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:StatefulCanvas.state":{
        ref:"attr:StatefulCanvas.state",
        flags:"IRWA",
        getter:[
            "getState"
        ],
        description:"Current \"state\" of this widget. The state setting is automatically updated as the \n user interacts with the component (see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')}, \n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')}, ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')}).\n <P>\n StatefulCanvases will have a different appearance based\n on their current state. \n By default this is handled by changing the css className applied to\n the StatefulCanvas - see ${isc.DocUtils.linkForRef('attr:StatefulCanvas.baseStyle')} and \n ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of how this is done.\n <P>\n For ${isc.DocUtils.linkForRef('class:Img')} or ${isc.DocUtils.linkForRef('class:StretchImg')} based subclasses of StatefulCanvas, the \n appearance may also be updated by changing the src of the rendered image. See\n ${isc.DocUtils.linkForRef('attr:Img.src')} and ${isc.DocUtils.linkForRef('attr:StretchImgButton.src')} for a description of how the URL \n is modified to reflect the state of the widget in this case.",
        name:"state",
        setter:[
            "setState"
        ],
        seeAlso:[
            {
                ref:"type:State",
                description:null
            },
            {
                ref:"group:state",
                description:null
            }
        ],
        valueType:"State",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "method:ListGrid.setCanFreezeFields":{
        ref:"method:ListGrid.setCanFreezeFields",
        flags:"",
        description:" Setter method for ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields')}\n",
        name:"setCanFreezeFields",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for <code>listGrid.canFreezeFields</code>",
                optional:false,
                name:"canFreeze",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DataSource.addSearchOperator":{
        ref:"method:DataSource.addSearchOperator",
        flags:"",
        description:" Add a new search operator, only to this DataSource.  \n <P>\n If an existing ${isc.DocUtils.linkForRef('object:Operator')} is passed, restricts the set of FieldTypes to which that\n operator can be applied in this DataSource.\n <P>\n See also ${isc.DocUtils.linkForRef('classMethod:DataSource.addSearchOperator')} for adding operators to all\n DataSources.\n\n",
        name:"addSearchOperator",
        seeAlso:[
        ],
        params:[
            {
                description:"definition of the operator to add",
                optional:false,
                name:"operator",
                defaultValue:null,
                type:"Operator"
            },
            {
                description:"types to which this operator applies",
                optional:true,
                name:"types",
                defaultValue:null,
                type:"Array of FieldType"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "method:TileLayout.getTile":{
        ref:"method:TileLayout.getTile",
        flags:"",
        description:" Retrieve a tile by index.  \n <P>\n The TileLayout consistently uses this method to access tiles, in order to allow subclasses\n to create tiles on demand.\n\n",
        name:"getTile",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the tile",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"the tile",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:TileLayout"
    },
    "method:ListPropertiesDialog.applyClick":{
        ref:"method:ListPropertiesDialog.applyClick",
        flags:"",
        description:" Notification method fired when the ${isc.DocUtils.linkForRef('attr:ListPropertiesDialog.applyButton','Apply button')}\n is clicked.\n",
        name:"applyClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the list properties to apply",
                optional:false,
                name:"listProperties",
                defaultValue:null,
                type:"ListProperties"
            }
        ],
        type:"method",
        definingClass:"class:ListPropertiesDialog"
    },
    "attr:AdvancedHiliteEditor.cancelButtonTitle":{
        ref:"attr:AdvancedHiliteEditor.cancelButtonTitle",
        flags:"IR",
        description:"The title text for the ${isc.DocUtils.linkForRef('attr:AdvancedHiliteEditor.cancelButton','cancelButton')}.",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "method:PortalLayout.removeColumn":{
        ref:"method:PortalLayout.removeColumn",
        flags:"",
        description:" Removes the specified column from this layout.\n All portlets displayed within this column will be destroyed when the column is removed.\n",
        name:"removeColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"column number to remove",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:ColumnTree.closedIconSuffix":{
        ref:"attr:ColumnTree.closedIconSuffix",
        flags:"IRW",
        description:"This suffix will be appended to the ${isc.DocUtils.linkForRef('attr:ColumnTree.folderIcon')} for closed folders.\n If ${isc.DocUtils.linkForRef('attr:ColumnTree.showOpenIcons')} is set to <code>false</code> this suffix will also be\n appended to open folders' icons.",
        name:"closedIconSuffix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"closed\"",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "attr:Canvas.contents":{
        ref:"attr:Canvas.contents",
        flags:"IRWA",
        getter:[
            "getContents"
        ],
        description:"The contents of a canvas or label widget. Any HTML string is acceptable.",
        name:"contents",
        setter:[
            "setContents"
        ],
        seeAlso:[
            {
                ref:"attr:Canvas.dynamicContents",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "contents"
        ]
    },
    "attr:MultiSortDialog.cancelButton":{
        ref:"attr:MultiSortDialog.cancelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing the mechanism for closing this\n Dialog without accepting the current sort configuration.  The passed callback is fired \n with a single null parameter, indicating that the operation was cancelled.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortDialog.cancelButtonProperties</code> and \n <code>multiSortDialog.cancelButtonDefaults</code>.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "attr:ListGridRecord._canRemove":{
        ref:"attr:ListGridRecord._canRemove",
        flags:"IRW",
        description:"Default property name denoting whether this record can be removed. Property name may be\n modified for the grid via ${isc.DocUtils.linkForRef('attr:ListGrid.recordCanRemoveProperty')}.",
        name:"_canRemove",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridRecord",
        groups:[
            "editing"
        ]
    },
    "type:OperatorValueType":{
        ref:"type:OperatorValueType",
        values:[
            {
                description:"${isc.DocUtils.linkForRef('attr:Criterion.value')} should contain a value of the same type as the                    field.",
                value:"\"fieldType\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:Criterion.value')} should be the name of another field in the record",
                value:"\"fieldName\""
            },
            {
                description:"no criterion.value or other setting required (used for operators like                    isNull).",
                value:"\"none\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:Criterion.criteria')} should be an Array of criteria (used for logical                   operators like \"and\").",
                value:"\"criteria\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:Criterion.start')} and ${isc.DocUtils.linkForRef('attr:Criterion.end')} should contain start and                     end values, both of the same type as the field.",
                value:"\"valueRange\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:Criterion.value')} should contain an Array of valid field values.",
                value:"\"valueSet\""
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:Criterion.value')} should contain a value which is not necessarily the                 same type as the field (used for regexp and similar operators).  \n                 ${isc.DocUtils.linkForRef('attr:Operator.editorType')} can be specified as a FormItem to use to\n                 enter a value for the criterion.",
                value:"\"custom\""
            }
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        description:"Indicates the kind of value expected in a ${isc.DocUtils.linkForRef('object:Criterion')} that uses this operator.",
        name:"OperatorValueType",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:ToolStripSeparator.skinImgDir":{
        ref:"attr:ToolStripSeparator.skinImgDir",
        flags:"IR",
        description:"Path to separator image.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/ToolStrip/\"",
        type:"attr",
        definingClass:"class:ToolStripSeparator"
    },
    "method:ListGrid.headerHover":{
        ref:"method:ListGrid.headerHover",
        flags:"A",
        description:" Handle a hover over a button in the header.\n\n",
        name:"headerHover",
        seeAlso:[
            {
                ref:"method:ListGrid.headerHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"field number for the header that was hovered",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events",
            "gridHeader",
            "hovers"
        ]
    },
    "attr:TabSet.canCloseTabs":{
        ref:"attr:TabSet.canCloseTabs",
        flags:"IRW",
        description:"Should tabs in this tabSet show an icon allowing the user to dismiss the tab by\n clicking on it directly. May be overridden for individual tabs by setting \n ${isc.DocUtils.linkForRef('attr:Tab.canClose')}.\n <P>\n The URL for this icon's image will be derived from  ${isc.DocUtils.linkForRef('attr:TabSet.closeTabIcon')} by \n default, but may be overridden by explicitly specifying ${isc.DocUtils.linkForRef('attr:Tab.closeIcon')}.\n <P>\n <b>Note</b>: Currently, tabs can only show a single icon, so a closable tab will show\n the close icon only even if ${isc.DocUtils.linkForRef('attr:Tab.icon')} is set.  To work around this, add the icon\n as an HTML &lt;img&gt; tag to the ${isc.DocUtils.linkForRef('attr:Tab.title')} property, for example:\n <smartclient>\n <pre>\n    title : \"&lt;span&gt;\" + isc.Canvas.imgHTML(\"path/to/icon.png\") + \" Tab Title&lt;/span&gt;\"\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n    tab.setTitle(\"&lt;span&gt;\" + Canvas.imgHTML(\"path/to/icon.png\") + \" Tab Title&lt;/span&gt;\");\n </pre>\n </smartgwt>",
        name:"canCloseTabs",
        setter:[
            "setCanCloseTabs"
        ],
        seeAlso:[
            {
                ref:"method:TabSet.closeClick",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:Slider.title":{
        ref:"attr:Slider.title",
        flags:"IRW",
        description:"Optional display title for the slider.",
        name:"title",
        setter:[
            "setTitle"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.showTitle",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"Set Value\"",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:FormItem.showFocusedErrorState":{
        ref:"attr:FormItem.showFocusedErrorState",
        flags:"IRWA",
        description:"If set to true, when an item has errors and is focused, an \"ErrorFocused\" suffix \n will appear on the stylename.",
        name:"showFocusedErrorState",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:SelectItem.pickerIconWidth":{
        ref:"attr:SelectItem.pickerIconWidth",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:SelectItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n size of the picker icon. If unset, the picker icon will be sized as a square to fit in the\n available height for the icon.\n <p>\n It is not recommended to change the pickerIconWidth from the default value if ${isc.DocUtils.linkForRef('group:skinning','spriting')}\n is enabled because the image sprites are set up assuming specific, fixed dimensions of the picker\n icon. If the pickerIconWidth must be changed, then the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')}\n should be changed to a custom CSS style name.",
        name:"pickerIconWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "pickerIcon"
        ]
    },
    "method:List.set":{
        ref:"method:List.set",
        flags:"",
        description:" Change the array element at a particular position.\n <P>\n set() can be used to expand the length of the list.\n\n",
        name:"set",
        seeAlso:[
        ],
        params:[
            {
                description:"position in the list to change",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new value for that position",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"whatever's at that position, null if not found",
            type:"object"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "method:CubeGrid.facetValueOut":{
        ref:"method:CubeGrid.facetValueOut",
        flags:"",
        description:" StringMethod handler fired when mouseout occurs for a facetValues header button\n",
        name:"facetValueOut",
        seeAlso:[
        ],
        params:[
            {
                description:"FacetValueMap for the appropriate header button",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events"
        ]
    },
    "method:Tree.find":{
        ref:"method:Tree.find",
        flags:"",
        description:"\n Find a node within this tree using a string path or by attribute value(s).  This method can be\n called with 1 or 2 arguments. If a single String\n argument is supplied, the value of the argument is treated as the path to the node.  If a \n single argument of type Object is provided, it is treated as a set of field name/value \n pairs to search for (see ${isc.DocUtils.linkForRef('method:List.find')}).\n <br>\n If 2 arguments are supplied, this method will treat the first argument as a fieldName, and\n return the first node encountered where <code>node[fieldName]</code> matches the second \n argument.  So for example, given this tree:\n <pre>\n foo\n   zoo\n     bar\n   moo\n     bar\n </pre>\n Assuming your ${isc.DocUtils.linkForRef('attr:Tree.pathDelim')} is the default <code>/</code> and <code>foo</code>\n is the name of the root node, then\n <code>tree.find(\"foo/moo/bar\")</code> would return the <code>bar</code> node under the\n <code>moo</code> node.\n <br><br>\n <code>tree.find(\"name\", \"bar\")</code> would return the first <code>bar</code> node because\n it is the first one in the list whose <code>name</code> (default value of\n ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')}) property matches the value\n <code>bar</code>.  The two argument usage is generally more interesting when your tree nodes\n have some custom unique property that you wish to search on.  For example if your tree nodes\n had a unique field called \"UID\", their serialized form would look something like this:\n <pre>\n { name: \"foo\", children: [...], UID:\"someUniqueId\"}\n </pre> \n You could then call <code>tree.find(\"UID\", \"someUniqueId\")</code> to find that node.  Note\n that the value doesn't have to be a string - it can be any valid JS value, but since this\n data generally comes from the server, the typical types are string, number, and boolean.\n <br><br>\n The usage where you pass a single object is interesting when your tree nodes have a number\n of custom properties that you want to search for in combination.  Say your tree nodes had \n properties for \"color\" and \"shape\"; <code>tree.find({color: \"green\", shape: \"circle\"})</code>\n would return the first node in the tree where both properties matched.\n <br><br>\n When searching by path, trailing path delimiters are ignored.  So for example\n <code>tree.find(\"foo/zoo/bar\")</code> is equivalent to\n <code>tree.find(\"foo/zoo/bar/\")</code>\n \n",
        name:"find",
        seeAlso:[
            {
                ref:"attr:Tree.root",
                description:null
            },
            {
                ref:"attr:Tree.pathDelim",
                description:null
            },
            {
                ref:"attr:Tree.nameProperty",
                description:null
            }
        ],
        params:[
            {
                description:"Either the path to the node to be found, or the name of                                      a field which should match the value passed as a second\n                                      parameter",
                optional:false,
                name:"fieldNameOrPath",
                defaultValue:null,
                type:"string"
            },
            {
                description:"If specified, this is the desired value for the                                    appropriate field",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"the node matching the supplied criteria or null if not found",
            type:"object"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "location"
        ]
    },
    "group:operations":{
        ref:"group:operations",
        title:"Operations Overview",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        refs:[
            "method:DataSource.fetchData",
            "method:DataSource.filterData",
            "method:DataSource.exportData",
            "method:DataSource.addData",
            "method:DataSource.updateData",
            "method:DataSource.removeData",
            "method:DataSource.validateData",
            "method:DataSource.performCustomOperation",
            "classMethod:RPCManager.handleError",
            "attr:DSRequest.operationId",
            "attr:ResultSet.fetchOperation",
            "attr:DataBoundComponent.fetchOperation",
            "attr:DataBoundComponent.updateOperation",
            "attr:DataBoundComponent.addOperation",
            "attr:DataBoundComponent.removeOperation",
            "attr:ValuesManager.addOperation",
            "attr:ValuesManager.updateOperation",
            "attr:ValuesManager.removeOperation"
        ],
        description:"SmartClient Operations are dynamic, transparent communications made from the client-side\n SmartClient system running in the browser, to the server-side SmartClient system running in\n a servlet engine, or to other non-SmartClient servers available via HTTP. Operations are\n used to load new data or new behavior into a running SmartClient application. Operations are\n also used to save data entered by users, and in general, to get the result of any process\n which must be run on the server for security reasons.\n <br><br>\n\n <b>RPC Operations</b>\n <br><br>\n RPC Operations are low-level communications that send and retrieve arbitrary data.  RPC\n Operations are supported by the ${isc.DocUtils.linkForRef('class:RPCManager')} class, which when used with the\n SmartClient server, provides Java to JavaScript ${isc.DocUtils.linkForRef('attr:RPCRequest.data','2-way translation')} of\n basic data structures.  The RPCManager also provides a mechanism for client-side code to be\n invoked when an operation completes (called a \"callback\").  RPC Operations are intended for\n unstructured data; data that is ultimately destined for display in SmartClient components\n will generally come from DataSource operations.\n <br><br>\n\n <b>DataSource Operations and DataBound Components</b>\n <br><br>\n A ${isc.DocUtils.linkForRef('group:dataSourceOperations','DataSource Operation')} is an operation that acts on a\n DataSource, performing one of the basic actions that makes sense on a set of similar\n records: \"fetch\", \"add\", \"update\" or \"remove\".  Unlike RPC operations, DataSource operations\n have specific request data and response data, for example, in the \"fetch\" DataSource\n operation, the request data is expected to be search criteria, and the response data is\n expected to be a list of matching DataSource records.  Although DataSource operations can be\n invoked manually from the client, they are generally automatically invoked by DataBound\n components.\n <br><br>\n DataBound Components are components that understand DataSources.  Databound components\n configured with a DataSource are able to offer complete user interactions without further\n configuration (extensive customization is also supported).\n <br><br>\n For example, given a DataSource, the ListGrid component supports a sophisticated inline\n editing interaction, complete with automatically chosen editors like date pickers for dates,\n type-aware validation, saving, and error reporting. \n <br><br>\n A DataBound component supporting an interaction such as inline editing will automatically\n submit DataSource operations to the server at appropriate times.\n <br><br>\n\n <b>DataSource Operation Integration</b>\n <br><br>\n Integrating DataSource operations with an existing system is best approached by implementing\n the the 4 basic DataSource operations in terms of your existing object model or data store.\n With these 4 operations implemented, the entire range of user interactions supported by\n SmartClient ${isc.DocUtils.linkForRef('interface:DataBoundComponent','databinding-capable components')} becomes applicable to\n your server.  At that point authentication, authorization and other business rules can be\n layered on top.\n <br><br>\n\n <b>Built-in SQL Connectivity</b>\n <br><br>\n The SmartClient Server comes with a built-in ${isc.DocUtils.linkForRef('group:sqlDataSource','SQLDataSource')}\n which can be used without any server-side code needing to be written.  In contrast,\n any operation which uses custom server-side code is called a \"Custom Operation\".\n <br><br>\n Generally it makes sense to prototype an application using Built-in DataSource Operations,\n then on the backend, create Custom DataSource Operations to retrieve data from the data\n store you will use in production (though don't rule out using the SQL DataSource in \n production - see ${isc.DocUtils.linkForRef('group:sqlVsJPA','this discussion')} of the advantages of doing so}.  \n As you switch from using Built-in DataSources to Custom Operations, no client-side code \n changes will be required, because the client cares only about the DataSource definition, \n not the data store which the data is ultimately retrieved from.\n <br><br>\n\n <b>Data Managers: ResultSet and ResultTree</b>\n <br><br>\n Data Managers manage datasets retrieved from DataSources.  Data Managers are automatically\n created by DataBound components, but can be created directly when more control is needed.\n <br><br>\n Data Managers provide load-on-demand for datasets too large to be loaded on the client,\n automatically invoking DataSource operations as necessary to retrieve data as it is\n requested, and optionally fetching ahead to anticipate further requests.   Data Managers\n will automatically perform actions locally when it is possible, for example, a sort\n action can be performed locally with a complete cache.  Data Managers also automatically\n manage the consistency of the client-side cache, observing update operations performed\n against DataSources and integrating updated rows automatically.\n <br><br>",
        name:"operations",
        seeAlso:[
            {
                ref:"class:RPCManager",
                description:"for RPC Operations"
            },
            {
                ref:"interface:DataBoundComponent",
                description:"for information on DataBound Components"
            },
            {
                ref:"group:dataSourceOperations",
                description:"for more information on DataSource Operations"
            },
            {
                ref:"group:clientServerIntegration",
                description:"for information on integrating DataSource Operations with existing servers"
            },
            {
                ref:"method:DataSource.fetchData",
                description:"for manually invoked DataSource operations"
            },
            {
                ref:"class:ResultSet",
                description:"for managing lists of records"
            },
            {
                ref:"class:ResultTree",
                description:"for managing trees of records"
            }
        ],
        type:"group"
    },
    "method:ValuesManager.handleHiddenValidationErrors":{
        ref:"method:ValuesManager.handleHiddenValidationErrors",
        flags:"A",
        description:" Method to display validation error messages for a valuesManager when there is not\n currently visible form item displaying the errors.\n This will be called when validation fails for<br>\n - a field in a hidden or undrawn member form<br>\n - a hidden field in a visible member form<br>\n - for databound ValuesManagers, a datasource field with specified validators, but not\n   associated item in any member.<br>\n Implement this to provide custom validation error handling for these fields.<br>\n By default hidden validation errors will be logged as warnings in the developerConsole.\n Return false from this method to suppress that behavior.\n",
        name:"handleHiddenValidationErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"The set of errors returned - this is an object of the form<br>                      &nbsp;&nbsp;<code>{fieldName:errors}</code><br>\n                      Where the 'errors' object is either a single string or an array\n                      of strings containing the error messages for the field.",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"false from this method to suppress that behavior",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ValuesManager"
    },
    "attr:FileItem.viewIconSrc":{
        ref:"attr:FileItem.viewIconSrc",
        flags:"IR",
        description:"Returns the URL for an Icon that will allow the file to be viewed.",
        name:"viewIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"“[SKIN]actions/view.png”",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "images"
        ]
    },
    "method:DrawCurve.getCenter":{
        ref:"method:DrawCurve.getCenter",
        flags:"",
        description:" Get the center point of the rectangle from the curve's ${isc.DocUtils.linkForRef('attr:DrawCurve.startPoint','startPoint')}\n to the ${isc.DocUtils.linkForRef('attr:DrawCurve.endPoint','endPoint')}.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the center point",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "group:menuItems":{
        ref:"group:menuItems",
        refs:[
            "method:Menu.getItem",
            "method:Menu.getItemNum"
        ],
        name:"menuItems",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormulaBuilder.testButtonTitle":{
        ref:"attr:FormulaBuilder.testButtonTitle",
        flags:"IRWA",
        description:"The default title for the \"Test\" button.",
        name:"testButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Test\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:StretchImg.showTitle":{
        ref:"attr:StretchImg.showTitle",
        flags:"IRWA",
        description:"Determines whether any specified ${isc.DocUtils.linkForRef('method:StatefulCanvas.getTitle','title')} will be \n displayed for this component.<br>\n Applies to Image-based components only, where the title will be rendered out in a label\n floating over the component",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImg"
    },
    "attr:TabSet.bottomEdgeOffsets":{
        ref:"attr:TabSet.bottomEdgeOffsets",
        flags:"IR",
        description:"If this tabSet will ${isc.DocUtils.linkForRef('attr:TabSet.showPaneContainerEdges','show edges')} for the paneContainer,\n and ${isc.DocUtils.linkForRef('attr:TabSet.symmetricEdges')} is set to false, the <code>leftEdgeOffsets</code>, \n <code>rightEdgeOffsets</code>, <code>topEdgeOffsets</code> and <code>bottomEdgeOffsets</code> \n properties allow the offsets of edges for the paneContainer to be customized depending on\n the ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.\n <P>\n The attribute should be specified an ${isc.DocUtils.linkForRef('type:EdgeSizes','edgeSizes map')}, specifying the\n desired edge offsets where for the appropriate ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition')}.",
        name:"bottomEdgeOffsets",
        seeAlso:[
        ],
        valueType:"EdgeSizes",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:DataSource.dbName":{
        ref:"attr:DataSource.dbName",
        flags:"IR",
        description:"For DataSources using the ${isc.DocUtils.linkForRef('group:sqlDataSource','SmartClient SQL engine')} for\n persistence, which database configuration to use.  Database configurations can be\n created using the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')}.  If unset, the default\n database configuration is used (which is also settable using the \"Databases\" tab).",
        name:"dbName",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "classMethod:Page.waitForMultiple":{
        ref:"classMethod:Page.waitForMultiple",
        flags:"",
        description:" Wait for methods to fire on multiple objects.\n <P>\n <code>waitForMultiple</code> is similar to ${isc.DocUtils.linkForRef('classMethod:Page.waitFor')}, except that it does not fire\n its callback until all of the provided methods have fired.\n\n",
        name:"waitForMultiple",
        seeAlso:[
        ],
        params:[
            {
                description:"an array of objects, each of which consists of two properties:<br/>                        \"object\": any SmartClient object, eg a ListGrid<br/>\n                        \"method\": name of a method on that object",
                optional:false,
                name:"objects",
                defaultValue:null,
                type:"Array"
            },
            {
                description:"Callback to fire when all observed methods have fired",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Function"
            },
            {
                description:"Optional timeout period (in milliseconds). If you want a timeout,                           you must also provide a timeoutCallback",
                optional:true,
                name:"timeout",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"Callback to fire if the timeout period elapses before all                                      observed methods have fired",
                optional:true,
                name:"timeoutCallback",
                defaultValue:null,
                type:"Function"
            }
        ],
        returns:{
            description:"whether observation succeeded.  Observation may fail due to null objects,                   non-existent methods or similar bad parameters",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:FileItem.showFileInline":{
        ref:"attr:FileItem.showFileInline",
        flags:"IR",
        description:"Indicates whether to stream the image and display it\n inline or to display the View and Download icons.",
        name:"showFileInline",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FileItem"
    },
    "attr:ImgButton.labelVPad":{
        ref:"attr:ImgButton.labelVPad",
        flags:"IRW",
        description:"Vertical padding to be applied to this widget's label. If this value is null, \n the label will be given a vertial padding of zero.\n <p>\n The specified amount of padding is applied to the top and bottom edges of the button, so\n the total amount of padding is 2x the specified value.",
        name:"labelVPad",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton"
    },
    "attr:Canvas.animateHideTime":{
        ref:"attr:Canvas.animateHideTime",
        flags:"IRWA",
        description:"Default time for performing an animated hide.  If unset, <code>this.animateTime</code>\n will be used by default instead",
        name:"animateHideTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:ListGrid.canAddSummaryFields":{
        ref:"attr:ListGrid.canAddSummaryFields",
        flags:"IRW",
        description:"Adds an item to the header context menu allowing users to launch a dialog to define a new\n text field that can contain both user-defined text and the formatted values present in other \n fields, using the ${isc.DocUtils.linkForRef('class:SummaryBuilder')}.\n <P>\n User-added summary fields can be persisted via ${isc.DocUtils.linkForRef('method:ListGrid.getFieldState')} and \n ${isc.DocUtils.linkForRef('method:ListGrid.setFieldState')}.",
        name:"canAddSummaryFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "summaryFields"
        ]
    },
    "method:SplitPane.setDetailTitle":{
        ref:"method:SplitPane.setDetailTitle",
        flags:"",
        description:" Sets the title for the ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane','detailPane')}.\n",
        name:"setDetailTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title for the detail pane.",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "attr:DataSourceField.nullReplacementValue":{
        ref:"attr:DataSourceField.nullReplacementValue",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DataSource.noNullUpdates')} is set, the value to use for this field when a null\n value is assigned to it on an update operation.  This property overrides the DataSource-level\n properties ${isc.DocUtils.linkForRef('attr:DataSource.nullStringValue','nullStringValue')}, \n ${isc.DocUtils.linkForRef('attr:DataSource.nullIntegerValue','nullIntegerValue')}, \n ${isc.DocUtils.linkForRef('attr:DataSource.nullFloatValue','nullFloatValue')} and \n ${isc.DocUtils.linkForRef('attr:DataSource.nullDateValue','nullDateValue')}, for this field only.\n <p>\n NOTE: If you use this property, you are responsible for ensuring that the replacement value\n is appropriate and valid.",
        name:"nullReplacementValue",
        seeAlso:[
            {
                ref:"attr:DataSource.noNullUpdates",
                description:null
            },
            {
                ref:"attr:DataSource.nullStringValue",
                description:null
            },
            {
                ref:"attr:DataSource.nullIntegerValue",
                description:null
            },
            {
                ref:"attr:DataSource.nullFloatValue",
                description:null
            },
            {
                ref:"attr:DataSource.nullDateValue",
                description:null
            }
        ],
        valueType:"Any",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "class:FormulaBuilder":{
        methods:[
            "method:FormulaBuilder.setFormula",
            "method:FormulaBuilder.getHelpText",
            "method:FormulaBuilder.getUpdatedFieldObject",
            "method:FormulaBuilder.testFunction",
            "method:FormulaBuilder.getTestRecord",
            "method:FormulaBuilder.saveAddAnother",
            "method:FormulaBuilder.save",
            "method:FormulaBuilder.fireOnClose",
            "method:FormulaBuilder.getSamplePrompt"
        ],
        ref:"class:FormulaBuilder",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:FormulaBuilder.dataSource",
            "attr:FormulaBuilder.fields",
            "attr:FormulaBuilder.field",
            "attr:FormulaBuilder.editMode",
            "attr:FormulaBuilder.formulaField",
            "attr:FormulaBuilder.titleField",
            "attr:FormulaBuilder.showHelpIcon",
            "attr:FormulaBuilder.helpIcon",
            "attr:FormulaBuilder.autoHideCheckBoxLabel",
            "attr:FormulaBuilder.showAutoHideCheckBox",
            "attr:FormulaBuilder.autoHideCheckBox",
            "attr:FormulaBuilder.builderTypeText",
            "attr:FormulaBuilder.helpTextIntro",
            "attr:FormulaBuilder.mathFunctions",
            "attr:FormulaBuilder.cancelled",
            "attr:FormulaBuilder.valuePrefix",
            "attr:FormulaBuilder.valueSuffix",
            "attr:FormulaBuilder.fieldKey",
            "attr:FormulaBuilder.instructionsTextStart",
            "attr:FormulaBuilder.instructions",
            "attr:FormulaBuilder.messageLabel",
            "attr:FormulaBuilder.cancelButton",
            "attr:FormulaBuilder.testButton",
            "attr:FormulaBuilder.saveAddAnotherButton",
            "attr:FormulaBuilder.saveButton",
            "attr:FormulaBuilder.invalidBuilderPrompt",
            "attr:FormulaBuilder.defaultErrorText",
            "attr:FormulaBuilder.invalidBlankPrompt",
            "attr:FormulaBuilder.validBuilderPrompt",
            "attr:FormulaBuilder.helpWindowTitle",
            "attr:FormulaBuilder.titleFieldTitle",
            "attr:FormulaBuilder.defaultNewFieldTitle",
            "attr:FormulaBuilder.keyColumnTitle",
            "attr:FormulaBuilder.sourceFieldColumnTitle",
            "attr:FormulaBuilder.cancelButtonTitle",
            "attr:FormulaBuilder.saveAddAnotherButtonTitle",
            "attr:FormulaBuilder.saveButtonTitle",
            "attr:FormulaBuilder.saveConfirmationPrompt",
            "attr:FormulaBuilder.invalidGeneratedFunctionPrompt",
            "attr:FormulaBuilder.sampleHeaderTitle",
            "attr:FormulaBuilder.testButtonTitle",
            "attr:FormulaBuilder.warnDuplicateTitles",
            "attr:FormulaBuilder.warnDuplicateTitlesMessage",
            "attr:FormulaBuilder.autoTest",
            "attr:FormulaBuilder.autoTestDelay",
            "attr:FormulaBuilder.testRecord",
            "attr:FormulaBuilder.samplePrompt"
        ],
        description:"Shows an interface allowing a user to enter simple formulas by typing them into a text\n field.\n <P>\n Available values for the formula are determined by the DataSource fields, and are given\n simple single-letter aliases (such as \"A\", \"B\", ...) similar to column names in Excel.\n The set of available values is shown in the ${isc.DocUtils.linkForRef('attr:FormulaBuilder.fieldKey')} as a simple\n mapping between the ${isc.DocUtils.linkForRef('attr:DataSourceField.title','field title')} and it's short name.\n <P>\n By default, available math functions are shown in a hover from the\n ${isc.DocUtils.linkForRef('attr:FormulaBuilder.helpIcon','helpIcon')} that appears after the formula field.",
        name:"FormulaBuilder",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "formulaFields"
        ]
    },
    "attr:DSRequest.exportShowHeaderSpanTitles":{
        ref:"attr:DSRequest.exportShowHeaderSpanTitles",
        flags:"IR",
        description:"When you erxport a ${isc.DocUtils.linkForRef('class:ListGrid')} that has ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpans')},\n should headerSpans also be exported.  See ${isc.DocUtils.linkForRef('attr:DSRequest.exportSpanTitleSeparator')} for details of\n of what it means to export headerSpans to different export targets.",
        name:"exportShowHeaderSpanTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:FormItem.setValueIcons":{
        ref:"method:FormItem.setValueIcons",
        flags:"",
        description:" Set the valueIcons for this item\n",
        name:"setValueIcons",
        seeAlso:[
        ],
        params:[
            {
                description:"mapping of logical values for this item to icon src URLs",
                optional:false,
                name:"map",
                defaultValue:null,
                type:"object"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "attr:TextSettings.lineSeparator":{
        ref:"attr:TextSettings.lineSeparator",
        flags:"IR",
        description:"Separator between Records.  For import, default of null means that either the Unix/Mac\n format of just a newline (\"\\n\") or the typical DOS/Windows format of a carriage return\n and newline (\"\\r\\n\") will be accepted.  For export, overridden in ${isc.DocUtils.linkForRef('class:TextExportSettings')}.",
        name:"lineSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextSettings"
    },
    "classMethod:Offline.remove":{
        ref:"classMethod:Offline.remove",
        flags:"",
        description:" Removes the key/value pair mapped by the passed-in key from browser-local storage\n \n",
        name:"remove",
        seeAlso:[
            {
                ref:"classMethod:Offline.put",
                description:null
            },
            {
                ref:"classMethod:Offline.get",
                description:null
            }
        ],
        params:[
            {
                description:"The key to remove",
                optional:false,
                name:"key",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Offline"
    },
    "attr:TabSet.paneContainer":{
        ref:"attr:TabSet.paneContainer",
        flags:"R",
        description:"Container where the component specified by ${isc.DocUtils.linkForRef('attr:Tab.pane')} is shown.\n <P>\n Note: paneContainer and showEdges:true for rounded tabsets: you can enable decorative\n image-based edges on the paneContainer by setting ${isc.DocUtils.linkForRef('attr:Canvas.showEdges','showEdges:true')}\n via paneContainerDefaults (to skin all tabsets) or paneContainerProperties (to use\n edges on one instance).  In this structure, the ${isc.DocUtils.linkForRef('group:baseLine')} should use media\n that matches the appearance of the decorative edges and fully overlaps the edge of the\n paneContainer that it is adjacent to.  In the most typical appearance (symmetric edges\n on all 4 sides), both ${isc.DocUtils.linkForRef('attr:TabBar.baseLineCapSize')} and ${isc.DocUtils.linkForRef('attr:TabBar.baseLineThickness')}\n match the ${isc.DocUtils.linkForRef('attr:Canvas.edgeSize','edgeSize')} set on the paneContainer.  See the\n load_skin.js file for the \"SmartClient\" skin for an example of setting all relevant\n properties.\n <P>\n To disable edges for a particular TabSet, which you may want to do for a TabSet that\n is already within a clearly defined container, configure the paneContainer to show only\n it's top edge:\n <pre>\n      paneContainerProperties : { customEdges:[\"T\"] },\n </pre>\n To completely flatten even the top edge of the TabSet:\n <pre>\n      paneContainerProperties : { customEdges:[\"T\"] },\n      tabBarProperties :{ baseLineCapSize:0 },\n </pre>\n This \"flattens\" the baseLine so that only the center image is used.",
        name:"paneContainer",
        seeAlso:[
        ],
        valueType:"AutoChild VLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:ColorStop.color":{
        ref:"attr:ColorStop.color",
        flags:"IR",
        description:"eg #ff0000 or red or rgb(255,0,0)",
        name:"color",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ColorStop"
    },
    "method:TabSet.editTabTitle":{
        ref:"method:TabSet.editTabTitle",
        flags:"",
        description:" Places an editor in the title of the parameter tab and allows the user to edit the title.\n Note that this programmatic method will <b>always</b> allow editing of the specified tab's\n title, regardless of the settings of ${isc.DocUtils.linkForRef('attr:TabSet.canEditTabTitles')} or ${isc.DocUtils.linkForRef('attr:Tab.canEditTitle')}.\n",
        name:"editTabTitle",
        seeAlso:[
            {
                ref:"attr:TabSet.canEditTabTitles",
                description:null
            },
            {
                ref:"attr:Tab.canEditTitle",
                description:null
            }
        ],
        params:[
            {
                description:"The tab whose title should be edited (may be   specified by ID or index)",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | String | integer"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:FormItem.valueIconLeftPadding":{
        ref:"attr:FormItem.valueIconLeftPadding",
        flags:"IRW",
        description:"If we're showing a value icon, this attribute governs the amount of space between the \n icon and the start edge of the form item cell.\n <p>\n <b>NOTE:</b> In RTL mode, the valueIconLeftPadding is applied to the <em>right</em> of\n the value icon.",
        name:"valueIconLeftPadding",
        seeAlso:[
            {
                ref:"attr:FormItem.valueIcons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:TreeGrid.rowClick":{
        ref:"method:TreeGrid.rowClick",
        flags:"",
        description:"\n This override to ${isc.DocUtils.linkForRef('method:ListGrid.rowClick')}.  This implementation calls through to the\n ${isc.DocUtils.linkForRef('method:TreeGrid.nodeClick')}, ${isc.DocUtils.linkForRef('method:TreeGrid.folderClick')}, ${isc.DocUtils.linkForRef('method:TreeGrid.leafClick')} methods, as\n appropriate unless the click was on the expand/collapse control of a folder - in which case\n those callbacks are not fired.\n <p>\n Do not override this method unless you need a rowClick callback that fires even when the\n user clicks on the expand/collapse control.  If you do override this method, be sure to call\n <code>return this.Super(\"rowClick\", arguments);</code> at the end of your override to\n preserver other handler that are called from the superclass (for example,\n ${isc.DocUtils.linkForRef('method:ListGrid.recordClick')}.\n <p>\n\n",
        name:"rowClick",
        seeAlso:[
            {
                ref:"method:TreeGrid.nodeClick",
                description:null
            },
            {
                ref:"method:TreeGrid.folderClick",
                description:null
            },
            {
                ref:"method:TreeGrid.leafClick",
                description:null
            },
            {
                ref:"method:ListGrid.recordClick",
                description:null
            }
        ],
        params:[
            {
                description:"record that was clicked on",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"index of the row where the click occurred",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"index of the col where the click occurred",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "attr:ListGrid.fields":{
        ref:"attr:ListGrid.fields",
        flags:"IRW",
        description:"An array of field objects, specifying the order, layout, formatting, and\n sorting behavior of each field in the listGrid object.  In ListGrids, the fields\n array specifies columns.  Each field in the fields array is a ListGridField object.\n Any listGrid that will display data should have at least one visible field.\n <p>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')} is also set, this value acts as a set of overrides as\n explained in ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')}.",
        name:"fields",
        setter:[
            "setFields"
        ],
        seeAlso:[
            {
                ref:"object:ListGridField",
                description:null
            },
            {
                ref:"method:ListGrid.setFields",
                description:null
            }
        ],
        valueType:"Array of ListGridField",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('listGridFields')}",
            "${isc.DocUtils.linkForExampleId('mergedFields')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "classAttr:FieldPickerField.precisionTitle":{
        ref:"classAttr:FieldPickerField.precisionTitle",
        flags:"IR",
        description:"The title displayed for the precision property",
        name:"precisionTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Precision\"",
        type:"classAttr",
        definingClass:"class:FieldPickerField",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ViewLoader.httpMethod":{
        ref:"attr:ViewLoader.httpMethod",
        flags:"IRW",
        description:"Selects the HTTP method that will be used when fetching content.  Valid values are \"POST\"\n and \"GET\".",
        name:"httpMethod",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"GET\"",
        type:"attr",
        definingClass:"class:ViewLoader",
        groups:[
            "contentLoading"
        ]
    },
    "attr:SelectItem.hiliteColor":{
        ref:"attr:SelectItem.hiliteColor",
        deprecated:"As of SmartClient version 5.5, if ${isc.DocUtils.linkForRef('attr:SelectItem.showFocused')} is true,  styling will be updated for this form item on focus. The hiliting effect can therefore\n  be achieved via ${isc.DocUtils.linkForRef('attr:SelectItem.textBoxStyle')} and ${isc.DocUtils.linkForRef('attr:SelectItem.controlStyle')} \n  instead.",
        flags:"IRWA",
        description:"Background color to apply to the select item's selected value when the SelectItem \n receives focus, if <code>hiliteOnFocus</code> is true.",
        name:"hiliteColor",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"#316AC5\"",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "group:multiAutoChildren":{
        ref:"group:multiAutoChildren",
        refs:[
        ],
        description:"A MultiAutoChild is an ${isc.DocUtils.linkForRef('type:AutoChild')} where the creating component usually creates more than\n one, hence, unlike a normal AutoChild, the AutoChild is not accessible as <code>creator.[autoChildName]</code>.\n <P>\n See ${isc.DocUtils.linkForRef('group:autoChildUsage','Using AutoChildren')} for more information on configuring a\n MultiAutoChild.",
        name:"multiAutoChildren",
        seeAlso:[
            {
                ref:"method:Class.createAutoChild",
                description:null
            }
        ],
        type:"group"
    },
    "attr:DataSource.useAnsiJoins":{
        ref:"attr:DataSource.useAnsiJoins",
        flags:"IR",
        description:"For DataSources using the ${isc.DocUtils.linkForRef('group:sqlDataSource','SmartClient SQL engine')} for\n persistence, whether to use ANSI-style joins (ie, joins implemented with JOIN directives\n in the table clause, as opposed to additional join expressions in the where clause).\n The default value of null has the same meaning as setting this flag to false.\n <P>\n Note, outer joins (see ${isc.DocUtils.linkForRef('attr:DataSourceField.joinType','joinType')}) only work with certain\n database products if you choose not to use ANSI joins.  Other than that, the join \n strategies are equivalent.\n <P>\n If you wish to switch on ANSI-style joins for every DataSource, without the need to \n manually set this property on all of them, set\n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} flag \n <code>sql.useAnsiJoins</code> to true.",
        name:"useAnsiJoins",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:Facet.summaryTitle":{
        ref:"attr:Facet.summaryTitle",
        flags:"IR",
        description:"Title for facet summary.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"summaryTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"cubeGrid.summaryTitle",
        type:"attr",
        definingClass:"class:Facet"
    },
    "method:ListGrid.cancelEditing":{
        ref:"method:ListGrid.cancelEditing",
        flags:"",
        description:"\n  Cancel the current edit without saving.\n\n",
        name:"cancelEditing",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:DrawItem.rotateBy":{
        ref:"method:DrawItem.rotateBy",
        flags:"",
        description:" Rotate the shape by the relative rotation in degrees\n",
        name:"rotateBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of degrees to rotate from current orientation.",
                optional:false,
                name:"degrees",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:ListGrid.getDrawnRows":{
        ref:"method:ListGrid.getDrawnRows",
        flags:"",
        description:" Get the rows that are currently drawn (exist in the DOM), as an array of [firstRowNum,\n lastRowNum].  \n <P>\n The drawn rows differ from the ${isc.DocUtils.linkForRef('method:ListGrid.getVisibleRows','visibleRows')} because of\n ${isc.DocUtils.linkForRef('attr:ListGrid.drawAheadRatio','drawAhead')}.  The drawn rows are the appropriate range to consider if\n you need to, eg, using ${isc.DocUtils.linkForRef('method:ListGrid.refreshCell')} to update all the cells in a column.\n <P>\n If the grid is undrawn or the ${isc.DocUtils.linkForRef('attr:ListGrid.emptyMessage')} is currently shown, returns\n [null,null];\n\n",
        name:"getDrawnRows",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:SelectItem.getValueFieldName":{
        ref:"method:SelectItem.getValueFieldName",
        flags:"A",
        description:" Getter method to retrieve the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item.\n If unset, default behavior will return the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this field.\n",
        name:"getValueFieldName",
        seeAlso:[
        ],
        returns:{
            description:"fieldName to use a \"value field\" in records from this items               ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}",
            type:"string"
        },
        type:"method",
        definingClass:"class:SelectItem",
        groups:[
            "display_values"
        ]
    },
    "classMethod:isc.confirm":{
        ref:"classMethod:isc.confirm",
        flags:"",
        description:" Show a modal dialog with a message, icon, and \"OK\" and \"Cancel\" buttons.\n <P>\n The callback will receive boolean true for an OK button click, or null for a Cancel click or\n if the Dialog is dismissed via the close button.\n <P>\n Note: this does not override the native window.confirm() method.\n\n",
        name:"confirm",
        seeAlso:[
            {
                ref:"classAttr:Dialog.Warn",
                description:null
            },
            {
                ref:"classMethod:isc.warn",
                description:null
            },
            {
                ref:"method:Dialog.okClick",
                description:null
            },
            {
                ref:"method:Dialog.cancelClick",
                description:null
            },
            {
                ref:"classAttr:Dialog.CONFIRM_TITLE",
                description:null
            }
        ],
        params:[
            {
                description:"message to display",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Callback to fire when the                                      user clicks a button to dismiss the dialog.\n                                      This has the single parameter 'value', indicating the\n                                      value returned by the Warn dialog from 'okClick()' etc.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties for the Dialog.                                      To set ${isc.DocUtils.linkForRef('attr:Dialog.buttons','custom buttons')} for\n                                      the Dialog, set properties.buttons to an array of\n                                      buttons\n\t\t\t\t\t\t\t\t\t\teg:\t{ buttons : [Dialog.OK, Dialog.CANCEL] }",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"Dialog Properties"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('dialogs')}"
        ],
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "attr:Task.outputFieldList":{
        ref:"attr:Task.outputFieldList",
        flags:"IR",
        description:"List of multiple fields from the ${isc.DocUtils.linkForRef('attr:Process.state','process state')} which this task will\n write to. See ${isc.DocUtils.linkForRef('group:taskIO')}.  \n <P>\n If ${isc.DocUtils.linkForRef('attr:Task.outputField')} is also specified, it will be implicitly added to the\n <code>outputFieldList</code> if it is not already present.",
        name:"outputFieldList",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Task"
    },
    "method:MetricSettings.getPointHoverHTML":{
        ref:"method:MetricSettings.getPointHoverHTML",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:MetricSettings.showDataPoints')} is true and the mouse hovers over a point, this method is called\n and may return HTML to show in a hover.\n\n",
        name:"getPointHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the value at the point",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float"
            },
            {
                description:"the record at the point",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"String of HTML to show in a hover",
            type:"String"
        },
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "method:Button.addToRadioGroup":{
        ref:"method:Button.addToRadioGroup",
        flags:"",
        description:" Add this widget to the specified mutually exclusive selection group with the ID\n passed in.\n Selecting this widget will then deselect any other StatefulCanvases with the same\n radioGroup ID.\n StatefulCanvases can belong to only one radioGroup, so this method will remove from \n any other radiogroup of which this button is already a member.\n",
        name:"addToRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- ID of the radiogroup to which this widget should be added",
                optional:false,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:ListGrid.exportFieldWidths":{
        ref:"attr:ListGrid.exportFieldWidths",
        flags:"IRW",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData')} or\n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}, whether widths of fields should be replicated\n in the resulting spreadsheet.\n <p>\n Because Excel's unit of measurement for field widths is based on the default system font,\n there is no exact way to translate field widths in pixels to Excel column widths.  The\n ${isc.DocUtils.linkForRef('attr:ListGrid.exportWidthScale')} property can be set to adjust scaling; it's default value errs on\n the side of making Excel's columns slightly wider than the ListGrid field's actual width to\n avoid clipping.\n <p>\n Note that you can switch off width export for individual fields with the \n ${isc.DocUtils.linkForRef('attr:ListGridField.exportFieldWidth')} flag.",
        name:"exportFieldWidths",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DateItem.pickerIconPrompt":{
        ref:"attr:DateItem.pickerIconPrompt",
        flags:"IR",
        description:"Prompt to show when the user hovers the mouse over the picker icon for this DateItem. May\n be overridden for localization of your application.",
        name:"pickerIconPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Show Date Chooser\"",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Canvas.getPrintPreview":{
        ref:"classMethod:Canvas.getPrintPreview",
        flags:"",
        description:" Returns a printCanvas containing the full printHTML for a series of components. Note that\n the generated preview canvas will be drawn automatically by this method. Developers may\n also explicitly create a PrintCanvas instance and populate it with HTML derived from the\n ${isc.DocUtils.linkForRef('method:Canvas.getPrintHTML')} for finer grained control over when the print canvas is\n drawn.\n",
        name:"getPrintPreview",
        seeAlso:[
        ],
        params:[
            {
                description:"components to get the print HTML for. May also include    raw HTML strings which will be folded into the generated print output",
                optional:false,
                name:"components",
                defaultValue:null,
                type:"array of Canvas"
            },
            {
                description:"PrintProperties object for customizing the print HTML output",
                optional:true,
                name:"printProperties",
                defaultValue:null,
                type:"PrintProperties"
            },
            {
                description:"properties to apply to the generated printPreview Canvas.",
                optional:true,
                name:"previewProperties",
                defaultValue:null,
                type:"Canvas Properties"
            },
            {
                description:"callback to fire when the print preview canvas has been populated    with the printable HTML. The generated canvas will be passed to the callback as a single \n    <code>printPreview</code> parameter.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"optional string of HTML to render between each component",
                optional:true,
                name:"separator",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Canvas",
        groups:[
            "printing"
        ]
    },
    "attr:ValuesManager.suppressValidationErrorCallback":{
        ref:"attr:ValuesManager.suppressValidationErrorCallback",
        flags:"IRWA",
        description:"When calling ${isc.DocUtils.linkForRef('method:ValuesManager.saveData')} on a form or valuesManager, by default if the server\n returns an error code, any callback passed into saveData() will not be fired.\n If the error code returned by the server indicates a validation error, it will be\n displayed to the user by updating the form items to show the error messages, and firing\n any specified hiddenValidationErrors handler, otherwise the standard RPCManager\n error handling logic would be invoked.\n <P>\n Developers who want to handle errors themselves can override this default by specifying\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError','dsRequest.willHandleError')} on the DSRequest. In this case the callback passed in \n will be fired even if the server returns an error status code.\n <P>\n If <code>suppressValidationErrorCallback</code> is set to true, if a save attempt returns\n a <i>validation</i> error code, the user-specified callback will not be fired\n <i>even if <code>willHandleError:true</code> was specified on the dsRequest</i> \n - though for other error codes, the callback would be fired if willHandleError is \n specified on the request.\n Note that this is the historical behavior for\n <smartclient>SmartClient builds 8.0 and earlier</smartclient>\n <smartgwt>SmartGWT builds 4.0 and earlier</smartgwt>",
        name:"suppressValidationErrorCallback",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ValuesManager"
    },
    "class:ResultSet":{
        methods:[
            "method:ResultSet.allMatchingRowsCached",
            "method:ResultSet.allRowsCached",
            "method:ResultSet.getValueMap",
            "method:ResultSet.getLength",
            "method:ResultSet.indexOf",
            "method:ResultSet.get",
            "method:ResultSet.getRange",
            "method:ResultSet.getAllVisibleRows",
            "method:ResultSet.usingFilteredData",
            "method:ResultSet.getAllCachedRows",
            "method:ResultSet.duplicate",
            "method:ResultSet.lengthIsKnown",
            "method:ResultSet.rowIsLoaded",
            "method:ResultSet.rangeIsLoaded",
            "method:ResultSet.findByKey",
            "method:ResultSet.setCriteria",
            "method:ResultSet.getCriteria",
            "method:ResultSet.compareCriteria",
            "method:ResultSet.willFetchData",
            "method:ResultSet.sortByProperty",
            "method:ResultSet.getSort",
            "method:ResultSet.setSort",
            "method:ResultSet.resort",
            "method:ResultSet.filterLocalData",
            "method:ResultSet.applyFilter",
            "method:ResultSet.invalidateCache",
            "method:ResultSet.transformData",
            "method:ResultSet.dataArrived",
            "method:ResultSet.findAll",
            "method:ResultSet.find",
            "method:ResultSet.findIndex",
            "method:ResultSet.findNextIndex",
            "method:ResultSet.getProperty"
        ],
        ref:"class:ResultSet",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:ResultSet.getLoadingMarker"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:ResultSet.fetchMode",
            "attr:ResultSet.initialData",
            "attr:ResultSet.initialLength",
            "attr:ResultSet.sortSpecifiers",
            "attr:ResultSet.allRows",
            "attr:ResultSet.resultSize",
            "attr:ResultSet.fetchDelay",
            "attr:ResultSet.dataSource",
            "attr:ResultSet.fetchOperation",
            "attr:ResultSet.criteria",
            "attr:ResultSet.criteriaPolicy",
            "attr:ResultSet.useClientSorting",
            "attr:ResultSet.useClientFiltering",
            "attr:ResultSet.updateCacheFromRequest",
            "attr:ResultSet.dropCacheOnUpdate",
            "attr:ResultSet.disableCacheSync",
            "attr:ResultSet.progressiveLoading",
            "attr:ResultSet.neverDropUpdatedRows",
            "attr:ResultSet.updatePartialCache",
            "attr:ResultSet.alwaysRequestVisibleRows"
        ],
        description:"ResultSets are an implementation of the ${isc.DocUtils.linkForRef('interface:List')} interface that automatically fetches \n DataSource records when items are requested from the List.  ResultSets provide robust,\n customizable, high-performance cache management for ListGrids and other built-in SmartClient\n components, and can be used as cache managers by custom components.\n <P>\n ResultSets manage data paging, that is, loading records in batches as the user navigates\n the data set.  A ResultSet will switch to using client-side sorting and filtering when\n possible to improve responsiveness and reduce server load.  ResultSets also participate in\n automatic cache synchronization, observing operations on DataSources and automatically\n updating their caches.\n <P>\n <b>Creation</b>\n <P>\n A ResultSet can be passed to any component that expects a List, and the List APIs can be\n called directly on the ResultSet as long as the caller is able to deal with asynchronous\n loading; see ${isc.DocUtils.linkForRef('method:ResultSet.getRange')}.\n <P>\n Generally ResultSets do not need to be created directly, but are created by DataBound\n components as an automatic consequence of calling \n ${isc.DocUtils.linkForRef('group:dataBoundComponentMethods','DataBound Component Methods')}.  \n For example, the ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} causes ${isc.DocUtils.linkForRef('attr:ListGrid.data')} to become an\n automatically created <code>ResultSet</code> object.  Automatically created ResultSets\n can be customized via properties on ListGrids such as ${isc.DocUtils.linkForRef('attr:ListGrid.dataPageSize')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataProperties')}.  All ResultSets for a given DataSource may also be \n customized via setting ${isc.DocUtils.linkForRef('attr:DataSource.resultSetClass')} to the name of a ResultSet \n ${isc.DocUtils.linkForRef('classMethod:isc.defineClass','subclass')} in which \n ${isc.DocUtils.linkForRef('classMethod:Class.addProperties','defaults have been changed')}.\n <P>\n A ResultSet defaults to using data paging, setting ${isc.DocUtils.linkForRef('attr:DSRequest.startRow')} and\n ${isc.DocUtils.linkForRef('attr:DSRequest.endRow')} in issued dsRequests.  Server code may always return more rows than\n the ResultSet requests and the ResultSet will correctly integrate those rows based on\n ${isc.DocUtils.linkForRef('attr:DSResponse.startRow')}/${isc.DocUtils.linkForRef('attr:DSResponse.endRow','endRow')}.  \n Hence the server can always avoid paging mode by simply returning all matching rows.\n <P>\n A ResultSet can be created directly with just the ID of a ${isc.DocUtils.linkForRef('class:DataSource')}:\n <pre>\n     isc.ResultSet.create({\n         dataSource : \"<i>dataSourceID</i>\"\n     })\n </pre>\n <P>\n Directly created ResultSets are typically used by custom components, or as a means of\n managing datasets that will be used by several components.\n <P>\n When created directly rather than via a dataBoundComponent, a newly created ResultSet will\n not issue it's first \"fetch\" ${isc.DocUtils.linkForRef('class:DSRequest')} until data is accessed (for example, via\n ${isc.DocUtils.linkForRef('method:ResultSet.get','get()')}).  \n <P>\n <b>Paging and total dataset length</b>\n <P>\n When using data paging, the server communicates the total number of records that match the\n current search criteria by setting ${isc.DocUtils.linkForRef('attr:DSResponse.totalRows')}.  The ResultSet will then\n return this number from ${isc.DocUtils.linkForRef('method:ResultSet.getLength','getLength()')}, and ListGrids and other\n components will show a scrollbar that allows the user to jump to the end of the dataset\n directly.\n <P>\n However, the ResultSet does not require that the server calculate the true length of the\n dataset, which can be costly for an extremely large, searchable dataset.  Instead, the\n server <i>may</i> simply advertise a <code>totalRows</code> value that is one page larger\n than the last row loaded.  This results in a UI sometimes called \"progressive loading\",\n where the user may load more rows by scrolling past the end of the currently loaded rows,\n but is not allowed to skip to the end of the dataset.\n <P>\n No client-side settings are required to enable this mode - it is entirely server-driven.\n However, it is usually coupled with ${isc.DocUtils.linkForRef('attr:ListGrid.canSort','disabling sorting')}, since\n server-side sorting would also force the server to traverse the entire dataset.  Note\n also the ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressiveLoading')} flag, which can be applied\n at a DataSource, operation, request, component or ResultSet level; if you are using the\n built-in server-side DataSource implementations with Pro or better, this tells SmartClient\n Server to use its pre-built progressive loading mode for that DataSource, operation, \n request, component or ResultSet.\n <P>\n <b>Client-side Sorting and Filtering</b>\n <P>\n If a ResultSet obtains a full cache for the current set of filter criteria, it will \n automatically switch to client-side sorting, and will also use client-side filtering \n if the filter criteria are later changed but appear to be <i>more restrictive</i> than the\n criteria in use when the ResultSet obtained a full cache.\n <P>\n The ${isc.DocUtils.linkForRef('attr:ResultSet.useClientSorting','useClientSorting')} and \n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering','useClientFiltering')} flags can be used to disable\n client-side sorting and filtering respectively if these behaviors don't match server-based\n sorting and filtering.  However, because client-side sorting and filtering radically improve\n responsiveness and reduce server load, it is better to customize the ResultSet so that it\n can match server-side sorting and filtering behaviors.\n <P>\n Sorting behavior is primarily customized via the \"sort normalizer\" passed to\n ${isc.DocUtils.linkForRef('method:ResultSet.sortByProperty')}, either via direct calls on a standalone ResultSet, or via\n ${isc.DocUtils.linkForRef('method:ListGridField.sortNormalizer')} for a ListGrid-managed ResultSet.\n <P>\n By default, client-side filtering interprets the ${isc.DocUtils.linkForRef('type:Criteria','criteria')} passed to\n ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria','setCriteria()')} as a set of field values that records must match\n (similarly to the built-in SQL/Hibernate connectors built into the SmartClient Server).\n Custom client-side filtering logic can be implemented by overriding\n ${isc.DocUtils.linkForRef('method:ResultSet.applyFilter','applyFilter()')}.  Overriding\n ${isc.DocUtils.linkForRef('method:ResultSet.compareCriteria','compareCriteria()')} allows you to control when the ResultSet\n uses client-side vs server-side filtering, and the ResultSet has two default \n ${isc.DocUtils.linkForRef('attr:ResultSet.criteriaPolicy','criteria policies')} built-in.\n <P>\n <b>Modifying ResultSets</b>\n <P>\n Records cannot be directly added or removed from a ResultSet via ${isc.DocUtils.linkForRef('interface:List')}\n APIs such as ${isc.DocUtils.linkForRef('method:List.removeAt','removeAt()')}, since this would break the consistency of\n server and client row numbering needed for data paging, and also\n create some issues with automatic cache synchronization.\n <P>\n Use ${isc.DocUtils.linkForRef('method:DataSource.addData')}/${isc.DocUtils.linkForRef('method:DataSource.removeData','removeData()')} to add/remove\n rows from the ${isc.DocUtils.linkForRef('class:DataSource')}, and the ResultSet will reflect the changes automatically.\n <P>\n To create a locally modifiable cache of Records from a DataSource, you\n can use ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} to retrieve a List of Records which can\n be modified directly, or you can create a client-only ${isc.DocUtils.linkForRef('class:DataSource')} from\n the retrieved data to share a modifiable cache between several\n DataBoundComponents.\n <P>\n <b>Updates and Automatic Cache Synchronization</b>\n <P>\n Once a ResultSet has retrieved data or has been initialized with data, the ResultSet will observe any\n successful \"update\", \"add\" or \"remove\" dsRequests against their DataSource, regardless of the\n component that initiated them.  A ResultSet with a full cache for the current filter criteria will\n integrate updates into the cache automatically.\n <P>\n Updated rows that no longer match the current filter criteria will be removed\n automatically.  To prevent this, you can set ${isc.DocUtils.linkForRef('attr:ResultSet.neverDropUpdatedRows')}.\n Added rows will similarly be added to the cache only if they match current filter criteria.\n <P>\n Note that the client-side filtering described above is also used to determine whether \n updated or added rows should be in the cache.  If any aspect of automated cache update is\n ever incorrect, ${isc.DocUtils.linkForRef('attr:ResultSet.dropCacheOnUpdate','dropCacheOnUpdate')} can be set for the\n ResultSet or ${isc.DocUtils.linkForRef('attr:DSResponse.invalidateCache')} can be set for an individual dsResponse.\n <P>\n If automatic cache synchronization isn't working, troubleshoot the problem using the steps\n suggested <a href='http://forums.smartclient.com/showthread.php?t=8159#aGrid' target='_blank'>in the FAQ</a>.\n <P>\n <b>Data Paging with partial cache</b>\n <P>\n When in paging mode with a partial cache, a ResultSet relies on server side sorting, setting \n ${isc.DocUtils.linkForRef('attr:DSRequest.sortBy')} to the current sort field and direction.  In order for the cache to \n remain coherent, row numbering must continue to agree between server and client as new\n fetches are issued, otherwise, duplicate rows or missing rows may occur.  \n <P>\n If concurrent modifications by other users are allowed, generally the server should set\n ${isc.DocUtils.linkForRef('attr:DSResponse.invalidateCache')} to clear the cache when concurrent modification is\n detected.\n <P>\n In paging mode with a partial cache, any successful \"update\" or \"add\" operation may cause\n client and server row numbering to become out of sync.  This happens because the update\n may affect the sort order, and client and server cannot be guaranteed to match for sets of\n records that have equivalent values for the sort field.\n <P>\n For this reason, after an \"add\" or \"update\" operation with a partial cache, the ResultSet\n will automatically mark cache for invalidation the next time a fetch operation is performed.\n Alternatively, if ${isc.DocUtils.linkForRef('attr:ResultSet.updatePartialCache')} is set to false, the ResultSet will\n simply invalidate cache immediately in this circumstance.",
        name:"ResultSet",
        implementsInterfaces:[
            "List"
        ],
        seeAlso:[
            {
                ref:"interface:DataBoundComponent",
                description:null
            },
            {
                ref:"group:dataBoundComponentMethods",
                description:null
            },
            {
                ref:"attr:DataSource.resultSetClass",
                description:"to customize all ResultSets for a given DataSource"
            },
            {
                ref:"method:ResultSet.getRange",
                description:"for information on handling asynchronous loading"
            }
        ],
        type:"class"
    },
    "attr:Canvas.autoShowParent":{
        ref:"attr:Canvas.autoShowParent",
        flags:"IRWA",
        description:"If set to true, the widget's parent (if any) will automatically be shown whenever the\n      widget is shown.",
        name:"autoShowParent",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSource.serverType":{
        ref:"attr:DataSource.serverType",
        flags:"IR",
        description:"For a DataSource stored in .xml format on the SmartClient server, indicates what server-side\n connector to use to execute requests, that is, what happens if you call\n dsRequest.execute() in server code.",
        name:"serverType",
        seeAlso:[
        ],
        valueType:"DSServerType",
        defaultValue:"\"generic\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "serverDataIntegration"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ListGrid.detailField":{
        ref:"attr:ListGrid.detailField",
        flags:"IRWA",
        description:"The field whose contents to show in the expanded portion of a record when\n ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords','canExpandRecords')} is <code>true</code> and\n ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')} is <code>detailField</code>.",
        name:"detailField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:Menu.target":{
        ref:"attr:Menu.target",
        flags:"IRW",
        description:"Optional target canvas for this menu.  Available as a parameter to dynamic menuItem configuration\n methods such as ${isc.DocUtils.linkForRef('method:MenuItem.checkIf')}.\n <P>\n Whenever a Menu is shown as a contextMenu by a widget due to ${isc.DocUtils.linkForRef('attr:Canvas.contextMenu')}\n being set, <code>menu.target</code> is automatically set to the widget that showed the\n contextMenu.\n <P>\n If this item has any ${isc.DocUtils.linkForRef('attr:MenuItem.submenu','submenus')} the <code>target</code> will be propagated down\n to these child menus.",
        name:"target",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "group:offlineGroup":{
        ref:"group:offlineGroup",
        refs:[
            "method:DataSource.useOfflineResponse",
            "method:DataBoundComponent.isOffline",
            "class:Offline",
            "classAttr:DataSource.offlineMessage",
            "classAttr:RPCResponse.STATUS_OFFLINE",
            "attr:DataSource.useOfflineStorage",
            "attr:DSResponse.offlineTimestamp",
            "attr:DSResponse.fromOfflineCache",
            "attr:DataBoundComponent.showOfflineMessage",
            "attr:DataBoundComponent.offlineMessage",
            "attr:ListGrid.offlineMessageStyle",
            "attr:DataBoundComponent.offlineSaveMessage",
            "attr:GridRenderer.showOfflineMessage",
            "attr:GridRenderer.offlineMessageStyle",
            "attr:GridRenderer.offlineMessage",
            "attr:TreeGrid.offlineNodeMessage"
        ],
        name:"offlineGroup",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MenuItem.iconHeight":{
        ref:"attr:MenuItem.iconHeight",
        flags:"IR",
        description:"The height applied to this item's icon.  The default of <code>16</code> can be changed\n for all MenuItems by overriding ${isc.DocUtils.linkForRef('attr:Menu.iconHeight')}.",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"object:MenuItem",
        groups:[
            "menuIcons"
        ]
    },
    "attr:FormItem.hoverDelay":{
        ref:"attr:FormItem.hoverDelay",
        flags:"IRWA",
        description:"If specified, this is the number of milliseconds to wait between the user rolling over \n this form item, and triggering any hover action for it.<br>\n If not specified <code>this.form.itemHoverDelay</code> will be used instead.",
        name:"hoverDelay",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "method:List.add":{
        ref:"method:List.add",
        flags:"",
        description:" Add an object to this list, at the end\n\n",
        name:"add",
        seeAlso:[
        ],
        params:[
            {
                description:"object to add",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"pointer to the object passed in",
            type:"any"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "attr:DSRequest.headerData":{
        ref:"attr:DSRequest.headerData",
        flags:"IRW",
        description:"For DataSources using SOAP messaging with a WSDL web service, data to be serialized to form\n SOAP headers, as a map from the header part name to the data.  See\n ${isc.DocUtils.linkForRef('attr:WSRequest.headerData')} for more information.\n <P>\n SOAP headers typically contain request metadata such as a session id for authentication, and\n so <code>dsRequest.headerData</code> is typically populated by\n ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}, or, for data that applies to every request sent to the\n server, by ${isc.DocUtils.linkForRef('method:WebService.getHeaderData')}.\n <P>\n Note that this only applies to SOAP headers. General HTTP headers for requests may be\n modified using ${isc.DocUtils.linkForRef('attr:RPCRequest.httpHeaders')}.",
        name:"headerData",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:FacetChart.setShowScatterLines":{
        ref:"method:FacetChart.setShowScatterLines",
        flags:"",
        description:" Method to change the current ${isc.DocUtils.linkForRef('type:ChartType','showScatterLines')}.\n Will redraw the chart if drawn. \n\n",
        name:"setShowScatterLines",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to draw lines between adjacent data points in \"Scatter\" plots",
                optional:false,
                name:"showScatterLines",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('scatterPlotCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "type:Callback":{
        ref:"type:Callback",
        description:"A <code>Callback</code> is an arbitrary action to be fired - usually passed into a\n method to be fired asynchronously as a notificaction of some event.<br>\n The <code>callback</code> can be defined in the following formats:<ul>\n <li>a function</li>\n <li>A string containing an expression to evaluate</li>\n <li>An object with the following properties:<br>\n     - target: fire in the scope of this target - when the action fires,\n       the target will be available as <code>this</code>.<br>\n     - methodName: if specified we'll check for a method on the target object with this\n       name.<br>\n  </li></ul>\n <code>Callbacks</code> are fired via the ${isc.DocUtils.linkForRef('classMethod:Class.fireCallback')} method, which allows\n named parameters to be passed into the callback at runtime. If the Callback was specified\n as a string of script, these parameters are available as local variables at eval time.<br>\n For specific SmartClient methods that make use of <code>Callback</code> objects, see\n local documentation for information on parameters and scope.",
        name:"Callback",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ServerObject.targetXPath":{
        ref:"attr:ServerObject.targetXPath",
        flags:"IR",
        description:"If set, the SmartClient server will use JXPath to call your server code.  The\n <code>JXPathContext</code> (start point) will be the object arrived at by applying the \n ${isc.DocUtils.linkForRef('attr:ServerObject.lookupStyle','lookupStyle')} and related ServerObject properties. The \n intention of this property is to allow easier access to your existing Java objects \n and reduce the need to write SmartClient-specific server code.",
        name:"targetXPath",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "method:ListGridField.formatCellValue":{
        ref:"method:ListGridField.formatCellValue",
        flags:"",
        description:" Return the HTML to display in cells of this field.\n <P>\n Given the raw value for this field as taken from the record Formatter to apply to the\n static values displayed in cells for this field.\n <P>\n <i>Example usage</i>: formatting a currency value stored in cents (so \"100\" to \"$1.00\")<br>\n The value passed to this method is the raw value for the cell.<br>\n Takes precedence over <code>formatCellValue</code> defined at the grid level for cells\n in this field.\n <P>\n Note: this formatter will not be applied to the values displayed in cells being edited.\n The ${isc.DocUtils.linkForRef('method:ListGridField.formatEditorValue','formatEditorValue()')} is provided for that purpose.\n\n",
        name:"formatCellValue",
        seeAlso:[
            {
                ref:"method:ListGrid.formatCellValue",
                description:null
            },
            {
                ref:"method:ListGridField.formatEditorValue",
                description:null
            }
        ],
        params:[
            {
                description:"raw value for the cell, from the record for the row",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Record object for the cell. Note: If this is a new row that has not been saved, in an\n   editable grid, it has no associated record object. In this case the edit values will\n   be passed in as this parameter (see ${isc.DocUtils.linkForRef('method:ListGrid.getEditValues')})",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number for the cell.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the ListGrid displaying the cell",
                optional:false,
                name:"grid",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"HTML to display in the cell",
            type:"String"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('formatValues')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "method:PickList.getClientPickListData":{
        ref:"method:PickList.getClientPickListData",
        flags:"A",
        description:" Returns the set of data to be displayed in this item's PickList.\n <P>\n This method will be called for non-databound form items implementing the PickList\n interface.  The default implementation will derive data from the item's valueMap - \n can be overridden to allow a custom set of options to be displayed.\n <P>\n Note that for PickLists that filter data based on user input\n (${isc.DocUtils.linkForRef('class:ComboBoxItem','ComboBox')}), this method should return the data <b>before\n filtering</b>.  To customize the data returned after filtering, override\n ${isc.DocUtils.linkForRef('method:PickList.filterClientPickListData')} instead.\n <P>\n As an example, for a formItem with ${isc.DocUtils.linkForRef('attr:PickList.valueField')} set to \"valueFieldName\", the\n default implementation would take a valueMap like the following:\n <pre>\n     valueMap: { value1: \"display 1\", value2: \"display 2\" }\n </pre>\n .. and returning the following set of records: \n <pre>\n     [\n          { valueFieldName : \"value1\" },\n          { valueFieldName : \"value2\" }\n     ]\n </pre>\n Due to the valueMap, these records will appear as a two row pickList displayed as\n \"display 1\" and \"display 2\".\n\n",
        name:"getClientPickListData",
        seeAlso:[
        ],
        returns:{
            description:"Array of record objects to be displayed in the           pickList. Note that when a user picks a record from the list, the value of the\n           field matching <code>item.valueField</code> will be picked. Also note that the\n           fields to be displayed can be customized via <code>item.pickListFields</code>",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"interface:PickList"
    },
    "method:FormItem.getFullDataPath":{
        ref:"method:FormItem.getFullDataPath",
        flags:"A",
        description:" Return the fully-qualified dataPath for the this formItem (ie, the dataPath expressed \n in absolute terms from the root of the hierarchy, rather than relative to the item's \n parent form).  Note that the item's name is substituted into the full dataPath if the\n item does not specify an explicit dataPath.  For example, if we have a field called \n <code>name</code> that specifies no dataPath, on a form that specifies a dataPath of \n <code>/order/items</code>, this method will return <code>/order/items/name</code>\n",
        name:"getFullDataPath",
        seeAlso:[
        ],
        returns:{
            description:"Fully-qualified dataPath for this form item",
            type:"DataPath"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "group:loadDMIStubsTag":{
        ref:"group:loadDMIStubsTag",
        title:"&lt;isomorphic:loadDMIStubs&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> JavaScript\n <p>\n Creates global bindings for all serverObjects defined in the <code>rpcBindings</code>\n section of the .app.xml file specified by the <code>ID</code> or <code>name</code> attribute of\n this tag.  Once you've loaded your <code>rpcBindings</code> using this tag, you can call\n methods on the <code>ServerObjects</code> defined there directly.  For example, you can load\n the example.app.xml (located in /shared/app directory of the webRoot of the SDK) like this:\n <pre>\n &lt;isomorphic:loadDMIStubs ID=\"example\"/&gt;\n </pre>\n Whereas using ${isc.DocUtils.linkForRef('classMethod:DMI.call')} you would have had to invoke the <code>getTimeStamp</code>\n method like this:\n <pre>\n DMI.call(\"example\", \"GetTimeStampDMI\", \"getTimeStamp\", new Date(), \"alert(data)\";\n </pre>\n Having loaded the stubs of the <code>example</code> .app.xml, you can then call\n <code>getTimeStamp</code> like this:\n <pre>\n GetTimeStampDMI.getTimeStamp(new Date(), \"alert(data)\");\n </pre>\n or this:\n <pre>\n GetTimeStampDMI.getTimeStamp({\n     arguments: [new Date()],\n     callback: \"alert(data)\"\n });\n </pre>\n or this:\n <pre>\n GetTimeStampDMI.call({\n     methodName: \"getTimeStamp\",\n     arguments: [new Date()],\n     callback: \"alert(data)\"\n });\n </pre>\n As with ${isc.DocUtils.linkForRef('classMethod:DMI.call')}, the last argument must be the callback - if you don't want a\n callback, simply specify <code>null</code> as the callback.  The name of the global binding\n created will be the same as the ${isc.DocUtils.linkForRef('attr:ServerObject.ID')} or the non-qualified name of the\n ${isc.DocUtils.linkForRef('attr:ServerObject.className')} (java namespace, if any, will be stripped).\n <p>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>ID or name</b><br>\n <i>value format</i>: String - name of .app.xml file to load (minus the .app.xml extension)<br>\n <i>default value</i>: NONE\n <p>\n This attribute specifies the name of the file that contains the rpcBindings to load.\n UI files are located in <code>[webroot]/shared/app</code> by default.  This location is\n changeable in ${isc.DocUtils.linkForRef('group:server_properties','[webroot]/WEB-INF/classes/server.properties')}\n by setting the config\n parameter <code>project.apps</code> to the directory where your .app.xml files are located.   \n We recommend that for prototyping, at least, you use the default directory.",
        name:"loadDMIStubsTag",
        seeAlso:[
            {
                ref:"class:DMI",
                description:null
            }
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ListGridField.valueIconWidth":{
        ref:"attr:ListGridField.valueIconWidth",
        flags:"IRW",
        description:"Width for value icons for this listGrid field.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconSize')}, ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconWidth')}, and\n ${isc.DocUtils.linkForRef('attr:ListGridField.valueIconSize')}.",
        name:"valueIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "method:CubeGrid.getRowFacetValues":{
        ref:"method:CubeGrid.getRowFacetValues",
        flags:"",
        description:" Return a ${isc.DocUtils.linkForRef('object:FacetValueMap')} indicating the facet values for a specific \n row in the grid.\n",
        name:"getRowFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the row",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"facet values for the specified row. Returns null if the specified row    is not present in the grid.",
            type:"FacetValueMap"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "attr:SimpleType.inheritsFrom":{
        ref:"attr:SimpleType.inheritsFrom",
        flags:"IR",
        description:"Name of another SimpleType from which this type should inherit.\n <P>\n Validators, if any, will be combined.  All other SimpleType properties default to the\n inherited type's value.",
        name:"inheritsFrom",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('extCustomSimpleType')}"
        ],
        definingClass:"class:SimpleType"
    },
    "method:FormItem.getValue":{
        ref:"method:FormItem.getValue",
        flags:"",
        description:" Return the value tracked by this form item.\n <P>\n Note that for FormItems that have a ${isc.DocUtils.linkForRef('type:ValueMap')} or where a\n ${isc.DocUtils.linkForRef('method:FormItem.formatValue','formatter')} has been defined, <code>getValue()</code> returns the\n underlying value of the FormItem, not the displayed value.\n\n",
        name:"getValue",
        seeAlso:[
        ],
        returns:{
            description:"value of this element",
            type:"any"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "formValues"
        ]
    },
    "class:MultiFileItem":{
        methods:[
        ],
        ref:"class:MultiFileItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:MultiFileItem.dataSource",
            "attr:MultiFileItem.removeButton",
            "attr:MultiFileItem.editButton",
            "attr:MultiFileItem.pickerConstructor",
            "attr:MultiFileItem.emptyMessage",
            "attr:MultiFileItem.editButtonPrompt",
            "attr:MultiFileItem.removeButtonPrompt",
            "attr:MultiFileItem.pickerUploadButtonInitialTitle",
            "attr:MultiFileItem.pickerUploadButtonTitle",
            "attr:MultiFileItem.pickerCancelButtonTitle",
            "attr:MultiFileItem.pickerAddAnotherFileButtonTitle",
            "attr:MultiFileItem.pickerUploadProgressLabel"
        ],
        description:"The MultiFileItem provides an interface for a user to save one or more files that are\n related to a DataSource record, where each file is represented by a record in a\n related DataSource.\n <P>\n Use MultiFileItem when a record may have one or more files associated with it (such as\n attachments to an email message) where no information about the files needs to be stored other\n than the files themselves.  If you have several fields associated with each file (such as an\n uploaded document with a version, comments and processes associated with it), consider\n instead an ordinary DataSource with on field of type \"binary\", and using the ${isc.DocUtils.linkForRef('class:FileItem')}\n for upload.\n <P>\n See the ${isc.DocUtils.linkForRef('group:upload','Uploading Files')} overview for more information on upload.\n <P>\n <b>DataSource Setup</B>\n <P>\n In a relationship sometimes called a \"master-detail\" relationship, the MultiFileItem stores\n files in a \"detail\" DataSource which are related to a \"master\" DataSource record being\n edited by the form which contains the MultiFileItem.\n <P>\n To use a MultiFileItem:\n <ul>\n <li> declare a \"detail\" DataSource to store the related files.  At a minimum, this\n DataSource must have:\n <ul>\n <li> a ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} field\n <li> a field declaring a ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} relationship to the\n primaryKey of the \"master\" DataSource\n <li> a field of type \"binary\"\n </ul>\n <li> ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataSource','bind')} a DynamicForm to the \"master\" DataSource \n <li> in the DynamicForm bound to the \"master\" DataSource, declare a field with\n ${isc.DocUtils.linkForRef('attr:FormItem.editorType','editorType')}:\"MultiFileItem\" and a <code>dataSource</code>\n property set to the ID of the \"detail\" DataSource\n </ul>\n An example \"detail\" DataSource for storing files is shown below.  This \"detail\" DataSource\n assumes a \"master\" DataSource with ${isc.DocUtils.linkForRef('attr:DataSource.ID')} \"masterRecord\" and with a primaryKey\n field \"id\".\n <pre>\n <code>\n   &lt;DataSource ID=\"uploadedFiles\" serverType=\"sql\"&gt;\n     &lt;fields&gt;\n        &lt;field name=\"fileId\" type=\"sequence\" primaryKey=\"true\" hidden=\"true\"/&gt;\n        &lt;field name=\"masterRecordId\" type=\"number\" foreignKey=\"masterRecord.id\" hidden=\"true\"/&gt;\n        &lt;field name=\"file\" type=\"binary\" title=\"File\"/&gt;\n     &lt;/fields&gt;\n   &lt;/DataSource&gt;\n </code>\n </pre>\n <P>\n Aside from a single \"binary\" field, the \"detail\" DataSource should generally have only\n hidden fields, as shown above.  Additional internal fields (such as a \"lastUpdated\" field)\n may be added, but will not be editable via MultiFileItem. \n <P>\n <b>Display</b>\n <P>\n The MultiFileItem appears as a list of files related to the current record.  An optional\n button, the ${isc.DocUtils.linkForRef('attr:MultiFileItem.removeButton','removeButton')} allows removing files.  A\n second optional button, the ${isc.DocUtils.linkForRef('attr:MultiFileItem.editButton','editButton')}, launches a\n picker for uploading further files.\n <P>\n <b>Saving</b>\n <P>\n In all cases, uploading a new file is an \"add\" DSRequest against the\n ${isc.DocUtils.linkForRef('attr:MultiFileItem.dataSource')}.\n <P>\n The MultiFileItem has two modes, according to whether the \"master\" record is being newly created\n via an \"add\" operation or whether the master record is pre-existing (\"update\" operation).\n <P>\n If the master record is pre-existing, each file added by the user is uploaded as soon as the\n user exits the picker launched from the edit button, and the list of files shown in the main\n form reflects the actual list of stored files.  \n <P>\n If the master record is being newly created, files are not actually uploaded until\n <b>after</b> the master record is confirmed saved, and the list of fields shown in the main\n form reflects files which will be uploaded after the master record is saved.\n <P>\n In both cases, if there are multiple files to upload, they are uploaded one at a time, as a\n series of separate \"add\" DSRequests against the ${isc.DocUtils.linkForRef('attr:MultiFileItem.dataSource')}.\n <P>\n Also in both cases, deletion of any file is immediate.  In the case of a pre-existing master\n record, all files shown actually exist as DataSource records, and deletion is performed as a\n \"remove\" DSRequest against the ${isc.DocUtils.linkForRef('attr:MultiFileItem.dataSource')}.",
        name:"MultiFileItem",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "upload"
        ]
    },
    "method:TileGrid.selectRange":{
        ref:"method:TileGrid.selectRange",
        flags:"",
        description:" Select a contiguous range of records by index\n",
        name:"selectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start of selection range",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection range (non-inclusive)",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid"
    },
    "attr:Task.outputField":{
        ref:"attr:Task.outputField",
        flags:"IR",
        description:"Field in the ${isc.DocUtils.linkForRef('attr:Process.state','process state')} which this task writes outputs to. See\n ${isc.DocUtils.linkForRef('group:taskIO')}.",
        name:"outputField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Task"
    },
    "method:ColumnTree.deselectRecord":{
        ref:"method:ColumnTree.deselectRecord",
        flags:"",
        description:"\n Deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecord(record, false)</code>\n\n",
        name:"deselectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to deselect",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            },
            {
                description:"Column number",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "selection"
        ]
    },
    "attr:FieldPicker.hilitesText":{
        ref:"attr:FieldPicker.hilitesText",
        flags:"IR",
        description:null,
        name:"hilitesText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Highlights...\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DataSourceField.includeFrom":{
        ref:"attr:DataSourceField.includeFrom",
        flags:"IR",
        description:"Indicates this field should be fetched from another, related DataSource.\n <P>\n The <code>incluedFrom</code> attribute should be of the form\n \"<i>dataSourceId</i>.<i>fieldName</i>\", for example:\n <pre>\n    &lt;field includeFrom=\"supplyItem.itemName\"/&gt;\n </pre>\n <P>\n A ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')} declaration must exist between the two DataSources, establishing either\n a 1-to-1 relationship or a many-to-1 relationship from this DataSource to the related\n DataSource.  The inclusion can be indirect (traverse multiple DataSources) so long as there\n is a chain of <code>foreignKey</code> declarations from the target DataSource to the\n DataSource where the <code>includeFrom</code> field is declared.  For including from a\n related DataSource where there are multiple related records, see\n ${isc.DocUtils.linkForRef('attr:DataSourceField.includeSummaryFunction','includeSummaryFunction')}.\n <P>\n ${isc.DocUtils.linkForRef('attr:DataSourceField.name')} will default to the name of the included field, or you can\n specify a different name.\n <p>\n If both DataSources are SQLDataSources, HibernateDataSources or JPADataSources (with\n Hibernate as the provider) the related data will be retrieved via a SQL join and criteria\n and sort directions applied to the field work normally (they become part of the generated\n SQL query).\n <P>\n Otherwise, the related data will be retrieved via performing a DSRequest against\n the related DataSource once the data from the primary DataSource has been retrieved.  In\n this case, criteria or sorting directions applied to the included field are only allowed if\n data paging is not in use (for example ${isc.DocUtils.linkForRef('attr:ListGrid.dataFetchMode')}:\"basic\"); otherwise,\n criteria and sort direction are ignored for the included field and a warning is logged on\n the server.\n <P>\n <b>Editing included fields</b>\n <p>\n An included field is ${isc.DocUtils.linkForRef('attr:DataSourceField.canEdit','canEdit:false')} by default.  Note that \n included fields are not updatable, even if you set canEdit:true; the server will simply drop\n values for included fields if client code sends them. \n <p>\n When thinking about editing an included field value, typically what is really intended is to\n edit the value of the <code>foreignKey</code> field.  For example, take the scenario of a\n system that tracks accounts and the employees assigned to manage them.  Given a DataSource\n \"account\" related one-to-one with DataSource \"employee\" by a \"managerId\" foreignKey field,\n we might declare an <code>includeFrom</code> so that the name of the account manager can\n be shown with each \"account\" record.  \n <p>\n Editing the manager's name while viewing the account would be intended to pick a new account\n manager, and <b>not</b> to change the legal name of the employee who happens to be the\n current account manager. \n <p>\n To correctly set up this scenario, declare an <code>includeFrom</code> field that is hidden,\n but is used as the ${isc.DocUtils.linkForRef('attr:DataSourceField.displayField','displayField')} for the foreign key\n field:\n <pre>\n &lt;field name=\"managerId\" foreignKey=\"employee.id\" displayField=\"managerName\"/&gt; \n &lt;field name=\"managerName\" includeFrom=\"employee.name\" hidden=\"true\"/&gt; \n </pre>\n Now:\n <ul>\n <li> the \"managerId\" foreignKey field is shown in grids and forms, but takes its displayed\n value from the hidden <code>includeFrom</code> field\n <li> the automatically chosen editor will be a SelectItem with\n ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource','optionDataSource')} set to \"employees\": it will allow\n picking a different \"employee\" record from the \"employee\" DataSource\n <li> saving will save the ID of a new \"employee\" record to the \"managerId\" foreign key\n field, as intended\n </ul>\n You can alternatively set <code>editorType=\"ComboBoxItem\"</code> on the\n \"managerId\" field to allow typeahead search of the \"employee\" DataSource.",
        name:"includeFrom",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sqlIncludeFrom')}"
        ],
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "dataSourceRelations"
        ]
    },
    "method:CubeGrid.cellIsSelected":{
        ref:"method:CubeGrid.cellIsSelected",
        flags:"",
        description:" Determine whether the cell passed in is selected in this cubeGrid.\n\n  <br><i>methodType</i> tester\n",
        name:"cellIsSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"cell to test",
                optional:false,
                name:"cell",
                defaultValue:null,
                type:"CellRecord"
            }
        ],
        returns:{
            description:"true if any cells are selected",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:CubeGrid.deselectAllCells":{
        ref:"method:CubeGrid.deselectAllCells",
        flags:"",
        description:" Deselect all cells.\n\n",
        name:"deselectAllCells",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:ListGridField.displayValueFromRecord":{
        ref:"attr:ListGridField.displayValueFromRecord",
        flags:"IRWA",
        description:"If a ${isc.DocUtils.linkForRef('attr:ListGridField.displayField')} is set, should this field show record values from\n the <code>displayField</code>?\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGridField.displayField')} is specified, and there is no separate\n ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')}, by default we will show display-field values\n from the same record. Setting this property to false would disable this behavior.\n <P>\n Alternatively, if there is a ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')} (and\n ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap')} is false), the displayField would be ignored\n for the field and the underlying ${isc.DocUtils.linkForRef('attr:ListGridField.name','record[fieldName] value')} would\n be displayed to the user. This property may be set to true to override this behavior and\n pick up values from the <code>displayField</code> for display in this field even when there\n is an optionDataSource set.\n <P>\n Note that this property has no effect on fields with an explicitly specified valueMap, or\n with an optionDataSource where ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap')} is true.",
        name:"displayValueFromRecord",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:Calendar.showNewEventDialog":{
        ref:"method:Calendar.showNewEventDialog",
        flags:"",
        description:" Open the Quick Event dialog to begin editing a new ${isc.DocUtils.linkForRef('object:CalendarEvent','event')}.\n <P>\n If passed, the event parameter is used as defaults for the new event - in addition, the \n event's ${isc.DocUtils.linkForRef('attr:Calendar.startDateField','startDate')}, and its \n ${isc.DocUtils.linkForRef('attr:Calendar.laneNameField','lane')}, for timeline events, are used to calculate the \n display location for the dialog.\n <P>\n If this method is called when the Event Dialog is already showing another event, and if \n changes have been made, a confirmation dialog is displayed and editing of the new event \n is cancelled unless confirmed.\n \n",
        name:"showNewEventDialog",
        seeAlso:[
        ],
        params:[
            {
                description:"defaults for the new event",
                optional:true,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ListGrid.recordBaseStyleProperty":{
        ref:"attr:ListGrid.recordBaseStyleProperty",
        flags:"IRWA",
        description:"This attribute allows custom base styles to be displayed on a per-record basis.\n To specify a custom base-style for some record set\n <code>record[listGrid.recordBaseStyleProperty]</code> to the desired base style name -\n for example if <code>recordBaseStyleProperty</code> is <code>\"_baseStyle\"</code>, set\n <code>record._baseStyle</code> to the custom base style name.",
        name:"recordBaseStyleProperty",
        seeAlso:[
            {
                ref:"attr:ListGrid.baseStyle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"_baseStyle\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.displayField":{
        ref:"attr:FormItem.displayField",
        flags:"IR",
        getter:[
            "getDisplayFieldName"
        ],
        description:"Specifies an alternative field from which display values should be retrieved for this\n item.\n <P>\n The display field can be either another field value in the same record or a field that\n must be retrieved from a related ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}.\n <P>\n If this item is not databound (${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} is unset), or bound \n to the same dataSource as the form as a whole, this item will call\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValue','form.getValue()')} \n the form named after is implemented by picking up the\n value of the specified field from the Form's values object.\n <P>\n Otherwise this item will attempt to map its underlying value to a display value\n by retrieving a record from the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} where the \n ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} matches this item's value, and displaying the \n <code>displayField</code> value from that record.\n Note that if <code>optionDataSource</code> is set and this value is not\n set, ${isc.DocUtils.linkForRef('method:FormItem.getDisplayFieldName')} will return the dataSource title field by default.\n <P>\n This essentially enables the specified <code>optionDataSource</code> to be used as\n a server based ${isc.DocUtils.linkForRef('group:valueMap')}.",
        name:"displayField",
        seeAlso:[
            {
                ref:"method:FormItem.invalidateDisplayValueCache",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "attr:StatefulCanvas.showFocusedAsOver":{
        ref:"attr:StatefulCanvas.showFocusedAsOver",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused','showFocused')} is true for this widget, should the\n <code>\"over\"</code> state be used to indicate the widget as focused. If set to false,\n a separate <code>\"focused\"</code> state will be used.",
        name:"showFocusedAsOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "method:WebService.getOperationNames":{
        ref:"method:WebService.getOperationNames",
        flags:"",
        description:null,
        name:"getOperationNames",
        seeAlso:[
        ],
        returns:{
            description:"names of the available operations supported by this service (array of strings)",
            type:"Array"
        },
        type:"method",
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "attr:OperationBinding.exportFields":{
        ref:"attr:OperationBinding.exportFields",
        flags:"IR",
        description:"The list of field-names to export.  If provided, the field-list in the exported output is \n limited and sorted as per the list.\n <P>\n If exportFields is not provided, the exported output includes all visible fields \n from the DataSource (field.hidden=false), sorted in the order they're defined.",
        name:"exportFields",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "attr:Window.useBackMask":{
        ref:"attr:Window.useBackMask",
        flags:"IRA",
        description:"By default Windows show a ${isc.DocUtils.linkForRef('attr:Canvas.useBackMask','backMask')} in Internet Explorer\n versions predating Internet Explorer 9. This is a workaround for a native browser\n issue whereby certain DOM elements such as <code>IFRAME</code>s (whether rendered\n within SmartClient components via features such as ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL','contentsURL')} or \n explicitly written into the HTML of the page) will not be properly occluded\n by DOM elements which overlap them but have a higher z-index.\n <P>\n A side-effect of this is that the ${isc.DocUtils.linkForRef('attr:Canvas.opacity','opacity')} can not be modified\n for the entire window. Developers may disable the backmask in order to support\n opacity in IE versions less than 9 by setting this property to false, however you\n should be aware that in doing this there is a potential for the \"burn through\"\n problem described above.",
        name:"useBackMask",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:Canvas.showCustomScrollbars":{
        ref:"attr:Canvas.showCustomScrollbars",
        flags:"IRWA",
        description:"Whether to use the browser's native scrollbars or SmartClient-based scrollbars.\n <P>\n SmartClient-based scrollbars are skinnable, giving you complete control over look and\n feel.  SmartClient-based scrollbars also enable some interactions not possible with\n native scrollbars, such as ${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights','variable height records')}\n in grids in combination with ${isc.DocUtils.linkForRef('attr:ListGrid.dataPageSize','data paging')}.\n <P>\n Native browser scrollbars are slightly faster simply because there are less SmartClient\n components that need to be created, drawn and updated.  Each visible SmartClient-based\n scrollbar on the screen has roughly the impact of two StretchImgButtons.\n <P>\n SmartClient is always aware of the size of the scrollbar, regardless of whether native\n or custom scrollbars are used, and regardless of what operating system and/or operating\n system \"theme\" or \"skin\" is in use.  This means SmartClient will correctly report the\n ${isc.DocUtils.linkForRef('method:Canvas.getViewportHeight','viewport size')}, that is, the interior area of the\n widget excluding space taken by scrollbars, which is key for exactly filling a component\n with content without creating unnecessary scrolling.\n <P>\n The <code>showCustomScrollbars</code> setting is typically overridden in load_skin.js in\n order to change the default for all SmartClient components at once.\n This may be achieved via the static ${isc.DocUtils.linkForRef('classMethod:Canvas.setShowCustomScrollbars')} method or\n via a simple addProperties block, like so:\n <pre>\n     isc.Canvas.addProperties({ showCustomScrollbars:false });\n </pre>",
        name:"showCustomScrollbars",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "method:Canvas.animateRect":{
        ref:"method:Canvas.animateRect",
        flags:"",
        description:" Animate a reposition / resize of this canvas from its current size and position.\n",
        name:"animateRect",
        seeAlso:[
        ],
        params:[
            {
                description:"new left position (or null for unchanged)",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"new top position (or null for unchanged)",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"new width (or null for unchanged)",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"new height (or null for unchanged)",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"When the setRect completes this callback will be fired. Single                              'earlyFinish' parameter will be passed if the animation was\n                              cut short by a call to finishAnimation",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"AnimationCallback"
            },
            {
                description:"Duration in ms of the animated setRect",
                optional:true,
                name:"duration",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Optional acceleration effect to apply to the animation",
                optional:true,
                name:"acceleration",
                defaultValue:null,
                type:"AnimationAcceleration"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateZoom')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:MultiSortDialog.initialSort":{
        ref:"attr:MultiSortDialog.initialSort",
        flags:"IR",
        description:"The initial sort configuration to show in the \n ${isc.DocUtils.linkForRef('attr:MultiSortPanel.optionsGrid','optionsGrid')}.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.",
        name:"initialSort",
        seeAlso:[
        ],
        valueType:"Array of SortSpecifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "method:DataSource.getSearchOperator":{
        ref:"method:DataSource.getSearchOperator",
        flags:"",
        description:" Get the ${isc.DocUtils.linkForRef('object:Operator')} definition for an ${isc.DocUtils.linkForRef('type:OperatorId')}.\n\n",
        name:"getSearchOperator",
        seeAlso:[
        ],
        params:[
            {
                description:"the id of the operator",
                optional:false,
                name:"operatorId",
                defaultValue:null,
                type:"OperatorId"
            }
        ],
        returns:{
            description:"the ${isc.DocUtils.linkForRef('object:Operator')} definition",
            type:"Operator"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "method:DrawItem.mouseDown":{
        ref:"method:DrawItem.mouseDown",
        flags:"",
        description:" Notification fired when the user presses the left mouse button on this DrawItem.\n <p>\n Note that if this item is part of a ${isc.DocUtils.linkForRef('class:DrawGroup')}, then the group's ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')}\n setting affects whether this item receives the notification. If useGroupRect is true, then\n this item will <em>not</em> receive the notification. Otherwise, the item receives the\n notification and notification bubbles up to the group.\n",
        name:"mouseDown",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        platformNotes:"If the end user system has only one mouse button, then it is considered the \"left\"                mouse button (and this method would execute when it is pressed on this widget).",
        definingClass:"class:DrawItem",
        groups:[
            "widgetEvents"
        ]
    },
    "group:access":{
        ref:"group:access",
        refs:[
            "method:ResultSet.getLength",
            "method:ResultSet.indexOf",
            "method:ResultSet.get",
            "method:ResultSet.getRange",
            "method:ResultSet.findAll",
            "method:ResultSet.find",
            "method:ResultSet.findIndex",
            "method:ResultSet.findNextIndex",
            "method:Array.get",
            "method:Array.getLength",
            "method:Array.isEmpty",
            "method:Array.first",
            "method:Array.last",
            "method:Array.indexOf",
            "method:Array.lastIndexOf",
            "method:Array.contains",
            "method:Array.containsAll",
            "method:Array.equals",
            "method:Array.getItems",
            "method:Array.getRange",
            "method:Array.duplicate",
            "method:Array.findIndex",
            "method:Array.findNextIndex",
            "method:Array.find",
            "method:Array.findAll",
            "method:List.get",
            "method:List.getLength",
            "method:List.isEmpty",
            "method:List.first",
            "method:List.last",
            "method:List.indexOf",
            "method:List.lastIndexOf",
            "method:List.findIndex",
            "method:List.findNextIndex",
            "method:List.find",
            "method:List.findAll",
            "method:List.contains",
            "method:List.containsAll",
            "method:List.equals",
            "method:List.getItems",
            "method:List.getRange",
            "method:List.duplicate",
            "method:Tree.indexOf",
            "method:Tree.lastIndexOf"
        ],
        name:"access",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DataSource.copyRecords":{
        ref:"method:DataSource.copyRecords",
        flags:"",
        description:" Copies all DataSource field values of an (Array) of Records (including a TreeNode) \n to a new array of Records, omitting component-specific metadata such as selected state \n from grids, or parent folders for TreeNodes. This method calls \n ${isc.DocUtils.linkForRef('method:DataSource.copyRecord')} for each item in the array.\n",
        name:"copyRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"The array of Record objects to be copied.",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record"
            }
        ],
        returns:{
            description:"A new copy of each record provided in the array argument,  with component-specific metata data removed.",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:ImgTab.baseStyle":{
        ref:"attr:ImgTab.baseStyle",
        flags:"IR",
        description:null,
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"tab\"",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "attr:DetailViewerField.printCellStyle":{
        ref:"attr:DetailViewerField.printCellStyle",
        flags:"IRW",
        description:"If specified, when generating print HTML for this detailViewer, \n cells in this field will be rendered using this css className rather than\n ${isc.DocUtils.linkForRef('attr:DetailViewer.printCellStyle')}",
        name:"printCellStyle",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:CheckboxItem.showLabel":{
        ref:"attr:CheckboxItem.showLabel",
        flags:"IRW",
        description:"Should we show the label text next to the checkbox item.",
        name:"showLabel",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CheckboxItem"
    },
    "attr:Validator.resultingValue":{
        ref:"attr:Validator.resultingValue",
        flags:"IR",
        description:"To transform the incoming value that is validated into a different value or format set this\n property from ${isc.DocUtils.linkForRef('method:Validator.condition')} to the desired value.",
        name:"resultingValue",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "method:ValuesManager.submitValues":{
        ref:"method:ValuesManager.submitValues",
        flags:"",
        description:" Optional ${isc.DocUtils.linkForRef('group:stringMethods','StringMethod')} to fire when ${isc.DocUtils.linkForRef('method:ValuesManager.submit')} is called\n on this valuesManager (or any form included in this valuesManager).\n \n",
        name:"submitValues",
        seeAlso:[
            {
                ref:"method:ValuesManager.submit",
                description:null
            }
        ],
        params:[
            {
                description:"the valuesManager values",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            },
            {
                description:"the valuesManager being submitted",
                optional:false,
                name:"valuesManager",
                defaultValue:null,
                type:"ValuesManager"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "submitting"
        ]
    },
    "attr:ListGrid.hiliteIconSize":{
        ref:"attr:ListGrid.hiliteIconSize",
        flags:"IRW",
        description:"Default width and height of ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIcons','hilite icons')} for this component.\n Can be overridden at the component level via explicit \n ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconWidth','hiliteIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconHeight','hiliteIconHeight')}, or at the field level via \n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconSize','hiliteIconSize')},\n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconWidth','hiliteIconWidth')} and \n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconHeight','hiliteIconHeight')}",
        name:"hiliteIconSize",
        seeAlso:[
            {
                ref:"attr:ListGrid.hiliteIconWidth",
                description:null
            },
            {
                ref:"attr:ListGrid.hiliteIconHeight",
                description:null
            },
            {
                ref:"attr:ListGridField.hiliteIconSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"12",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "type:ChartType":{
        ref:"type:ChartType",
        values:[
            {
                description:"Values represented by area, with stacked values representing multiple                   facet values. This is equivalent to ChartType \"Line\" with stacking enabled.",
                value:"Area"
            },
            {
                description:"Values represented by vertical columns.  Typically supports stacking to                  represent two facets.  May support simultaneous stacking and clustering for\n                  3 facets.",
                value:"Column"
            },
            {
                description:"Values represented by horizontal bars.  Typically supports stacking to                  represent two facets.  May support simultaneous stacking and clustering for\n                  3 facets.",
                value:"Bar"
            },
            {
                description:"Values represented by a lines between data points, or stacked areas for                  multiple facets.",
                value:"Line"
            },
            {
                description:"Values represented on a circular background by a line around the center, or                  stacked areas for multiple facets",
                value:"Radar"
            },
            {
                description:"Circular chart with wedges representing values.  Multiple or stacked pies                  for multiple facets.",
                value:"Pie"
            },
            {
                description:"Like a pie chart with a central hole.  Multiple or stacked doughnuts for                  multiple facets.",
                value:"Doughnut"
            },
            {
                description:"A chart with two continuous numeric axes and up to one discrete facet.",
                value:"Scatter"
            }
        ],
        description:"Known chart types.  These are visual representations of data, not separate data models,\n although some chart types are only capable of showing a single facet of data.\n <P>\n Concrete charting implementations may use any value for <code>chartType</code> but should\n support the provided <code>chartType</code> values for charts that correspond to the visual\n presentation described below, to enable easy switching between charting engines.",
        name:"ChartType",
        seeAlso:[
        ],
        type:"type"
    },
    "method:SplitPane.showListPane":{
        ref:"method:SplitPane.showListPane",
        flags:"",
        description:" Causes a transition to the ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')}, optionally updating the\n ${isc.DocUtils.linkForRef('method:SplitPane.setListTitle','list title')}.\n <p>\n If, based on the ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode')} and ${isc.DocUtils.linkForRef('attr:SplitPane.pageOrientation','pageOrientation')},\n this causes the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')} to be hidden, the\n ${isc.DocUtils.linkForRef('attr:SplitPane.backButton','back button')} will be updated with the current title of the\n <code>navigationPane</code>, or the <code>backButtonTitle</code> passed to this method.\n When ${isc.DocUtils.linkForRef('attr:SplitPane.addHistoryEntries')} is enabled and <code>backButtonTitle</code> is passed,\n then <code>backButtonTitle</code> will be used for the back button title if the user goes\n back to the <code>listPane</code>.\n\n",
        name:"showListPane",
        seeAlso:[
        ],
        params:[
            {
                description:"optional new list title.",
                optional:true,
                name:"listPaneTitle",
                defaultValue:null,
                type:"HTMLString"
            },
            {
                description:"optional new title for the ${isc.DocUtils.linkForRef('attr:SplitPane.backButton','back button')}.",
                optional:true,
                name:"backButtonTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:ImgButton.titleClipped":{
        ref:"method:ImgButton.titleClipped",
        flags:"A",
        description:" Is the title of this button clipped?\n",
        name:"titleClipped",
        seeAlso:[
        ],
        returns:{
            description:"whether the title is clipped.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ImgButton"
    },
    "method:StretchImgButton.addToRadioGroup":{
        ref:"method:StretchImgButton.addToRadioGroup",
        flags:"",
        description:" Add this widget to the specified mutually exclusive selection group with the ID\n passed in.\n Selecting this widget will then deselect any other StatefulCanvases with the same\n radioGroup ID.\n StatefulCanvases can belong to only one radioGroup, so this method will remove from \n any other radiogroup of which this button is already a member.\n",
        name:"addToRadioGroup",
        seeAlso:[
        ],
        params:[
            {
                description:"- ID of the radiogroup to which this widget should be added",
                optional:false,
                name:"groupID",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "group:automatedTesting":{
        ref:"group:automatedTesting",
        title:"Automated Testing",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"SmartClient supports automated testing with a variety of tools.\n <P>\n <h3>Selenium</h3>\n <P>\n SmartClient includes a free, custom Selenium extension for robust record and playback of tests,\n including the ability to record on one browser and play back on others, support for Selenium\n Remote Control allowing tests to be written in a variety of programming languages and run as\n scripts, as well as SmartClient-specific enhancements to the Selenium IDE.\n <P>\n These extensions can be found in the \n <smartclient><code>smartclientSDK/tools/selenium/</code></smartclient>\n <smartgwt><code>selenium/</code></smartgwt>\n directory and a user guide can be found ${isc.DocUtils.linkForRef('group:usingSelenium','here')}. \n <P>\n Selenium supports writing test code in any programming language via\n <a href='http://seleniumhq.org/projects/remote-control/' target='_blank'>Seleniun RC</a>.  By writing\n Selenium RC test cases in Java, you can drive them from JUnit, hence creating automated\n tests that can be run from the command line or via Continuous Integration servers such as\n Hudson, allowing for running tests on checkins to source control or in overnight batch runs.\n <P>\n Services such as <a href='http://saucelabs.com/ondemand' target='_blank'>SauceLabs OnDemand</a> allow you\n to run the actual browsers in the cloud, tunneling back to a private network via an\n encrypted channel, so that you do not need to set up Selenium RC servers with appropriate\n browsers installed.\n <P>\n For apps requiring load testing, also take a look at\n <a href='http://browsermob.com' target='_blank'>BrowserMob</a>, which allows you to run Selenium tests with\n thousands of browsers at once against a test deployment.\n <P>\n <b>JUnit + Selenium RC</b>\n <P>\n Explore ${isc.DocUtils.linkForRef('group:jUnitSeleniumRC','JUnit + Selenium RC')}, where we walk through a JUnit test built\n using Selenium IDE and targeting a SmartClient Showcase example.\n <P>\n <h3>TestRunner</h3>\n <P>\n ${isc.DocUtils.linkForRef('group:testRunner','TestRunner')} is a system for automatically running a suite of Selenium\n tests, commiting the results to a database, and reporting any regressions (or fixes) via email.\n <P>\n <h3>SOASTA</h3>\n <P>\n SOASTA's CloudTest product includes special support for SmartClient with capabilities\n similar to our Selenium extensions, with special emphasis on load testing.  Find out more at\n <a href='http://soasta.com' target='_blank'>http://soasta.com</a>.\n <P>\n <smartgwt>\n <h3>GwtTestCase</h3>\n <P>\n GWT includes a way to run a GWT application under JUnit, running your GWT application in a\n \"headless\" browser.  This is a very limited testing approach appropriate for certain unit\n tests only - it cannot replace events such as clicks, and it doesn't run in actual browser\n (instead it runs in a simulator called HtmlUnit), which can lead to false failures in a\n variety of areas, including network communication and XML processing, where HtmlUnit's\n behaviors do not correspond to any real browser.\n <p>\n For these reasons, Isomorphic recommends performing substantially all of your tests via\n Selenium, including unit tests.  In particular, if a test fails under HtmlUnit but would not\n fail in a real browser, this will not be regarded as a bug.\n <P>\n If you use GwtTestCase, note that it has a bug where it does not run onModuleLoad() for\n included GWT modules.  To make sure SmartGWT's onModuleLoad() runs, add a\n <code>gwtSetUp()</code> implementation like so:\n <P>\n <pre>\n   public class SgwtTest extends GWTTestCase {\n     \tpublic void gwtSetUp() {\n     \t\tnew SmartGwtEntryPoint().onModuleLoad();\t\t\n     \t}\n      ...\n </pre>\n <P>\n You may need to add similar manual calls for other GWT modules you inherit which expect to\n have their <code>onModuleLoad()</code> method called normally.\n </smartgwt>\n <P>\n <h3>WebDriver / \"Selenium 2\"</h3>\n <P>\n WebDriver, which is now part of Selenium 2, uses a different basic architecture in which\n extensions are added to each browser in order to drive tests, instead of doing so from\n JavaScript.\n <P>\n Support for WebDriver-based testing for SmartClient is now available with the same custom\n locator strategies and custom commands as we provide for Selenium 1.0.  However, we continue\n to recommend Selenium 1.0 rather than WebDriver-based Selenium 2, because:\n <P>\n <ol>\n <li> <b>WebDriver is more complex to install</b>: WebDriver requires installing support for\n each browser where you want to run tests, and in some cases multiple WebDriver plugins for\n multiple versions of the browser\n <li> <b>WebDriver has version / browser support issues</b>: Selenium 1.0 generally works\n with any standards-compliant browser.  Because WebDriver requires deeper integration with\n the browser, new browser releases require updated WebDriver extensions.  This is a\n particular issue with the rapid pace of new releases of Firefox, where the WebDriver\n extension becomes disabled by an update of Firefox, but WebDriver test will still run in a\n \"non-native\" mode that behaves erratically.  Unfortunately, there is <b>no way we can\n detect and warn users about this</b>; this is a general issue with WebDriver and\n Firefox, not specific to SmartClient.\n <li> <b>Mobile testing issues</b>: Mobile testing is supported only for certain devices,\n requires that an application be installed on the devices, doesn't run a normal browser\n (rather an embedded browser window inside an application), which can introduce spurious\n issues during playback.  In contrast, while Selenium RC doesn't support mobile, with\n Selenium 1.0 you can use Selenium Core to test any mobile device that supports JavaScript\n without installation of an app.  Both situations have drawbacks but we feel that Selenium\n 1.0 has an overall advantage over WebDriver here.\n <li> <b>Java skills required</b>: Tests created in Selenium IDE and stored in Selenese can\n be executed by a variety of tools without requiring Java skills, including our own\n ${isc.DocUtils.linkForRef('group:testRunner')}.  Most ways of running WebDriver tests involve Java coding\n skills or at least the ability to work with a Java IDE.  This tends to mean that all QA\n personnel must either have Java skills or drain the time of Java developers on repetitive\n tasks.\n </ol>\n <P>\n Ultimately, our current recommendation is to use Selenium 1.0 and Selenium RC exclusively or\n at least primarily.  If there are critically important tests that you can only build via\n WebDriver (rare: the most common such case is testing file upload - see below), use WebDriver for\n those tests only, or use manual testing for those tests.\n <P>\n <b>WebDriver Usage</b>\n <P>\n When using WebDriver, we recommend using Selenum IDE to record tests, and storing tests in\n Selenese (as with Selenium RC / 1.0).  WebDriver is not normally able to execute Selenese\n tests, but we provide a Java class <code>SeleneseRunner</code> that can be used to:\n <ul>\n <li> execute Selenese directly from the command line\n <li> execute Selenese from inside a Java program (eg, as part of a JUnit test)\n <li> convert a Selenese test to Java code (as a JUnit test)\n </ul>\n See the server-side JavaDoc for com.isomorphic.webdriver.SeleneseRunner for more information\n on how to use these features.\n <p>\n <b>NOTE:</b> Selenium IDE has an option to export tests as WebDriver-compatible code.  <b>Do\n not use</b> this feature, it exports useless code that doesn't understand custom commands,\n custom locators, or other key features of Selenium IDE.  Use SeleneseRunner instead.\n <p>\n <b>WebDriver Classes overview</b>\n <p>\n Storing and executing Selenese tests recorded in the Selenium IDE is recommended as the\n primary approach for using WebDriver.  However, for certain rare tests it can make sense to\n use WebDriver Java support directly.\n <p>\n SmartClient support for WebDriver is based around 3 different Java classes:\n <P>\n <ol>\n <li> <b>ByScLocator</b>: This implements the ability to find WebElements or WebDriver \"By\"\n objects using SmartClient Locator strings.  See ${isc.DocUtils.linkForRef('group:usingSelenium')} for more\n background on Locator strings and how to obtain them.  Given a locator String, example usage is:\n <pre>\n ByScLocator.scLocator(\"//ListGrid[ID=\\\"countryList\\\"]/body/row[countryCode=US||0]/col[fieldName=countryCode||0]\")\n </pre>\n <li> <b>SmartClientWebDriver</b>: This is an abstract class which provides a number of\n different methods for interacting with the browser, such as:\n <ul>\n <li> open a browser at a particular URL\n <li> find the element or elements which match a given \"By\" object (either ByScLocator, or a\n      standard WebDriver locator)\n <li> perform events and operations (click, drag, select etc)\n <li> perform custom SmartClient validations / state checks, such as whether a grid has\n      loaded data\n </ul>\n Three concrete implementations of SmartClientWebDriver are provided: SmartClientFireFoxDriver,\n SmartClientChromeDriver and SmartClientIEDriver. There is also a SmartClientRemoteWebdriver class\n which allows the injection of a manually configured RemoteWebDriver instance. This might be\n necessary, for example, for use with Selenium Grid.\n <li> <b>ScAction</b>: a SmartClient-specific version of the standard WebDriver\n \"Action\" class, providing a builder pattern to create a sequence of operations which can\n then be perform()ed.\n </ol>\n <P>\n These classes are packaged in the library isomorphic_webdriver.jar, which can be found\n in WEB-INF/lib-WebDriverSupport (along with several 3rd-party supporting libraries).\n <P>\n General information regarding WebDriver can be found\n <a href='http://docs.seleniumhq.org/docs/03_webdriver.jsp#introducing-webdriver' target='_blank'>here</a>. Setup for\n WebDriver is more complex than for classic Selenium: The basic Java package includes drivers\n for FireFox (subject to important version limitations as described above), but additional drivers must\n be downloaded for <a href='http://code.google.com/p/chromium/downloads/list' target='_blank'>Google Chrome</a> and \n <a href='http://code.google.com/p/selenium/downloads/list' target='_blank'>Internet Explorer</a>.\n <P>\n <b>File Upload Example Test</b>\n <P>\n As discussed above, one advantage which WebDriver does have over Classic Selenium is the ability\n to test file upload. It is still limited in that if a click is triggered on the file selection button\n an OS native file selection dialog will be triggered in which case the test will be suspended until the\n file is manually selected. To avoid this, the sendKeys() method can be used to enter the file location.\n Two examples of this are given below - one for the SmartClient showcase, and one for SmartGWT:\n <p>\n <pre>\n    &#47;**\n     * The following test runs against localhost and requires a small (< 50k) image to be in /tmp/image.jpg\n     *&#47;\n    public void fileUploadSC() throws Exception {\n        SmartClientFirefoxDriver driver = new SmartClientFirefoxDriver();\n        driver.setBaseUrl(\"http://localhost:8080/\");\n        driver.get(\"isomorphic/system/reference/SmartClient_Explorer.html#upload\");\n        driver.manage().window().maximize();\n\n        final int origSize = driver.findElements(ByScLocator.scLocator(\"//TileGrid[ID=\\\"mediaTileGrid\\\"]/tile\")).size();\n\n        By titleInput = ByScLocator.scLocator(\"//DynamicForm[ID=\\\"uploadForm\\\"]/item[name=title||title=Title||index=0|\"\n                                             +\"|Class=TextItem]/element\");\n        driver.click(titleInput);\n        driver.sendKeys(titleInput, \"test image: \" + origSize);\n        \n        By uploadForm = ByScLocator.scLocator(\"//DynamicForm[ID=\\\"uploadForm\\\"]/\");\n        WebElement form = driver.findElement(uploadForm);\n        WebElement findElement = form.findElement(By.xpath(\"//input[@type='FILE']\"));\n        &#47;*\n         * The following causes a native dialog to be created which prevents further progress. Do NOT uncomment!\n         * We just have to sendKeys() to it\n         *&#47;\n        //findElement.click(); \n        \n        findElement.sendKeys(\"/tmp/image.jpg\"); // A local file. Please change accordingly\n\n        By saveButton = ByScLocator.scLocator(\n                             \"//DynamicForm[ID=\\\"uploadForm\\\"]/item[title=Save||index=2||Class=ButtonItem]/button/\");\n        driver.waitForElementClickable(saveButton);\n        driver.click(saveButton);\n        &#47;*\n         * Note the following fails once the grid contains more than 3 rows of data\n         * as the index becomes inconsistent as tiles scrolled out of site are removed\n         * and the indices change\n         *&#47;                                                        \n        By tile = ByScLocator.scLocator(\"//TileGrid[ID=\\\"mediaTileGrid\\\"]/tile[Class=SimpleTile||index=\"\n                         +(origSize)+\"||length=\"+(origSize+1)+\"||classIndex=\"+(origSize)+\"||classLength=\"+(origSize+1)+\"]/\");\n        driver.waitForElementClickable(tile);\n        WebElement tile1 = driver.findElement(tile);\n        assertEquals(\"test image: \" + origSize, tile1.getText());\n        assertEquals(origSize + 1, driver.findElements(ByScLocator.scLocator(\"//TileGrid[ID=\\\"mediaTileGrid\\\"]/tile\")).size());\n        driver.close();\n        driver.quit();\n    }\n    \n    &#47;**\n     * The following test runs against localhost and requires a small (< 50k) image to be in /tmp/image.jpg\n     *&#47;\n    public void fileUploadGWT() throws Exception {\n        final String basePath = \"//VLayout[ID=\\\"isc_Showcase_1_0\\\"]/member[Class=HLayout||index=0||length=2|\"\n                               +\"|classIndex=0||classLength=1]/member[Class=HLayout||index=0||length=2||classIndex=0|\"\n                               +\"|classLength=1]/member[Class=Canvas||index=1||length=2||classIndex=0||classLength=1]\"\n                               +\"/child[Class=TabSet||index=0||length=1||classIndex=0||classLength=1]/paneContainer/\"\n                               +\"member[Class=VLayout||index=1||length=2||classIndex=0||classLength=1]/\"\n                               +\"member[Class=VLayout||index=1||length=2||classIndex=0||classLength=1]/\"\n                               +\"member[Class=HLayout||index=1||length=2||classIndex=0||classLength=1]/\"\n                               +\"member[Class=HLayout||index=0||length=1||classIndex=0||classLength=1]/\";\n        final String formPath = basePath + \"member[Class=DynamicForm||index=0||length=3||classIndex=0||classLength=1]\";\n        final String tilesPath = basePath + \"member[Class=VLayout||index=2||length=3||classIndex=0||classLength=1]/\"\n                                          + \"member[Class=TileGrid||index=2||length=4||classIndex=0||classLength=1]/tile\";\n        SmartClientFirefoxDriver driver = new SmartClientFirefoxDriver();\n        driver.setBaseUrl(\"http://localhost:8888/\");\n        driver.get(\"index.html#upload_sql\");\n        driver.manage().window().maximize();\n\n        final int origSize = driver.findElements(ByScLocator.scLocator(tilesPath)).size();\n        By uploadForm = ByScLocator.scLocator(formPath);\n        WebElement form = driver.findElement(uploadForm);\n      \n        By titleInput = ByScLocator.scLocator(formPath + \"/item[name=title||title=Title||index=0||Class=TextItem]/element\");\n        driver.click(titleInput);\n        driver.sendKeys(titleInput, \"test image: \" + origSize);\n        \n        WebElement findElement = form.findElement(By.xpath(\"//input[@type='FILE']\"));\n        &#47;*\n         * The following causes a native dialog to be created which prevents further progress. Do NOT uncomment!\n         * We just have to sendKeys() to it\n         *&#47;\n        //findElement.click(); \n        \n        findElement.sendKeys(\"/tmp/image.jpg\"); // A local file. Please change accordingly\n\n        By saveButton = ByScLocator.scLocator(formPath + \"/item[title=Save||index=2||Class=ButtonItem]/button/\");\n        driver.waitForElementClickable(saveButton);\n        driver.click(saveButton);\n        &#47;*\n         * Note the following fails once the grid contains more than 3 rows of data as the index becomes inconsistent\n         * as tiles scrolled out of site are removed and the indices change\n         *&#47;\n        By tile = ByScLocator.scLocator(tilesPath + \"[Class=SimpleTile||index=\"+(origSize)+\"||length=\"+(origSize+1)\n                                                      + \"||classIndex=\"+(origSize)+\"||classLength=\"+(origSize+1)+\"]/\");\n        driver.waitForElementClickable(tile);\n        WebElement tile1 = driver.findElement(tile);\n        assertEquals(\"test image: \" + origSize, tile1.getText());\n        assertEquals(origSize + 1, driver.findElements(ByScLocator.scLocator(tilesPath)).size());\n        driver.close();\n        driver.quit();\n    }\n </pre>\n <P>\n <b>Other tools</b>\n <P>\n SmartClient supports a special JavaScript API to allow other test tools to integrate in the\n same manner as Selenium, WebDriver and SOASTA.  This API allows the test tool to record an abstract\n \"locator\" string representing the logical name for an interactive DOM element, and then\n during test playback, retrieve a DOM element given a locator.\n <P>\n This is critical because, like many modern Ajax systems, SmartClient generates different DOM\n elements in different browsers, in different skins, and in different versions of SmartClient.  \n Testing tools that try to directly record the generated SmartClient DOM produce extremely\n brittle tests because they are effectively recording undocumented internals.\n <P>\n Using the \"locator\" API allows you to record or write tests that will run in any browser\n supported by SmartClient, in any version of SmartClient, and in any skin.  It also makes\n tests more readable and easier to understand and maintain.\n <P>\n Different testing tools vary in how easily they can be configured to use the locator API,\n and in some older tools it can be a large effort.  We highly recommend using our Selenium\n extensions - it often makes sense to use them even if you have to use them in parallel with\n another, older testing tool.  If you are forced to use another tool exclusively:\n <ul>\n <smartclient>\n <li> Read the ${isc.DocUtils.linkForRef('class:AutoTest','documentation for the locator system')}\n </smartclient>\n <smartgwt>\n <li> Refer to the &#83;martClient documentation for the AutoTest class (because it's a\n JavaScript API).  It can be found\n <a href='http://www.smartclient.com/product/documentation.jsp' target='_blank'>here</a>\n </smartgwt>\n <li> Read over the source code of our Selenium extensions to get a clear understanding of\n how the Selenium integration works, because this will be analogous to the work you'll need\n to do\n <li> Search the <a href='http://forums.smartclient.com/' target='_blank'>forums</a> for other developers\n who are trying to use the same test tool with SmartClient, and share efforts\n </ul>",
        name:"automatedTesting",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DynamicForm.autoFocus":{
        ref:"attr:DynamicForm.autoFocus",
        flags:"IRW",
        description:"If true, when the form is drawn, focus will automatically be put into the first focusable\n element in the form.<br>\n Note that to put focus in a different item you can explicitly call \n <code>dynamicForm.focusInItem(<i>itemName</i>)</code>",
        name:"autoFocus",
        seeAlso:[
            {
                ref:"method:DynamicForm.focusInItem",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "focus"
        ]
    },
    "method:ListGrid.fetchData":{
        ref:"method:ListGrid.fetchData",
        flags:"",
        description:" Retrieves data from the DataSource that matches the specified criteria.\n <p>\n When <code>fetchData()</code> is first called, if data has not already been provided via\n ${isc.DocUtils.linkForRef('method:ListGrid.setData','setData()')}, this method will create a ${isc.DocUtils.linkForRef('class:ResultSet')}, which will be\n configured based on component settings such as ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fetchOperation')}\n and ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataPageSize')}, as well as the general purpose\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataProperties')}.  The created ResultSet will automatically send a DSRequest\n to retrieve data from ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource','listGrid.dataSource')}, and from then on will  \n automatically manage paging through large datasets, as well as performing filtering and\n sorting operations inside the browser when possible - see the ${isc.DocUtils.linkForRef('class:ResultSet')} docs for\n details.\n <p>\n <b>NOTE:</b> do not use <b>both</b> ${isc.DocUtils.linkForRef('attr:DataBoundComponent.autoFetchData','autoFetchData:true')} <b>and</b> a\n call to <code>fetchData()</code> - this may result in two DSRequests to fetch data.  Use\n either ${isc.DocUtils.linkForRef('attr:DataBoundComponent.autoFetchData','autoFetchData')} and ${isc.DocUtils.linkForRef('type:Criteria')} <b>or</b> a manual call to fetchData()\n passing criteria.\n <p>\n Whether a ResultSet was automatically created or provided via ${isc.DocUtils.linkForRef('method:ListGrid.setData','setData()')}, subsequent\n calls to fetchData() will simply call ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria')}.\n <p>\n Changes to criteria may or may not result in a DSRequest to the server due to\n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering','client-side filtering')}.  You can call\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.willFetchData','willFetchData(criteria)')} to determine if new criteria will result in a\n server fetch.\n <P>\n If you need to force data to be re-fetched, you can call\n ${isc.DocUtils.linkForRef('method:ListGrid.invalidateCache','invalidateCache()')} and new data will automatically be fetched\n from the server using the current criteria and sort direction.  <b>NOTE:</b> when using\n <code>invalidateCache()</code> there is no need to <b>also</b> call <code>fetchData()</code>\n and in fact this could produce unexpected results.\n <p>\n This method takes an optional callback parameter (set to a ${isc.DocUtils.linkForRef('type:DSCallback')}) to fire when\n the fetch completes. Note that this callback will not fire if no server fetch is performed.\n In this case the data is updated synchronously, so as soon as this method completes you\n can interact with the new data. If necessary, you can use\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.willFetchData','willFetchData()')} to determine whether or not a server\n fetch will occur when <code>fetchData()</code> is called with new criteria.\n <p>\n In addition to the callback parameter for this method, developers can use \n ${isc.DocUtils.linkForRef('method:ListGrid.dataArrived','dataArrived()')} to be notified every time data is loaded.\n\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria. If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed                                          in as this argument instead of a raw criteria \n                                          object, will be derived by calling\n                                          ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete. Fires                                          only if server contact was required",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundFetch')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:FormItem.optionOperationId":{
        ref:"attr:FormItem.optionOperationId",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code>, this attribute may be set\n to specify an explicit ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} when performing a fetch against the\n option dataSource to pick up display value mapping.",
        name:"optionOperationId",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:CubeGrid.autoSelectHeaders":{
        ref:"attr:CubeGrid.autoSelectHeaders",
        flags:"IRW",
        description:"If true, when multiple facets appear on one side in a nested headers presentation, the\n selection state of parent/child headers are automatically kept in sync.",
        name:"autoSelectHeaders",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:CalendarEvent.canEditLane":{
        ref:"attr:CalendarEvent.canEditLane",
        flags:"IRW",
        description:"Boolean indicating whether this event can be moved between lanes.  Can also be set at the\n ${isc.DocUtils.linkForRef('attr:Calendar.canEditLane','calendar level')}.\n <P>\n The name of this field within the CalendarEvent can be changed via \n ${isc.DocUtils.linkForRef('attr:Calendar.canEditLaneField')}.",
        name:"canEditLane",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "attr:Dialog.message":{
        ref:"attr:Dialog.message",
        flags:"IR",
        description:"Message to show in this dialog.\n <P>\n If a message is set the primary purpose of the dialog will be assumed to be to show a message with\n buttons - auto-sizing to the message text will be enabled, and, if ${isc.DocUtils.linkForRef('attr:Dialog.icon')} has also\n been set, the ${isc.DocUtils.linkForRef('attr:Dialog.messageLabel','messageLabel')} and ${isc.DocUtils.linkForRef('attr:Dialog.messageIcon','messageIcon')}\n AutoChildren will be created and placed together in the ${isc.DocUtils.linkForRef('attr:Dialog.messageStack','messageStack')}\n AutoChild, with the toolbar underneath as usual.  If any of these behaviors are inconvenient or\n you want more precise control over a message and some custom widgets, start from the superclass\n ${isc.DocUtils.linkForRef('class:Window')} instead, and add controls via ${isc.DocUtils.linkForRef('method:Window.addItem')}.\n <P>\n The message string may contain \"${loadingImage}\", if so, the standard loading spinner will appear at\n that location in the text (see ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSrc')}).\n <P>\n The message will be styled with the ${isc.DocUtils.linkForRef('attr:Dialog.messageStyle')}.",
        name:"message",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:TreeGrid.dataFetchMode":{
        ref:"attr:TreeGrid.dataFetchMode",
        flags:"IR",
        description:"Mode of fetching records from server.\n <P>\n fetchMode:\"local\" implies that local filtering will always be performed. See\n ${isc.DocUtils.linkForRef('attr:TreeGrid.keepParentsOnFilter')} for additional filtering details.\n <P>\n fetchMode:\"basic\" or \"paged\" implies that if search criteria change, the entire\n tree will be discarded and re-fetched from the server.  When retrieving the replacement\n tree data, the default behavior will be to preserve the ${isc.DocUtils.linkForRef('method:TreeGrid.getOpenState','openState')}\n for any nodes that the server returns which were previously opened by the user.  Note\n that this implies that if ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand')} is enabled and the server returns only\n root-level nodes, open state will be preserved only for root-level nodes, and children\n of open root-level nodes will be immediately fetched from the server if\n they are not included in the server's initial response.\n <P>\n fetchMode:\"paged\" enables paging for nodes that have very large numbers of children.\n Whenever the children of a folder are loaded, the <code>resultTree</code> will set\n ${isc.DocUtils.linkForRef('attr:DSRequest.startRow')} and ${isc.DocUtils.linkForRef('attr:DSRequest.endRow','endRow')} when requesting children\n from the DataSource, and will manage loading of further children on demand, similar to\n how a ${isc.DocUtils.linkForRef('class:ResultSet')} manages paging for lists.  For a deeper discussion see the\n <b>Paging large sets of children</b> section of the ${isc.DocUtils.linkForRef('group:treeDataBinding')}\n overview.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"basic\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('pagingForChildren')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "treeDataBinding"
        ]
    },
    "attr:DataSource.requestProperties":{
        ref:"attr:DataSource.requestProperties",
        flags:"IR",
        description:"Additional properties to pass through to the ${isc.DocUtils.linkForRef('class:DSRequest')}s made by this\n DataSource.\n <p>\n These properties are applied before ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')} is called.",
        name:"requestProperties",
        seeAlso:[
            {
                ref:"class:DSRequest",
                description:null
            },
            {
                ref:"attr:OperationBinding.requestProperties",
                description:null
            }
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration",
            "serverDataIntegration"
        ]
    },
    "attr:Canvas.animateRectAcceleration":{
        ref:"attr:Canvas.animateRectAcceleration",
        flags:"IRWA",
        description:"Default acceleration function for performing an animated move and resize.  If unset, \n <code>this.animateAcceleration</code> will be used by default instead",
        name:"animateRectAcceleration",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:OperationBinding.exportFilename":{
        ref:"attr:OperationBinding.exportFilename",
        flags:"IR",
        description:"The name of the file to save the exported data into.",
        name:"exportFilename",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding"
    },
    "classAttr:GroupingMessages.upcomingTodayTitle":{
        ref:"classAttr:GroupingMessages.upcomingTodayTitle",
        flags:"IRW",
        description:"When a ${isc.DocUtils.linkForRef('class:ListGrid')} is grouped by a date field in 'Upcoming' mode, \n this is the group title for all records in which the grouped date field occurs today,\n relative to the current date.",
        name:"upcomingTodayTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Today\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:Class.isFrameworkClass":{
        ref:"classAttr:Class.isFrameworkClass",
        flags:"RWA",
        description:"Is this a core SmartClient class (part of the SmartClient framework)?\n This attribute may be used for debugging, and by the AutoTest subsystem to\n differentiate between SmartClient classes (part of the smartClient framework) and\n subclasses created by specific applications",
        name:"isFrameworkClass",
        setter:[
            "Class.markAsFrameworkClass"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"varies",
        type:"classAttr",
        definingClass:"class:Class",
        groups:[
            "autoTest"
        ]
    },
    "classMethod:NumberUtil.toLocalizedString":{
        ref:"classMethod:NumberUtil.toLocalizedString",
        flags:"",
        description:"  Format the passed number for readability, with:\n  <ul>\n      <li>separators between three-digit groups</li>\n      <li>optional fixed decimal precision (so decimal points align on right-aligned numbers)</li>\n      <li>localized decimal, grouping, and negative symbols</li>\n  </ul>\n  ${isc.DocUtils.linkForRef('classAttr:NumberUtil.decimalSymbol','Decimal symbol')}, \n  ${isc.DocUtils.linkForRef('classAttr:NumberUtil.groupingSymbol','grouping symbol')}, and \n  ${isc.DocUtils.linkForRef('classAttr:NumberUtil.negativeSymbol','negative symbol')} will normally come from\n  SmartClient locale settings (which may come from either client OS or application locale\n  settings), but they are also supported as arguments for mixed-format applications\n  (eg normalize all currency to ${isc.DocUtils.linkForRef('classMethod:NumberUtil.toUSCurrencyString','US format')}, but use the \n current locale format for other numbers).\n\n",
        name:"toLocalizedString",
        seeAlso:[
        ],
        params:[
            {
                description:"the number object to convert",
                optional:false,
                name:"number",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"decimal-precision for the formatted value",
                optional:true,
                name:"decimalPrecision",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the symbol that appears before the decimal part of the number",
                optional:true,
                name:"decimalSymbol",
                defaultValue:null,
                type:"string"
            },
            {
                description:"the symbol shown between groups of 3 non-decimal digits",
                optional:true,
                name:"groupingSymbol",
                defaultValue:null,
                type:"string"
            },
            {
                description:"the symbol that indicate a negative number",
                optional:true,
                name:"negativeSymbol",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"formatted number or empty string if not passed a number.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil"
    },
    "attr:FormulaBuilder.warnDuplicateTitles":{
        ref:"attr:FormulaBuilder.warnDuplicateTitles",
        flags:"IRWA",
        description:"Should the user be showed a warning when the entered Title value already exists?",
        name:"warnDuplicateTitles",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder"
    },
    "classAttr:Time.PMIndicator":{
        ref:"classAttr:Time.PMIndicator",
        flags:"RWA",
        description:"String appended to times to indicate am (when not using 24 hour format).",
        name:"PMIndicator",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\" pm\"",
        type:"classAttr",
        definingClass:"class:Time",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HTMLFlow.contentsURLParams":{
        ref:"attr:HTMLFlow.contentsURLParams",
        flags:"IRW",
        description:"Parameters to be sent to the contentsURL when fetching content.",
        name:"contentsURLParams",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "classMethod:EventHandler.ctrlKeyDown":{
        ref:"classMethod:EventHandler.ctrlKeyDown",
        flags:"",
        description:"\t\t\tReturn true if the control key is being held down.\n\t\t\tNote that this is only set reliably for keyboard events.\n\n",
        name:"ctrlKeyDown",
        seeAlso:[
        ],
        returns:{
            description:"true == control key is down",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "keyboardEvents"
        ]
    },
    "attr:FormulaBuilder.autoHideCheckBoxLabel":{
        ref:"attr:FormulaBuilder.autoHideCheckBoxLabel",
        flags:"IRW",
        description:"Text label for the checkbox that allows the user to automatically hide the\n fields used in the formula.",
        name:"autoHideCheckBoxLabel",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Auto hide fields used in formula\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DynamicForm.setReadOnlyDisplay":{
        ref:"method:DynamicForm.setReadOnlyDisplay",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:DynamicForm.readOnlyDisplay')} attribute.\n",
        name:"setReadOnlyDisplay",
        seeAlso:[
        ],
        params:[
            {
                description:"New read-only display appearance.",
                optional:false,
                name:"appearance",
                defaultValue:null,
                type:"ReadOnlyDisplayAppearance"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "classMethod:Class.getClassName":{
        ref:"classMethod:Class.getClassName",
        flags:"",
        description:"\n\tGets the name of this class as a string.\n\n",
        name:"getClassName",
        seeAlso:[
        ],
        returns:{
            description:"name of the class",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:DataSource.callbackParam":{
        ref:"attr:DataSource.callbackParam",
        flags:"IR",
        description:"Applies only to dataFormat: \"json\" and ${isc.DocUtils.linkForRef('attr:DataSource.dataTransport')}:\"scriptInclude\".  Specifies\n the name of the query parameter that tells your JSON service what function to call as\n part of the response.",
        name:"callbackParam",
        seeAlso:[
            {
                ref:"attr:DataSource.dataFormat",
                description:null
            },
            {
                ref:"attr:DataSource.operationBindings",
                description:null
            },
            {
                ref:"attr:OperationBinding.callbackParam",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"callback\"",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlEditSave')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "method:GridRenderer.getVisibleRows":{
        ref:"method:GridRenderer.getVisibleRows",
        flags:"",
        description:" Get the rows that are currently visible in the viewport, as an array of \n [firstRowNum, lastRowNum]. \n <p>\n If the grid contains no records, will return [-1,-1].  Will also return [-1,-1] if called at\n an invalid time (for example, data is in the process of being fetched - see\n ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown')}).\n \n",
        name:"getVisibleRows",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Array of int"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "method:EditContext.destroyAll":{
        ref:"method:EditContext.destroyAll",
        flags:"",
        description:" Removes all ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} from the EditContext, and calls\n ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} on the\n ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObjects')}.\n",
        name:"destroyAll",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:Canvas.animateHide":{
        ref:"method:Canvas.animateHide",
        flags:"",
        description:" Hide a canvas by shrinking it vertically to zero height over a period of time.\n This method will not fire if the widget is already drawn and visible, or has overflow\n other than <code>\"visible\"</code> or <code>\"hidden\"</code>.\n",
        name:"animateHide",
        seeAlso:[
        ],
        params:[
            {
                description:"How should the content of the  window be hidden during the hide? If ommitted, default behavior can be configured via\n  ${isc.DocUtils.linkForRef('attr:Canvas.animateHideEffect')}",
                optional:true,
                name:"effect",
                defaultValue:null,
                type:"animateShowEffectId | animateShowEffect"
            },
            {
                description:"When the hide completes this callback will be fired. Single                              'earlyFinish' parameter will be passed if the animation was\n                              cut short by a call to finishAnimation.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"AnimationCallback"
            },
            {
                description:"Duration in ms of the animated hide.  If unset, duration will be   picked up from ${isc.DocUtils.linkForRef('attr:Canvas.animateHideTime')}",
                optional:true,
                name:"duration",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Optional acceleration effect function to bias   the animation ratios.  If unset, acceleration will be picked up from\n   ${isc.DocUtils.linkForRef('attr:Canvas.animateShowTime')}",
                optional:true,
                name:"acceleration",
                defaultValue:null,
                type:"AnimationAcceleration"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateWipe')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:Label.autoFit":{
        ref:"attr:Label.autoFit",
        flags:"IRW",
        description:"If true, ignore the specified size of this widget and always size just large\n enough to accommodate the title.  If <code>setWidth()</code> is explicitly called on an\n autoFit:true button, autoFit will be reset to <code>false</code>.\n <P>\n Note that for StretchImgButton instances, autoFit will occur horizontally only, as \n unpredictable vertical sizing is likely to distort the media. If you do want vertical \n auto-fit, this can be achieved by simply setting a small height, and having \n overflow:\"visible\"",
        name:"autoFit",
        setter:[
            "setAutoFit"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "sizing"
        ]
    },
    "method:TimeItem.getMinuteValues":{
        ref:"method:TimeItem.getMinuteValues",
        flags:"A",
        description:" Returns an array of the current valid minute values, whether set directly as \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteValues')} or generated according to \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMinValue','minuteMinValue')}, \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMaxValue','minuteMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteIncrement','minuteIncrement')}.\n",
        name:"getMinuteValues",
        seeAlso:[
        ],
        returns:{
            description:"array of available Minute values",
            type:"Array of Number"
        },
        type:"method",
        definingClass:"class:TimeItem"
    },
    "method:DynamicForm.getOldValues":{
        ref:"method:DynamicForm.getOldValues",
        flags:"",
        description:" Returns the set of values last stored by ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')}.\n Note that <code>rememberValues()</code> is called automatically by\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}, and on form initialization, so this typically contains\n all values as they were before the user edited them.\n\n",
        name:"getOldValues",
        seeAlso:[
            {
                ref:"method:DynamicForm.getChangedValues",
                description:null
            }
        ],
        returns:{
            description:"old values in the form",
            type:"Object"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "attr:DataBoundComponent.unknownErrorMessage":{
        ref:"attr:DataBoundComponent.unknownErrorMessage",
        flags:"IRW",
        description:"For databound components that support editing, the error message for a failed validator\n that does not specify its own errorMessage.",
        name:"unknownErrorMessage",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Invalid value\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "validation",
            "i18nMessages"
        ]
    },
    "attr:StretchImg.showDownGrip":{
        ref:"attr:StretchImg.showDownGrip",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true, this property determines whether to show the\n 'Down' state on the grip image when the user mousedown's on this widget. \n Has no effect if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')} is false.",
        name:"showDownGrip",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "grip"
        ]
    },
    "attr:TreeGrid.canAcceptDroppedRecords":{
        ref:"attr:TreeGrid.canAcceptDroppedRecords",
        flags:"IRW",
        description:"Indicates whether records can be dropped into this listGrid.",
        name:"canAcceptDroppedRecords",
        seeAlso:[
            {
                ref:"attr:TreeNode.canDrag",
                description:null
            },
            {
                ref:"attr:TreeNode.canAcceptDrop",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragReparent')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "dragdrop"
        ]
    },
    "method:PortalLayout.removePortlet":{
        ref:"method:PortalLayout.removePortlet",
        flags:"",
        description:" Removes a ${isc.DocUtils.linkForRef('class:Portlet')} which is currently rendered in this PortalLayout.\n Portlet will not be destroyed by default - if this is desired the calling code should\n do this explicitly.\n",
        name:"removePortlet",
        seeAlso:[
        ],
        params:[
            {
                description:"portlet to remove",
                optional:false,
                name:"portlet",
                defaultValue:null,
                type:"Portlet"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:MultiSortDialog.applyButton":{
        ref:"attr:MultiSortDialog.applyButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing the mechanism for accepting\n the current sort configuration.  Fires the passed callback with a single parameter,\n sortLevels, representing the current sort configuration as an array of \n ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortDialog.applyButtonProperties</code> and \n <code>multiSortDialog.applyButtonDefaults</code>.",
        name:"applyButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "class:TreeGrid":{
        methods:[
            "method:TreeGrid.fetchData",
            "method:TreeGrid.filterData",
            "method:TreeGrid.exportClientData",
            "method:TreeGrid.isExportingClientData",
            "method:TreeGrid.toggleFolder",
            "method:TreeGrid.openFolder",
            "method:TreeGrid.closeFolder",
            "method:TreeGrid.shouldAnimateFolder",
            "method:TreeGrid.getAnimateFolderMaxRows",
            "method:TreeGrid.getOpenState",
            "method:TreeGrid.setOpenState",
            "method:TreeGrid.getSelectedPaths",
            "method:TreeGrid.setSelectedPaths",
            "method:TreeGrid.getViewState",
            "method:TreeGrid.setViewState",
            "method:TreeGrid.setData",
            "method:TreeGrid.canEditCell",
            "method:TreeGrid.startEditingNew",
            "method:TreeGrid.rowClick",
            "method:TreeGrid.recordDoubleClick",
            "method:TreeGrid.openLeaf",
            "method:TreeGrid.transferDragData",
            "method:TreeGrid.getDragTrackerIcon",
            "method:TreeGrid.willAcceptDrop",
            "method:TreeGrid.getEventRow",
            "method:TreeGrid.getDropFolder",
            "method:TreeGrid.transferSelectedData",
            "method:TreeGrid.recordDrop",
            "method:TreeGrid.folderDrop",
            "method:TreeGrid.transferNodes",
            "method:TreeGrid.getCellAlign",
            "method:TreeGrid.getNodeTitle",
            "method:TreeGrid.isOverOpenArea",
            "method:TreeGrid.isOverExtraIcon",
            "method:TreeGrid.getOpenIcon",
            "method:TreeGrid.getExtraIcon",
            "method:TreeGrid.getIcon",
            "method:TreeGrid.setNodeIcon",
            "method:TreeGrid.folderOpened",
            "method:TreeGrid.folderClosed",
            "method:TreeGrid.folderClick",
            "method:TreeGrid.leafClick",
            "method:TreeGrid.nodeClick",
            "method:TreeGrid.folderContextClick",
            "method:TreeGrid.leafContextClick",
            "method:TreeGrid.nodeContextClick",
            "method:TreeGrid.dataArrived"
        ],
        exampleConfig:"TreeGrid.xml",
        ref:"class:TreeGrid",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:TreeGrid.dataSource",
            "attr:TreeGrid.data",
            "attr:TreeGrid.initialData",
            "attr:TreeGrid.loadDataOnDemand",
            "attr:TreeGrid.keepParentsOnFilter",
            "attr:TreeGrid.dataFetchMode",
            "attr:TreeGrid.serverFilterFields",
            "attr:TreeGrid.autoFetchTextMatchStyle",
            "attr:TreeGrid.cascadeSelection",
            "attr:TreeGrid.showPartialSelection",
            "attr:TreeGrid.selectionProperty",
            "attr:TreeGrid.canSelectAll",
            "attr:TreeGrid.treeRootValue",
            "attr:TreeGrid.fields",
            "attr:TreeGrid.treeFieldTitle",
            "attr:TreeGrid.showRoot",
            "attr:TreeGrid.separateFolders",
            "attr:TreeGrid.dataProperties",
            "attr:TreeGrid.sortFoldersBeforeLeaves",
            "attr:TreeGrid.displayNodeType",
            "attr:TreeGrid.autoPreserveOpenState",
            "attr:TreeGrid.canDragRecordsOut",
            "attr:TreeGrid.canAcceptDroppedRecords",
            "attr:TreeGrid.canReorderRecords",
            "attr:TreeGrid.canDropOnLeaves",
            "attr:TreeGrid.canReparentNodes",
            "attr:TreeGrid.dragDataAction",
            "attr:TreeGrid.parentAlreadyContainsChildMessage",
            "attr:TreeGrid.cantDragIntoSelfMessage",
            "attr:TreeGrid.cantDragIntoChildMessage",
            "attr:TreeGrid.indentSize",
            "attr:TreeGrid.extraIconGap",
            "attr:TreeGrid.iconSize",
            "attr:TreeGrid.openerIconSize",
            "attr:TreeGrid.openerIconWidth",
            "attr:TreeGrid.openerIconHeight",
            "attr:TreeGrid.folderIcon",
            "attr:TreeGrid.dropIconSuffix",
            "attr:TreeGrid.openIconSuffix",
            "attr:TreeGrid.closedIconSuffix",
            "attr:TreeGrid.nodeIcon",
            "attr:TreeGrid.showOpenIcons",
            "attr:TreeGrid.showDropIcons",
            "attr:TreeGrid.customIconProperty",
            "attr:TreeGrid.customIconOpenProperty",
            "attr:TreeGrid.customIconDropProperty",
            "attr:TreeGrid.showCustomIconOpen",
            "attr:TreeGrid.showCustomIconDrop",
            "attr:TreeGrid.showDisabledSelectionCheckbox",
            "attr:TreeGrid.leaveSelectionCheckboxGap",
            "attr:TreeGrid.folderOpenImage",
            "attr:TreeGrid.folderClosedImage",
            "attr:TreeGrid.folderDropImage",
            "attr:TreeGrid.fileImage",
            "attr:TreeGrid.manyItemsImage",
            "attr:TreeGrid.showConnectors",
            "attr:TreeGrid.showFullConnectors",
            "attr:TreeGrid.showOpener",
            "attr:TreeGrid.alwaysShowOpener",
            "attr:TreeGrid.openerImage",
            "attr:TreeGrid.connectorImage",
            "attr:TreeGrid.offlineNodeMessage",
            "attr:TreeGrid.indentRecordComponents",
            "attr:TreeGrid.createDefaultTreeField",
            "attr:TreeGrid.useAllDataSourceFields",
            "attr:TreeGrid.animateFolders",
            "attr:TreeGrid.animateFolderMaxRows",
            "attr:TreeGrid.animateFolderTime",
            "attr:TreeGrid.animateFolderSpeed",
            "attr:TreeGrid.animateFolderEffect",
            "attr:TreeGrid.recordDropAppearance"
        ],
        description:"The SmartClient system supports hierarchical data (also referred to as tree data\n due to its \"branching\" organization) with:\n <ul>\n   <li> the ${isc.DocUtils.linkForRef('class:Tree')} class, which manipulates hierarchical data sets\n   <li> the TreeGrid widget class, which extends the ListGrid class to visually\n        present tree data in an expandable/collapsible format.\n </ul>\n For information on DataBinding Trees, see ${isc.DocUtils.linkForRef('group:treeDataBinding')}.\n <p>\n A TreeGrid works just like a ${isc.DocUtils.linkForRef('class:ListGrid')}, except one column (specified by\n ${isc.DocUtils.linkForRef('attr:TreeGridField.treeField')}) shows a hierarchical ${isc.DocUtils.linkForRef('class:Tree')}.  A TreeGrid is not limited\n to displaying just the ${isc.DocUtils.linkForRef('class:Tree')} column - you can define additional columns (via\n ${isc.DocUtils.linkForRef('attr:TreeGrid.fields')}) which will render just like the columns of a ${isc.DocUtils.linkForRef('class:ListGrid')}, and\n support all of the functionality of ListGrid columns, such as\n ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue','formatters')}.\n <p>\n Except where explicitly overridden, ${isc.DocUtils.linkForRef('class:ListGrid')} methods, callbacks, and properties\n apply to TreeGrids as well.  The ${isc.DocUtils.linkForRef('class:ListGrid')} defines some methods as taking/returning\n ${isc.DocUtils.linkForRef('object:ListGridField')} and ${isc.DocUtils.linkForRef('object:ListGridRecord')}.  When using those methods in a TreeGrid,\n those types will be ${isc.DocUtils.linkForRef('object:TreeGridField')} and ${isc.DocUtils.linkForRef('object:TreeNode')}, respectively.",
        name:"TreeGrid",
        implementsInterfaces:[
            "DataBoundComponent"
        ],
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Portlet.canDrop":{
        ref:"attr:Portlet.canDrop",
        flags:"IRW",
        description:"Portlets have canDrop set to true to enable drag/drop reposition within the portalLayout",
        name:"canDrop",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('repositionPortlets')}"
        ],
        definingClass:"class:Portlet"
    },
    "attr:FusionChart.fusionVersion":{
        ref:"attr:FusionChart.fusionVersion",
        flags:"IR",
        description:"Version of FusionCharts to assume.  If version is \"2.3\", different names are used for\n the .swf files for each chart (to match the default names in FusionCharts 2.3), and a\n lower version of Flash is required (6.0).",
        name:"fusionVersion",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"3.0\"",
        type:"attr",
        definingClass:"class:FusionChart"
    },
    "attr:ListGridField.icon":{
        ref:"attr:ListGridField.icon",
        flags:"IR",
        description:"Optional icon to show next to the title for this field.\n Should be set to a URL to an image. Relative paths will be evaluated starting at\n the imgDir of this component. This URL is partial - it may be updated to indicate\n the current disabled (etc) state of the field.\n <p>\n If ${isc.DocUtils.linkForRef('attr:ListGridField.type','field.type')} is set to \"icon\", this icon will also be shown\n in every cell of this field - see also ${isc.DocUtils.linkForRef('attr:ListGridField.cellIcon','field.cellIcon')}.\n <p>\n To change this property after fields have been passed to ${isc.DocUtils.linkForRef('method:ListGrid.setFields')},\n use ${isc.DocUtils.linkForRef('method:ListGrid.setFieldIcon')}.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ServiceTask.operationType":{
        ref:"attr:ServiceTask.operationType",
        flags:"IR",
        description:"Type of operation to invoke",
        name:"operationType",
        seeAlso:[
        ],
        valueType:"DSOperationType",
        defaultValue:"\"fetch\"",
        type:"attr",
        definingClass:"class:ServiceTask"
    },
    "attr:DrawOval.radius":{
        ref:"attr:DrawOval.radius",
        flags:"IW",
        description:"Radius of the oval. Since this is used to initialize the ${isc.DocUtils.linkForRef('method:DrawOval.getRadiusX','horizontal')}\n and ${isc.DocUtils.linkForRef('method:DrawOval.getRadiusY','vertical')} radii, then the oval is a circle.\n <p>\n If unset, the horizontal and vertical radii are set to half the ${isc.DocUtils.linkForRef('attr:DrawOval.width','width')}\n and ${isc.DocUtils.linkForRef('attr:DrawOval.height','height')}.",
        name:"radius",
        setter:[
            "setRadius"
        ],
        seeAlso:[
            {
                ref:"method:DrawOval.getRadiusX",
                description:null
            },
            {
                ref:"method:DrawOval.getRadiusY",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawOval"
    },
    "method:ListGrid.getSortSpecifier":{
        ref:"method:ListGrid.getSortSpecifier",
        flags:"A",
        description:"  Returns the ${isc.DocUtils.linkForRef('object:SortSpecifier')} for the passed fieldName, or null if the field is not\n sorted.\n",
        name:"getSortSpecifier",
        seeAlso:[
        ],
        params:[
            {
                description:"The name of a field, visible, hidden or existing only in the dataSource",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"for the passed fieldName, or null if the field is not sorted.",
            type:"SortSpecifier"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:CubeGrid.wrapFacetValueTitles":{
        ref:"attr:CubeGrid.wrapFacetValueTitles",
        flags:"IRW",
        description:"Whether to allow text wrapping on facet value titles.",
        name:"wrapFacetValueTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:ButtonItem.endRow":{
        ref:"attr:ButtonItem.endRow",
        flags:"IRW",
        description:"These items are in a row by themselves by default",
        name:"endRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ButtonItem",
        groups:[
            "formLayout"
        ]
    },
    "class:TabSet":{
        methods:[
            "method:TabSet.setPaneContainerOverflow",
            "method:TabSet.getPaneContainerEdges",
            "method:TabSet.setTabTitle",
            "method:TabSet.setTabIcon",
            "method:TabSet.enableTab",
            "method:TabSet.disableTab",
            "method:TabSet.setTabProperties",
            "method:TabSet.addTab",
            "method:TabSet.addTabs",
            "method:TabSet.setTabPane",
            "method:TabSet.removeTab",
            "method:TabSet.removeTabs",
            "method:TabSet.reorderTab",
            "method:TabSet.setCanCloseTab",
            "method:TabSet.setCanCloseTabs",
            "method:TabSet.closeClick",
            "method:TabSet.tabIconClick",
            "method:TabSet.getTabObject",
            "method:TabSet.getTab",
            "method:TabSet.getTabPane",
            "method:TabSet.getTabNumber",
            "method:TabSet.updateTab",
            "method:TabSet.scrollForward",
            "method:TabSet.scrollBack",
            "method:TabSet.getSelectedTab",
            "method:TabSet.getSelectedTabNumber",
            "method:TabSet.selectTab",
            "method:TabSet.tabForPane",
            "method:TabSet.editTabTitle",
            "method:TabSet.cancelTabTitleEditing",
            "method:TabSet.saveTabTitle",
            "method:TabSet.tabSelected",
            "method:TabSet.tabDeselected",
            "method:TabSet.titleChanged",
            "method:TabSet.showTabContextMenu",
            "method:TabSet.tabsReordered"
        ],
        ref:"class:TabSet",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:TabSet.tabs",
            "attr:TabSet.tabBar",
            "attr:TabSet.tabProperties",
            "attr:TabSet.defaultTabWidth",
            "attr:TabSet.defaultTabHeight",
            "attr:TabSet.useSimpleTabs",
            "attr:TabSet.simpleTabBaseStyle",
            "attr:TabSet.tabBarPosition",
            "attr:TabSet.tabBarAlign",
            "attr:TabSet.tabBarThickness",
            "attr:TabSet.selectedTab",
            "attr:TabSet.canCloseTabs",
            "attr:TabSet.closeTabIcon",
            "attr:TabSet.closeTabIconSize",
            "attr:TabSet.canReorderTabs",
            "attr:TabSet.showMoreTab",
            "attr:TabSet.moreTabCount",
            "attr:TabSet.moreTabTitle",
            "attr:TabSet.moreTabImage",
            "attr:TabSet.moreTab",
            "attr:TabSet.moreTabProperties",
            "attr:TabSet.moreTabPane",
            "attr:TabSet.moreTabPaneProperties",
            "attr:TabSet.moreTabPaneDefaults",
            "attr:TabSet.tabBarControls",
            "attr:TabSet.showTabScroller",
            "attr:TabSet.showTabPicker",
            "attr:TabSet.tabBarControlLayout",
            "attr:TabSet.animateTabScrolling",
            "attr:TabSet.scroller",
            "attr:TabSet.scrollerButtonSize",
            "attr:TabSet.tabPicker",
            "attr:TabSet.pickerButtonSize",
            "attr:TabSet.skinImgDir",
            "attr:TabSet.symmetricScroller",
            "attr:TabSet.scrollerSrc",
            "attr:TabSet.scrollerHSrc",
            "attr:TabSet.scrollerVSrc",
            "attr:TabSet.symmetricPickerButton",
            "attr:TabSet.pickerButtonSrc",
            "attr:TabSet.pickerButtonHSrc",
            "attr:TabSet.pickerButtonVSrc",
            "attr:TabSet.paneContainer",
            "attr:TabSet.paneContainerClassName",
            "attr:TabSet.paneContainerOverflow",
            "attr:TabSet.symmetricEdges",
            "attr:TabSet.leftEdgeSizes",
            "attr:TabSet.topEdgeSizes",
            "attr:TabSet.bottomEdgeSizes",
            "attr:TabSet.rightEdgeSizes",
            "attr:TabSet.leftEdgeOffsets",
            "attr:TabSet.rightEdgeOffsets",
            "attr:TabSet.topEdgeOffsets",
            "attr:TabSet.bottomEdgeOffsets",
            "attr:TabSet.showPaneContainerEdges",
            "attr:TabSet.paneMargin",
            "attr:TabSet.canEditTabTitles",
            "attr:TabSet.titleEditEvent",
            "attr:TabSet.titleEditor",
            "attr:TabSet.titleEditorProperties",
            "attr:TabSet.titleEditorLeftOffset",
            "attr:TabSet.titleEditorRightOffset",
            "attr:TabSet.titleEditorTopOffset",
            "attr:TabSet.useIOSTabs",
            "attr:TabSet.simpleTabButtonConstructor",
            "attr:TabSet.tabBarProperties",
            "attr:TabSet.showPartialEdges",
            "attr:TabSet.destroyPanes",
            "attr:TabSet.locateTabsBy"
        ],
        description:"The TabSet class allows components on several panes to share the same space. The tabs at \n the top can be selected by the user to show each pane. \n <P>\n Tabs are configured via the <code>tabs</code> property, each of which has a\n <code>pane</code> property which will be displayed in the main pane when that tab is\n selected.",
        name:"TabSet",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DSResponse.errors":{
        ref:"attr:DSResponse.errors",
        flags:"R",
        description:"Server-side validation errors for an attempted \"update\" or \"add\" operation, as a \n JS Object where each property name is a field name from the record and each property\n value contains error information.\n <P>\n To extract just the simple error strings for each field we recommend passing this\n object to ${isc.DocUtils.linkForRef('classMethod:DataSource.getSimpleErrors')}\n <P>\n The Java API DSResponse.addError(fieldName, errorMessage) is used to send server-side\n errors to the client.  See the Java Server Reference for details.",
        name:"errors",
        seeAlso:[
            {
                ref:"method:DataSource.handleError",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "errorHandling"
        ]
    },
    "attr:FormItem.defaultValue":{
        ref:"attr:FormItem.defaultValue",
        flags:"IRW",
        description:"Value used when no value is provided for this item. Note that whenever this item's value\n is cleared programmatically (for example via <code>item.setValue(null)</code>), it will be\n reverted to the <code>defaultValue</code>. Developers should use the\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values')} object if their intention is to provide an initial value for a\n field in a form rather than a value to use in place of <code>null</code>.",
        name:"defaultValue",
        seeAlso:[
            {
                ref:"method:FormItem.defaultDynamicValue",
                description:null
            }
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fieldEnableDisable')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "basics"
        ]
    },
    "attr:Portlet.minWidth":{
        ref:"attr:Portlet.minWidth",
        flags:"IRW",
        description:"Specifies a minimum width for the Portlet.",
        name:"minWidth",
        seeAlso:[
            {
                ref:"attr:Canvas.minWidth",
                description:null
            }
        ],
        valueType:"Number",
        defaultValue:"70",
        type:"attr",
        definingClass:"class:Portlet"
    },
    "method:ScriptTask.setOutputRecord":{
        ref:"method:ScriptTask.setOutputRecord",
        flags:"",
        description:" Set all outputs of the task as specified by the\n ${isc.DocUtils.linkForRef('attr:Task.outputFieldList','outputFieldList')}, by providing a Record.\n",
        name:"setOutputRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"output record",
                optional:false,
                name:"outputRecord",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"class:ScriptTask",
        groups:[
            "taskIO"
        ]
    },
    "group:dragndrop":{
        ref:"group:dragndrop",
        refs:[
            "attr:Toolbar.canReorderItems",
            "attr:Toolbar.canResizeItems",
            "attr:Toolbar.canAcceptDrop"
        ],
        name:"dragndrop",
        seeAlso:[
        ],
        type:"group"
    },
    "class:DateItem":{
        methods:[
            "method:DateItem.getEnteredValue",
            "method:DateItem.setStartDate",
            "method:DateItem.setEndDate",
            "method:DateItem.setSelectionRange",
            "method:DateItem.getSelectionRange",
            "method:DateItem.selectValue",
            "method:DateItem.deselectValue",
            "method:DateItem.parseEditorValue",
            "method:DateItem.formatEditorValue",
            "method:DateItem.getInputFormat",
            "method:DateItem.getFiscalCalendar",
            "method:DateItem.setFiscalCalendar",
            "method:DateItem.getDefaultChooserDate"
        ],
        exampleConfig:"DateItem.xml",
        ref:"class:DateItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:DateItem.textField",
            "attr:DateItem.textFieldProperties",
            "attr:DateItem.browserInputType",
            "attr:DateItem.showHintInField",
            "attr:DateItem.daySelector",
            "attr:DateItem.daySelectorProperties",
            "attr:DateItem.monthSelector",
            "attr:DateItem.monthSelectorProperties",
            "attr:DateItem.yearSelector",
            "attr:DateItem.yearSelectorProperties",
            "attr:DateItem.useSharedPicker",
            "attr:DateItem.pickerConstructor",
            "attr:DateItem.pickerProperties",
            "attr:DateItem.useTextField",
            "attr:DateItem.textAlign",
            "attr:DateItem.useMask",
            "attr:DateItem.maskDateSeparator",
            "attr:DateItem.enforceDate",
            "attr:DateItem.invalidDateStringMessage",
            "attr:DateItem.pickerIconPrompt",
            "attr:DateItem.startDate",
            "attr:DateItem.endDate",
            "attr:DateItem.centuryThreshold",
            "attr:DateItem.use24HourTime",
            "attr:DateItem.showPickerTimeItem",
            "attr:DateItem.pickerTimeItemProperties",
            "attr:DateItem.dateFormatter",
            "attr:DateItem.displayFormat",
            "attr:DateItem.inputFormat",
            "attr:DateItem.selectorFormat",
            "attr:DateItem.defaultChooserDate",
            "attr:DateItem.showChooserFiscalYearPicker",
            "attr:DateItem.showChooserWeekPicker"
        ],
        description:"Item for manipulating Dates.\n <p>\n Can be rendered as a text field, or as 3 selects for day, month, year.  Includes optional\n pop-up picker.",
        name:"DateItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('dateItem')}"
        ]
    },
    "attr:DetailViewerField.linkURLSuffix":{
        ref:"attr:DetailViewerField.linkURLSuffix",
        flags:"IRWA",
        description:"If this field has type set to <code>\"link\"</code>, setting this property will apply a\n standard suffix to the link URL when displaying values of this field.",
        name:"linkURLSuffix",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.type",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:MultiFileItem.pickerAddAnotherFileButtonTitle":{
        ref:"attr:MultiFileItem.pickerAddAnotherFileButtonTitle",
        flags:"IR",
        description:"The contents of the \"Add another\" file button in the picker launched by the\n ${isc.DocUtils.linkForRef('attr:MultiFileItem.editButton','edit button')}.",
        name:"pickerAddAnotherFileButtonTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&lt;u&gt;Add&amp;nbsp;another&lt;/u&gt;\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Img.usePNGFix":{
        ref:"attr:Img.usePNGFix",
        flags:"IR",
        description:"If false, never apply the png fix needed in Internet Explorer to make png transparency\n work correctly.",
        name:"usePNGFix",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Img"
    },
    "method:ListGrid.reorderField":{
        ref:"method:ListGrid.reorderField",
        flags:"A",
        description:" Reorder a particular field\n\n",
        name:"reorderField",
        seeAlso:[
        ],
        params:[
            {
                description:"Number of the field to reorder",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"New position for that field",
                optional:false,
                name:"moveToPosition",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:GroupSpecifier.property":{
        ref:"attr:GroupSpecifier.property",
        flags:"IR",
        description:"The property name, eg a ${isc.DocUtils.linkForRef('object:ListGridField','field name')}, to which this groupSpecifier applies.",
        name:"property",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:GroupSpecifier"
    },
    "attr:PickList.fetchDisplayedFieldsOnly":{
        ref:"attr:PickList.fetchDisplayedFieldsOnly",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code> and this property is\n <code>true</code>, the list of fields used by this pickList will be passed to\n the datasource as ${isc.DocUtils.linkForRef('attr:DSRequest.outputs')}. If the datasource supports this feature\n the returned fields will be limited to this list. A custom datasource will need to\n add code to implement field limiting.\n <P>\n This list of used fields consists of the values of ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')},\n ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} and ${isc.DocUtils.linkForRef('attr:PickList.pickListFields','pickListFields')}.\n <P>\n NOTE: When enabled, ${isc.DocUtils.linkForRef('method:FormItem.getSelectedRecord','getSelectedRecord')} will only include the\n fetched fields.",
        name:"fetchDisplayedFieldsOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "type:ValidatorType":{
        ref:"type:ValidatorType",
        values:[
            {
                description:"Validation will fail if this field is non-empty and has a non-boolean value.",
                value:"isBoolean"
            },
            {
                description:"Validation will fail if the value is not a string value.",
                value:"isString"
            },
            {
                description:"Tests whether the value for this field is a whole number.  If \n <code>validator.convertToInteger</code> is true, float values will be converted \n into integers and validation will succeed.",
                value:"isInteger"
            },
            {
                description:"Tests whether the value for this field is a valid floating point number.",
                value:"isFloat"
            },
            {
                description:"Tests whether the value for this field is a valid expression or function; if it is\n valid, creates a ${isc.DocUtils.linkForRef('group:stringMethods','stringMethod')} object with the value\n and set the resultingValue to the StringMethod.",
                value:"isFunction"
            },
            {
                description:"RequiredIf type validators should be specified with an <code>expression</code>\n property set to a ${isc.DocUtils.linkForRef('group:stringMethods','stringMethod')}, which takes three\n parameters:<ul>\n <li>item - the DynamicForm item on which the error occurred (may be null)\n <li>validator - a pointer to the validator object\n <li>value - the value of the field in question\n <li>record - the \"record\" object - the set of values being edited by the widget\n </ul>\n When validation is performed, the expression will be evaluated (or executed) - if it\n returns <code>true</code>, the field will be treated as a required field, so validation\n will fail if the field has no value.\n <p>To allow server-side enforcement, a <code>required</code> validator can be used instead.\n Conditional criteria can be specified with the <code>applyWhen</code> property. \n <p>See ${isc.DocUtils.linkForExampleId('conditionallyRequired')}.",
                value:"requiredIf"
            },
            {
                description:"Tests whether the value for this field matches the value of some other field.\n The field to compare against is specified via the <code>otherField</code> property\n on the validator object (should be set to a field name).\n <p>See ${isc.DocUtils.linkForExampleId('matchValue')}.",
                value:"matchesField"
            },
            {
                description:"Tests whether the value for this field matches any value from an arbitrary\n list of acceptable values.  The set of acceptable values is specified via\n the <code>list</code> property on the validator, which should be set to an array of\n values. If validator.list is not supplied, the valueMap for the field will be used.\n If there is no valueMap, not providing validator.list is an error.",
                value:"isOneOf"
            },
            {
                description:"Tests whether the value for this field is a whole number within the range \n specified.  The <code>max</code> and <code>min</code> properties on the validator\n are used to determine the acceptable range, inclusive. To specify the range as\n exclusive of the min/mix values, set <code>exclusive</code> to <code>true</code>.\n <p>See ${isc.DocUtils.linkForExampleId('validationBuiltins')}.",
                value:"integerRange"
            },
            {
                description:"This validator type applies to string values only.  If the value is a string value\n validation will fail if the string's length falls outside the range specified by \n <code>validator.max</code> and <code>validator.min</code>.\n <p>\n Note that non-string values will always pass validation by this validator type.\n <p>\n Note that the <code>errorMessage</code> for this validator will be evaluated as\n a dynamicString - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
                value:"lengthRange"
            },
            {
                description:"Determine whether a string value contains some substring specified via \n <code>validator.substring</code>.",
                value:"contains"
            },
            {
                description:"Determine whether a string value does <b>not</b> contain some substring specified via \n <code>validator.substring</code>.",
                value:"doesntContain"
            },
            {
                description:"Determine whether a string value contains some substring multiple times.\n The substring to check for is specified via <code>validator.substring</code>.\n The <code>validator.operator</code> property allows you to specify how to test\n the number of substring occurrences. Valid values for this property are\n <code>==</code>, <code>!=</code>, <code>&lt;</code>, <code>&lt;=</code>,\n <code>&gt;</code>, <code>&gt;=</code>.\n <p>\n The number of matches to check for is specified via <code>validator.count</code>.",
                value:"substringCount"
            },
            {
                description:"<code>regexp</code> type validators will determine whether the value specified \n matches a given regular expression.  The expression should be specified on the\n <code>validator</code> object as the <code>expression</code> property.\n <p>See ${isc.DocUtils.linkForExampleId('formsRegularExpression')}.",
                value:"regexp"
            },
            {
                description:"Validate against a regular expression mask, specified as <code>validator.mask</code>.\n If validation is successful a transformation can also be specified via the\n <code>validator.transformTo</code> property. This should be set to a string in the\n standard format for string replacement via the native JavaScript <code>replace()</code>\n method.\n <p>See ${isc.DocUtils.linkForExampleId('formsValueTransform')}.",
                value:"mask"
            },
            {
                description:"Tests whether the value for a date field is within the range specified.\n Range is inclusive, and is specified via <code>validator.min</code> and\n <code>validator.max</code>, which should be specified in\n <a target=_blank href=\"http://www.w3.org/TR/xmlschema-2/#dateTime\">XML Schema\n date format</a> or as a live JavaScript Date object (for client-only validators only).\n To specify the range as exclusive of the min/mix values, set <code>exclusive</code>\n to <code>true</code>.\n <p>\n Note that the <code>errorMessage</code> for this validator will be evaluated as\n a dynamicString - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
                value:"dateRange"
            },
            {
                description:"Validate a field as a valid floating point value within a value range.\n Range is specified via <code>validator.min</code> and <code>validator.max</code>.\n Also checks precision, specified as number of decimal places in \n <code>validator.precision</code>. If <code>validator.roundToPrecision</code> is set \n a value that doesn't match the specified number of decimal places will be rounded\n to the nearest value that does.        \n <p>\n For backwards compatibility only. Use \"floatRange\" and/or \"floatPrecision\" instead.",
                value:"floatLimit"
            },
            {
                description:"Tests whether the value for this field is a floating point number within the range \n specified.  The <code>max</code> and <code>min</code> properties on the validator\n are used to determine the acceptable range, inclusive. To specify the range as\n exclusive of the min/mix values, set <code>exclusive</code> to <code>true</code>.\n <p>\n Note that the <code>errorMessage</code> for this validator will be evaluated as\n a dynamicString - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
                value:"floatRange"
            },
            {
                description:"Tests whether the value for this field is a floating point number with the \n appropriate number of decimal places - specified in <code>validator.precision</code>\n If the value is of higher precision and <code>validator.roundToPrecision</code> \n is specified, the value will be rounded to the specified number of decimal places\n and validation will pass, otherwise validation will fail.",
                value:"floatPrecision"
            },
            {
                description:"A non-empty value is required for this field to pass validation.",
                value:"required"
            },
            {
                description:"Change the state/appearance of this field. Desired appearance is specified via\n the <code>fieldAppearance</code> property on the validator object. See\n ${isc.DocUtils.linkForRef('type:FieldAppearance')} type for choices.\n <p>\n If <code>fieldAppearance</code> is not specified, the default is \"readOnly\".",
                value:"readOnly"
            },
            {
                description:"Returns true if the value for this field is unique.  The uniqueness check is performed across\n the whole DataSource unless you specify property <code>validator.criteriaFields</code> as a \n comma-separated string of field names; in that case, the uniqueness check is done in the \n context of those extra criteria, allowing you to check, for example, whether an employee \n number is unique for the department and location found on the record being validated. \n <p>\n Validators of this type have ${isc.DocUtils.linkForRef('attr:validatorDefinition.requiresServer','requiresServer')} \n set to <code>true</code> and do not run on the client.\n <p>See ${isc.DocUtils.linkForExampleId('uniqueCheckValidation')}.",
                value:"isUnique"
            },
            {
                description:"Returns true if the record implied by a relation exists.  The relation can be \n derived automatically from the ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')} attribute of \n the field being validated, or you can specify it manually via \n <code>validator.relatedDataSource</code> and <code>validator.relatedField</code>.\n <p>\n You can specify at DataSource level that this validator should be automatically \n applied to all fields that specify a ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} -\n see ${isc.DocUtils.linkForRef('attr:DataSource.validateRelatedRecords')}.\n <p>\n Validators of this type have ${isc.DocUtils.linkForRef('attr:validatorDefinition.requiresServer','requiresServer')} \n set to <code>true</code> and do not run on the client.\n <p>\n Note that this validation is generally unnecessary for data coming from a UI.  The \n typical UI uses a ${isc.DocUtils.linkForRef('class:SelectItem')} or ${isc.DocUtils.linkForRef('class:ComboBoxItem')} with an \n ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')} for user entry, such that the user \n can't accidentally enter a related record if that doesn't exist, and a typical SQL \n schema will include constraints that prevent a bad insert if the user attempts to \n circumvent the UI.  The primary purpose of declaring this validation explicitly is \n to provide clear, friendly error messages for use cases such as ${isc.DocUtils.linkForRef('class:BatchUploader')}, \n where values aren't individually chosen by the user. See also the example\n ${isc.DocUtils.linkForExampleId('hasRelatedValidation', 'Related Records')}.",
                value:"hasRelatedRecord"
            },
            {
                description:"Custom server-side validator that either evaluates the Velocity expression provided in \n ${isc.DocUtils.linkForRef('attr:Validator.serverCondition','serverCondition')} (see ${isc.DocUtils.linkForExampleId('velocityValidation')})\n or makes DMI call to ${isc.DocUtils.linkForRef('attr:Validator.serverObject','serverObject')} to evaluate condition\n (see ${isc.DocUtils.linkForExampleId('dmiValidation')}).\n <p>\n Validators of this type have ${isc.DocUtils.linkForRef('attr:validatorDefinition.requiresServer','requiresServer')} \n set to <code>true</code> and do not run on the client.",
                value:"serverCustom"
            }
        ],
        description:"Used to name a validator or reference a standard, built-in ${isc.DocUtils.linkForRef('class:Validator')} - see list below.\n <p>\n To make use of a standard validator type for a field in a DataSource, or \n DynamicForm instance, specify the <code>validators</code> property to an array \n containing a validator definition where the <code>type</code> property is set to \n the appropriate type.  \n <p>\n A custom error message can be specified for any validator type by setting the\n <code>errorMessage</code> property on the validator definition object, and some\n validator types make use of additional properties on the validator definition \n object such as <code>max</code> or <code>min</code>.\n <p>\n For example, to use the <code>integerRange</code> validator type:<br><br><code>\n &nbsp;&nbsp;field:{<br>\n &nbsp;&nbsp;&nbsp;&nbsp;validators:[<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{type:\"integerRange\", min:1, max:100}<br>\n &nbsp;&nbsp;&nbsp;&nbsp;]<br>\n &nbsp;&nbsp;}\n </code>\n <p>\n Custom validators can be reused on the client by adding them to the global validator list,\n via the ${isc.DocUtils.linkForRef('classMethod:Validator.addValidatorDefinition')} method.",
        name:"ValidatorType",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ListGrid.recordCanSelectProperty":{
        ref:"attr:ListGrid.recordCanSelectProperty",
        flags:"IRA",
        description:"If set to false on a record, selection of that record is disallowed.",
        name:"recordCanSelectProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"canSelect\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:Class.isA":{
        ref:"method:Class.isA",
        flags:"",
        description:"\n\tReturns whether this object is of a particular class by class name, either as a direct\n\tinstance of that class or as subclass of that class, or by implementing an interface\n  that has been mixed into the class.<br><br>\n\n\tNOTE: this only applies to ISC's class system, eg:  <code>myInstance.isA(\"Object\")</code> will be\n\tfalse.\n\n",
        name:"isA",
        seeAlso:[
        ],
        params:[
            {
                description:"Class name to test against",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"whether this object is of that Class                                  or a subClass of that Class",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "attr:Canvas.resizeBarTarget":{
        ref:"attr:Canvas.resizeBarTarget",
        flags:"IR",
        description:"When this Canvas is included as a member in a Layout, and ${isc.DocUtils.linkForRef('attr:Canvas.showResizeBar')} is set to\n <code>true</code> so that a resizeBar is created, <code>resizeBarTarget:\"next\"</code> can be\n set to indicate that the resizeBar should resize the next member of the layout rather than\n this one.  For resizeBars that support hiding their target member when clicked on, \n <code>resizeBarTarget:\"next\"</code> also means that the next member will be the one hidden.\n <P>\n This is typically used to create a 3-way split pane, where left and right-hand sections can\n be resized or hidden to allow a center section to expand.\n <P>\n <b>NOTE:</b> as with any Layout, to ensure all available space is used, one or more members\n must maintain a flexible size (eg 75%, or *).  In a two pane Layout with a normal resize\n bar, to fill all space after a user resizes, the member on the <b>right</b> should have\n flexible size.  With resizeBarTarget:\"next\", the member on the <b>left</b> should have\n flexible size.",
        name:"resizeBarTarget",
        seeAlso:[
            {
                ref:"attr:Canvas.showResizeBar",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "layoutMember"
        ]
    },
    "class:Time":{
        methods:[
        ],
        ref:"class:Time",
        classAttrs:[
            "classAttr:Time.UTCHoursOffset",
            "classAttr:Time.displayFormat",
            "classAttr:Time.shortDisplayFormat",
            "classAttr:Time.AMIndicator",
            "classAttr:Time.PMIndicator",
            "classAttr:Time.adjustForDST"
        ],
        classMethods:[
            "classMethod:Time.setDefaultDisplayTimezone",
            "classMethod:Time.getDefaultDisplayTimezone",
            "classMethod:Time.toTime",
            "classMethod:Time.toShortTime",
            "classMethod:Time.parseInput",
            "classMethod:Time.createDate",
            "classMethod:Time.createLogicalTime",
            "classMethod:Time.setShortDisplayFormat",
            "classMethod:Time.setNormalDisplayFormat",
            "classMethod:Time.compareTimes"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"Helper methods and system-wide defaults for dealing with time values and time display formats.\n <P>\n This class includes utility methods for the creation and display of logical time values, as well\n as modifying the default display timezone for datetime type values. See\n ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more information on working with dates, times and datetimes\n in SmartClient.",
        name:"Time",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:StateTask.nextElement":{
        ref:"attr:StateTask.nextElement",
        flags:"IR",
        description:"ID of the next ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} or {process.elements,element} to\n procede to if no error condition arises.\n <p>\n If this <code>stateTask</code> is part of a ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} and has a\n next element in the sequence, <code>nextElement</code> does not need to be specified.",
        name:"nextElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StateTask"
    },
    "method:TreeGrid.getAnimateFolderMaxRows":{
        ref:"method:TreeGrid.getAnimateFolderMaxRows",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolders')} is true for this treeGrid, this method returns the \n the maximum number of rows to animate at a time when opening / closing a folder.\n This method will return ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolderMaxRows')} if set. Otherwise\n the value will be calculated as 3x the number of rows required to fill a viewport,\n capped at a maximum value of 75.\n",
        name:"getAnimateFolderMaxRows",
        seeAlso:[
        ],
        returns:{
            description:"maximum number of rows to be animated when opening or closing folders.",
            type:"integer"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "animation"
        ]
    },
    "object:Shadow":{
        methods:[
        ],
        ref:"object:Shadow",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing"
        ],
        attrs:[
            "attr:Shadow.color",
            "attr:Shadow.blur",
            "attr:Shadow.offset"
        ],
        description:"A class used to define a shadow used in a Draw&lt;Shape&gt; Types.",
        name:"Shadow",
        seeAlso:[
        ],
        type:"object"
    },
    "method:DynamicForm.validate":{
        ref:"method:DynamicForm.validate",
        flags:"",
        description:" Validates the form without submitting it, and redraws the form to display error messages\n if there are any validation errors. Returns true if validation succeeds, or false if\n validation fails.<br>\n For databound forms, any Datasource field validators will be run even if there is no \n associated item in the form.<br>\n Validators will also be run on hidden form items<br>\n In both these cases, validation failure can be handled via \n ${isc.DocUtils.linkForRef('method:DynamicForm.handleHiddenValidationErrors')}\n <P>\n If this form has any fields which require server-side validation \n (see ${isc.DocUtils.linkForRef('attr:Validator.serverCondition')}) this will also be initialized. Such validation will\n occur asynchronously. \n Developers can use ${isc.DocUtils.linkForRef('method:DynamicForm.isPendingAsyncValidation')} and\n ${isc.DocUtils.linkForRef('method:DynamicForm.handleAsyncValidationReply')} to detect and respond to asynchronous validation.\n\n",
        name:"validate",
        seeAlso:[
        ],
        params:[
            {
                description:"Should validators be processed for non-visible fields         such as dataSource fields with no associated item or fields with visibility set to\n         <code>\"hidden\"</code>?",
                optional:false,
                name:"validateHiddenFields",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"true if validation succeeds, or false if validation fails.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('validationType')}"
        ],
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "classAttr:Validator.mustBeExactLength":{
        ref:"classAttr:Validator.mustBeExactLength",
        flags:"IRA",
        description:"Default error message to display when standard <code>lengthRange</code> type validator\n has <code>validator.max</code> and <code>validator.min</code> set to the same value,\n and returns false because the value passed is not the same length as these limits.<br>\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeExactLength",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be exactly ${max} characters\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ToolStripGroup.styleName":{
        ref:"attr:ToolStripGroup.styleName",
        flags:"IRW",
        description:"CSS class applied to this ToolStripGroup.",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"\"toolStripGroup\"",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "class:Toolbar":{
        methods:[
            "method:Toolbar.setButtons",
            "method:Toolbar.addButtons",
            "method:Toolbar.removeButtons",
            "method:Toolbar.getButton",
            "method:Toolbar.getButtonNumber",
            "method:Toolbar.setCanResizeItems",
            "method:Toolbar.selectButton",
            "method:Toolbar.deselectButton",
            "method:Toolbar.itemClick",
            "method:Toolbar.itemDoubleClick",
            "method:Toolbar.itemDragResized"
        ],
        ref:"class:Toolbar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:Toolbar.buttons",
            "attr:Toolbar.vertical",
            "attr:Toolbar.buttonConstructor",
            "attr:Toolbar.canReorderItems",
            "attr:Toolbar.canResizeItems",
            "attr:Toolbar.canAcceptDrop",
            "attr:Toolbar.buttonDefaults"
        ],
        description:"A Toolbar creates a vertical or horizontal strip of similar components (typically Buttons)\n and provides managed resizing and reordering behavior over those components.\n <p>\n If you are creating a bar with a mixture of different elements (eg some MenuButtons, some\n Labels, some Buttons, some custom components), you want to use a ${isc.DocUtils.linkForRef('class:ToolStrip')}.  A\n Toolbar is better suited for managing a set of highly similar, interchangeable components,\n such as ListGrid headers.",
        name:"Toolbar",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:TextExportSettings.quoteValues":{
        ref:"attr:TextExportSettings.quoteValues",
        flags:"IR",
        description:"Whether to surround each value with quotes (\"\").",
        name:"quoteValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "classMethod:RPCManager.handleError":{
        ref:"classMethod:RPCManager.handleError",
        flags:"",
        description:" <code>handleError</code> will be called if ${isc.DocUtils.linkForRef('attr:RPCResponse.status')} is negative and\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')} was not set.\n <p>\n This method is called for both ${isc.DocUtils.linkForRef('class:DSResponse')}s and ${isc.DocUtils.linkForRef('class:RPCResponse')}s that have a\n non-success status.  You can check whether the response is a DSResponse by checking\n <code>response.isDSResponse</code>.\n <p>\n By default <code>handleError()</code> always logs a warning.  In addition, if\n ${isc.DocUtils.linkForRef('attr:RPCResponse.data','response.data')} was set to a String, a warning dialog will be\n shown to the user with response.data as the message, which allows the server to send\n user error messages back without writing custom client-side error handling.\n <p>\n To do custom error handling that is specific to a particular component or type of\n request, set ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')} and deal with errors in the\n rpcRequest.callback.  To change the default system-wide error handling, override this\n method.  Note that since <code>handleError()</code> is a class method, to override it\n you will call ${isc.DocUtils.linkForRef('classMethod:Class.addClassProperties','addClassProperties()')} rather than\n addProperties(), like so:\n <pre>\n     isc.RPCManager.addClassProperties({\n         handleError : function (response, request) { .. custom handling .. }\n     })\n </pre>\n <p>\n If you're using the xmlHttpRequest ${isc.DocUtils.linkForRef('attr:RPCRequest.transport')}, you can access the \n <a href='http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html' target='_blank'>HTTP status code</a>\n of the response (eg 404 Not Found or 500 Server Error) as ${isc.DocUtils.linkForRef('attr:RPCResponse.httpResponseCode')}.\n <P>\n For very advanced usage, the response.xmlHttpRequest contains the native XMLHttpRequest\n object used to make the request.  Accessing this object is subject to possible\n cross-platform bugs and inconsistencies, and Isomorphic recommends that you wrap any\n access to the XMLHttpRequest object in a try/catch block because some browsers may throw\n exceptions when certain attributes of this object are accessed.  For example, if you try\n to access XMLHttpRequest.status (for the HTTP status code) when the network cable \n is unpluged in Windows, you'll get an Exception in Firefox.\n\n",
        name:"handleError",
        seeAlso:[
            {
                ref:"method:DataSource.handleError",
                description:null
            }
        ],
        params:[
            {
                description:"the RPCResponse or DSResponse object returned from the server",
                optional:false,
                name:"response",
                defaultValue:null,
                type:"Response"
            },
            {
                description:"the RPCRequest or DSRequest that was sent to the server",
                optional:false,
                name:"request",
                defaultValue:null,
                type:"Request"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager",
        groups:[
            "errorHandling",
            "operations"
        ]
    },
    "attr:SerializationContext.useFlatFields":{
        ref:"attr:SerializationContext.useFlatFields",
        flags:"IR",
        description:"Enables flat serialization mode, as described for ${isc.DocUtils.linkForRef('attr:DSRequest.useFlatFields')}.",
        name:"useFlatFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SerializationContext"
    },
    "attr:CubeGrid.columnFacets":{
        ref:"attr:CubeGrid.columnFacets",
        flags:"IR",
        description:"The list of ${isc.DocUtils.linkForRef('attr:Facet.id','ids')} for facets that will appear on top of the body.",
        name:"columnFacets",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:ListGrid.screenReaderRowSeparator":{
        ref:"attr:ListGrid.screenReaderRowSeparator",
        flags:"IRA",
        description:"When ${isc.DocUtils.linkForRef('classMethod:isc.setScreenReaderMode','screen reader mode')} is enabled,\n this invisible string will be written out after the last cell in a row. This\n string will be picked up by screen readers allowing them to more obviously identify\n to the user the end of the row's contents and the screen reader's announcement of the row's\n number and total number of rows in the grid (such as \"3 of 20\").\n <p>\n This attribute may be set to null to disable writing out an invisible string at the\n end of each row.\n <p>\n Note that screen readers vary widely on which punctuation symbols are read aloud, and\n sometimes it depends on the context of the punctuation. However, the widely-used JAWS, NVDA,\n and VoiceOver screen readers all pause briefly for a comma ',' that is within text.\n See <a href='http://www.deque.com/blog/dont-screen-readers-read-whats-screen-part-1-punctuation-typographic-symbols/' target='_blank'>Why Don’t Screen Readers Always Read What’s on the Screen? Part 1: Punctuation and Typographic Symbols</a>\n for a table of findings on which punctuation symbols are read aloud by JAWS, NVDA,\n and VoiceOver.",
        name:"screenReaderRowSeparator",
        seeAlso:[
            {
                ref:"attr:ListGrid.screenReaderCellSeparator",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\",\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "accessibility"
        ]
    },
    "attr:CubeGrid.facetValueHoverVAlign":{
        ref:"attr:CubeGrid.facetValueHoverVAlign",
        flags:"IRWA",
        description:"Allows the developer to override the vertical text alignment of hover tips shown for\n facet values.  If unspecified the hover canvas content alignment will be set by\n <code>this.hoverVAlign</code> if specified.",
        name:"facetValueHoverVAlign",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverVAlign",
                description:null
            }
        ],
        valueType:"VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "method:FacetChart.zoomTo":{
        ref:"method:FacetChart.zoomTo",
        flags:"",
        description:" For a ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom','zoomed chart')}, simultaneously sets the\n ${isc.DocUtils.linkForRef('method:FacetChart.setZoomStartValue','zoomStartValue')} and\n ${isc.DocUtils.linkForRef('method:FacetChart.setZoomEndValue','zoomEndValue')}.\n",
        name:"zoomTo",
        seeAlso:[
        ],
        params:[
            {
                description:"starting value for the data range shown in the main chart",
                optional:false,
                name:"startValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"ending value for the data range shown in the main chart",
                optional:false,
                name:"endValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:ListGrid.generateDoubleClickOnEnter":{
        ref:"attr:ListGrid.generateDoubleClickOnEnter",
        flags:"IRWA",
        description:"If true, when the user navigates to a cell using arrow keys and hits Enter,\n the cell will respond to a double click event.",
        name:"generateDoubleClickOnEnter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:IPickTreeItem.button":{
        ref:"attr:IPickTreeItem.button",
        flags:"R",
        description:"This item is an ${isc.DocUtils.linkForRef('type:AutoChild')} generated ${isc.DocUtils.linkForRef('class:Canvas')} displayed by\n the IPickTreeItem and is an instance of ${isc.DocUtils.linkForRef('class:ITreeMenuButton')} by default.",
        name:"button",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IPickTreeItem"
    },
    "method:FormItem.getTitle":{
        ref:"method:FormItem.getTitle",
        flags:"A",
        description:"\tReturn the title of this formItem\n",
        name:"getTitle",
        seeAlso:[
        ],
        returns:{
            description:"title for the formItem",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "drawing"
        ]
    },
    "method:List.intersect":{
        ref:"method:List.intersect",
        flags:"",
        description:" Return the list of items that are in both this list and the passed-in list(s).\n\n",
        name:"intersect",
        seeAlso:[
        ],
        params:[
            {
                description:"lists to intersect with",
                optional:false,
                name:"lists",
                defaultValue:null,
                type:"all List arguments"
            }
        ],
        returns:{
            description:"intersection",
            type:"List"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "arrayMath"
        ]
    },
    "method:ListGrid.rowMouseUp":{
        ref:"method:ListGrid.rowMouseUp",
        flags:"",
        description:" Called when a row receives a mouseup event.\n\n",
        name:"rowMouseUp",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:TimeItem.setValue":{
        ref:"method:TimeItem.setValue",
        flags:"",
        description:" Set the value of the form item to the value passed in\n <p>\n NOTE: for valueMap'd items, newValue should be data value not displayed value\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value to set the element to",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "method:CubeGrid.getColumnFacetLayout":{
        ref:"method:CubeGrid.getColumnFacetLayout",
        flags:"",
        description:" Get the current heights of the column facets, as an object of the form:\n <pre>\n [ {facetId:facetId, height:currentHeight}, ... ]\n </pre>\n\n",
        name:"getColumnFacetLayout",
        seeAlso:[
        ],
        returns:{
            description:"array of {facetId:facetId, height:height} objects",
            type:"array"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:ComboBoxItem.separatorRows":{
        ref:"attr:ComboBoxItem.separatorRows",
        flags:"IR",
        description:"Array of records to show between matching and non-matching rows in the PickList.\n <P>\n Not valid for ${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionDataSource','databound pickLists')}.",
        name:"separatorRows",
        seeAlso:[
        ],
        valueType:"Array[] of ListGridRecord",
        defaultValue:"[{isSeparator:true}]",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:FieldPicker.removeItemTitle":{
        ref:"attr:FieldPicker.removeItemTitle",
        flags:"IR",
        description:"The title shown on the 'Visible Fields' grid's context menu item, whose click handler puts the \nselected item back in the 'Available Fields' collection.",
        name:"removeItemTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Remove\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:StretchImgButton.radioGroup":{
        ref:"attr:StretchImgButton.radioGroup",
        flags:"IRWA",
        description:"String identifier for this canvas's mutually exclusive selection group.",
        name:"radioGroup",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:ColumnTree.showNodeCount":{
        ref:"attr:ColumnTree.showNodeCount",
        flags:"IR",
        description:"If set, and ${isc.DocUtils.linkForRef('attr:ColumnTree.showHeaders')} is also set, each column's header will show \n a count of the number of nodes in that column",
        name:"showNodeCount",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ColumnTree"
    },
    "class:EventWindow":{
        methods:[
        ],
        ref:"class:EventWindow",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Calendar"
        ],
        attrs:[
        ],
        description:"Subclass of Window used to display events within a ${isc.DocUtils.linkForRef('class:Calendar')}.  Customize via\n ${isc.DocUtils.linkForRef('attr:Calendar.eventWindow')}.",
        name:"EventWindow",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Calendar.getDayBodyHTML":{
        ref:"method:Calendar.getDayBodyHTML",
        flags:"",
        description:" Return the HTML to be shown in the body of a day in the month view.\n <P>\n Default is to render a series of links that call ${isc.DocUtils.linkForRef('method:Calendar.eventClick')} to provide details\n and/or an editing interface for the events.\n <P>\n <code>getDayBodyHTML()</code> is not called for days outside of the current month if\n ${isc.DocUtils.linkForRef('attr:Calendar.showOtherDays')} is false.\n\n",
        name:"getDayBodyHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"JavaScript Date object representing this day",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"events that fall on this day",
                optional:false,
                name:"events",
                defaultValue:null,
                type:"Array of CalendarEvent"
            },
            {
                description:"the calendar itself",
                optional:false,
                name:"calendar",
                defaultValue:null,
                type:"Calendar"
            },
            {
                description:"the row number to which the parameter date belongs",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"the column number to which the parameter date belongs",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"HTML to display",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewFormatting"
        ]
    },
    "attr:DataSource.dropUnknownCriteria":{
        ref:"attr:DataSource.dropUnknownCriteria",
        flags:"IR",
        description:"If the criteria applied to a fetch type operation contain fields that are not present\n in the dataSource, should they be ignored when performing filtering on the client.\n This property is useful for cases where you custom server logic makes use of criteria \n values to determine what set of records to return to the client, but the data\n does not actually have record values for these fields and as such the client-side filtering\n logic should ignore them.",
        name:"dropUnknownCriteria",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "attr:TableView.navigationMode":{
        ref:"attr:TableView.navigationMode",
        flags:"IRW",
        description:"Set navigation mode for this TableView.",
        name:"navigationMode",
        seeAlso:[
        ],
        valueType:"NavigationMode",
        defaultValue:"\"wholeRecord\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "attr:PickListMenu.emptyMessage":{
        ref:"attr:PickListMenu.emptyMessage",
        flags:"IRW",
        description:"The string to display in the body of a listGrid with an empty data array, if\n showEmptyMessage is true.",
        name:"emptyMessage",
        seeAlso:[
            {
                ref:"attr:GridRenderer.showEmptyMessage",
                description:null
            },
            {
                ref:"attr:GridRenderer.emptyMessageStyle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"No Items To Show\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('emptyGrid')}"
        ],
        definingClass:"class:PickListMenu",
        groups:[
            "i18nMessages"
        ]
    },
    "method:StretchImgButton.getActionType":{
        ref:"method:StretchImgButton.getActionType",
        flags:"",
        description:" Return the 'actionType' for this canvas (radio / checkbox / button)\n",
        name:"getActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "class:VLayout":{
        methods:[
        ],
        exampleConfig:"VLayout.xml",
        ref:"class:VLayout",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
        ],
        description:"A subclass of Layout that applies a sizing policy along the vertical axis, interpreting\n  percent and \"*\" sizes as proportions of the height of the layout. VLayouts will set any\n  members that do not have explicit widths to match the layout.",
        name:"VLayout",
        seeAlso:[
            {
                ref:"attr:Layout.vPolicy",
                description:null
            }
        ],
        type:"class"
    },
    "classMethod:Canvas.getPrintHTML":{
        ref:"classMethod:Canvas.getPrintHTML",
        flags:"",
        description:" Returns print-formatted HTML for the specified list of components.\n\n",
        name:"getPrintHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"Components to get the print HTML for. Strings of raw HTML may  also be included in this array, and will be integrated into the final HTML at the appropriate\n  point.",
                optional:false,
                name:"components",
                defaultValue:null,
                type:"Array of Canvas"
            },
            {
                description:"properties affecting print output",
                optional:false,
                name:"printProperties",
                defaultValue:null,
                type:"PrintProperties"
            },
            {
                description:"Callback to fire when the method completes. The generated print HTML  will be passed in as the first parameter <code>HTML</code>.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"callback"
            },
            {
                description:"Optional HTML separator to render between each component's printable HTML",
                optional:true,
                name:"separator",
                defaultValue:null,
                type:"HTML"
            }
        ],
        returns:{
            description:"print HTML for the components passed in",
            type:"HTMLString"
        },
        type:"classMethod",
        definingClass:"class:Canvas"
    },
    "attr:DataSource.autoCacheAllData":{
        ref:"attr:DataSource.autoCacheAllData",
        flags:"IRW",
        description:"When a DataSource is not ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')}:true and a fetch results in the\n entire dataset being retrieved, this attribute being set to true causes the DataSource\n to automatically switch to <code>cacheAllData:true</code> and prevent further server-trips for fetch \n requests.\n <p>\n ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData','cacheAllData')} is automatically enabled in either of these conditions:\n <ul>\n   <li>\n     The request has no criteria and no startRow/endRow request properties. The latter can\n     be accomplished by disabling paging with a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataFetchMode','dataFetchMode')}\n     setting of \"basic\" or \"local\" or by an explicit fetchData request with those request properties\n     excluded.\n  </li>\n  <li>\n     The request has no criteria but has startRow/endRow specified and the response received has\n     all data available (<code>startRow:0</code> and <code>endRow:totalRows</code>).\n  </li>\n </ul>",
        name:"autoCacheAllData",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:DateChooser.use24HourTime":{
        ref:"attr:DateChooser.use24HourTime",
        flags:"IRW",
        description:"When showing the ${isc.DocUtils.linkForRef('attr:DateChooser.showTimeItem','time field')}, whether the \n ${isc.DocUtils.linkForRef('class:TimeItem','TimeItem')} should be set to use 24-hour time.  The default is true.",
        name:"use24HourTime",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DetailViewerField.target":{
        ref:"attr:DetailViewerField.target",
        flags:"IRW",
        description:"By default, clicking a link rendered by this item opens it in a new browser window.  You \n can alter this behavior by setting this property.  The value of this property will be \n passed as the value to the <code>target</code> attribute of the anchor tag used to render \n the link.  <code>target</code> is applicable only if the field type is set to \"link\".",
        name:"target",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.type",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"_blank\"",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:StretchItem.name":{
        ref:"attr:StretchItem.name",
        flags:"IR",
        description:"A string that is appended as a suffix to the StretchImg's ${isc.DocUtils.linkForRef('attr:StretchImg.src','src')}\n URL in order to fetch the media file for this StretchItem, if a separate ${isc.DocUtils.linkForRef('attr:StretchItem.src')} is\n not provided. Note that the special name \"blank\", possibly suffixed by one or more digits\n which are used to differentiate blank items, means no image will be shown for this StretchItem.\n <p>\n For example, for a StretchImg in \"Over\" state with a ${isc.DocUtils.linkForRef('attr:StretchImg.src')} of \"button.png\"\n and a name of \"stretch\", the resulting URL would be \"button_Over_stretch.png\".",
        name:"name",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:StretchItem"
    },
    "attr:RichTextItem.colSpan":{
        ref:"attr:RichTextItem.colSpan",
        flags:"IRW",
        description:"By default RichTextItems take up an entire row",
        name:"colSpan",
        seeAlso:[
        ],
        valueType:"number | string",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"class:RichTextItem"
    },
    "method:Button.getActionType":{
        ref:"method:Button.getActionType",
        flags:"",
        description:" Return the 'actionType' for this canvas (radio / checkbox / button)\n",
        name:"getActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:SectionHeader.titleHover":{
        ref:"method:SectionHeader.titleHover",
        flags:"",
        description:" Optional stringMethod to fire when the user hovers over this section header and the title is\n clipped. If ${isc.DocUtils.linkForRef('attr:SectionHeader.showClippedTitleOnHover')} is true, the default behavior is to\n show a hover canvas containing the HTML returned by ${isc.DocUtils.linkForRef('method:SectionHeader.titleHoverHTML')}.\n Return false to suppress this default behavior.\n",
        name:"titleHover",
        seeAlso:[
            {
                ref:"attr:SectionHeader.clipTitle",
                description:null
            },
            {
                ref:"method:SectionHeader.titleClipped",
                description:null
            }
        ],
        returns:{
            description:"false to suppress the standard hover",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:SectionHeader",
        groups:[
            "hovers"
        ]
    },
    "attr:TextExportSettings.nullValueText":{
        ref:"attr:TextExportSettings.nullValueText",
        flags:"IR",
        description:"Text to export for a field with a null value.  If this property is null, then\n null fields will be assumed to have the default value for their field type.",
        name:"nullValueText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:TextExportSettings"
    },
    "attr:AdvancedHiliteEditor.targetFieldsItemTitle":{
        ref:"attr:AdvancedHiliteEditor.targetFieldsItemTitle",
        flags:"IR",
        description:"The title for the Target Field(s) picker.",
        name:"targetFieldsItemTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Target Field(s)\"",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.autoFitWidthApproach":{
        ref:"attr:ListGrid.autoFitWidthApproach",
        flags:"IRW",
        description:"When a user requests column autofitting via the\n ${isc.DocUtils.linkForRef('method:ListGrid.getHeaderContextMenuItems','header context menu')} or via a\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerAutoFitEvent','mouse gesture')}, what autofit approach is used.",
        name:"autoFitWidthApproach",
        setter:[
            "setAutoFitWidthApproach"
        ],
        seeAlso:[
        ],
        valueType:"AutoFitWidthApproach",
        defaultValue:"\"value\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "method:Array.getRange":{
        ref:"method:Array.getRange",
        flags:"",
        description:" Return the items between position start and end, non-inclusive at the end.\n\n",
        name:"getRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start position",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"end position",
                optional:false,
                name:"end",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"subset of the array from start -&gt; end-1",
            type:"Array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:MultiSortPanel.addLevelButtonTitle":{
        ref:"attr:MultiSortPanel.addLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the addLevelButton",
        name:"addLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add Level\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.init":{
        ref:"method:Canvas.init",
        flags:"A",
        description:"\n This method performs some basic initialization common to all UI components.  To do custom UI\n component initialization, you should generally override ${isc.DocUtils.linkForRef('method:Canvas.initWidget')}.  This\n method does the following, in order:\n <ul>\n <li>Sets up a global reference to this instance as described in ${isc.DocUtils.linkForRef('attr:Canvas.ID')}.\n <li>Ensures certain numeric properties have numeric values (e.g. width, height, padding,\n margin)\n <li>Ensures ${isc.DocUtils.linkForRef('attr:Canvas.children')} and ${isc.DocUtils.linkForRef('attr:Canvas.peers')} are Arrays.\n <li>Calls ${isc.DocUtils.linkForRef('method:Canvas.initWidget')}\n <li>Creates ${isc.DocUtils.linkForRef('attr:Canvas.showEdges','edges')} and ${isc.DocUtils.linkForRef('attr:Canvas.showShadow','shadow')}, if so configured.\n <li>Calls ${isc.DocUtils.linkForRef('method:Canvas.draw')} if ${isc.DocUtils.linkForRef('attr:Canvas.autoDraw')} is set on instance or globally.\n </ul>\n Unless you're in an advanced scenario where you need to inject code before the above\n logic executes, place your initialization logic in initWidget() rather than init().  If you\n do decided to override this method, you must call the superclass implementation like so:\n <pre>\n    this.Super(\"init\", arguments);\n </pre>\n\n",
        name:"init",
        seeAlso:[
        ],
        params:[
            {
                description:"All arguments initially passed to ${isc.DocUtils.linkForRef('classMethod:Class.create')}",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "method:ListGrid.getSelectedRecord":{
        ref:"method:ListGrid.getSelectedRecord",
        flags:"",
        description:" Returns the first selected record in this grid.\n <p>\n This method is appropriate if the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType','selectionType')} is\n <smartclient>\"single\",</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.SelectionStyle#SINGLE},</smartgwt>\n or if you only care about the first selected record in a multiple-record selection. To access\n all selected records, use ${isc.DocUtils.linkForRef('method:ListGrid.getSelection')} instead.\n <p>\n <strong>NOTE:</strong> If a record is returned, it should be treated as read-only and not\n modified.\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"the first selected record, or null if no record is selected.",
            type:"ListGridRecord"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundRemove')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Calendar.eventEditorLayout":{
        ref:"attr:Calendar.eventEditorLayout",
        flags:"R",
        description:"An ${isc.DocUtils.linkForRef('type:AutoChild')} of type ${isc.DocUtils.linkForRef('class:Window')} that displays the full \n ${isc.DocUtils.linkForRef('attr:Calendar.eventEditor','event editor')}",
        name:"eventEditorLayout",
        seeAlso:[
        ],
        valueType:"AutoChild Window",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "type:LayoutPolicy":{
        ref:"type:LayoutPolicy",
        values:[
            {
                description:"Layout does not try to size members on the axis at all, merely stacking them (length\n  axis) and leaving them at default breadth.",
                value:"Layout.NONE"
            },
            {
                description:"Layout sizes members so that they fill the specified size of the layout.  The rules\n  are:\n  <ul>\n  <li> Any component given an initial pixel size, programmatically resized to a specific\n  pixel size, or drag resized by user action is left at that exact size\n  <li> Any component that ${isc.DocUtils.linkForRef('attr:Button.autoFit','autofits')} is given exactly the space it\n  needs, never forced to take up more.\n  <li> All other components split the remaining space equally, or according to their\n  relative percentages.\n  </ul>",
                value:"Layout.FILL"
            }
        ],
        description:"Policy controlling how the Layout will manage member sizes on this axis.\n  <P>\n  See also ${isc.DocUtils.linkForRef('attr:Layout.overflow')}.",
        name:"LayoutPolicy",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Canvas.animateMove":{
        ref:"method:Canvas.animateMove",
        flags:"",
        description:" Animate a reposition of this canvas from its current position to the specified position\n",
        name:"animateMove",
        seeAlso:[
        ],
        params:[
            {
                description:"new left position (or null for unchanged)",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"new top position (or null for unchanged)",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"When the move completes this callback will be fired. Single                            'earlyFinish' parameter will be passed if the animation was\n                            cut short by a call to finishAnimation",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"AnimationCallback"
            },
            {
                description:"Duration in ms of the animated move",
                optional:true,
                name:"duration",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Optional acceleration effect to bias the ratios",
                optional:true,
                name:"acceleration",
                defaultValue:null,
                type:"AnimationAcceleration"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateMove')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "method:FacetChart.setDataColors":{
        ref:"method:FacetChart.setDataColors",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FacetChart.dataColors')}.\n",
        name:"setDataColors",
        seeAlso:[
        ],
        params:[
            {
                description:"New set of data colors",
                optional:false,
                name:"dataColors",
                defaultValue:null,
                type:"Array of CSSColor"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:ListGridField.autoFreeze":{
        ref:"attr:ListGridField.autoFreeze",
        flags:"IR",
        description:"Whether this field should be automatically frozen when other fields are frozen.  When\n true, the field will be automatically frozen to the extreme of the grid.  The\n automatically generated ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxField','checkbox')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.expansionField','expansion')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.rowNumberField','rowNumber')} fields are examples of fields that specify\n <code>autoFreeze: true</code>.\n <P>\n You can control the position of this field in the array of frozen fields by providing a\n ${isc.DocUtils.linkForRef('method:ListGridField.getAutoFreezePosition')} implementation.",
        name:"autoFreeze",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "frozenFields"
        ]
    },
    "attr:ResultSet.updatePartialCache":{
        ref:"attr:ResultSet.updatePartialCache",
        flags:"IRA",
        description:"If set to true, updated and added rows will be integrated into the client-side cache\n even if paging is enabled and cache is partial.  If <code>updatePartialCache</code> is\n false, the cache will be invalidated and new data fetched.\n <P>\n If updatePartialCache is enabled and an \"add\" or \"update\" operation succeeds with a partial\n cache:\n <ul>\n <li> updated rows will remain in their current position.  No attempt will be made to sort\n them into a new position even if the sort field was updated.\n <li> newly added rows will be added at either the end (first preference) or beginning of\n the dataset if that part of the dataset is cached and was most recently requested.\n If not, the new row is added at the end of the most recently requested contiguously\n cached range.\n </ul>\n The cache will then be dropped the next time rows are fetched, to prevent problems with\n inconsistent row numbering between the server and client, which could otherwise lead to\n duplicate rows or rows being skipped entirely.",
        name:"updatePartialCache",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "cacheSync"
        ]
    },
    "group:corner":{
        ref:"group:corner",
        refs:[
            "attr:Scrollbar.showCorner",
            "attr:Scrollbar.cornerSize"
        ],
        name:"corner",
        seeAlso:[
        ],
        type:"group"
    },
    "method:TreeGrid.getDragTrackerIcon":{
        ref:"method:TreeGrid.getDragTrackerIcon",
        flags:"",
        description:" Return an icon to display as a drag tracker when the user drags some node(s).<br>\n Default implementation:<br>\n If multiple nodes are selected and ${isc.DocUtils.linkForRef('attr:TreeGrid.manyItemsImage')} is defined, this\n image will be returned.<br>\n Otherwise returns the result of ${isc.DocUtils.linkForRef('method:TreeGrid.getIcon')} for the first node being \n dragged.\n <p>\n Note: Only called if ${isc.DocUtils.linkForRef('attr:ListGrid.dragTrackerMode')} is set to <code>\"icon\"</code>. \n",
        name:"getDragTrackerIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"Records being dragged",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of ListGridRecord"
            }
        ],
        returns:{
            description:"Image URL of icon to display",
            type:"string"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "dragTracker"
        ]
    },
    "attr:FacetChart.dataLineProperties":{
        ref:"attr:FacetChart.dataLineProperties",
        flags:"IR",
        description:"Properties for lines that show data (as opposed to gradations or borders around the data\n area).",
        name:"dataLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:RichTextEditor.toolArea":{
        ref:"attr:RichTextEditor.toolArea",
        flags:"R",
        description:"Layout used to contain all of the ${isc.DocUtils.linkForRef('class:Toolbar')} AutoChildren that contain the\n ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')}.",
        name:"toolArea",
        seeAlso:[
        ],
        valueType:"AutoChild Layout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "method:LoginDialog.lostPassword":{
        ref:"method:LoginDialog.lostPassword",
        flags:"",
        description:" Called if the user clicks on the ${isc.DocUtils.linkForRef('attr:LoginDialog.lostPasswordItem','\"Lost Password\"')} link\n on the login form. Implement this method to allow the user to request the password\n be resent or reset.\n",
        name:"lostPassword",
        seeAlso:[
        ],
        params:[
            {
                description:"Current values of form fields",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"Form on which the link was clicked",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:LoginDialog"
    },
    "attr:Tab.iconSize":{
        ref:"attr:Tab.iconSize",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Tab.icon')} is specified, this property may be used to specify a size for the icon.\n Per side sizing may be specified instead via ${isc.DocUtils.linkForRef('attr:Tab.iconWidth')} and ${isc.DocUtils.linkForRef('attr:Tab.iconHeight')}.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"16",
        type:"attr",
        definingClass:"object:Tab"
    },
    "method:Canvas.getPageLeft":{
        ref:"method:Canvas.getPageLeft",
        flags:"A",
        description:" Returns the page-relative left coordinate of the widget on the page, in pixels.\n",
        name:"getPageLeft",
        seeAlso:[
        ],
        returns:{
            description:"global left coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:Canvas.dragTarget":{
        ref:"attr:Canvas.dragTarget",
        flags:"IRWA",
        description:"A different widget that should be actually dragged when dragging initiates on this\n widget. One example of this is to have a child widget that drags its parent, as with a\n drag box. Because the parent automatically repositions its children, setting the drag\n target of the child to the parent and then dragging the child will result in both\n widgets being moved.<br>\n Valid dragTarget values are:<br>\n - <code>null</code> (default) [this widget is its own drag target]<br>\n - another widget, or widget ID<br>\n - <code>\"parent\"</code> drag target is this widget's\n    ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas','parentCanvas')}<br>\n - <code>\"top\"</code> drag target is this widget's\n    ${isc.DocUtils.linkForRef('attr:Canvas.topElement','topElement')}<br>",
        name:"dragTarget",
        seeAlso:[
            {
                ref:"classMethod:EventHandler.getDragTarget",
                description:null
            }
        ],
        valueType:"Canvas | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "class:ListPropertiesPane":{
        methods:[
            "method:ListPropertiesPane.listPropertiesChanged"
        ],
        ref:"class:ListPropertiesPane",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation/RichTextEditor"
        ],
        attrs:[
            "attr:ListPropertiesPane.listProperties",
            "attr:ListPropertiesPane.sampleTileLayout",
            "attr:ListPropertiesPane.sampleTile",
            "attr:ListPropertiesPane.startNumberForm",
            "attr:ListPropertiesPane.startNumberFieldTitle",
            "attr:ListPropertiesPane.startNumberField"
        ],
        description:"Pane containing controls for editing the style of HTML lists in a ${isc.DocUtils.linkForRef('class:RichTextEditor')}.\n <p>\n Cannot be directly used; shown in documentation only for skinning purposes.",
        name:"ListPropertiesPane",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:isA.Object":{
        ref:"classMethod:isA.Object",
        flags:"",
        description:" Returns whether the passed value is a non-null Object.\n <p>\n Returns false for values that are Numbers, Strings, Booleans, Functions or are null or\n undefined.  \n <p>\n Returns true for Object, Array, Regular Expression, Date and other kinds of\n native objects which are considered to extend from window.Object.\n\n",
        name:"Object",
        seeAlso:[
        ],
        params:[
            {
                description:"value to test for whether it's an object",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"whether passed value is an Object",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "classMethod:Messaging.connected":{
        ref:"classMethod:Messaging.connected",
        flags:"",
        description:" Returns whether the Messaging system currently has a connection to the server.\n <p>\n This is not perfectly authoritative since the server may crash at any given instant.  This\n method will return true if we have opened a connection to the server and the connection has\n been successfully acknowledged by the server.\n\n",
        name:"connected",
        seeAlso:[
        ],
        returns:{
            description:"whether we are currently connected",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:Messaging",
        groups:[
            "messaging"
        ]
    },
    "attr:groupNode.groupTitle":{
        ref:"attr:groupNode.groupTitle",
        flags:"R",
        description:"The computed title for the group, which results from ${isc.DocUtils.linkForRef('method:ListGridField.getGroupTitle')}",
        name:"groupTitle",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"see below",
        type:"attr",
        definingClass:"object:groupNode",
        groups:[
            "grouping"
        ]
    },
    "attr:TableView.infoField":{
        ref:"attr:TableView.infoField",
        flags:"IRW",
        description:"Field to display as part of individual record in \"summary\" ${isc.DocUtils.linkForRef('type:RecordLayout')}s.",
        name:"infoField",
        seeAlso:[
            {
                ref:"type:RecordLayout",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"info\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "method:ListGrid.addSort":{
        ref:"method:ListGrid.addSort",
        flags:"A",
        description:"  Adds another ${isc.DocUtils.linkForRef('object:SortSpecifier')} to this grid's sort configuration and resorts.\n",
        name:"addSort",
        seeAlso:[
        ],
        params:[
            {
                description:"A SortSpecifier object indicating an additional field    and direction to sort by",
                optional:false,
                name:"sortSpecifier",
                defaultValue:null,
                type:"SortSpecifier"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:PickList.pickListHeaderHeight":{
        ref:"attr:PickList.pickListHeaderHeight",
        flags:"IRW",
        description:"If this pick list is showing multiple fields, this property determines the height of\n the column headers for those fields. Set to zero to suppress the headers entirely.",
        name:"pickListHeaderHeight",
        seeAlso:[
            {
                ref:"attr:PickList.pickListFields",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"22",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:DateChooser.navButtonConstructor":{
        ref:"attr:DateChooser.navButtonConstructor",
        flags:"IRA",
        description:"Constructor for navigation buttons at the top of the component.",
        name:"navButtonConstructor",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"IButton",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:TreeGrid.treeRootValue":{
        ref:"attr:TreeGrid.treeRootValue",
        flags:"IRA",
        description:"For databound trees, use this attribute to supply a ${isc.DocUtils.linkForRef('attr:DataSourceField.rootValue')} for this\n component's generated data object.\n <P> \n This property allows you to have a particular component navigate a tree starting from any\n given node as the root.",
        name:"treeRootValue",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "databinding"
        ]
    },
    "type:DragAppearance":{
        ref:"type:DragAppearance",
        values:[
            {
                description:"No default drag appearance is indicated. Your custom dragging routines should\n      implement some behavior that indicates that the user is in a dragging situation,\n      and where the mouse is.",
                value:"\"none\""
            },
            {
                description:"A \"drag tracker\" object is automatically shown and moved around with the\n      mouse. This is generally set to an icon that represents what is being dragged. The\n      default tracker is a 10 pixel black square, but you can customize this icon. This\n      dragAppearance is not recommended for use with drag resizing or drag moving.",
                value:"\"tracker\""
            },
            {
                description:"The target object is actually moved, resized, etc. in real time. This is\n      recommended for drag repositioning, but not for drag resizing of complex objects.",
                value:"\"target\""
            },
            {
                description:"An outline the size of the target object is moved, resized, etc. with the\n      mouse. This is recommended for drag resizing, especially for objects that take a\n      significant amount of time to draw.",
                value:"\"outline\""
            }
        ],
        description:"Different types of effects for showing dragging behavior.",
        name:"DragAppearance",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "dragdrop"
        ]
    },
    "object:AnimateShowEffect":{
        methods:[
        ],
        ref:"object:AnimateShowEffect",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:AnimateShowEffect.effect",
            "attr:AnimateShowEffect.startFrom",
            "attr:AnimateShowEffect.endsAt"
        ],
        description:"Configuration object for effect to apply during an animated show or hide.",
        name:"AnimateShowEffect",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:DrawItem.hoverDelay":{
        ref:"attr:DrawItem.hoverDelay",
        flags:"IRW",
        description:"If <code>this.canHover</code> is true, how long should the mouse be kept over this\n widget before the hover event is fired",
        name:"hoverDelay",
        seeAlso:[
            {
                ref:"attr:DrawItem.canHover",
                description:null
            },
            {
                ref:"method:DrawItem.hover",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"300",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "hovers"
        ]
    },
    "classMethod:Log.isEnabledFor":{
        ref:"classMethod:Log.isEnabledFor",
        flags:"",
        description:" Would a message logged to the given category at the given priority appear in the Log?\n <P>\n NOTE: if there is no specific priority setting for a given category, the\n <code>Log.defaultPriority</code> is used.\n\n",
        name:"isEnabledFor",
        seeAlso:[
        ],
        params:[
            {
                description:"category name",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"String"
            },
            {
                description:"priority level to check",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "classAttr:Operators.inSetTitle":{
        ref:"classAttr:Operators.inSetTitle",
        flags:"IR",
        description:"Title for the \"inSet\" operator",
        name:"inSetTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"is one of\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:StatefulCanvas.title":{
        ref:"attr:StatefulCanvas.title",
        flags:"IRW",
        getter:[
            "getTitle"
        ],
        description:"The title HTML to display in this button.",
        name:"title",
        setter:[
            "setTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "basics"
        ]
    },
    "type:EnterKeyEditAction":{
        ref:"type:EnterKeyEditAction",
        values:[
            {
                description:"end editing (will save edit values if ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')}  is true).",
                value:"\"done\""
            },
            {
                description:"edit the next editable cell in the record",
                value:"\"nextCell\""
            },
            {
                description:"edit the same field in the next editable record",
                value:"\"nextRow\""
            },
            {
                description:"edit the first editable cell in next editable record",
                value:"\"nextRowStart\""
            }
        ],
        description:"What to do when a user hits enter while editing a cell",
        name:"EnterKeyEditAction",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "editing"
        ]
    },
    "method:RichTextEditor.richEditorSupported":{
        ref:"method:RichTextEditor.richEditorSupported",
        flags:"",
        description:" Does this browser support the full RichTextEditor feature set.\n Returns false for browsers in which some features are not natively supported\n (Safari before version 3.1 and Opera before version 9.50).\n",
        name:"richEditorSupported",
        seeAlso:[
        ],
        returns:{
            description:"false if this browser doesn't fully support RichTextEditing",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:RichTextEditor"
    },
    "method:HiliteEditor.clearHilites":{
        ref:"method:HiliteEditor.clearHilites",
        flags:"",
        description:" Clear all Hilites from the editor.\n\n",
        name:"clearHilites",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:HiliteEditor"
    },
    "type:FormItemType":{
        ref:"type:FormItemType",
        values:[
            {
                description:"Rendered as a ${isc.DocUtils.linkForRef('class:TextItem')}, unless the length of the field (as specified by ${isc.DocUtils.linkForRef('attr:DataSourceField.length')} attribute) is larger than the value\n specified by ${isc.DocUtils.linkForRef('attr:DynamicForm.longTextEditorThreshold')}, a\n ${isc.DocUtils.linkForRef('class:TextAreaItem')} is shown.",
                value:"\"text\""
            },
            {
                description:"Rendered as a ${isc.DocUtils.linkForRef('class:CheckboxItem')}",
                value:"\"boolean\""
            },
            {
                description:"Same as <code>text</code> by default.                      Consider setting editorType:${isc.DocUtils.linkForRef('class:SpinnerItem')}.",
                value:"\"integer\""
            },
            {
                description:"Same as <code>text</code> by default.                      Consider setting editorType:${isc.DocUtils.linkForRef('class:SpinnerItem')}.",
                value:"\"float\""
            },
            {
                description:"Rendered as a ${isc.DocUtils.linkForRef('class:DateItem')}",
                value:"\"date\""
            },
            {
                description:"Rendered as a ${isc.DocUtils.linkForRef('class:TimeItem')}",
                value:"\"time\""
            },
            {
                description:"Rendered as a ${isc.DocUtils.linkForRef('class:SelectItem')}.  Also true for any field that                    specifies a ${isc.DocUtils.linkForRef('attr:FormItem.valueMap')}.  \n                    Consider setting editorType:${isc.DocUtils.linkForRef('class:ComboBoxItem')}.",
                value:"\"enum\""
            },
            {
                description:"Same as <code>text</code>",
                value:"\"sequence\""
            },
            {
                description:"If ${isc.DocUtils.linkForRef('attr:DataSourceField.canEdit')}<code>:false</code> is set on the field,                    the value is rendered as a ${isc.DocUtils.linkForRef('class:LinkItem')}.  Otherwise the field \n                    is rendered as a ${isc.DocUtils.linkForRef('class:TextItem')}.",
                value:"\"link\""
            },
            {
                description:"Rendered as an image if not editable, or as a ${isc.DocUtils.linkForRef('class:TextItem')} to edit                    the URL or partial URL if editable",
                value:"\"image\""
            },
            {
                description:"Rendered as a ${isc.DocUtils.linkForRef('class:FileItem')}, or a ${isc.DocUtils.linkForRef('class:ViewFileItem')} if not editable",
                value:"\"imageFile\""
            },
            {
                description:"Rendered as a ${isc.DocUtils.linkForRef('class:FileItem')}, or a ${isc.DocUtils.linkForRef('class:ViewFileItem')} if not editable",
                value:"\"binary\""
            }
        ],
        description:"DynamicForms automatically choose the FormItem type for a field based on the\n <code>type</code> property of the field.  The table below describes the default FormItem\n chosen for various values of the <code>type</code> property.\n <P>\n You can also set ${isc.DocUtils.linkForRef('attr:FormItem.editorType','field.editorType')} to the classname of a\n ${isc.DocUtils.linkForRef('class:FormItem')} to override this default mapping.  You can alternatively override\n ${isc.DocUtils.linkForRef('method:DynamicForm.getEditorType')} to create a form with different rules for which\n FormItems are chosen.\n <P>",
        name:"FormItemType",
        seeAlso:[
            {
                ref:"attr:FormItem.type",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            }
        ],
        type:"type"
    },
    "attr:ImgTab.capSize":{
        ref:"attr:ImgTab.capSize",
        flags:"IRW",
        description:"How big are the end pieces by default",
        name:"capSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:ImgTab",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.canDropBefore":{
        ref:"attr:Canvas.canDropBefore",
        flags:"IRWA",
        description:"When explicitly set to false, disallows drop before this member in the Layout.",
        name:"canDropBefore",
        seeAlso:[
            {
                ref:"class:Layout",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "layoutMember"
        ]
    },
    "classMethod:XMLTools.serializeToString":{
        ref:"classMethod:XMLTools.serializeToString",
        flags:"",
        description:" Takes an XMLDocument and returns it as a String.\n <P>\n This method is not supported on the Safari web browser versions prior to 3.0.3.\n\n",
        name:"serializeToString",
        seeAlso:[
        ],
        params:[
            {
                description:"XML document to apply the transform to",
                optional:false,
                name:"inputDocument",
                defaultValue:null,
                type:"XMLDocument"
            }
        ],
        returns:{
            description:"XML document as a String",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:XMLTools",
        groups:[
            "xmlTransform"
        ]
    },
    "attr:FormItem.canFocus":{
        ref:"attr:FormItem.canFocus",
        flags:"IRA",
        getter:[
            "getCanFocus"
        ],
        description:"Is this form item focusable? Setting this property to true on an otherwise\n non-focusable element such as a ${isc.DocUtils.linkForRef('class:StaticTextItem')} will cause the item to be\n included in the page's tab order and respond to keyboard events.",
        name:"canFocus",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "focus"
        ]
    },
    "attr:FacetChart.legendSwatchProperties":{
        ref:"attr:FacetChart.legendSwatchProperties",
        flags:"IR",
        description:"Properties for the swatches of color shown in the legend.",
        name:"legendSwatchProperties",
        seeAlso:[
        ],
        valueType:"DrawRect Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:XMLTools.transformNodes":{
        ref:"classMethod:XMLTools.transformNodes",
        flags:"",
        description:" Apply an XSLT Stylesheet to an XML Document.\n <P>\n This method cannot currently be supported on the Safari web browser versions prior to\n 3.0.3.\n\n",
        name:"transformNodes",
        seeAlso:[
        ],
        params:[
            {
                description:"XML document to apply the transform to",
                optional:false,
                name:"inputDocument",
                defaultValue:null,
                type:"XMLDocument"
            },
            {
                description:"XSLT stylesheet to use for transform",
                optional:false,
                name:"styleSheet",
                defaultValue:null,
                type:"XMLDocument"
            }
        ],
        returns:{
            description:"stylesheet output",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:XMLTools",
        groups:[
            "xmlTransform"
        ]
    },
    "attr:FacetChart.xAxisStartValue":{
        ref:"attr:FacetChart.xAxisStartValue",
        flags:"IR",
        description:"For scatter charts only, the start value for the x-axis.\n <p>\n Defaults to 0, or to a value that makes good use of horizontal space based on\n ${isc.DocUtils.linkForRef('attr:FacetChart.minXDataSpreadPercent')}.",
        name:"xAxisStartValue",
        seeAlso:[
            {
                ref:"attr:FacetChart.axisStartValue",
                description:null
            }
        ],
        valueType:"Float",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classAttr:RPCResponse.STATUS_LOGIN_INCORRECT":{
        ref:"classAttr:RPCResponse.STATUS_LOGIN_INCORRECT",
        flags:"R",
        description:"Indicates that the RPC has been intercepted by an authenticator that requires the user\n to log in.",
        name:"STATUS_LOGIN_INCORRECT",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-5",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:OperationBinding.values":{
        ref:"attr:OperationBinding.values",
        flags:"IR",
        description:"<b>Elements of this feature are only available with Power or better licenses.</b> See \n <a href=http://smartclient.com/product>smartclient.com/product</a> for details.\n <p>\n A list of ${isc.DocUtils.linkForRef('object:DSRequestModifier')}s that will be used to modify the values object of each \n ${isc.DocUtils.linkForRef('class:DSRequest')} that uses this operationBinding. See this example:\n ${isc.DocUtils.linkForExampleId('queuedAdd')}. \n <p>Below example of the xml as it should be defined in ds.xml: <code> \n &lt;operationBinding operationType=\"add\"&gt;\n   &lt;values fieldName=\"orderID\" value=\"$responseData.last('queuedAdd_order','add').orderID\" /&gt;  \n &lt;/operationBinding&gt;</code>",
        name:"values",
        seeAlso:[
            {
                ref:"attr:OperationBinding.criteria",
                description:null
            }
        ],
        valueType:"Array of DSRequestModifier",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "method:ResultTree.loadChildren":{
        ref:"method:ResultTree.loadChildren",
        flags:"",
        description:" Load the children of a given node.\n <P>\n For a databound tree this will trigger a fetch against the Tree's DataSource.\n\n\n",
        name:"loadChildren",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Optional callback (stringMethod) to fire when loading                       completes. Has a single param <code>node</code> - the node whose \n                      children have been loaded, and is fired in the scope of the Tree.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"class:ResultTree",
        groups:[
            "loadState"
        ]
    },
    "attr:Canvas.hoverStyle":{
        ref:"attr:Canvas.hoverStyle",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true, this property can be used to specify the\n css style to apply to the hover canvas.",
        name:"hoverStyle",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customHovers')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "attr:DataSourceField.imageHeight":{
        ref:"attr:DataSourceField.imageHeight",
        flags:"IR",
        description:"Height of the image-content of this field.  If set as a string, represents the name of \n another field in the record that holds the imageHeight.  Applicable only to fields of image \n type or fields that use a ${isc.DocUtils.linkForRef('class:ViewFileItem','ViewFileItem')} as an editor.",
        name:"imageHeight",
        seeAlso:[
        ],
        valueType:"number or String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:FormItem.disabled":{
        ref:"attr:FormItem.disabled",
        flags:"IRW",
        description:"Whether this item is disabled.  Can be updated at runtime via the <code>setDisabled()</code>\n method.  Note that if the widget containing this formItem is disabled, the formItem will\n behave in a disabled manner regardless of the setting of the item.disabled property.\n <p>\n Note that not all items can be disabled, and not all browsers show an obvious disabled style\n for native form elements.",
        name:"disabled",
        setter:[
            "setDisabled"
        ],
        seeAlso:[
            {
                ref:"method:FormItem.setDisabled",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fieldEnableDisable')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Calendar.canReorderLanes":{
        ref:"attr:Calendar.canReorderLanes",
        flags:"IR",
        description:"If true, lanes can be reordered by dragging them with the mouse.",
        name:"canReorderLanes",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:DrawSector.endAngle":{
        ref:"attr:DrawSector.endAngle",
        flags:"IR",
        description:"End angle of the sector in degrees.",
        name:"endAngle",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"20.0",
        type:"attr",
        definingClass:"class:DrawSector"
    },
    "attr:DateChooser.yearMenuStyle":{
        ref:"attr:DateChooser.yearMenuStyle",
        flags:"IR",
        description:"Style for the pop-up year menu.",
        name:"yearMenuStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserYearMenu\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:ListGrid.removeIcon":{
        ref:"attr:ListGrid.removeIcon",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is enabled, default icon to show in\n the auto-generated field that allows removing records.",
        name:"removeIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/actions/remove.png\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ColumnTree.nodeSelected":{
        ref:"method:ColumnTree.nodeSelected",
        flags:"",
        description:" Called when a node is selected in any column.  Default behavior is to show the next level\n of the tree in a column to the right of the current column.\n <P>\n The new column will be created if it is not already showing.  Any columns further to the\n right, showing deeper levels of the tree, will be removed.\n",
        name:"nodeSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"columnthe column where a node was selected",
                optional:true,
                name:"ListGrid",
                defaultValue:null,
                type:null
            },
            {
                description:"nodethe node that was selected",
                optional:true,
                name:"TreeNode",
                defaultValue:null,
                type:null
            }
        ],
        returns:{
            description:"override and return false to cancel the default action",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "classMethod:RPCManager.handleTransportError":{
        ref:"classMethod:RPCManager.handleTransportError",
        flags:"",
        description:" Method to handle server error responses to submitted transactions.\n When the server responds to a submitted transaction with an HTTP error code this method will\n be called before any individual response callbacks are fired, regardless of whether\n ${isc.DocUtils.linkForRef('attr:RPCRequest.willHandleError')} was specified on the submitted request[s].\n <P>\n This provides the developer with an opportunity to handle a server error by (for example)\n suspending and resubmitting the transaction before any other handling occurs.\n <P>\n The default implementation takes no action - by default transport errors \n are handled via ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')}, or by the standard request callback\n methods, depending on request.willHandleError. \n To perform custom handing for transport errors this classMethod may be overridden as\n follows\n <pre>\n     isc.RPCManager.addClassProperties({\n         handleTransportError : function (transactionNum, status, httpResponseCode, httpResponseText) \n         {\n                .. custom handling .. \n         }\n     })\n </pre>\n <P>\n Note: This method only applies to operations submitted via\n ${isc.DocUtils.linkForRef('type:RPCTransport','XMLHttpRequest')} - it is not possible to provide similar error handling\n for other transports.\n\n",
        name:"handleTransportError",
        seeAlso:[
        ],
        params:[
            {
                description:"The submitted client-server transaction number",
                optional:false,
                name:"transactionNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"The RPCResponse status code",
                optional:false,
                name:"status",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"The HTTP Response code reported by the server",
                optional:false,
                name:"httpResponseCode",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"The raw HTTP Response text",
                optional:false,
                name:"httpResponseText",
                defaultValue:null,
                type:"text"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager",
        groups:[
            "errorHandling"
        ]
    },
    "classAttr:Hover.leftOffset":{
        ref:"classAttr:Hover.leftOffset",
        flags:"RW",
        description:"When positioning the hover canvas, this will be the default left offset from the \n mousepointer, if no explicit position was passed to the ${isc.DocUtils.linkForRef('classMethod:Hover.show')} method",
        name:"leftOffset",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"15",
        type:"classAttr",
        definingClass:"class:Hover"
    },
    "attr:RecordEditor.skinImgDir":{
        ref:"attr:RecordEditor.skinImgDir",
        flags:"IR",
        description:"Where do 'skin' images (those provided with the class) live?",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"images/RecordEditor/\"",
        type:"attr",
        definingClass:"class:RecordEditor"
    },
    "attr:NativeCheckboxItem.textBoxStyle":{
        ref:"attr:NativeCheckboxItem.textBoxStyle",
        flags:"IRW",
        description:"Base CSS class applied to this item's title text (rendered next to the checkbox element).",
        name:"textBoxStyle",
        seeAlso:[
        ],
        valueType:"FormItemBaseStyle",
        defaultValue:"\"labelAnchor\"",
        type:"attr",
        definingClass:"class:NativeCheckboxItem",
        groups:[
            "appearance"
        ]
    },
    "attr:DynamicForm.timeFormatter":{
        ref:"attr:DynamicForm.timeFormatter",
        flags:"IRW",
        description:"Default ${isc.DocUtils.linkForRef('type:TimeDisplayFormat')} for ${isc.DocUtils.linkForRef('attr:FormItem.type','type:\"time\"')} field values displayed\n in this form.\n <P>\n Note that if specified, ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} and ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')}\n take precedence over the format specified at the component level.\n <P>\n If no explicit formatter is specified at the field or component level, time values will be \n formatted according to the system-wide\n ${isc.DocUtils.linkForRef('classMethod:Time.setNormalDisplayFormat','normal time display format')}.\n specified field type.",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:DrawItem.getHoverHTML":{
        ref:"method:DrawItem.getHoverHTML",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DrawItem.showHover','showHover')} is true, when the user holds the mouse over this DrawItem for\n long enough to trigger a hover event, a hover canvas is shown by default. This method returns\n the contents of that hover canvas. Default implementation returns ${isc.DocUtils.linkForRef('attr:DrawItem.prompt','prompt')} -\n override for custom hover HTML. Note that returning <code>null</code> or an empty string will\n suppress the hover canvas altogether.\n",
        name:"getHoverHTML",
        seeAlso:[
        ],
        returns:{
            description:"the HTML to show in the hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:DrawItem",
        groups:[
            "hovers"
        ]
    },
    "attr:FilterBuilder.fieldPicker":{
        ref:"attr:FilterBuilder.fieldPicker",
        flags:"IR",
        description:"AutoChild for the ${isc.DocUtils.linkForRef('class:FormItem')} that allows a user to pick a DataSource field when \n creating filter clauses.\n <P>\n This will be a ${isc.DocUtils.linkForRef('class:SelectItem')} by default, or a ${isc.DocUtils.linkForRef('class:ComboBoxItem')} if\n ${isc.DocUtils.linkForRef('attr:FilterBuilder.fieldDataSource')} has been specified.",
        name:"fieldPicker",
        seeAlso:[
        ],
        valueType:"MultiAutoChild PickList",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "classAttr:RPCManager.promptCursor":{
        ref:"classAttr:RPCManager.promptCursor",
        flags:"IRW",
        description:"Controls the default cursor shown when ${isc.DocUtils.linkForRef('classAttr:RPCManager.promptStyle')} is set to\n <code>\"cursor\"</code>.  Overrideable by ${isc.DocUtils.linkForRef('attr:RPCRequest.promptCursor')}.\n <p>\n In Safari, IE 5.5 and Firefox 1.0 the default value is \"wait\", on all other platforms it is\n \"progress\".  The reason for this split is that the above-mentioned browsers do not support\n CSS2.1 - which is required for the \"progress\" cursor type.",
        name:"promptCursor",
        seeAlso:[
            {
                ref:"attr:RPCRequest.promptCursor",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"browser-dependent",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:DynamicForm.encoding":{
        ref:"attr:DynamicForm.encoding",
        flags:"IRWA",
        description:"encoding for the form, use MULTIPART_ENCODING for file upload forms",
        name:"encoding",
        seeAlso:[
        ],
        valueType:"Encoding",
        defaultValue:"DynamicForm.NORMAL",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "method:ListGrid.getRowPageTop":{
        ref:"method:ListGrid.getRowPageTop",
        flags:"",
        description:" Returns the Y-coordinate for a given row number as a page-relative coordinate.  See\n ${isc.DocUtils.linkForRef('method:ListGrid.getRowTop')}.\n\n",
        name:"getRowPageTop",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"Y-coordinate",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "positioning"
        ]
    },
    "method:Tree.isLoaded":{
        ref:"method:Tree.isLoaded",
        flags:"",
        description:" For a databound tree, has this folder either already loaded its children or is it in the\n process of loading them.\n\n",
        name:"isLoaded",
        seeAlso:[
        ],
        params:[
            {
                description:"folder in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"folder is loaded or is currently loading",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "loadState"
        ]
    },
    "attr:DataBoundComponent.dragTrackerStyle":{
        ref:"attr:DataBoundComponent.dragTrackerStyle",
        flags:"IRW",
        description:"CSS Style to apply to the drag tracker when dragging occurs on this component.",
        name:"dragTrackerStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"gridDragTracker\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "method:WebService.getSchema":{
        ref:"method:WebService.getSchema",
        flags:"",
        description:" Get the schema definition of any complexType or element of complexType defined in any\n &lt;schema&gt; blocks in the WSDL file this WebService represents.\n \n",
        name:"getSchema",
        seeAlso:[
        ],
        params:[
            {
                description:"name of type or element",
                optional:false,
                name:"schemaName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"optional type of schema to return, either \"element\" for                              xs:element definitions only or \"type\" for xs:complexType\n                              definitions.  If unspecified, either will be returned,\n                              with types preferred if names collide",
                optional:true,
                name:"schemaType",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"requested schema",
            type:"DataSource"
        },
        type:"method",
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "attr:PickList.showAllOptions":{
        ref:"attr:PickList.showAllOptions",
        flags:"IR",
        description:"If true, even non-matching options will be shown, with configurable \n ${isc.DocUtils.linkForRef('attr:PickList.separatorRows','separator rows')} in between.  Not valid for\n ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource','databound pickLists')}.",
        name:"showAllOptions",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:ListGrid.groupIndentSize":{
        ref:"attr:ListGrid.groupIndentSize",
        flags:"IRW",
        description:"Default number of pixels by which to indent subgroups relative to parent group.",
        name:"groupIndentSize",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            },
            {
                ref:"method:ListGrid.getGroupNodeHTML",
                description:null
            }
        ],
        valueType:"Number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:SummaryBuilder.fireOnClose":{
        ref:"method:SummaryBuilder.fireOnClose",
        flags:"A",
        description:" Override to execute a callback function when the Format is Cancelled or Saved.\n \n",
        name:"fireOnClose",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "type:SCImgURL":{
        ref:"type:SCImgURL",
        description:"Properties that refer to images by URL, such as ${isc.DocUtils.linkForRef('attr:Img.src')} and ${isc.DocUtils.linkForRef('attr:Button.icon')}, are\n specially interpreted in SmartClient to allow for simpler and more uniform image URLs,\n and to allow applications to be restructured more easily.\n <P>\n <b>the application image directory</b>\n <P>\n When specifying URLs to image files via SmartClient component properties such as\n ${isc.DocUtils.linkForRef('attr:StretchImg.src')}, any relative path is assumed to be relative to the \"application image\n directory\" (<code>appImgDir</code>).  The application image directory can be set via\n ${isc.DocUtils.linkForRef('classMethod:Page.setAppImgDir')}, and defaults to \"images/\", representing the typical practice of\n placing images in a subdirectory relative to the URL at which the application is accessed.\n <P>\n For applications that may be launched from multiple URLs, the <code>appImgDir</code> can be\n set to the correct relative path to the image directory by calling\n ${isc.DocUtils.linkForRef('classMethod:Page.setAppImgDir')} before any SmartClient components are created.  This enables\n applications or components of an application to be launched from multiple locations, or to\n be relocated, without changing any image URLs supplied to SmartClient components.\n <P>\n <b>the \"[SKIN]\" URL prefix</b>\n <P>\n The special prefix \"[SKIN]\" can be used to refer to images within the skin folder\n whenever image URLs are supplied to SmartClient components.\n <P>\n The value of \"[SKIN]\" is the combination of:\n <ul>\n <li> the \"skin directory\", established in <code>load_skin.js</code> via ${isc.DocUtils.linkForRef('classMethod:Page.setSkinDir')},\n plus..\n <li> the setting for ${isc.DocUtils.linkForRef('attr:Canvas.skinImgDir','skinImgDir')} on the component where you set an\n image URL property\n </ul>\n <code>skinImgDir</code> defaults to \"images/\", so creating an ${isc.DocUtils.linkForRef('class:Img')} component with\n ${isc.DocUtils.linkForRef('attr:Img.src')} set to \"[SKIN]myButton/button.gif\" will expand to <code>Page.getSkinDir() +\n \"/images/myButton/button.gif\"</code>.\n <P>\n Some components that use a large number of images use <code>skinImgDir</code> to group them\n together and make it possible to relocate all the media for the component with a single setting.\n For example, the ${isc.DocUtils.linkForRef('class:TreeGrid')} class sets <code>skinImgDir</code> to \"images/TreeGrid/\".\n This allows ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} to be set to just \"[SKIN]folder.gif\" but refer to\n <code>Page.getSkinDir() + \"/images/TreeGrid/folder.gif\"</code>.\n <P>\n A custom subclass of TreeGrid can set <code>skinImgDir</code> to a different path, such as\n \"/images/MyTreeGrid\", to source all media from a different location.\n <P>\n TIPS:\n <ul>\n <li> subcomponents may not share the parent component's setting for skinImgDir.  For\n example, the ${isc.DocUtils.linkForRef('attr:Window.minimizeButton')} has the default setting for \"skinImgDir\"\n (\"images/\"), so the ${isc.DocUtils.linkForRef('attr:Img.src','src')} property used with this component is set to\n \"[SKIN]/Window/minimize.png\" (in the \"SmartClient\" sample skin).\n <li> for a particular image, the skinImgDir setting on the component may not be\n convenient.  The prefix \"[SKINIMG]\" can be used to refer to <code>Page.getSkinDir() +\n \"/images\"</code> regardless of the setting for <code>skinImgDir</code>\n </ul>\n <B>Stateful image URLs</B>\n <P>\n Many image URLs in SmartClient are \"stateful\", meaning that the actual URL used to fetch an\n image will vary according to the component's state (eg, \"Disabled\"), generally, by adding a\n suffix to the image URL.  See the ${isc.DocUtils.linkForRef('group:skinning','Skinning Overview')} for more\n information on statefulness and the ${isc.DocUtils.linkForRef('attr:Img.src')} documentation for information on how\n stateful image URLs are formed.",
        name:"SCImgURL",
        seeAlso:[
        ],
        type:"type"
    },
    "group:excelPasting":{
        ref:"group:excelPasting",
        title:"Copy and Paste with Excel",
        refs:[
        ],
        description:"${isc.DocUtils.linkForRef('method:DataSource.recordsAsText')} can export a set of DataSource records in\n tab-separated-values format so that it can be copied and pasted into a Microsoft Excel\n spreadsheet.\n <P>\n However, be aware that Excel does a bunch of type guessing on pasted data:\n <ul>\n <li> values that look like dates (eg 1-2-2011 and even just 1-2) will become true date-valued\n      cells (as indicated by Excel rendering them as eg 2-Jan).  Note that the month-day-year\n      interpretation is <b>locale-dependent</b> so be sure text is exported\n <li> values that look numeric, eg \"5.0\" become true number values (as indicated by Excel\n      showing just \"5\")\n <li> values that look like times, eg \"5:30\", will be converted to times (as indicated by\n      Excel showing 5:30:00 AM when editing the value)\n <li> values with a leading \"=\" will be treated as formulas\n </ul>\n Unfortunately, when these behaviors are undesirable, there is no means of turning them off\n that doesn't have any drawbacks.  You can:\n <ul>\n <li> adding a leading space or other char (but this changes the cell value).\n <li> turning the cell into a trivial formula, eg =\"literal value\".  But this means that when\n     the cell is edited, it's value is a formula.\n <li> format the cells as text in Excel before pasting data onto them\n </ul>\n The first or second approach can be enabled when exporting text - see\n ${isc.DocUtils.linkForRef('method:DataSource.recordsAsText')} and ${isc.DocUtils.linkForRef('method:DataSourceField.exportForceText')}.",
        name:"excelPasting",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:DataSource.canFlattenCriteria":{
        ref:"classMethod:DataSource.canFlattenCriteria",
        flags:"",
        description:" Returns true if calling ${isc.DocUtils.linkForRef('classMethod:DataSource.flattenCriteria')} on the passed criteria would produce\n logically equivalent criteria.\n\n",
        name:"canFlattenCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"the AdvancedCriteria to check for flatness",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        returns:{
            description:"true if criteria can be flattened without logical change",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:DataSource.cacheMaxAge":{
        ref:"attr:DataSource.cacheMaxAge",
        flags:"IRW",
        description:"The maximum time, in seconds, to maintain the client-side cache.  If a fetch occurs after\n the cacheMaxAge has expired, the current cache will be dropped and another complete\n cache fetched.",
        name:"cacheMaxAge",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"60",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:ListGrid.animateFolderTime":{
        ref:"attr:ListGrid.animateFolderTime",
        flags:"IRW",
        description:"When animating folder opening / closing, if ${isc.DocUtils.linkForRef('attr:TreeGrid.animateFolderSpeed')} is not\n set, this property designates the duration of the animation in ms.\n <P>\n For a ListGrid, this property applies when ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grouping')} is enabled.",
        name:"animateFolderTime",
        seeAlso:[
            {
                ref:"attr:ListGrid.animateFolderSpeed",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "animation"
        ]
    },
    "attr:Menu.checkmarkImage":{
        ref:"attr:Menu.checkmarkImage",
        flags:"IR",
        description:"Default image to display for checkmarked items. See ${isc.DocUtils.linkForRef('object:ImgProperties')} for format.\n Valid src, width and height must be specified.",
        name:"checkmarkImage",
        seeAlso:[
        ],
        valueType:"Img Properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:Menu"
    },
    "group:layoutMember":{
        ref:"group:layoutMember",
        refs:[
            "method:Canvas.setShowResizeBar",
            "method:Layout.getMemberOffset",
            "method:Layout.getMemberDefaultBreadth",
            "attr:Canvas.canDropBefore",
            "attr:Layout.defaultLayoutAlign",
            "attr:Layout.memberOverlap",
            "attr:Canvas.layoutAlign",
            "attr:Canvas.showResizeBar",
            "attr:Canvas.resizeBarTarget",
            "attr:Canvas.extraSpace",
            "attr:SectionStackSection.canDropBefore",
            "attr:SectionStack.itemIndent",
            "attr:SectionStack.itemStartIndent",
            "attr:SectionStack.itemEndIndent"
        ],
        description:"Properties that can be set on members of a layout to control how the layout is done",
        name:"layoutMember",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormulaBuilder.valuePrefix":{
        ref:"attr:FormulaBuilder.valuePrefix",
        flags:"IR",
        description:"The prefix to apply to the variable that is inserted in response to a record click in the\n grid that shows the list of available fields.",
        name:"valuePrefix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:FormItem.implicitSave":{
        ref:"attr:FormItem.implicitSave",
        flags:"IRW",
        description:"When true, indicates that changes to this item will cause an automatic save on a \n ${isc.DocUtils.linkForRef('attr:DynamicForm.implicitSaveDelay','delay')}, as well as when the entire form is\n submitted.  Unless implicitSaveOnBlur is set to false on either this \n ${isc.DocUtils.linkForRef('attr:FormItem.implicitSaveOnBlur','formItem')} or it's  \n ${isc.DocUtils.linkForRef('attr:DynamicForm.implicitSaveOnBlur','form')} changes will also be automatically saved on \n editorExit.",
        name:"implicitSave",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:DataBoundComponent.hiliteIconRightPadding":{
        ref:"attr:DataBoundComponent.hiliteIconRightPadding",
        flags:"IRW",
        description:"How much padding should there be on the right of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons','hilite icons')} by default?\n Can be overridden at the field level",
        name:"hiliteIconRightPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "object:StretchItem":{
        methods:[
        ],
        ref:"object:StretchItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:StretchItem.width",
            "attr:StretchItem.height",
            "attr:StretchItem.name",
            "attr:StretchItem.src"
        ],
        description:"An object representing one of the image segments displayed by a ${isc.DocUtils.linkForRef('class:StretchImg')}. Each item of\n a StretchImg's ${isc.DocUtils.linkForRef('attr:StretchImg.items','items')} array is a StretchItem.",
        name:"StretchItem",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:DataSourceField.includeVia":{
        ref:"attr:DataSourceField.includeVia",
        flags:"IR",
        description:"For a field that uses ${isc.DocUtils.linkForRef('attr:DataSourceField.includeFrom')}, specifies which\n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} field should be used to find records in the\n related DataSource.\n <p>\n <code>includeVia</code> only needs to be set when you have more than one\n <code>foreignKey</code> to the <i>same</i> related DataSource.  If you have multiple\n foreignKeys to multiple <i>different</i> DataSources, there is no need to set\n <code>includeVia</code>.\n <p>\n For example, perhaps you have a DataSource \"moneyTransfer\" where each record represents a\n money transfer, where the source and payment currencies are different, and the list of\n currencies is stored in a related DataSource \"currency\".  Each \"moneyTransfer\" record is\n linked to <b>2</b> \"currency\" records, through two different foreignKey fields,\n \"sourceCurrencyId\" and \"paymentCurrencyId\".\n <p>\n The following declarations would be required to use <code>includeFrom</code> to get a\n include the field \"currencySymbol\" from each of the two related \"currency\" records.\n <pre>\n   &lt;field name=\"sourceCurrencyId\" foreignKey=\"currency.id\"/&gt;\n   &lt;field name=\"paymentCurrencyId\" foreignKey=\"currency.id\"/&gt;\n   &lt;field name=\"sourceCurrencySymbol\" includeFrom=\"currency.currencySymbol\" includeVia=\"sourceCurrencyId\"/&gt;\n   &lt;field name=\"paymentCurrencySymbol\" includeFrom=\"currency.currencySymbol\" includeVia=\"paymentCurrencyId\"/&gt;\n </pre>\n <p>\n <h3>SQL Templating and <code>includeVia</code></h3>\n <p>\n The <code>includeVia</code> feature uses SQL table aliases in the generated SQL when generating multiple SQL joins \n to the same SQL table.  When using ${isc.DocUtils.linkForRef('group:customQuerying','SQL Templating')}, it's sometimes necessary to know \n the names of the aliases in the generated SQL.  The table alias used can be configured via\n setting ${isc.DocUtils.linkForRef('attr:DataSourceField.relatedTableAlias')} on the <code>foreignKey</code> field, for\n example, using the declarations below, aliases \"source\" and \"payment\" would be used for the\n two \"currency\" tables.\n <pre>\n   &lt;field name=\"sourceCurrencyId\" foreignKey=\"currency.id\" relatedTableAlias=\"source\"/&gt;\n   &lt;field name=\"paymentCurrencyId\" foreignKey=\"currency.id\" relatedTableAlias=\"payment\"/&gt;\n   &lt;field name=\"sourceCurrencySymbol\" includeFrom=\"currency.currencySymbol\" includeVia=\"sourceCurrencyId\"/&gt;\n   &lt;field name=\"paymentCurrencySymbol\" includeFrom=\"currency.currencySymbol\" includeVia=\"paymentCurrencyId\"/&gt;\n </pre>\n <p>\n <h3>Multiple indirection and <code>relatedTableAlias</code></h3>\n <p>\n Sometimes you may have two <code>includeFrom</code> fields that include a field which is itself included from \n another DataSource, for example:\n <pre>\n   &lt;field name=\"sourceCurId\" nativeName=\"sourceCurrencyId\" foreignKey=\"currency.id\" relatedTableAlias=\"source\"/&gt;\n   &lt;field name=\"sourceCurrencySymbol\" includeFrom=\"currency.currencySymbol\" includeVia=\"sourceCurId\"/&gt;\n   &lt;field name=\"sourceCurrencyGroup\" includeFrom=\"currency.groupName\" includeVia=\"sourceCurId\"/&gt;\n   &lt;field name=\"paymentCurId\" nativeName=\"paymentCurrencyId\" foreignKey=\"currency.id\" relatedTableAlias=\"payment\"/&gt;\n   &lt;field name=\"paymentCurrencySymbol\" includeFrom=\"currency.currencySymbol\" includeVia=\"paymentCurId\"/&gt;\n   &lt;field name=\"paymentCurrencyGroup\" includeFrom=\"currency.groupName\" includeVia=\"paymentCurId\"/&gt;\n </pre>\n .. where the \"currency\" DataSource used above is related to the \"currencyGroup\" DataSource via fields:\n <pre>\n   &lt;field name=\"groupId\" type=\"integer\" foreignKey=\"currencyGroup.id\" relatedTableAlias=\"group\"/&gt;\n   &lt;field name=\"groupName\" type=\"text\" includeFrom=\"currencyGroup.groupName\"/&gt;\n </pre>\n Fields \"sourceCurrencyGroup\" and \"paymentCurrencyGroup\" include a field that is itself an included field.\n In this case \"currencyGroup\" table will be referenced two times, and its <code>relatedTableAlias</code> defined in \n \"currency\" DataSource will be prefixed with the <code>includeVia</code> value to make\n aliases unique in generated SQL: \"sourceCurId_group\" and \"paymentCurId_group\".\n <p>\n The same aliases would be used if \"sourceCurrencyGroup\" and \"paymentCurrencyGroup\" fields\n were to include \"currencyGroup.groupName\" <i>indirectly</i>:\n <pre>\n   &lt;field name=\"sourceCurrencyGroup\" includeFrom=\"currency.currencyGroup.groupName\" includeVia=\"sourceCurId\"/&gt;\n   &lt;field name=\"paymentCurrencyGroup\" includeFrom=\"currency.currencyGroup.groupName\" includeVia=\"paymentCurId\"/&gt;\n </pre>\n <p>\n This works the same for more complex relationships.  If we add a \"moneyTransferDetail\"\n DataSource to the sample above which has multiple references to \"moneyTransfer\" \n DataSource and would include fields from \"currency\" and \"currencyGroup\" DataSources:\n <pre>\n   &lt;field name=\"mtId\" nativeName=\"moneyTransferId\" type=\"integer\" foreignKey=\"moneyTransfer.id\" relatedTableAlias=\"main\" /&gt;\n   &lt;field name=\"mainTransferName\" includeFrom=\"moneyTransfer.name\" includeVia=\"mtId\" /&gt;\n   &lt;field name=\"mainSourceSymbol\" includeFrom=\"moneyTransfer.sourceCurrencySymbol\" includeVia=\"mtId\" /&gt;\n   &lt;field name=\"mainSourceGroup\" includeFrom=\"moneyTransfer.sourceCurrencyGroup\" includeVia=\"mtId\" /&gt;\n   &lt;field name=\"mainPaymentSymbol\" includeFrom=\"moneyTransfer.paymentCurrencySymbol\" includeVia=\"mtId\" /&gt;\n   &lt;field name=\"mainPaymentGroup\" includeFrom=\"moneyTransfer.paymentCurrencyGroup\" includeVia=\"mtId\" /&gt;\n   &lt;field name=\"mtPrevId\" nativeName=\"moneyTransferPreviousId\" type=\"integer\" foreignKey=\"moneyTransfer.id\" relatedTableAlias=\"prev\" /&gt;\n   &lt;field name=\"previousTransferName\" includeFrom=\"moneyTransfer.name\" includeVia=\"mtPrevId\" /&gt;\n   &lt;field name=\"previousSourceSymbol\" includeFrom=\"moneyTransfer.sourceCurrencySymbol\" includeVia=\"mtPrevId\" /&gt;\n   &lt;field name=\"previousSourceGroup\" includeFrom=\"moneyTransfer.sourceCurrencyGroup\" includeVia=\"mtPrevId\" /&gt;\n   &lt;field name=\"previousPaymentSymbol\" includeFrom=\"moneyTransfer.paymentCurrencySymbol\" includeVia=\"mtPrevId\" /&gt;\n   &lt;field name=\"previousPaymentGroup\" includeFrom=\"moneyTransfer.paymentCurrencyGroup\" includeVia=\"mtPrevId\" /&gt;\n </pre>\n In this scenario the \"currencyGroup\" table will be joined 4 times - for all main/prev transfer\n and payment/source currency combinations.  So, aliases will be prefixed with both\n intermediate <code>includeVia</code> values: \"mtId_sourceCurId_group\",\n \"mtId_paymentCurId_group\", \"mtPrevId_sourceCurId_group\", \"mtPrevId_paymentCurId_group\".\n <p>\n It is also allowed to specify a series of FK fields in <code>includeVia</code>, for example\n \"moneyTransferDetail\" could declare:\n <pre>\n   &lt;field name=\"mainSourceCurrencyGroup\" includeFrom=\"moneyTransfer.currency.currencyGroup.groupName\" includeVia=\"mtId.sourceCurId\"/&gt;\n   &lt;field name=\"mainPaymentCurrencyGroup\" includeFrom=\"moneyTransfer.currency.currencyGroup.groupName\" includeVia=\"mtId.paymentCurId\"/&gt;\n </pre>\n In this case the prefix used for table aliases will be the <code>includeVia</code> value\n with \"_\" substituted for \".\", so the table aliases will be \"mtId_sourceCurId_group\" and \"mtId_paymentCurId_group\".\n <p>\n <b>Note</b> that if ${isc.DocUtils.linkForRef('attr:DataSourceField.relatedTableAlias','related table alias')} is not\n specified, then we don't make any guarantees what alias will be generated.\n <p>\n <b>Note</b> that Oracle has a limit of 30 characters on identifier names.  We limit table\n aliases to 30 characters <b>all databases</b> despite actual database in use to support\n portability across databases.  If the generated table alias would exceed 30 chars, \n we instead use a generated and unpredictable value like \"a123\".  To avoid hitting this limit\n for the advanced cases discussed above:\n <ul>\n <li> use relatively short strings for <code>relatedTableAlias</code>\n <li> for rare, multi-step inclusion scenarios where multiple field names are used as a\n      prefix, if field names are very long in order to match database column names, you can\n      use a shorter field name and use ${isc.DocUtils.linkForRef('attr:DataSourceField.nativeName')} to specify the\n      underlying column name (this is demonstrated in samples above - note field \"mtPrevId\")\n </ul>",
        name:"includeVia",
        seeAlso:[
            {
                ref:"attr:DataSourceField.relatedTableAlias",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sqlIncludeVia')}"
        ],
        serverDS:"only",
        definingClass:"class:DataSourceField"
    },
    "attr:FormItem.showErrorStyle":{
        ref:"attr:FormItem.showErrorStyle",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorIcons','showErrorIcons')}, \n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorText','showErrorText')}, and\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showErrorStyle','showErrorStyle')} control how validation errors are\n displayed when they are displayed inline in the form (next to the form item where there\n is a validation error).  To instead display all errors at the top of the form, set\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors','showInlineErrors')}:false.\n <P>\n <code>showErrorIcons</code>, <code>showErrorText</code> and <code>showErrorStyle</code>\n are all boolean properties, and can be set on a DynamicForm to control the behavior\n form-wide, or set on individual FormItems.  \n <P>\n The HTML displayed next to a form item with errors is generated by \n ${isc.DocUtils.linkForRef('method:FormItem.getErrorHTML')}.\n The default implementation of that method respects <code>showErrorIcons</code> and\n <code>showErrorText</code> as follows:\n <P>\n <code>showErrorIcons</code>, or <code>showErrorIcon</code> at the FormItem level controls\n whether an error icon should appear next to fields which have validation errors.  The icon's\n appearance is governed by ${isc.DocUtils.linkForRef('attr:FormItem.errorIconSrc')}, ${isc.DocUtils.linkForRef('attr:FormItem.errorIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorIconHeight')}\n <P>\n <code>showErrorText</code> determines whether the text of the validation error should be\n displayed next to fields which have validation errors. The attribute\n ${isc.DocUtils.linkForRef('attr:DynamicForm.showTitlesWithErrorMessages')} may be set to prefix error messages with the \n form item's title + <code>\":\"</code> (may be desired if the item has \n ${isc.DocUtils.linkForRef('attr:FormItem.showTitle')} set to false).\n <P>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.errorOrientation')} controls where the error HTML should appear relative \n to form items. Therefore the combination of ${isc.DocUtils.linkForRef('attr:FormItem.showErrorText')}<code>:false</code> and\n ${isc.DocUtils.linkForRef('attr:FormItem.errorOrientation')}<code>:\"left\"</code> creates a compact validation error display\n consisting of just an icon, to the left of the item with the error message\n available via a hover (similar appearance to ListGrid validation error display).  \n <P>\n In addition to this, <code>showErrorStyle</code> determines whether fields  with validation\n errors should have special styling applied to them. See ${isc.DocUtils.linkForRef('type:FormItemBaseStyle')} for a \n discussion for how error styling is calculated.",
        name:"showErrorStyle",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "validation",
            "appearance"
        ]
    },
    "attr:StretchImg.items":{
        ref:"attr:StretchImg.items",
        flags:"IRW",
        description:"The list of images to display as an array of objects specifying the image names and\n sizes.\n <P>\n The ${isc.DocUtils.linkForRef('attr:StretchItem.name','name')} is appended as a suffix to the ${isc.DocUtils.linkForRef('attr:StretchImg.src')} URL in order\n to fetch separate media files for each image. Alternatively a StretchItem may specify\n its own ${isc.DocUtils.linkForRef('attr:StretchItem.src','src')}.\n <P>\n The ${isc.DocUtils.linkForRef('attr:StretchItem.height','height')} and ${isc.DocUtils.linkForRef('attr:StretchItem.width','width')} can be set to a number,\n \"*\" (remaining space, divided amongst all images that specify \"*\") or to the name of a\n property on this StretchImg component, such as \"capSize\" for the ${isc.DocUtils.linkForRef('attr:StretchImg.capSize')}.\n <P>\n Height or width is only used for the axis along which images are stacked.  For example, if\n ${isc.DocUtils.linkForRef('attr:StretchImg.vertical')} is true, images stack vertically and heights are used to size images on\n the vertical axis, but all images will have width matching the overall component size.\n <P>\n For example, the default setting for <code>items</code>, which is used to produce\n stretchable buttons and headers with fixed-size endcaps, is as follows:\n <smartclient><pre>\n   items:[\n        {height:\"capSize\", name:\"start\", width:\"capSize\"},\n        {height:\"*\", name:\"stretch\", width:\"*\"},\n        {height:\"capSize\", name:\"end\", width:\"capSize\"}\n   ]\n </pre></smartclient><smartgwt><pre>\n   new StretchItem[] {\n       new StretchItem(\"start\", \"capSize\", \"capSize\"),\n       new StretchItem(\"stretch\", \"*\", \"*\"),\n       new StretchItem(\"end\", \"capSize\", \"capSize\")\n   };\n </pre></smartgwt>\n Note that by default horizontal StretchImg instances will always render their items\n in left-to-right order, even if the page is localized for right-to-left display\n (see ${isc.DocUtils.linkForRef('classMethod:Page.isRTL')}). This default behavior may be overridden by setting the\n ${isc.DocUtils.linkForRef('attr:StretchImg.ignoreRTL')} flag to false.",
        name:"items",
        setter:[
            "setItems"
        ],
        seeAlso:[
        ],
        valueType:"Array of StretchItem",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "appearance"
        ]
    },
    "type:GroupStartOpen":{
        ref:"type:GroupStartOpen",
        values:[
            {
                description:"open all groups",
                value:"\"all\""
            },
            {
                description:"open the first group",
                value:"\"first\""
            },
            {
                description:"start with all groups closed",
                value:"\"none\""
            }
        ],
        description:"Possible values for the state of ListGrid groups when groupBy is called",
        name:"GroupStartOpen",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ToolStrip.vertical":{
        ref:"attr:ToolStrip.vertical",
        flags:"IR",
        description:"Indicates whether the components are drawn horizontally from left to right (false), or\n vertically from top to bottom (true).",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ToolStrip",
        groups:[
            "appearance"
        ]
    },
    "object:DSRequestModifier":{
        methods:[
        ],
        ref:"object:DSRequestModifier",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
            "attr:DSRequestModifier.fieldName",
            "attr:DSRequestModifier.operator",
            "attr:DSRequestModifier.value",
            "attr:DSRequestModifier.start",
            "attr:DSRequestModifier.end"
        ],
        description:"<b>Some elements of this feature are only available with Power or better licenses.</b> See \n <a href=http://smartclient.com/product>smartclient.com/product</a> for details.\n <p>\n An object that modifies a dsRequest based on several available \n values, including preceding responses from the same queue. You provide a list of \n DSRequestModifiers as the ${isc.DocUtils.linkForRef('attr:OperationBinding.criteria')} or ${isc.DocUtils.linkForRef('attr:OperationBinding.values')}\n of an ${isc.DocUtils.linkForRef('class:OperationBinding')}.\n <P>\n A DSRequestModifier consists of a ${isc.DocUtils.linkForRef('attr:DSRequestModifier.fieldName','fieldName')}, usually a\n ${isc.DocUtils.linkForRef('attr:DSRequestModifier.value','value')} and possibly an ${isc.DocUtils.linkForRef('attr:DSRequestModifier.operator','operator')}\n and ${isc.DocUtils.linkForRef('attr:DSRequestModifier.start','start')} and/or ${isc.DocUtils.linkForRef('attr:DSRequestModifier.end','end')} values \n (applicable to advanced criteria only).  The value, start and end settings can be static, or - \n with Power or better licenses - they can be expressions in the Velocity template language, \n which will be resolved at runtime, immediately before the DSRequest is executed.",
        name:"DSRequestModifier",
        seeAlso:[
        ],
        type:"object",
        serverDS:"only"
    },
    "method:DynamicForm.addFieldErrors":{
        ref:"method:DynamicForm.addFieldErrors",
        flags:"",
        description:" Adds field validation error[s] to the specified field. Errors passed in will be added\n to any existing errors on the field caused by validation or a previous call to this method.\n <br>\n The errors parameter may be passed in as a string (a single error message), or an array of\n strings.<br>\n The showErrors parameter allows the errors to be displayed immediately. Alternatively, call\n ${isc.DocUtils.linkForRef('method:DynamicForm.showFieldErrors')} to display the errors for this field.\n",
        name:"addFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"field to apply the new errors to",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"errors to apply to the field in question",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"string | array of strings"
            },
            {
                description:"If true this method will fall through to ${isc.DocUtils.linkForRef('method:DynamicForm.showFieldErrors')}  to update the display",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "method:DrawSector.getCenter":{
        ref:"method:DrawSector.getCenter",
        flags:"",
        description:" Returns the sector's ${isc.DocUtils.linkForRef('attr:DrawSector.centerPoint','centerPoint')}.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the current centerPoint",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawSector"
    },
    "attr:FormItem.disableIconsOnReadOnly":{
        ref:"attr:FormItem.disableIconsOnReadOnly",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} is set to false, should ${isc.DocUtils.linkForRef('attr:FormItem.icons','icons')} be disabled\n by default?\n <P>\n This may also be specified at the icon level. See ${isc.DocUtils.linkForRef('attr:FormItemIcon.disableOnReadOnly')}.",
        name:"disableIconsOnReadOnly",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:ComboBoxItem.defaultValue":{
        ref:"attr:ComboBoxItem.defaultValue",
        flags:"IRW",
        description:"Static default value for this ComboBoxItem. To default to the first option use\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.defaultToFirstOption')} instead.",
        name:"defaultValue",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:FacetChart.pointClick":{
        ref:"method:FacetChart.pointClick",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:FacetChart.showDataPoints')} is true, fires when a point is clicked on.\n\n",
        name:"pointClick",
        seeAlso:[
        ],
        params:[
            {
                description:"the value at the point",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float"
            },
            {
                description:"the record at the point",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:HeaderSpan.headerTitleStyle":{
        ref:"attr:HeaderSpan.headerTitleStyle",
        flags:"IRW",
        description:"Custom titleStyle to apply to the header button created for this span instead of\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerTitleStyle')}.\n <p>\n Note that this will typically only have an effect if\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonConstructor')} is set to ${isc.DocUtils.linkForRef('class:StretchImgButton')} or a subclass\n thereof.",
        name:"headerTitleStyle",
        seeAlso:[
            {
                ref:"attr:HeaderSpan.headerBaseStyle",
                description:null
            }
        ],
        valueType:"CSSClass",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "appearance"
        ]
    },
    "classMethod:Class.logIsDebugEnabled":{
        ref:"classMethod:Class.logIsDebugEnabled",
        flags:"",
        description:" Check whether a message logged at \"debug\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsDebugEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:DataBoundComponent.hiliteIconSize":{
        ref:"attr:DataBoundComponent.hiliteIconSize",
        flags:"IRW",
        description:"Default width and height of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIcons','hilite icons')} for this component.\n Can be overridden at the component level via explicit \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconWidth','hiliteIconWidth')} and\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconHeight','hiliteIconHeight')}, or at the field level via \n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconSize','hiliteIconSize')},\n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconWidth','hiliteIconWidth')} and \n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconHeight','hiliteIconHeight')}",
        name:"hiliteIconSize",
        seeAlso:[
            {
                ref:"attr:DataBoundComponent.hiliteIconWidth",
                description:null
            },
            {
                ref:"attr:DataBoundComponent.hiliteIconHeight",
                description:null
            },
            {
                ref:"attr:ListGridField.hiliteIconSize",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"12",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListGrid.showHeaderSpanTitlesInHiliteEditor":{
        ref:"attr:ListGrid.showHeaderSpanTitlesInHiliteEditor",
        flags:"IRW",
        description:"If this grid has specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans')}, should field titles be\n prefixed with the titles of the headerSpans in which they are contained when\n using the ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites','hilite editor')}.",
        name:"showHeaderSpanTitlesInHiliteEditor",
        seeAlso:[
            {
                ref:"attr:ListGrid.hiliteEditorSpanTitleSeparator",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.focusInRow":{
        ref:"method:ListGrid.focusInRow",
        flags:"",
        description:" Puts keyboard focus into the specified row, showing a highlighted (roll-over style)\n appearance, and ensuring that arrow-key navigation will start from the specified row.\n <P>\n Only applies where ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is false.\n",
        name:"focusInRow",
        seeAlso:[
            {
                ref:"method:ListGrid.focusInCell",
                description:null
            }
        ],
        params:[
            {
                description:"Index of target row",
                optional:false,
                name:"row",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.setAlternateBodyStyleName":{
        ref:"method:ListGrid.setAlternateBodyStyleName",
        flags:"",
        description:" Update the ${isc.DocUtils.linkForRef('attr:ListGrid.alternateBodyStyleName','alternateBodyStyleName')} for this listGrid.\n",
        name:"setAlternateBodyStyleName",
        seeAlso:[
        ],
        params:[
            {
                description:"new body style name when showing alternateRecordStyles",
                optional:false,
                name:"styleName",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:CanvasItem.applyPromptToCanvas":{
        ref:"attr:CanvasItem.applyPromptToCanvas",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.prompt')} is specified for this item, should the prompt be applied to the\n ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')} for this item?",
        name:"applyPromptToCanvas",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "attr:DrawItem.knobs":{
        ref:"attr:DrawItem.knobs",
        flags:"IR",
        description:"Array of control knobs to display for this item. Each ${isc.DocUtils.linkForRef('type:KnobType')} specified in this\n will turn on UI element(s) allowing the user to manipulate this drawItem.  To update the\n set of knobs at runtime use ${isc.DocUtils.linkForRef('method:DrawItem.showKnobs')} and ${isc.DocUtils.linkForRef('method:DrawItem.hideKnobs')}.\n <p>\n <b>NOTE:</b> Unless otherwise documented, DrawItem types only support\n <smartclient>\"resize\" and \"move\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.KnobType#RESIZE} and {@link com.smartgwt.client.types.KnobType#MOVE}</smartgwt>\n knobs.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawItem"
    },
    "attr:DateItem.pickerTimeItemProperties":{
        ref:"attr:DateItem.pickerTimeItemProperties",
        flags:"IRWA",
        description:"A set of properties to apply to the ${isc.DocUtils.linkForRef('class:TimeItem')} displayed in the picker when\n ${isc.DocUtils.linkForRef('attr:DateItem.showPickerTimeItem')} is true.\n <P>\n Has no effect for fields of type <code>\"date\"</code>.",
        name:"pickerTimeItemProperties",
        seeAlso:[
        ],
        valueType:"TimeItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "classAttr:GroupingMessages.byMillisecondsTitle":{
        ref:"classAttr:GroupingMessages.byMillisecondsTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a time field by milliseconds.",
        name:"byMillisecondsTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Milliseconds\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:IconButton.menuIconSrc":{
        ref:"attr:IconButton.menuIconSrc",
        flags:"IRW",
        description:"Base URL for an Image that shows a ${isc.DocUtils.linkForRef('class:Menu','menu')} when clicked.  See also \n ${isc.DocUtils.linkForRef('attr:IconButton.showMenuIconDisabled')} and ${isc.DocUtils.linkForRef('attr:IconButton.showMenuIconOver')}.",
        name:"menuIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKINIMG]/Menu/submenu_down.png\"",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "method:RestDataSource.transformResponse":{
        ref:"method:RestDataSource.transformResponse",
        flags:"",
        description:" RestDataSource implements transformResponse in order to extract data and meta-data\n properties from server responses, as described in the \n ${isc.DocUtils.linkForRef('class:RestDataSource','RestDataSource overview')}.\n <P>\n You can override <code>transformResponse()</code> in order to further modify the\n response, but if you do so, call ${isc.DocUtils.linkForRef('method:Class.Super','Super()')} as shown below or you will\n wipe out the built-in response processing behavior of RestDataSource.\n <pre>\n transformResponse : function (dsResponse, dsRequest, data) {        \n     var dsResponse = this.Super(\"transformResponse\", arguments);\n     // ... do something to dsResponse ...\n     return dsResponse;\n }\n </pre> \n",
        name:"transformResponse",
        seeAlso:[
        ],
        params:[
            {
                description:"default DSResponse derived from the response data",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            },
            {
                description:"DSRequest object that initiated this request",
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"XML document or JSON objects returned by the web                                   service",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"XMLDocument or JSON"
            }
        ],
        returns:{
            description:"response derived",
            type:"DSResponse"
        },
        type:"method",
        definingClass:"class:RestDataSource"
    },
    "attr:CubeGrid.canEdit":{
        ref:"attr:CubeGrid.canEdit",
        flags:"IRW",
        description:"Whether cells can be edited in this grid.  Can be overridden on a per-facetValue basis.",
        name:"canEdit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "cellEditing"
        ]
    },
    "method:DataBoundComponent.findNextIndex":{
        ref:"method:DataBoundComponent.findNextIndex",
        flags:"",
        description:" This API is equivalent to ${isc.DocUtils.linkForRef('method:List.findNextIndex')} but searches for a matching record among already-loaded data only.  \n Use ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData')} to load data from the server.\n",
        name:"findNextIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"first index to consider",
                optional:false,
                name:"startIndex",
                defaultValue:null,
                type:"int"
            },
            {
                description:"AdvancedCriteria to use with",
                optional:false,
                name:"advancedCriteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:DateChooser.headerStyle":{
        ref:"attr:DateChooser.headerStyle",
        flags:"IRW",
        description:"CSS style applied to the day-of-week headers. By default this applies to all days of the \n week. To apply a separate style to weekend headers, set \n ${isc.DocUtils.linkForRef('attr:DateChooser.weekendHeaderStyle')}",
        name:"headerStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserButtonDisabled\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "type:TableMode":{
        ref:"type:TableMode",
        values:[
            {
                description:"The default mode which displays a list of rows",
                value:"TableView.PLAIN"
            },
            {
                description:"Grouped table is a set of rows embedded in a rounded rectangle",
                value:"TableView.GROUPED"
            }
        ],
        description:"Controls the display mode of TableView record display",
        name:"TableMode",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:DateChooser.nextMonthIconHeight":{
        ref:"attr:DateChooser.nextMonthIconHeight",
        flags:"IRW",
        description:"Height of the icon for the next month button",
        name:"nextMonthIconHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:ImgSectionHeader.setPrompt":{
        ref:"method:ImgSectionHeader.setPrompt",
        flags:"",
        description:" Sets the text shown as a tooltip for the header.\n",
        name:"setPrompt",
        seeAlso:[
        ],
        params:[
            {
                description:"the new tooltip",
                optional:false,
                name:"prompt",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ImgSectionHeader"
    },
    "method:SelectItem.getSelectedRecord":{
        ref:"method:SelectItem.getSelectedRecord",
        flags:"",
        description:" Get the record returned from the ${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource')} when ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')}\n is true, and the missing value is fetched.\n <P>\n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues')} kicks off the fetch when the form item is initialized\n with a non null value or when setValue() is called on the item. Note that this method\n will return null before the fetch completes, or if no record is found in the\n optionDataSource matching the underlying value.\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"selected record",
            type:"ListGridRecord"
        },
        type:"method",
        definingClass:"class:SelectItem",
        groups:[
            "display_values"
        ]
    },
    "method:TreeGrid.isOverExtraIcon":{
        ref:"method:TreeGrid.isOverExtraIcon",
        flags:"",
        description:" Returns true if the last event occurred over ${isc.DocUtils.linkForRef('method:TreeGrid.getExtraIcon','extra icon')}\n for the current node.\n <P>\n Returns false if the event did not occur over an extraIcon, or if no extraIcon is\n showing for the node in question.\n\n",
        name:"isOverExtraIcon",
        seeAlso:[
        ],
        returns:{
            description:"true if the user clicked the extra icon",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:ResultSet.resort":{
        ref:"method:ResultSet.resort",
        flags:"",
        description:" Forcibly resort this ResultSet by the current list of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n",
        name:"resort",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ResultSet"
    },
    "classAttr:Operators.regexpTitle":{
        ref:"classAttr:Operators.regexpTitle",
        flags:"IR",
        description:"Title for the \"regexp\" operator",
        name:"regexpTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"matches expression (exact case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:isA.nonemptyString":{
        ref:"classMethod:isA.nonemptyString",
        flags:"",
        description:"\n\tIs <code>object</code> a non-empty String?<br><br>\n\t\n",
        name:"nonemptyString",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a non-empty string",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "method:DataBoundComponent.editHilites":{
        ref:"method:DataBoundComponent.editHilites",
        flags:"",
        description:" Shows a ${isc.DocUtils.linkForRef('class:HiliteEditor','HiliteEditor')} interface allowing end-users to edit\n the data-hilites currently in use by this DataBoundComponent.\n\n",
        name:"editHilites",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "attr:SimpleTile.baseStyle":{
        ref:"attr:SimpleTile.baseStyle",
        flags:"IR",
        description:"CSS style for the tile as a whole.  As with ${isc.DocUtils.linkForRef('attr:StatefulCanvas.baseStyle')}, suffixes\n are appended to this style to represent various states (\"Over\", \"Selected\", etc).",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"\"simpleTile\"",
        type:"attr",
        definingClass:"class:SimpleTile"
    },
    "method:GridRenderer.cellIsEnabled":{
        ref:"method:GridRenderer.cellIsEnabled",
        flags:"A",
        description:" Whether this cell should be considered enabled.  Affects whether events will fire for the\n cell, and the default styling behavior in getCellStyle. \n\n",
        name:"cellIsEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether this record is enabled or not",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "selection",
            "appearance"
        ]
    },
    "attr:Layout.align":{
        ref:"attr:Layout.align",
        flags:"IRW",
        description:"Alignment of all members in this Layout on the length axis (vertical for a VLayout,\n horizontal for an HLayout).  Defaults to \"top\" for vertical Layouts, and \"left\" for\n horizontal Layouts.\n <P>\n For alignment on the breadth axis, see ${isc.DocUtils.linkForRef('attr:Layout.defaultLayoutAlign')} and\n ${isc.DocUtils.linkForRef('attr:Canvas.layoutAlign')}.\n <P>\n When attempting to center components be sure that you have set a specific size on the\n component(s) involved.  If components fill all available space in the layout, centering\n looks the same as not centering.\n <P>\n Similarly, if a component has no visible boundary (like a border), it can appear similar\n to when it's not centered if the component is larger than you expect - use the Watch tab\n in the Developer Console to see the component's extents visually.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment or VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('layoutCenterAlign')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "method:ListGrid.setGroupState":{
        ref:"method:ListGrid.setGroupState",
        flags:"",
        description:" Reset this grid's grouping to match the ${isc.DocUtils.linkForRef('type:ListGridGroupState')} object passed in.<br>\n Used to restore previous state retrieved from the grid by a call to\n ${isc.DocUtils.linkForRef('method:ListGrid.getGroupState')}.\n\n",
        name:"setGroupState",
        seeAlso:[
            {
                ref:"method:ListGrid.getGroupState",
                description:null
            }
        ],
        params:[
            {
                description:"Object describing the desired grouping state of                                              the grid",
                optional:false,
                name:"groupState",
                defaultValue:null,
                type:"ListGridGroupState"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "method:StatefulCanvas.getActionType":{
        ref:"method:StatefulCanvas.getActionType",
        flags:"A",
        description:" Return the 'actionType' for this canvas (radio / checkbox / button)\n",
        name:"getActionType",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:CubeGrid.getEventRow":{
        ref:"method:CubeGrid.getEventRow",
        flags:"",
        description:" Returns the row number of the most recent mouse event.\n",
        name:"getEventRow",
        seeAlso:[
        ],
        params:[
            {
                description:"optional y-coordinate to obtain row number, in lieu of the y                        coordinate of the last mouse event",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"row number, or -2 if beyond last drawn row",
            type:"int"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "events",
            "selection"
        ]
    },
    "method:MultiGroupPanel.validate":{
        ref:"method:MultiGroupPanel.validate",
        flags:"",
        description:" Validate that no two ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s group on the same \n ${isc.DocUtils.linkForRef('attr:GroupSpecifier.property','property')}.\n\n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"True if validation succeeds, false if any property is used twice",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:CubeGrid.facetValueHoverHeight":{
        ref:"attr:CubeGrid.facetValueHoverHeight",
        flags:"IRWA",
        description:"If specified and <code>this.showHover</code> is true, this is the default height to apply\n to hover tips shown for facetValues. If unset, the hover canvas will be sized to \n <code>this.hoverHeight</code> if specified instead.",
        name:"facetValueHoverHeight",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverHeight",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "attr:Canvas.locateChildrenType":{
        ref:"attr:Canvas.locateChildrenType",
        flags:"IRWA",
        description:"${isc.DocUtils.linkForRef('type:LocatorTypeStrategy')} to use when finding children within this canvas.",
        name:"locateChildrenType",
        seeAlso:[
        ],
        valueType:"LocatorTypeStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "autoTest"
        ]
    },
    "method:Tree.openFolder":{
        ref:"method:Tree.openFolder",
        flags:"",
        description:"\n Open a particular node\n\n",
        name:"openFolder",
        seeAlso:[
            {
                ref:"method:ResultTree.dataArrived",
                description:null
            }
        ],
        params:[
            {
                description:"node to open",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Optional callback (stringMethod) to fire when loading                       completes. Has a single param <code>node</code> - the node whose \n                      children have been loaded, and is fired in the scope of the Tree.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"callback"
            }
        ],
        type:"method",
        definingClass:"class:Tree"
    },
    "class:SpinnerItem":{
        methods:[
            "method:SpinnerItem.getNextValue",
            "method:SpinnerItem.getPreviousValue"
        ],
        ref:"class:SpinnerItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:SpinnerItem.mask",
            "attr:SpinnerItem.maskSaveLiterals",
            "attr:SpinnerItem.maskPadChar",
            "attr:SpinnerItem.maskPromptChar",
            "attr:SpinnerItem.maskOverwriteMode",
            "attr:SpinnerItem.step",
            "attr:SpinnerItem.max",
            "attr:SpinnerItem.min",
            "attr:SpinnerItem.increaseIcon",
            "attr:SpinnerItem.increaseIconProperties",
            "attr:SpinnerItem.decreaseIcon",
            "attr:SpinnerItem.decreaseIconProperties"
        ],
        description:"Item for picking a number. Includes arrow buttons to increase / decrease the value",
        name:"SpinnerItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('spinnerItem')}"
        ]
    },
    "attr:Canvas.showShadow":{
        ref:"attr:Canvas.showShadow",
        flags:"IRW",
        description:"Whether to show a drop shadow for this Canvas",
        name:"showShadow",
        setter:[
            "setShowShadow"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('shadows')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "shadow"
        ]
    },
    "method:Class.createAutoChild":{
        ref:"method:Class.createAutoChild",
        flags:"",
        description:" Unconditionally creates and returns a component created according to the \"AutoChild\"\n pattern.\n <P>\n In addition to applying defaults and properties as described under the\n ${isc.DocUtils.linkForRef('group:autoChildUsage','AutoChild overview')}, the created autoChild:\n <ul>\n <li> is automatically <code>autoDraw:false</code>\n <li> has a <code>creator</code> property that points to this component, for easy\n authoring of event handlers (eg click:\"this.creator.doSomething()\")\n </ul>\n <P>\n Unlike ${isc.DocUtils.linkForRef('method:Class.addAutoChild')}, <code>createAutoChild()</code> does not create a\n this.<i>autoChildName</i> reference to the component, check a show<i>AutoChildName</i>\n flag, or automatically add the autoChild via ${isc.DocUtils.linkForRef('method:Canvas.addChild')}.\n <P>\n General you use <code>createAutoChild</code> rather than addAutoChild when:\n <ul>\n <li> you are going to create several autoChildren with a common set of defaults (for\n example the ${isc.DocUtils.linkForRef('attr:ColumnTree.column','column')} autoChild of the ${isc.DocUtils.linkForRef('class:ColumnTree')}).\n <li> children need to be created before their parents (eg, for layout/auto-sizing\n reasons)\n </ul>\n <P>\n Note that by default the child created by this method will be destroyed when\n ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} is called on this instance. To disable this behavior,\n set <code>dontAutoDestroy</code> to true on the auto child.\n\n",
        name:"createAutoChild",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the autoChild",
                optional:false,
                name:"childName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"dynamic properties for the autoChild",
                optional:false,
                name:"defaults",
                defaultValue:null,
                type:"Properties"
            }
        ],
        returns:{
            description:"created autoChild",
            type:"Class"
        },
        type:"method",
        definingClass:"class:Class",
        groups:[
            "autoChildren"
        ]
    },
    "attr:FilterBuilder.criteria":{
        ref:"attr:FilterBuilder.criteria",
        flags:"IRW",
        getter:[
            "getCriteria"
        ],
        description:"Initial criteria.\n <P>\n When initialized with criteria, appropriate clauses for editing the provided criteria will\n be automatically generated.\n <P>\n Note that empty or partial criteria are allowed, for example, criteria that specify\n ${isc.DocUtils.linkForRef('attr:Criterion.fieldName')} only will generate an expression with the operator not chosen\n yet, and a ${isc.DocUtils.linkForRef('object:Criterion')} with a logical operator (\"and\" or \"or\") but not\n ${isc.DocUtils.linkForRef('attr:Criterion.criteria','subcriteria')} defined will generate an empty subclause.",
        name:"criteria",
        setter:[
            "setCriteria"
        ],
        seeAlso:[
        ],
        valueType:"AdvancedCriteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "method:Gauge.getSectorValue":{
        ref:"method:Gauge.getSectorValue",
        flags:"",
        description:" Gets the value of the sector at <code>sectorIndex</code>.\n\n",
        name:"getSectorValue",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the target sector.",
                optional:false,
                name:"sectorIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"the value of the sector at <code>sectorIndex</code>.",
            type:"float"
        },
        type:"method",
        definingClass:"class:Gauge"
    },
    "classMethod:isc.warn":{
        ref:"classMethod:isc.warn",
        flags:"",
        description:" Show a modal dialog with a message, icon, and \"OK\" button.\n <P>\n The callback will receive boolean true for an OK button click, or null if the Dialog is\n dismissed via the close button.\n\n",
        name:"warn",
        seeAlso:[
            {
                ref:"classAttr:Dialog.Warn",
                description:null
            },
            {
                ref:"classMethod:isc.say",
                description:null
            },
            {
                ref:"classMethod:isc.ask",
                description:null
            },
            {
                ref:"method:Dialog.okClick",
                description:null
            },
            {
                ref:"classAttr:Dialog.WARN_TITLE",
                description:null
            }
        ],
        params:[
            {
                description:"message to display",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Optional Callback to fire when the user                                      dismisses the dialog. This has the single parameter\n                                      'value', indicating the value returned by the Warn\n                                      dialog from 'okClick()' etc.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"additional properties for the Dialog.                                      To set ${isc.DocUtils.linkForRef('attr:Dialog.buttons','custom buttons')} for\n                                      the Dialog, set properties.buttons to\n                                      an array of buttons\n\t\t\t\t\t\t\t\t\t\teg:\t{ buttons : [Dialog.OK, Dialog.CANCEL] }",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"Dialog Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "method:TreeGrid.transferDragData":{
        ref:"method:TreeGrid.transferDragData",
        flags:"",
        description:"\n During a drag-and-drop interaction, this method is called to transfer a set of records that\n were dropped onto some other component.  This method is called after the set of records has\n been copied to the other component.  Whether or not this component's data is modified is \n determined by the value of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dragDataAction')}.\n <P>\n With a <code>dragDataAction</code> of \"move\", a databound component will issue \"remove\"\n dsRequests against its DataSource to actually remove the data, via\n ${isc.DocUtils.linkForRef('method:DataSource.removeData')}.\n\n",
        name:"transferDragData",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.getDragData",
                description:null
            },
            {
                ref:"method:ListGrid.willAcceptDrop",
                description:null
            }
        ],
        returns:{
            description:"Array of objects that were dragged out of this ListGrid.",
            type:"Array"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "group:dragdrop":{
        ref:"group:dragdrop",
        title:"Drag and Drop",
        refs:[
            "method:PortalLayout.setPortletDropTypes",
            "method:PortalLayout.willAcceptPortletDrop",
            "method:Canvas.setDragTracker",
            "method:Canvas.shouldDragScroll",
            "method:Canvas.willAcceptDrop",
            "method:Canvas.getHSnapPosition",
            "method:Canvas.getVSnapPosition",
            "method:Canvas.shouldSnapOnDrop",
            "method:DataBoundComponent.transferRecords",
            "method:DataBoundComponent.transferSelectedData",
            "method:ListGrid.transferSelectedData",
            "method:TileGrid.transferSelectedData",
            "classMethod:EventHandler.getDragRect",
            "classMethod:Canvas.getEventEdge",
            "attr:Window.keepInParentRect",
            "attr:Portlet.dragType",
            "attr:PortalLayout.portletDropTypes",
            "attr:PortalLayout.dropTypes",
            "attr:TabSet.canReorderTabs",
            "attr:Canvas.useNativeDrag",
            "attr:Canvas.canDrag",
            "attr:Canvas.dragStartDistance",
            "attr:Canvas.dragIntersectStyle",
            "attr:Canvas.canDragReposition",
            "attr:Canvas.dragRepositionCursor",
            "attr:Canvas.canDragResize",
            "attr:Canvas.resizeFrom",
            "attr:Canvas.useDragMask",
            "attr:Canvas.dragMaskType",
            "attr:Canvas.edgeMarginSize",
            "attr:Canvas.edgeCursorMap",
            "attr:Canvas.keepInParentRect",
            "attr:Canvas.dragAppearance",
            "attr:Canvas.dragResizeAppearance",
            "attr:Canvas.dragRepositionAppearance",
            "attr:Canvas.dragType",
            "attr:Canvas.dropTypes",
            "attr:Canvas.dragTarget",
            "attr:Canvas.showDragShadow",
            "attr:Canvas.dragOpacity",
            "attr:Canvas.canDrop",
            "attr:Canvas.canAcceptDrop",
            "attr:Canvas.snapToGrid",
            "attr:Canvas.snapResizeToGrid",
            "attr:Canvas.childrenSnapToGrid",
            "attr:Canvas.childrenSnapResizeToGrid",
            "attr:Canvas.snapHGap",
            "attr:Canvas.snapVGap",
            "attr:Canvas.snapHDirection",
            "attr:Canvas.snapVDirection",
            "attr:Canvas.snapAxis",
            "attr:Canvas.snapOnDrop",
            "attr:DrawItem.dragStartDistance",
            "attr:GridRenderer.snapToCells",
            "attr:GridRenderer.snapInsideBorder",
            "attr:ListGrid.canDropInEmptyArea",
            "attr:TreeGrid.canDragRecordsOut",
            "attr:TreeGrid.canAcceptDroppedRecords",
            "attr:TreeGrid.canReorderRecords",
            "attr:TreeGrid.canReparentNodes",
            "attr:TreeGrid.manyItemsImage",
            "attr:TileGrid.tileDragAppearance",
            "attr:Layout.canDropComponents",
            "attr:Layout.dropLineThickness",
            "attr:Layout.showDropLines",
            "attr:Layout.showDragPlaceHolder",
            "attr:Layout.placeHolderProperties",
            "attr:Layout.placeHolderDefaults",
            "attr:SectionStack.canDropComponents",
            "type:DragAppearance",
            "type:DragIntersectStyle",
            "type:DragMaskType",
            "type:ReorderPosition"
        ],
        description:"Dragging objects and dropping them onto other objects",
        name:"dragdrop",
        seeAlso:[
        ],
        type:"group"
    },
    "classAttr:Operators.notInSetTitle":{
        ref:"classAttr:Operators.notInSetTitle",
        flags:"IR",
        description:"Title for the \"notInSet\" operator",
        name:"notInSetTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"is not one of\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormulaBuilder.keyColumnTitle":{
        ref:"attr:FormulaBuilder.keyColumnTitle",
        flags:"IRWA",
        description:"The default title for the \"Key\" column in ${isc.DocUtils.linkForRef('attr:FormulaBuilder.fields')}.",
        name:"keyColumnTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Key\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Window.addItem":{
        ref:"method:Window.addItem",
        flags:"A",
        description:" Adds a widget to the body area of the window.\n",
        name:"addItem",
        seeAlso:[
        ],
        params:[
            {
                description:"the widget to be added",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        returns:{
            description:"array of widgets added",
            type:"array"
        },
        type:"method",
        definingClass:"class:Window",
        groups:[
            "windowItems"
        ]
    },
    "method:FilterClause.getFilterBuilder":{
        ref:"method:FilterClause.getFilterBuilder",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('class:FilterBuilder','filterBuilder')} containing this clause, or null if\n this filterClause is not embedded in a filterBuilder.\n",
        name:"getFilterBuilder",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FilterClause"
    },
    "method:Dialog.doneClick":{
        ref:"method:Dialog.doneClick",
        flags:"",
        description:" Handle a click on the 'done' button of this Dialog.\n Default implementation is to hide the dialog then return <code>true</code>.\n Override to do something else.\n",
        name:"doneClick",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "method:ListGrid.isRowNumberField":{
        ref:"method:ListGrid.isRowNumberField",
        flags:"",
        description:" Identifies whether the passed-in field is the specially generated\n ${isc.DocUtils.linkForRef('attr:ListGrid.rowNumberField','rowNumberField')} used when ${isc.DocUtils.linkForRef('attr:ListGrid.showRowNumbers')} is\n true.  Use this method in your custom event handlers to avoid inappropriately\n performing actions when the rowNumberField is clicked on.\n\n",
        name:"isRowNumberField",
        seeAlso:[
        ],
        params:[
            {
                description:"field to test",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"whether the provided field is the rowNumberField",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "rowNumberField"
        ]
    },
    "attr:RelativeDateItem.useSharedPicker":{
        ref:"attr:RelativeDateItem.useSharedPicker",
        flags:"IR",
        description:"When set to true (the default), use a single shared date-picker across all widgets that\n use one.  When false, create a new picker using the autoChild system.  See \n ${isc.DocUtils.linkForRef('attr:DateItem.pickerDefaults','picker')} and \n ${isc.DocUtils.linkForRef('attr:DateItem.pickerProperties','pickerProperties')} for details on setting up an unshared\n picker.",
        name:"useSharedPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:ListGrid.recordComponentHeight":{
        ref:"attr:ListGrid.recordComponentHeight",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} is true, this attribute may be used to\n specify a standard height for record components.\n If specified every row in the grid will be sized tall enough to accommodate a recordComponent\n of this size.\n <P>\n Note that if this property is unset, the grid will not be able to know row heights in\n advance, and ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','freezing of columns')} is not currently supported in\n this case.",
        name:"recordComponentHeight",
        setter:[
            "setRecordComponentHeight"
        ],
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGridField.showValueIconOnly":{
        ref:"attr:ListGridField.showValueIconOnly",
        flags:"IRW",
        description:"If this field has a valueIcons property specified, setting this property causes\n the valueIcon for each value to be displayed in the cell without also showing the\n record's value for the field.\n <P>\n If unset the default behavior is to show the icon only if an explicit valueMap is\n specified as well in addition to a valueIcons map, otherwise show both the valueIcon and\n value for the cell.\n <P>\n Note that if this field is editable ${isc.DocUtils.linkForRef('attr:FormItem.showValueIconOnly')} will be passed\n through to editors displayed in this field.",
        name:"showValueIconOnly",
        seeAlso:[
            {
                ref:"attr:ListGridField.valueIcons",
                description:null
            },
            {
                ref:"attr:ListGridField.suppressValueIcon",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:ComboBoxItem.maskPromptChar":{
        ref:"attr:ComboBoxItem.maskPromptChar",
        flags:"IRWA",
        description:"Not applicable to a ComboBoxItem.",
        name:"maskPromptChar",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"_\"",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:DrawLabel.fontSize":{
        ref:"attr:DrawLabel.fontSize",
        flags:"IRW",
        description:"Font size in pixels, similar to the CSS font-size attribute.",
        name:"fontSize",
        setter:[
            "setFontSize"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"18",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "attr:Calendar.showNextButton":{
        ref:"attr:Calendar.showNextButton",
        flags:"IRW",
        description:"Set to false to hide the ${isc.DocUtils.linkForRef('attr:Calendar.nextButton','Next')} button.",
        name:"showNextButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:ListGrid.exportData":{
        ref:"method:ListGrid.exportData",
        flags:"",
        description:" Sends the current filter criteria and sort direction to the server, then exports data in the\n requested ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportFormat')}.\n <P>\n A variety of DSRequest settings, such as \n ${isc.DocUtils.linkForRef('attr:DSRequest.exportAs','exportAs')} and ${isc.DocUtils.linkForRef('attr:DSRequest.exportFilename')}, affect the \n exporting process: see ${isc.DocUtils.linkForRef('attr:DSRequest.exportResults','exportResults')} for further detail.\n <P>\n Note that data exported via this method does not include any client-side formatting and\n relies on both the SmartClient server and server-side DataSources.  To export client-data \n with formatters applied, \n see ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData')}, which still requires the\n SmartClient server but does not rely on server-side DataSource definitions (.ds.xml files).\n <P>\n For more information on exporting data, see ${isc.DocUtils.linkForRef('method:DataSource.exportData')}.\n\n",
        name:"exportData",
        seeAlso:[
        ],
        params:[
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            },
            {
                description:"callback to invoke on completion.  Note that this parameter                                  only applies where ${isc.DocUtils.linkForRef('attr:DSRequest.exportToClient')} is \n                                  explicitly set to false, because  file downloads do not \n                                  provide ordinary SmartClient callbacks",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:FormItem.show":{
        ref:"method:FormItem.show",
        flags:"I",
        description:" Show this form item.\n <BR><BR>\n This will cause the form to redraw.  If this item had an item.showIf expression, it will\n be destroyed.\n",
        name:"show",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:Tree.lastIndexOf":{
        ref:"method:Tree.lastIndexOf",
        flags:"",
        description:" Return the position in the list of the last instance of the specified object.\n <p>\n If pos is specified, starts looking before that position.\n <p>\n Returns -1 if not found.\n\n",
        name:"lastIndexOf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"earliest index to consider",
                optional:true,
                name:"endPos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"position of the item, if found, -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "access"
        ]
    },
    "attr:ResultTree.data":{
        ref:"attr:ResultTree.data",
        flags:"IRA",
        description:"Optional initial data for the tree.  If the ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode','fetchMode')} is\n <code>\"basic\"</code> or <code>\"local\"</code> then the format of this data is exactly\n the same ${isc.DocUtils.linkForRef('attr:Tree.parentIdField','parentId')}-linked list of tree nodes as\n documented on ${isc.DocUtils.linkForRef('attr:Tree.data')} (when the <code>modelType</code> is set to\n <code>\"parent\"</code>).  If the <code>fetchMode</code> is <code>\"paged\"</code> then the\n format is extended to allow the ${isc.DocUtils.linkForRef('attr:ResultTree.childCountProperty','childCountProperty')}\n to be set on folder nodes.\n <P>\n Providing an initial set of nodes in this way does not affect the behavior of the\n ResultTree in its loading of unloaded folders.  An equivalent result is achieved if the\n first fetch from the server returns this same data.\n <P>\n If <code>fetchMode</code> is <code>\"paged\"</code> then you may make folder-by-folder\n choices as to whether to use paging for the childen of each folder.  If you would like\n to use paging in a folder then you may include a partial list of that folder's children\n with the data, provided that you set the <code>childCountProperty</code> to the total\n number of children.  Otherwise you will need to include either all children of the\n folder or none of the children.  Open folders without any children provided will cause\n immediate, new fetches for the children, as usual.\n <P>\n Because the initial data is treated exactly as though it were returned from the tree's\n first server fetch, the order of the initial data must match the initial sort order of\n the TreeGrid displaying the data or, if no such sort is specified, the native storage\n order on the server.  For example, consider initial data containing <code>n</code>\n records having the <code>parentId</code> <code>\"X\"</code>, meaning they are all in\n the same folder.  These <code>n</code> records are the records at indices\n <code>0</code> through <code>(n - 1)</code> that are stored on the server under the\n parent node.  If the <code>childCountProperty</code> set on the parent node indicates\n that there are <code>m > n</code> total rows under the parent node then the records at\n indices <code>n</code> to <code>(m - 1)</code> will be fetched from the server as the user\n scrolls the additional rows into view.",
        name:"data",
        seeAlso:[
            {
                ref:"attr:Tree.data",
                description:null
            },
            {
                ref:"object:TreeNode",
                description:null
            }
        ],
        valueType:"List of TreeNode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultTree",
        groups:[
            "treeDataBinding"
        ]
    },
    "method:List.last":{
        ref:"method:List.last",
        flags:"",
        description:" Return the last item in this list\n\n",
        name:"last",
        seeAlso:[
        ],
        returns:{
            description:"last item in the list",
            type:"any"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "group:viewState":{
        ref:"group:viewState",
        refs:[
            "method:ResultTree.getOpenState",
            "method:ResultTree.setOpenState",
            "method:DataBoundComponent.getHiliteState",
            "method:DataBoundComponent.setHiliteState",
            "method:DetailViewer.getViewState",
            "method:DetailViewer.setViewState",
            "method:ListGrid.getFieldState",
            "method:ListGrid.setFieldState",
            "method:ListGrid.getSelectedState",
            "method:ListGrid.setSelectedState",
            "method:ListGrid.getSortState",
            "method:ListGrid.setSortState",
            "method:ListGrid.getViewState",
            "method:ListGrid.getGroupState",
            "method:ListGrid.setGroupState",
            "method:ListGrid.setViewState",
            "method:TreeGrid.getOpenState",
            "method:TreeGrid.setOpenState",
            "method:TreeGrid.getSelectedPaths",
            "method:TreeGrid.setSelectedPaths",
            "method:TreeGrid.getViewState",
            "method:TreeGrid.setViewState",
            "method:TileGrid.setFieldState",
            "method:TileGrid.getFieldState",
            "attr:ListGrid.fieldState",
            "attr:ListGrid.sortState",
            "attr:ListGrid.groupState",
            "attr:ListGrid.viewState",
            "type:DetailViewerViewState",
            "type:ListGridFieldState",
            "type:ListGridSelectedState",
            "type:ListGridSortState",
            "type:ListGridViewState",
            "type:ListGridGroupState",
            "type:TreeGridOpenState",
            "type:TreeGridViewState"
        ],
        name:"viewState",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.groupByField":{
        ref:"attr:ListGrid.groupByField",
        flags:"IR",
        description:"List of fields to group grid records. If only a single field is used, that field\n may be specified as a string. After initialization, use ${isc.DocUtils.linkForRef('method:ListGrid.groupBy')}\n to update the grouping field list, instead of modifying groupByField directly.",
        name:"groupByField",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"String | Array of String",
        defaultValue:"see below",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dynamicGrouping')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:ListGrid.refreshRow":{
        ref:"method:ListGrid.refreshRow",
        flags:"",
        description:" Refresh an entire row of cells without redrawing the grid.\n <P>\n The cells' values, CSS classes, and CSS text will be refreshed, to the current values\n returned by getCellValue(), getCellStyle() and getCellCSSText() respectively.\n\n",
        name:"refreshRow",
        seeAlso:[
            {
                ref:"method:ListGrid.refreshCellStyle",
                description:"to update just styling"
            },
            {
                ref:"method:ListGrid.refreshCell",
                description:null
            }
        ],
        params:[
            {
                description:"row number of cell to refresh",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.ariaState":{
        ref:"attr:FormItem.ariaState",
        flags:"IRWA",
        description:"ARIA state mappings for this formItem. Usually this does not need to be manually\n set - see ${isc.DocUtils.linkForRef('group:accessibility')}.\n <P>\n This attribute should be set to a mapping of aria state-names to values - for example\n to have the \"aria-multiline\" property be present with a value \"true\", you'd specify:\n <pre>\n  { multiline : true }\n </pre>",
        name:"ariaState",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "accessibility"
        ]
    },
    "attr:FieldPicker.emptyTitleHint":{
        ref:"attr:FieldPicker.emptyTitleHint",
        flags:"IR",
        description:"The hint shown when editing a field with no title defined.",
        name:"emptyTitleHint",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"[No title specified]\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:GridRenderer.cellValueHover":{
        ref:"method:GridRenderer.cellValueHover",
        flags:"A",
        description:" Optional stringMethod to fire when the user hovers over a cell and the value is clipped.\n If this.showClippedValuesOnHover is true, the default behavior is to show a hover canvas\n containing the HTML returned by cellValueHoverHTML(). Return false to suppress this default\n behavior.\n\n",
        name:"cellValueHover",
        seeAlso:[
            {
                ref:"attr:GridRenderer.showClippedValuesOnHover",
                description:null
            },
            {
                ref:"method:GridRenderer.cellValueIsClipped",
                description:null
            },
            {
                ref:"method:GridRenderer.cellValueHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"false to suppress the standard hover",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "classMethod:Class.isA":{
        ref:"classMethod:Class.isA",
        flags:"",
        description:"\n Returns whether this class object is the provided class or is a subclass of the provided\n class, or implements the provided interface.\n\n",
        name:"isA",
        seeAlso:[
        ],
        params:[
            {
                description:"Class name to test against",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true == this Class is a subclass of the provided classname",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:StretchImgButton.iconOrientation":{
        ref:"attr:StretchImgButton.iconOrientation",
        flags:"IR",
        description:"If this button is showing an icon should it appear to the left or right of the title?\n valid options are <code>\"left\"</code> and <code>\"right\"</code>.",
        name:"iconOrientation",
        setter:[
            "setIconOrientation"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"left\"",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:DataBoundComponent.editFormulaFieldText":{
        ref:"attr:DataBoundComponent.editFormulaFieldText",
        flags:"IRW",
        description:"Text for a menu item allowing users to edit a formula field",
        name:"editFormulaFieldText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Edit formula...\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Callbacks.ShowSectionCallback":{
        ref:"method:Callbacks.ShowSectionCallback",
        flags:"",
        description:" Callback to execute after the section has been shown.\n",
        name:"ShowSectionCallback",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "attr:DataSourceField.name":{
        ref:"attr:DataSourceField.name",
        flags:"IR",
        description:"Name for this field.  \n <p>\n The field name is also the property in each DataSource record which holds the value for this\n field.\n <P>\n Must be unique across all fields within the DataSource as well as a valid JavaScript identifier,\n as specified by ECMA-262 Section 7.6.\n <P>\n <B>NOTE:</B> The <smartclient>${isc.DocUtils.linkForRef('classMethod:String.isValidID')}</smartclient><smartgwt>StringUtil.isValidID()</smartgwt>\n function can be used to test whether a name is a valid JavaScript identifier.",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "basics"
        ]
    },
    "attr:RestDataSource.jsonRecordXPath":{
        ref:"attr:RestDataSource.jsonRecordXPath",
        flags:"IR",
        description:"<code>recordXPath</code> mapping to the data node of json returned by the server.\n Applies if this.dataFormat is set to <code>\"json\"</code><br>\n The default value will pick up data from a response structured as follows:<br>\n <pre>\n {response:\n  {status:0,\n   data:[\n      {field1:\"value\", field2:\"value\"},\n      {field1:\"value\", field2:\"value\"}\n   ]\n }\n </pre>",
        name:"jsonRecordXPath",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"/response/data\"",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "type:LocatorTypeStrategy":{
        ref:"type:LocatorTypeStrategy",
        values:[
            {
                description:"Match by class if possible",
                value:"\"Class\""
            },
            {
                description:"Ignore specific class and match by the SmartClient framework superclass.",
                value:"\"scClass\""
            },
            {
                description:"Ignore class altogether and attempt to match by role",
                value:"\"role\""
            },
            {
                description:"Don't attempt to compare type in any way",
                value:"\"none\""
            }
        ],
        description:"When attempting to identify a component from within a list of possible candidates\n as described ${isc.DocUtils.linkForRef('type:LocatorStrategy','here')}, if we are unable to find a unique match\n by name or title, we will use the recorded \"type\" of the component to verify\n an apparent match.\n <P>\n By default we check the following properties in order:\n <ul><li>Does the Class match?</li>\n     <li>If this is not a ${isc.DocUtils.linkForRef('classAttr:Class.isFrameworkClass','framework class')}, does the\n         core framework superclass match?</li>\n     <li>Does the <code>role</code> match?</li>\n </ul>\n In some cases an explicit locatorTypeStrategy can be specified to modify this\n behavior. As with ${isc.DocUtils.linkForRef('type:LocatorStrategy')}, if we are unable to match using the\n specified type strategy we continue to test against the remaining strategies in order - \n so if a type strategy of \"scClass\" was specified but we were unable to find a match\n with the appropriate core superclass, we will attempt to match by role.\n Possible values are:",
        name:"LocatorTypeStrategy",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoTest"
        ]
    },
    "method:DynamicForm.getFocusItem":{
        ref:"method:DynamicForm.getFocusItem",
        flags:"A",
        description:" Return the current focus item for this form. If this form is drawn and has focus,\n this is the currently focused item. If the form does not have focus or is undrawn this\n is the item that last had focus, or would have focus if the item were drawn/given focus.\n Therefore note that this method can validly return an item which doesn't currently have focus.\n <P>\n May be null.\n\n",
        name:"getFocusItem",
        seeAlso:[
        ],
        returns:{
            description:"returns the item that has the focus, or null if no item is currently focused",
            type:"FormItem"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "eventHandling",
            "focus"
        ]
    },
    "class:RPCResponse":{
        methods:[
        ],
        ref:"class:RPCResponse",
        classAttrs:[
            "classAttr:RPCResponse.STATUS_SUCCESS",
            "classAttr:RPCResponse.STATUS_OFFLINE",
            "classAttr:RPCResponse.STATUS_FAILURE",
            "classAttr:RPCResponse.STATUS_VALIDATION_ERROR",
            "classAttr:RPCResponse.STATUS_LOGIN_INCORRECT",
            "classAttr:RPCResponse.STATUS_MAX_LOGIN_ATTEMPTS_EXCEEDED",
            "classAttr:RPCResponse.STATUS_LOGIN_REQUIRED",
            "classAttr:RPCResponse.STATUS_LOGIN_SUCCESS",
            "classAttr:RPCResponse.STATUS_UPDATE_WITHOUT_PK_ERROR",
            "classAttr:RPCResponse.STATUS_TRANSACTION_FAILED",
            "classAttr:RPCResponse.STATUS_MAX_FILE_SIZE_EXCEEDED",
            "classAttr:RPCResponse.STATUS_MAX_POST_SIZE_EXCEEDED",
            "classAttr:RPCResponse.STATUS_TRANSPORT_ERROR",
            "classAttr:RPCResponse.STATUS_UNKNOWN_HOST_ERROR",
            "classAttr:RPCResponse.STATUS_CONNECTION_RESET_ERROR",
            "classAttr:RPCResponse.STATUS_SERVER_TIMEOUT"
        ],
        classMethods:[
            "classMethod:RPCResponse.create"
        ],
        treeLocation:[
            "Client Reference/RPC"
        ],
        attrs:[
            "attr:RPCResponse.data",
            "attr:RPCResponse.status",
            "attr:RPCResponse.httpResponseCode",
            "attr:RPCResponse.httpHeaders",
            "attr:RPCResponse.httpResponseText",
            "attr:RPCResponse.clientContext",
            "attr:RPCResponse.transactionNum"
        ],
        description:"Encapsulates an RPC response from the server.  Instances of this class are automatically created\n and optionally passed to you in the callback you specify as part of your RPCRequest.",
        name:"RPCResponse",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            },
            {
                ref:"method:Callbacks.RPCCallback",
                description:null
            }
        ],
        type:"class"
    },
    "attr:Canvas.padding":{
        ref:"attr:Canvas.padding",
        flags:"IRW",
        description:"Set the CSS padding of this component, in pixels.  Padding provides space between the\n border and the component's contents.\n <P>\n This property sets the same thickness of padding on every side.  Differing per-side\n padding can be set in a CSS style and applied via ${isc.DocUtils.linkForRef('attr:Canvas.styleName')}.\n <P>\n Note that CSS padding does not affect the placement of ${isc.DocUtils.linkForRef('attr:Canvas.children')}.  To\n provide a blank area around children, either use ${isc.DocUtils.linkForRef('attr:Canvas.margin','CSS margins')} or use\n a ${isc.DocUtils.linkForRef('class:Layout')} as the parent instead, and use properties such as\n ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')} to create blank space.",
        name:"padding",
        setter:[
            "setPadding"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItemIcon.prompt":{
        ref:"attr:FormItemIcon.prompt",
        flags:"IRWA",
        description:"If set, this property will be displayed as a prompt (and tooltip text) for this form\n item icon.\n <P>\n If unset the form item's <code>iconPrompt</code> property will be used instead.",
        name:"prompt",
        seeAlso:[
            {
                ref:"attr:FormItem.iconPrompt",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "method:Canvas.dropMove":{
        ref:"method:Canvas.dropMove",
        flags:"A",
        description:"\n Executed whenever the compatible dragged object is moved over this drop target. You\n can use this to show a custom visual indication of where the drop would occur within the\n widget.\n\n",
        name:"dropMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('customDrag')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:ComboBoxItem.displayField":{
        ref:"attr:ComboBoxItem.displayField",
        flags:"IRWA",
        getter:[
            "getDisplayFieldName"
        ],
        description:"Specifies an alternative field from which display values should be retrieved for this\n item.\n <P>\n The display field can be either another field value in the same record or a field that\n must be retrieved from a related ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}.\n <P>\n If this item is not databound (${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} is unset), or bound \n to the same dataSource as the form as a whole, this item will call\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValue','form.getValue()')} \n the form named after is implemented by picking up the\n value of the specified field from the Form's values object.\n <P>\n Otherwise this item will attempt to map its underlying value to a display value\n by retrieving a record from the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} where the \n ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} matches this item's value, and displaying the \n <code>displayField</code> value from that record.\n Note that if <code>optionDataSource</code> is set and this value is not\n set, ${isc.DocUtils.linkForRef('method:FormItem.getDisplayFieldName')} will return the dataSource title field by default.\n <P>\n This essentially enables the specified <code>optionDataSource</code> to be used as\n a server based ${isc.DocUtils.linkForRef('group:valueMap')}.",
        name:"displayField",
        seeAlso:[
            {
                ref:"method:FormItem.invalidateDisplayValueCache",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem",
        groups:[
            "display_values"
        ]
    },
    "method:Calendar.filterData":{
        ref:"method:Calendar.filterData",
        flags:"",
        description:" Retrieves data that matches the provided criteria and displays the matching data in this\n component.\n <P>\n This method behaves exactly like ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} except that\n ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')} is automatically set to \"substring\" so that String-valued\n fields are matched by case-insensitive substring comparison.\n\n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria.                       If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed in as this argument\n                      instead of a raw criteria object, will be derived by calling\n                      ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete.  Fires                                          only if server contact was required; see\n                                          ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')} for details",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"for databound components only - optional                            additional properties to set on the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:StatefulCanvas.setTitle":{
        ref:"method:StatefulCanvas.setTitle",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.title','title')}.\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"the new title HTML.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.errorIconSrc":{
        ref:"attr:FormItem.errorIconSrc",
        flags:"IRW",
        description:"URL of the image to show as an error icon, if we're showing icons when validation\n errors occur.",
        name:"errorIconSrc",
        seeAlso:[
            {
                ref:"attr:FormItem.showErrorIcon",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/validation_error_icon.png\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "errorIcon"
        ]
    },
    "attr:Hilite.htmlBefore":{
        ref:"attr:Hilite.htmlBefore",
        flags:"IR",
        description:"HTML to prepend to cell values where this hilite is applied.",
        name:"htmlBefore",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "classMethod:ClassFactory.newInstance":{
        ref:"classMethod:ClassFactory.newInstance",
        flags:"",
        description:"\n Given the name of a class, create an instance of that class.\n\n",
        name:"newInstance",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of a class.\t\t\t\t\t\t\t(ClassObject)\tActual class object to use.",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Properties to apply to the instance.",
                optional:true,
                name:"props",
                defaultValue:null,
                type:"object"
            },
            {
                description:"More properties to apply to the instance.",
                optional:true,
                name:"props2",
                defaultValue:null,
                type:"object"
            },
            {
                description:"Yet more properties to apply to the instance.",
                optional:true,
                name:"props3",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"Pointer to the new class.",
            type:"class"
        },
        type:"classMethod",
        definingClass:"object:ClassFactory"
    },
    "group:i18nMessages":{
        ref:"group:i18nMessages",
        refs:[
            "method:ListGrid.getRequiredFieldMessage",
            "method:ListGrid.getSummaryTitle",
            "method:ListGrid.getToggleFreezeText",
            "method:ListGrid.getGroupByText",
            "method:FormulaBuilder.getSamplePrompt",
            "method:DynamicForm.formSubmitFailed",
            "classAttr:DataSource.offlineMessage",
            "classAttr:DataSource.maxFileSizeExceededMessage",
            "classAttr:RPCManager.defaultPrompt",
            "classAttr:RPCManager.timeoutErrorMessage",
            "classAttr:RPCManager.removeDataPrompt",
            "classAttr:RPCManager.saveDataPrompt",
            "classAttr:RPCManager.validateDataPrompt",
            "classAttr:RPCManager.fetchDataPrompt",
            "classAttr:Operators.equalsTitle",
            "classAttr:Operators.notEqualTitle",
            "classAttr:Operators.iEqualsTitle",
            "classAttr:Operators.iNotEqualTitle",
            "classAttr:Operators.greaterThanTitle",
            "classAttr:Operators.lessThanTitle",
            "classAttr:Operators.greaterOrEqualTitle",
            "classAttr:Operators.lessOrEqualTitle",
            "classAttr:Operators.betweenTitle",
            "classAttr:Operators.iBetweenTitle",
            "classAttr:Operators.betweenInclusiveTitle",
            "classAttr:Operators.iBetweenInclusiveTitle",
            "classAttr:Operators.iContainsTitle",
            "classAttr:Operators.iStartsWithTitle",
            "classAttr:Operators.iEndsWithTitle",
            "classAttr:Operators.containsTitle",
            "classAttr:Operators.startsWithTitle",
            "classAttr:Operators.endsWithTitle",
            "classAttr:Operators.iNotContainsTitle",
            "classAttr:Operators.iNotStartsWithTitle",
            "classAttr:Operators.iNotEndsWithTitle",
            "classAttr:Operators.notContainsTitle",
            "classAttr:Operators.notStartsWithTitle",
            "classAttr:Operators.notEndsWithTitle",
            "classAttr:Operators.isNullTitle",
            "classAttr:Operators.notNullTitle",
            "classAttr:Operators.regexpTitle",
            "classAttr:Operators.iregexpTitle",
            "classAttr:Operators.matchesPatternTitle",
            "classAttr:Operators.iMatchesPatternTitle",
            "classAttr:Operators.containsPatternTitle",
            "classAttr:Operators.iContainsPatternTitle",
            "classAttr:Operators.inSetTitle",
            "classAttr:Operators.notInSetTitle",
            "classAttr:Operators.equalsFieldTitle",
            "classAttr:Operators.notEqualFieldTitle",
            "classAttr:Operators.iEqualsFieldTitle",
            "classAttr:Operators.iNotEqualFieldTitle",
            "classAttr:Operators.greaterThanFieldTitle",
            "classAttr:Operators.lessThanFieldTitle",
            "classAttr:Operators.greaterOrEqualFieldTitle",
            "classAttr:Operators.lessOrEqualFieldTitle",
            "classAttr:Operators.containsFieldTitle",
            "classAttr:Operators.startsWithFieldTitle",
            "classAttr:Operators.endsWithFieldTitle",
            "classAttr:Operators.iContainsFieldTitle",
            "classAttr:Operators.iStartsWithFieldTitle",
            "classAttr:Operators.iEndsWithFieldTitle",
            "classAttr:Operators.notContainsFieldTitle",
            "classAttr:Operators.notStartsWithFieldTitle",
            "classAttr:Operators.notEndsWithFieldTitle",
            "classAttr:Operators.iNotContainsFieldTitle",
            "classAttr:Operators.iNotStartsWithFieldTitle",
            "classAttr:Operators.iNotEndsWithFieldTitle",
            "classAttr:Operators.andTitle",
            "classAttr:Operators.notTitle",
            "classAttr:Operators.orTitle",
            "classAttr:Dialog.OK_BUTTON_TITLE",
            "classAttr:Dialog.APPLY_BUTTON_TITLE",
            "classAttr:Dialog.YES_BUTTON_TITLE",
            "classAttr:Dialog.NO_BUTTON_TITLE",
            "classAttr:Dialog.CANCEL_BUTTON_TITLE",
            "classAttr:Dialog.DONE_BUTTON_TITLE",
            "classAttr:Dialog.CONFIRM_TITLE",
            "classAttr:Dialog.SAY_TITLE",
            "classAttr:Dialog.WARN_TITLE",
            "classAttr:Dialog.ASK_TITLE",
            "classAttr:Dialog.ASK_FOR_VALUE_TITLE",
            "classAttr:LoginDialog.LOGIN_TITLE",
            "classAttr:LoginDialog.USERNAME_TITLE",
            "classAttr:LoginDialog.PASSWORD_TITLE",
            "classAttr:LoginDialog.LOGIN_BUTTON_TITLE",
            "classAttr:LoginDialog.LOGIN_ERROR_MESSAGE",
            "classAttr:NumberUtil.decimalSymbol",
            "classAttr:NumberUtil.groupingSymbol",
            "classAttr:NumberUtil.negativeSymbol",
            "classAttr:NumberUtil.currencySymbol",
            "classAttr:NumberUtil.negativeFormat",
            "classAttr:NumberUtil.groupingFormat",
            "classAttr:Date.shortDayNames",
            "classAttr:Date.dayNames",
            "classAttr:Date.shortMonthNames",
            "classAttr:Date.monthNames",
            "classAttr:Time.AMIndicator",
            "classAttr:Time.PMIndicator",
            "classAttr:FieldPickerField.frozenTitle",
            "classAttr:FieldPickerField.precisionTitle",
            "classAttr:FieldPickerField.decimalPrecisionTitle",
            "classAttr:FieldPickerField.decimalPadTitle",
            "classAttr:FieldPickerField.alignTitle",
            "classAttr:FieldPickerField.cellAlignTitle",
            "classAttr:GroupingMessages.upcomingTodayTitle",
            "classAttr:GroupingMessages.upcomingTomorrowTitle",
            "classAttr:GroupingMessages.upcomingThisWeekTitle",
            "classAttr:GroupingMessages.upcomingNextWeekTitle",
            "classAttr:GroupingMessages.upcomingNextMonthTitle",
            "classAttr:GroupingMessages.upcomingBeforeTitle",
            "classAttr:GroupingMessages.upcomingLaterTitle",
            "classAttr:GroupingMessages.byDayTitle",
            "classAttr:GroupingMessages.byWeekTitle",
            "classAttr:GroupingMessages.byMonthTitle",
            "classAttr:GroupingMessages.byQuarterTitle",
            "classAttr:GroupingMessages.byYearTitle",
            "classAttr:GroupingMessages.byDayOfMonthTitle",
            "classAttr:GroupingMessages.byUpcomingTitle",
            "classAttr:GroupingMessages.byHoursTitle",
            "classAttr:GroupingMessages.byMinutesTitle",
            "classAttr:GroupingMessages.bySecondsTitle",
            "classAttr:GroupingMessages.byMillisecondsTitle",
            "classAttr:GroupingMessages.weekNumberTitle",
            "classAttr:GroupingMessages.timezoneMinutesSuffix",
            "classAttr:GroupingMessages.timezoneSecondsSuffix",
            "classAttr:FacetChart.regressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.hideRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.linearRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.polynomialRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.polynomialDegreeRegressionLinesContextMenuItemTitle",
            "classAttr:FacetChart.polynomialDegreePrompt",
            "classAttr:FacetChart.invalidPolynomialDegreeMessage",
            "classAttr:Validator.notABoolean",
            "classAttr:Validator.notAString",
            "classAttr:Validator.notAnInteger",
            "classAttr:Validator.notADecimal",
            "classAttr:Validator.notADate",
            "classAttr:Validator.mustBeLessThan",
            "classAttr:Validator.mustBeGreaterThan",
            "classAttr:Validator.mustBeLaterThan",
            "classAttr:Validator.mustBeLaterThanTime",
            "classAttr:Validator.mustBeEarlierThan",
            "classAttr:Validator.mustBeEarlierThanTime",
            "classAttr:Validator.mustBeShorterThan",
            "classAttr:Validator.mustBeLongerThan",
            "classAttr:Validator.mustBeExactLength",
            "classAttr:Validator.requiredField",
            "classAttr:Validator.notOneOf",
            "classAttr:MultiComboBoxItem.defaultHint",
            "classMethod:Page.getUnsupportedBrowserPromptString",
            "attr:FilterClause.fieldPickerTitle",
            "attr:FilterClause.operatorPickerTitle",
            "attr:FilterClause.valueItemTitle",
            "attr:FilterClause.valueSetHint",
            "attr:FilterClause.removeButtonPrompt",
            "attr:FilterBuilder.missingFieldPrompt",
            "attr:FilterBuilder.fieldPickerTitle",
            "attr:FilterBuilder.operatorPickerTitle",
            "attr:FilterBuilder.removeButtonPrompt",
            "attr:FilterBuilder.addButtonPrompt",
            "attr:FilterBuilder.radioOperatorTitle",
            "attr:FilterBuilder.topOperatorTitle",
            "attr:FilterBuilder.matchAllTitle",
            "attr:FilterBuilder.matchNoneTitle",
            "attr:FilterBuilder.matchAnyTitle",
            "attr:FilterBuilder.inlineAndTitle",
            "attr:FilterBuilder.inlineOrTitle",
            "attr:FilterBuilder.inlineAndNotTitle",
            "attr:FilterBuilder.modeSwitcherAdvancedMessage",
            "attr:FilterBuilder.modeSwitcherSimpleMessage",
            "attr:FilterBuilder.modeSwitcherFlattenWarningMessage",
            "attr:FilterBuilder.rangeSeparator",
            "attr:FilterBuilder.subClauseButtonTitle",
            "attr:FilterBuilder.subClauseButtonPrompt",
            "attr:Calendar.weekPrefix",
            "attr:Calendar.dayViewTitle",
            "attr:Calendar.weekViewTitle",
            "attr:Calendar.monthViewTitle",
            "attr:Calendar.timelineViewTitle",
            "attr:Calendar.eventNameFieldTitle",
            "attr:Calendar.eventStartDateFieldTitle",
            "attr:Calendar.eventEndDateFieldTitle",
            "attr:Calendar.eventDescriptionFieldTitle",
            "attr:Calendar.eventLaneFieldTitle",
            "attr:Calendar.saveButtonTitle",
            "attr:Calendar.detailsButtonTitle",
            "attr:Calendar.cancelButtonTitle",
            "attr:Calendar.previousButtonHoverText",
            "attr:Calendar.nextButtonHoverText",
            "attr:Calendar.addEventButtonHoverText",
            "attr:Calendar.datePickerHoverText",
            "attr:Calendar.invalidDateMessage",
            "attr:Window.title",
            "attr:Portlet.closeConfirmationMessage",
            "attr:Portlet.closeConfirmationDialogProperties",
            "attr:MultiSortPanel.addLevelButtonTitle",
            "attr:MultiSortPanel.deleteLevelButtonTitle",
            "attr:MultiSortPanel.copyLevelButtonTitle",
            "attr:MultiSortPanel.invalidListPrompt",
            "attr:MultiSortPanel.propertyFieldTitle",
            "attr:MultiSortPanel.directionFieldTitle",
            "attr:MultiSortPanel.ascendingTitle",
            "attr:MultiSortPanel.descendingTitle",
            "attr:MultiSortPanel.firstSortLevelTitle",
            "attr:MultiSortPanel.otherSortLevelTitle",
            "attr:MultiSortPanel.levelUpButtonTitle",
            "attr:MultiSortPanel.levelDownButtonTitle",
            "attr:MultiSortDialog.title",
            "attr:MultiSortDialog.addLevelButtonTitle",
            "attr:MultiSortDialog.deleteLevelButtonTitle",
            "attr:MultiSortDialog.copyLevelButtonTitle",
            "attr:MultiSortDialog.levelUpButtonTitle",
            "attr:MultiSortDialog.levelDownButtonTitle",
            "attr:MultiSortDialog.invalidListPrompt",
            "attr:MultiSortDialog.propertyFieldTitle",
            "attr:MultiSortDialog.directionFieldTitle",
            "attr:MultiSortDialog.ascendingTitle",
            "attr:MultiSortDialog.descendingTitle",
            "attr:MultiSortDialog.firstSortLevelTitle",
            "attr:MultiSortDialog.otherSortLevelTitle",
            "attr:MultiSortDialog.applyButtonTitle",
            "attr:MultiSortDialog.cancelButtonTitle",
            "attr:DataBoundComponent.duplicateDragMessage",
            "attr:DataBoundComponent.offlineMessage",
            "attr:DataBoundComponent.offlineSaveMessage",
            "attr:DataBoundComponent.editHilitesDialogTitle",
            "attr:DataBoundComponent.addFormulaFieldText",
            "attr:DataBoundComponent.editFormulaFieldText",
            "attr:DataBoundComponent.removeFormulaFieldText",
            "attr:DataBoundComponent.addSummaryFieldText",
            "attr:DataBoundComponent.editSummaryFieldText",
            "attr:DataBoundComponent.removeSummaryFieldText",
            "attr:DataBoundComponent.emptyExportMessage",
            "attr:DataBoundComponent.unknownErrorMessage",
            "attr:Selection.selectionRangeNotLoadedMessage",
            "attr:DetailViewer.configureFieldsText",
            "attr:GridRenderer.emptyMessage",
            "attr:GridRenderer.offlineMessage",
            "attr:ListGrid.asynchGroupingPrompt",
            "attr:ListGrid.hiliteReplaceValueFieldTitle",
            "attr:ListGrid.emptyMessage",
            "attr:ListGrid.filterButtonPrompt",
            "attr:ListGrid.loadingDataMessage",
            "attr:ListGrid.loadingMessage",
            "attr:ListGrid.warnOnRemovalMessage",
            "attr:ListGrid.cancelEditingConfirmationMessage",
            "attr:ListGrid.confirmDiscardEditsMessage",
            "attr:ListGrid.discardEditsSaveButtonTitle",
            "attr:ListGrid.sorterButtonTitle",
            "attr:ListGrid.maxExpandedRecordsPrompt",
            "attr:ListGrid.expansionEditorSaveDialogPrompt",
            "attr:ListGrid.expansionEditorSaveButtonTitle",
            "attr:ListGrid.formulaBuilderSpanTitleSeparator",
            "attr:ListGrid.sortEditorSpanTitleSeparator",
            "attr:ListGrid.hiliteEditorSpanTitleSeparator",
            "attr:ListGrid.freezeOnRightText",
            "attr:ListGrid.freezeOnLeftText",
            "attr:ListGrid.sortFieldAscendingText",
            "attr:ListGrid.sortFieldDescendingText",
            "attr:ListGrid.clearSortFieldText",
            "attr:ListGrid.clearAllSortingText",
            "attr:ListGrid.clearFilterText",
            "attr:ListGrid.configureSortText",
            "attr:ListGrid.configureGroupingText",
            "attr:ListGrid.autoFitFieldText",
            "attr:ListGrid.autoFitAllText",
            "attr:ListGrid.fieldVisibilitySubmenuTitle",
            "attr:ListGrid.freezeFieldText",
            "attr:ListGrid.unfreezeFieldText",
            "attr:ListGrid.groupByText",
            "attr:ListGrid.ungroupText",
            "attr:TreeGrid.parentAlreadyContainsChildMessage",
            "attr:TreeGrid.cantDragIntoSelfMessage",
            "attr:TreeGrid.cantDragIntoChildMessage",
            "attr:TreeGrid.offlineNodeMessage",
            "attr:FieldPicker.hilitesText",
            "attr:FieldPicker.availableFieldsTitle",
            "attr:FieldPicker.currentFieldsTitle",
            "attr:FieldPicker.addCustomFieldsButtonTitle",
            "attr:FieldPicker.availableTitleTitle",
            "attr:FieldPicker.currentTitleTitle",
            "attr:FieldPicker.sampleValueTitle",
            "attr:FieldPicker.confirmText",
            "attr:FieldPicker.removeText",
            "attr:FieldPicker.instructions",
            "attr:FieldPicker.saveAndExitButtonTitle",
            "attr:FieldPicker.cancelButtonTitle",
            "attr:FieldPicker.removeItemTitle",
            "attr:FieldPicker.emptyTitleHint",
            "attr:FieldPickerWindow.title",
            "attr:Menu.emptyMessage",
            "attr:MenuButton.title",
            "attr:IMenuButton.title",
            "attr:TreeMenuButton.unselectedTitle",
            "attr:ColumnTree.backButtonTitle",
            "attr:FormulaBuilder.autoHideCheckBoxLabel",
            "attr:FormulaBuilder.builderTypeText",
            "attr:FormulaBuilder.helpTextIntro",
            "attr:FormulaBuilder.instructionsTextStart",
            "attr:FormulaBuilder.invalidBuilderPrompt",
            "attr:FormulaBuilder.defaultErrorText",
            "attr:FormulaBuilder.invalidBlankPrompt",
            "attr:FormulaBuilder.validBuilderPrompt",
            "attr:FormulaBuilder.helpWindowTitle",
            "attr:FormulaBuilder.titleFieldTitle",
            "attr:FormulaBuilder.defaultNewFieldTitle",
            "attr:FormulaBuilder.keyColumnTitle",
            "attr:FormulaBuilder.sourceFieldColumnTitle",
            "attr:FormulaBuilder.cancelButtonTitle",
            "attr:FormulaBuilder.saveAddAnotherButtonTitle",
            "attr:FormulaBuilder.saveButtonTitle",
            "attr:FormulaBuilder.saveConfirmationPrompt",
            "attr:FormulaBuilder.invalidGeneratedFunctionPrompt",
            "attr:FormulaBuilder.sampleHeaderTitle",
            "attr:FormulaBuilder.testButtonTitle",
            "attr:FormulaBuilder.warnDuplicateTitlesMessage",
            "attr:FormulaBuilder.samplePrompt",
            "attr:SummaryBuilder.builderTypeText",
            "attr:SummaryBuilder.autoHideCheckBoxLabel",
            "attr:SummaryBuilder.helpTextIntro",
            "attr:HiliteRule.colorFieldTitle",
            "attr:HiliteRule.removeButtonPrompt",
            "attr:HiliteRule.foregroundColorTitle",
            "attr:HiliteRule.backgroundColorTitle",
            "attr:HiliteRule.iconFieldTitle",
            "attr:HiliteEditor.availableFieldsColumnTitle",
            "attr:HiliteEditor.addAdvancedRuleButtonTitle",
            "attr:HiliteEditor.saveButtonTitle",
            "attr:HiliteEditor.cancelButtonTitle",
            "attr:AdvancedHiliteEditor.filterGroupTitle",
            "attr:AdvancedHiliteEditor.appearanceGroupTitle",
            "attr:AdvancedHiliteEditor.targetFieldsItemTitle",
            "attr:AdvancedHiliteEditor.saveButtonTitle",
            "attr:AdvancedHiliteEditor.cancelButtonTitle",
            "attr:AdvancedHiliteEditor.invalidHilitePrompt",
            "attr:AdvancedHiliteEditor.title",
            "attr:MultiGroupPanel.addLevelButtonTitle",
            "attr:MultiGroupPanel.deleteLevelButtonTitle",
            "attr:MultiGroupPanel.copyLevelButtonTitle",
            "attr:MultiGroupPanel.invalidListPrompt",
            "attr:MultiGroupPanel.propertyFieldTitle",
            "attr:MultiGroupPanel.groupingFieldTitle",
            "attr:MultiGroupPanel.firstGroupLevelTitle",
            "attr:MultiGroupPanel.otherGroupLevelTitle",
            "attr:MultiGroupPanel.levelUpButtonTitle",
            "attr:MultiGroupPanel.levelDownButtonTitle",
            "attr:MultiGroupDialog.title",
            "attr:MultiGroupDialog.addLevelButtonTitle",
            "attr:MultiGroupDialog.deleteLevelButtonTitle",
            "attr:MultiGroupDialog.copyLevelButtonTitle",
            "attr:MultiGroupDialog.levelUpButtonTitle",
            "attr:MultiGroupDialog.levelDownButtonTitle",
            "attr:MultiGroupDialog.invalidListPrompt",
            "attr:MultiGroupDialog.propertyFieldTitle",
            "attr:MultiGroupDialog.groupingFieldTitle",
            "attr:MultiGroupDialog.applyButtonTitle",
            "attr:MultiGroupDialog.cancelButtonTitle",
            "attr:ListPropertiesPane.startNumberFieldTitle",
            "attr:ListPropertiesDialog.title",
            "attr:ListPropertiesDialog.applyButtonTitle",
            "attr:ListPropertiesDialog.cancelButtonTitle",
            "attr:Button.title",
            "attr:DateChooser.todayButtonTitle",
            "attr:DateChooser.cancelButtonTitle",
            "attr:DateChooser.applyButtonTitle",
            "attr:DateChooser.firstDayOfWeek",
            "attr:DateChooser.timeItemTitle",
            "attr:DateChooser.fiscalYearFieldTitle",
            "attr:DateChooser.weekFieldTitle",
            "attr:DynamicForm.errorsPreamble",
            "attr:DynamicForm.unknownErrorMessage",
            "attr:DynamicForm.formSubmitFailedWarning",
            "attr:FormItem.loadingDisplayValue",
            "attr:FormItem.pickerIconPrompt",
            "attr:PickListMenu.emptyMessage",
            "attr:PickList.emptyPickListMessage",
            "attr:SelectOtherItem.otherTitle",
            "attr:SelectOtherItem.selectOtherPrompt",
            "attr:DateItem.invalidDateStringMessage",
            "attr:DateItem.pickerIconPrompt",
            "attr:TimeItem.hourItemTitle",
            "attr:TimeItem.hourItemPrompt",
            "attr:TimeItem.minuteItemTitle",
            "attr:TimeItem.minuteItemPrompt",
            "attr:TimeItem.secondItemTitle",
            "attr:TimeItem.secondItemPrompt",
            "attr:TimeItem.millisecondItemTitle",
            "attr:TimeItem.millisecondItemPrompt",
            "attr:TimeItem.ampmItemTitle",
            "attr:TimeItem.invalidTimeStringMessage",
            "attr:MultiFileItem.emptyMessage",
            "attr:MultiFileItem.editButtonPrompt",
            "attr:MultiFileItem.removeButtonPrompt",
            "attr:MultiFileItem.pickerUploadButtonInitialTitle",
            "attr:MultiFileItem.pickerUploadButtonTitle",
            "attr:MultiFileItem.pickerCancelButtonTitle",
            "attr:MultiFileItem.pickerAddAnotherFileButtonTitle",
            "attr:MultiFileItem.pickerUploadProgressLabel",
            "attr:ColorItem.pickerIconPrompt",
            "attr:ColorPicker.lessButtonTitle",
            "attr:ColorPicker.moreButtonTitle",
            "attr:ColorPicker.basicColorLabel",
            "attr:ColorPicker.selectedColorLabel",
            "attr:ColorPicker.opacitySliderLabel",
            "attr:ColorPicker.redFieldTitle",
            "attr:ColorPicker.redFieldPrompt",
            "attr:ColorPicker.greenFieldTitle",
            "attr:ColorPicker.greenFieldPrompt",
            "attr:ColorPicker.blueFieldTitle",
            "attr:ColorPicker.blueFieldPrompt",
            "attr:ColorPicker.htmlFieldTitle",
            "attr:ColorPicker.htmlFieldPrompt",
            "attr:ColorPicker.hueFieldTitle",
            "attr:ColorPicker.hueFieldPrompt",
            "attr:ColorPicker.satFieldTitle",
            "attr:ColorPicker.satFieldPrompt",
            "attr:ColorPicker.lumFieldTitle",
            "attr:ColorPicker.lumFieldPrompt",
            "attr:ColorPicker.okButtonTitle",
            "attr:ColorPicker.cancelButtonTitle",
            "attr:RelativeDateItem.millisecondsAgoTitle",
            "attr:RelativeDateItem.secondsAgoTitle",
            "attr:RelativeDateItem.minutesAgoTitle",
            "attr:RelativeDateItem.hoursAgoTitle",
            "attr:RelativeDateItem.daysAgoTitle",
            "attr:RelativeDateItem.weeksAgoTitle",
            "attr:RelativeDateItem.monthsAgoTitle",
            "attr:RelativeDateItem.quartersAgoTitle",
            "attr:RelativeDateItem.yearsAgoTitle",
            "attr:RelativeDateItem.millisecondsFromNowTitle",
            "attr:RelativeDateItem.secondsFromNowTitle",
            "attr:RelativeDateItem.minutesFromNowTitle",
            "attr:RelativeDateItem.hoursFromNowTitle",
            "attr:RelativeDateItem.daysFromNowTitle",
            "attr:RelativeDateItem.weeksFromNowTitle",
            "attr:RelativeDateItem.monthsFromNowTitle",
            "attr:RelativeDateItem.quartersFromNowTitle",
            "attr:RelativeDateItem.yearsFromNowTitle",
            "attr:RelativeDateItem.pickerIconPrompt",
            "attr:DateRangeItem.fromTitle",
            "attr:DateRangeItem.toTitle",
            "attr:DateRangeItem.invalidRangeErrorMessage",
            "attr:DateRangeDialog.headerTitle",
            "attr:DateRangeDialog.clearButtonTitle",
            "attr:DateRangeDialog.okButtonTitle",
            "attr:DateRangeDialog.cancelButtonTitle",
            "attr:MiniDateRangeItem.fromDateOnlyPrefix",
            "attr:MiniDateRangeItem.toDateOnlyPrefix",
            "attr:MiniDateRangeItem.pickerIconPrompt",
            "attr:PresetCriteriaItem.customOptionTitle"
        ],
        description:"The properties in this group are default system messages that a localized \n application will want to override on a per-locale basis",
        name:"i18nMessages",
        seeAlso:[
            {
                ref:"group:i18n",
                description:null
            }
        ],
        type:"group"
    },
    "attr:DataSource.idClassName":{
        ref:"attr:DataSource.idClassName",
        flags:"IR",
        description:"For JPA and Hibernate DataSources this property indicates, that data source has composite primary key and\n specifies fully-qualified Java class:<ul>\n <li>with <b><code>@EmbeddedId</code></b> you have to specify class name of declared id</li>\n <li>with <b><code>@IdClass</code></b> you have to specify class specified in annotation declaration</li></ul>",
        name:"idClassName",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "method:RadioGroupItem.valueHoverHTML":{
        ref:"method:RadioGroupItem.valueHoverHTML",
        flags:"A",
        description:" If defined, this method should return the HTML to display in a hover canvas when the \n user holds the mousepointer over one of the radio-items in this RadioGroupItem.  Return \n null to suppress the hover canvas altogether.\n\n",
        name:"valueHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"The sub-value (radio-item) to get the hoverHTML for",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"Any"
            },
            {
                description:"Pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"RadioGroupItem"
            },
            {
                description:"This item's form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:RadioGroupItem",
        groups:[
            "Hovers"
        ]
    },
    "method:ListGrid.getEditedCell":{
        ref:"method:ListGrid.getEditedCell",
        flags:"",
        description:" Returns the current value of a cell. If the cell has an outstanding edit value, this will\n be returned, otherwise the underlying value of the record will be returned.\n\n",
        name:"getEditedCell",
        seeAlso:[
        ],
        params:[
            {
                description:"rowNum of the record being edited, or an Object                                      containing values for all the record's primary keys",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"number | Object"
            },
            {
                description:"colNum or fieldName of the cell",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"number | string"
            }
        ],
        returns:{
            description:"Current edit value, or underlying value for the cell",
            type:"any"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:TabSet.selectedTab":{
        ref:"attr:TabSet.selectedTab",
        flags:"IRW",
        getter:[
            "getSelectedTab"
        ],
        description:"Specifies the index of the initially selected tab.",
        name:"selectedTab",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBar"
        ]
    },
    "group:visibility":{
        ref:"group:visibility",
        refs:[
            "method:Canvas.show",
            "method:Canvas.showRecursively",
            "method:Canvas.hide",
            "method:Canvas.isVisible",
            "method:Menu.showContextMenu",
            "method:Menu.hideContextMenu",
            "method:Menu.showSubmenu",
            "method:FormItem.isVisible",
            "attr:Calendar.showDateChooser",
            "attr:Calendar.disableWeekends",
            "attr:Calendar.showWeekends",
            "attr:Calendar.showDayHeaders",
            "attr:Calendar.showOtherDays",
            "attr:Canvas.shrinkElementOnHide",
            "type:Visibility"
        ],
        description:"Whether an object can be seen",
        name:"visibility",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:SectionStackSection.items":{
        ref:"attr:SectionStackSection.items",
        flags:"I",
        description:"List of Canvases that constitute the section.  These Canvases will be shown and hidden\n together.",
        name:"items",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "attr:ListGrid.hiliteIconHeight":{
        ref:"attr:ListGrid.hiliteIconHeight",
        flags:"IRW",
        description:"Height for hilite icons for this listGrid.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconSize','hiliteIconSize')}.\n Can be overridden at the field level",
        name:"hiliteIconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "class:DynamicForm":{
        methods:[
            "method:DynamicForm.editNewRecord",
            "method:DynamicForm.editRecord",
            "method:DynamicForm.editSelectedData",
            "method:DynamicForm.validateData",
            "method:DynamicForm.reset",
            "method:DynamicForm.cancel",
            "method:DynamicForm.cancelEditing",
            "method:DynamicForm.completeEditing",
            "method:DynamicForm.submit",
            "method:DynamicForm.saveData",
            "method:DynamicForm.isNewRecord",
            "method:DynamicForm.setSaveOperationType",
            "method:DynamicForm.getSaveOperationType",
            "method:DynamicForm.fetchData",
            "method:DynamicForm.filterData",
            "method:DynamicForm.handleAsyncValidationReply",
            "method:DynamicForm.isPendingAsyncValidation",
            "method:DynamicForm.getEditorType",
            "method:DynamicForm.setItems",
            "method:DynamicForm.setFields",
            "method:DynamicForm.getFields",
            "method:DynamicForm.getItems",
            "method:DynamicForm.setTitleOrientation",
            "method:DynamicForm.setValues",
            "method:DynamicForm.rememberValues",
            "method:DynamicForm.resetValues",
            "method:DynamicForm.clearValues",
            "method:DynamicForm.valuesHaveChanged",
            "method:DynamicForm.getOldValues",
            "method:DynamicForm.getChangedValues",
            "method:DynamicForm.getValues",
            "method:DynamicForm.getValuesAsCriteria",
            "method:DynamicForm.setValuesAsCriteria",
            "method:DynamicForm.getValuesAsAdvancedCriteria",
            "method:DynamicForm.getItem",
            "method:DynamicForm.getField",
            "method:DynamicForm.getValue",
            "method:DynamicForm.setValue",
            "method:DynamicForm.clearValue",
            "method:DynamicForm.showItem",
            "method:DynamicForm.hideItem",
            "method:DynamicForm.setValueMap",
            "method:DynamicForm.getErrors",
            "method:DynamicForm.getFieldErrors",
            "method:DynamicForm.setErrors",
            "method:DynamicForm.setError",
            "method:DynamicForm.addFieldErrors",
            "method:DynamicForm.setFieldErrors",
            "method:DynamicForm.clearFieldErrors",
            "method:DynamicForm.clearErrors",
            "method:DynamicForm.hasErrors",
            "method:DynamicForm.hasFieldErrors",
            "method:DynamicForm.getErrorsHTML",
            "method:DynamicForm.getItemErrorHTML",
            "method:DynamicForm.getTitleOrientation",
            "method:DynamicForm.getTitleAlign",
            "method:DynamicForm.titleClipped",
            "method:DynamicForm.submitForm",
            "method:DynamicForm.formSubmitFailed",
            "method:DynamicForm.setAction",
            "method:DynamicForm.setTarget",
            "method:DynamicForm.setMethod",
            "method:DynamicForm.validate",
            "method:DynamicForm.valuesAreValid",
            "method:DynamicForm.getValidatedValues",
            "method:DynamicForm.showErrors",
            "method:DynamicForm.showFieldErrors",
            "method:DynamicForm.getFocusItem",
            "method:DynamicForm.focusInItem",
            "method:DynamicForm.getEventItem",
            "method:DynamicForm.getEventItemInfo",
            "method:DynamicForm.itemHoverHTML",
            "method:DynamicForm.titleHoverHTML",
            "method:DynamicForm.valueHoverHTML",
            "method:DynamicForm.setCanEdit",
            "method:DynamicForm.setReadOnlyDisplay",
            "method:DynamicForm.valuesChanged",
            "method:DynamicForm.itemChanged",
            "method:DynamicForm.itemChange",
            "method:DynamicForm.itemKeyPress",
            "method:DynamicForm.submitValues",
            "method:DynamicForm.handleHiddenValidationErrors"
        ],
        exampleConfig:"DynamicForm.xml",
        ref:"class:DynamicForm",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:DynamicForm.userTask",
            "attr:DynamicForm.suppressValidationErrorCallback",
            "attr:DynamicForm.saveOperationType",
            "attr:DynamicForm.autoFetchData",
            "attr:DynamicForm.autoFetchTextMatchStyle",
            "attr:DynamicForm.initialCriteria",
            "attr:DynamicForm.items",
            "attr:DynamicForm.fields",
            "attr:DynamicForm.values",
            "attr:DynamicForm.itemLayout",
            "attr:DynamicForm.numCols",
            "attr:DynamicForm.fixedColWidths",
            "attr:DynamicForm.colWidths",
            "attr:DynamicForm.minColWidth",
            "attr:DynamicForm.cellPadding",
            "attr:DynamicForm.cellBorder",
            "attr:DynamicForm.sectionVisibilityMode",
            "attr:DynamicForm.showDetailFields",
            "attr:DynamicForm.longTextEditorThreshold",
            "attr:DynamicForm.longTextEditorType",
            "attr:DynamicForm.dateFormatter",
            "attr:DynamicForm.timeFormatter",
            "attr:DynamicForm.datetimeFormatter",
            "attr:DynamicForm.valuesManager",
            "attr:DynamicForm.titleOrientation",
            "attr:DynamicForm.titlePrefix",
            "attr:DynamicForm.rightTitlePrefix",
            "attr:DynamicForm.titleSuffix",
            "attr:DynamicForm.rightTitleSuffix",
            "attr:DynamicForm.titleWidth",
            "attr:DynamicForm.clipItemTitles",
            "attr:DynamicForm.wrapItemTitles",
            "attr:DynamicForm.showInlineErrors",
            "attr:DynamicForm.showErrorIcons",
            "attr:DynamicForm.showErrorText",
            "attr:DynamicForm.showErrorStyle",
            "attr:DynamicForm.errorOrientation",
            "attr:DynamicForm.errorItemProperties",
            "attr:DynamicForm.errorItemCellStyle",
            "attr:DynamicForm.errorsPreamble",
            "attr:DynamicForm.showTitlesWithErrorMessages",
            "attr:DynamicForm.hiliteRequiredFields",
            "attr:DynamicForm.requiredTitlePrefix",
            "attr:DynamicForm.requiredRightTitlePrefix",
            "attr:DynamicForm.requiredTitleSuffix",
            "attr:DynamicForm.requiredRightTitleSuffix",
            "attr:DynamicForm.requiredMessage",
            "attr:DynamicForm.canEdit",
            "attr:DynamicForm.readOnlyDisplay",
            "attr:DynamicForm.readOnlyTextBoxStyle",
            "attr:DynamicForm.clipStaticValue",
            "attr:DynamicForm.showDeletions",
            "attr:DynamicForm.itemHoverDelay",
            "attr:DynamicForm.itemHoverWidth",
            "attr:DynamicForm.itemHoverHeight",
            "attr:DynamicForm.itemHoverAlign",
            "attr:DynamicForm.itemHoverVAlign",
            "attr:DynamicForm.itemHoverStyle",
            "attr:DynamicForm.itemHoverOpacity",
            "attr:DynamicForm.errors",
            "attr:DynamicForm.validateOnChange",
            "attr:DynamicForm.rejectInvalidValueOnChange",
            "attr:DynamicForm.unknownErrorMessage",
            "attr:DynamicForm.validateOnExit",
            "attr:DynamicForm.implicitSave",
            "attr:DynamicForm.implicitSaveOnBlur",
            "attr:DynamicForm.implicitSaveDelay",
            "attr:DynamicForm.stopOnError",
            "attr:DynamicForm.synchronousValidation",
            "attr:DynamicForm.autoFocus",
            "attr:DynamicForm.autoFocusOnError",
            "attr:DynamicForm.selectOnFocus",
            "attr:DynamicForm.selectOnClick",
            "attr:DynamicForm.canFocus",
            "attr:DynamicForm.browserSpellCheck",
            "attr:DynamicForm.validationURL",
            "attr:DynamicForm.disableValidation",
            "attr:DynamicForm.cancelParamName",
            "attr:DynamicForm.cancelParamValue",
            "attr:DynamicForm.action",
            "attr:DynamicForm.target",
            "attr:DynamicForm.method",
            "attr:DynamicForm.encoding",
            "attr:DynamicForm.canSubmit",
            "attr:DynamicForm.saveOnEnter",
            "attr:DynamicForm.operator",
            "attr:DynamicForm.showComplexFieldsRecursively",
            "attr:DynamicForm.nestedEditorType",
            "attr:DynamicForm.nestedListEditorType",
            "attr:DynamicForm.dataFetchMode",
            "attr:DynamicForm.defaultSearchOperator",
            "attr:DynamicForm.canTabToSectionHeaders",
            "attr:DynamicForm.titleAlign",
            "attr:DynamicForm.formSubmitFailedWarning",
            "attr:DynamicForm.canEditFieldAttribute",
            "attr:DynamicForm.allowExpressions"
        ],
        description:"The DynamicForm manages a collection of FormItems which represent user input controls.  The\n DynamicForm provides ${isc.DocUtils.linkForRef('group:formLayout','layout')}, value management, validation and\n databinding for the controls it manages.\n <P>\n <smartgwt>\n To create a DynamicForm, create several ${isc.DocUtils.linkForRef('class:FormItem')}s and pass them to\n ${isc.DocUtils.linkForRef('method:DynamicForm.setItems','setItems()')}.  For example:\n <pre>\n    DynamicForm form = new DynamicForm();\n    TextItem textItem = new TextItem(\"userName\");\n    SelectItem selectItem = new SelectItem(\"usState\");\n    form.setItems(textItem, selectItem);\n </pre>\n </smartgwt>\n <smartclient>\n To create a DynamicForm, set ${isc.DocUtils.linkForRef('attr:DynamicForm.fields')} to an Array of Objects describing the\n FormItems you want to use.  For example:\n <pre>\n    isc.DynamicForm.create({\n        fields:[\n            {name:\"userName\", type:\"text\"},  // creates a TextItem\n            {name:\"usState\", type:\"select\"}  // creates a SelectItem\n        ]\n    })\n </pre>\n </smartclient>\n The item <code>name</code> is an identifier for the item that must be unique just within\n this form.  It is used:\n <ul>\n <li> as the name under which the item's value is stored in the form (the form's\n      current values are accessible as ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}\n <li> when retrieving the FormItem's current value (via\n      ${isc.DocUtils.linkForRef('method:DynamicForm.getValue','form.getValue()')}) \n <li> to retrieve the item itself via ${isc.DocUtils.linkForRef('method:DynamicForm.getItem','form.getItem()')}\n </ul>\n FormItems can also be created by binding the form to a DataSource via\n <code>setDataSource()</code>.  In this case, FormItems are\n chosen based on the data type of the field - see ${isc.DocUtils.linkForRef('type:FormItemType')}.  You can override\n the automatically chosen FormItem via ${isc.DocUtils.linkForRef('attr:DataSourceField.editorType')}.  \n <P>\n When using DataSource binding, you can also add additional FormItems not specified in the\n DataSource, or override any properties on the automatically generated FormItems, without\n having to re-declare any information that comes from the DataSource.  See the QuickStart\n Guide chapter on Data Binding for an overview.\n <P>\n All FormItems share a common set of properties for controlling ${isc.DocUtils.linkForRef('group:formLayout','form\\n layout')}.  Other properties common to all FormItems are documented on the ${isc.DocUtils.linkForRef('class:FormItem')}\n class, and properties specific to particular FormItems are documented on the respective\n FormItems.  \n <P>\n NOTE: For very simple forms consisting of exactly one item, you still use a DynamicForm.\n See the \"fontSelector\" form in the ${isc.DocUtils.linkForExampleId('toolstrip', 'Toolstrip example')}.",
        name:"DynamicForm",
        implementsInterfaces:[
            "DataBoundComponent"
        ],
        seeAlso:[
        ],
        type:"class"
    },
    "attr:TextAreaItem.formatOnBlur":{
        ref:"attr:TextAreaItem.formatOnBlur",
        flags:"IRW",
        description:"With <code>formatOnBlur</code> enabled, this textAreaItem will format its value\n according to any specified static ${isc.DocUtils.linkForRef('method:FormItem.formatValue','static formatter')}\n as long as the item does not have focus. Once the user puts focus into the item\n the formatter will be removed. This provides a simply way for developers to\n show a nicely formatted display value in a freeform text field, without the need\n for an explicit ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} \n and ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} pair.",
        name:"formatOnBlur",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TextAreaItem"
    },
    "class:ButtonItem":{
        methods:[
            "method:ButtonItem.click",
            "method:ButtonItem.setTitle"
        ],
        exampleConfig:"ButtonItem.xml",
        ref:"class:ButtonItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:ButtonItem.height",
            "attr:ButtonItem.baseStyle",
            "attr:ButtonItem.icon",
            "attr:ButtonItem.showTitle",
            "attr:ButtonItem.startRow",
            "attr:ButtonItem.endRow",
            "attr:ButtonItem.button",
            "attr:ButtonItem.buttonConstructor",
            "attr:ButtonItem.autoFit",
            "attr:ButtonItem.buttonProperties",
            "attr:ButtonItem.readOnlyDisplay"
        ],
        description:"FormItem for adding a Button to a form.",
        name:"ButtonItem",
        seeAlso:[
        ],
        type:"class"
    },
    "class:Menu":{
        methods:[
            "method:Menu.itemClick",
            "method:Menu.showContextMenu",
            "method:Menu.setData",
            "method:Menu.setItems",
            "method:Menu.hideContextMenu",
            "method:Menu.getItem",
            "method:Menu.setItemProperties",
            "method:Menu.getItemNum",
            "method:Menu.getItems",
            "method:Menu.showSubmenu",
            "method:Menu.getSubmenu",
            "method:Menu.setItemEnabled",
            "method:Menu.setItemChecked",
            "method:Menu.setItemTitle",
            "method:Menu.setItemIcon"
        ],
        ref:"class:Menu",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:Menu.hideAllMenus"
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:Menu.iconFieldProperties",
            "attr:Menu.iconFieldDefaults",
            "attr:Menu.titleFieldProperties",
            "attr:Menu.titleFieldDefaults",
            "attr:Menu.keyFieldProperties",
            "attr:Menu.keyFieldDefaults",
            "attr:Menu.submenuFieldProperties",
            "attr:Menu.submenuFieldDefaults",
            "attr:Menu.data",
            "attr:Menu.items",
            "attr:Menu.dataSource",
            "attr:Menu.dataProperties",
            "attr:Menu.target",
            "attr:Menu.fields",
            "attr:Menu.bodyStyleName",
            "attr:Menu.iconBodyStyleName",
            "attr:Menu.defaultWidth",
            "attr:Menu.cellHeight",
            "attr:Menu.autoDraw",
            "attr:Menu.baseStyle",
            "attr:Menu.alternateRecordStyles",
            "attr:Menu.useKeys",
            "attr:Menu.showKeys",
            "attr:Menu.showIcons",
            "attr:Menu.showSubmenus",
            "attr:Menu.submenuDirection",
            "attr:Menu.emptyMessage",
            "attr:Menu.iconWidth",
            "attr:Menu.iconHeight",
            "attr:Menu.showAnimationEffect",
            "attr:Menu.submenuImage",
            "attr:Menu.submenuDisabledImage",
            "attr:Menu.checkmarkImage",
            "attr:Menu.checkmarkDisabledImage",
            "attr:Menu.canSelectParentItems",
            "attr:Menu.autoDismiss",
            "attr:Menu.cascadeAutoDismiss",
            "attr:Menu.autoDismissOnBlur",
            "attr:Menu.submenuConstructor",
            "attr:Menu.fetchSubmenus",
            "attr:Menu.menuButtonWidth"
        ],
        description:"The Menu widget class implements interactive menu widgets, with optional icons, submenus,\n and shortcut keys.\n <p>\n A Menu is initialized with an Array of items, specified as menu.data, each of which represents\n one row in the menu's display and specifies the action to take when that menu item is selected.\n <p>\n Generally to create a context menu for a component, provide a Menu instance for the\n <code>contextMenu</code> property.  Note that some components have special context menu support\n because they have distinct regions or because they have a default set of context menu actions\n available.\n <p>\n If you want a button that pops up a menu when clicked, or a bar of such buttons, see the\n MenuButton and MenuBar classes.",
        name:"Menu",
        seeAlso:[
            {
                ref:"attr:Menu.data",
                description:null
            },
            {
                ref:"attr:Canvas.contextMenu",
                description:null
            },
            {
                ref:"class:MenuButton",
                description:null
            },
            {
                ref:"class:MenuBar",
                description:null
            }
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ]
    },
    "attr:ListGrid.canHover":{
        ref:"attr:ListGrid.canHover",
        flags:"IRW",
        description:"If true, cellHover and rowHover events will fire and then a hover will be shown (if not\n canceled) when the user leaves the mouse over a row / cell unless the corresponding field has\n ${isc.DocUtils.linkForRef('attr:ListGridField.showHover','showHover')} set to false. If unset or null, the hover will be\n shown if the corresponding field has showHover:true. If false, then hovers are disabled.\n <p>\n Note that standard hovers override ${isc.DocUtils.linkForRef('attr:ListGrid.showClippedValuesOnHover','clipped value hovers')}. Thus,\n to enable clipped value hovers, canHover must be unset or null and the corresponding field\n must have showHover unset or null as well.",
        name:"canHover",
        seeAlso:[
            {
                ref:"attr:ListGrid.showHover",
                description:null
            },
            {
                ref:"attr:ListGridField.showHover",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('valueHoverTips')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "hovers"
        ]
    },
    "attr:DataSource.lookAhead":{
        ref:"attr:DataSource.lookAhead",
        flags:"IRW",
        description:"If we are ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','loading progressively')}, indicates the number of \n extra records SmartClient Server will read beyond the end record requested by the client,\n in order to establish if there are more records to view.  This property has no effect \n if we are not progressive-loading.\n <p>\n This property can be tweaked in conjunction with ${isc.DocUtils.linkForRef('attr:DataSource.endGap','endGap')} to change behavior\n at the end of a dataset.  For example, with the default values of <code>lookAhead: 1</code>\n and <code>endGap: 20</code>, we can end up with the viewport shrinking if we get a case\n where there really was only one more record (because the client was initially told there\n were 20 more).  This is not a problem per se, but it may be surprising to the user.\n You could prevent this happening (at the cost of larger reads) by setting \n <code>lookAhead</code> to be <code>endGap+1</code>.",
        name:"lookAhead",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            },
            {
                ref:"attr:DataSource.endGap",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "progressiveLoading"
        ]
    },
    "method:Canvas.keyUp":{
        ref:"method:Canvas.keyUp",
        flags:"A",
        description:"\n Executed when a key is released on a focusable widget (${isc.DocUtils.linkForRef('attr:Canvas.canFocus')}: true).\n <P>\n Use ${isc.DocUtils.linkForRef('classMethod:EventHandler.getKey')} to find out the ${isc.DocUtils.linkForRef('type:KeyName','keyName')} of the key that\n was pressed, and use ${isc.DocUtils.linkForRef('classMethod:EventHandler.shiftKeyDown')} and related functions to determine\n whether modifier keys were down.\n\n",
        name:"keyUp",
        seeAlso:[
            {
                ref:"attr:Canvas.canFocus",
                description:null
            }
        ],
        returns:{
            description:"false to prevent this event from bubbling to this widget's parent, true or undefined to bubble.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "classMethod:Date.getFiscalCalendar":{
        ref:"classMethod:Date.getFiscalCalendar",
        flags:"",
        description:" Returns the global ${isc.DocUtils.linkForRef('object:FiscalCalendar','FiscalCalendar object')} representing the start month and\n date of the fiscal year in the current locale.\n",
        name:"getFiscalCalendar",
        seeAlso:[
        ],
        returns:{
            description:"the FiscalCalendar object",
            type:"FiscalCalendar"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "method:DataSource.getFieldCriterion":{
        ref:"method:DataSource.getFieldCriterion",
        flags:"",
        description:" Returns the depth-first match of a criterion matching the given fieldName.\n\n",
        name:"getFieldCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:"the criteria to search",
                optional:false,
                name:"criterion",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"the fieldName to find criteria for",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the depth-first matching criterion for the passed fieldName",
            type:"Criteria"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:MultiSortDialog.ascendingTitle":{
        ref:"attr:MultiSortDialog.ascendingTitle",
        flags:"IR",
        description:"The title-text to appear in the \"direction\" field's SelectItem for an \"ascending\" sort\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"ascendingTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Ascending\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:SectionStackSection.title":{
        ref:"attr:SectionStackSection.title",
        flags:"IR",
        description:"Title to show for the section",
        name:"title",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "attr:DrawLine.endTop":{
        ref:"attr:DrawLine.endTop",
        flags:"IR",
        description:"Ending top coordinate of the line.  Overrides top coordinate of ${isc.DocUtils.linkForRef('attr:DrawLine.endPoint')} if\n both are set.",
        name:"endTop",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DrawLine"
    },
    "attr:ImgProperties.imgDir":{
        ref:"attr:ImgProperties.imgDir",
        flags:"IRW",
        description:"Specifies the image-specific image directory to override the default.",
        name:"imgDir",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ImgProperties"
    },
    "method:DrawGroup.setWidth":{
        ref:"method:DrawGroup.setWidth",
        flags:"",
        description:" Sets the width of this <code>DrawGroup</code>'s ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')}.\n Note that setting the width will not move or resize the items in this <code>DrawGroup</code>.\n\n",
        name:"setWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new width for the group rectangle",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:TextItem.browserAutoCorrect":{
        ref:"attr:TextItem.browserAutoCorrect",
        flags:"IRWA",
        description:null,
        name:"browserAutoCorrect",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "method:ListGrid.rowHover":{
        ref:"method:ListGrid.rowHover",
        flags:"",
        description:" Called when the mouse hovers over a row if this.canHover is true. \n  Returning false will suppress the hover text from being shown if this.showHover is true.\n\n",
        name:"rowHover",
        seeAlso:[
            {
                ref:"attr:ListGrid.canHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event (default behavior of showing the hover)",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "attr:DataSourceField.timeFormatter":{
        ref:"attr:DataSourceField.timeFormatter",
        flags:"IRWA",
        description:"Preferred time-format to apply to date type values within this field.  If this property is\n specified on a field displayed within a dataBound component such as a ${isc.DocUtils.linkForRef('class:ListGrid')} or\n ${isc.DocUtils.linkForRef('class:DynamicForm')}, any dates displayed in this field will be formatted as times using the\n appropriate format.\n <P>\n This is most commonly only applied to fields specified as type <code>\"time\"</code> though\n if no explicit ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} is specified it will be respected for other \n fields as well.\n <P>\n See ${isc.DocUtils.linkForRef('attr:ListGridField.timeFormatter')} and ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')} for more information.",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSourceField",
        groups:[
            "appearance"
        ]
    },
    "attr:Window.status":{
        ref:"attr:Window.status",
        flags:"IRW",
        description:"Text to show in the status bar of the window (if one is visible)",
        name:"status",
        setter:[
            "setStatus"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance"
        ]
    },
    "group:componentSchema":{
        ref:"group:componentSchema",
        title:"Component Schema",
        treeLocation:[
            "Concepts/Visual Builder"
        ],
        refs:[
            "attr:DataSourceField.xmlAttribute",
            "attr:DataSourceField.childTagName",
            "attr:DataSourceField.propertiesOnly",
            "attr:DataSourceField.inapplicable",
            "attr:DataSourceField.group",
            "attr:DataSourceField.multiple"
        ],
        description:"A component schema is a special type of DataSource that describes a custom component.  \n <P>\n Declaring a component schema for your custom component allows you to:\n <ul>\n <li> use simpler XML when creating your custom component: avoid having to specify the\n <code>constructor</code> and <code>xsi:type</code> attributes as described under\n ${isc.DocUtils.linkForRef('group:componentXML')}\n <li> use your custom component within ${isc.DocUtils.linkForRef('group:visualBuilder')}\n </ul>\n <P>\n <b>Example of a Component Schema</b>\n <P>\n In its most basic form, a component schema for a custom subclass of ListGrid called\n \"<smartgwt>com.mycompany.</smartgwt>MyListGrid\" looks like this:\n <pre>\n &lt;DataSource serverType=\"component\" ID=\"MyListGrid\" \n             inheritsFrom=\"ListGrid\" instanceConstructor=\"<smartgwt>com.mycompany.</smartgwt>MyListGrid\"/&gt;\n </pre>\n With this definition saved as \"MyListGrid.ds.xml\" in the project dataSources directory\n ([webroot]/shared/ds/ by default), you can now create an instance of \n <smartgwt>com.mycompany.</smartgwt>MyListGrid with just:\n <pre>\n &lt;MyListGrid width=\"500\"/&gt;\n </pre>\n Note: you may need to restart your servlet engine/J2EE container before this example will\n work.\n <P>\n The attributes set directly on the DataSource tag have special meaning for a component\n schema definition:\n <ul>\n <li>${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')}=\"component\" indicates this DataSource describes\n a component, as opposed to a SQL table or other data provider\n <li>${isc.DocUtils.linkForRef('attr:DataSource.ID','ID')} means the tagName that will be used to create your custom\n component.  This must match the first component of the filename. (ID=\"MyListGrid\" means the filename \n must be MyListGrid.ds.xml, and typically also matches the name of the class).\n <li>${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')}=\"ListGrid\" inherits the ListGrid property definitions via\n ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')}.  \n <li>instanceConstructor=\"<smartgwt>com.mycompany.</smartgwt>MyListGrid\" indicates the \n <smartclient>SmartClient</smartclient><smartgwt>SmartGWT</smartgwt> class that\n <smartclient>${isc.DocUtils.linkForRef('classMethod:Class.create','create()')}</smartclient> should be called on to construct \n an instance.\n <smartclient>\n <li>showLocalFieldsOnly is a boolean that, when set to true, tells the ${isc.DocUtils.linkForRef('group:visualBuilder')}\n to show only the fields declared in this schema in the component editor.  Otherwise fields\n inherited via ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom')} (all the way up the chain) are also included.\n <li>showSuperClassEvents is a boolean that, like showLocalFieldsOnly, optionally restricts\n the list of events shown in the Events tab of the ${isc.DocUtils.linkForRef('group:visualBuilder')} to those defined in\n this schema only.\n <li>showSuperClassActions is a boolean that optionally restricts the list of actions shown\n in the menu when you map a component Event to a component Action within ${isc.DocUtils.linkForRef('group:visualBuilder')}\n to those defined in this schema only.\n </smartclient>\n </ul>\n <P>\n <b>Declaring custom properties</b>\n <P>\n Custom properties are declared via ${isc.DocUtils.linkForRef('attr:DataSource.fields','fields')} as for an ordinary\n ${isc.DocUtils.linkForRef('class:DataSource')}.  As with ordinary DataSources, it is legal to redeclare inherited fields\n in order to modify properties such as ${isc.DocUtils.linkForRef('attr:DataSourceField.editorType','field.editorType')}.\n <P>\n The following DataSourceField properties have special significance when a component schema\n is used to process ${isc.DocUtils.linkForRef('group:componentXML','component XML')}:\n <ul>\n <li> ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field.type')} declares the type of the field, and hence the\n type of the <smartclient>JavaScript</smartclient> value your custom class will be \n initialized with.  In order to declare subcomponents, can be set to the name of another component \n (built-in or custom).  \n <li> ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple','field.multiple')} declares that the field should always be\n array-valued even when only a single value is provided.  Also indicates that the field name\n should be used as a \"wrapper tag\" in the XML format for the component.\n <li> ${isc.DocUtils.linkForRef('attr:DataSourceField.propertiesOnly','field.propertiesOnly')}.  For fields that hold\n subcomponents, suppresses auto-construction to avoid ${isc.DocUtils.linkForRef('attr:Canvas.autoDraw','double drawing')}\n and to allow subcomponents to be modified by their parent component before they are created\n and drawn\n </ul>\n When a component is edited within Visual Builder, the DataSource properties that normally\n influence databound forms will influence the Component Editor (for example, field.title,\n field.editorType).  In addition, the following properties have special significance in\n component editing and component drag and drop:\n <ul>\n <li> ${isc.DocUtils.linkForRef('attr:DataSourceField.inapplicable','field.inapplicable')} indicates that an inherited\n field is inapplicable in this component.\n <li> ${isc.DocUtils.linkForRef('attr:DataSourceField.group','field.group')} indicates what group the property should be\n placed in when editing in Visual Builder.\n <li> ${isc.DocUtils.linkForRef('attr:DataSourceField.xmlAttribute','field.xmlAttribute')}: indicates this field should\n serialize as an XML attribute.  Note that when constructing the component from XML, either\n an attribute or a subelement will continue to be accepted as means of specifying the field\n value, so this property is primarily set in order to make code generated by Visual Builder\n maximally compact or to make it conform to externally set standards.\n </ul>\n <P>\n\n <smartclient>\n <b>Declaring Events and Actions</b>\n <P>\n Events and Actions are declared via a methods array.  In order for a method to be considered\n an event, it needs to have a method definition in the methods array (or be publicly\n documented in the SmartClient reference) and have been added to\n the class as a ${isc.DocUtils.linkForRef('group:stringMethods','StringMethod')} via ${isc.DocUtils.linkForRef('classMethod:Class.registerStringMethods')}.\n <p>\n In order for a method to be considered an action, it needs to have a method definition in\n the methods array and have the <code>action</code> property set to <code>true</code>.  For\n example, the following is a definition of the 'hide' action available on any Canvas, as\n copied from Canvas.ds.xml:\n <pre>\n     &lt;methods&gt;\n         &lt;method name=\"hide\" title=\"Hide\" action=\"true\"/&gt;\n     &lt;/methods&gt;\n </pre>\n For custom component actions, an array of expected parameters may be specified using the\n <code>params</code> attribute. Each entry in this array should have a specified type.\n By doing this, you allow the visual builder to pass parameters through to actions when setting \n up events that call actions (possibly on another component).\n For example if you had a component with a custom action that expected to be passed a single\n parameter of type ${isc.DocUtils.linkForRef('object:ListGridRecord')} you could define it as follows:\n <pre>\n     &lt;method name=\"showRecordDetails\" title=\"Show Record Details\" action=\"true\"&gt;\n         &lt;params&gt;\n             &lt;param type=\"ListGridRecord\"/&gt;\n         &lt;params&gt;\n     &lt;/method&gt;\n </pre>\n If a user working within the visualBuilder then added ListGrid to the page and used the \"+\" icon\n to associate the ${isc.DocUtils.linkForRef('method:ListGrid.recordClick','recordClick')} event with this custom method, the\n Visual Builder logic would automatically associate the parameters available in the fired event\n (in this case <code>recordClick</code>) with the expected parameters for the action to fire \n by type. So the <code>record</code> parameter of the event (known to be of type \n <code>ListGridRecord</code>) would be passed through to this custom <i>showRecordDetails</i>\n action as the first parameter.\n </smartclient>",
        name:"componentSchema",
        seeAlso:[
        ],
        type:"group"
    },
    "group:drawContext":{
        ref:"group:drawContext",
        refs:[
        ],
        name:"drawContext",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:LoginDialog.lostPasswordItemTitle":{
        ref:"attr:LoginDialog.lostPasswordItemTitle",
        flags:"IR",
        description:"Specifies the contents of the password request button (if configured) on\n the ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}.",
        name:"lostPasswordItemTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"LoginDialog.lostPasswordItemTitle",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "method:TileGrid.getDragData":{
        ref:"method:TileGrid.getDragData",
        flags:"",
        description:"\n During a drag-and-drop interaction, this method returns the set of records being dragged out\n of the component.  In the default implementation, this is the list of currently selected\n records.<p>\n \n This method is consulted by ${isc.DocUtils.linkForRef('method:ListGrid.willAcceptDrop')}.\n\n",
        name:"getDragData",
        seeAlso:[
        ],
        params:[
            {
                description:"source component from which the records will be transferred",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"DataBoundComponent"
            }
        ],
        returns:{
            description:"Array of ${isc.DocUtils.linkForRef('object:Record')}s that are currently selected.",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "dragging",
            "data"
        ]
    },
    "attr:LoginDialog.dismissable":{
        ref:"attr:LoginDialog.dismissable",
        flags:"IR",
        description:"Whether the user should be able to dismiss the login dialog without entering\n credentials.  Set to true if logging in is optional.  When set, a close button will be\n present, and hitting escape will also dismiss the dialog.\n <p>\n If the Dialog is dismissed, ${isc.DocUtils.linkForRef('method:LoginDialog.loginFunc')} is called with null arguments.\n <p>\n Note that this attribute overrides the dismissOnEscape and showCloseButton attributes.",
        name:"dismissable",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:ImgSplitbar.hSrc":{
        ref:"attr:ImgSplitbar.hSrc",
        flags:"IR",
        description:"Default src to display when ${isc.DocUtils.linkForRef('attr:ImgSplitbar.vertical')} is false, \n and ${isc.DocUtils.linkForRef('attr:ImgSplitbar.src')} is unset.",
        name:"hSrc",
        seeAlso:[
            {
                ref:"attr:ImgSplitbar.src",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"[SKIN]hgrip.png",
        type:"attr",
        definingClass:"class:ImgSplitbar"
    },
    "attr:validatorDefinition.requiresServer":{
        ref:"attr:validatorDefinition.requiresServer",
        flags:"IR",
        description:"Does this validator only run server-side?",
        name:"requiresServer",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:validatorDefinition"
    },
    "method:ListPropertiesPane.listPropertiesChanged":{
        ref:"method:ListPropertiesPane.listPropertiesChanged",
        flags:"",
        description:" Notification method fired when the pane's ${isc.DocUtils.linkForRef('attr:ListPropertiesPane.listProperties')} changes.\n",
        name:"listPropertiesChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"the new list configuration properties",
                optional:false,
                name:"listProperties",
                defaultValue:null,
                type:"ListProperties"
            }
        ],
        type:"method",
        definingClass:"class:ListPropertiesPane"
    },
    "attr:Window.restoreButton":{
        ref:"attr:Window.restoreButton",
        flags:"R",
        description:"ImgButton that restores the Window via ${isc.DocUtils.linkForRef('method:Window.restore')}.",
        name:"restoreButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "group:headerMenuButton":{
        ref:"group:headerMenuButton",
        refs:[
            "attr:ListGrid.showHeaderMenuButton",
            "attr:ListGrid.leaveHeaderMenuButtonSpace",
            "attr:ListGridField.leaveHeaderMenuButtonSpace",
            "attr:ListGrid.headerMenuButtonConstructor",
            "attr:ListGrid.headerMenuButton",
            "attr:ListGrid.headerMenuButtonIcon",
            "attr:ListGrid.headerMenuButtonIconWidth",
            "attr:ListGrid.headerMenuButtonIconHeight",
            "attr:ListGrid.headerMenuButtonWidth",
            "attr:ListGrid.headerMenuButtonHeight"
        ],
        name:"headerMenuButton",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Canvas.componentMask":{
        ref:"attr:Canvas.componentMask",
        flags:"R",
        description:"Automatically generated mask canvas displayed when ${isc.DocUtils.linkForRef('method:Canvas.showComponentMask')} is called.",
        name:"componentMask",
        seeAlso:[
            {
                ref:"attr:Canvas.componentMaskDefaults",
                description:null
            }
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:ListGrid.editByCell":{
        ref:"attr:ListGrid.editByCell",
        flags:"IRW",
        description:"Determines whether when the user edits a cell in this listGrid the entire row becomes\n editable, or just the cell that received the edit event.\n <P>\n No effect if this.canEdit is false or null.",
        name:"editByCell",
        seeAlso:[
            {
                ref:"attr:ListGrid.canEdit",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('editByCell')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:CubeGrid.getRowFacetLayout":{
        ref:"method:CubeGrid.getRowFacetLayout",
        flags:"",
        description:" Get the current widths of the row facets, as an object of the form:\n <pre>\n [ {facetId:facetId, width:currentWidth }, ... ]\n </pre>\n\n",
        name:"getRowFacetLayout",
        seeAlso:[
        ],
        returns:{
            description:"array of {facetId:facetId, width:width} objects",
            type:"array"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "group:comboBoxFiltering":{
        ref:"group:comboBoxFiltering",
        title:"ComboBoxItem PickList Filtering",
        refs:[
        ],
        description:"The criteria used to decide which options should appear in\n the drop-down ${isc.DocUtils.linkForRef('interface:PickList')} shown by a ComboBox are determined as follows.\n <P>\n While the user is typing in a value, the\n ${isc.DocUtils.linkForRef('method:ComboBoxItem.getPickListFilterCriteria')} method will return\n the typed-in value as part\n of the criteria, so that only matching values are shown.  Matching is determined by the\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.textMatchStyle','textMatchStyle')}.  Note that the ${isc.DocUtils.linkForRef('attr:ComboBoxItem.filterFields')}\n attribute may be used to determine which fields filtering is performed against for\n databound comboBoxItems.\n <P>\n If the user explicitly shows the down-down pickList, via either clicking on the drop\n down icon or using the <i>Ctrl+Arrow Down</i> key combination, the typed-in value is \n ignored for filtering.\n <P>\n If included in the criteria, the typed-in value will be included as a value for the \n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.displayField','displayField')} (or for the\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.valueField','valueField')} if <code>this.displayField</code> is\n unspecified).\n <P>\n Static criteria, specified via ${isc.DocUtils.linkForRef('attr:FormItem.optionCriteria','optionCriteria')} or\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.pickListCriteria','pickListCriteria')}, will always be included by the\n default implementation (combined with the typed in value if appropriate).\n <P>\n <smartgwt>For custom pick list filter criteria, we recommend \n calling the \n {@link com.smartgwt.client.widgets.form.fields.ComboBoxItem#setPickListFilterCriteriaFunction}\n method.</smartgwt>\n <smartclient><code>getPickListFilterCriteria()</code> may be overridden for\n custom behavior.</smartclient>\n If you are implementing your own pickList filter criteria, the\n <b>read-only</b> property ${isc.DocUtils.linkForRef('attr:ComboBoxItem.filterWithValue','this.filterWithValue')} can\n be read to determine whether the ComboBox would ordinarily ignore the typed-in value for\n filtering.  Note that in addition to cases where the user explicitly shows the pickList,\n <code>filterWithValue</code> will also be <code>true</code> during a call to \n ${isc.DocUtils.linkForRef('method:ComboBoxItem.fetchData')} on a databound comboBox.\n <P>\n <b>NOTE:</b> The defaut implementation of this method will return an \n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object if multiple ${isc.DocUtils.linkForRef('attr:ComboBoxItem.filterFields')} are specified, or\n if there are field collisions between any specified static ${isc.DocUtils.linkForRef('attr:FormItem.optionCriteria','optionCriteria')},\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.pickListCriteria','pickListCriteria')} and the entered value. AdvancedCriteria are not supported by\n all DataSource types, including the built-in server-side SQL dataSources in SmartClient Pro\n edition (though they are supported by SQL dataSources in Power and Enterprise editions).\n <P>\n <b>Client-Side Filtering</b><br>\n By default, the ComboBoxItem will automatically use client-side filtering whenever\n it receives a complete set of results for a given search string, and then the \n user types more letters (so reducing the results further).\n <p>\n Client-side filtering may malfunction if the server filtering behavior can't be \n replicated client-side (for example, Google Search).  To disable client-side \n filtering so that the comboBox always contacts the server for data whenever the \n use changes the search string, set ${isc.DocUtils.linkForRef('attr:ComboBoxItem.useClientFiltering')} to false.\n <p>\n However, disabling client-side filtering will slow down the UI and cause more \n round-trips to the server, so if client-side filtering is malfunctioning but\n <i>should work</i>, try to correct the problem rather than disable the feature.\n <p>\n For example, if the initial search works correctly but adding more letters\n always causes zero matches, most likely the Records returned by the server lack\n values for the field(s) targeted by the filter criteria, or the field values \n returned by the server don't match the criteria values. \n <P>\n View the returned data in the RPC tab in the Developer Console and enable the\n \"ResultSet\" log category in the \"Results\" tab to troubleshoot how the filter \n criteria are being applied to data, and look closely at your\n settings for ${isc.DocUtils.linkForRef('attr:ComboBoxItem.valueField','valueField')} and ${isc.DocUtils.linkForRef('attr:ComboBoxItem.displayField','displayField')}.",
        name:"comboBoxFiltering",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DynamicForm.titlePrefix":{
        ref:"attr:DynamicForm.titlePrefix",
        flags:"IRW",
        description:"The string prepended to the title of every item in this form.  See also +{requiredTitlePrefix} for\n fields that are required.",
        name:"titlePrefix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "classMethod:ClassFactory.defineClass":{
        ref:"classMethod:ClassFactory.defineClass",
        flags:"",
        description:"\n Create a new SmartClient class, which can then be used to create instances of this\n object type, via ${isc.DocUtils.linkForRef('classMethod:Class.create')}.\n <P>\n The new Class is returned by <code>defineClass</code>, is available as\n <code>isc.<i>ClassName</i></code> and is also available in global scope if not in\n ${isc.DocUtils.linkForRef('class:isc','portal mode')}.  Typically, ${isc.DocUtils.linkForRef('classMethod:Class.addProperties')} is then\n called to establish different defaults in the new class, or to add methods.  For\n example:\n <pre>\n    isc.defineClass(\"MyListGrid\", \"ListGrid\").addProperties({\n        headerHeight : 40, // change default for listGrid.headerHeight\n\n        // override listGrid.recordClick\n        recordClick : function (viewer, record) {\n           isc.say(record.description);\n        }\n    })\n    isc.MyListGrid.create(); // create an instance of the new class\n </pre>\n <P>\n See also ${isc.DocUtils.linkForRef('method:Class.Super','Super()')} for calling superclass methods.\n <P>\n NOTE: <code>isc.defineClass()</code> also creates a new function\n <code>${isc.DocUtils.linkForRef('object:isA','class:isA')}.<i>ClassName()</i></code> object for identifying instances of\n this Class.\n\n",
        name:"defineClass",
        seeAlso:[
        ],
        params:[
            {
                description:"Name for the new class.",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Optional SuperClass Class object or name",
                optional:true,
                name:"superClass",
                defaultValue:null,
                type:"Class"
            }
        ],
        returns:{
            description:"Returns the new Class object.",
            type:"Class"
        },
        type:"classMethod",
        definingClass:"object:ClassFactory"
    },
    "class:RadioItem":{
        methods:[
        ],
        ref:"class:RadioItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items/RadioGroupItem"
        ],
        attrs:[
        ],
        description:"Form item representing a member of a radio group, subclassed from ${isc.DocUtils.linkForRef('class:NativeCheckboxItem')}.\n RadioItems items are created and managed automatically by ${isc.DocUtils.linkForRef('class:RadioGroupItem')} instances\n and should not be instantiated directly.",
        name:"RadioItem",
        seeAlso:[
        ],
        type:"class"
    },
    "type:EdgeSizes":{
        ref:"type:EdgeSizes",
        description:"Object used to specify custom edge sizes or offsets.\n Specified as an object where <code>defaultSize</code> will map to the default edge size or \n offset for the canvas (${isc.DocUtils.linkForRef('attr:Canvas.edgeSize')}, or ${isc.DocUtils.linkForRef('attr:Canvas.edgeOffset')} and\n <code>top</code>, <code>left</code>, <code>right</code> and\n <code>bottom</code> will map to the\n ${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeTop','edgeTop')}/${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeOffsetTop','edgeOffsetTop')}, \n ${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeLeft','edgeLeft')}/${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeOffsetLeft','edgeOffsetLeft')},\n ${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeRight','edgeRight')}/${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeOffsetRight','edgeOffsetRight')},\n and ${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeBottom','edgeBottom')}/${isc.DocUtils.linkForRef('attr:EdgedCanvas.edgeOffsetBottom','edgeOffsetBottom')}\n attributes on the paneContainer respectively. Note that not all these properties have to be\n set - if unset standard edge sizing rules will apply.",
        name:"EdgeSizes",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ListGrid.selectionUnderCanvas":{
        ref:"attr:ListGrid.selectionUnderCanvas",
        flags:"RA",
        description:"AutoChild created and embedded in the grid if ${isc.DocUtils.linkForRef('attr:ListGrid.showSelectionCanvas','showSelectionCanvas')}\n is <code>true</code> and ${isc.DocUtils.linkForRef('attr:ListGrid.showSelectionUnderCanvas','showSelectionUnderCanvas')}\n is unset, or <code>showSelectionUnderCanvas</code> is explicitly set to <code>true</code>,\n and the ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType','selectionType')} is\n <smartclient>\"single\".</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.SelectionStyle#SINGLE}.</smartgwt>\n This component will be created and displayed behind the selected record whenever the\n selection changes.\n <p>\n The <code>selectionUnderCanvas</code> has the following read-only attributes set:<br>\n - <code>this.grid</code> - a pointer to the grid<br>\n - <code>this.record</code> - a pointer to the currently selected record object in the grid",
        name:"selectionUnderCanvas",
        seeAlso:[
            {
                ref:"attr:ListGrid.selectionCanvas",
                description:null
            }
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridRoundedSelection')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "rowEffects"
        ]
    },
    "classMethod:Page.getIsomorphicDir":{
        ref:"classMethod:Page.getIsomorphicDir",
        flags:"",
        description:"\t\tReturn the root directory for Isomorphic-specific files.\n\n",
        name:"getIsomorphicDir",
        seeAlso:[
        ],
        returns:{
            description:"IsomorphicDir URL.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files"
        ]
    },
    "classMethod:isc.sortObject":{
        ref:"classMethod:isc.sortObject",
        flags:"",
        description:" Given a simple javascript object, return that object sorted by keys, such that when iterating\n through the properties of the object, they will show up in sorted order.<br>\n Usage example - may be used to sort a ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','formItem valueMap')} defined\n as an object.\n",
        name:"sortObject",
        seeAlso:[
        ],
        params:[
            {
                description:"Object to sort",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"Comparator function to use when sorting the objects keys",
                optional:true,
                name:"comparator",
                defaultValue:null,
                type:"function"
            }
        ],
        returns:{
            description:"sorted version of the object passed in.",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:ListGrid.showRollUnderCanvas":{
        ref:"attr:ListGrid.showRollUnderCanvas",
        flags:"IRWA",
        description:"If roll overs are enabled, should the ${isc.DocUtils.linkForRef('attr:ListGrid.rollUnderCanvas','rollUnderCanvas')}\n be displayed?\n <p>\n Use of the <code>showRollUnderCanvas</code> is enabled if ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOver','showRollOver')}\n is <code>true</code>, and either ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOverCanvas','showRollOverCanvas')}\n is <code>true</code> and <code>showRollUnderCanvas</code> is unset, or <code>showRollUnderCanvas</code>\n is explicitly set to <code>true</code>.",
        name:"showRollUnderCanvas",
        seeAlso:[
            {
                ref:"attr:ListGrid.showRollOverCanvas",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridAnimatedSelection')}"
        ],
        definingClass:"class:ListGrid"
    },
    "class:ListPalette":{
        methods:[
        ],
        ref:"class:ListPalette",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools/Palette"
        ],
        attrs:[
        ],
        description:"A ListGrid that implements the ${isc.DocUtils.linkForRef('interface:Palette')} behavior, so it can be used as the source for \n drag and drop instantiation of components when combined with an ${isc.DocUtils.linkForRef('interface:EditContext')} as \n the drop target.\n <P>\n Each ${isc.DocUtils.linkForRef('object:ListGridRecord')} can be a ${isc.DocUtils.linkForRef('object:PaletteNode')}.",
        name:"ListPalette",
        implementsInterfaces:[
            "Palette"
        ],
        seeAlso:[
        ],
        type:"class",
        groups:[
            "devTools"
        ]
    },
    "attr:ListGrid.dataProperties":{
        ref:"attr:ListGrid.dataProperties",
        flags:"IRWA",
        description:"For databound ListGrids, this attribute can be used to customize the ${isc.DocUtils.linkForRef('class:ResultSet')}\n object created for this grid when data is fetched",
        name:"dataProperties",
        seeAlso:[
        ],
        valueType:"ResultSet",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "method:ListGrid.canSelectRecord":{
        ref:"method:ListGrid.canSelectRecord",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType')} is not set to <code>\"none\"</code>,\n This method will be called for each record the user attempts to select. If it returns false, the\n record will not be selected.\n <P>\n Default implementation will return true for any records where\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordCanSelectProperty')} is not explicitly set to false.\n <P>\n Note this method will not be called at all if ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is true.\n\n",
        name:"canSelectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record being selected",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"return false to disallow selection",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "group:find":{
        ref:"group:find",
        refs:[
            "method:ResultSet.findAll",
            "method:ResultSet.find",
            "method:ResultSet.findIndex",
            "method:ResultSet.findNextIndex",
            "method:Array.findIndex",
            "method:Array.findNextIndex",
            "method:Array.find",
            "method:Array.containsProperty",
            "method:Array.findAll",
            "method:List.findIndex",
            "method:List.findNextIndex",
            "method:List.find",
            "method:List.findAll"
        ],
        name:"find",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.setDragTracker":{
        ref:"method:ListGrid.setDragTracker",
        flags:"",
        description:" Sets the custom tracker HTML to display next to the mouse when the user initiates a drag\n operation on this component. Default implementation will examine ${isc.DocUtils.linkForRef('attr:ListGrid.dragTrackerMode')}\n and set the custom drag tracker to display the appropriate HTML based on the selected record.\n <br>\n To display custom drag tracker HTML, this method may be overridden - call \n ${isc.DocUtils.linkForRef('classMethod:EventHandler.setDragTracker')} to actually update the drag tracker HTML.\n",
        name:"setDragTracker",
        seeAlso:[
        ],
        returns:{
            description:"returns false by default to suppress 'setDragTracker' on any ancestors                   of this component.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dragTracker"
        ]
    },
    "classMethod:Page.getWidth":{
        ref:"classMethod:Page.getWidth",
        flags:"",
        description:" Get the width of the visible portion of the window, not including browser chrome or the\n scrollbar area.\n <P>\n See also ${isc.DocUtils.linkForRef('classMethod:Page.getOrientation')}.\n",
        name:"getWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"the window object",
                optional:true,
                name:"wd",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"width of the page",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "sizing"
        ]
    },
    "attr:Canvas.dragResizeAppearance":{
        ref:"attr:Canvas.dragResizeAppearance",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.canDragResize')} is true, this attributes specifies the visual appearance\n to show during drag resize. If unset ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')} will be used.",
        name:"dragResizeAppearance",
        seeAlso:[
        ],
        valueType:"DragAppearance",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:CubeGrid.setFacetValueTitle":{
        ref:"method:CubeGrid.setFacetValueTitle",
        flags:"",
        description:" Set the title for a facet value.\n\n",
        name:"setFacetValueTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"facet to update",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"facetValue to update",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"title for the facet",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "metadata"
        ]
    },
    "group:imageEdges":{
        ref:"group:imageEdges",
        refs:[
            "class:EdgedCanvas",
            "attr:Canvas.showEdges",
            "attr:Canvas.edgeSize",
            "attr:Canvas.edgeOffset",
            "attr:Canvas.edgeImage",
            "attr:Canvas.customEdges",
            "attr:Canvas.edgeBackgroundColor",
            "attr:Canvas.edgeOpacity",
            "attr:Canvas.edgeShowCenter",
            "attr:Canvas.edgeCenterBackgroundColor",
            "attr:EdgedCanvas.skinImgDir",
            "attr:EdgedCanvas.edgeImage",
            "attr:EdgedCanvas.edgeColor",
            "attr:EdgedCanvas.customEdges",
            "attr:EdgedCanvas.showCenter",
            "attr:EdgedCanvas.edgeSize",
            "attr:EdgedCanvas.edgeLeft",
            "attr:EdgedCanvas.edgeRight",
            "attr:EdgedCanvas.edgeTop",
            "attr:EdgedCanvas.edgeBottom",
            "attr:EdgedCanvas.edgeOffset",
            "attr:EdgedCanvas.edgeOffsetTop",
            "attr:EdgedCanvas.edgeOffsetBottom",
            "attr:EdgedCanvas.edgeOffsetLeft",
            "attr:EdgedCanvas.edgeOffsetRight",
            "attr:EdgedCanvas.centerBackgroundColor",
            "attr:EdgedCanvas.edgeStyleName",
            "attr:EdgedCanvas.addEdgeStyleSuffix"
        ],
        name:"imageEdges",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:NumberUtil.parseIfNumeric":{
        ref:"classMethod:NumberUtil.parseIfNumeric",
        flags:"",
        description:"\n If given a numeric string (that is, a non-empty string which converts to a\n number), will return the equivalent integer. Otherwise, returns the\n parameter unchanged. Useful for dealing with values that can be numbers or\n strings, but which you want to coerce to a numeric type if possible.\n\n",
        name:"parseIfNumeric",
        seeAlso:[
        ],
        params:[
            {
                description:"the string or number to parse",
                optional:false,
                name:"numberOrString",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"an integer, if possible, otherwise the input unchanged",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil"
    },
    "attr:FormItem.prompt":{
        ref:"attr:FormItem.prompt",
        flags:"IRW",
        description:"This text is shown as a tooltip prompt when the cursor hovers over this item.",
        name:"prompt",
        setter:[
            "setPrompt"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "basics"
        ]
    },
    "method:FormItem.setCanEdit":{
        ref:"method:FormItem.setCanEdit",
        flags:"",
        description:" Is this form item editable (canEdit:true) or read-only (canEdit:false)?\n Setting the form item to non-editable causes it to render as read-only,\n using the appearance specified via ${isc.DocUtils.linkForRef('attr:FormItem.readOnlyDisplay')}.\n <P>\n The default appearance for canEdit:false items\n (<code>readOnlyDisplay:\"readOnly\"</code>) differs from the disabled state in that\n the form item is not rendered with disabled styling and\n most form items will allow copying of the contents while read-only but do not while\n disabled.\n\n",
        name:"setCanEdit",
        seeAlso:[
            {
                ref:"attr:FormItem.canEdit",
                description:null
            },
            {
                ref:"method:FormItem.setDisabled",
                description:null
            }
        ],
        params:[
            {
                description:"Can this form item be edited?",
                optional:false,
                name:"canEdit",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "readOnly"
        ]
    },
    "attr:ListGrid.dateFormatter":{
        ref:"attr:ListGrid.dateFormatter",
        flags:"IRW",
        description:"How should Date type values be displayed in this ListGrid by default?\n <P>\n This property specifies the default DateDisplayFormat to apply to Date values\n displayed in this grid for all fields except those of ${isc.DocUtils.linkForRef('attr:ListGridField.type','type \"time\"')}\n (See also ${isc.DocUtils.linkForRef('attr:ListGrid.timeFormatter')}).<br>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.datetimeFormatter')} is specified, that will be applied by default\n to fields of type <code>\"datetime\"</code>.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:ListGridField.dateFormatter')} or ${isc.DocUtils.linkForRef('attr:ListGridField.timeFormatter')} are\n specified those properties will take precedence over the component level settings.\n <P>\n If unset, date values will be formatted according to the system wide\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat','short display format')} or\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat','short datetime display format')} for datetime type\n fields.\n <P>\n If this field is editable the dateFormatter will also be passed to the editor created\n to edit this field as ${isc.DocUtils.linkForRef('attr:DateItem.dateFormatter','dateFormatter')}.\n In this case you may also need to set ${isc.DocUtils.linkForRef('attr:ListGrid.dateInputFormat')}.",
        name:"dateFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DataSource.cacheAllData":{
        ref:"attr:DataSource.cacheAllData",
        flags:"IRW",
        description:"Set this property to true to have a DataSource fetch all of its data client-side on the \n first fetch request.  However, unlike a ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly')} DataSource, this DataSource \n will still save changes normally, sending remote requests.\n <P>\n You can manually set this attribute after initialization by calling \n ${isc.DocUtils.linkForRef('method:DataSource.setCacheAllData')}; setting ${isc.DocUtils.linkForRef('attr:DataSource.autoCacheAllData')}:true causes a DataSource to \n automatically switch to <code>cacheAllData:true</code> when a fetch results in the\n entire dataset being brought client-side.\n <P>\n To cause automatic cache updates, you can set ${isc.DocUtils.linkForRef('attr:DataSource.cacheMaxAge')} to a number of seconds\n and once data has been client-side for that length of time, the next fetch causes the\n cache to be dropped and a new cache retrieved.\n <P>\n Note that multiple ${isc.DocUtils.linkForRef('attr:DataSource.operationBindings')} of type \"fetch\" which return distinct\n results will not work with <code>cacheAllData</code>: only one cache is created and is\n used for all fetch operations, regardless of whether ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} has\n been set.  However, \"fetch\" operationBindings used as a\n ${isc.DocUtils.linkForRef('attr:OperationBinding.cacheSyncOperation')} will work normally, so long as they return\n all data fields that are returned by the default \"fetch\" operation, so that the cache\n can be updated.\n <P>\n To specify which operationId to use for fetching all data, use\n ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllOperationId','cacheAllOperationId')}.\n <p>\n To use the cache only for requests that have the <code>cacheAllOperationId</code>,\n allowing any other operationId (or absence of an operationId) to contact the server as\n normal, set ${isc.DocUtils.linkForRef('attr:DataSource.cacheAcrossOperationIds','cacheAcrossOperationIds')}.",
        name:"cacheAllData",
        setter:[
            "setCacheAllData"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:Flashlet.name":{
        ref:"attr:Flashlet.name",
        flags:"IR",
        description:"Sets the 'name' attribute on the flashlet object.  If a name is not provided it will be\n  auto-generated.  Note that in general you don't need to set this.  If you have a handle to\n  your ISC Flashlet object you can simply call ${isc.DocUtils.linkForRef('method:Flashlet.getPluginHandle')} to get a\n  handle to the element.",
        name:"name",
        seeAlso:[
            {
                ref:"method:Flashlet.getPluginHandle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Flashlet"
    },
    "attr:Hilite.disabled":{
        ref:"attr:Hilite.disabled",
        flags:"IRW",
        description:"Whether this hilite is currently disabled.\n <P>\n Hilites can be programmatically enabled and disabled via ${isc.DocUtils.linkForRef('method:DataBoundComponent.enableHilite')}.",
        name:"disabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "attr:MultiSortPanel.descendingTitle":{
        ref:"attr:MultiSortPanel.descendingTitle",
        flags:"IR",
        description:"The title-text to appear in the \"direction\" field's SelectItem for a \"descending\" sort",
        name:"descendingTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Descending\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TileLayout.orientation":{
        ref:"attr:TileLayout.orientation",
        flags:"IR",
        description:"Direction of tiling.  See also ${isc.DocUtils.linkForRef('type:TileLayoutPolicy')}.",
        name:"orientation",
        seeAlso:[
        ],
        valueType:"Orientation",
        defaultValue:"\"horizontal\"",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutPolicy"
        ]
    },
    "attr:MetricSettings.dataOutlineProperties":{
        ref:"attr:MetricSettings.dataOutlineProperties",
        flags:"IR",
        description:"Properties for lines that outline a data shape (in filled charts such as area or radar\n charts).",
        name:"dataOutlineProperties",
        seeAlso:[
        ],
        valueType:"DrawItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "classMethod:isA.emptyArray":{
        ref:"classMethod:isA.emptyArray",
        flags:"",
        description:"\n Is <code>object</code> an Array with no items?\n\n",
        name:"emptyArray",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is an empty array",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "attr:DateItem.dateFormatter":{
        ref:"attr:DateItem.dateFormatter",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is <code>true</code> this property can be used to \n customize the format in which dates are displayed for this item.<br>\n Should be set to a standard ${isc.DocUtils.linkForRef('type:DateDisplayFormat')}.\n <P>\n As with any formItem rendering out a date value, if no explicit dateFormatter is\n supplied, dateFormatter will be derived from ${isc.DocUtils.linkForRef('attr:DynamicForm.dateFormatter')} or\n ${isc.DocUtils.linkForRef('attr:DynamicForm.datetimeFormatter')},  depending on the specified ${isc.DocUtils.linkForRef('attr:FormItem.type')} for\n this field, if set, otherwise from the standard default ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}\n or ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat')}.\n <P>\n NOTE: For entirely custom formats, developers may apply a custom\n <smartclient>\n ${isc.DocUtils.linkForRef('method:DateItem.formatEditorValue')} method. To ensure the\n DateItem is able to parse user-entered date strings back into Dates, for most cases\n developers can specify an explicit ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat')}, or if necessary a\n custom ${isc.DocUtils.linkForRef('method:DateItem.parseEditorValue')}.\n </smartclient>\n <smartgwt>\n <code>editorValueFormatter</code>. To ensure the\n DateItem is able to parse user-entered date strings back into Dates, for most cases\n developers can specify an explicit ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat')}, or if necessary a\n custom <code>editorValueParser</code>\n </smartgwt>\n <p>\n This attribute does not have an effect if a native HTML5 date or datetime input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"dateFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "classMethod:isA.List":{
        ref:"classMethod:isA.List",
        flags:"",
        description:" Does <code>object</code> implement the  <code>List</code> interface?\n",
        name:"List",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"<code>true</code> if the object is an Array or belongs to another class that                   implements the <code>List</code> API.",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "attr:DrawLinePath.tailSize":{
        ref:"attr:DrawLinePath.tailSize",
        flags:"IR",
        description:"Length of the horizontal \"tail\" between the start and end points of this LinePath and the\n diagonal connecting segment",
        name:"tailSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"30",
        type:"attr",
        definingClass:"class:DrawLinePath"
    },
    "attr:IMenuButton.menuButtonImage":{
        ref:"attr:IMenuButton.menuButtonImage",
        flags:"IRA",
        description:"Image for menu button indicating that the button expands a menu.  This image is shown\n for menus expanding down from the button.   Menu direction is controlled by\n ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuBelow')}.",
        name:"menuButtonImage",
        seeAlso:[
            {
                ref:"attr:MenuButton.menuButtonImageUp",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]menu_button.gif\"",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "attr:UserTask.cancelElement":{
        ref:"attr:UserTask.cancelElement",
        flags:"IR",
        description:"Next element to proceed to if the task is cancelled because the ${isc.DocUtils.linkForRef('attr:UserTask.targetForm')} or\n ${isc.DocUtils.linkForRef('attr:UserTask.targetVM')} had <code>cancelEditing()</code> called on it.",
        name:"cancelElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "group:fill":{
        ref:"group:fill",
        refs:[
            "attr:DrawItem.fillColor",
            "attr:DrawItem.fillGradient",
            "attr:DrawItem.fillOpacity"
        ],
        name:"fill",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Operator.getCriterion":{
        ref:"method:Operator.getCriterion",
        flags:"",
        description:" In combination with ${isc.DocUtils.linkForRef('attr:Operator.editorType')}, this override point allows you to define a\n client-side only Operator that simply provides a custom UI for creating a Criterion based on\n one of the built-in operators.\n <P>\n For example, the \"between\" operator allows AdvancedCriteria to be created that can select any\n date range, however in a given application certain specific date ranges might be more\n meaningful (eg \"next week\", \"last quarter\") and you might want to offer the user a picker for\n those date ranges.  You could create an operator \"presetDateRange\" with an editorType \n indicating a custom SelectItem that shows available ranges, and then implement \n operation.getCriterion() to take the value from this SelectItem and produce a Criterion \n selecting the chosen date range.\n <P>\n Note that another approach, if it's not required that this custom interface appear in the\n FilterBuilder, is just to have a separate DynamicForm for picking special date\n ranges, and use ${isc.DocUtils.linkForRef('classMethod:DataSource.combineCriteria')} to merge the criteria with the\n FilterBuilder's criteria, as in ${isc.DocUtils.linkForExampleId('dynamicReporting', 'this sample')}.\n \n",
        name:"getCriterion",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:null,
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"Criterion",
            type:null
        },
        type:"method",
        definingClass:"object:Operator"
    },
    "method:DrawOval.setRadius":{
        ref:"method:DrawOval.setRadius",
        flags:"",
        description:" Resize the drawOval by setting its radius, and retaining its current center point.\n Equivalent to <code>setRadii(radius, radius)</code>.\n",
        name:"setRadius",
        seeAlso:[
            {
                ref:"method:DrawOval.setRadii",
                description:null
            }
        ],
        params:[
            {
                description:"new radius. This will be applied on both axes, meaning calling this method will always result in the DrawOval being a circle.",
                optional:false,
                name:"radius",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:Splitbar.invertClosedGripIfTargetAfter":{
        ref:"attr:Splitbar.invertClosedGripIfTargetAfter",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Splitbar.showClosedGrip')} is true, and ${isc.DocUtils.linkForRef('attr:Splitbar.targetAfter')} is true\n should we show the \"closed\" state for the grip when the target is visible (rather than\n when it is hidden).\n <P>\n This property is useful for the case where the grip media is a simple directional arrow.\n The same image can be used for expanded state on one side of the bar or collapsed\n state on the other.",
        name:"invertClosedGripIfTargetAfter",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "grip"
        ]
    },
    "attr:DateChooser.showTimeItem":{
        ref:"attr:DateChooser.showTimeItem",
        flags:"IRW",
        description:"Whether to show the ${isc.DocUtils.linkForRef('attr:DateChooser.timeItem','time field')} for editing the time portion\n of the date.  When unset, the time field is shown automatically if the field type is\n \"datetime\".",
        name:"showTimeItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:SimpleTile.creator":{
        ref:"attr:SimpleTile.creator",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('class:TileGrid')} that created this SimpleTile.",
        name:"creator",
        seeAlso:[
        ],
        valueType:"TileGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SimpleTile"
    },
    "attr:ListGrid.rowEndEditAction":{
        ref:"attr:ListGrid.rowEndEditAction",
        flags:"IRW",
        description:"If the user is editing a record in this listGrid, and attempts to navigate to a field\n beyond the end of the row, via tab (or shift-tab off the first editable field), this\n property determines what action to take:<ul>\n <li>\"next\": start editing the next (or previous) record in the list\n <li>\"same\": put focus back into the first editable field of the same record.\n <li>\"done\": hide the editor\n <li>\"stop\": leave focus in the cell being edited\n <li>\"none\": no action\n </ul>",
        name:"rowEndEditAction",
        seeAlso:[
        ],
        valueType:"RowEndEditAction",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:SectionHeader.controls":{
        ref:"attr:SectionHeader.controls",
        flags:"IR",
        description:"Custom controls to be shown on top of this section header.\n <P>\n These controls are shown in the ${isc.DocUtils.linkForRef('attr:SectionHeader.controlsLayout')}.\n <P>\n Note that this is an init-time property. If you need to dynamically change what \n controls are displayed to the user, we would recommend embedding the\n controls in a Layout or similar container. \n This will allow you to show/hide or add/remove members at runtime\n by manipulating the existing control(s) set up at init time.",
        name:"controls",
        seeAlso:[
        ],
        valueType:"Array of Canvas",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionControls')}"
        ],
        definingClass:"class:SectionHeader"
    },
    "method:Class.addProperties":{
        ref:"method:Class.addProperties",
        flags:"",
        description:"\n \tAdd properties or methods to this specific instance.\n\tProperties with the same name as existing properties will override.\n\n",
        name:"addProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"Object containing name:value pairs to be added to this object",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"the object after properties have been added to it",
            type:"object"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "attr:DrawItem.drawPane":{
        ref:"attr:DrawItem.drawPane",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('class:DrawPane')} this drawItem should draw in.\n <P>\n If this item has a ${isc.DocUtils.linkForRef('class:DrawGroup')}, the drawGroup's drawPane is automatically used.",
        name:"drawPane",
        seeAlso:[
        ],
        valueType:"DrawPane",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:StretchImgButton.iconWidth":{
        ref:"attr:StretchImgButton.iconWidth",
        flags:"IR",
        description:"Width in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:ListGrid.summaryUpdated":{
        ref:"method:ListGrid.summaryUpdated",
        flags:"",
        description:" Notification fired when a user either creates a new summary field or edits an existing\n summary field.\n",
        name:"summaryUpdated",
        seeAlso:[
        ],
        params:[
            {
                description:"the summary field",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"the new or updated summary definition",
                optional:false,
                name:"summary",
                defaultValue:null,
                type:"UserSummary"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:OperationBinding.methodArguments":{
        ref:"attr:OperationBinding.methodArguments",
        flags:"IR",
        description:"You can explicitly declare the arguments to be passed to\n ${isc.DocUtils.linkForRef('attr:OperationBinding.serverMethod')} using this attribute.  This isn't required - in the\n absence of <code>methodArguments</code>, the DMI implementation will still automatically\n pass a stock set of arguments to your method (see the overview in ${isc.DocUtils.linkForRef('class:ServerObject')}), but\n specifying arguments gives you the ability to call pre-existing methods without adding\n SmartClient-specific code.\n <p>\n The format for specifying <code>methodArguments</code> is as a comma separated list of VTL\n (Velocity Template Language) expressions.  See the\n <a href='http://jakarta.apache.org/velocity/docs/vtl-reference-guide.html' target='_blank'>VTL Reference</a>\n and <a href='http://jakarta.apache.org/velocity/docs/user-guide.html' target='_blank'>Velocity User Guide</a> \n for an overview of how to use VTL.\n <p>\n The Velocity context is pre-populated with the following variables - you can pass these\n verbatim as arguments, or call methods on these objects and pass the resulting values:\n <ul>\n <li>dsRequest: instance of the current DSRequest\n <li>request: the current HttpServletRequest\n <li>response: the current HttpServletResponse\n <li>rpcManager: the instance of RPCManager for this request\n <li>dataSource: a DataSource instance for this request\n </ul>\n So, for example, if you had a method signature like the following:\n <p><code>\n public DSResponse fetch(SupplyItem criteria, long startRow, long endRow)\n </code><p>\n You can invoke it by specifying <code>methodArguments</code> as follows:\n <p><code>\n methodArguments=\"$dsRequest.criteria, $dsRequest.startRow, $dsRequest.endRow\"\n </code></p>\n Without <code>methodArguments</code>, there would be no way for you to specify\n <code>startRow/endRow</code> as arguments.  You could, of course, simply declare the method\n to take a <code>DSRequest</code> object and call <code>getStartRow()/getEndRow()</code> in\n the body of the method.",
        name:"methodArguments",
        seeAlso:[
            {
                ref:"class:ServerObject",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "method:DataBoundComponent.getRecordHiliteCSSText":{
        ref:"method:DataBoundComponent.getRecordHiliteCSSText",
        flags:"",
        description:" Return all CSS style declarations associated with the hilites of a record's field.\n",
        name:"getRecordHiliteCSSText",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"if set, returned CSS will be appended to this text",
                optional:false,
                name:"cssText",
                defaultValue:null,
                type:"String"
            },
            {
                description:"field object identifying whose CSS is to be returned",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Field"
            }
        ],
        returns:{
            description:"valueCSS style declarations for this record and field",
            type:"String"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:FacetChart.valueAxisMargin":{
        ref:"attr:FacetChart.valueAxisMargin",
        flags:"IR",
        description:"Margin between ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multiple value axes')}.",
        name:"valueAxisMargin",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ToolStrip.verticalStyleName":{
        ref:"attr:ToolStrip.verticalStyleName",
        flags:"IR",
        description:"Default stylename to use if ${isc.DocUtils.linkForRef('attr:ToolStrip.vertical','this.vertical')} is true.\n If unset, the standard ${isc.DocUtils.linkForRef('attr:ToolStrip.styleName')} will be used for both vertical and horizontal\n toolstrips.\n <P>\n Note that this property only applies to the widget at init time. To modify the \n styleName after this widget has been initialized, you should\n simply call ${isc.DocUtils.linkForRef('method:Canvas.setStyleName','setStyleName()')} rather than updating this \n property.",
        name:"verticalStyleName",
        seeAlso:[
        ],
        valueType:"CSSClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolStrip",
        groups:[
            "appearance"
        ]
    },
    "method:CellSelection.cellIsSelected":{
        ref:"method:CellSelection.cellIsSelected",
        flags:"",
        description:" Return true if a particular item is selected\n",
        name:"cellIsSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of the cell to check",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column index of the cell to check",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"true == object is selected                      false == object is not selected",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "attr:FacetChart.regressionLineProperties":{
        ref:"attr:FacetChart.regressionLineProperties",
        flags:"IR",
        description:"Properties for the ${isc.DocUtils.linkForRef('attr:FacetChart.showRegressionLine','regression line')}.",
        name:"regressionLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DynamicForm.hideItem":{
        ref:"method:DynamicForm.hideItem",
        flags:"",
        description:" Hide a form item via ${isc.DocUtils.linkForRef('method:FormItem.hide')}\n",
        name:"hideItem",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the item to show",
                optional:false,
                name:"itemName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "method:CubeGrid.getEditValue":{
        ref:"method:CubeGrid.getEditValue",
        flags:"",
        description:"\n Returns the current temporary locally stored edit value for a cell being edited.\n Note this is the ${isc.DocUtils.linkForRef('attr:CubeGrid.valueProperty','valueProperty')} that will be saved for the\n cell in question.\n\n",
        name:"getEditValue",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the row for which the editValue should be returned",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"index of the column for which value should be returned",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"edit value for the cell",
            type:"any"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "editing"
        ]
    },
    "classAttr:FacetChart.linearRegressionLinesContextMenuItemTitle":{
        ref:"classAttr:FacetChart.linearRegressionLinesContextMenuItemTitle",
        flags:"IRW",
        description:"Title for the <code>\"Straight Line\"</code> option of the <code>\"Regression Lines\"</code>\n option in the context menu for scatter plots.",
        name:"linearRegressionLinesContextMenuItemTitle",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Straight Line\"",
        type:"classAttr",
        definingClass:"class:FacetChart",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TileLayout.paddingAsLayoutMargin":{
        ref:"attr:TileLayout.paddingAsLayoutMargin",
        flags:"IRWA",
        description:"If this widget has padding specified (as ${isc.DocUtils.linkForRef('attr:Canvas.padding','this.padding')} or in the\n CSS style applied to this layout), should it show up as space outside the members,\n similar to layoutMargin?\n <P>\n If this setting is false, padding will not affect member positioning (as CSS padding\n normally does not affect absolutely positioned children).  Leaving this setting true\n allows a designer to more effectively control layout purely from CSS.\n <P>\n Note that ${isc.DocUtils.linkForRef('attr:Layout.layoutMargin')} if specified, takes precedence over this value.",
        name:"paddingAsLayoutMargin",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutMargin"
        ]
    },
    "attr:TreeGrid.canSelectAll":{
        ref:"attr:TreeGrid.canSelectAll",
        flags:"IRW",
        description:"This property is not supported on TreeGrid, and only applies to the ${isc.DocUtils.linkForRef('class:ListGrid')}\n superclass.",
        name:"canSelectAll",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:FacetChart.standardDeviationBandProperties":{
        ref:"attr:FacetChart.standardDeviationBandProperties",
        flags:"IR",
        description:"An Array of DrawRect properties to specify the bands between the ${isc.DocUtils.linkForRef('attr:FacetChart.showStandardDeviationLines','standard deviation lines')}.\n The length of the Array must be one less than the length of the ${isc.DocUtils.linkForRef('attr:FacetChart.standardDeviations')} Array.\n <p>\n Having no band between certain standard deviations from the mean can be specified by\n having a null element at the corresponding index of this Array.\n <p>\n Note that if ${isc.DocUtils.linkForRef('attr:FacetChart.useSymmetricStandardDeviations')} is set then for each standard\n deviation band that is drawn a corresponding band will also be drawn on the opposite side of the mean line.",
        name:"standardDeviationBandProperties",
        seeAlso:[
        ],
        valueType:"Array of DrawItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:FacetChart.getVariance":{
        ref:"method:FacetChart.getVariance",
        flags:"",
        description:" Calculate the variance of the data from a single metric.\n See <a href=\"http://en.wikipedia.org/wiki/Variance\">http://en.wikipedia.org/wiki/Variance</a>.\n <p>\n The first argument, criteria, determines which metric is used to calculate the variance.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n",
        name:"getVariance",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            },
            {
                description:"false to calculate a sample variance, true to calculate a population variance",
                optional:false,
                name:"population",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"the variance of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:DataBoundComponent.canAddFormulaFields":{
        ref:"attr:DataBoundComponent.canAddFormulaFields",
        flags:"IRW",
        description:"Adds an item to the header context menu allowing users to launch a dialog to define a new\n field based on values present in other fields, using the ${isc.DocUtils.linkForRef('class:FormulaBuilder')}.\n <P>\n User-added formula fields can be persisted via ${isc.DocUtils.linkForRef('method:ListGrid.getFieldState')} and \n ${isc.DocUtils.linkForRef('method:ListGrid.setFieldState')}.",
        name:"canAddFormulaFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "formulaFields"
        ]
    },
    "classAttr:FacetChart.regressionLinesContextMenuItemTitle":{
        ref:"classAttr:FacetChart.regressionLinesContextMenuItemTitle",
        flags:"IRW",
        description:"Title for the <code>\"Regression Lines\"</code> option of the context menu for scatter plots.",
        name:"regressionLinesContextMenuItemTitle",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Regression Lines\"",
        type:"classAttr",
        definingClass:"class:FacetChart",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.bodyStyle":{
        ref:"attr:Window.bodyStyle",
        flags:"IRW",
        description:"Style of the Window body.",
        name:"bodyStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"windowBody\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "attr:TreeGrid.autoFetchTextMatchStyle":{
        ref:"attr:TreeGrid.autoFetchTextMatchStyle",
        flags:"IR",
        description:"With ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand')}:true, TreeGrids fetch data by selecting the child nodes of\n each parent, which should be exact match, so we default to\n <code>autoFetchTextMatchStyle:\"exact\"</code>.\n See ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle')} for details.",
        name:"autoFetchTextMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"\"exact\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "dataBinding"
        ]
    },
    "attr:ListGrid.removeIconSize":{
        ref:"attr:ListGrid.removeIconSize",
        flags:"IRW",
        description:"Default width and height of ${isc.DocUtils.linkForRef('attr:ListGrid.removeIcon','remove icons')} for this ListGrid.",
        name:"removeIconSize",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:DrawItem":{
        methods:[
            "method:DrawItem.setCursor",
            "method:DrawItem.getBoundingBox",
            "method:DrawItem.isInBounds",
            "method:DrawItem.isPointInPath",
            "method:DrawItem.computeAngle",
            "method:DrawItem.getPageLeft",
            "method:DrawItem.getPageTop",
            "method:DrawItem.setCanDrag",
            "method:DrawItem.dragStart",
            "method:DrawItem.dragMove",
            "method:DrawItem.dragStop",
            "method:DrawItem.mouseDown",
            "method:DrawItem.mouseUp",
            "method:DrawItem.click",
            "method:DrawItem.mouseOver",
            "method:DrawItem.mouseMove",
            "method:DrawItem.mouseOut",
            "method:DrawItem.showContextMenu",
            "method:DrawItem.hover",
            "method:DrawItem.getHoverHTML",
            "method:DrawItem.draw",
            "method:DrawItem.moved",
            "method:DrawItem.resized",
            "method:DrawItem.showKnobs",
            "method:DrawItem.hideKnobs",
            "method:DrawItem.setMoveKnobOffset",
            "method:DrawItem.dragResizeMove",
            "method:DrawItem.erase",
            "method:DrawItem.destroy",
            "method:DrawItem.getSvgString",
            "method:DrawItem.show",
            "method:DrawItem.hide",
            "method:DrawItem.setLineWidth",
            "method:DrawItem.setLineColor",
            "method:DrawItem.setLineOpacity",
            "method:DrawItem.setLinePattern",
            "method:DrawItem.setLineCap",
            "method:DrawItem.setShadow",
            "method:DrawItem.supportsStartArrow",
            "method:DrawItem.setStartArrow",
            "method:DrawItem.supportsEndArrow",
            "method:DrawItem.setEndArrow",
            "method:DrawItem.moveBy",
            "method:DrawItem.resizeBy",
            "method:DrawItem.resizeTo",
            "method:DrawItem.rotateBy",
            "method:DrawItem.rotateTo",
            "method:DrawItem.scaleBy",
            "method:DrawItem.scaleTo",
            "method:DrawItem.setFillColor",
            "method:DrawItem.setFillGradient",
            "method:DrawItem.setFillOpacity"
        ],
        ref:"class:DrawItem",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:DrawItem.computeAngle"
        ],
        treeLocation:[
            "Client Reference/Drawing"
        ],
        attrs:[
            "attr:DrawItem.cursor",
            "attr:DrawItem.canHover",
            "attr:DrawItem.showHover",
            "attr:DrawItem.hoverDelay",
            "attr:DrawItem.prompt",
            "attr:DrawItem.drawPane",
            "attr:DrawItem.drawGroup",
            "attr:DrawItem.lineWidth",
            "attr:DrawItem.lineColor",
            "attr:DrawItem.lineOpacity",
            "attr:DrawItem.linePattern",
            "attr:DrawItem.lineCap",
            "attr:DrawItem.fillColor",
            "attr:DrawItem.fillGradient",
            "attr:DrawItem.fillOpacity",
            "attr:DrawItem.shadow",
            "attr:DrawItem.rotation",
            "attr:DrawItem.scale",
            "attr:DrawItem.startArrow",
            "attr:DrawItem.endArrow",
            "attr:DrawItem.knobs",
            "attr:DrawItem.keepInParentRect",
            "attr:DrawItem.dragStartDistance",
            "attr:DrawItem.canDrag",
            "attr:DrawItem.contextMenu",
            "attr:DrawItem.eventOpaque",
            "attr:DrawItem.moveKnobPoint",
            "attr:DrawItem.moveKnobOffset",
            "attr:DrawItem.resizeKnobPoints",
            "attr:DrawItem.destroyed",
            "attr:DrawItem.destroying"
        ],
        description:"Base class for graphical elements drawn in a DrawPane.  All properties and methods\n documented here are available on all DrawItems unless otherwise specified.  \n <P>\n Note that DrawItems as such should never be created, only concrete subclasses such as\n ${isc.DocUtils.linkForRef('class:DrawGroup')} and ${isc.DocUtils.linkForRef('class:DrawLine')}.\n <P>\n See ${isc.DocUtils.linkForRef('class:DrawPane')} for the different approaches to create DrawItems.",
        name:"DrawItem",
        seeAlso:[
        ],
        type:"class"
    },
    "classAttr:Operators.lessOrEqualFieldTitle":{
        ref:"classAttr:Operators.lessOrEqualFieldTitle",
        flags:"IR",
        description:"Title for the \"lessOrEqualField\" operator",
        name:"lessOrEqualFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"less than or equal to field\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItem.loadingDisplayValue":{
        ref:"attr:FormItem.loadingDisplayValue",
        flags:"IRW",
        description:"Value shown in field when ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')} is active and a\n fetch is pending. The field is also read-only while fetch is pending.\n <P>\n Set to <code>null</code> to show actual value until display value is loaded.",
        name:"loadingDisplayValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Loading...\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "display_values",
            "i18nMessages"
        ]
    },
    "attr:IMenuButton.menuAnimationEffect":{
        ref:"attr:IMenuButton.menuAnimationEffect",
        flags:"IRWA",
        description:"Allows you to specify an animation effect to apply to the menu when it is being shown.\n Valid options are \"none\" (no animation), \"fade\", \"slide\" and \"wipe\".\n If unspecified falls through to <code>menu.showAnimationEffect</code>",
        name:"menuAnimationEffect",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IMenuButton"
    },
    "attr:Menu.autoDismissOnBlur":{
        ref:"attr:Menu.autoDismissOnBlur",
        flags:"IRW",
        description:"When false, when a user clicks outside the menu, or hits the Escape key, this menu\n will not be automatically hidden, staying in place for further interactivity.",
        name:"autoDismissOnBlur",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "class:MenuButton":{
        methods:[
            "method:MenuButton.setShowMenuButtonImage",
            "method:MenuButton.setShowMenuBelow",
            "method:MenuButton.showMenu"
        ],
        ref:"class:MenuButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:MenuButton.title",
            "attr:MenuButton.height",
            "attr:MenuButton.showMenuButtonImage",
            "attr:MenuButton.menuButtonImage",
            "attr:MenuButton.menuButtonImageUp",
            "attr:MenuButton.hiliteAccessKey",
            "attr:MenuButton.showMenuBelow",
            "attr:MenuButton.menu",
            "attr:MenuButton.menuAnimationEffect",
            "attr:MenuButton.autoDestroyMenu",
            "attr:MenuButton.showMenuOnRollOver",
            "attr:MenuButton.rollOverMenuHideDelay"
        ],
        description:"Simple subclass of button associated with a menu widget (gets shown below the button).",
        name:"MenuButton",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.getFieldName":{
        ref:"method:ListGrid.getFieldName",
        flags:"A",
        description:" Given a column number or field id, return the field name of a field.\n",
        name:"getFieldName",
        seeAlso:[
        ],
        params:[
            {
                description:"number or id of the field.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number or id"
            }
        ],
        returns:{
            description:"Name of the field.",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "display"
        ]
    },
    "method:SearchForm.search":{
        ref:"method:SearchForm.search",
        flags:"",
        description:" Triggered when a SubmitItem is included in the form is submitted and gets pressed.\n \n",
        name:"search",
        seeAlso:[
            {
                ref:"method:DynamicForm.submit",
                description:null
            },
            {
                ref:"method:DynamicForm.submitValues",
                description:null
            }
        ],
        params:[
            {
                description:"the search criteria from the form",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"the form being submitted",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"SearchForm"
            }
        ],
        type:"method",
        definingClass:"class:SearchForm",
        groups:[
            "submitting"
        ]
    },
    "class:BrowserPlugin":{
        methods:[
        ],
        ref:"class:BrowserPlugin",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Client Bridges"
        ],
        attrs:[
        ],
        description:"Container for a Browser Plugin.",
        name:"BrowserPlugin",
        seeAlso:[
        ],
        type:"class",
        requiresModules:[
            "PluginBridges"
        ]
    },
    "method:EditContext.addFromPaletteNodes":{
        ref:"method:EditContext.addFromPaletteNodes",
        flags:"",
        description:" Add the supplied ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')} to the parentNode, preserving internal\n references from one supplied PaletteNode to another. This method should\n be used with an array of possibly inter-related PaletteNodes (for\n instance, those produced as a result of serialization via\n ${isc.DocUtils.linkForRef('method:EditContext.serializeAllEditNodes','serializeAllEditNodes()')}, rather than\n calling ${isc.DocUtils.linkForRef('method:EditContext.addFromPaletteNode','addFromPaletteNode()')} on each\n individual PaletteNode.\n\n",
        name:"addFromPaletteNodes",
        seeAlso:[
            {
                ref:"method:EditContext.addFromPaletteNode",
                description:null
            }
        ],
        params:[
            {
                description:"array of PaletteNodes",
                optional:false,
                name:"paletteNodes",
                defaultValue:null,
                type:"Array of PaletteNode"
            },
            {
                description:"parent to add to (defaults to the root)",
                optional:true,
                name:"parentNode",
                defaultValue:null,
                type:"EditNode"
            }
        ],
        returns:{
            description:"an array of the EditNodes added to the parentNode",
            type:"Array of EditNode"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:ListGrid.groupLeadingIndent":{
        ref:"attr:ListGrid.groupLeadingIndent",
        flags:"IRW",
        description:"Default number of pixels by which to indent all groups.",
        name:"groupLeadingIndent",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            },
            {
                ref:"method:ListGrid.getGroupNodeHTML",
                description:null
            }
        ],
        valueType:"Number",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:ListGridField.recordSummaryFunction":{
        ref:"attr:ListGridField.recordSummaryFunction",
        flags:"IR",
        description:"Only applies to fields of type <code>\"summary\"</code>.\n Fields of this type will display a calculated value based on the other field values\n within the current record.\n <P>\n This attribute specifies how the summary field value will be calculated. See\n ${isc.DocUtils.linkForRef('type:RecordSummaryFunction')} for valid options.\n <P>\n A subset of the ListGrid's fields will be passed to the RecordSummaryFunction.\n Which fields to include is determined based on ${isc.DocUtils.linkForRef('attr:ListGridField.includeInRecordSummary')}\n <P>\n If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} or ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true, this\n field's value in the summary row[s] will still be calculated by calling this method.\n In this case, the record object passed in will contain summary values for each field.\n If custom handling is required for this case, it may be detected by checking the\n record object's ${isc.DocUtils.linkForRef('attr:ListGridRecord.isGroupSummary')} and ${isc.DocUtils.linkForRef('attr:ListGridRecord.isGridSummary')}\n attributes.",
        name:"recordSummaryFunction",
        seeAlso:[
        ],
        valueType:"RecordSummaryFunction",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:ListGrid.screenReaderCellSeparator":{
        ref:"attr:ListGrid.screenReaderCellSeparator",
        flags:"IRA",
        description:"When ${isc.DocUtils.linkForRef('classMethod:isc.setScreenReaderMode','screen reader mode')} is enabled,\n this invisible separator string is written out between each cell value. This\n string will be picked up by screen readers allowing them to more obviously identify\n to the user the different cell values as the contents of a row are read aloud. The\n ${isc.DocUtils.linkForRef('attr:ListGrid.screenReaderRowSeparator','screenReaderRowSeparator')} string if any will\n be written out after the last cell in a row to separate the last cell's value from\n the screen reader's announcement of the row's number and total number of rows in the grid\n (such as \"3 of 20\").\n <P>\n This attribute may be set to null to disable the feature.\n <P>\n Note that screen readers vary widely on which punctuation symbols are read aloud, and\n sometimes it depends on the context of the punctuation. However, the widely-used JAWS, NVDA,\n and VoiceOver screen readers all read the forward slash '/' as \"slash\".\n See <a href='http://www.deque.com/blog/dont-screen-readers-read-whats-screen-part-1-punctuation-typographic-symbols/' target='_blank'>Why Don’t Screen Readers Always Read What’s on the Screen? Part 1: Punctuation and Typographic Symbols</a>\n for a table of findings on which punctuation symbols are read aloud by JAWS, NVDA,\n and VoiceOver.",
        name:"screenReaderCellSeparator",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"/\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "accessibility"
        ]
    },
    "attr:RPCRequest.ignoreTimeout":{
        ref:"attr:RPCRequest.ignoreTimeout",
        flags:"IRWA",
        description:"When set to true, no reply is expected from the server.  However, if a reply is received, it will\n be processed.<p>\n\n Note: setting this to true, forces ${isc.DocUtils.linkForRef('attr:RPCRequest.sendNoQueue')} to <code>true</code> for\n this request.",
        name:"ignoreTimeout",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:FilterBuilder.operatorPickerWidth":{
        ref:"attr:FilterBuilder.operatorPickerWidth",
        flags:"IR",
        description:"Width for the operator picker formItem displayed in clauses within this FilterBuilder.",
        name:"operatorPickerWidth",
        seeAlso:[
        ],
        valueType:"Integer | String",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "method:Dialog.noClick":{
        ref:"method:Dialog.noClick",
        flags:"",
        description:" Handle a click on the 'no' button of this Dialog.\n Default implementation is to return <code>false</code>.\n Override to do something else.\n",
        name:"noClick",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Dialog",
        groups:[
            "buttons"
        ]
    },
    "attr:Validator.serverObject":{
        ref:"attr:Validator.serverObject",
        flags:"IR",
        description:"For validators of type \"serverCustom\" only, a ${isc.DocUtils.linkForRef('class:ServerObject')} declaration that allows\n the SmartClient Server to find a Java class via a variety of possible approaches, and call a\n method on it to perform validation.\n <P>\n The target object must implement a method whose first 4 arguments are:\n <code>\n    Object value, Validator validator, String fieldName, Map record\n </code><p>\n (<code>com.isomorphic.datasource.Validator</code> is a subclass of <code>Map</code> that \n represents a validator's configuration, and also provides APIs for implementing templated\n error messages).<p>\n You provide the name of the method to call by specifying \n ${isc.DocUtils.linkForRef('attr:ServerObject.methodName','methodName')}\n as part of the serverObject declaration.  If you do not specify a methodName, SmartClient \n expects to find a compliant method called \"condition\".\n <P>\n Additional arguments may be declared and are automatically supplied based on the declared\n argument type, via ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')}.  Available objects include:\n <ul>\n <li><b>DataSource</b> - the DataSource where this validator is declared, an instance of\n                         com.isomorphic.datasource.DataSource or a subclass</li>\n <li><b>HttpServletRequest</b> - from standard Java servlets API</li>\n <li><b>HttpServletResponse</b> - from standard Java servlets API</li>\n <li><b>ServletContext</b> - from standard Java servlets API</li>\n <li><b>HttpSession</b> - from standard Java servlets API</li>\n <li><b>RequestContext</b> - an instance of com.isomorphic.servlet.RequestContext</li>\n <li><b>RPCManager</b> - the RPCManager associated with the transaction this validation is \n                         part of; an instance of com.isomorphic.rpc.RPCManager</li>\n </ul>\n Note that any servlet-related objects will not be available if your validator is run outside\n of the scope of an HTTP servlet request, such as a command-line process.",
        name:"serverObject",
        seeAlso:[
        ],
        valueType:"ServerObject",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        examples:[
            "${isc.DocUtils.linkForExampleId('dmiValidation')}"
        ],
        definingClass:"class:Validator"
    },
    "attr:DynamicForm.selectOnClick":{
        ref:"attr:DynamicForm.selectOnClick",
        flags:"IRW",
        description:"If this property is set to true, whenever a text-based field in this form \n (${isc.DocUtils.linkForRef('class:TextItem')}, ${isc.DocUtils.linkForRef('class:TextAreaItem')}) is given focus - whether\n programmatically (see ${isc.DocUtils.linkForRef('method:DynamicForm.focusInItem')}), or via a mouse click, all text\n within the item will be selected.\n <P>\n If you only want the value to be selected when on programmatic focus or keyboard\n navigation (this is the native browser behavior), set \n ${isc.DocUtils.linkForRef('attr:DynamicForm.selectOnFocus','selectOnFocus')} instead.\n <P>\n May be overridden at the form item level via ${isc.DocUtils.linkForRef('attr:FormItem.selectOnClick')}.",
        name:"selectOnClick",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "focus"
        ]
    },
    "method:FacetChart.setShowRegressionLine":{
        ref:"method:FacetChart.setShowRegressionLine",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FacetChart.showRegressionLine')}.\n",
        name:"setShowRegressionLine",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for this.showRegressionLine.",
                optional:false,
                name:"showRegressionLine",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:FilterBuilder.setTopOperatorAppearance":{
        ref:"method:FilterBuilder.setTopOperatorAppearance",
        flags:"",
        description:" Modify ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')} at runtime.\n <P>\n Note that when changing from \"bracket\" to \"radio\" mode the criteria\n will be flattened by calling ${isc.DocUtils.linkForRef('classMethod:DataSource.flattenCriteria')} which could\n result in a logical change to the criteria.\n\n",
        name:"setTopOperatorAppearance",
        seeAlso:[
        ],
        params:[
            {
                description:"new topOperatorAppearance",
                optional:false,
                name:"",
                defaultValue:null,
                type:"TopOperatorAppearance"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('formLayoutTitles')}"
        ],
        definingClass:"class:FilterBuilder",
        groups:[
            "formTitles"
        ]
    },
    "method:StretchImgButton.deselect":{
        ref:"method:StretchImgButton.deselect",
        flags:"",
        description:" Select this object.\n",
        name:"deselect",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "attr:LoginDialog.items":{
        ref:"attr:LoginDialog.items",
        flags:"IR",
        description:"Specifies the dialog contents. By default, the dialog only contains\n ${isc.DocUtils.linkForRef('attr:LoginDialog.loginForm')}. If desired, additional widgets may be placed before/after\n the loginForm. To specify these widgets as ${isc.DocUtils.linkForRef('group:autoChildren')}, use the syntax\n \"autoChild:<i>childName</i>\" ${isc.DocUtils.linkForRef('group:autoChildren','as used for panes/items of\\n Tabs/SectionStacks')}.",
        name:"items",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"[\"autoChild:loginForm\"]",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:Slider.hThumbStyle":{
        ref:"attr:Slider.hThumbStyle",
        flags:"IR",
        description:"Optional CSS style for the thumb for a horizontally oriented slider.\n <P>\n Will have the suffix \"down\" added when the mouse is down on the thumb, and \"Disabled\"\n added when the slider is disabled.",
        name:"hThumbStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Slider"
    },
    "class:DrawKnob":{
        methods:[
            "method:DrawKnob.setCenterPoint",
            "method:DrawKnob.updatePoints"
        ],
        ref:"class:DrawKnob",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing"
        ],
        attrs:[
            "attr:DrawKnob.knobShape",
            "attr:DrawKnob.knobDefaults",
            "attr:DrawKnob.drawPane",
            "attr:DrawKnob.x",
            "attr:DrawKnob.y"
        ],
        description:"Canvas that renders a ${isc.DocUtils.linkForRef('class:DrawItem')} into a ${isc.DocUtils.linkForRef('class:DrawPane')} and provides interactivity for\n that drawItem, including drag and drop.\n <P>\n A DrawKnob can either be initialized with a ${isc.DocUtils.linkForRef('attr:DrawKnob.knobShape','DrawItem knobShape')} or created via\n the ${isc.DocUtils.linkForRef('type:AutoChild')} pattern.\n <P>\n DrawKnobs are used by the ${isc.DocUtils.linkForRef('attr:DrawItem.knobs','drawItem control knobs')} subsystem.",
        name:"DrawKnob",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"Canvas"
    },
    "classAttr:RPCManager.promptDelay":{
        ref:"classAttr:RPCManager.promptDelay",
        flags:"IRWA",
        description:"If the request is configured to block user interactivity (${isc.DocUtils.linkForRef('attr:RPCRequest.showPrompt')}), \n this property controls the delay in milliseconds before a visual indication is shown to the\n user that interactivity is blocked.\n <P>\n Studies have shown that users will perceive a short operation as occurring faster if they\n are not shown a wait cursor, throbber or other busy indicator, but that a busy indicator\n <i>must</i> appear after a briefy delay or the user will perceive the system as broken or\n hung.\n <P>\n Note that, regardless of this setting, interactivity is immediately blocked if showPrompt\n is true, since the purpose of blocking is to prevent duplicate requests or prevent\n interacting with components while they are in transition.  This setting controls only how\n fast a visual indication of blocking is shown.",
        name:"promptDelay",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.showPrompt",
                description:null
            },
            {
                ref:"attr:RPCRequest.promptDelay",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"300",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:FilterBuilder.addButtonPrompt":{
        ref:"attr:FilterBuilder.addButtonPrompt",
        flags:"IR",
        description:"The hover prompt text for the add button.",
        name:"addButtonPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Add\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:validatorDefinition.condition":{
        ref:"method:validatorDefinition.condition",
        flags:"",
        description:" Method invoked to perform the actual validation of a value.\n <p>\n Because the validator itself is passed as a parameter to\n <code>condition()</code>, you can effectively parameterize the validator.  For example, to\n create a validator that checks that the value is after a certain date:<pre> \n     { type:\"custom\", afterDate:new Date(), \n       condition:\"value.getTime() > validator.afterDate.getTime()\" }\n </pre>\n Note that, if a field is declared with a builtin ${isc.DocUtils.linkForRef('type:FieldType')}, the value passed in\n will already have been converted to the specified type, if possible.\n\n",
        name:"condition",
        seeAlso:[
        ],
        params:[
            {
                description:"FormItem or DataSourceField on which this                                           validator was declared.  NOTE: FormItem will not\n                                           be available during a save performed without a\n                                           form (eg programmatic save) or if the field \n                                           is not available in the form.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"DataSourceField or FormItem"
            },
            {
                description:"Validator declaration from eg                              ${isc.DocUtils.linkForRef('attr:DataSourceField.validators')}.",
                optional:false,
                name:"validator",
                defaultValue:null,
                type:"Validator"
            },
            {
                description:"value to validate",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Field values for record being validated.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"whether the value passed validation.  True for passed, false for fail.",
            type:"boolean"
        },
        type:"method",
        serverDS:"allowed",
        definingClass:"object:validatorDefinition"
    },
    "class:GroupingMessages":{
        methods:[
        ],
        ref:"class:GroupingMessages",
        classAttrs:[
            "classAttr:GroupingMessages.upcomingTodayTitle",
            "classAttr:GroupingMessages.upcomingTomorrowTitle",
            "classAttr:GroupingMessages.upcomingThisWeekTitle",
            "classAttr:GroupingMessages.upcomingNextWeekTitle",
            "classAttr:GroupingMessages.upcomingNextMonthTitle",
            "classAttr:GroupingMessages.upcomingBeforeTitle",
            "classAttr:GroupingMessages.upcomingLaterTitle",
            "classAttr:GroupingMessages.byDayTitle",
            "classAttr:GroupingMessages.byWeekTitle",
            "classAttr:GroupingMessages.byMonthTitle",
            "classAttr:GroupingMessages.byQuarterTitle",
            "classAttr:GroupingMessages.byYearTitle",
            "classAttr:GroupingMessages.byDayOfMonthTitle",
            "classAttr:GroupingMessages.byUpcomingTitle",
            "classAttr:GroupingMessages.byHoursTitle",
            "classAttr:GroupingMessages.byMinutesTitle",
            "classAttr:GroupingMessages.bySecondsTitle",
            "classAttr:GroupingMessages.byMillisecondsTitle",
            "classAttr:GroupingMessages.weekNumberTitle",
            "classAttr:GroupingMessages.timezoneMinutesSuffix",
            "classAttr:GroupingMessages.timezoneSecondsSuffix"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
        ],
        description:"Grouping titles that will be displayed when data is grouped\n in a ${isc.DocUtils.linkForRef('class:ListGrid')}.",
        name:"GroupingMessages",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DrawKnob.knobDefaults":{
        ref:"attr:DrawKnob.knobDefaults",
        flags:"IRA",
        description:"Default properties for this component's ${isc.DocUtils.linkForRef('attr:DrawKnob.knobShape')}. Has the\n following properties by default:\n <pre>\n  radius : 5,\n  lineWidth:2,\n  fillColor:\"#FF0000\",\n  fillOpacity:0.5,\n </pre>\n As with any auto-child defaults block, use ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')} to modify this\n object.",
        name:"knobDefaults",
        seeAlso:[
        ],
        valueType:"DrawOval Properties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:DrawKnob"
    },
    "attr:FacetChart.barProperties":{
        ref:"attr:FacetChart.barProperties",
        flags:"IRW",
        description:"Properties for bar",
        name:"barProperties",
        seeAlso:[
        ],
        valueType:"DrawRect Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Canvas.backgroundImage":{
        ref:"attr:Canvas.backgroundImage",
        flags:"IRW",
        description:"URL for a background image for this widget (corresponding to the CSS \"background-image\"\n attribute).",
        name:"backgroundImage",
        setter:[
            "setBackgroundImage"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "method:ResultSet.transformData":{
        ref:"method:ResultSet.transformData",
        flags:"",
        description:" <code>transformData()</code> provides an opportunity to modify data that has been\n returned from the server, before it has been integrated into the client-side cache.\n <P>\n If data is not immediately suited for client-side use when it is returned from the\n ultimate data store, this method allows it to be transformed on the client so that such\n transform operations do not impact server scalability.\n <P>\n It is legal for <code>transformData()</code> to modify not only the records, but also\n their number (by modifying startRow and endRow on the ${isc.DocUtils.linkForRef('class:DSResponse')} object).\n <P>\n See also ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')} for an alternative entry point which\n applies to all DSResponses for a DataSource.\n\n",
        name:"transformData",
        seeAlso:[
        ],
        params:[
            {
                description:"data returned from the server",
                optional:false,
                name:"newData",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the DSResponse object returned by the                             server",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            }
        ],
        returns:{
            description:"the modified data, ready to be cached",
            type:"Array of Objects"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:DataSourceField.type":{
        ref:"attr:DataSourceField.type",
        flags:"IR",
        description:"Type of this field.  Required for all DataSource fields.\n <P>\n Field type may imply automatic validators (for example, an integer field cannot accept the\n value \"foo\").  Field type also affects the default behaviors of DataBound components, for\n example, if a field is declared as type \"date\", components that edit that field will\n automatically choose a date-editing interface with pop-up date picker.",
        name:"type",
        seeAlso:[
        ],
        valueType:"FieldType",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "basics"
        ]
    },
    "method:ListGrid.removeEmbeddedComponent":{
        ref:"method:ListGrid.removeEmbeddedComponent",
        flags:"A",
        description:" Removes an embedded component previously associated with the provided record. If a Canvas\n is passed as the <code>record</code> parameter, it is assumed to be a component and the\n record is detected automatically from it.  If\n <code>destroyOnUnEmbed</code> is <code>true</code> for the component, it will also be\n destroyed.\n\n",
        name:"removeEmbeddedComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"record that the component was previously attached     to or the component itself",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord | Canvas"
            },
            {
                description:"component to unembed, or the colNum in which it appears",
                optional:true,
                name:"component",
                defaultValue:null,
                type:"Integer | Canvas"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DateRangeItem.validateRange":{
        ref:"method:DateRangeItem.validateRange",
        flags:"",
        description:" Validate both <i>\"to\"</i> and <i>\"from\"</i> date-fields.\n",
        name:"validateRange",
        seeAlso:[
        ],
        returns:{
            description:"false if either <i>to</i> or <i>from</i>   field contains an invalid date value.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DateRangeItem"
    },
    "method:CubeGrid.deselectAllFacetValues":{
        ref:"method:CubeGrid.deselectAllFacetValues",
        flags:"",
        description:" Deselect all headers in a headerBar (specified by facetId) or\n all headerBars (if no facetId).\n\n  <br><i>methodType</i> action\n",
        name:"deselectAllFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of facet - if null, selects all headerbars' headers",
                optional:true,
                name:"facetId",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "class:HTMLPane":{
        methods:[
        ],
        ref:"class:HTMLPane",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
        ],
        description:"Use the HTMLPane component to display HTML content in a pane of specified size. If the HTML\n content is larger than the size of the pane, the pane will provide scrollbars for viewing\n clipped content.\n <P>\n You can set the size of an HTMLPane directly via the width and height properties, or\n indirectly by placing the HTMLPane in a container component (${isc.DocUtils.linkForRef('class:Layout')}, ${isc.DocUtils.linkForRef('class:Window')}, \n ${isc.DocUtils.linkForRef('class:SectionStack')}, etc) that manages the sizes of its members.",
        name:"HTMLPane",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('htmlPane')}"
        ]
    },
    "method:Callbacks.DataURLCallback":{
        ref:"method:Callbacks.DataURLCallback",
        flags:"",
        description:" Callback for ${isc.DocUtils.linkForRef('method:DrawPane.getDataURL')}.\n",
        name:"DataURLCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"the data URL",
                optional:false,
                name:"dataURL",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "group:track":{
        ref:"group:track",
        refs:[
            "attr:Scrollbar.btnSize",
            "attr:Scrollbar.showTrackEnds",
            "attr:Scrollbar.showTrackButtons",
            "attr:Scrollbar.trackEndWidth",
            "attr:Scrollbar.trackEndHeight"
        ],
        name:"track",
        seeAlso:[
        ],
        type:"group"
    },
    "classAttr:RPCResponse.STATUS_MAX_LOGIN_ATTEMPTS_EXCEEDED":{
        ref:"classAttr:RPCResponse.STATUS_MAX_LOGIN_ATTEMPTS_EXCEEDED",
        flags:"R",
        description:"Indicates that too many authentication attempts have been made and the server refuses to\n accept any more login attempts.",
        name:"STATUS_MAX_LOGIN_ATTEMPTS_EXCEEDED",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-6",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:FusionChart.chartProperties":{
        ref:"attr:FusionChart.chartProperties",
        flags:"IRA",
        description:"Properties to passthrough to the 'graph' element of the XML generated for FusionCharts.\n <P>\n Some automatic conversions are done:\n <ul>\n <li> boolean values become '0' and '1' as FusionCharts expects </li>\n <li> color values with a leading '#' have the '#' stripped to match FusionCharts </li>\n </ul>",
        name:"chartProperties",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FusionChart"
    },
    "method:Class.logWarn":{
        ref:"method:Class.logWarn",
        flags:"",
        description:" Log a message at \"warn\" priority\n \n",
        name:"logWarn",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:DSRequestModifier.start":{
        ref:"attr:DSRequestModifier.start",
        flags:"IR",
        description:"The value to use for the start of a range.  This property only applies to criteria, and it \n only applies to operators of type \"rangeCheck\" - for example, the \"between\" operator.\n It is ignored if specified as part of a ${isc.DocUtils.linkForRef('attr:OperationBinding.values')} attribute, or for \n an inapplicable operator type.\n <p>\n The same rules apply to this attribute as apply to ${isc.DocUtils.linkForRef('attr:DSRequestModifier.value','value')}, so\n you can use Velocity expressions if you have a Power or better license.",
        name:"start",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"object:DSRequestModifier"
    },
    "method:Layout.setVisibleMember":{
        ref:"method:Layout.setVisibleMember",
        flags:"",
        description:" Hide all other members and make the single parameter member visible.\n\n",
        name:"setVisibleMember",
        seeAlso:[
        ],
        params:[
            {
                description:"member to show",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "group:titaniumIntegration":{
        ref:"group:titaniumIntegration",
        title:"Integration with Titanium",
        treeLocation:[
            "Concepts/Mobile Application Development"
        ],
        refs:[
        ],
        description:"Titanium provides an extensive Javascript API to access a native device's UI, phone, camera, geolocation, etc.\n Documentation, getting started, programming guides are <a href='http://developer.appcelerator.com/documentation' target='_blank'>here</a>.\n Titanium provides a consistent API across devices including the ability to mix webviews with native controls.\n <P>\n The Titanium sample application provides an example of accessing a device's Contacts db using SmartClient. \n The application presents 2 tabs 'Customers' and 'Contacts' and allows the user to import Customer contacts into \n his/her contacts db resident on the device. Selecting a Customer's Contact address will show a map of the contact.\n Selecting a Customer's phone number will call the customer or prompt to import the contact into the user's \n contacts. The latter option is default behavior on the iPad. Calling the customer contact is default behavior for \n devices such as the iPhone or Android. \n <P>\n The Titanium Contact object holds the following properties:\n <ul>\n <li>URL</li>\n <li>address</li>\n <li>birthday</li>\n <li>created</li>\n <li>date</li>\n <li>department</li>\n <li>email</li>\n <li>firstName</li>\n <li>firstPhonetic</li>\n <li>fullName</li>\n <li>image</li>\n <li>instantMessage</li>\n <li>jobTitle</li>\n <li>kind</li>\n <li>lastName</li>\n <li>lastPhonetic</li>\n <li>middleName</li>\n <li>middlePhonetic</li>\n <li>modified</li>\n <li>nickname</li>\n <li>note</li>\n <li>organization</li>\n <li>phone</li>\n <li>prefix</li>\n <li>relatedNames</li>\n <li>suffix</li>\n </ul>\n <P>\n The following Titanium API's are used:\n <ul>\n <li>Titanium.App.addEventListener</li>\n <li>Titanium.App.fireEvent</li>\n <li>Titanium.Contacts.getAllPeople</li>\n <li>Titanium.Geolocation.forwardGeocoder</li>\n <li>Titanium.Map.STANDARD_TYPE,</li>\n <li>Titanium.Map.createView</li>\n <li>Titanium.UI.createTab</li>\n <li>Titanium.UI.createTabGroup</li>\n <li>Titanium.UI.createWebView</li>\n <li>Titanium.UI.createWindow</li>\n <li>Titanium.UI.setBackgroundColor</li>\n </ul>\n <P>\n The following SmartClient Components are used\n <ul>\n <li>isc.DataSource</li>\n <li>isc.ListGrid</li> \n </ul>\n <P>\n The following SmartClient Resources are bundled in the Titanium application\n <ul>\n <li>ISC_Containers.js</li>\n <li>ISC_Core.js</li>\n <li>ISC_DataBinding.js</li>\n <li>ISC_Foundation.js</li>\n <li>ISC_Grids.js</li>\n <li>load_skin.js</li>\n <li>skins/Mobile/images/black.gif</li>\n <li>skins/Mobile/images/blank.gif</li>\n <li>skins/Mobile/images/checked.png</li>\n <li>skins/Mobile/images/formula_menuItem.png</li>\n <li>skins/Mobile/images/grid.gif</li>\n <li>skins/Mobile/images/group_closed.gif</li>\n <li>skins/Mobile/images/group_opened.gif</li>\n <li>skins/Mobile/images/headerMenuButton_icon.gif</li>\n <li>skins/Mobile/images/loading.gif</li>\n <li>skins/Mobile/images/loadingSmall.gif</li>\n <li>skins/Mobile/images/opacity.png</li>\n <li>skins/Mobile/images/pinstripes.png</li>\n <li>skins/Mobile/images/row_collapsed.gif</li>\n <li>skins/Mobile/images/row_expanded.gif</li>\n <li>skins/Mobile/images/sort_ascending.gif</li>\n <li>skins/Mobile/images/sort_descending.gif</li>\n <li>skins/Mobile/skin_styles.css</li>\n </ul>",
        name:"titaniumIntegration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Layout.leaveScrollbarGap":{
        ref:"attr:Layout.leaveScrollbarGap",
        flags:"IR",
        description:"Whether to leave a gap for a vertical scrollbar even when one is not actually present.\n <P>\n This setting avoids the layout resizing all members when the vertical scrollbar is\n introduced or removed, which can avoid unnecessary screen shifting and improve\n performance.",
        name:"leaveScrollbarGap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Layout"
    },
    "attr:ListGrid.unremoveIcon":{
        ref:"attr:ListGrid.unremoveIcon",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is enabled, this icon will be shown in the\n auto generated field fro removing records if the record has been marked as removed via\n ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')}. At this point, clicking on the icon will\n unmark the record as removed.",
        name:"unremoveIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/actions/undo.png\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:List.addAt":{
        ref:"method:List.addAt",
        flags:"",
        description:" Add a single item to this array at a specific position in the list, sliding other items over\n to fit.\n\n",
        name:"addAt",
        seeAlso:[
        ],
        params:[
            {
                description:"object to add",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"object"
            },
            {
                description:"position in the list to add at",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"object that was added",
            type:"object"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "attr:StatefulCanvas.showDisabled":{
        ref:"attr:StatefulCanvas.showDisabled",
        flags:"IRW",
        description:"Should we visibly change state when disabled?",
        name:"showDisabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "method:PickTreeItem.setValueTree":{
        ref:"method:PickTreeItem.setValueTree",
        flags:"",
        description:" Setter to change the ${isc.DocUtils.linkForRef('attr:PickTreeItem.valueTree')} at runtime\n",
        name:"setValueTree",
        seeAlso:[
        ],
        params:[
            {
                description:"new value tree for the item",
                optional:false,
                name:"valueTree",
                defaultValue:null,
                type:"Tree"
            }
        ],
        type:"method",
        definingClass:"class:PickTreeItem"
    },
    "attr:Gradient.id":{
        ref:"attr:Gradient.id",
        flags:"IR",
        description:"Identifier which can be used by one or more DrawItems when gradient is assigned\n to ${isc.DocUtils.linkForRef('attr:DrawPane.gradients')}. The ID property is optional when gradient is assigned directly\n to a DrawItem.\n <p>\n The ID must be unique within DrawPane.gradients if defined.",
        name:"id",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Gradient"
    },
    "attr:Calendar.firstDayOfWeek":{
        ref:"attr:Calendar.firstDayOfWeek",
        flags:"IRW",
        description:"The numeric day (0-6) which the calendar should consider as the first day of the week - if\n unset, the default is taken from the current locale.",
        name:"firstDayOfWeek",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "date"
        ]
    },
    "attr:FacetChart.showValueAxisLabel":{
        ref:"attr:FacetChart.showValueAxisLabel",
        flags:"IR",
        description:"Whether to show the ${isc.DocUtils.linkForRef('attr:FacetChart.valueTitle')} as a label on the value axis.\n <p>\n Automatically disabled for non-rectangular charts (eg Pie, Radar).",
        name:"showValueAxisLabel",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Slider.roundValues":{
        ref:"attr:Slider.roundValues",
        flags:"IRW",
        description:"Specifies whether the slider value should be rounded to the nearest integer.  If set to\n false, values will be rounded to a fixed number of decimal places controlled by\n ${isc.DocUtils.linkForRef('attr:Slider.roundPrecision')}.",
        name:"roundValues",
        setter:[
            "setRoundValues"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:SliderItem.roundPrecision":{
        ref:"attr:SliderItem.roundPrecision",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:Slider.roundValues')} is false, the slider value will be rounded to this number of\n decimal places. If set to null the value will not be rounded",
        name:"roundPrecision",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('sliderItem')}"
        ],
        definingClass:"class:SliderItem"
    },
    "attr:TabSet.skinImgDir":{
        ref:"attr:TabSet.skinImgDir",
        flags:"IR",
        description:"Default directory for skin images (those defined by the class), relative to the\n Page-wide ${isc.DocUtils.linkForRef('classMethod:Page.getSkinDir','skinDir')}.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"images/TabSet/\"",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "images"
        ]
    },
    "attr:DrawLabel.knobs":{
        ref:"attr:DrawLabel.knobs",
        flags:"IR",
        description:"<b>NOTE:</b> DrawLabels do not support knobs.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawLabel"
    },
    "attr:TimeItem.millisecondMaxValue":{
        ref:"attr:TimeItem.millisecondMaxValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondValues','millisecondValues')} is unset, this attribute specifies \n the maximum value present in the millisecond picker.\n <P>Used for specifying a limited set of valid Millisecond values, or when using the \n TimeItem to record duration, rather than time per-se.  The default is 999.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondMinValue','millisecondMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondIncrement','millisecondIncrement')}.",
        name:"millisecondMaxValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "classMethod:DataSource.load":{
        ref:"classMethod:DataSource.load",
        flags:"",
        description:" Load a DataSource or an array of DataSources using the DataSourceLoader servlet.  When\n a callback is specified, this is fired after the DataSources are loaded.  The callback\n is passed a single parameter, the <code>dsID</code> list passed into the method.  If\n no loading occurs because the requested DataSource(s) are already loaded, a warning is \n logged and the callback is fired immediately.\n <P>\n To force reloading of DataSources that have already been loaded,\n pass <code>true</code> for the forceReload parameter.\n\n",
        name:"load",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource ID or Array of DataSource IDs",
                optional:false,
                name:"dsID",
                defaultValue:null,
                type:"String | Array of String"
            },
            {
                description:"Callback to fire after DataSource loading completes",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Function"
            },
            {
                description:"Forcibly reload a dataSource if it's already loaded",
                optional:true,
                name:"forceReload",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "method:DrawCurve.setStartPoint":{
        ref:"method:DrawCurve.setStartPoint",
        flags:"",
        description:" Update the startPoint\n\n",
        name:"setStartPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for start point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for start point, in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "classMethod:DateRangeDialog.askForRange":{
        ref:"classMethod:DateRangeDialog.askForRange",
        flags:"",
        description:" Helper method to launch a DateRangeDialog to have a date range input by the user.\n",
        name:"askForRange",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to allow relative date entry via                                    ${isc.DocUtils.linkForRef('class:RelativeDateItem')}s, default true",
                optional:false,
                name:"allowRelativeDates",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"properties for the DateRangeItem",
                optional:false,
                name:"rangeItemProperties",
                defaultValue:null,
                type:"DateRangeItem Properties"
            },
            {
                description:"properties for the Window",
                optional:false,
                name:"windowProperties",
                defaultValue:null,
                type:"DateRangeDialog Properties"
            },
            {
                description:"method to fire once user has input values, with a single parameter                           \"criterion\" of type ${isc.DocUtils.linkForRef('object:Criterion')}",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"classMethod",
        definingClass:"class:DateRangeDialog"
    },
    "method:ColorPicker.setOpacity":{
        ref:"method:ColorPicker.setOpacity",
        flags:"",
        description:" Sets the Opacity of the selected color. Ignored if opacity is switched off.\n",
        name:"setOpacity",
        seeAlso:[
            {
                ref:"method:ColorPicker.getOpacity",
                description:null
            }
        ],
        params:[
            {
                description:"An integer between 0 and 100",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "attr:ListGrid.canEditHilites":{
        ref:"attr:ListGrid.canEditHilites",
        flags:"IRW",
        description:"Adds an item to the header context menu allowing users to launch a dialog to define\n grid hilites using the ${isc.DocUtils.linkForRef('class:HiliteEditor')}.\n <P>\n User-added hilites can be persisted via ${isc.DocUtils.linkForRef('method:DataBoundComponent.getHiliteState')} and \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.setHiliteState')}.",
        name:"canEditHilites",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "method:DateChooser.setData":{
        ref:"method:DateChooser.setData",
        flags:"",
        description:" Set the picker to show the given date.\n \n",
        name:"setData",
        seeAlso:[
        ],
        params:[
            {
                description:"new value",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            }
        ],
        type:"method",
        definingClass:"class:DateChooser"
    },
    "attr:LinkItem.linkTitle":{
        ref:"attr:LinkItem.linkTitle",
        flags:"IRW",
        description:"Optional title HTML to display for this item's link. If unset, the <code>LinkItem</code>'s\n value (the URL) will be used for the link's title.",
        name:"linkTitle",
        setter:[
            "setLinkTitle"
        ],
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LinkItem"
    },
    "attr:DateChooser.cancelButtonTitle":{
        ref:"attr:DateChooser.cancelButtonTitle",
        flags:"IRW",
        description:"Title for the cancellation button.",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:DateChooser",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Facet.canCollapse":{
        ref:"attr:Facet.canCollapse",
        flags:"IR",
        description:"For tree facets, whether expand/collapse controls should be shown.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')} (see, for\n example, ${isc.DocUtils.linkForRef('attr:CubeGrid.canCollapseFacets')}).",
        name:"canCollapse",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"facet.isTree",
        type:"attr",
        definingClass:"class:Facet"
    },
    "method:Slider.setNumValues":{
        ref:"method:Slider.setNumValues",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.numValues','number of values')} for the slider \n\n",
        name:"setNumValues",
        seeAlso:[
        ],
        params:[
            {
                description:"the new number of values <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
                optional:false,
                name:"newNumValues",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "method:RichTextEditor.getValue":{
        ref:"method:RichTextEditor.getValue",
        flags:"",
        description:" Retrieves the current value of the edit area.\n",
        name:"getValue",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RichTextEditor"
    },
    "class:DataPathItem":{
        methods:[
        ],
        ref:"class:DataPathItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"TextItem subclass for managing a DataPath",
        name:"DataPathItem",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:Date.setWeekendDays":{
        ref:"classMethod:Date.setWeekendDays",
        flags:"",
        description:" Sets the days that are considered ${isc.DocUtils.linkForRef('classAttr:Date.weekendDays','weekend days')}.  The parameter \n should be array of the integers returned by the JavaScript built-in Date.getDay(), eg, 0 is \n Sunday and 6 is Saturday.  Override to accommodate different workweeks such as Saudi Arabia \n (Saturday -> Wednesday) or Israel (Sunday -> Thursday).\n\n",
        name:"setWeekendDays",
        seeAlso:[
        ],
        params:[
            {
                description:"the array of day-numbers to assign as weekend days",
                optional:false,
                name:"weekendDays",
                defaultValue:null,
                type:"Array of Integer"
            }
        ],
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:Calendar.canDragEventField":{
        ref:"attr:Calendar.canDragEventField",
        flags:"IR",
        description:"Name of the field on each ${isc.DocUtils.linkForRef('object:CalendarEvent')} that determines dragability.",
        name:"canDragEventField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"canEdit\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:DSRequest.exportAs":{
        ref:"attr:DSRequest.exportAs",
        flags:"IR",
        description:"The format in which the data should be exported.  See ${isc.DocUtils.linkForRef('type:ExportFormat')} for more \n information.",
        name:"exportAs",
        seeAlso:[
        ],
        valueType:"ExportFormat",
        defaultValue:"\"csv\"",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:Gauge.borderColor":{
        ref:"attr:Gauge.borderColor",
        flags:"IR",
        description:"Color for gauge sector borders.",
        name:"borderColor",
        seeAlso:[
            {
                ref:"attr:DrawItem.lineColor",
                description:null
            }
        ],
        valueType:"CSSColor",
        defaultValue:"\"#333333\"",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:FormItem.synchronousValidation":{
        ref:"attr:FormItem.synchronousValidation",
        flags:"IR",
        description:"If enabled, whenever validation is triggered and a request to the server is required,\n user interactivity will be blocked until the request returns. Can be set for the entire\n form or individual FormItems.\n <p>\n If false, the form will try to avoid blocking user interaction until it is strictly\n required. That is until the user attempts to use a FormItem whose state could be\n affected by a server request that has not yet returned.",
        name:"synchronousValidation",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "class:DataView":{
        methods:[
            "method:DataView.dataViewLoaded"
        ],
        ref:"class:DataView",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
        ],
        description:"A DataView coordinates the asynchronous loading of WSDL WebService and XML Schema\n definitions in applications created by Visual Builder.\n <p>\n For applications that do not use WSDL Web Services and were not created by Visual Builder,\n DataView is equivalent to it's superclass ${isc.DocUtils.linkForRef('class:VLayout')}.",
        name:"DataView",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Slider.numValues":{
        ref:"attr:Slider.numValues",
        flags:"IRW",
        description:"The number of discrete values represented by slider. If specified, the range of valid\n values (between <code>minValue</code> and <code>maxValue</code>) will be divided into\n this many steps. As the thumb is moved along the track it will only select these values\n and appear to jump between the steps.",
        name:"numValues",
        setter:[
            "setNumValues"
        ],
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('slider')}"
        ],
        definingClass:"class:Slider"
    },
    "attr:DateRangeItem.dateDisplayFormat":{
        ref:"attr:DateRangeItem.dateDisplayFormat",
        deprecated:"This property is supported but  the standard ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter','dateFormatter')} and ${isc.DocUtils.linkForRef('attr:DateRangeItem.inputFormat')} \n may now be used to specify date formatting parsing behavior for dateRangeItems",
        flags:"IR",
        description:"Format for displaying dates in to the user.  \n Defaults to the system-wide default established by ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat')}.",
        name:"dateDisplayFormat",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:FacetChart.legendRectProperties":{
        ref:"attr:FacetChart.legendRectProperties",
        flags:"IR",
        description:"Properties for rectangle around the legend as a whole.",
        name:"legendRectProperties",
        seeAlso:[
        ],
        valueType:"DrawRect Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:DataSourceField.required":{
        ref:"attr:DataSourceField.required",
        flags:"IR",
        description:"Indicates this field must be non-null in order for a record to pass validation.\n <P>\n Note that <code>required</code> should not be set for a server-generated field, such as a\n sequence, or validation will fail on the client.",
        name:"required",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "dataType"
        ]
    },
    "group:dataChanged":{
        ref:"group:dataChanged",
        title:"Data Changes",
        refs:[
        ],
        description:"Operations that change the Array",
        name:"dataChanged",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Canvas.dragMove":{
        ref:"method:Canvas.dragMove",
        flags:"A",
        description:" Executed every time the mouse moves while dragging this canvas.\n\n",
        name:"dragMove",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag interaction.",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragPan')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:DatabaseBrowser.excludeSubstring":{
        ref:"attr:DatabaseBrowser.excludeSubstring",
        flags:"IR",
        description:"If set, specifies a substring which must NOT exist in a table name for it to be included in\n this DatabaseBrowser.  If this property is set to a List of strings, table names are\n excluded if they match any one of the strings.  The comparison is case-insensitive.\n <p>\n For example, <code>excludeSubstring: [\"E\", \"qry\"]</code> would exclude all the following \n table names: \"table\", \"QryTbl\", \"QRY\", \"ORDERS\"\n <p>\n Note that if you specify both include and exclude criteria and they conflict (ie,\n according to the criteria you set, a table should be both included and excluded), \n exclude wins.",
        name:"excludeSubstring",
        seeAlso:[
        ],
        valueType:"String | List of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "method:ListGrid.isExpansionField":{
        ref:"method:ListGrid.isExpansionField",
        flags:"",
        description:" Identifies whether the passed-in field is the specially generated\n ${isc.DocUtils.linkForRef('attr:ListGrid.expansionField','expansionField')} used when ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')} is\n true.  Use this method in your custom event handlers to avoid inappropriately\n performing actions when the expansionField is clicked on.\n\n",
        name:"isExpansionField",
        seeAlso:[
        ],
        params:[
            {
                description:"field to test",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"whether the provided field is the expansion field",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:DataSource.getFetchDataURL":{
        ref:"method:DataSource.getFetchDataURL",
        flags:"",
        description:" Returns a URL to DataSource fetch operation.  This API is intended to return\n media such as images or videos to the browser.  \n <P>\n Note that because the entirety of the request is encoded in the URL, there is an\n inherent limitation on the amount of data that you can send viat he criteria argument to\n the server.  The actual length depends on your server configuration and other factors\n such as the size of cookies (if any) being sent to the server and other HTTP headers in\n use.  Conservatively, assume that you have about 2 kilobytes to work with.\n\n",
        name:"getFetchDataURL",
        seeAlso:[
        ],
        params:[
            {
                description:"Criteria to be sent to server.",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        returns:{
            description:"a URL that targets the specified fetch operation.",
            type:"String"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:ListGrid.longTextEditorThreshold":{
        ref:"attr:ListGrid.longTextEditorThreshold",
        flags:"IRW",
        description:"When the length of the field specified by ${isc.DocUtils.linkForRef('attr:DataSourceField.length')} exceeds this\n value, the ListGrid shows an edit field of type ${isc.DocUtils.linkForRef('attr:ListGrid.longTextEditorType')}\n rather than the standard text field when the field enters inline edit mode.",
        name:"longTextEditorThreshold",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"255",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:StretchImgButton.action":{
        ref:"method:StretchImgButton.action",
        flags:"",
        description:" This property contains the default 'action' for the Button to fire when activated.\n",
        name:"action",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "attr:DrawnValue.barThickness":{
        ref:"attr:DrawnValue.barThickness",
        flags:"IR",
        description:"For bar and column charts, thickness of the bar representing this data value.",
        name:"barThickness",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "method:Array.last":{
        ref:"method:Array.last",
        flags:"",
        description:" Return the last item in this list\n\n",
        name:"last",
        seeAlso:[
        ],
        returns:{
            description:"last item in the list",
            type:"any"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:DataSource.autoDeriveSchema":{
        ref:"attr:DataSource.autoDeriveSchema",
        flags:"IR",
        description:"This property allows you to specify that your DataSource's schema (field definitions) should\n be automatically derived from some kind of metadata.  This causes SmartClient to create \n a special super-DataSource, which is used purely as a source of default schema for this \n DataSource; this is arranged by causing the autoDerived DataSource to automatically \n ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom','inherit from')} the special super-DataSource.  This allows you to \n auto-derive schema from existing metadata, whilst still being able to override any or all\n of it as required.<p>\n This property has a different implementation depending upon the \n ${isc.DocUtils.linkForRef('attr:DataSource.serverType','serverType')} of the DataSource:<ul>\n <li>For a DataSource with serverType: \"sql\", automatically derive the dataSource's schema \n from the Spring bean or Java class specified in ${isc.DocUtils.linkForRef('attr:DataSource.schemaBean','schemaBean')}.  If \n <code>schemaBean</code> is not specified, derive the schema from the columns in the SQL \n table specified in ${isc.DocUtils.linkForRef('attr:DataSource.tableName','tableName')}.  More information on SQL DataSources \n is ${isc.DocUtils.linkForRef('group:sqlDataSource','here')}</li>  \n <li>For a DataSource with serverType: \"hibernate\", automatically derive the dataSource's\n schema from the Spring bean, Hibernate mapping or Java class named in the \n ${isc.DocUtils.linkForRef('attr:DataSource.schemaBean','schemaBean')} property.  If no such thing exists, derive the schema from\n the Hibernate mapping or Java class specified in the ${isc.DocUtils.linkForRef('attr:DataSource.beanClassName','beanClassName')}\n property (this allows you to specify schema and mapping separately, in the unusual \n circumstance that you have a need to do so).  Note that the \"mappings\" referred to here\n can mean either <code>.hbm.xml</code> files or annotated classes; both are supported.\n If neither of these is successful, derive the schema from the underlying SQL table \n specified in ${isc.DocUtils.linkForRef('attr:DataSource.tableName','tableName')}.  More information on Hibernate DataSources is\n ${isc.DocUtils.linkForRef('group:hibernateIntegration','here')}</li>  \n <li>For a DataSource with serverType: \"jpa1\" or \"jpa\", automatically derive the \n dataSource's schema from the annotated JPA class named in the ${isc.DocUtils.linkForRef('attr:DataSource.schemaBean','schemaBean')} \n property.  If the schemaBean property is not defined, derive the schema from the \n annotated JPA class named in the ${isc.DocUtils.linkForRef('attr:DataSource.beanClassName','beanClassName')} property (as with \n Hibernate, this allows you to specify schema and mapping separately if you need to do \n so).  JPA DataSource generation relies on annotations (the orm.xml mapping file is not \n supported).  More information on JPA DataSources is ${isc.DocUtils.linkForRef('group:jpaIntegration','here')}</li>  \n <li>For other DataSource types, attempt to find a Spring bean with the name specified in\n the ${isc.DocUtils.linkForRef('attr:DataSource.schemaBean','schemaBean')} property.  If no such bean is found (or Spring is not \n present), attempt to instantiate an object whose fully-qualified class name is the value\n in the <code>schemaBean</code> property.  If one of these approaches succeeds, we derive\n the schema from the discovered object (by treating it as a Java Bean and assuming that \n each one of its getters corresponds to a like-named field in the DataSource).  More \n information on custom DataSource implementations is ${isc.DocUtils.linkForRef('group:writeCustomDataSource','here')}.</li>\n </ul>\n The following table shows how SQL types are derived into \n ${isc.DocUtils.linkForRef('type:FieldType','DataSource types')} when we use an SQL table as a source of metadata\n for a SQL or Hibernate DataSource:\n <table border=\"1\" class=\"normal\">\n <tr><th>SQL type</th><th>${isc.DocUtils.linkForRef('attr:DataSourceField.type','DataSource type')}</th></tr>\n <tr><td>CHAR, VARCHAR, LONGVARCHAR, TEXT, CLOB</td><td>text</td></tr>\n <tr><td>BIT, TINYINT, SMALLINT, INTEGER, BIGINT, DECIMAL<sup>*</sup>, NUMBER<sup>**</sup></td><td>integer</td></tr>\n <tr><td>REAL, FLOAT, DOUBLE, DECIMAL<sup>*</sup>, NUMBER<sup>**</sup></td><td>float</td></tr>\n <tr><td>DATE</td><td>date</td></tr>\n <tr><td>TIME</td><td>time</td></tr>\n <tr><td>TIMESTAMP</td><td>datetime</td></tr>\n <tr><td>BLOB, BINARY, VARBINARY, LONGVARBINARY</td><td>binary</td></tr>\n </table>\n <sup>*</sup>For DECIMAL types, we inspect the \"DECIMAL_DIGITS\" attribute of the JDBC \n metadata and designate the field type \"integer\" if that attribute is 0, or \"float\" if\n it is some other value.<br>\n <sup>**</sup>NUMBER is an Oracle-only type that appears in the JDBC metadata as DECIMAL\n and is handled exactly the same way as DECIMAL\n <p>\n The following table shows how Java types are derived into DataSource types when we use\n an unannotated Java class (Spring bean, Hibernate mapping or POJO) as a source of \n metadata for a SQL, Hibernate or custom DataSource:\n <table border=\"1\" class=\"normal\">\n <tr><th>Java type</th><th>${isc.DocUtils.linkForRef('attr:DataSourceField.type','DataSource type')}</th></tr>\n <tr><td>boolean, Boolean</td><td>boolean</td></tr>\n <tr><td>char, Character, String, Reader</td><td>text</td></tr>\n <tr><td>byte, short, int, long, Byte, Short, Integer, Long, BigInteger</td><td>integer</td></tr>\n <tr><td>float, double, Float, Double, BigDecimal</td><td>float</td></tr>\n <tr><td>Enum</td><td>enum (see discussion below)</td></tr>\n <tr><td>InputStream</td><td>binary</td></tr>\n <tr><td>java.sql.Date, java.util.Date, java.util.Calendar</td><td>date</td></tr>\n <tr><td>java.sql.Time</td><td>time</td></tr>\n <tr><td>java.sql.Timestamp</td><td>datetime</td></tr>\n </table>\n <p>\n We also derive the following information for Hibernate mappings described in \n <code>.hbm.xml</code> files (for Hibernate mappings described in Java annotations, see\n the next table):\n <ul>\n <li>The first field we encounter that is described in the mapping with an &lt;id&gt; tag\n     is marked as a primaryKey</li>\n <li>If that field is marked as being generated, we set its type to \"sequence\"</li>\n </ul>\n Finally, this table shows how Java types are derived into DataSource types when we use an \n annotated class as a source of metadata.  Note annotated classes are necessary for JPA\n DataSources, but you can choose to use them for other types of DataSource as well.  \n For Hibernate DataSources, this is very worthwhile because Hibernate will also make use\n of the annotations as config, meaning you don't need to specify <code>.hbm.xml</code> \n files.  For SQL and custom DataSources, there is no benefit at the persistence level, \n but it may still be worthwhile because the use of an annotated class gives us better \n metadata and allows us to generate a better, closer-fitting autoDerive DataSource than \n we can from examination of SQL schema or plain Java Beans:\n <table border=\"1\" class=\"normal\">\n <tr><th>Java type</th><th>${isc.DocUtils.linkForRef('attr:DataSourceField.type','DataSource type')}</th></tr>\n <tr><td>boolean, Boolean</td><td>boolean</td></tr>\n <tr><td>char, Character, String, Reader</td><td>text</td></tr>\n <tr><td>byte, short, int, long, Byte, Short, Integer, Long, BigInteger</td><td>integer</td></tr>\n <tr><td>float, double, Float, Double, BigDecimal</td><td>float</td></tr>\n <tr><td>InputStream</td><td>binary</td></tr>\n <tr><td>java.util.Date (with Temporal set to DATE), java.sql.Date</td><td>date</td></tr>\n <tr><td>java.util.Date (with Temporal set to TIME), java.sql.Time</td><td>time</td></tr>\n <tr><td>java.util.Date (with Temporal set to TIMESTAMP), java.util.Calendar, java.sql.Timestamp</td><td>datetime</td></tr>\n <tr><td>Enum (with Enumerated set to STRING)</td><td>enum (see discussion below)</td></tr>\n <tr><td>Enum (with Enumerated set to ORDINAL)</td><td>intEnum (see discussion below)</td></tr>\n <tr><td>Field with Lob annotation</td><td>binary</td></tr>\n <tr><td>Field with GeneratedValue annotation</td><td>sequence</td></tr>\n </table>\n <p><p>\n <h4>enums and valueMaps</h4>\n When we come across Java <code>Enum</code> properties in plain or annotated classes, \n as well as setting the field type as noted in the above tables, we also generate a \n valueMap for the field, based on the <code>Enum</code> members.  \n <p>\n For cases where we generate a field of SmartClient type \"enum\" (see the above tables), \n the keys of the valueMap are the result of calling <code>name()</code> on each member\n of the underlying Java Enum (in other words, its value exactly as declared in its \n enum declaration).  For cases where we generate a field of SmartClient type \"intEnum\",\n the keys of the valueMap are strings representing the ordinal number of each member \n in the Java Enum - \"0\", \"1\", etc. Note that this behavior will be overriden by \n ${isc.DocUtils.linkForRef('attr:DataSource.enumTranslateStrategy','DataSource.enumTranslateStrategy')} if both are set.\n <p>\n In both of these case, the display values generated for the valueMap are the result \n of calling <code>toString()</code> on each Enum member.  If that gives the same \n value as calling <code>name()</code>, the value is passed through \n <code>DataTools.deriveTitleFromName()</code>, which applies the same processing rules\n as ${isc.DocUtils.linkForRef('classMethod:DataSource.getAutoTitle')} to derive a more user-friendly display value.\n <p>\n <b>NOTE:</b> <code>schemaBean</code> implies <code>autoDeriveSchema</code>, because it \n has no other purpose than to name the bean to use for auto-derived schema.  Thus, if you \n specify <code>schemaBean</code> you do not need to specify <code>autoDeriveSchema</code> \n as well (though it does no harm to do so).  However, <code>tableName</code> can be \n validly specified without implying <code>autoDeriveSchema</code>, so in that case you \n must explicitly specify <code>autoDeriveSchema</code>.\n <p>\n <b>NOTE:</b> The underlying super-DataSource is cached in server memory, so that it does \n not have to be derived and created each time you need it.  However, the cache manager \n will automatically refresh the cached copy if it detects that the deriving DataSource \n has changed.  Thus, if you change the metadata your DataSource is deriving (if, for \n example, you add a column to a table), all you need to do is touch the \n <code>.ds.xml</code> file (ie, update its last changed timestamp - you don't actually\n have to change it) and the cached copy will be refreshed next time it is needed.\n <p>\n When autoDeriveSchema is set, SQLDataSource will automatically discover foreignKeys and\n deliver table and column name information to the client in hashed form so that two\n DataSources that are linked by native SQL foreign keys will automatically discover each\n other if loaded into the same application, and set dataSourceField.foreignKey\n automatically.  Because the table and column names are delivered as cryptohashes, there\n is no information leakage, but regardless the feature can be disabled via setting\n datasource.autoLinkFKs to false in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.  \n This hashed linkage information is\n delivered to the client in properties ${isc.DocUtils.linkForRef('attr:DataSource.tableCode')} \n and ${isc.DocUtils.linkForRef('attr:DataSourceField.fkTableCode')}/${isc.DocUtils.linkForRef('attr:DataSourceField.fkColumnCode','fkColumnCode')}",
        name:"autoDeriveSchema",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource",
        groups:[
            "fields"
        ]
    },
    "attr:DynamicForm.itemHoverDelay":{
        ref:"attr:DynamicForm.itemHoverDelay",
        flags:"IRW",
        description:"If the user rolls over an item, how long a delay before we fire any hover action / show\n a hover for that item?",
        name:"itemHoverDelay",
        seeAlso:[
            {
                ref:"attr:FormItem.hoverDelay",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"500",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "group:dataChanges":{
        ref:"group:dataChanges",
        refs:[
        ],
        name:"dataChanges",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Calendar.eventSnapGap":{
        ref:"attr:Calendar.eventSnapGap",
        flags:"IR",
        description:"In ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day')} and ${isc.DocUtils.linkForRef('attr:Calendar.weekView','week')} views, determines the number of vertical \n pixels by which an event can be moved or resized when dragging.  The default of 20px means \n that snapping occurs to each row border, since the default height of each \n ${isc.DocUtils.linkForRef('attr:Calendar.rowHeight','row')} in those views is also 20px.\n <P>\n For timelines, this attribute affects the number of horizontal pixels used for drag-snapping.\n Since the default width for ${isc.DocUtils.linkForRef('attr:Calendar.headerLevels')} is 60px, the default eventSnapGap of 20px\n means that each column is split into 20 minute sections, assuming that the \n ${isc.DocUtils.linkForRef('attr:Calendar.timelineGranularity')} is \"hour\".",
        name:"eventSnapGap",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "editing"
        ]
    },
    "method:TileGrid.addTile":{
        ref:"method:TileGrid.addTile",
        flags:"",
        description:" This is not allowed for tileGrid. Instead, use ${isc.DocUtils.linkForRef('method:TileGrid.addData')}.\n\n",
        name:"addTile",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid"
    },
    "type:DateItemSelectorFormat":{
        ref:"type:DateItemSelectorFormat",
        values:[
            {
                description:"Output fields in day, month, year order.",
                value:"DateItem.DAY_MONTH_YEAR"
            },
            {
                description:"Output fields in month, day, year order.",
                value:"DateItem.MONTH_DAY_YEAR"
            },
            {
                description:"Output fields in year, month, day order.",
                value:"DateItem.YEAR_MONTH_DAY"
            },
            {
                description:"Output only day, month fields.",
                value:"DateItem.DAY_MONTH"
            },
            {
                description:"Output only month, day fields.",
                value:"DateItem.MONTH_DAY"
            },
            {
                description:"Output only year, month fields.",
                value:"DateItem.YEAR_MONTH"
            },
            {
                description:"Output only month, year fields.",
                value:"DateItem.MONTH_YEAR"
            }
        ],
        description:"Order of pickers and which pickers are present when using a DateItem with\n ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} false.",
        name:"DateItemSelectorFormat",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:HTMLFlow.captureSCComponents":{
        ref:"attr:HTMLFlow.captureSCComponents",
        flags:"IR",
        description:"If true, SmartClient components created while executing the loaded HTML are captured\n for rendering inside the HTMLFlow.\n <P>\n Only applies when contentsType is <b>not</b> \"page\".",
        name:"captureSCComponents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "classAttr:Operators.iEqualsFieldTitle":{
        ref:"classAttr:Operators.iEqualsFieldTitle",
        flags:"IR",
        description:"Title for the \"iEqualsField\" operator",
        name:"iEqualsFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"matches other field (case insensitive)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Class.logIsEnabledFor":{
        ref:"method:Class.logIsEnabledFor",
        flags:"",
        description:" Check whether a message logged at the given priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsEnabledFor",
        seeAlso:[
        ],
        params:[
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "group:eventHandling":{
        ref:"group:eventHandling",
        refs:[
            "method:DynamicForm.getFocusItem",
            "method:DynamicForm.focusInItem",
            "method:FormItem.focusInItem",
            "method:FormItem.blurItem",
            "method:FormItem.focus",
            "method:FormItem.blur",
            "method:FormItem.editorEnter",
            "method:FormItem.editorExit",
            "method:FormItem.click",
            "method:FormItem.doubleClick",
            "method:FormItem.change",
            "method:FormItem.changed",
            "method:FormItem.keyPress",
            "method:FormItem.keyDown",
            "method:FormItem.keyUp",
            "method:ButtonItem.click",
            "attr:FormItem.changeOnKeypress",
            "attr:TextItem.changeOnKeypress",
            "attr:TextAreaItem.changeOnKeypress"
        ],
        name:"eventHandling",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.checkboxFieldPartialImage":{
        ref:"attr:ListGrid.checkboxFieldPartialImage",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.selectionAppearance')} is set to <code>\"checkbox\"</code> this property\n determines the image to display in the checkbox field for a partially selected row.\n If unset, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanPartialImage')} will be used. Note that the special\n value \"blank\" means that no image will be shown.",
        name:"checkboxFieldPartialImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.checkboxFieldTrueImage",
                description:null
            },
            {
                ref:"attr:ListGrid.checkboxFieldImageWidth",
                description:null
            },
            {
                ref:"attr:ListGrid.checkboxFieldImageHeight",
                description:null
            },
            {
                ref:"attr:ListGrid.printCheckboxFieldPartialImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField"
        ]
    },
    "method:Window.shouldDismissOnEscape":{
        ref:"method:Window.shouldDismissOnEscape",
        flags:"",
        description:" Should this window be dismissed (same effect as pressing the \"Cancel\" button) when the \n user presses the \"Escape\" key?<br>\n Default behavior: if ${isc.DocUtils.linkForRef('attr:Window.dismissOnEscape')} is set, just return it. Otherwise return\n true if this window is showing a \"close\" control in the header \n (see ${isc.DocUtils.linkForRef('attr:Window.headerControls')}).\n",
        name:"shouldDismissOnEscape",
        seeAlso:[
        ],
        returns:{
            description:"true if the window should be dismissed when the user hits escape",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Window"
    },
    "method:Gauge.setNumMinorTicks":{
        ref:"method:Gauge.setNumMinorTicks",
        flags:"",
        description:" Sets the number of minor tick lines.\n\n <p><b>NOTE:</b> To divide the dial into <i>n</i> regions, you will need <i>n</i> + 1 ticks.\n For example, if the minimum value is 0 and the maximum value is 100, then to place minor\n tick lines at 0, 1, 2, 3, 4, 5, ..., 99, 100, you need 101 (100 + 1) minor ticks.\n\n",
        name:"setNumMinorTicks",
        seeAlso:[
        ],
        params:[
            {
                description:"the number of minor tick lines to draw. Must be either 0 or an integer greater than or equal to 2.",
                optional:false,
                name:"numMinorTicks",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "method:Canvas.hideContextMenu":{
        ref:"method:Canvas.hideContextMenu",
        flags:"A",
        description:"\n The default implementation of this method hides the contextMenu currently being shown for this\n component (which occurs when the mouse button that toggles the context menu is released).\n Override if you want some other behavior.\n\n",
        name:"hideContextMenu",
        seeAlso:[
            {
                ref:"method:Canvas.showContextMenu",
                description:null
            },
            {
                ref:"method:Menu.hideContextMenu",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "attr:FilterClause.removeButton":{
        ref:"attr:FilterClause.removeButton",
        flags:"IR",
        description:"The clause removal ImgButton that appears before this clause if\n ${isc.DocUtils.linkForRef('attr:FilterClause.showRemoveButton')} is set.",
        name:"removeButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "method:ColumnTree.getData":{
        ref:"method:ColumnTree.getData",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('class:Tree')} object this ColumnTree is viewing\n\n",
        name:"getData",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "attr:DateItem.showChooserWeekPicker":{
        ref:"attr:DateItem.showChooserWeekPicker",
        flags:"IRW",
        description:"When set to true, show a button that allows the calendar to be navigated by week or\n fiscal week, depending on the value of ${isc.DocUtils.linkForRef('attr:DateItem.showChooserFiscalYearPicker')}.",
        name:"showChooserWeekPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "attr:ListGrid.hiliteHTMLAfterFormat":{
        ref:"attr:ListGrid.hiliteHTMLAfterFormat",
        flags:"IR",
        description:"If set to true, custom HTML applied as part of hiliting will be applied after\n ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue','formatting')} for each cell. If false, hilite\n HTML will be applied before formatting.\n <P>\n This applies to the following hilite properties:\n <ul>\n <li>${isc.DocUtils.linkForRef('attr:Hilite.replacementValue')}</li>\n <li>${isc.DocUtils.linkForRef('attr:Hilite.htmlBefore')}</li>\n <li>${isc.DocUtils.linkForRef('attr:Hilite.htmlAfter')}</li>\n <li>${isc.DocUtils.linkForRef('attr:Hilite.htmlValue')}</li>\n </ul>\n <P>\n May be overridden per field via ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteHTMLAfterFormat')}",
        name:"hiliteHTMLAfterFormat",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.expansionRelated":{
        ref:"attr:ListGrid.expansionRelated",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ListGrid')} for displaying data related to a record\n in its expanded section when\n ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')} is <code>related</code>.\n The ${isc.DocUtils.linkForRef('class:DataSource')} containing the related data is provided by\n ${isc.DocUtils.linkForRef('method:ListGrid.getRelatedDataSource','getRelatedDataSource()')} which, by default,\n returns the DataSource referred to in ${isc.DocUtils.linkForRef('attr:ListGridRecord.detailDS')}.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.expansionRelatedProperties</code> and\n <code>listGrid.expansionRelatedDefaults</code>.\n <P>\n Note, however, that this is a multi-instance component (potentially one per record),\n so it is created using ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')} not\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')}, and no default single instance is created by\n name on the grid.",
        name:"expansionRelated",
        seeAlso:[
        ],
        valueType:"MultiAutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:Calendar.eventRemoveClick":{
        ref:"method:Calendar.eventRemoveClick",
        flags:"",
        description:" Called whenever the close icon of an event is clicked within the day or week view. Return\n false to cancel the removal, or true to allow it.\n <P>\n Implement this method to do something like, for example, showing a confirmation dialog \n before an event is removed.\n\n",
        name:"eventRemoveClick",
        seeAlso:[
        ],
        params:[
            {
                description:"event that was clicked on",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"view where the event was clicked on: \"day\", \"week\" or \"month\"",
                optional:false,
                name:"viewName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"false to cancel the removal",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "attr:HiliteRule.removeButtonPrompt":{
        ref:"attr:HiliteRule.removeButtonPrompt",
        flags:"IR",
        description:"The hover prompt text for the ${isc.DocUtils.linkForRef('attr:HiliteRule.removeButton','remove button')}.",
        name:"removeButtonPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Remove\"",
        type:"attr",
        definingClass:"class:HiliteRule",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:CanvasItem.overflow":{
        ref:"attr:CanvasItem.overflow",
        flags:"IR",
        description:"CanvasItems support specifying overflow for the Canvas directly on the item.",
        name:"overflow",
        seeAlso:[
        ],
        valueType:"Overflow",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "attr:FormItem.showOverIcons":{
        ref:"attr:FormItem.showOverIcons",
        flags:"IRWA",
        description:"If we're showing icons, should we change their image source to the appropriate <i>over</i>\n  source when the user rolls over (or puts focus onto) them?  Can be overridden on a per\n  icon basis by the formItemIcon <code>showOver</code> property.",
        name:"showOverIcons",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:MultiSortPanel.ascendingTitle":{
        ref:"attr:MultiSortPanel.ascendingTitle",
        flags:"IR",
        description:"The title-text to appear in the \"direction\" field's SelectItem for an \"ascending\" sort",
        name:"ascendingTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Ascending\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ImgTab.showFocused":{
        ref:"attr:ImgTab.showFocused",
        flags:"IRW",
        description:"Should we visibly change state when the tab receives keyboard focus?",
        name:"showFocused",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgTab"
    },
    "method:DrawGroup.dragStop":{
        ref:"method:DrawGroup.dragStop",
        flags:"",
        description:" Notification fired when the user stops dragging this DrawGroup. Will only fire if ${isc.DocUtils.linkForRef('attr:DrawItem.canDrag','canDrag')}\n is true for this group.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this notification will be triggered\n by the user interacting with the specified ${isc.DocUtils.linkForRef('method:DrawGroup.getGroupRect','group rectangle')} for the group.\n If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is false, the notification will bubble up from interactions\n with individual items within the group.\n",
        name:"dragStop",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel drag interaction.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawGroup",
        groups:[
            "widgetEvents"
        ]
    },
    "classMethod:NumberUtil.format":{
        ref:"classMethod:NumberUtil.format",
        flags:"",
        description:" Return the parameter number formatted according to the parameter ${isc.DocUtils.linkForRef('type:FormatString')}.\n This method is used to implement the ${isc.DocUtils.linkForRef('attr:DataSourceField.format')} functionality, but it can\n also be used to format arbitrary numbers programmatically.\n",
        name:"format",
        seeAlso:[
        ],
        params:[
            {
                description:"The number to format",
                optional:false,
                name:"number",
                defaultValue:null,
                type:"Integer | Float | Double | int | float | double"
            },
            {
                description:"The format to apply",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"FormatString"
            }
        ],
        returns:{
            description:"formatted number string",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil"
    },
    "attr:Dialog.messageStack":{
        ref:"attr:Dialog.messageStack",
        flags:"IR",
        description:"AutoChild that combines ${isc.DocUtils.linkForRef('attr:Dialog.message')} and ${isc.DocUtils.linkForRef('attr:Dialog.icon')}.",
        name:"messageStack",
        seeAlso:[
        ],
        valueType:"Layout AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:GridRenderer.alternateColumnFrequency":{
        ref:"attr:GridRenderer.alternateColumnFrequency",
        flags:"IRW",
        description:"The number of consecutive columns to draw in the same style before alternating, when\n ${isc.DocUtils.linkForRef('attr:GridRenderer.alternateColumnStyles','alternateColumnStyles')} is true.",
        name:"alternateColumnFrequency",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "attr:ListGrid.sorterDefaults":{
        ref:"attr:ListGrid.sorterDefaults",
        flags:"IRA",
        description:"Defaults to apply to the corner sort button. To modify this object, use\n ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults','ListGrid.changeDefaults()')} rather than replacing with an\n entirely new object.",
        name:"sorterDefaults",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "method:DrawItem.draw":{
        ref:"method:DrawItem.draw",
        flags:"",
        description:" Draw this item into its current ${isc.DocUtils.linkForRef('class:DrawPane')}.\n\n",
        name:"draw",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:ListGrid.headerSpans":{
        ref:"attr:ListGrid.headerSpans",
        flags:"IRW",
        description:"Header spans are a second level of headers that appear above the normal ListGrid headers,\n spanning one or more listGrid fields in a manner similar to a column-spanning cell in an\n HTML table.\n <P>\n A header span can be created by simply naming the fields the header should span.  The\n example below creates a headerSpan that spans the first two fields of the ListGrid.\n <smartclient>\n <pre>\n    isc.ListGrid.create({\n        headerHeight:40,\n        fields : [\n            { name:\"field1\" },\n            { name:\"field2\" },\n            { name:\"field3\" }\n        ],\n        headerSpans : [\n            {\n                fields: [\"field1\", \"field2\"],\n                title: \"Field 1 and 2\"\n            }\n        ]\n    });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n      ListGrid grid = new ListGrid();\n      grid.setHeaderHeight(40);\n      grid.setFields(new ListGridField[] {\n          new ListGridField(\"field1\"),\n          new ListGridField(\"field2\"),\n          new ListGridField(\"field3\")\n      });\n      grid.setHeaderSpans(new HeaderSpan[] {\n          new HeaderSpan(\"Field 1 and 2\", new String[] {\"field1\", \"field2\"})\n      });\n <pre>\n </smartgwt>\n Header spans can be nested, allowing fields to be grouped by multiple levels of\n granularity. See ${isc.DocUtils.linkForRef('attr:HeaderSpan.spans')} for further information on nesting spans.\n <P>\n Header spans will automatically react to resizing of the headers they span, and will be\n hidden automatically when all of the spanned fields are hidden.\n <P>\n Header spans appear in the ${isc.DocUtils.linkForRef('attr:ListGrid.header','header')} area of the ListGrid, sharing space\n with the existing headers, so it's typical to set ${isc.DocUtils.linkForRef('attr:ListGrid.headerHeight')} to\n approximately double its normal height when using headerSpans, or if using nested header\n spans, the default header height multiplied by the number of levels of header spans to be\n shown.\n <P>\n See ${isc.DocUtils.linkForRef('object:HeaderSpan')} for many properties that allow the control of the appearance of\n headerSpans.\n <smartclient>\n Note that headerSpans are created via the ${isc.DocUtils.linkForRef('type:AutoChild')} pattern, hence\n you can change the SmartClient component being used, or any of its properties.\n </smartclient>\n <P>\n Neither headerSpans themselves nor the fields within them may be drag reordered, but other\n unspanned headers may be.\n <P>\n A span can only span adjacent fields - if a span is defined and the spanned fields don't\n sit next to each other in the specified fields array, the fields array will be automatically\n reorded to match the order specified in the span's ${isc.DocUtils.linkForRef('attr:HeaderSpan.fields')} array.\n <P>\n Note that headerSpans primarily provide a visual cue for grouping multiple headers\n together.  If you have an OLAP, data \"cube\" or multi-dimensional data model, the\n ${isc.DocUtils.linkForRef('class:CubeGrid')} component is the right choice.",
        name:"headerSpans",
        setter:[
            "setHeaderSpans"
        ],
        seeAlso:[
        ],
        valueType:"Array of HeaderSpan",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "attr:PickTreeItem.emptyDisplayValue":{
        ref:"attr:PickTreeItem.emptyDisplayValue",
        flags:"IRW",
        description:"Text to display when this form item has a null or undefined value.\n <P>\n If the formItem has a databound pickList, and its ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} or\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} (if the former isn't set) has an undefined emptyCellValue\n field, that field will automatically be set using the emptyDisplayValue property.\n <P>\n If the emptyDisplayValue is null (the default) then this item will use the standard title\n of the tree menu button that is shown when no values are selected.",
        name:"emptyDisplayValue",
        setter:[
            "setEmptyDisplayValue"
        ],
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PickTreeItem",
        groups:[
            "display_values"
        ]
    },
    "attr:ColorPicker.hueFieldTitle":{
        ref:"attr:ColorPicker.hueFieldTitle",
        flags:"IR",
        description:"The title for the 'Hue' field in the complex chooser.",
        name:"hueFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Hue\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:Validator.notADecimal":{
        ref:"classAttr:Validator.notADecimal",
        flags:"IRA",
        description:"Default error message to display when standard <code>isFloat</code> type validator\n  returns false.",
        name:"notADecimal",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be a valid decimal.\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Slider.setTrackImageType":{
        ref:"method:Slider.setTrackImageType",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.trackImageType')} property of the slider\n\n",
        name:"setTrackImageType",
        seeAlso:[
        ],
        params:[
            {
                description:"new trackImageType",
                optional:false,
                name:"newType",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "classMethod:Log.logError":{
        ref:"classMethod:Log.logError",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.logError')} is to call the method directly on\n the Log class.\n",
        name:"logError",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:JSONEncoder.showDebugOutput":{
        ref:"attr:JSONEncoder.showDebugOutput",
        flags:"IR",
        description:"If objects that cannot be serialized to JSON are encountered during serialization, show a\n placeholder rather than just omitting them. \n <P>\n The resulting String will not be valid JSON and so cannot be decoded/eval()'d",
        name:"showDebugOutput",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:PickList.animatePickList":{
        ref:"attr:PickList.animatePickList",
        flags:"IRWA",
        description:"If true, when the pickList is shown, it will be shown via an animated reveal effect",
        name:"animatePickList",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "attr:Menu.menuButtonWidth":{
        ref:"attr:Menu.menuButtonWidth",
        flags:"IR",
        description:"For a menu that has a ${isc.DocUtils.linkForRef('class:MenuButton')} generated for it automatically (for example when\n included in a ${isc.DocUtils.linkForRef('class:MenuBar')}, the width that the MenuButton should have.  If unset, the\n MenuButton will be as wide as <code>menu.width</code>.",
        name:"menuButtonWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "classMethod:Canvas.printComponents":{
        ref:"classMethod:Canvas.printComponents",
        flags:"",
        description:" Generate printable HTML for the designated components and trigger the native print\n dialog, without never showing the printable HTML to the user.\n\n",
        name:"printComponents",
        seeAlso:[
        ],
        params:[
            {
                description:"components to get the print HTML for. May also include        raw HTML strings which will be folded into the generated print output",
                optional:false,
                name:"components",
                defaultValue:null,
                type:"Array of Canvas"
            },
            {
                description:"object for customizing the print HTML output",
                optional:true,
                name:"printProperties",
                defaultValue:null,
                type:"PrintProperties"
            }
        ],
        type:"classMethod",
        definingClass:"class:Canvas",
        groups:[
            "printing"
        ]
    },
    "method:EBay.setAuthToken":{
        ref:"method:EBay.setAuthToken",
        flags:"",
        description:"\n eBay web services require an authentication token to be passed with every request.  You\n can obtain a token from <a href='http://developer.ebay.com/' target='_blank'>http://developer.ebay.com/</a>.  Before using any\n eBay web services, call this method to set the token provided to you by eBay.\n \n",
        name:"setAuthToken",
        seeAlso:[
        ],
        params:[
            {
                description:"Your authToken, provided to you by eBay.",
                optional:false,
                name:"authToken",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:EBay"
    },
    "attr:Toolbar.buttonConstructor":{
        ref:"attr:Toolbar.buttonConstructor",
        flags:"IRWA",
        description:"Default constructor for toolbar items.",
        name:"buttonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"Button",
        type:"attr",
        definingClass:"class:Toolbar",
        groups:[
            "appearance"
        ]
    },
    "attr:CubeGrid.cellIdProperty":{
        ref:"attr:CubeGrid.cellIdProperty",
        flags:"IR",
        description:"Name of the property in a cell record that holds it's unique ID.  Note cell record IDs are\n optional.",
        name:"cellIdProperty",
        seeAlso:[
        ],
        valueType:"id",
        defaultValue:"\"ID\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:TimeItem.minuteMaxValue":{
        ref:"attr:TimeItem.minuteMaxValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteValues','minuteValues')} is unset, this attribute specifies the maximum\n value present in the minute picker.\n <P>Used for specifying a limited set of valid Minute values, or when using the \n TimeItem to record duration, rather than time per-se.  The default 59.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMinValue','minuteMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteIncrement','minuteIncrement')}.",
        name:"minuteMaxValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:ListGrid.updateRecordComponent":{
        ref:"method:ListGrid.updateRecordComponent",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents')} is true, this method is called to update\n components created by ${isc.DocUtils.linkForRef('method:ListGrid.createRecordComponent')} when they are to be\n applied to a different record in the grid. See the\n ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','record components overview')}\n for more information on recordComponents.\n <P>\n The colNum parameter is applicable only when\n ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is true. Note that if\n ${isc.DocUtils.linkForRef('attr:ListGrid.poolComponentsPerColumn')} is set to false, the component may have been generated\n by a ${isc.DocUtils.linkForRef('method:ListGrid.createRecordComponent')} call applied to a different field.\n <P>\n Return null to avoid re-adding the component to the row or cell.\n\n",
        name:"updateRecordComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"record to which the passed component applies",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"cell to which the passed component applies",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the component to update",
                optional:false,
                name:"component",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"was the passed component previously embedded in a     different record?",
                optional:false,
                name:"recordChanged",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"return the component to embed in the passed record",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Array.containsProperty":{
        ref:"method:Array.containsProperty",
        flags:"",
        description:"  Determine whether this array contains any members where the property passed in matches the value\n  passed in.\n\n",
        name:"containsProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"property to look for\t\t\t\t\t\t\t(object)\tkey:value pairs to look for",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            },
            {
                description:"value to compare against (if property is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"true if this array contains an object with the appropriate property value",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "find"
        ]
    },
    "attr:Window.hiliteBodyColor":{
        ref:"attr:Window.hiliteBodyColor",
        flags:"IRW",
        description:"Highlight color for the Window body (shown when the body is flashed).",
        name:"hiliteBodyColor",
        seeAlso:[
            {
                ref:"method:Window.flash",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"#EEEEEE\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "attr:PortalLayout.dropTypes":{
        ref:"attr:PortalLayout.dropTypes",
        flags:"IR",
        description:"<code>dropTypes</code> is set to <code>[\"PortalColumn\"]</code>\n in order to allow the dragging of columns within the <code>PortalLayout</code>. \n To control <code>dropTypes</code> when ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} or other components are dragged\n into the <code>PortalLayout</code>, use ${isc.DocUtils.linkForRef('attr:PortalLayout.portletDropTypes','portletDropTypes')} instead.",
        name:"dropTypes",
        seeAlso:[
            {
                ref:"attr:PortalLayout.portletDropTypes",
                description:null
            }
        ],
        valueType:"Array of String",
        defaultValue:"[\"PortalColumn\"]",
        type:"attr",
        definingClass:"class:PortalLayout",
        groups:[
            "dragdrop"
        ]
    },
    "type:AutoSelectionModel":{
        ref:"type:AutoSelectionModel",
        values:[
            {
                description:"Rows and Columns will be selected on header selection",
                value:"\"both\""
            },
            {
                description:"Rows will be selected on row-header selection",
                value:"\"rows\""
            },
            {
                description:"Columns will be selected on column-header selection",
                value:"\"cols\""
            },
            {
                description:"Selecting row or column headers will not select cells in the body.",
                value:"\"none\""
            }
        ],
        description:"Selection model for ${isc.DocUtils.linkForRef('class:CubeGrid')} indicating which cells in the body should\n be selected when row or column headers are selected.",
        name:"AutoSelectionModel",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:FormItem.cellClassName":{
        ref:"attr:FormItem.cellClassName",
        deprecated:"As of SmartClient version 5.5, deprecated in favor of ${isc.DocUtils.linkForRef('attr:FormItem.cellStyle')}",
        flags:"IRW",
        description:"CSS class for a form item's cell in the form layout",
        name:"cellClassName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"formCell\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.dataPath":{
        ref:"attr:ListGridField.dataPath",
        flags:"IRA",
        description:"dataPath for this field. This property allows the grid to display details of nested data\n structures in a flat list of columns.",
        name:"dataPath",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "data"
        ]
    },
    "attr:MenuButton.autoDestroyMenu":{
        ref:"attr:MenuButton.autoDestroyMenu",
        flags:"IRW",
        description:"If this menuButton is ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroyed')}, should it also destroy\n its ${isc.DocUtils.linkForRef('attr:MenuButton.menu')}?",
        name:"autoDestroyMenu",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "attr:DrawItem.keepInParentRect":{
        ref:"attr:DrawItem.keepInParentRect",
        flags:"IRWA",
        description:"Constrains drag-resizing and drag-repositioning of this draw item to either the current\n visible area of the ${isc.DocUtils.linkForRef('class:DrawPane','draw pane')} or an arbitrary bounding box (if set to\n an array of the form <code>[left, top, left + width, top + height]</code>).  When using\n a bounding box-type argument the left/top values can be negative, or the width/height\n values can be greater than the dimensions of the viewable area, to allow positioning\n or resizing the draw item beyond the confines of the draw pane.\n <P>\n Note:  keepInParentRect affects only user drag interactions, not programmatic moves or\n resizes.",
        name:"keepInParentRect",
        seeAlso:[
        ],
        valueType:"Boolean | Array of Float",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:FormItem.hoverAlign":{
        ref:"attr:FormItem.hoverAlign",
        flags:"IRW",
        description:"Text alignment  for text displayed in this item's hover canvas, if shown.",
        name:"hoverAlign",
        seeAlso:[
            {
                ref:"attr:DynamicForm.itemHoverAlign",
                description:null
            }
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "method:DataBoundComponent.deselectRecord":{
        ref:"method:DataBoundComponent.deselectRecord",
        flags:"",
        description:"\n Deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecord(record, false)</code>\n\n",
        name:"deselectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to deselect",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "class:Img":{
        methods:[
            "method:Img.setImageType",
            "method:Img.setSrc",
            "method:Img.resetSrc",
            "method:Img.getHoverHTML"
        ],
        ref:"class:Img",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:Img.name",
            "attr:Img.src",
            "attr:Img.altText",
            "attr:Img.prompt",
            "attr:Img.activeAreaHTML",
            "attr:Img.imageType",
            "attr:Img.imageHeight",
            "attr:Img.imageWidth",
            "attr:Img.size",
            "attr:Img.showTitle",
            "attr:Img.usePNGFix"
        ],
        description:"The Img widget class implements a simple widget that displays a single image.",
        name:"Img",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('img')}"
        ]
    },
    "attr:RelativeDateItem.showPickerTimeItem":{
        ref:"attr:RelativeDateItem.showPickerTimeItem",
        flags:"IRWA",
        description:"If this item is editing a field of type <code>\"datetime\"</code>, should the\n ${isc.DocUtils.linkForRef('class:DateChooser')} display the ${isc.DocUtils.linkForRef('attr:DateChooser.showTimeItem','time field')}, \n allowing the user to select a time?\n <P>\n One case where developers will wish to suppress this time-field from being displayed\n is if a custom ${isc.DocUtils.linkForRef('attr:RelativeDateItem.dateFormatter')} has been specified which does not display the\n time portion of the selected date. In this case any value selected from the \n DateChooser's time field will be discarded when the picker is dismissed, making\n it a confusing UI for the end user.\n <P>\n Has no effect if the field type is <code>\"date\"</code> - in this case the\n picker will never show the time field.",
        name:"showPickerTimeItem",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:ListGrid.freezeOnRightText":{
        ref:"attr:ListGrid.freezeOnRightText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','this.canFreezeFields')} is true, this string will be shown as the\n title for the menu item to freeze fields on the right of the scrollable body.",
        name:"freezeOnRightText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Freeze on right\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FacetChart.doughnutHoleProperties":{
        ref:"attr:FacetChart.doughnutHoleProperties",
        flags:"IRW",
        description:"Properties for doughnut hole",
        name:"doughnutHoleProperties",
        seeAlso:[
        ],
        valueType:"DrawOval Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ColumnTree.loadDataOnDemand":{
        ref:"attr:ColumnTree.loadDataOnDemand",
        flags:"IR",
        description:"For databound columnTree instances, should the entire tree of data be loaded on initial \n fetch, or should each column be loaded as needed. If unset the default \n ResultTree.loadDataOnDemand setting will be used.",
        name:"loadDataOnDemand",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "method:FacetChart.setUseMultiplePointShapes":{
        ref:"method:FacetChart.setUseMultiplePointShapes",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FacetChart.useMultiplePointShapes')}.\n",
        name:"setUseMultiplePointShapes",
        seeAlso:[
        ],
        params:[
            {
                description:"Whether the chart should now use multiple shapes to show data points.",
                optional:false,
                name:"useMultiplePointShapes",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:DynamicForm.getValidatedValues":{
        ref:"method:DynamicForm.getValidatedValues",
        flags:"",
        description:" Call ${isc.DocUtils.linkForRef('method:DynamicForm.validate')} to check for validation errors. If no errors are found,\n return the current values for this form, otherwise return null.\n",
        name:"getValidatedValues",
        seeAlso:[
        ],
        returns:{
            description:"current values or null if validation failed.",
            type:"object|null"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "attr:FormItem.validateOnChange":{
        ref:"attr:FormItem.validateOnChange",
        flags:"IRW",
        description:"If true, form items will be validated when each item's \"change\" handler is fired\n as well as when the entire form is submitted or validated.\n <p>\n Note that this property can also be set at the form level or on each validator;\n If true at the form or field level, validators not explicitly set with\n <code>validateOnChange:false</code> will be fired on change - displaying errors and\n rejecting the change on validation failure.",
        name:"validateOnChange",
        seeAlso:[
            {
                ref:"attr:DynamicForm.validateOnChange",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "changeHandling"
        ]
    },
    "classAttr:LoginDialog.LOGIN_ERROR_MESSAGE":{
        ref:"classAttr:LoginDialog.LOGIN_ERROR_MESSAGE",
        flags:"IRW",
        description:"Default error message displayed on failed login in the dialog shown by\n ${isc.DocUtils.linkForRef('classMethod:isc.showLoginDialog')}.",
        name:"LOGIN_ERROR_MESSAGE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Invalid username or password\"",
        type:"classAttr",
        definingClass:"class:LoginDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ResultTree.defaultIsFolder":{
        ref:"attr:ResultTree.defaultIsFolder",
        flags:"IR",
        description:"Controls whether nodes are assumed to be folders or leaves by default.\n <P>\n Nodes that have children or have the ${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty','isFolderProperty')} set\n to true will always be considered folders.  Other nodes will be considered folders or\n leaves by default according to this setting.\n <P>\n If <code>defaultIsFolder</code> is unset, the ResultTree will automatically set it to\n match the value of ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand')}.  This means that, when using\n folder-by-folder load on demand (<code>loadDataOnDemand:true</code>), by default a newly\n loaded node will be considered to be a folder that has not loaded its children yet.  \n <P>\n When not using folder-by-folder load on demand, by default a newly loaded node is\n considered a leaf.  If you set <code>defaultIsFolder:true</code> explicitly, by default\n a newly loaded node is considered to be a folder with no children.\n <P> \n See ${isc.DocUtils.linkForRef('method:Tree.isFolder')} for details on how to explicitly mark nodes as folders or leaves.",
        name:"defaultIsFolder",
        seeAlso:[
            {
                ref:"attr:TreeGrid.loadDataOnDemand",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "classAttr:GroupingMessages.byWeekTitle":{
        ref:"classAttr:GroupingMessages.byWeekTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a date field by week.",
        name:"byWeekTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Week\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:GridRenderer.showAllColumns":{
        ref:"attr:GridRenderer.showAllColumns",
        flags:"IRA",
        description:"Whether all columns should be drawn all at once, or only columns visible in the viewport.\n <P>\n Drawing all columns causes longer initial rendering time, but allows smoother horizontal\n scrolling.  With a very large number of columns, showAllColumns will become too slow.",
        name:"showAllColumns",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "performance"
        ]
    },
    "group:treeDataBinding":{
        ref:"group:treeDataBinding",
        title:"Tree DataBinding",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        refs:[
            "attr:DSRequest.keepParentsOnFilter",
            "attr:ResultTree.data",
            "attr:ResultTree.fetchMode",
            "attr:ResultTree.resultSize",
            "attr:ResultTree.keepParentsOnFilter",
            "attr:TreeGrid.keepParentsOnFilter",
            "attr:TreeGrid.dataFetchMode"
        ],
        description:"The SmartClient ${isc.DocUtils.linkForRef('class:TreeGrid')} component is a visual representation of a tree and requires\n a ${isc.DocUtils.linkForRef('class:Tree')} or ${isc.DocUtils.linkForRef('class:ResultTree')} datatype passed via the ${isc.DocUtils.linkForRef('attr:TreeGrid.data')} attribute to\n initialize the tree view.  The ${isc.DocUtils.linkForRef('class:Tree')} datatype is used when you want to provide all of\n the tree nodes in one shot at initialization time.  The ${isc.DocUtils.linkForRef('class:ResultTree')} datatype is used\n when you want portions of the tree to be loaded on demand from the server.\n <p>\n <b>Providing all data to the Tree at creation</b>\n <p>\n The simplest mechanism by which to initialize a Tree is to simply provide all the data\n up-front when the Tree itself is created.  Depending on the format of your tree data, this\n can be done by setting ${isc.DocUtils.linkForRef('attr:Tree.root')} or ${isc.DocUtils.linkForRef('attr:Tree.data')}.  This functionality is provided\n by the ${isc.DocUtils.linkForRef('class:Tree')} class.\n <p>\n For examples of this type of databinding, see the following SDK examples:\n <ul>\n <li>${isc.DocUtils.linkForExampleId('childrenArrays', 'TreeGrid Initialization Example')}</li>\n <smartclient>\n <li><a href='/examples/server_integration/#jstlTree' target='_blank'>TreeGrid Initialization with JSTL</a></li>\n </smartclient>\n </ul>\n <p>\n <b>Loading Tree nodes on demand</b>\n <p>\n In this mode, tree nodes are loaded on-demand the first time a user expands a folder.  This\n approach is necessary for large trees.  This functionality is provided by the\n ${isc.DocUtils.linkForRef('class:ResultTree')} class, which uses a ${isc.DocUtils.linkForRef('class:DataSource')} to load data from the server.  Each\n DataSource Record becomes a ${isc.DocUtils.linkForRef('object:TreeNode')}.\n <p>\n When the user expands a folder whose children have not yet been loaded\n from the server (or you programmatically call openFolder() on such a node), the client\n automatically sends a ${isc.DocUtils.linkForRef('class:DSRequest')} to the server to ask for all immediate children of\n that node.  \n <P>\n If you have a dataset that is ${isc.DocUtils.linkForRef('type:TreeModelType','\"parent-linked\"')}, that is, every node has\n a unique ID (the ${isc.DocUtils.linkForRef('attr:Tree.idField')}) and also has a property with the unique ID of it's\n parent node (the ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}) the tree can load child nodes by simply sending\n a DSRequest with appropriate ${isc.DocUtils.linkForRef('type:Criteria')}.  Given a parent node with ID \"225\" in a tree\n where the ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')} is called \"parentId\", the criteria would be:\n <pre>\n    { parentId : 225 }\n </pre>\n The client is asking the server: \"give me all nodes whose parentId is 225\", which are the\n children of node 225.  \n <P>\n If you have a DataSource that supports simple ${isc.DocUtils.linkForRef('type:Criteria')} like the above, and your\n records have nodes with ids and parentIds, this strategy can be used by just declaring the\n tree relationship in your DataSource: the tree will automatically use your\n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey')} field as the ${isc.DocUtils.linkForRef('attr:Tree.idField')}.  To declare the\n ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}, declare a ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')} field with the\n name of the primaryKey field.\n <P>\n If you have a tree where there is no convenient unique ID, for example, you have mixed types\n of nodes (for example, departments and employees), use one of the following approaches:\n <ol>\n <li> generate a synthetic node ID and return it with every tree node.\n <P>\n Typically two or more properties can be combined into a String that serves as a unique ID.\n For example, if you are loading a mixed tree of \"Departments\" and \"Users\", each of which\n have unique numeric IDs, you could generate synthetic node IDs like \"department:353\" and\n \"user:311\".  Your server-side code will then receive these synthetic node IDs when the tree\n loads children, and you can parse the IDs, look up the appropriate object and return its\n child nodes.\n <P>\n In the case of filesystems or XML documents, you can use the full path to the file or XML\n element as the unique ID.\n <P>\n <li> have all properties of the parentNode ${isc.DocUtils.linkForRef('attr:DataSource.sendParentNode','sent to the server')}\n <P>\n If having all the properties of the parentNode would allow you to look up children, this\n approach may be more convenient than having to generate synthetic node IDs and parse them\n when looking up children.\n <P>\n For example, with a mixed-type tree, your server-side code may be able to quickly identify\n the type of the parent node be looking for specific properties, and then call methods to\n look up children for that type of node.\n <P>\n In this case there is no need to declare an idField or parentIdField.\n </ol>\n <P>\n ${isc.DocUtils.linkForRef('class:ResultTree')}s are created for you by the ${isc.DocUtils.linkForRef('class:TreeGrid')} when you set\n ${isc.DocUtils.linkForRef('attr:TreeGrid.dataSource')}, but you can pass an initial dataset to a databound TreeGrid by\n setting ${isc.DocUtils.linkForRef('attr:TreeGrid.initialData')}.\n <P>\n If you do not provide ${isc.DocUtils.linkForRef('attr:TreeGrid.initialData')}, the first DSRequest you receive will be a\n request for the nodes under root.  The id of the root node of the tree is the value of the\n <code>rootValue</code> attribute on the ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')} of the Tree DataSource. \n <p>\n For examples of this type of databinding, see the following SDK examples:\n <ul>\n <li>${isc.DocUtils.linkForExampleId('initialData', 'TreeGrid DataBinding Example')}</li>\n <smartclient>\n <li><a href='/examples/server_integration/#xml2JSLOD' target='_blank'>TreeGrid XML DataBinding</a>\n </smartclient>\n </ul>\n <P>\n <b>Folders and load on demand</b>\n <P>\n When using load on demand, the Tree cannot simply check whether a node has children to\n determine whether it's a folder, and will assume all loaded nodes are folders.  To avoid\n this, you can add a boolean field to your DataSource called \"isFolder\" that indicates\n whether a node is a folder or not.  If you already have a boolean field that indicates\n whether a node is a folder, you can instead set ${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty')} to the name of\n that field via ${isc.DocUtils.linkForRef('attr:TreeGrid.dataProperties')}.\n <P>\n <b>Multi-Level load on demand</b>\n <P>\n The ResultTree's DSRequests ask for the immediate children of a node only (by specifying\n <code>parentId</code> in the criteria). Any nodes returned whose <code>parentId</code> field\n value is unset or matches this criterion will be added to the tree as immediate children of the\n node. However you are also free to return multiple levels of children.  This can be done by\n simply returning a flat list of descendents with valid id's and parentId's, exactly as though \n you were initializing a multi-level tree via ${isc.DocUtils.linkForRef('attr:Tree.data')}.  \n <P>\n Note that when receiving multiple levels of children, the ResultTree's assumption is that\n if any children are loaded for a parent, then that parent is considered fully loaded.\n <P>\n When loading children for a given parent node, the ResultTree calls\n ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} on its DataSource.  For custom code that may need to reference\n the parentNode or tree in some way, the parent node whose children are being loaded is\n available on the dsRequest instance in the DataSource flow as dsRequest.parentNode, where it\n can be inspected during ${isc.DocUtils.linkForRef('method:DataSource.transformRequest')}.\n <P>\n For an example of this feature, see the following SDK example:\n <ul>\n <li>${isc.DocUtils.linkForExampleId('multiLevelLOD', 'Multi-Level Load on Demand Example')}</li>\n </ul>\n <P>\n <b>Paging large sets of children</b>\n <p>\n If some nodes in your tree have a very large number of immediate children, you can enable\n ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode','fetchMode:\"paged\"')} to load children in batches.  This means that\n whenever the children of a folder are loaded, the <code>resultTree</code> will set\n ${isc.DocUtils.linkForRef('attr:DSRequest.startRow')} and ${isc.DocUtils.linkForRef('attr:DSRequest.endRow','endRow')} when requesting children from\n the DataSource.  This includes the initial fetch of top-level nodes, which are children of\n the ${isc.DocUtils.linkForRef('attr:Tree.showRoot','implicit root node')}.\n <p>\n As with all paged DSRequests, the server is free to ignore startRow/endRow and\n simply return all children of the node.  This allows the server to make on-the-fly\n folder-by-folder choices as to whether to use paging or just return all children.  However,\n whenever the server returns only some children, the server must provide an accurate value for\n ${isc.DocUtils.linkForRef('attr:DSResponse.totalRows')}.\n <p>\n If the server does return a partial list of children, the <code>resultTree</code> will\n automatically request further children as they are accessed; typically this happens because\n the user is scrolling around in a ${isc.DocUtils.linkForRef('class:TreeGrid')} which is viewing the\n <code>resultTree</code>.\n <p>\n In this mode, the server may return multiple levels of the tree as described above\n (\"Multi-Level load on demand\"), however, by default the server is not allowed to return\n folders that are open, as this creates a potential performance issue: consider the case of a\n user scrolling rapidly into an unloaded area of the tree, skipping past many nodes that have\n not been loaded.  If the skipped nodes might have been open parents, then the only way to\n know what nodes should be visible at the new scroll position is to load all skipped nodes\n and discover how many visible children they had.\n <p>\n If this performance consequence is acceptable, the restriction against returning open\n folders from the server may be lifted on a tree-wide basis by setting the\n ${isc.DocUtils.linkForRef('attr:ResultTree.canReturnOpenFolders','canReturnOpenFolders')} property to <code>true</code>\n and/or on a folder-by-folder basis by setting the property named by the\n ${isc.DocUtils.linkForRef('attr:ResultTree.canReturnOpenSubfoldersProperty','canReturnOpenSubfoldersProperty')} to\n <code>true</code>.  In this case, it is recommended to also set\n ${isc.DocUtils.linkForRef('attr:ResultTree.progressiveLoading','progressiveLoading')} to <code>true</code> to prevent\n users from causing a large number of nodes to be loaded by scrolling too far ahead in the\n tree.\n <p>\n In addition, if any folder is returned already open, it must include children via the\n ${isc.DocUtils.linkForRef('attr:Tree.childrenProperty','childrenProperty')} or there will be an immediate, new fetch to\n retrieve the children.  When returning children, a partial list of children may be\n returned, but if so, the ${isc.DocUtils.linkForRef('attr:ResultTree.childCountProperty','childCountProperty')} must be\n set to the total number of children.\n <p>\n Paged ResultTrees may also be filtered like other trees (see\n ${isc.DocUtils.linkForRef('method:ResultTree.setCriteria')}).  However, if ${isc.DocUtils.linkForRef('attr:ResultTree.keepParentsOnFilter')} is\n enabled then server filtering is required.  To illustrate with an example, consider a case\n where the ResultTree has 10,000 folders at root level and where criteria applied to their\n children would eliminate all but 20, which happen to be at the end of the 10,000.  Purely\n client-side logic would have to perform 10,000 fetch operations to check whether each\n root-level node had children before arriving at the final set of 20.\n <p>\n For examples of this feature, see the following SDK example:\n <ul>\n <li>${isc.DocUtils.linkForExampleId('pagingForChildren', 'Paging for Children Example')}</li>\n </ul>\n <p>\n <b>NOTE:</b> trees with thousands of visible nodes are very difficult for end users to\n navigate.  A <b>majority of the time</b> the best interface for showing a very large tree\n is to show a TreeGrid that displays just folders, adjacent to a ListGrid that shows items\n within those folders.\n <p>\n For example, the data in your email account can be thought of as an enormous tree of\n folders (Inbox, Sent, Drafts, Trash etc) with thousands of messages in each folder.\n However, none of the common email clients display email this way; all of them choose to\n show folders and messages separately, as this is clearly more usable.\n <p>\n Before starting on implementing paging within sets of children, carefully consider whether\n an interface like the above, or some entirely different interface, is actually a superior\n option.  It is exceedingly rare that paging within sets of children is the best choice.",
        name:"treeDataBinding",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DetailViewerRecord.linkText":{
        ref:"attr:DetailViewerRecord.linkText",
        flags:"IRW",
        description:"The HTML to display in this record for fields with type set to \"link\". This overrides\n ${isc.DocUtils.linkForRef('attr:DetailViewerField.linkText')}.",
        name:"linkText",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.type",
                description:null
            },
            {
                ref:"attr:DetailViewerField.linkText",
                description:null
            },
            {
                ref:"attr:DetailViewer.linkTextProperty",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerRecord"
    },
    "attr:FormulaBuilder.valueSuffix":{
        ref:"attr:FormulaBuilder.valueSuffix",
        flags:"IR",
        description:"The suffix to apply to the variable that is inserted in response to a record click in the\n grid that shows the list of available fields.",
        name:"valueSuffix",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "attr:Facet.labelHeight":{
        ref:"attr:Facet.labelHeight",
        flags:"IR",
        description:"Integer number of pixels.  For column facets other than the innermost, specifies\n the height of the header.  For row facets, specifies the height of the row\n containing that row facet's label (which is the same row containing the \n innermost column facet if one or more column facets are present).\n <P>\n If this property conflicts with a ${isc.DocUtils.linkForRef('attr:Facet.height')}, the greater of the two\n properties will be used for determining the height of the affected row.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"labelHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:DateRangeItem.toField":{
        ref:"attr:DateRangeItem.toField",
        flags:"IR",
        description:"The field for the \"to\" date - a ${isc.DocUtils.linkForRef('class:RelativeDateItem')} or ${isc.DocUtils.linkForRef('class:DateItem')} according to\n ${isc.DocUtils.linkForRef('attr:DateRangeItem.allowRelativeDates')}.",
        name:"toField",
        seeAlso:[
        ],
        valueType:"AutoChild FormItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "method:DrawCurve.setControlPoint2":{
        ref:"method:DrawCurve.setControlPoint2",
        flags:"",
        description:" Update the second cubic bezier control point\n\n",
        name:"setControlPoint2",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for control point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for control point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "method:ValuesManager.addMember":{
        ref:"method:ValuesManager.addMember",
        flags:"",
        description:"\n Add a new member to this valuesManager.  Any ${isc.DocUtils.linkForRef('class:Canvas')} can be a member of a\n valuesManager, even components like ${isc.DocUtils.linkForRef('class:Layout')} or ${isc.DocUtils.linkForRef('class:TabSet')} that do\n not actually have any values to manage.  When \"valueless\" components like these bind to\n a ValuesManager, it is in order to provide their own child components with a shared\n valuesManager so that complex data can be displayed and edited - see \n ${isc.DocUtils.linkForRef('type:DataPath')} for more details.\n <p>\n For components like ${isc.DocUtils.linkForRef('class:DynamicForm')} and ${isc.DocUtils.linkForRef('class:ListGrid')}, which do have \n a set of values to manage, the component's values will subsequently be available through\n this valuesManager.\n <p>\n Note on pre-existent values when the member component is a ${isc.DocUtils.linkForRef('class:DynamicForm')}:<br>\n If the valuesManager has a value specified for some field, for which the member form has\n an item, this value will be applied to the member form.  This is true whether the item\n has a value or not.<br>\n However if the member form has a value for some field, and the ValuesManager does not\n have a specified value for the same field, we allow the valuesManager to pick up the \n value from the member form.    \n\n",
        name:"addMember",
        seeAlso:[
            {
                ref:"method:ValuesManager.addMembers",
                description:null
            }
        ],
        params:[
            {
                description:"component (or ID of component) to add to                                           this valuesManager as a member.",
                optional:false,
                name:"member",
                defaultValue:null,
                type:"DynamicForm | String"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "members"
        ]
    },
    "method:DrawCurve.setControlPoint1":{
        ref:"method:DrawCurve.setControlPoint1",
        flags:"",
        description:" Update the first cubic bezier control point\n\n",
        name:"setControlPoint1",
        seeAlso:[
        ],
        params:[
            {
                description:"left coordinate for control point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"top coordinate for control point, in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawCurve"
    },
    "attr:ListGridField.headerTitle":{
        ref:"attr:ListGridField.headerTitle",
        flags:"IR",
        description:"Optional title for the header button for this field. If specified this will be\n displayed in the header button instead of ${isc.DocUtils.linkForRef('attr:ListGridField.title')} or\n ${isc.DocUtils.linkForRef('attr:ListGridField.name')}. Set to an empty string to suppress the title in the\n header button entirely.",
        name:"headerTitle",
        seeAlso:[
            {
                ref:"attr:ListGridField.title",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:FormItem.readOnlyDisplay":{
        ref:"attr:FormItem.readOnlyDisplay",
        flags:"IRW",
        description:"If this item is ${isc.DocUtils.linkForRef('method:FormItem.getCanEdit','read-only')}, how should this item be displayed\n to the user? If set, overrides the form-level ${isc.DocUtils.linkForRef('attr:DynamicForm.readOnlyDisplay')} default.",
        name:"readOnlyDisplay",
        setter:[
            "setReadOnlyDisplay"
        ],
        seeAlso:[
            {
                ref:"attr:DynamicForm.readOnlyDisplay",
                description:null
            }
        ],
        valueType:"ReadOnlyDisplayAppearance",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "method:FormItem.getSelectedRecord":{
        ref:"method:FormItem.getSelectedRecord",
        flags:"",
        description:" Get the record returned from the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} when ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')}\n is true, and the missing value is fetched.\n <P>\n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues')} kicks off the fetch when the form item is initialized\n with a non null value or when setValue() is called on the item. Note that this method\n will return null before the fetch completes, or if no record is found in the\n optionDataSource matching the underlying value.\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"selected record",
            type:"ListGridRecord"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "attr:ListGrid.emptyMessage":{
        ref:"attr:ListGrid.emptyMessage",
        flags:"IRW",
        description:"The string to display in the body of a listGrid with an empty data array, if\n showEmptyMessage is true.",
        name:"emptyMessage",
        seeAlso:[
            {
                ref:"attr:GridRenderer.showEmptyMessage",
                description:null
            },
            {
                ref:"attr:GridRenderer.emptyMessageStyle",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"No items to show.\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('emptyGrid')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "emptyMessage",
            "i18nMessages"
        ]
    },
    "attr:TabSet.useIOSTabs":{
        ref:"attr:TabSet.useIOSTabs",
        flags:"IR",
        description:"Setting this to true turns on a different appearance for tabs, similar to iOS tabs from \n the \"Music\" app, where the tab.icon is enlarged and shown as a black and white mask.  \n This mode does not support a clickable icon - clicking the enlarged icon just switches \n tabs.\n <P>\n This attribute only has an effect for tabs that are not ${isc.DocUtils.linkForRef('attr:Tab.canClose','closable')},\n and only for Mobile WebKit.",
        name:"useIOSTabs",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "classAttr:Canvas.neverUseFilters":{
        ref:"classAttr:Canvas.neverUseFilters",
        flags:"IR",
        description:"Disables automatic use of filters in IE by default.  Filters will only be used if\n ${isc.DocUtils.linkForRef('attr:Canvas.useOpacityFilter')} is explicitly set to true on a component.\n <P>\n Does not remove filters on already drawn components, or which are applied via CSS.\n <P>\n See ${isc.DocUtils.linkForRef('group:IEFilters')} for background.",
        name:"neverUseFilters",
        setter:[
            "setNeverUseFilters"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"classAttr",
        definingClass:"class:Canvas",
        groups:[
            "IEFilters"
        ]
    },
    "attr:MultiSortDialog.invalidListPrompt":{
        ref:"attr:MultiSortDialog.invalidListPrompt",
        flags:"IR",
        description:"This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed.\n <P>\n Default value returns <P>\n <code>\n <i>Columns may only be used once: <code>[some field's title]</code> is used multiple times</i>\n </code>\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"invalidListPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Columns may only be used once: '${title}' is used multiple times.\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.rejectInvalidValueOnChange":{
        ref:"attr:DynamicForm.rejectInvalidValueOnChange",
        flags:"IRWA",
        description:"If validateOnChange is true, and validation fails for an item on change, with no suggested\n value, should we revert to the previous value, or continue to display the bad value entered\n by the user. May be set at the item or form level.",
        name:"rejectInvalidValueOnChange",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:ListGrid.canDragSelect":{
        ref:"attr:ListGrid.canDragSelect",
        flags:"IRW",
        description:"If this property is true, users can drag the mouse to select several rows or cells.\n  This is mutually exclusive with rearranging rows or cells by dragging.",
        name:"canDragSelect",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragListSelect')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Layout.layoutMargin":{
        ref:"attr:Layout.layoutMargin",
        flags:"IRW",
        description:"Space outside of all members. This attribute, along with ${isc.DocUtils.linkForRef('attr:Layout.layoutLeftMargin')} \n and related properties does not have a true setter method.<br>\n It may be assigned directly at runtime. After setting the property, \n ${isc.DocUtils.linkForRef('method:Layout.setLayoutMargin')} may be called with no arguments to reflow the layout.",
        name:"layoutMargin",
        setter:[
            "setLayoutMargin"
        ],
        seeAlso:[
            {
                ref:"attr:Layout.layoutLeftMargin",
                description:null
            },
            {
                ref:"attr:Layout.layoutRightMargin",
                description:null
            },
            {
                ref:"attr:Layout.layoutBottomMargin",
                description:null
            },
            {
                ref:"attr:Layout.layoutTopMargin",
                description:null
            },
            {
                ref:"attr:Layout.paddingAsLayoutMargin",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('userSizing')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "layoutMargin"
        ]
    },
    "classMethod:RPCManager.getCurrentTransactionId":{
        ref:"classMethod:RPCManager.getCurrentTransactionId",
        flags:"",
        description:" Returns the id of the current transaction (a queue of requests).\n <P>\n This method must be called after startQueue() has been called and\n at least one request has been issued.\n \n",
        name:"getCurrentTransactionId",
        seeAlso:[
        ],
        returns:{
            description:"the transactionNum of the current transaction.",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:DateChooser.nextYearIcon":{
        ref:"attr:DateChooser.nextYearIcon",
        flags:"IR",
        description:"Icon for the next year button",
        name:"nextYearIcon",
        seeAlso:[
            {
                ref:"attr:DateChooser.showDoubleYearIcon",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"\"[SKIN]doubleArrow_right.gif\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classMethod:Date.setShortDisplayFormat":{
        ref:"classMethod:Date.setShortDisplayFormat",
        flags:"",
        description:" Set the default short format for dates. After calling this method, subsequent calls to\n ${isc.DocUtils.linkForRef('method:Date.toShortDate')} will return a string formatted according to this format\n specification. Note that this will be the standard short date format used by\n SmartClient components.\n <P>\n The <code>format</code> parameter may be a ${isc.DocUtils.linkForRef('type:FormatString')}, a ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} \n string, or a function. If passed a function, this function will be executed in the scope of\n the Date and should return the formatted string.<br>\n <P>\n Initial default shortDateFormat is <code>\"toUSShortDate\"</code>. This property\n is commonly modified for localization of applications. See\n <a href='http://en.wikipedia.org/wiki/Date_format_by_country' target='_blank'>http://en.wikipedia.org/wiki/Date_format_by_country</a>\n for a useful overview of standard date formats per country.\n\n",
        name:"setShortDisplayFormat",
        seeAlso:[
        ],
        params:[
            {
                description:"new formatter",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"FormatString | DateDisplayFormat | function"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('dateFormat')}",
            "${isc.DocUtils.linkForExampleId('customDateFormat')}"
        ],
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:TextImportSettings.hasHeaderLine":{
        ref:"attr:TextImportSettings.hasHeaderLine",
        flags:"IR",
        description:"If set to true, the data is assumed to have a header line that lists titles for each field,\n which should be parsed.  \n <P>\n <code>recordsFromText</code> will then try to find a same-named\n DataSourceField by checking parsed titles against both ${isc.DocUtils.linkForRef('attr:DataSourceField.title')} and\n ${isc.DocUtils.linkForRef('attr:DataSourceField.name')} (titles first), doing a case-insensitive comparison with any\n leading or trailing whitespace removed from the title.  If no field matches, data will\n appear in the returned Records under the exact title parsed from the header line.\n <P>\n If this approach will not find appropriate DataSourceFields, parse the header line before\n calling <code>recordsFromText()</code>, and provide the list of field names to use when\n parsing data as ${isc.DocUtils.linkForRef('attr:TextSettings.fieldList')}.",
        name:"hasHeaderLine",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TextImportSettings"
    },
    "attr:ListGrid.alternateRecordStyles":{
        ref:"attr:ListGrid.alternateRecordStyles",
        flags:"IRW",
        description:"Whether alternating rows should be drawn in alternating styles, in order to create a \"ledger\"\n effect for easier reading.  If enabled, the cell style for alternate rows will have \"Dark\"\n appended to it.",
        name:"alternateRecordStyles",
        setter:[
            "setAlternateRecordStyles"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('gridCells')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "method:CellSelection.deselectCellList":{
        ref:"method:CellSelection.deselectCellList",
        flags:"",
        description:"   deselect an array of cells\n\n",
        name:"deselectCellList",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of cells to deselect. Each cell can be specified                                      as a 2 element array <code>[rowNum, colNum]</code>",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array[]"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "method:FilterClause.validate":{
        ref:"method:FilterClause.validate",
        flags:"",
        description:" Validate this clause.\n",
        name:"validate",
        seeAlso:[
        ],
        returns:{
            description:"true if if the clause is valid, false otherwise",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FilterClause"
    },
    "attr:ListGridField.ignoreKeyboardClicks":{
        ref:"attr:ListGridField.ignoreKeyboardClicks",
        flags:"IRW",
        description:"If the user is navigating through the grid using the keyboard, record click or double click\n events may be generated via keyboard interactions (see ${isc.DocUtils.linkForRef('attr:ListGrid.generateClickOnSpace')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.generateClickOnEnter')}, ${isc.DocUtils.linkForRef('attr:ListGrid.generateDoubleClickOnSpace')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.generateDoubleClickOnEnter')} and ${isc.DocUtils.linkForRef('attr:ListGrid.arrowKeyAction')}).\n <P>\n These synthetic events have both a target row and column.\n Setting this flag to true ensures that this field will never be considered the target for\n a keyboard click event.",
        name:"ignoreKeyboardClicks",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "events"
        ]
    },
    "attr:FormulaBuilder.titleFieldTitle":{
        ref:"attr:FormulaBuilder.titleFieldTitle",
        flags:"IRWA",
        description:"The text to display next to the \"Title\" field.",
        name:"titleFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Title\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Slider.minValueLabel":{
        ref:"attr:Slider.minValueLabel",
        flags:"IRW",
        description:"The text displayed in the label for the minimum value of the slider. If left as null, then\n slider.minValue will be displayed.",
        name:"minValueLabel",
        seeAlso:[
            {
                ref:"attr:Slider.showRange",
                description:null
            },
            {
                ref:"attr:Slider.minValue",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:ListGrid.alwaysShowEditors":{
        ref:"attr:ListGrid.alwaysShowEditors",
        flags:"IR",
        description:"When this attribute is set, editors will be rendered into every row of the grid rather than\n showing up in a single record at a time.\n This attribute is only valid when ${isc.DocUtils.linkForRef('attr:ListGrid.editByCell')} is false",
        name:"alwaysShowEditors",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "method:FormItem.iconClick":{
        ref:"method:FormItem.iconClick",
        flags:"",
        description:"  Notification method called when the user clicks on a form item icon.\n  <p>\n  The icon's ${isc.DocUtils.linkForRef('method:FormItemIcon.click')} method if any is called first. Then, if the clicked\n  icon is the ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','picker icon')}, the ${isc.DocUtils.linkForRef('method:FormItem.pickerIconClick')} method is\n  called. Then, this method is called.\n",
        name:"iconClick",
        seeAlso:[
        ],
        params:[
            {
                description:"a pointer to this item's form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"a pointer to this form item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"a pointer to the icon that received the click event.",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"FormItemIcon"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "method:Button.setDisabled":{
        ref:"method:Button.setDisabled",
        flags:"",
        description:" Enable or disable this object\n",
        name:"setDisabled",
        seeAlso:[
        ],
        params:[
            {
                description:"true if this widget is to be disabled",
                optional:false,
                name:"disabled",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "enable",
            "state"
        ]
    },
    "method:ListGrid.setAutoFitMaxWidth":{
        ref:"method:ListGrid.setAutoFitMaxWidth",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitMaxWidth')}.\n",
        name:"setAutoFitMaxWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"Width in px we'll expand to accommodate if ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData','auto fit')} is enabled horizontally.",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "attr:TimeItem.ampmItem":{
        ref:"attr:TimeItem.ampmItem",
        flags:"R",
        description:"Select item to hold the AM/PM value for the timeItem when \n ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false.",
        name:"ampmItem",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:LinkItem.setLinkTitle":{
        ref:"method:LinkItem.setLinkTitle",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:LinkItem.linkTitle')}.\n",
        name:"setLinkTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new <code>linkTitle</code> HTML.",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:LinkItem"
    },
    "group:tabBarControls":{
        ref:"group:tabBarControls",
        refs:[
            "attr:Tab.pickerTitle",
            "attr:TabSet.tabBarControls",
            "attr:TabSet.showTabScroller",
            "attr:TabSet.showTabPicker",
            "attr:TabSet.animateTabScrolling",
            "attr:TabSet.scroller",
            "attr:TabSet.scrollerButtonSize",
            "attr:TabSet.tabPicker",
            "attr:TabSet.pickerButtonSize"
        ],
        name:"tabBarControls",
        seeAlso:[
        ],
        type:"group"
    },
    "class:TabBar":{
        methods:[
            "method:TabBar.selectTab"
        ],
        ref:"class:TabBar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/TabSet"
        ],
        attrs:[
            "attr:TabBar.tabs",
            "attr:TabBar.breadth",
            "attr:TabBar.buttonConstructor",
            "attr:TabBar.showMoreTab",
            "attr:TabBar.moreTabCount",
            "attr:TabBar.moreTab",
            "attr:TabBar.baseLineThickness",
            "attr:TabBar.baseLineSrc",
            "attr:TabBar.baseLineCapSize",
            "attr:TabBar.defaultTabSize"
        ],
        description:"Shows a set of Tabs.  TabBars are automatically created by TabSets and shouldn't be used\n directly.  The TabBar is documented for skinning purposes.",
        name:"TabBar",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.getExportColumnBGColor":{
        ref:"method:ListGrid.getExportColumnBGColor",
        flags:"",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData','exportData()')} or\n${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData()')}, background color to use \nfor the given colNum.\n <p>\nSee ${isc.DocUtils.linkForRef('group:exportBGColor')} for an overview.\n\n",
        name:"getExportColumnBGColor",
        seeAlso:[
        ],
        params:[
            {
                description:"column number",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"background color to use for the column, or null to use the default                 background color",
            type:"CSSColor"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "exportBackgroundColor"
        ]
    },
    "object:ListProperties":{
        methods:[
        ],
        ref:"object:ListProperties",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation/RichTextEditor"
        ],
        attrs:[
            "attr:ListProperties.style",
            "attr:ListProperties.image",
            "attr:ListProperties.startNumber"
        ],
        description:"Configuration of an HTML list in a ${isc.DocUtils.linkForRef('class:RichTextEditor')}.",
        name:"ListProperties",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:FormItem.tabIndex":{
        ref:"attr:FormItem.tabIndex",
        flags:"IRW",
        description:"TabIndex for the form item within the form, which controls the order in which controls\n are visited when the user hits the tab or shift-tab keys to navigate between items. \n <P>\n tabIndex is automatically assigned as the order that items appear in the\n ${isc.DocUtils.linkForRef('attr:DynamicForm.items')} list.\n <P>\n To specify the tabindex of an item within the page as a whole (not just this form), use\n ${isc.DocUtils.linkForRef('attr:FormItem.globalTabIndex')} instead.",
        name:"tabIndex",
        setter:[
            "setTabIndex"
        ],
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "focus"
        ]
    },
    "method:DateChooser.dataChanged":{
        ref:"method:DateChooser.dataChanged",
        flags:"",
        description:" Method to override or observe in order to be notified when a user picks a date value.\n <P>\n Has no default behavior (so no need to call Super).\n <P>\n Use ${isc.DocUtils.linkForRef('method:DateChooser.getData')} to get the current date value.\n \n",
        name:"dataChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DateChooser"
    },
    "attr:Layout.dropLineThickness":{
        ref:"attr:Layout.dropLineThickness",
        flags:"IRA",
        description:"Thickness, in pixels of the dropLine shown during drag and drop when\n ${isc.DocUtils.linkForRef('attr:Layout.canDropComponents')} is set to <code>true</code>.  See the discussion in\n ${isc.DocUtils.linkForRef('class:Layout')} for more info.",
        name:"dropLineThickness",
        seeAlso:[
            {
                ref:"class:Layout",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragMove')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DynamicForm.dataFetchMode":{
        ref:"attr:DynamicForm.dataFetchMode",
        flags:"IRW",
        description:"How to fetch and manage records retrieve from the server.  See ${isc.DocUtils.linkForRef('type:FetchMode')}.\n <P>\n This setting only applies to the ${isc.DocUtils.linkForRef('class:ResultSet')} automatically created by calling\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')}.  If a pre-existing ResultSet is passed to setData() instead, it's\n existing setting for ${isc.DocUtils.linkForRef('attr:ResultSet.fetchMode')} applies.",
        name:"dataFetchMode",
        seeAlso:[
        ],
        valueType:"FetchMode",
        defaultValue:"\"paged\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "databinding"
        ]
    },
    "classMethod:isA.ClassObject":{
        ref:"classMethod:isA.ClassObject",
        flags:"",
        description:"\n\tIs <code>object</code> a class object?\n\n",
        name:"ClassObject",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a Class Object",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "attr:DynamicForm.requiredTitleSuffix":{
        ref:"attr:DynamicForm.requiredTitleSuffix",
        flags:"IRW",
        description:"The string appended to the title of every required item in this form if\n ${isc.DocUtils.linkForRef('attr:DynamicForm.hiliteRequiredFields')} is true.",
        name:"requiredTitleSuffix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;:&lt;/b&gt;\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "method:Selection.deselectItem":{
        ref:"method:Selection.deselectItem",
        flags:"",
        description:" Deselect a particular item by its position in the list\n\n",
        name:"deselectItem",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the item to be selected",
                optional:false,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:RPCRequest.downloadToNewWindow":{
        ref:"attr:RPCRequest.downloadToNewWindow",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('attr:RPCRequest.downloadResult','downloadResult')} is true, setting this attribute to\n true causes the content of the downloaded file to be displayed in a new browser window.",
        name:"downloadToNewWindow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "attr:Label.align":{
        ref:"attr:Label.align",
        flags:"IRW",
        description:"Horizontal alignment of label text. See Alignment type for details.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"Canvas.LEFT",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "positioning"
        ]
    },
    "attr:FormItem.errorIconWidth":{
        ref:"attr:FormItem.errorIconWidth",
        flags:"IRW",
        description:"Height of the error icon, if we're showing icons when validation errors occur.",
        name:"errorIconWidth",
        seeAlso:[
            {
                ref:"attr:FormItem.showErrorIcon",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "errorIcon"
        ]
    },
    "attr:ListGrid.headerSpanHeight":{
        ref:"attr:ListGrid.headerSpanHeight",
        flags:"IR",
        description:"Default height for a ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpan')} with no height specified.\n <P>\n If <code>headerSpanHeight</code> is not specified (the default), headerSpans will be 1/2\n of ${isc.DocUtils.linkForRef('attr:ListGrid.headerHeight')}.",
        name:"headerSpanHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "method:FormItem.focus":{
        ref:"method:FormItem.focus",
        flags:"",
        description:" Called when this FormItem receives focus.\n \n",
        name:"focus",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "eventHandling"
        ]
    },
    "group:loadModulesTag":{
        ref:"group:loadModulesTag",
        title:"&lt;isomorphic:loadModules&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> HTML\n <p>\n This tag works just like ${isc.DocUtils.linkForRef('group:loadISCTag')} except it does not load a skin.  All other\n attributes are supported on this tag just as on <code>loadISC</code>.  This tag is useful if\n you have a single \"header\" JSP that has the <code>loadISC</code> tag that you then include in other\n SmartClient-enabled JSPs that require additional modules.  The JSPs that require additional\n modules can then use the <code>loadModules</code> to load additional SmartClient modules.",
        name:"loadModulesTag",
        seeAlso:[
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:FilterBuilder.saveOnEnter":{
        ref:"attr:FilterBuilder.saveOnEnter",
        flags:"IR",
        description:"If true, when the user hits the Enter key while focused in a text-item in this \n FilterBuilder, we automatically invoke the user-supplied ${isc.DocUtils.linkForRef('method:FilterBuilder.search')} method.",
        name:"saveOnEnter",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:ListGrid.hiliteIconWidth":{
        ref:"attr:ListGrid.hiliteIconWidth",
        flags:"IRW",
        description:"Width for hilite icons for this component.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIconSize','hiliteIconSize')}.\n Can be overridden at the field level.",
        name:"hiliteIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "class:Callbacks":{
        methods:[
            "method:Callbacks.DSCallback",
            "method:Callbacks.Function",
            "method:Callbacks.ClientOnlyDataSourceCallback",
            "method:Callbacks.LoadScreenCallback",
            "method:Callbacks.RPCCallback",
            "method:Callbacks.QueueSentCallback",
            "method:Callbacks.RPCQueueCallback",
            "method:Callbacks.ExportImageCallback",
            "method:Callbacks.PaletteNodeCallback",
            "method:Callbacks.PrintCanvasCallback",
            "method:Callbacks.DataURLCallback",
            "method:Callbacks.MessagingCallback",
            "method:Callbacks.AnimationCallback",
            "method:Callbacks.ShowSectionCallback",
            "method:Callbacks.ExpandSectionCallback",
            "method:Callbacks.HideSectionCallback",
            "method:Callbacks.CollapseSectionCallback",
            "method:Callbacks.ProcessCallback"
        ],
        ref:"class:Callbacks",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
        ],
        description:"This object cannot be used; it exists for documentation purposes only as a place to put\n documentation for callback methods, such as the callback for ${isc.DocUtils.linkForRef('method:Callbacks.DSCallback','DataSource.fetchData()')}.",
        name:"Callbacks",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FacetChart.zoomShowSelection":{
        ref:"attr:FacetChart.zoomShowSelection",
        flags:"IR",
        description:"Whether the selected range should be shown in a different style, which can be configured via\n ${isc.DocUtils.linkForRef('attr:FacetChart.zoomSelectionChartProperties')}.  This has performance consequences and makes the rendering\n of the mini-chart slightly slower.",
        name:"zoomShowSelection",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:NavigationBar.setRightButtonTitle":{
        ref:"method:NavigationBar.setRightButtonTitle",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButtonTitle','rightButtonTitle')}.\n",
        name:"setRightButtonTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title HTML for the right button.",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        type:"method",
        definingClass:"class:NavigationBar"
    },
    "group:progressiveLoading":{
        ref:"group:progressiveLoading",
        refs:[
            "attr:DataSource.progressiveLoading",
            "attr:DataSource.progressiveLoadingThreshold",
            "attr:DataSource.lookAhead",
            "attr:DataSource.endGap",
            "attr:DSRequest.progressiveLoading",
            "attr:OperationBinding.progressiveLoading",
            "attr:ResultSet.progressiveLoading",
            "attr:ResultTree.progressiveLoading",
            "attr:DataBoundComponent.progressiveLoading",
            "attr:SelectItem.progressiveLoading",
            "attr:ComboBoxItem.progressiveLoading"
        ],
        description:"Settings related to the \"progressive loading\" pattern, which causes data to be loaded \n progressively, so that users can request more rows by scrolling off the bottom of the\n currently visible rows, but cannot cause direct movement to some arbitrary position in \n the dataset (as is the case with ordinary, non-progressive loading).  This pattern may\n give a better user experience with large datasets.",
        name:"progressiveLoading",
        seeAlso:[
        ],
        type:"group"
    },
    "class:Timer":{
        methods:[
        ],
        ref:"class:Timer",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:Timer.setTimeout",
            "classMethod:Timer.clear"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"The Timer class provides a predictable cross-browser system for creating\n timed events.",
        name:"Timer",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:SpinnerItem.max":{
        ref:"attr:SpinnerItem.max",
        flags:"IRW",
        description:"Maximum valid value for this item. If this and ${isc.DocUtils.linkForRef('attr:SpinnerItem.min','min')} are both\n null or unspecified, then\n <smartclient>\n ${isc.DocUtils.linkForRef('method:SpinnerItem.getNextValue')} and ${isc.DocUtils.linkForRef('method:SpinnerItem.getPreviousValue')}\n are used to increase or decrease the value and these methods\n </smartclient><smartgwt>\n the {@link com.smartgwt.client.widgets.form.fields.SpinnerItem#setNextValueHandler(NextValueHandler)\n nextValueHandler} and {@link com.smartgwt.client.widgets.form.fields.SpinnerItem#setPreviousValueHandler(PreviousValueHandler)\n previousValueHandler}\n are used to increase or decrease the value and these handlers\n </smartgwt>\n are also used to determine the maximum value.",
        name:"max",
        seeAlso:[
        ],
        valueType:"Double",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('spinnerItem')}"
        ],
        definingClass:"class:SpinnerItem"
    },
    "method:DataSource.updateCaches":{
        ref:"method:DataSource.updateCaches",
        flags:"",
        description:" Causes any components using this DataSource to be notified of changes that have been made to\n the remote dataset accessed via this DataSource, as though the provided DSResponse had just\n successfully completed.  This will cause cache managers such as ${isc.DocUtils.linkForRef('class:ResultSet')} or \n ${isc.DocUtils.linkForRef('class:ResultTree')} to automatically update their caches, and components using such cache\n managers to visually update to show modified data.\n <P>\n This API should be used when you have found out about changes made by other users or by\n automatic processes.  For example, using the SmartClient ${isc.DocUtils.linkForRef('class:Messaging')} system to receive\n real-time updates via HTTP streaming, you may get updates that should affect a ListGrid\n which is using a ResultSet to view a portion of a large dataset.  \n <P>\n The provided <code>DSResponse</code> should have\n ${isc.DocUtils.linkForRef('attr:DSResponse.operationType','operationType')} \"update\", \"add\" or \"remove\" - there is no\n way for a \"fetch\" response to meaningfully update arbitrary caches.  However, if you\n have a list of updated records (possibly retrieved via ${isc.DocUtils.linkForRef('method:DataSource.fetchData')}) you can call\n <code>updateCaches()</code> multiple times with DSResponses of type \"update\" formed from\n the list of records retrieved via <code>fetchData()</code>.\n For example, if you had a ListGrid bound to the <code>supplyItem</code> sample DataSource, \n and that ListGrid was showing a Record with <code>itemId</code> 23, and you wanted to update \n the <code>unitCost</code> field to a new value, you would use the following code:<br><br>\n <smartclient>\n    <code>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// updatedRecord is the record we want to update<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var record = supplyItemDS.copyRecord(updatedRecord);<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;record.unitCost = 500;<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var dsResponse = {<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data: [record],<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;operationType: \"update\"<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;supplyItemDS.updateCaches(dsResponse);<br>\n   </code>\n </smartclient>\n <smartgwt>\n    <code>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// updatedRecord is the record we want to update<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Record record = supplyItemDS.copyRecord(updatedRecord);<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;record.setAttribute(\"unitCost\", 500);<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DSResponse dsResponse = new DSResponse();<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dsResponse.setData(record);<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dsResponse.setOperationType(DSOperationType.UPDATE);<br>\n    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;supplyItemDS.updateCaches(dsResponse);<br>\n    </code>\n </smartgwt>\n <P>\n To cause all components that have cache managers to drop their caches, provide a\n DSResponse with ${isc.DocUtils.linkForRef('attr:DSResponse.invalidateCache')} set.\n <P>\n As an alternative to calling <code>updateCaches()</code> directly, if updates to other\n DataSources occur as a result of server-side logic, you can use the server-side API\n DSResponse.addRelatedUpdate(DSResponse) (Pro Edition and above), which ultimately calls\n <code>updateCaches()</code> for you - see that method's documentation for details.\n <P>\n <b>NOTE:</b>: this API should <b>not</b> be used with a ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly')} DataSource,\n because in this case, the \"remote dataset\" is actually within the browser.  Instead, \n ${isc.DocUtils.linkForRef('method:DataSource.updateData')}, addData() or removeData() can be called in order to both\n change the dataset stored inside the browser and notify all cache managers.\n <P>\n If a DataSource has ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} set and a full cache has been obtained, calling\n <code>updateCaches</code> will automatically update the cache.\n <P>\n Note that the DSResponse provided to this method will <b>not</b> go through\n ${isc.DocUtils.linkForRef('method:DataSource.transformResponse')} or other processing that would normally occur for a\n DSResponse resulting from a DSRequest sent by the application in this page.\n\n",
        name:"updateCaches",
        seeAlso:[
        ],
        params:[
            {
                description:"the provided DSResponse must minimally have                                 dataSource, operationType, and data set",
                optional:false,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            },
            {
                description:"optional dsRequest.  If not specified, a DSRequest will be                                automatically created based on the DataSource and operationType of\n                                the DSResponse",
                optional:true,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:ComboBoxItem.addUnknownValues":{
        ref:"attr:ComboBoxItem.addUnknownValues",
        flags:"IRW",
        description:"This property controls whether the user can enter a value that is not present in the\n set of options for this item.\n <P>\n If set to false, the value the user enters in the text box is essentially used to filter the \n set of options displayed in the pickList.\n <P>\n In this mode, when focus is taken from the field, if the entered value does not match\n any entries in the ${isc.DocUtils.linkForRef('type:ValueMap')} or ${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionDataSource')}, it will be discarded. Note \n that in this mode, ${isc.DocUtils.linkForRef('attr:ComboBoxItem.completeOnTab')} behavior is automatically enabled\n so if the user enters a valid partial value such that one or more options is displayed in \n the pickList, and hits the Tab key, the first matching option will be chosen automatically.\n In this mode the user may also hit the <code>\"Escape\"</code> key to discard their edits.\n <P>\n Note also that when <code>addUnknownValues</code> is set to false, the underlying value\n returned by ${isc.DocUtils.linkForRef('method:FormItem.getValue','getValue()')} will not be updated until a value is explicitly chosen. This\n means any change or changed handlers will not fire directly in response to the user typing\n in the field - they will fire when the user actually selects a value, or takes focus from \n the field.\n <P>\n If setting this property to <code>false</code> on a databound ComboBoxItem, data paging should\n be disabled - this is required since the ComboBoxItem requires all data to be present in \n order to determine whether an entered value is new. Data Paging can be disabled by modifying\n the ${isc.DocUtils.linkForRef('attr:ListGrid.dataFetchMode','dataFetchMode')} on the ${isc.DocUtils.linkForRef('attr:ComboBoxItem.pickListProperties')} for this\n item.\n <P>\n If this property is set to true, the user is not limited to entering values present in\n the set of options for the item. Instead the set of options essentially become a set of\n suggestions that may be used, or the user can enter an entirely new value.",
        name:"addUnknownValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "classMethod:isc.logWarn":{
        ref:"classMethod:isc.logWarn",
        flags:"",
        description:" Same as ${isc.DocUtils.linkForRef('classMethod:Log.logWarn')}.\n\n",
        name:"logWarn",
        seeAlso:[
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in, defaults to \"Log\"",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc"
    },
    "group:titles":{
        ref:"group:titles",
        refs:[
            "attr:DataSource.title",
            "attr:DataSource.pluralTitle",
            "attr:DataSource.titleField"
        ],
        name:"titles",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Layout.defaultLayoutAlign":{
        ref:"attr:Layout.defaultLayoutAlign",
        flags:"IRW",
        description:"Specifies the default alignment for layout members on the breadth axis (horizontal axis\n for a VLayout, vertical axis for an HLayout).  Can be overridden on a per-member basis\n by setting ${isc.DocUtils.linkForRef('attr:Canvas.layoutAlign')}.\n <P>\n If unset, default member layout alignment will be \"top\" for a horizontal layout, and\n \"left\" for a vertical layout, or \"right\" if in ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','RTL')} mode.\n <P>\n When attempting to center components be sure that you have set a specific size on the\n component(s) involved.  If components fill all available space in the layout, centering\n looks the same as not centering.\n <P>\n Similarly, if a component has no visible boundary (like a border), it can appear similar\n to when it's not centered if the component is larger than you expect - use the Watch tab\n in the Developer Console to see the component's extents visually.",
        name:"defaultLayoutAlign",
        seeAlso:[
        ],
        valueType:"Alignment or VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('layoutCenterAlign')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "layoutMember",
            "layoutPolicy"
        ]
    },
    "method:CubeGrid.sortByFacetId":{
        ref:"method:CubeGrid.sortByFacetId",
        flags:"",
        description:" Called when a sort control is clicked on a FacetHeader.  Does nothing by default.\n \n",
        name:"sortByFacetId",
        seeAlso:[
        ],
        params:[
            {
                description:"ID of facet to sort",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            },
            {
                description:"true for ascending",
                optional:false,
                name:"sortDirection",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "columnControls"
        ]
    },
    "classMethod:Page.registerKey":{
        ref:"classMethod:Page.registerKey",
        flags:"",
        description:" Fire some action when the Page receives a keyPress event from a certain key.<br>\n Note that if a widget has keyboard focus, this action will fire only after any widget-level\n keyPress handlers have fired and bubbled the event up to the top of their ancestor chain.<br>\n Multiple actions can be registered to fire on a single keyPress using this method, and can\n be associated with different <code>target</code> objects (which will then be available as\n a parameter when the action is fired).<br>\n This differs from calling ${isc.DocUtils.linkForRef('classMethod:Page.setEvent')} with the <code>\"keyPress\"</code>\n events registered via <code>setEvent()</code> will fire <i>before</i> widget level handlers \n respond to the event, and will fire for every <code>keyPress</code> event, not just those\n triggered by some specific key or key-combination.\n \n \n",
        name:"registerKey",
        seeAlso:[
            {
                ref:"method:Canvas.keyPress",
                description:null
            },
            {
                ref:"classMethod:Page.setEvent",
                description:null
            },
            {
                ref:"classMethod:Page.unregisterKey",
                description:null
            }
        ],
        params:[
            {
                description:"key name or identifier object.",
                optional:false,
                name:"key",
                defaultValue:null,
                type:"KeyIdentifier"
            },
            {
                description:"Action to fire when key is pressed.              This can be a string of script to evaluate or a javascript function.<br>\n              This action will be passed 2 parameters: The name of the key pressed will be \n              available as the first parameter or <code>key</code> keyword. The target \n              passed into this method will be available as the second parameter or \n             <code>target</code> keyword.",
                optional:false,
                name:"action",
                defaultValue:null,
                type:"string"
            },
            {
                description:"If specified this object will be made available to the                                  action fired as a parameter.",
                optional:true,
                name:"target",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "KeyRegistry"
        ]
    },
    "attr:Splitbar.showDownGrip":{
        ref:"attr:Splitbar.showDownGrip",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true, this property determines whether to show the\n 'Down' state on the grip image when the user mousedown's on this widget. \n Has no effect if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')} is false.",
        name:"showDownGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "grip"
        ]
    },
    "attr:WSRequest.wsOperation":{
        ref:"attr:WSRequest.wsOperation",
        flags:"IR",
        description:"Name of the web service operation to invoke.",
        name:"wsOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:WSRequest"
    },
    "method:EditContext.removeNodeProperties":{
        ref:"method:EditContext.removeNodeProperties",
        flags:"",
        description:" Removes the specified properties from an editNode's serializable \"defaults\".\n Note that the ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObject')} is <u>not</u> updated by this method. \n To set a property to null (rather than removing it), use\n ${isc.DocUtils.linkForRef('method:EditContext.setNodeProperties','setNodeProperties()')} instead.\n",
        name:"removeNodeProperties",
        seeAlso:[
            {
                ref:"method:EditContext.setNodeProperties",
                description:null
            }
        ],
        params:[
            {
                description:"the editNode to update",
                optional:false,
                name:"editNode",
                defaultValue:null,
                type:"EditNode"
            },
            {
                description:"an array of property names to remove",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"Array of String"
            }
        ],
        type:"method",
        definingClass:"interface:EditContext"
    },
    "classMethod:History.registerCallback":{
        ref:"classMethod:History.registerCallback",
        flags:"",
        description:" Registers a callback to be called when the user navigates to a synthetic history entry.\n <p>\n <b>NOTE:</b> Only one primary callback can be registered at a time. Unless <code>isAdditional</code>\n is true, then <code>registerCallback()</code> registers the primary callback. To register\n a callback that is called in addition to the primary callback, if set, pass <code>true</code>\n for <code>isAdditional</code>.\n <p>\n If the SmartClient Core module is loaded on the page where you're using the History module,\n you can use any format acceptable to ${isc.DocUtils.linkForRef('method:Class.fireCallback')} as the callback.  The\n parameters 'id' and 'data' will be passed to your callback, in that order.\n <p>\n If the SmartClient Core module is not loaded on the page, you can use one of the following\n formats:\n <ul>\n <li>A function that takes an id and a data argument, in that order.\n <li>An object literal with a property named 'method' whose value is a function that takes\n an id and a data argument, in that order; and a property named 'target' that specifies the\n object on which the callback function should be applied.  So, e.g:\n <pre>\n {target: myObj, method: myObj.myFunction}\n </pre>\n </ul>\n The user can navigate to a synthetic history entry (and trip this callback) in one of two ways:\n <ul>\n <li>When ${isc.DocUtils.linkForRef('classMethod:History.addHistoryEntry')} method is called, a new URL associated with the\n     history entry is generated, and the browser's back/forward navigation buttons become active.\n     The user can then navigate back to a stored history entry via standard browser history\n     navigation, or by explicitly hitting the appropriate URL. In this case both the ID and\n     data parameter passed to ${isc.DocUtils.linkForRef('classMethod:History.addHistoryEntry')} will be available when the\n     callback fires.</li>\n <li>Alternatively the user can store a generated history URL (for example in a browser bookmark)\n     and navigate directly to it in a new browser session. In this case the 'addHistoryEntry()'\n     may not have been fired within the browser session. This callback will still fire with the\n     appropriate history ID but the data parameter will be null. You can disable this behavior\n     by passing in the <code>requiresData</code> parameter.</li>\n </ul>\n\n If this method is called before the page has loaded, and the page initially has a URL with \n a history ID, the callback will be fired with the appropriate ID on page load.\n However if a history callback is registered after the page has loaded, it will not be fired\n until the user moves to a new synthetic history entry. If you wish to explicitly check the\n current URL for a history entry, you can use the ${isc.DocUtils.linkForRef('classMethod:History.getCurrentHistoryId')} method.\n <p>\n When the user transitions to the history entry immediately before the first synthetic\n history entry, the callback is fired with an id of null.\n \n",
        name:"registerCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"The callback to invoke when the user navigates to a synthetic history entry.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"String or Object"
            },
            {
                description:"If passed, this callback will only be fired if the user is  navigating to a history entry that was explicitly generated in this browser session.",
                optional:false,
                name:"requiresData",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"If false or unspecified, then the callback is considered to be the primary callback, replacing the previous primary callback if the primary callback was\n previously registered. If true, then the callback is an additive callback; that is, it is\n called in addition to the primary callback, and after the primary callback is called.",
                optional:true,
                name:"isAdditional",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"the ID of the callback. This can be passed to ${isc.DocUtils.linkForRef('classMethod:History.unregisterCallback')} to remove the callback.",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:History"
    },
    "type:CharacterCasing":{
        ref:"type:CharacterCasing",
        values:[
            {
                description:"No character translation",
                value:"TextItem.DEFAULT"
            },
            {
                description:"Map characters to uppercase",
                value:"TextItem.UPPER"
            },
            {
                description:"Map characters to lowercase",
                value:"TextItem.LOWER"
            }
        ],
        description:null,
        name:"CharacterCasing",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "validation"
        ]
    },
    "method:ListGrid.getBaseStyle":{
        ref:"method:ListGrid.getBaseStyle",
        flags:"",
        description:" Return the base stylename for this cell.  Has the following implementation by default:\n <ul>\n <li>If ${isc.DocUtils.linkForRef('attr:ListGrid.editFailedBaseStyle','this.editFailedBaseStyle')} is defined, and the\n     cell is displaying a validation error return this value.</li>\n <li>If ${isc.DocUtils.linkForRef('attr:ListGrid.editPendingBaseStyle','this.editFailedPendingStyle')} is defined, and\n     the cell is displaying an edit value that has not yet been saved (see\n     ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')}) return this value.</li>\n <li>Otherwise return ${isc.DocUtils.linkForRef('attr:ListGrid.recordBaseStyleProperty','record[listGrid.recordBaseStyleProperty]')},\n     if defined, otherwise ${isc.DocUtils.linkForRef('attr:ListGridField.baseStyle','field.baseStyle')}.</li>\n </ul>\n If no custom style is found for the cell as described above, the default baseStyle will be\n returned. If ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} is specified this will be used. Otherwise for\n grids showing fixed height rows which match ${isc.DocUtils.linkForRef('attr:ListGrid.normalCellHeight')}\n ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')} will be used. For grids with variable, or modified\n cell heights, ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')} will be used.\n <P>\n Note also that\n enabling ${isc.DocUtils.linkForRef('attr:ListGrid.fastCellUpdates')} will cause the <code>tallBaseStyle</code> to be\n used rather than ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')}.\n <smartgwt><p>\n <b>Note: This is an override point.</b></smartgwt>\n\n",
        name:"getBaseStyle",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellStyle",
                description:null
            }
        ],
        params:[
            {
                description:"Record associated with this cell. May be <code>null</code>                                  for a new edit row at the end of this grid's data set.",
                optional:true,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"CSS class for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('replaceStyle')}"
        ],
        definingClass:"class:ListGrid"
    },
    "method:StretchImgButton.setTitleStyle":{
        ref:"method:StretchImgButton.setTitleStyle",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:StretchImgButton.titleStyle')}, which is applied to the title text.\n",
        name:"setTitleStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title style",
                optional:false,
                name:"style",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        definingClass:"class:StretchImgButton"
    },
    "attr:TreeGrid.showOpenIcons":{
        ref:"attr:TreeGrid.showOpenIcons",
        flags:"IRW",
        description:"If true, show a different icon for <code>open</code> folders than closed folders.\n This is achieved by appending the ${isc.DocUtils.linkForRef('attr:TreeGrid.openIconSuffix')} onto the \n ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} URL [for example <code>\"[SKIN]/folder.gif\"</code> might be \n replaced by <code>\"[SKIN]/folder_open.gif\"</code>.<br>\n <b>Note</b> If this property is set to <code>false</code> the same icon is shown for\n open folders as for closed folders, unless a custom folder icon was specified. This will be\n determined by ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')} plus the ${isc.DocUtils.linkForRef('attr:TreeGrid.closedIconSuffix')}.",
        name:"showOpenIcons",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "method:CubeGrid.getSelectedFacetValues":{
        ref:"method:CubeGrid.getSelectedFacetValues",
        flags:"",
        description:" Returns an array of facetValues objects indicating the headers that are selected in the\n headerBar for this facet.  If facetId is not passed, returns selection for all\n facets.\n\n",
        name:"getSelectedFacetValues",
        seeAlso:[
        ],
        params:[
            {
                description:"id for facet for which we are getting selected facetValues",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"selected facetValues",
            type:"Array of FacetValueMap"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "method:Window.setStatus":{
        ref:"method:Window.setStatus",
        flags:"",
        description:"\t\t\tSets the text in the status bar of the window, redrawing if necessary.\n",
        name:"setStatus",
        seeAlso:[
        ],
        params:[
            {
                description:"new text for the status bar",
                optional:false,
                name:"statusString",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Window",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.timeFormatter":{
        ref:"attr:ListGrid.timeFormatter",
        flags:"IRW",
        description:"Display format to use for fields specified as type 'time'.  May also be specified at\n the field level via ${isc.DocUtils.linkForRef('attr:ListGridField.timeFormatter')}.<br>\n If unset, time fields will be formatted based on the system wide\n ${isc.DocUtils.linkForRef('classAttr:Time.shortDisplayFormat')}.<br>\n If this field is editable, the timeFormatter will also be passed to the editor\n created to edit any time type fields as ${isc.DocUtils.linkForRef('attr:TimeItem.timeFormatter')}",
        name:"timeFormatter",
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat",
        defaultValue:"\"toShortPaddedTime\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.showHoverComponents":{
        ref:"attr:ListGrid.showHoverComponents",
        flags:"IRWA",
        description:"When set to true and canHover is also true, shows a widget hovering at the mouse point.\n <P>\n A number of builtin modes are provided - see ${isc.DocUtils.linkForRef('type:HoverMode')}.",
        name:"showHoverComponents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hoverComponents"
        ]
    },
    "method:ListGrid.setHeaderSpans":{
        ref:"method:ListGrid.setHeaderSpans",
        flags:"",
        description:" Update the headerSpans configuration on the grid dynamically.\n\n",
        name:"setHeaderSpans",
        seeAlso:[
        ],
        params:[
            {
                description:"same configuration block as that passed to                                          ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans')}.",
                optional:false,
                name:"headerSpans",
                defaultValue:null,
                type:"Array of HeaderSpan"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "method:DynamicForm.showErrors":{
        ref:"method:DynamicForm.showErrors",
        flags:"",
        description:" If this form has any outstanding validation errors, show them now.<br>\n This method is called when the set of errors is changed by ${isc.DocUtils.linkForRef('method:DynamicForm.setErrors')} or\n ${isc.DocUtils.linkForRef('method:DynamicForm.validate')}.<br>\n Default implementation will redraw the form to display error messages and call\n ${isc.DocUtils.linkForRef('method:DynamicForm.handleHiddenValidationErrors','handleHiddenValidationErrors()')} to\n display errors with no visible field.<br>\n Note that this method may be overridden to perform custom display of validation errors.  \n",
        name:"showErrors",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "method:DrawKnob.updatePoints":{
        ref:"method:DrawKnob.updatePoints",
        flags:"",
        description:" Method called in response to the user dragging this DrawKnob. May be observed or overridden\n to allow drawItems to react to user drag interactions on this knob.\n <P>\n Note that the default implementation does nothing. When working with draw knobs directly this\n is typically where you would both update the shape being controlled by the draw knob, and\n ensure the drawKnob gets repositioned. You may also need to update the drawKnob\n position in response to the drawItem being repositioned, resized, etc.\n \n",
        name:"updatePoints",
        seeAlso:[
        ],
        params:[
            {
                description:"new x-coordinate of the drawKnob",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"new y-coordinate of the drawKnob",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"horizontal distance moved",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"vertical distance moved",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"either \"start\", \"move\", or \"stop\", to indicate the current phase of dragging of the DrawKnob for which the points need to be updated",
                optional:false,
                name:"state",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:DrawKnob"
    },
    "method:SummaryBuilder.setSummary":{
        ref:"method:SummaryBuilder.setSummary",
        flags:"",
        description:" Call to set the format-string in this SummaryBuilder.\n <P>\n Note that calling setSummary() will update the UI, generate the summary's function and \n test it automatically.\n\n",
        name:"setSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"The new format-string for the summary",
                optional:false,
                name:"",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:SummaryBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "type:JSONCircularReferenceMode":{
        ref:"type:JSONCircularReferenceMode",
        values:[
            {
                description:"circular references in Arrays will be represented as a null entry, and objects               will have a property with a null value",
                value:"\"omit\""
            },
            {
                description:"leave a string marker, the ${isc.DocUtils.linkForRef('attr:JSONEncoder.circularReferenceMarker')},                 wherever a circular reference is found",
                value:"\"marker\""
            },
            {
                description:"leave a string marker <i>followed by</i> the path to the first occurrence of               the circular reference from the top of the object tree that was serialized.\n               This potentially allows the original object graph to be reconstructed.",
                value:"\"path\""
            }
        ],
        description:"What the ${isc.DocUtils.linkForRef('class:JSONEncoder')} should do when it encounters a circular reference in an object\n structure.",
        name:"JSONCircularReferenceMode",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:DynamicForm.rightTitleSuffix":{
        ref:"attr:DynamicForm.rightTitleSuffix",
        flags:"IRW",
        description:"The string appended to the title of an item in this form if its titleOrientation\n property is set to \"right\".",
        name:"rightTitleSuffix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "method:EditContext.makeEditNode":{
        ref:"method:EditContext.makeEditNode",
        flags:"",
        description:" Creates and returns an EditNode using the ${isc.DocUtils.linkForRef('attr:EditContext.defaultPalette')}.  Does not add the newly\n created EditNode to the EditContext.\n \n",
        name:"makeEditNode",
        seeAlso:[
        ],
        params:[
            {
                description:"the palette node to use to create the new node",
                optional:false,
                name:"paletteNode",
                defaultValue:null,
                type:"PaletteNode"
            }
        ],
        returns:{
            description:"the EditNode created from the paletteNode",
            type:"EditNode"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:ListGrid.getColumnLeft":{
        ref:"method:ListGrid.getColumnLeft",
        flags:"A",
        description:" Return the left offset (in local coordinate space) of a particular column.\n",
        name:"getColumnLeft",
        seeAlso:[
        ],
        params:[
            {
                description:"number of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"left offset of the passed colNum, or null if not yet drawn or no such column",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "attr:FilterBuilder.operatorPicker":{
        ref:"attr:FilterBuilder.operatorPicker",
        flags:"IR",
        description:"AutoChild for the ${isc.DocUtils.linkForRef('class:FormItem')} that allows a user to select the operator\n when creating filter clauses. Each clause will create an operatorPicker automatically.\n To customize this item, use ${isc.DocUtils.linkForRef('attr:FilterBuilder.operatorPickerProperties')}",
        name:"operatorPicker",
        seeAlso:[
        ],
        valueType:"MultiAutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:DrawSector.centerPoint":{
        ref:"attr:DrawSector.centerPoint",
        flags:"IRW",
        description:"Center point of the sector",
        name:"centerPoint",
        setter:[
            "setCenterPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[0,0]",
        type:"attr",
        definingClass:"class:DrawSector"
    },
    "attr:FormItem.dateFormatter":{
        ref:"attr:FormItem.dateFormatter",
        flags:"IRWA",
        description:"Display format to use for date type values within this formItem.\n <P>\n Note that Fields of type <code>\"date\"</code>, <code>\"datetime\"</code> or \n <code>\"time\"</code> will be edited using a ${isc.DocUtils.linkForRef('class:DateItem')} or ${isc.DocUtils.linkForRef('class:TimeItem')} by \n default, but this can be overridden - for <code>canEdit:false</code> fields, a\n ${isc.DocUtils.linkForRef('class:StaticTextItem')} is used by default, and the developer can always specify \n a custom ${isc.DocUtils.linkForRef('attr:FormItem.editorType')} as well as ${isc.DocUtils.linkForRef('attr:FormItem.type','data type')}.\n <P>\n The ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')} may also be used to format underlying Date values as\n times (ommitting the date part entirely). If both <code>dateFormatter</code> and\n <code>timeFormatter</code> are specified on an item, for\n fields specified as ${isc.DocUtils.linkForRef('attr:FormItem.type','type \"time\"')} the\n <code>timeFormatter</code> will be used, otherwise the <code>dateFormatter</code>\n <P>\n If <code>item.dateFormatter</code> and <code>item.timeFormatter</code> is unspecified,\n date display format may be defined at the component level via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.dateFormatter')}, or for fields of type <code>\"datetime\"</code>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.datetimeFormatter')}. Otherwise the\n default is to use the system-wide default short date format, configured via\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}.  Specify any valid ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to \n change the format used by this item.\n <P>\n Note that if this is a freeform editable field, such a ${isc.DocUtils.linkForRef('class:TextItem')}, with type\n specified as <code>\"date\"</code> or <code>\"datetime\"</code> the system will automatically\n attempt to parse user entered values back to a Date value, assuming the entered string\n matches the date format for the field. Developers may further customize this via an\n explicit ${isc.DocUtils.linkForRef('attr:FormItem.inputFormat')} or via entirely custom\n <smartclient>\n ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} and ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} methods.\n </smartclient>\n <smartgwt>\n <code>setEditorValueFormatter</code> and <code>setEditorValueParser</code> methods.\n </smartgwt>",
        name:"dateFormatter",
        seeAlso:[
            {
                ref:"attr:FormItem.timeFormatter",
                description:null
            },
            {
                ref:"attr:FormItem.format",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:FilterBuilder.topOperatorItemWidth":{
        ref:"attr:FilterBuilder.topOperatorItemWidth",
        flags:"IR",
        description:"Width for the ${isc.DocUtils.linkForRef('attr:FilterBuilder.topOperatorItem')} autoChild.",
        name:"topOperatorItemWidth",
        seeAlso:[
        ],
        valueType:"Number | String",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:TreeMenuButton.title":{
        ref:"attr:TreeMenuButton.title",
        flags:"IRW",
        description:"Title for this button. If not specified, the selected value from the tree will\n be displayed instead.",
        name:"title",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeMenuButton"
    },
    "attr:DynamicForm.stopOnError":{
        ref:"attr:DynamicForm.stopOnError",
        flags:"IR",
        description:"Indicates that if validation fails, the user should not be allowed to exit\n the field - focus will be forced back into the field until the error is corrected.\n <p>\n Enabling this property also implies ${isc.DocUtils.linkForRef('attr:FormItem.validateOnExit')} is automatically\n enabled. If there are server-based validators on this item, setting this property\n also implies that ${isc.DocUtils.linkForRef('attr:FormItem.synchronousValidation')} is forced on.",
        name:"stopOnError",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:DrawRect.top":{
        ref:"attr:DrawRect.top",
        flags:"IRW",
        description:"Top coordinate in pixels relative to the DrawPane.",
        name:"top",
        setter:[
            "setTop"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawRect"
    },
    "attr:UploadItem.width":{
        ref:"attr:UploadItem.width",
        flags:"IRW",
        description:"Width for this uploadItem. Note that SmartClient will not apply this size to the\n native HTML &lt;input ...&gt; element written out by this formItem as this leads to\n inconsistent appearance across different browsers. The specified width\n acts as a minimum cell width for the item.",
        name:"width",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:UploadItem"
    },
    "attr:FormItem.applyHeightToTextBox":{
        ref:"attr:FormItem.applyHeightToTextBox",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.height')} is specified, should it be applied to the\n item's text box element?\n <P>\n If unset, behavior is determined as described in ${isc.DocUtils.linkForRef('method:FormItem.shouldApplyHeightToTextBox')}",
        name:"applyHeightToTextBox",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "group:state":{
        ref:"group:state",
        refs:[
            "method:StatefulCanvas.setState",
            "method:StatefulCanvas.getState",
            "method:StatefulCanvas.setSelected",
            "method:StatefulCanvas.select",
            "method:StatefulCanvas.deselect",
            "method:StatefulCanvas.isSelected",
            "method:StatefulCanvas.getActionType",
            "method:StatefulCanvas.setActionType",
            "method:StatefulCanvas.addToRadioGroup",
            "method:StatefulCanvas.removeFromRadioGroup",
            "method:StatefulCanvas.setDisabled",
            "method:Button.select",
            "method:Button.deselect",
            "method:Button.isSelected",
            "method:Button.setSelected",
            "method:Button.addToRadioGroup",
            "method:Button.removeFromRadioGroup",
            "method:Button.setActionType",
            "method:Button.getActionType",
            "method:Button.setState",
            "method:Button.setDisabled",
            "method:Button.getState",
            "method:ImgButton.select",
            "method:ImgButton.deselect",
            "method:ImgButton.isSelected",
            "method:ImgButton.setSelected",
            "method:ImgButton.addToRadioGroup",
            "method:ImgButton.removeFromRadioGroup",
            "method:ImgButton.setActionType",
            "method:ImgButton.getActionType",
            "method:ImgButton.setState",
            "method:ImgButton.setDisabled",
            "method:ImgButton.getState",
            "method:StretchImgButton.select",
            "method:StretchImgButton.deselect",
            "method:StretchImgButton.isSelected",
            "method:StretchImgButton.setSelected",
            "method:StretchImgButton.addToRadioGroup",
            "method:StretchImgButton.removeFromRadioGroup",
            "method:StretchImgButton.setActionType",
            "method:StretchImgButton.getActionType",
            "method:StretchImgButton.setState",
            "method:StretchImgButton.setDisabled",
            "method:StretchImgButton.getState",
            "attr:StatefulCanvas.redrawOnStateChange",
            "attr:StatefulCanvas.selected",
            "attr:StatefulCanvas.state",
            "attr:StatefulCanvas.showRollOver",
            "attr:StatefulCanvas.showFocus",
            "attr:StatefulCanvas.showFocused",
            "attr:StatefulCanvas.showFocusedAsOver",
            "attr:StatefulCanvas.showDown",
            "attr:StatefulCanvas.showDisabled",
            "attr:StatefulCanvas.actionType",
            "attr:StatefulCanvas.radioGroup",
            "attr:Button.selected",
            "attr:Button.radioGroup",
            "attr:Button.actionType",
            "attr:Button.state",
            "attr:Button.showDisabled",
            "attr:Button.showDown",
            "attr:Button.showFocused",
            "attr:Button.showRollOver",
            "attr:ImgButton.selected",
            "attr:ImgButton.radioGroup",
            "attr:ImgButton.actionType",
            "attr:ImgButton.state",
            "attr:ImgButton.showDisabled",
            "attr:ImgButton.showDown",
            "attr:ImgButton.showFocus",
            "attr:ImgButton.showFocused",
            "attr:ImgButton.showRollOver",
            "attr:StretchImgButton.selected",
            "attr:StretchImgButton.radioGroup",
            "attr:StretchImgButton.actionType",
            "attr:StretchImgButton.state",
            "attr:StretchImgButton.showDisabled",
            "attr:StretchImgButton.showDown",
            "attr:StretchImgButton.showFocus",
            "attr:StretchImgButton.showFocused",
            "attr:StretchImgButton.showRollOver",
            "type:State",
            "type:SelectionType",
            "type:Selected"
        ],
        description:"Change of state and it's consequences for presentation.",
        name:"state",
        seeAlso:[
        ],
        type:"group"
    },
    "class:Dialog":{
        methods:[
            "method:Dialog.setButtons",
            "method:Dialog.setToolbarButtons",
            "method:Dialog.saveData",
            "method:Dialog.closeClick",
            "method:Dialog.cancelClick",
            "method:Dialog.okClick",
            "method:Dialog.applyClick",
            "method:Dialog.yesClick",
            "method:Dialog.noClick",
            "method:Dialog.doneClick",
            "method:Dialog.buttonClick"
        ],
        exampleConfig:"Dialog.xml",
        ref:"class:Dialog",
        classAttrs:[
            "classAttr:Dialog.OK_BUTTON_TITLE",
            "classAttr:Dialog.APPLY_BUTTON_TITLE",
            "classAttr:Dialog.YES_BUTTON_TITLE",
            "classAttr:Dialog.NO_BUTTON_TITLE",
            "classAttr:Dialog.CANCEL_BUTTON_TITLE",
            "classAttr:Dialog.DONE_BUTTON_TITLE",
            "classAttr:Dialog.CONFIRM_TITLE",
            "classAttr:Dialog.SAY_TITLE",
            "classAttr:Dialog.WARN_TITLE",
            "classAttr:Dialog.ASK_TITLE",
            "classAttr:Dialog.ASK_FOR_VALUE_TITLE",
            "classAttr:Dialog.Prompt",
            "classAttr:Dialog.Warn",
            "classAttr:Dialog.Ask"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:Dialog.defaultWidth",
            "attr:Dialog.styleName",
            "attr:Dialog.message",
            "attr:Dialog.messageStyle",
            "attr:Dialog.messageLabel",
            "attr:Dialog.messageIcon",
            "attr:Dialog.messageStack",
            "attr:Dialog.icon",
            "attr:Dialog.iconSize",
            "attr:Dialog.showToolbar",
            "attr:Dialog.autoFocus",
            "attr:Dialog.toolbar",
            "attr:Dialog.buttons",
            "attr:Dialog.toolbarButtons"
        ],
        description:"Dialogs are a specialized version of ${isc.DocUtils.linkForRef('class:Window')} used for small windows that contain just a text\n message or a text mesage with some standard buttons.\n <P>\n Many typical modal dialogs such as alerts and confirmations are built into the system with convenience\n APIs - see ${isc.DocUtils.linkForRef('classMethod:isc.say')}, ${isc.DocUtils.linkForRef('classMethod:isc.warn')} and ${isc.DocUtils.linkForRef('classMethod:isc.askForValue')}.\n <P>\n Dialogs can be modal or non-modal according to ${isc.DocUtils.linkForRef('attr:Window.isModal','isModal')}.\n <P>\n NOTE: If you are building a dialog that will involve more than just buttons and a message, consider\n starting from the ${isc.DocUtils.linkForRef('class:Window')} class instead, where arbitrary components can be added to the body\n area via ${isc.DocUtils.linkForRef('method:Window.addItem')}.\n This is an example of creating a custom dialog:\n <smartclient>\n <pre>\n  isc.Dialog.create({\n      message : \"Please choose whether to proceed\",\n      icon:\"[SKIN]ask.png\",\n      buttons : [\n          isc.Button.create({ title:\"OK\" }),\n          isc.Button.create({ title:\"Cancel\" })\n      ],\n      buttonClick : function (button, index) {\n          this.hide();\n      }\n  });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n final Dialog dialog = new Dialog();\n dialog.setMessage(\"Please choose whether to proceed\");\n dialog.setIcon(\"[SKIN]ask.png\");\n dialog.setButtons(new Button(\"OK\"), new Button(\"Cancel\"));\n dialog.addButtonClickHandler(new ButtonClickHandler() {\n     public void onButtonClick(ButtonClickEvent event) {\n         dialog.hide();\n     }\n });\n dialog.draw();\n </pre>\n </smartgwt>",
        name:"Dialog",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:HeaderSpan.title":{
        ref:"attr:HeaderSpan.title",
        flags:"IR",
        description:"A title for this headerSpan, to display in the headerSpan button for this headerSpan\n and in other contexts such as the ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields','menu for picking visible fields')}.\n\n Note: if you want to use HTML tags to affect the display of the header, you should do so\n via ${isc.DocUtils.linkForRef('attr:HeaderSpan.headerTitle')} instead so that other places where the title\n appears in the UI are not affected.  Refer to discussion at ${isc.DocUtils.linkForRef('attr:ListGridField.title')}.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "attr:Progressbar.src":{
        ref:"attr:Progressbar.src",
        flags:"IRW",
        description:"The base file name for the progressbar image.",
        name:"src",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]progressbar.gif\"",
        type:"attr",
        definingClass:"class:Progressbar",
        groups:[
            "appearance"
        ]
    },
    "attr:DataBoundComponent.duplicateDragMessage":{
        ref:"attr:DataBoundComponent.duplicateDragMessage",
        flags:"IR",
        description:"Message to show when a user attempts to transfer duplicate records into this component, and\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.preventDuplicates')} is enabled.\n <P>\n If set to null, duplicates will not be reported and the dragged duplicates will not be\n saved.",
        name:"duplicateDragMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Duplicates not allowed\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "class:LoginDialog":{
        methods:[
            "method:LoginDialog.register",
            "method:LoginDialog.lostPassword",
            "method:LoginDialog.loginFunc"
        ],
        ref:"class:LoginDialog",
        classAttrs:[
            "classAttr:LoginDialog.LOGIN_TITLE",
            "classAttr:LoginDialog.USERNAME_TITLE",
            "classAttr:LoginDialog.PASSWORD_TITLE",
            "classAttr:LoginDialog.LOGIN_BUTTON_TITLE",
            "classAttr:LoginDialog.LOGIN_ERROR_MESSAGE"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:LoginDialog.dismissable",
            "attr:LoginDialog.dismissOnEscape",
            "attr:LoginDialog.showCloseButton",
            "attr:LoginDialog.allowBlankPassword",
            "attr:LoginDialog.showLostPasswordLink",
            "attr:LoginDialog.showRegistrationLink",
            "attr:LoginDialog.title",
            "attr:LoginDialog.errorStyle",
            "attr:LoginDialog.usernameItemTitle",
            "attr:LoginDialog.passwordItemTitle",
            "attr:LoginDialog.loginButtonTitle",
            "attr:LoginDialog.lostPasswordItemTitle",
            "attr:LoginDialog.registrationItemTitle",
            "attr:LoginDialog.errorMessage",
            "attr:LoginDialog.items",
            "attr:LoginDialog.formFields",
            "attr:LoginDialog.loginFailureItem",
            "attr:LoginDialog.usernameItem",
            "attr:LoginDialog.lostPasswordItem",
            "attr:LoginDialog.registrationItem",
            "attr:LoginDialog.passwordItem",
            "attr:LoginDialog.loginButton",
            "attr:LoginDialog.loginForm"
        ],
        description:"Handle a complete login interaction with a typical login dialog asking for username and\n password credentials. Use this\n class to quickly present a traditional username/password authentication mechanism in a\n SmartClient window.\n <p>\n To adapt this class to your requirements, first implement LoginDialog.loginFunc to submit\n the username and password to the authentication mechanism of your choice, calling\n dialogCallback once the authentication process completes.",
        name:"LoginDialog",
        seeAlso:[
            {
                ref:"classMethod:isc.showLoginDialog",
                description:null
            }
        ],
        type:"class",
        groups:[
            "Prompting"
        ]
    },
    "attr:GroupSpecifier.grouping":{
        ref:"attr:GroupSpecifier.grouping",
        flags:"IR",
        description:"The grouping in which this specifier should group.",
        name:"grouping",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:GroupSpecifier"
    },
    "method:DrawLinePath.getBoundingBox":{
        ref:"method:DrawLinePath.getBoundingBox",
        flags:"",
        description:" Returns the startPoint, endPoint\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawLinePath"
    },
    "group:dsResponse":{
        ref:"group:dsResponse",
        refs:[
            "attr:DSResponse.dataSource",
            "attr:DSResponse.operationType",
            "attr:DSResponse.data"
        ],
        name:"dsResponse",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DetailViewer.printCellStyle":{
        ref:"attr:DetailViewer.printCellStyle",
        flags:"IRW",
        description:"Optional CSS style for a cell in printable HTML for this component. If unset\n ${isc.DocUtils.linkForRef('attr:DetailViewer.cellStyle')} will be used for printing as well as normal presentation.",
        name:"printCellStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "printing"
        ]
    },
    "attr:ListGrid.recordComponentPoolingMode":{
        ref:"attr:ListGrid.recordComponentPoolingMode",
        flags:"IRWA",
        description:"The method of ${isc.DocUtils.linkForRef('type:RecordComponentPoolingMode','component-pooling')} to employ for\n ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponents')}.\n <P>\n The default mode is \"viewport\", which means that recordComponents are destroyed as soon\n their record leaves the viewport.\n <P>\n For the most efficient implementation, switch to \"recycle\" mode, which pools components\n when records leave the viewport and re-uses them in other records.  In this mode, you\n should implement ${isc.DocUtils.linkForRef('method:ListGrid.updateRecordComponent','updateRecordComponent()')} to\n apply any changes to make reused components applicable to the new record they appear in,\n if necessary.  If you have components of different types in different columns and still\n want to take advantage of component recycling, you can\n set ${isc.DocUtils.linkForRef('attr:ListGrid.poolComponentsPerColumn')} to ensure that components intended for one\n column are not recycled for use in another column that should have a different component.\n <P>\n Note that, if different records have distinctly different components embedded\n in them, or multiple columns in each record embed different components, you should\n leave the recordComponentPoolingMode at \"viewport\" if your dataset is very large or\n use \"data\" otherwise.",
        name:"recordComponentPoolingMode",
        seeAlso:[
        ],
        valueType:"RecordComponentPoolingMode",
        defaultValue:"\"viewport\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:ViewLoader.setViewURL":{
        ref:"method:ViewLoader.setViewURL",
        flags:"",
        description:" Change the URL this component loads a view from.  Triggers a fetch from the new URL.\n <P>\n Can also be called with no arguments to reload the view from the existing\n ${isc.DocUtils.linkForRef('attr:ViewLoader.viewURL')}.\n\n",
        name:"setViewURL",
        seeAlso:[
        ],
        params:[
            {
                description:"URL to retrieve view from",
                optional:true,
                name:"url",
                defaultValue:null,
                type:"URL"
            },
            {
                description:"Parameters to send to the viewURL.  Merged with                           <code>component.viewURLParams</code> if both are set.",
                optional:true,
                name:"params",
                defaultValue:null,
                type:"Object"
            },
            {
                description:"Additional properties for the RPCRequest                         sent by the ViewLoader.  Very advanced; could be used to, for\n                        example, set HTTP headers.",
                optional:true,
                name:"rpcProperties",
                defaultValue:null,
                type:"RPCRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:ViewLoader",
        groups:[
            "viewLoading"
        ]
    },
    "method:Gauge.setDrawnClockwise":{
        ref:"method:Gauge.setDrawnClockwise",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Gauge.drawnClockwise','drawnClockwise')} property and redraws the gauge.\n\n",
        name:"setDrawnClockwise",
        seeAlso:[
        ],
        params:[
            {
                description:"whether the sectors are drawn clockwise.",
                optional:false,
                name:"drawnClockwise",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:DrawLabel.fontStyle":{
        ref:"attr:DrawLabel.fontStyle",
        flags:"IR",
        description:"Font style, similar to the CSS font-style attribute, eg \"normal\", \"italic\".",
        name:"fontStyle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"normal\"",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "method:ListGrid.toggleSort":{
        ref:"method:ListGrid.toggleSort",
        flags:"A",
        description:"  Toggles the sort-direction of the field with the passed name and resorts the grid.\n",
        name:"toggleSort",
        seeAlso:[
        ],
        params:[
            {
                description:"The name of a field, visible, hidden or existing only in the   dataSource",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "method:Window.setShowMaximizeButton":{
        ref:"method:Window.setShowMaximizeButton",
        flags:"",
        description:" Dynamically update ${isc.DocUtils.linkForRef('attr:Window.showMaximizeButton')} to show / hide the maximizeButton\n",
        name:"setShowMaximizeButton",
        seeAlso:[
            {
                ref:"attr:Window.headerControls",
                description:null
            },
            {
                ref:"attr:Window.showMaximizeButton",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Window"
    },
    "method:DrawRect.resizeTo":{
        ref:"method:DrawRect.resizeTo",
        flags:"",
        description:" Resize to the specified size\n",
        name:"resizeTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:CubeGrid.hilites":{
        ref:"attr:CubeGrid.hilites",
        flags:"IRW",
        description:"Hilites to be applied to the data for this component.  See ${isc.DocUtils.linkForRef('group:hiliting')}.",
        name:"hilites",
        seeAlso:[
        ],
        valueType:"Array of Hilite",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hiliting"
        ]
    },
    "attr:ListGridField.linkText":{
        ref:"attr:ListGridField.linkText",
        flags:"IRW",
        description:"The HTML to display in cells of this field if the fieldType is set to link.\n <P>\n This property sets linkText that will be the same for all records.  You can set linkText\n on a per-record basis via ${isc.DocUtils.linkForRef('attr:ListGridRecord.linkText')}.",
        name:"linkText",
        seeAlso:[
            {
                ref:"type:ListGridFieldType",
                description:null
            },
            {
                ref:"type:FieldType",
                description:null
            },
            {
                ref:"attr:ListGridRecord.linkText",
                description:null
            },
            {
                ref:"attr:ListGrid.linkTextProperty",
                description:null
            },
            {
                ref:"attr:ListGridField.linkTextProperty",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('linkImage')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "classMethod:isA.Boolean":{
        ref:"classMethod:isA.Boolean",
        flags:"",
        description:"\n\tIs <code>object</code> a Boolean object?\n\n",
        name:"Boolean",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a Boolean",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "method:Canvas.redraw":{
        ref:"method:Canvas.redraw",
        flags:"A",
        description:" Redraws the widget immediately with its current property values.\n\n Generally, if you want a Canvas to redraw, call markForRedraw() - this will cause the Canvas to\n be redrawn when current processing ends, so that a series of modifications made to a Canvas will\n cause it to redraw only once.\n\n Only call redraw() directly if you need immediate responsiveness, for example you are redrawing\n in response to continuous mouse motion.\n\n",
        name:"redraw",
        seeAlso:[
        ],
        params:[
            {
                description:"reason for performing the redraw",
                optional:true,
                name:"reason",
                defaultValue:"\"no reason provided\"",
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "attr:HeaderSpan.headerTitle":{
        ref:"attr:HeaderSpan.headerTitle",
        flags:"IR",
        description:"Optional title for the headerSpan button for this headerSpan. If specified this will be\n displayed in the headerSpan button instead of ${isc.DocUtils.linkForRef('attr:HeaderSpan.title')}. Set to an empty\n string to suppress the title in the header button entirely.",
        name:"headerTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "attr:DateChooser.navigationLayout":{
        ref:"attr:DateChooser.navigationLayout",
        flags:"IR",
        description:"An ${isc.DocUtils.linkForRef('type:AutoChild')} ${isc.DocUtils.linkForRef('class:HLayout')}, rendered above the ${isc.DocUtils.linkForRef('class:DateGrid','date grid')},\n and showing a number of widgets for navigating the DateChooser.  These include buttons \n for moving to the previous ${isc.DocUtils.linkForRef('attr:DateChooser.previousYearButton','year')} or \n ${isc.DocUtils.linkForRef('attr:DateChooser.previousMonthButton','month')}, the next \n ${isc.DocUtils.linkForRef('attr:DateChooser.nextYearButton','year')} or ${isc.DocUtils.linkForRef('attr:DateChooser.nextMonthButton','month')}, \n and for selecting a specific ${isc.DocUtils.linkForRef('attr:DateChooser.yearChooserButton','year')}, \n ${isc.DocUtils.linkForRef('attr:DateChooser.monthChooserButton','month')} or \n ${isc.DocUtils.linkForRef('attr:DateChooser.weekChooserButton','week')}.",
        name:"navigationLayout",
        seeAlso:[
        ],
        valueType:"AutoChild HLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:WebService.getHeaderData":{
        ref:"method:WebService.getHeaderData",
        flags:"",
        description:" Override this method to return data that should be serialized as SOAP headers for the\n current operation, such as a sessionId.\n <P>\n Format of the returned data is the same as that documented for\n ${isc.DocUtils.linkForRef('attr:DSRequest.headerData')}.\n <P>\n The object passed to this method will be a true DSRequest in the case of a DataSource\n operation, or just an Object with a \"data\" property for web service operations\n initiated by ${isc.DocUtils.linkForRef('method:WebService.callOperation')}.\n <P>\n If <code>headerData</code> is instead provided via either dsRequest.headerData or as\n part of the <code>requestProperties</code> parameter to\n ${isc.DocUtils.linkForRef('method:WebService.callOperation','callOperation()')}, this method will never be called.\n\n",
        name:"getHeaderData",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"dsRequest",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        returns:{
            description:"data for SOAP headers",
            type:"Object"
        },
        type:"method",
        definingClass:"class:WebService"
    },
    "method:Tree.hasLeaves":{
        ref:"method:Tree.hasLeaves",
        flags:"",
        description:"\n  Return whether this node has any children that are leaves.\n\n",
        name:"hasLeaves",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the node has children that are leaves",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:ListGrid.childExpansionMode":{
        ref:"attr:ListGrid.childExpansionMode",
        flags:"IRWA",
        description:"For ${isc.DocUtils.linkForRef('type:ExpansionMode','expansionModes')} that show another grid or tree, what the\n child's expansionMode should be.\n <P>Default value <code>null</code> means no further expansion.",
        name:"childExpansionMode",
        seeAlso:[
        ],
        valueType:"ExpansionMode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "group:frozenFields":{
        ref:"group:frozenFields",
        title:"Frozen Fields",
        refs:[
            "method:ListGridField.getAutoFreezePosition",
            "method:ListGrid.freezeField",
            "method:ListGrid.unfreezeField",
            "method:ListGrid.toggleFrozen",
            "attr:ListGridField.frozen",
            "attr:ListGridField.canFreeze",
            "attr:ListGridField.autoFreeze",
            "attr:ListGrid.frozenBaseStyle",
            "attr:ListGrid.shrinkForFreeze",
            "attr:ListGrid.frozenHeaderBaseStyle",
            "attr:ListGrid.frozenHeaderTitleStyle",
            "attr:ListGrid.canFreezeFields"
        ],
        description:"Frozen fields are fields that do not scroll horizontally with other fields, remaining on\n the screen while other fields may be scrolled off.  This feature is typically used to\n allow basic identifying information (like an \"accountId\") to remain on screen while the\n user scrolls through a large number of related fields.\n <P>\n Fields can be programmatically frozen via setting\n ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','field.frozen')} to true when the grid is created, or\n dynamically frozen and unfrozen via ${isc.DocUtils.linkForRef('method:ListGrid.freezeField','freezeField()')} and\n ${isc.DocUtils.linkForRef('method:ListGrid.unfreezeField','unfreezeField()')}.\n The setting ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','canFreezeFields')} enables a user interface to\n allow end users to dynamically freeze and unfreeze fields.\n <P>\n The frozen fields feature is not compatible with the following features:\n <ul>\n <li> variable height auto-sizing records\n      (${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights','fixedRecordHeights:false')})\n <li> ${isc.DocUtils.linkForRef('group:autoFitData')}:\"horizontal\", as well as headers that autoFit to titles\n      (normally enabled via <code>field.overflow:\"visible\"</code>)\n <li> the ${isc.DocUtils.linkForRef('class:CubeGrid')} subclass of ListGrid\n <li> nested grids\n </ul>\n The frozen fields feature <b>is</b> compatible with column resize and reorder, selection\n and multi-selection, loading data on demand, inline editing, drag and drop and reorder\n of records, the ${isc.DocUtils.linkForRef('class:TreeGrid')} subclass of ListGrid, and all dynamic styling-related and\n formatting-related features.",
        name:"frozenFields",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridField.imageWidth":{
        ref:"attr:ListGridField.imageWidth",
        flags:"IRW",
        description:"Width of images shown for fieldTypes image and imageFile in this field.\n <P>\n If set to a String, assumed to be a property on each record that specifies the image\n width.  For example, if <code>field.imageWidth</code> is \"logoWidth\",\n <code>record.logoWidth</code> will control the width of the image.",
        name:"imageWidth",
        seeAlso:[
            {
                ref:"attr:ListGrid.imageSize",
                description:null
            },
            {
                ref:"attr:ListGridField.imageSize",
                description:null
            },
            {
                ref:"attr:ListGridField.imageHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:ButtonItem.baseStyle":{
        ref:"attr:ButtonItem.baseStyle",
        flags:"IRW",
        description:"Optional <code>baseStyle</code> will be applied to the button.",
        name:"baseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ButtonItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.cancelEditingConfirmationMessage":{
        ref:"attr:ListGrid.cancelEditingConfirmationMessage",
        flags:"IRW",
        description:"If this is an editable listGrid, and <code>this.confirmCancelEditing</code> is true\n this property is used as the message to display in the confirmation dismissal prompt.",
        name:"cancelEditingConfirmationMessage",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"Cancelling this edit will discard unsaved changes for this record. Continue?",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing",
            "i18nMessages"
        ]
    },
    "method:Calendar.next":{
        ref:"method:Calendar.next",
        flags:"",
        description:" Move to the next day, week, or month, depending on which tab is selected.\n\n",
        name:"next",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:DetailViewerField.value":{
        ref:"attr:DetailViewerField.value",
        flags:"IR",
        description:"When a field specifies its ${isc.DocUtils.linkForRef('attr:DetailViewerField.type')} to be \"header\", the value of\n this attribute specifies the header text.",
        name:"value",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"undefined\"",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "attr:ListPropertiesPane.startNumberField":{
        ref:"attr:ListPropertiesPane.startNumberField",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:SpinnerItem')} used to modify the starting value of the list.\n <p>\n ${isc.DocUtils.linkForRef('attr:ListPropertiesPane.startNumberFieldTitle','startNumberFieldTitle')} is a\n ${isc.DocUtils.linkForRef('group:autoChildUsage','passthrough')} for the field's ${isc.DocUtils.linkForRef('attr:FormItem.title','title')}.",
        name:"startNumberField",
        seeAlso:[
        ],
        valueType:"AutoChild SpinnerItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesPane"
    },
    "attr:Gauge.labelSuffix":{
        ref:"attr:Gauge.labelSuffix",
        flags:"IRW",
        description:"The label suffix.",
        name:"labelSuffix",
        setter:[
            "setLabelSuffix"
        ],
        seeAlso:[
            {
                ref:"method:Gauge.formatLabelContents",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"%\"",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "classMethod:NumberUtil.parseFloat":{
        ref:"classMethod:NumberUtil.parseFloat",
        flags:"",
        description:" Parse string that contains float number. This method correctly handles locale based\n separators, decimal points and currency symbol.\n\n",
        name:"parseFloat",
        seeAlso:[
        ],
        params:[
            {
                description:"the string to parse",
                optional:false,
                name:"string",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"parsed number as a Number",
            type:"float"
        },
        type:"classMethod",
        definingClass:"class:NumberUtil"
    },
    "attr:ListGrid.showSortArrow":{
        ref:"attr:ListGrid.showSortArrow",
        flags:"IRW",
        description:"Indicates whether a sorting arrow should appear for the listGrid, and its\n location. See ${isc.DocUtils.linkForRef('type:SortArrow')} for details.\n <P>\n Clicking the sort arrow reverses the direction of sorting for the current sort\n column (if any), or sorts the listGrid by its first sortable column. The arrow\n image on the button indicates the current direction of sorting.\n If undefined, the sort arrow will show up in the sorted field, and the\n corner sort button will be displayed if a vertical scrollbar is being displayed",
        name:"showSortArrow",
        seeAlso:[
        ],
        valueType:"SortArrow",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "sorting",
            "appearance"
        ]
    },
    "attr:TileLayout.animateTileChange":{
        ref:"attr:TileLayout.animateTileChange",
        flags:"IRWA",
        description:"If set, tiles animate to their new positions when a tile is added, removed, or reordered via\n drag and drop.",
        name:"animateTileChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "appearance"
        ]
    },
    "method:DrawOval.getCenter":{
        ref:"method:DrawOval.getCenter",
        flags:"",
        description:" Get the center of the oval.\n",
        name:"getCenter",
        seeAlso:[
        ],
        returns:{
            description:"the center point",
            type:"Point"
        },
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:ListGrid.saveRequestProperties":{
        ref:"attr:ListGrid.saveRequestProperties",
        flags:"IRWA",
        description:"For editable grids with a specified ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')}, where\n ${isc.DocUtils.linkForRef('attr:ListGrid.saveLocally')} is false, this attribute may be used to specify standard\n DSRequest properties to apply to all save operations performed by this grid (whether\n triggered by user interaction, or explicit saveEdits or saveAllEdits call).\n <P>\n An example usage would be to customize the prompt displayed while saving is in progress\n if ${isc.DocUtils.linkForRef('attr:ListGrid.waitForSave')} is true.\n <P>\n Note that for more advanced customization of save operations,\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.addOperation')} and ${isc.DocUtils.linkForRef('attr:DataBoundComponent.updateOperation')}\n are available to developers, allowing specification of an explicit ${isc.DocUtils.linkForRef('class:OperationBinding')}\n for the add / update operation performed on save.",
        name:"saveRequestProperties",
        seeAlso:[
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "dataBinding",
            "editing"
        ]
    },
    "attr:DrawPane.drawingHeight":{
        ref:"attr:DrawPane.drawingHeight",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:DrawPane.canDragScroll','canDragScroll')} is enabled, this is the height of the area\n in viewbox coordinates that can be accessed through drag-scrolling.",
        name:"drawingHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1000",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('ZoomAndPan')}"
        ],
        definingClass:"class:DrawPane"
    },
    "attr:DateChooser.weekHeaderStyle":{
        ref:"attr:DateChooser.weekHeaderStyle",
        flags:"IRW",
        description:"Base CSS style applied to the header of the \n ${isc.DocUtils.linkForRef('attr:DateChooser.showWeekChooser','fiscal or calendar week column')} in the\n ${isc.DocUtils.linkForRef('attr:DateChooser.dateGrid','calendar view')}.",
        name:"weekHeaderStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:TabSet.moreTabPane":{
        ref:"attr:TabSet.moreTabPane",
        flags:"R",
        description:"Pane contents for the \"more\" tab based on a VLayout. Typically contains\n a ${isc.DocUtils.linkForRef('class:NavigationBar')} and ${isc.DocUtils.linkForRef('class:TableView')}.",
        name:"moreTabPane",
        seeAlso:[
        ],
        valueType:"AutoChild VLayout",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:SplitPane.detailPane":{
        ref:"attr:SplitPane.detailPane",
        flags:"IRW",
        description:"The right-hand of the two panes managed by this widget, used for viewing details.",
        name:"detailPane",
        setter:[
            "setDetailPane"
        ],
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "attr:CubeGrid.hideEmptyAxis":{
        ref:"attr:CubeGrid.hideEmptyAxis",
        flags:"IR",
        description:"With ${isc.DocUtils.linkForRef('attr:CubeGrid.hideEmptyFacetValues')}, controls on which axis hiding of empty values is applied,\n \"row\" (only empty rows are hidden), \"column\" (only empty columns are hidden) or both\n (the default).",
        name:"hideEmptyAxis",
        seeAlso:[
        ],
        valueType:"Axis",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "attr:RelativeDateItem.showChooserWeekPicker":{
        ref:"attr:RelativeDateItem.showChooserWeekPicker",
        flags:"IRW",
        description:"When set to true, show a button that allows the calendar to be navigated by week or\n fiscal week, depending on the value of ${isc.DocUtils.linkForRef('attr:RelativeDateItem.showChooserFiscalYearPicker')}.",
        name:"showChooserWeekPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:DSResponse.status":{
        ref:"attr:DSResponse.status",
        flags:"IR",
        description:"Same meaning as ${isc.DocUtils.linkForRef('attr:RPCResponse.status')}, except DSResponses have additional error codes,\n such as ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_VALIDATION_ERROR','validation failure')}.",
        name:"status",
        seeAlso:[
            {
                ref:"group:dataSourceOperations",
                description:"for standard return types for DataSource Operations"
            }
        ],
        valueType:"int",
        defaultValue:null,
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "errorHandling"
        ]
    },
    "attr:DynamicForm.disableValidation":{
        ref:"attr:DynamicForm.disableValidation",
        flags:"IRW",
        description:"If set to true, client-side validators will not run on the form when validate() is\n called.  Server-side validators (if any) will still run on attempted save.",
        name:"disableValidation",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            },
            {
                ref:"method:DynamicForm.submit",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "method:EditContext.serializeEditNodesAsJSON":{
        ref:"method:EditContext.serializeEditNodesAsJSON",
        flags:"",
        description:" Serialize the provided ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} to a JSON\n representation of ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')}. Note that the\n EditNodes must have been added to this EditContext. The result can be\n supplied to ${isc.DocUtils.linkForRef('method:EditContext.addPaletteNodesFromJSON','addPaletteNodesFromJSON()')} to\n recreate the EditNodes.\n\n",
        name:"serializeEditNodesAsJSON",
        seeAlso:[
        ],
        params:[
            {
                description:"EditNodes to be serialized",
                optional:false,
                name:"nodes",
                defaultValue:null,
                type:"Array of EditNode"
            },
            {
                description:"If true, specify DataSources in full rather than                               assuming they can be downloaded from the server.\n                               Defaults to false.",
                optional:true,
                name:"serverless",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"a JSON representtion of the provided EditNodes",
            type:"String"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "method:ListGrid.refreshCell":{
        ref:"method:ListGrid.refreshCell",
        flags:"",
        description:" Refresh an individual cell without redrawing the grid.\n <P>\n The cell's value, CSS class, and CSS text will be refreshed, to the current values returned\n by getCellValue(), getCellStyle() and getCellCSSText() respectively.\n\n",
        name:"refreshCell",
        seeAlso:[
            {
                ref:"method:ListGrid.refreshCellStyle",
                description:"to update just styling"
            }
        ],
        params:[
            {
                description:"row number of cell to refresh",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of cell to refresh",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('calculatedCellValue')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "method:CellSelection.selectionChanged":{
        ref:"method:CellSelection.selectionChanged",
        flags:"",
        description:" Observable handler fired whenever the cell selection is modified\n\n",
        name:"selectionChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "attr:ResultTree.childCountProperty":{
        ref:"attr:ResultTree.childCountProperty",
        flags:"IR",
        description:"When using ${isc.DocUtils.linkForRef('type:FetchMode','fetchMode:\"paged\"')} and providing multiple levels of the tree in\n one DSResponse, <code>childCountProperty</code> must be set for any folders that include\n only a partial list of children.\n For a deeper discussion see the <b>Paging large sets of children</b> section of the\n ${isc.DocUtils.linkForRef('group:treeDataBinding')} overview.",
        name:"childCountProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"childCount\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('multiLevelChildPaging')}"
        ],
        definingClass:"class:ResultTree"
    },
    "method:MetricSettings.setStacked":{
        ref:"method:MetricSettings.setStacked",
        flags:"",
        description:" Method to change ${isc.DocUtils.linkForRef('attr:MetricSettings.stacked','stacked')}. Use null to\n apply a default value for the current ${isc.DocUtils.linkForRef('type:ChartType','chartType')}.\n\n",
        name:"setStacked",
        seeAlso:[
        ],
        params:[
            {
                description:"new value",
                optional:false,
                name:"stacked",
                defaultValue:null,
                type:"boolean or null"
            }
        ],
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "attr:CanvasItem.canvasProperties":{
        ref:"attr:CanvasItem.canvasProperties",
        flags:"IRW",
        description:"Properties to apply to this canvas on creation if this.canvas is not already a canvas \n instance.",
        name:"canvasProperties",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"{}",
        type:"attr",
        definingClass:"class:CanvasItem"
    },
    "method:ListGrid.getEditorValueMap":{
        ref:"method:ListGrid.getEditorValueMap",
        flags:"A",
        description:"\n  Returns the valueMap to display for a field when it is displayed in the editor while\n  editing some record.<br>\n  Called when a user starts to edit a field, or whenever the field valueMap is updated via\n  a call to ${isc.DocUtils.linkForRef('method:ListGrid.setValueMap')} or ${isc.DocUtils.linkForRef('method:ListGrid.setEditorValueMap')}.\n  Default implementation will return the <code>field.editorValueMap</code> if specified, otherwise\n  <code>field.valueMap</code> - can be overridden to provide a\n  different specific valueMap for some field based on the record/field data.\n\n",
        name:"getEditorValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"field definition field for which we need a valueMap",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"Field values for record being edited. Note that this will include                              the current edit values for fields that have not yet been saved.\n                              May be null, if editing a new record.",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"ValueMap for the edit field (or null if no valueMap required)",
            type:"ValueMap"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:Scrollbar.scrollTarget":{
        ref:"attr:Scrollbar.scrollTarget",
        flags:"IRWA",
        description:"The widget whose contents should be scrolled by this scrollbar. The scrollbar thumb\n is sized according to the amount of visible vs. scrollable content in this widget.",
        name:"scrollTarget",
        setter:[
            "setScrollTarget"
        ],
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "method:FormItem.formatEditorValue":{
        ref:"method:FormItem.formatEditorValue",
        flags:"",
        description:" Allows customization of how the FormItem's stored value is formatted for display\n in an editable text entry area, such as a ${isc.DocUtils.linkForRef('class:TextItem')} ${isc.DocUtils.linkForRef('class:TextAreaItem')}.  For\n display values which will not be directly editable by the user, use\n ${isc.DocUtils.linkForRef('method:FormItem.formatValue')} instead.\n <p>\n When customizing how values are displayed during editing, it is almost always necessary\n to provide a ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} as well, in order to convert a formatted\n and subsequently user-edited value back to a stored value.\n\n",
        name:"formatEditorValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Underlying data value to format. May be null.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"The record currently being edited by this form.      Essentially the form's current values object.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"pointer to the DynamicForm",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"pointer to the FormItem",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        returns:{
            description:"display value to show in the editor.",
            type:"string"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:DataSource.addGlobalId":{
        ref:"attr:DataSource.addGlobalId",
        flags:"IRA",
        description:"Whether to make this DataSource available as a global variable for convenience.",
        name:"addGlobalId",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "identity"
        ]
    },
    "attr:FormItem.validators":{
        ref:"attr:FormItem.validators",
        flags:"IR",
        description:"Validators for this form item.  \n <P>\n <b>Note:</b> these validators will only be run on the client; to\n do real client-server validation, validators must be specified on the DataSource.",
        name:"validators",
        seeAlso:[
        ],
        valueType:"Array of Validator",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:SelectItem.openOnSpace":{
        ref:"attr:SelectItem.openOnSpace",
        flags:"IRW",
        description:"Causes the PickList to open when the spacebar is pressed, default false.  \n <P>\n For native OS widgets, space opens the PickList on Macs, but not on Windows.  Consider\n using this setting if your users are almost entirely Mac users, or enabling it only for\n users running MacOS.  \n <P>\n However, before using this setting, consider that it means that Spacebar will not be able\n to be used for another purpose when focus is in a SelectItem.",
        name:"openOnSpace",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "method:ListGrid.setSelectionType":{
        ref:"method:ListGrid.setSelectionType",
        flags:"A",
        description:" Changes selectionType on the fly.\n",
        name:"setSelectionType",
        seeAlso:[
        ],
        params:[
            {
                description:"New selection style.",
                optional:false,
                name:"selectionType",
                defaultValue:null,
                type:"SelectionStyle"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DatabaseBrowser.dbName":{
        ref:"attr:DatabaseBrowser.dbName",
        flags:"IR",
        description:"The name of the database configuration to use.  Database configurations are set up \n through the \"Databases\" tab of the Developer Console.  If not set, defaults to the \n current default database configuration.\n <p>\n Note that this property only applies where ${isc.DocUtils.linkForRef('attr:DatabaseBrowser.serverType')} is \"sql\"",
        name:"dbName",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "attr:Img.showTitle":{
        ref:"attr:Img.showTitle",
        flags:"IRWA",
        description:"Determines whether any specified ${isc.DocUtils.linkForRef('method:StatefulCanvas.getTitle','title')} will be \n displayed for this component.<br>\n Applies to Image-based components only, where the title will be rendered out in a label\n floating over the component",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Img"
    },
    "method:ListGrid.sorterClick":{
        ref:"method:ListGrid.sorterClick",
        flags:"A",
        description:" Notification method fired when the user clicks on the corner\n ${isc.DocUtils.linkForRef('attr:ListGrid.sorterConstructor','sort button')}.  Return false to suppress the sort.\n\n",
        name:"sorterClick",
        seeAlso:[
        ],
        returns:{
            description:"return false to suppress the sort",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events",
            "sorting"
        ]
    },
    "attr:ListGrid.animateFolders":{
        ref:"attr:ListGrid.animateFolders",
        flags:"IRW",
        description:"If true, when folders are opened / closed children will be animated into view.\n <P>\n For a ListGrid, this property applies when ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grouping')} is enabled.",
        name:"animateFolders",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "animation"
        ]
    },
    "method:FilterBuilder.getEditorType":{
        ref:"method:FilterBuilder.getEditorType",
        flags:"",
        description:" Returns the type of editor to use for the field.\n <P>\n Default behavior is to use the ${isc.DocUtils.linkForRef('attr:Operator.editorType')} for a custom operator, otherwise, \n use ${isc.DocUtils.linkForRef('class:RelativeDateItem')} for before/after/between operators on date fields, otherwise, \n use the same editor as would be chosen by a ${isc.DocUtils.linkForRef('class:SearchForm')}.\n\n",
        name:"getEditorType",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSourceField definition",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DataSourceField"
            },
            {
                description:"${isc.DocUtils.linkForRef('type:OperatorId')} for the chosen operator",
                optional:false,
                name:"operatorId",
                defaultValue:null,
                type:"OperatorId"
            }
        ],
        returns:{
            description:"SmartClient class to use (must be subclass of FormItem)",
            type:"SCClassName"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:Portlet.destroyOnClose":{
        ref:"attr:Portlet.destroyOnClose",
        flags:"IRW",
        description:"Whether to call ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} when closing the Portlet.",
        name:"destroyOnClose",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Portlet"
    },
    "attr:TabSet.canReorderTabs":{
        ref:"attr:TabSet.canReorderTabs",
        flags:"IR",
        description:"If true, tabs can be reordered by dragging on them.\n <P>\n To disallow drag-reorder of a specific tab, see ${isc.DocUtils.linkForRef('attr:Tab.canReorder')}.",
        name:"canReorderTabs",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "dragdrop"
        ]
    },
    "attr:DataSource.serverConstructor":{
        ref:"attr:DataSource.serverConstructor",
        flags:"IR",
        description:"This property allows you to write and use custom DataSource subclasses on the server, by \n specifying either <ul>\n <li>the fully-qualified name of the DataSource subclass that should be instantiated\n server-side for this dataSource, or</li>\n <li>the token \"spring:\" followed by a valid Spring bean ID, if you wish to instantiate \n your custom dataSource object using Spring dependency injection.  For example, \n <code>\"spring:MyDataSourceBean\"</code>.  See also ${isc.DocUtils.linkForRef('group:serverInit')} for special\n concerns with framework initialization when using Spring.  It is also particularly important\n that you read the discussion of caching and thread-safety linked to below, as there are \n special considerations in this area when using Spring.</li>\n </ul>\n <p>\n One reason you might wish to do this would be to override the validate() method to provide \n some arbitrary custom validation (such as complex database lookups, validation embedded in \n legacy applications, etc).  It is also possible - though obviously a more substantial task -\n to override the execute() method in your custom DataSource.  This is one way of creating \n a completely customized DataSource implementation.\n <p>\n <b>Note:</b> If you use this property, you are responsible for making sure that it refers to\n a valid server-side class that extends <code>com.isomorphic.datasource.BasicDataSource</code>,\n or to a Spring bean of the same description.\n If your implementation relies on methods or state only present in certain specialized \n subclasses of DataSource (for example, you want the normal behavior and features of a \n HibernateDataSource, but with a specialized validate() method), then you should extend the \n subclass rather than the base class.\n <P>\n NOTE: Please take note of the points made in \n ${isc.DocUtils.linkForRef('group:serverDataSourceImplementation','this discussion')} of caching and thread-safety\n issues in server-side DataSources.",
        name:"serverConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "method:DynamicForm.setFieldErrors":{
        ref:"method:DynamicForm.setFieldErrors",
        flags:"",
        description:" Set field validation error[s] for some field.<br>\n The errors parameter may be passed in as a string (a single error message), or an array of\n strings.<br>\n The showErrors parameter allows the errors to be displayed immediately. Alternatively, an\n explicit call to ${isc.DocUtils.linkForRef('method:DynamicForm.showFieldErrors')} will display the errors for this field.\n",
        name:"setFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"field to apply the new errors to",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"errors to apply to the field in question",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"string | array of strings"
            },
            {
                description:"If true this method will fall through to ${isc.DocUtils.linkForRef('method:DynamicForm.showFieldErrors')}  to update the display",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "attr:MultiGroupPanel.addLevelButton":{
        ref:"attr:MultiGroupPanel.addLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for adding new levels\n to the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.addLevelButtonProperties</code> and \n <code>multiGroupPanel.addLevelButtonDefaults</code>.",
        name:"addLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupPanel"
    },
    "attr:Canvas.destroyed":{
        ref:"attr:Canvas.destroyed",
        flags:"RA",
        description:"If this property is set to <code>true</code>, the ${isc.DocUtils.linkForRef('method:Canvas.destroy','destroy()')} method\n has been called on this canvas. This implies the canvas is no longer valid. Its ID has been\n removed from global scope, and calling standard canvas APIs on it is likely to result in\n errors.",
        name:"destroyed",
        seeAlso:[
            {
                ref:"method:Canvas.destroy",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "attr:ListGrid.sorterConstructor":{
        ref:"attr:ListGrid.sorterConstructor",
        flags:"IR",
        description:"Widget class for the corner sort button, if showing.  This button displays the current\n sort direction of the primary sort field (either the only sorted field or the first in a\n ${isc.DocUtils.linkForRef('attr:ListGrid.canMultiSort','multi-sort')} grid) and reverses the direction of that field\n when clicked.  For consistent appearance, this\n is usually set to match ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonConstructor')}",
        name:"sorterConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"Button",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "attr:TileLayout.tileSize":{
        ref:"attr:TileLayout.tileSize",
        flags:"IR",
        description:"Size of each tile in pixels.  Depending on the ${isc.DocUtils.linkForRef('type:LayoutPolicy')}, <code>tileSize</code>\n may be taken as a maximum, minimum or exact size of tiles, or may be irrelevant.\n <P>\n Width and height may be separately set via ${isc.DocUtils.linkForRef('attr:TileLayout.tileHeight')} and ${isc.DocUtils.linkForRef('attr:TileLayout.tileWidth')}.",
        name:"tileSize",
        setter:[
            "setTileSize"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"50",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:SelectItem.pickerIconSrc":{
        ref:"attr:SelectItem.pickerIconSrc",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:SelectItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n ${isc.DocUtils.linkForRef('attr:FormItemIcon.src','src')} of the picker icon image to be displayed.",
        name:"pickerIconSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/DynamicForm/SelectItem_PickButton_icon.gif\"",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:ImgButton.iconWidth":{
        ref:"attr:ImgButton.iconWidth",
        flags:"IR",
        description:"Width in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "method:Canvas.willAcceptDrop":{
        ref:"method:Canvas.willAcceptDrop",
        flags:"A",
        description:"\n Returns true if the widget object being dragged can be dropped on this widget, and\n false otherwise.  The default implementation of this method simply compares the\n ${isc.DocUtils.linkForRef('attr:Canvas.dragType')} of the <code>dragTarget</code> (the component being dragged from)\n with the list of ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes')} on this Canvas.  If the ${isc.DocUtils.linkForRef('attr:Canvas.dropTypes')}\n list contains the ${isc.DocUtils.linkForRef('attr:Canvas.dragType')} value, then this method returns true.  Otherwise it\n returns false.\n\n",
        name:"willAcceptDrop",
        seeAlso:[
            {
                ref:"attr:Canvas.dragType",
                description:null
            },
            {
                ref:"attr:Canvas.dropTypes",
                description:null
            },
            {
                ref:"attr:Canvas.dragTarget",
                description:null
            },
            {
                ref:"method:Canvas.drop",
                description:null
            }
        ],
        returns:{
            description:"true if the widget object being dragged can be dropped on this widget,                      false otherwise",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ListGrid.headerMenuButtonIcon":{
        ref:"attr:ListGrid.headerMenuButtonIcon",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, this property governs the icon shown on the\n auto-generated <code>headerMenuButton</code>",
        name:"headerMenuButtonIcon",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"[SKIN]/ListGrid/headerMenuButton_icon.gif\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "attr:Calendar.overlapSortSpecifiers":{
        ref:"attr:Calendar.overlapSortSpecifiers",
        flags:"IRW",
        description:"A set of ${isc.DocUtils.linkForRef('object:SortSpecifier','sort-specifiers')} for customizing the render order of events\n that overlap.\n <P>\n In ${isc.DocUtils.linkForRef('class:Timeline','timelines')}, this dictates the vertical rendering order of \n overlapped events in each ${isc.DocUtils.linkForRef('object:Lane','lane')}.\n <P>\n In ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day')} and ${isc.DocUtils.linkForRef('attr:Calendar.weekView','week')} views, it dictates the\n horizontal rendering order of overlapped events in each column or Lane.\n <P>\n By default, events that share space in a Lane or column are rendered from top to bottom,\n or left to right according to their ${isc.DocUtils.linkForRef('attr:Calendar.startDateField','start-dates')} - the earliest in a \n given lane appears top-most in that lane, or left-most in its column.\n <P>\n Providing <code>overlapSortSpecifiers</code> allows for the events to be ordered by one or\n more of the fields stored on the events, or in the underlying ${isc.DocUtils.linkForRef('class:DataSource','data-source')},\n if the Calendar is databound.",
        name:"overlapSortSpecifiers",
        seeAlso:[
        ],
        valueType:"Array of SortSpecifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:CellSelection.getSelectedRecord":{
        ref:"method:CellSelection.getSelectedRecord",
        flags:"",
        description:" Returns the first record that has any cells selected.\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"first selected record, or null if nothing selected",
            type:"ListGridRecord"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "attr:MenuButton.height":{
        ref:"attr:MenuButton.height",
        flags:"IRW",
        description:"Default height of the button.",
        name:"height",
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"22",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "group:loadingOptionalModules":{
        ref:"group:loadingOptionalModules",
        title:"Loading Optional Modules",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"<smartclient>\n <p>If your SmartClient installation includes an optional module, it must be explicitly loaded in\n your application's bootstrap page for it to be used. The table below describes how to load each module,\n either loading SmartClient through bare SCRIPT calls, or through the loadISC facility\n available on web servers supporting JSP.\n <h3>Java (JSP) backend</h3>\n <P>If you have a Java backend (JSP), invoke &lt;isomorphic:loadISC&gt; with the parameters\n indicated.\n <P>\n Note that if using ${isc.DocUtils.linkForRef('group:loadISCTag')}, multiple optional modules can be included \n in a single tag - for example\n <pre>\n     &lt;isomorphic:loadISC includeModules=\"Charts,Analytics\"/&gt;\n </pre>\n Also note that the loadISC tag requires the special isc tagLib as \n described ${isc.DocUtils.linkForRef('group:jspTags','here')}.\n <P>\n <h3>Non-Java backend</h3>\n To load optional modules with a Non-Java backend, add the specified \n &lt;SCRIPT&gt; block(s) at the end of your existing SmartClient &lt;SCRIPT&gt; loads in your\n bootstrap HTML file. \n Replace \"../isomorphic/\" with the value of window.isomorphicDir, as appropriate.\n <P>\n <h3>Modules</h3>\n <table class=\"normal\" border=1>\n <tr>\n <td><b>Drawing</b><br>\n Required for ${isc.DocUtils.linkForRef('class:DrawPane')} and ${isc.DocUtils.linkForRef('class:DrawItem')}.\n <P>\n <i>JSP tag:</i> <pre>&lt;isomorphic:loadISC includeModules=\"Drawing\"/&gt;</pre>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_Drawing.js\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n </tr>\n <tr>\n <td><b>Charts</b><br>\n Required for ${isc.DocUtils.linkForRef('class:FacetChart')} and ${isc.DocUtils.linkForRef('class:FusionChart')}.\n Note that ${isc.DocUtils.linkForRef('class:FacetChart')} also requires the <code>Drawing</code> module to be loaded\n before this module.\n Note that ${isc.DocUtils.linkForRef('class:FusionChart')} requires <code>PluginBridges</code> module be loaded before this \n module.\n <P>\n <i>JSP tag:</i> <pre>&lt;isomorphic:loadISC includeModules=\"Charts\"/&gt;</pre>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_Charts.js\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n </tr>\n <tr>\n <td><b>Analytics</b><br>\n Required for ${isc.DocUtils.linkForRef('class:CubeGrid')}. Note that if charting is also required, the <code>Charts</code>\n module should be loaded before this one.\n <P>\n <i>JSP tag:</i> <pre>&lt;isomorphic:loadISC includeModules=\"Analytics\"/&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_Analytics.js\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n </tr>\n <tr>\n <td><b>RealtimeMessaging</b> (see ${isc.DocUtils.linkForRef('group:messaging','Messaging')})\n <P>\n <i>JSP tag:</i> <pre>&lt;isomorphic:loadISC includeModules=\"RealtimeMessaging\"/&gt;</pre>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_RealtimeMessaging.js\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n </tr>\n <tr>\n <td><b>PluginBridges</b><br>\n Required for all ${isc.DocUtils.linkForRef('class:BrowserPlugin')} derivatives (such as ${isc.DocUtils.linkForRef('class:Applet')} and ${isc.DocUtils.linkForRef('class:Flashlet')}) and\n also for ${isc.DocUtils.linkForRef('class:FusionChart')} support.\n <P>\n <i>JSP tag:</i> <pre>&lt;isomorphic:loadISC includeModules=\"PluginBridges\"/&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_PluginBridges.js\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n </tr>\n <tr>\n <td><b>FileLoader</b><br>\n Part of the ${isc.DocUtils.linkForRef('group:networkPerformance','Network Performance')} subsystem. Note that unlike other\n optional modules the FileLoader can be loaded without loading the rest of the SmartClient\n modules. See ${isc.DocUtils.linkForRef('class:FileLoader')}\n for more information on how this special class is used.\n <P>\n <i>JSP tag(s):</i> <pre>&lt;isomorphic:loadISC cacheOnly=\"true\"/&gt;</pre> or \n <pre>&lt;isomorphic:loadISC deferLoad=\"true\"/&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_FileLoader.js\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n </tr>\n <tr>\n <td><b>Workflow</b><br>\n Typical \"workflow\" engines represent a persistent, long-running, multi-party process.\n See ${isc.DocUtils.linkForRef('class:Process')} for more information on how workflow classes are used.\n <P>\n <i>JSP tag:</i> <pre>&lt;isomorphic:loadISC includeModules=\"Workflow\"/&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_Workflow.js\"&gt;&lt;/SCRIPT&gt;</pre>\n <P>\n The ability to define a workflow in XML is Pro+ only, in LGPL the workflow engine can only\n be used programmatically\n </td>\n </tr>\n <tr>\n <td><b>Tools</b><br>\n Required for ${isc.DocUtils.linkForRef('group:devTools','Dashboards & Tools Framework')}. This module should always be included\n last in a group of optional modules.\n <P>\n <i>JSP tag:</i> <pre>&lt;isomorphic:loadISC includeModules=\"Tools\"/&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/system/modules/ISC_Tools.js\"&gt;&lt;/SCRIPT&gt;</pre>\n <P>\n <P>\n <b>Note:</b> Using these tools to edit hierarchies of SmartClient components and generate Component XML\n for them also requires the system schema to be loaded.\n <P>\n <i>JSP tag:</i> <pre>&lt;script&gt;&lt;isomorphic:loadSystemSchema /&gt;&lt;/script&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/DataSourceLoader?dataSource=$systemSchema\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n </tr>\n </table>\n </smartclient>\n <smartgwt>\n <p>If your Smart GWT install includes an optional module, it must be added as an &lt;inherits&gt;\n tag in your <i>moduleName</i>.gwt.xml module file for it to be used. Some optional modules \n require an additional .jar file (eg analytics.jar), whereas some are bundled in smartgwt.jar\n automatically. Where applicable, additional module .jar files are included in\n Evaluation SDKs but are separate downloads when using an Optional Module with Power or Enterprise.\n The table below describes what &lt;inherits&gt; to add for each module.</p>\n <table class=\"normal\" border=1>\n <tr>\n <td><i><b>Module</b></i></td>\n <td><i><b>Add this to your .gwt.xml file</b></i></td>\n </tr>\n <tr>\n <td><b>Drawing</b> (included in <code>smartgwt.jar</code>)<br>\n Required for ${isc.DocUtils.linkForRef('class:DrawPane')} and ${isc.DocUtils.linkForRef('class:DrawItem')}.\n </td>\n <td><pre>&lt;inherits name=\"com.smartgwt.Drawing\"/&gt;</pre></td>\n </tr>\n <tr>\n <td><b>PluginBridges</b> (included in <code>smartgwt.jar</code>)<br>\n Required for all ${isc.DocUtils.linkForRef('class:BrowserPlugin')} derivatives (such as ${isc.DocUtils.linkForRef('class:Applet')} and ${isc.DocUtils.linkForRef('class:Flashlet')}) and\n also for ${isc.DocUtils.linkForRef('class:FusionChart')} support.\n </td>\n <td><pre>&lt;inherits name=\"com.smartgwt.PluginBridgesWidgets\"/&gt;</pre></td>\n </tr>\n <tr>\n <td><b>Charts</b> (included in <code>smartgwt.jar</code>)<br>\n Required for ${isc.DocUtils.linkForRef('class:FacetChart')} and ${isc.DocUtils.linkForRef('class:FusionChart')}.\n Note that ${isc.DocUtils.linkForRef('class:FacetChart')} also requires the <code>Drawing</code> module to be loaded\n before this module.\n Note that ${isc.DocUtils.linkForRef('class:FusionChart')} also requires the <code>PluginBridges</code> module to be\n loaded before this module.\n </td>\n <td><pre>&lt;inherits name=\"com.smartgwt.Charts\"/&gt;</pre></td>\n </tr>\n <tr>\n <td><b>Analytics</b> (requires <code>analytics.jar</code>)<br>\n See ${isc.DocUtils.linkForRef('class:CubeGrid')}. Note that if charting is also required, the <code>Charts</code>\n module should be loaded before this one.</td>\n <td><pre>&lt;inherits name=\"com.smartgwt.Analytics\"/&gt;</pre></td>\n </tr>\n <tr>\n <td><b>RealtimeMessaging</b> (requires <code>messaging.jar</code>)</td>\n <td><pre>&lt;inherits name=\"com.smartgwt.RealtimeMessaging\"/&gt;</pre></td>\n </tr>\n <tr>\n <td><b>Workflow</b> (included in <code>smartgwt.jar</code>)<br>\n Required for ${isc.DocUtils.linkForRef('class:Process')}. The ability to define a workflow in XML is Pro+ only, in LGPL\n the workflow engine can only be used programmatically.\n </td>\n <td><pre>&lt;inherits name=\"com.smartgwt.Workflow\"/&gt;</pre></td>\n </tr>\n <tr>\n <td><b>Tools</b> (included in <code>smartgwt.jar</code>)<br>\n Required for ${isc.DocUtils.linkForRef('group:devTools')}. This module should always be listed after any\n other modules from above in your <i>moduleName</i>.gwt.xml file.\n <P>\n Using these tools to edit hierarchies of SmartClient components and generate Component XML\n for them also requires the system schema to be loaded.\n <P>\n <i>JSP tag:</i> <pre>&lt;script&gt;&lt;isomorphic:loadSystemSchema /&gt;&lt;/script&gt;</pre>\n <P>\n <i>HTML tag:</i> <pre>&lt;SCRIPT SRC=\"../isomorphic/DataSourceLoader?dataSource=$systemSchema\"&gt;&lt;/SCRIPT&gt;</pre>\n </td>\n <td><pre>&lt;inherits name=\"com.smartgwt.Tools\"/&gt;</pre></td>\n </tr>\n </table>\n </smartgwt>",
        name:"loadingOptionalModules",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ColumnTree.getColumnTitle":{
        ref:"method:ColumnTree.getColumnTitle",
        flags:"",
        description:" Returns the title to show for the header of indicated column.  Only called if\n ${isc.DocUtils.linkForRef('method:ColumnTree.shouldShowHeader')} returns true for this column.\n <P>\n By default, returns ${isc.DocUtils.linkForRef('attr:ColumnTree.firstColumnTitle')} for the first column, and for subsequent\n columns, the result of ${isc.DocUtils.linkForRef('method:Tree.getTitle','this.data.getTitle()')} called on the\n <code>node</code> passed to this function.\n \n",
        name:"getColumnTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"parent node for the nodes to be shown in the column",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"index of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "attr:RPCRequest.timeout":{
        ref:"attr:RPCRequest.timeout",
        flags:"IRWA",
        description:"Sets the timeout on this request.  Default is to use ${isc.DocUtils.linkForRef('classAttr:RPCManager.defaultTimeout')}.  \n <p>\n If you're using ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queuing')}, note that the timeout setting derived\n from the last request in the queue is used for the entire queue.  If you want to override\n the timeout for the queue, make sure to set your override at least on the last request in\n the queue.\n <p>\n For the \"xmlHttpRequest\" ${isc.DocUtils.linkForRef('attr:RPCRequest.transport','transport')}, this timeout can only happen\n if the server actually fails to respond within the specified number of milliseconds.  For\n the \"hiddenFrame\" transport, this timeout will occur for non-200 (HTTP_OK) responses.\n <p>\n If <code>timeout</code> is set to zero, the RPCManager will not enforce a timeout for this\n request.  However, note that all browsers enforce their own timeouts on HTTP requests, and\n may have different timeouts for different kinds of failures (no response at all from server,\n hung response after receiving headers, hung response after receiving partial data, etc).\n Also, intervening web proxies or firewalls may impose timeouts of their own.\n <p>\n As a rough rule of thumb, if your server response will have a lengthy pause before data\n begins to be sent, 1-2 minutes is the maximum allowable pause for a public site and still may\n not work for a minority of users, but up to 4 minutes may be allowable in a controlled\n environment (intranet or extranet with well-known user base).\n <p>\n Above these limits, your code should return some kind of immediate response to the browser,\n then kick off a server-side process to complete processing.  The browser can then either\n poll for completion, or use a server-push notification system such as SmartClient Real-Time\n Messaging (see <a href='http://smartclient.com/product' target='_blank'>http://smartclient.com/product</a>).",
        name:"timeout",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.defaultTimeout",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "method:Calendar.backgroundMouseDown":{
        ref:"method:Calendar.backgroundMouseDown",
        flags:"",
        description:" Callback fired when the mouse button is depressed over a background-cell, ie, one \n without an event.  Return false to cancel the default behavior of allowing sweep\n selection via dragging.\n\n",
        name:"backgroundMouseDown",
        seeAlso:[
        ],
        params:[
            {
                description:"start datetime of the selected slot",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"return false to suppress default behavior of allowing sweep                      selection via dragging.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ImgSectionHeader.showClippedTitleOnHover":{
        ref:"attr:ImgSectionHeader.showClippedTitleOnHover",
        flags:"IRW",
        description:"If true and the title is clipped, then a hover containing the full title of this section header\n is enabled.",
        name:"showClippedTitleOnHover",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ImgSectionHeader",
        groups:[
            "hovers"
        ]
    },
    "attr:CheckboxItem.valueIconWidth":{
        ref:"attr:CheckboxItem.valueIconWidth",
        flags:"IRW",
        description:"Width of the checkbox image.",
        name:"valueIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"13",
        type:"attr",
        definingClass:"class:CheckboxItem",
        groups:[
            "valueIcons"
        ]
    },
    "method:DataBoundComponent.getRecordIndex":{
        ref:"method:DataBoundComponent.getRecordIndex",
        flags:"",
        description:" Get the index of the provided record.\n <P>\n Override in subclasses to provide more specific behavior, for instance, when data holds a\n large number of records\n\n",
        name:"getRecordIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"the record whose index is to be retrieved",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"indexindex of the record, or -1 if not found",
            type:"Number"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:GridRenderer.totalRows":{
        ref:"attr:GridRenderer.totalRows",
        flags:"IRW",
        getter:[
            "getTotalRows"
        ],
        description:"Total number of rows in the grid.<br><br>\n\n NOTE: in order to create a valid grid, you must either provide a totalRows value or implement\n getTotalRows()",
        name:"totalRows",
        seeAlso:[
            {
                ref:"method:GridRenderer.getTotalRows",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:GridRenderer"
    },
    "group:standaloneDataSourceUsage":{
        ref:"group:standaloneDataSourceUsage",
        title:"Standalone DataSource Usage",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        refs:[
        ],
        description:"The DataSource layer can be used in a standalone application separate from a servlet engine,\n for things like Java Swing applications, batch data processing or sending emails based on\n database state.\n <p>\n Note that we do still require <code>servlet-api.jar</code> to be on the classpath of \n standalone applications.  This is only to satisfy class-loading requirements; there are \n cases where running inside a servlet engine allows us to provide extra functionality, such\n as declarative authentication and authorization features, so some classes do have member \n variables or method parameters of types in the Servlet API.  They all operate correctly \n when these variables or parameters are null, but the JVM will still try to load the classes \n and will crash if they are missing.\n <p> \n Using the DataSource layer to run DataSource operations in your standalone applications is\n extremely straightforward.  This example fetches and prints every record from the \n \"customers\" DataSource:\n <pre>\n   public static void main(String[] args) {\n     DataSource ds = DataSourceManager.get(\"customers\");\n     List records = ds.fetch();\n     for (Iterator i = records.iterator; i.hasNext(); ) {\n       System.out.println(i.next());\n     }\n   }\n </pre>\n To make this example fetch just customers in the United States:\n <pre>\n     Map criteria = new HashMap();\n     criteria.put(\"countryCode\", \"US\");\n     List records = ds.fetch(criteria);\n </pre>\n This example shows how to run a specific fetch operation, specifying both selection \n criteria and a sort order, using a <code>DSRequest</code> rather than a <code>DataSource</code> \n convenience method:\n <pre>\n   public static void main(String[] args) {\n     DSRequest dsReq = new DSRequest(\"customers\", \"fetch\");\n     dsReq.setOperationId(\"specialFetch\");\n     Map criteria = new HashMap();\n     criteria.put(\"countryCode\", \"US\");\n     criteria.put(\"region\", \"CA\");\n     dsReq.setCriteria(criteria);\n     dsReq.setSortBy(\"customerName\");\n     List records = dsReq.execute().getDataList();\n   }\n </pre>\n This example shows how to do a simple update:\n <pre>\n   public static void main(String[] args) {\n     DataSource ds = DataSourceManager.get(\"customers\");\n     Map criteria = new HashMap();\n     criteria.put(\"customerNo\", 12345);\n     Map values = new HashMap();\n     values.put(\"creditLimit\", 10000);\n     values.put(\"currencyCode\", \"USD\");\n     ds.update(criteria, values);\n   }\n </pre>\n Finally, this example shows how to perform a specific update operation via a \n <code>DSRequest</code>:\n <pre>\n   public static void main(String[] args) {\n     DSRequest dsReq = new DSRequest(\"customers\", \"update\");\n     dsReq.setOperationId(\"specialUpdate\");\n     Map criteria = new HashMap();\n     criteria.put(\"customerNo\", 12345);\n     Map values = new HashMap();\n     values.put(\"creditLimit\", 10000);\n     values.put(\"currencyCode\", \"USD\");\n     dsReq.setCriteria(criteria);\n     dsReq.setValues(values);\n     dsReq.execute();\n   }\n </pre>\n <b>NOTES</b>\n <p>\n Because we are not running inside a servlet container, SmartClient's built-in logic to \n work out where its application root is does not work.  Therefore, you need to manually \n set a \"webRoot\" in your ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file. \n The webRoot should point\n to the root folder of your application (note for SmartGWT applications, this is typically\n the \"war\" subfolder of your project).  Example entries:<p>\n <code>    webRoot: /home/testUser/myProject</code><p>\n or:<p>\n <code>    webRoot: C:\\Projects\\MyProject\\war</code><p>\n Again in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}, \n you may need to set <code>isomorphicPathRootRelative</code>\n to match the standalone project's layout if you make the standalone mode separate:<p>\n <code>    isomorphicPathRootRelative: myProject/sc</code>\n <p>\n <smartgwt>\n Note that the directory structure that normally appears in \"war/<i>myProject</i>/sc\" in your\n GWT project is required to be present under the configured\n <i>webRoot</i>+<i>isomorphicPathRootRelative</i> directory when running standalone.  This structure is\n normally created by the GWT compiler, by processing &lt;inherits&gt; tags in your .gwt.xml\n that cause resources to be copied from smartgwtee.jar.  If your build/deployment scripts do\n not invoke the GWT compiler these files will not be present, so you will need to either add\n a step to invoke the GWT compiler or manually copy the files.\n </smartgwt>\n You should place the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} file somewhere on your classpath.  \n Typically, the root of your <code>bin</code> or <code>classes</code> folder structure is \n the most suitable place for it.\n <p>\n Both the built-in DataSources and custom DataSources can be used in standalone\n applications, <b>but only if you do not introduce dependencies on the servlet container in\n your DataSource code</b>. For example, if you have a security check in a DMI or custom\n DataSource that depends on checking the current logged-in user, code in a means of bypassing\n this, or create a parallel operationBinding that is accessible only to the superuser.\n <p>\n When you use the DataSource layer in a standalone application, \n ${isc.DocUtils.linkForRef('attr:DataSource.requiresAuthentication','Declarative Security')} is disabled; all operations\n are considered to be valid for use in a standalone application.  Other DataSource features\n that are disabled because they are not relevant in a standalone context are:\n <ul>\n <li>${isc.DocUtils.linkForRef('attr:DSRequestModifier.value','Transaction Chaining')}</li>\n <li>${isc.DocUtils.linkForRef('attr:DataSource.autoJoinTransactions','Transactional persistence')}</li>\n </ul>\n <br>\n <b>Using Spring in a standalone application</b>\n <p>\n In a typical web application, Spring configuration is picked up from an \"applicationContext\" \n file by a servlet or listener, and then made available to the rest of the app via the \n servletContext.  When running standalone, this is not possible, so instead we read the \n applicationContext file manually when we need to, eg, create a DataSource object that is \n configured as a Spring bean.\n <p>\n By default, the framework will look in the \"normal\" place for for this configuration: \n <code>WEB-INF/applicationContext.xml</code>.  If you have changed the location or name \n of this file, and you want to run the application outside of a servlet engine, you can tell\n the framework where to find the configuration file by specifying property \n <code>standalone.spring.applicationContext</code> in your ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.\n The default setting for this property looks like this:<pre>\n    standalone.spring.applicationContext: $webRoot/WEB-INF/applicationContext.xml\n </pre>",
        name:"standaloneDataSourceUsage",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Slider.setShowRange":{
        ref:"method:Slider.setShowRange",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.showRange')} property of the slider\n\n",
        name:"setShowRange",
        seeAlso:[
        ],
        params:[
            {
                description:"show the slider range?",
                optional:false,
                name:"showRange",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:ToolStrip.formWrapper":{
        ref:"attr:ToolStrip.formWrapper",
        flags:"IR",
        description:"DynamicForm instance created by ${isc.DocUtils.linkForRef('method:ToolStrip.addFormItem')} to contain form items for\n display in this toolStrip. Each time addFormItem() is run, a new formWrapper\n autoChild will be created, picking up properties according to the standard\n ${isc.DocUtils.linkForRef('type:AutoChild')} pattern.",
        name:"formWrapper",
        seeAlso:[
        ],
        valueType:"MultiAutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolStrip"
    },
    "method:ListGrid.getDragTrackerTitle":{
        ref:"method:ListGrid.getDragTrackerTitle",
        flags:"",
        description:" Return \"title\" HTML to display as a drag tracker when the user drags some record.<br>\n Default implementation will display the cell value for the title field (see\n ${isc.DocUtils.linkForRef('method:ListGrid.getTitleField')}) for the record(s) being dragged (including any\n icons / custom formatting / styling, etc).\n <p>\n Note: Only called if ${isc.DocUtils.linkForRef('attr:ListGrid.dragTrackerMode')} is set to <code>\"title\"</code>.\n",
        name:"getDragTrackerTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"First selected record being dragged",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row index of first record being dragged",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Title for the row. Default implementation looks at the value of the                  title-field cell for the row.",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dragTracker"
        ]
    },
    "attr:FormItem.title":{
        ref:"attr:FormItem.title",
        flags:"IRW",
        getter:[
            "getTitle"
        ],
        description:"User visible title for this form item.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "basics"
        ]
    },
    "method:ListGrid.getRequiredFieldMessage":{
        ref:"method:ListGrid.getRequiredFieldMessage",
        flags:"",
        description:" Returns the message to display when a user attempts to save a required field with an\n empty value.  By default returns ${isc.DocUtils.linkForRef('classAttr:Validator.requiredField')}.\n",
        name:"getRequiredFieldMessage",
        seeAlso:[
        ],
        params:[
            {
                description:"definition of the field being edited",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"object"
            },
            {
                description:"record object being edited",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"\"Field is required\"",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages",
            "gridValidation"
        ]
    },
    "method:FormItem.stopHover":{
        ref:"method:FormItem.stopHover",
        flags:"A",
        description:" This method is fired when the user rolls off this item (or the title for this item) and\n will clear any hover canvas shown by the item.\n",
        name:"stopHover",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:DataSource.useTestDataFetch":{
        ref:"attr:DataSource.useTestDataFetch",
        flags:"IRW",
        description:"When set, causes a ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','client-only')} or ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData')} DataSource to \n create a second DataSource to perform it's one-time fetch.  By default, this attribute\n will be considered true when clientOnly is true, cacheAllData is false or unset and\n a dataURL or testFileName is specified on the DataSource.",
        name:"useTestDataFetch",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSource",
        groups:[
            "clientData"
        ]
    },
    "attr:Calendar.invalidDateMessage":{
        ref:"attr:Calendar.invalidDateMessage",
        flags:"IR",
        description:"The message to display in the ${isc.DocUtils.linkForRef('attr:Calendar.eventEditor')} when the 'To' date is greater than\n the 'From' date and a save is attempted.",
        name:"invalidDateMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"From must be before To\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DrawItem.drawGroup":{
        ref:"attr:DrawItem.drawGroup",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('class:DrawGroup')} this drawItem is a member of.",
        name:"drawGroup",
        seeAlso:[
        ],
        valueType:"DrawGroup",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:DynamicForm.canEditFieldAttribute":{
        ref:"attr:DynamicForm.canEditFieldAttribute",
        flags:"IRA",
        description:"If this component is bound to a dataSource, this attribute may be specified to customize\n what fields from the dataSource may be edited by default. For example the ${isc.DocUtils.linkForRef('class:SearchForm')}\n class has this attribute set to <code>\"canFilter\"</code> which allows search forms to edit\n dataSource fields marked as <code>canEdit:false</code> (but not those marked as\n <code>canFilter:false</code>).\n <P>\n Note that if <code>canEdit</code> is explicitly specified on a field in \n the ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')} array, that property will be respected in preference to \n the canEditAttribute value. (See ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')}, ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit')}).\n Also note that individual dataBoundComponents may have additional logic around whether a field\n can be edited - for example ${isc.DocUtils.linkForRef('method:ListGrid.canEditCell')} may be overridden.",
        name:"canEditFieldAttribute",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"\"canEdit\"",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "class:FormItem":{
        methods:[
            "method:FormItem.setReadOnlyDisplay",
            "method:FormItem.getFieldName",
            "method:FormItem.getDataPath",
            "method:FormItem.getFullDataPath",
            "method:FormItem.shouldSaveOnEnter",
            "method:FormItem.getTitle",
            "method:FormItem.isVisible",
            "method:FormItem.getRect",
            "method:FormItem.getPageRect",
            "method:FormItem.shouldApplyHeightToTextBox",
            "method:FormItem.getPixelHeight",
            "method:FormItem.getVisibleHeight",
            "method:FormItem.getIconHeight",
            "method:FormItem.getWidth",
            "method:FormItem.getPixelWidth",
            "method:FormItem.getVisibleWidth",
            "method:FormItem.getIconWidth",
            "method:FormItem.setLeft",
            "method:FormItem.setTop",
            "method:FormItem.updateState",
            "method:FormItem.setCellStyle",
            "method:FormItem.getErrorHTML",
            "method:FormItem.isDrawn",
            "method:FormItem.showIcon",
            "method:FormItem.hideIcon",
            "method:FormItem.getIcon",
            "method:FormItem.showPicker",
            "method:FormItem.show",
            "method:FormItem.hide",
            "method:FormItem.getDisplayValue",
            "method:FormItem.formatValue",
            "method:FormItem.formatEditorValue",
            "method:FormItem.parseEditorValue",
            "method:FormItem.setValueMap",
            "method:FormItem.setOptionDataSource",
            "method:FormItem.setValueIcons",
            "method:FormItem.getValueFieldName",
            "method:FormItem.getDisplayFieldName",
            "method:FormItem.getOptionDataSource",
            "method:FormItem.setValue",
            "method:FormItem.shouldFetchMissingValue",
            "method:FormItem.invalidateDisplayValueCache",
            "method:FormItem.getSelectedRecord",
            "method:FormItem.clearValue",
            "method:FormItem.setPrompt",
            "method:FormItem.setHint",
            "method:FormItem.setHintStyle",
            "method:FormItem.storeValue",
            "method:FormItem.getValue",
            "method:FormItem.getCanEdit",
            "method:FormItem.setCanEdit",
            "method:FormItem.hasAdvancedCriteria",
            "method:FormItem.canEditCriterion",
            "method:FormItem.getCriterion",
            "method:FormItem.setCriterion",
            "method:FormItem.valueClipped",
            "method:FormItem.validate",
            "method:FormItem.setRequired",
            "method:FormItem.stopHover",
            "method:FormItem.itemHover",
            "method:FormItem.titleHover",
            "method:FormItem.valueHover",
            "method:FormItem.titleHoverHTML",
            "method:FormItem.valueHoverHTML",
            "method:FormItem.itemHoverHTML",
            "method:FormItem.setTabIndex",
            "method:FormItem.setDisabled",
            "method:FormItem.setShowDisabled",
            "method:FormItem.isDisabled",
            "method:FormItem.enable",
            "method:FormItem.disable",
            "method:FormItem.getCanFocus",
            "method:FormItem.focusInItem",
            "method:FormItem.blurItem",
            "method:FormItem.shouldStopKeyPressBubbling",
            "method:FormItem.getLeft",
            "method:FormItem.getTop",
            "method:FormItem.getPageLeft",
            "method:FormItem.getPageTop",
            "method:FormItem.showIf",
            "method:FormItem.defaultDynamicValue",
            "method:FormItem.focus",
            "method:FormItem.blur",
            "method:FormItem.editorEnter",
            "method:FormItem.editorExit",
            "method:FormItem.click",
            "method:FormItem.doubleClick",
            "method:FormItem.pickerIconClick",
            "method:FormItem.iconClick",
            "method:FormItem.iconKeyPress",
            "method:FormItem.change",
            "method:FormItem.changed",
            "method:FormItem.transformInput",
            "method:FormItem.titleClick",
            "method:FormItem.titleDoubleClick",
            "method:FormItem.keyPress",
            "method:FormItem.keyDown",
            "method:FormItem.keyUp",
            "method:FormItem.getValueIcon"
        ],
        ref:"class:FormItem",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:FormItem.create"
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:FormItem.ariaRole",
            "attr:FormItem.ariaState",
            "attr:FormItem.locateItemBy",
            "attr:FormItem.type",
            "attr:FormItem.editorType",
            "attr:FormItem.name",
            "attr:FormItem.dataPath",
            "attr:FormItem.title",
            "attr:FormItem.defaultValue",
            "attr:FormItem.value",
            "attr:FormItem.ID",
            "attr:FormItem.emptyDisplayValue",
            "attr:FormItem.valueMap",
            "attr:FormItem.optionDataSource",
            "attr:FormItem.optionFilterContext",
            "attr:FormItem.optionCriteria",
            "attr:FormItem.optionOperationId",
            "attr:FormItem.valueField",
            "attr:FormItem.displayField",
            "attr:FormItem.multipleValueSeparator",
            "attr:FormItem.fetchMissingValues",
            "attr:FormItem.alwaysFetchMissingValues",
            "attr:FormItem.loadingDisplayValue",
            "attr:FormItem.filterLocally",
            "attr:FormItem.dateFormatter",
            "attr:FormItem.timeFormatter",
            "attr:FormItem.displayFormat",
            "attr:FormItem.inputFormat",
            "attr:FormItem.decimalPrecision",
            "attr:FormItem.decimalPad",
            "attr:FormItem.format",
            "attr:FormItem.exportFormat",
            "attr:FormItem.valueIcons",
            "attr:FormItem.emptyValueIcon",
            "attr:FormItem.showValueIconOnly",
            "attr:FormItem.suppressValueIcon",
            "attr:FormItem.valueIconWidth",
            "attr:FormItem.valueIconHeight",
            "attr:FormItem.valueIconSize",
            "attr:FormItem.valueIconLeftPadding",
            "attr:FormItem.valueIconRightPadding",
            "attr:FormItem.imageURLPrefix",
            "attr:FormItem.imageURLSuffix",
            "attr:FormItem.form",
            "attr:FormItem.containerWidget",
            "attr:FormItem.showPickerIcon",
            "attr:FormItem.showFocusedPickerIcon",
            "attr:FormItem.pickerIconDefaults",
            "attr:FormItem.pickerIconProperties",
            "attr:FormItem.pickerIconName",
            "attr:FormItem.pickerIconSrc",
            "attr:FormItem.pickerIconWidth",
            "attr:FormItem.pickerIconHeight",
            "attr:FormItem.pickerIconPrompt",
            "attr:FormItem.picker",
            "attr:FormItem.pickerConstructor",
            "attr:FormItem.pickerProperties",
            "attr:FormItem.validators",
            "attr:FormItem.required",
            "attr:FormItem.requiredMessage",
            "attr:FormItem.visible",
            "attr:FormItem.canEdit",
            "attr:FormItem.readOnlyDisplay",
            "attr:FormItem.readOnlyTextBoxStyle",
            "attr:FormItem.clipStaticValue",
            "attr:FormItem.disabled",
            "attr:FormItem.disableIconsOnReadOnly",
            "attr:FormItem.canFocus",
            "attr:FormItem.accessKey",
            "attr:FormItem.tabIndex",
            "attr:FormItem.globalTabIndex",
            "attr:FormItem.selectOnFocus",
            "attr:FormItem.selectOnClick",
            "attr:FormItem.changeOnKeypress",
            "attr:FormItem.showTitle",
            "attr:FormItem.titleOrientation",
            "attr:FormItem.titleAlign",
            "attr:FormItem.titleVAlign",
            "attr:FormItem.clipTitle",
            "attr:FormItem.wrapTitle",
            "attr:FormItem.redrawOnChange",
            "attr:FormItem.validateOnChange",
            "attr:FormItem.validateOnExit",
            "attr:FormItem.stopOnError",
            "attr:FormItem.rejectInvalidValueOnChange",
            "attr:FormItem.synchronousValidation",
            "attr:FormItem.width",
            "attr:FormItem.height",
            "attr:FormItem.cellHeight",
            "attr:FormItem.titleColSpan",
            "attr:FormItem.colSpan",
            "attr:FormItem.rowSpan",
            "attr:FormItem.startRow",
            "attr:FormItem.endRow",
            "attr:FormItem.align",
            "attr:FormItem.vAlign",
            "attr:FormItem.textAlign",
            "attr:FormItem.left",
            "attr:FormItem.top",
            "attr:FormItem.browserSpellCheck",
            "attr:FormItem.icons",
            "attr:FormItem.defaultIconSrc",
            "attr:FormItem.showOverIcons",
            "attr:FormItem.showFocusedIcons",
            "attr:FormItem.iconHSpace",
            "attr:FormItem.iconVAlign",
            "attr:FormItem.iconHeight",
            "attr:FormItem.iconWidth",
            "attr:FormItem.prompt",
            "attr:FormItem.iconPrompt",
            "attr:FormItem.showIcons",
            "attr:FormItem.errorIconHeight",
            "attr:FormItem.errorIconWidth",
            "attr:FormItem.errorIconSrc",
            "attr:FormItem.showErrorIcon",
            "attr:FormItem.showErrorText",
            "attr:FormItem.showErrorStyle",
            "attr:FormItem.errorOrientation",
            "attr:FormItem.hint",
            "attr:FormItem.showHint",
            "attr:FormItem.showFocused",
            "attr:FormItem.showDisabled",
            "attr:FormItem.showRTL",
            "attr:FormItem.cellStyle",
            "attr:FormItem.hintStyle",
            "attr:FormItem.titleStyle",
            "attr:FormItem.printTitleStyle",
            "attr:FormItem.textBoxStyle",
            "attr:FormItem.printTextBoxStyle",
            "attr:FormItem.pickerIconStyle",
            "attr:FormItem.controlStyle",
            "attr:FormItem.editPendingCSSText",
            "attr:FormItem.showFocusedErrorState",
            "attr:FormItem.cellClassName",
            "attr:FormItem.errorCellClassName",
            "attr:FormItem.titleClassName",
            "attr:FormItem.titleErrorClassName",
            "attr:FormItem.hintClassName",
            "attr:FormItem.hoverDelay",
            "attr:FormItem.hoverWidth",
            "attr:FormItem.hoverHeight",
            "attr:FormItem.hoverAlign",
            "attr:FormItem.hoverVAlign",
            "attr:FormItem.hoverStyle",
            "attr:FormItem.hoverOpacity",
            "attr:FormItem.showClippedTitleOnHover",
            "attr:FormItem.showClippedValueOnHover",
            "attr:FormItem.operator",
            "attr:FormItem.criteriaField",
            "attr:FormItem.saveOnEnter",
            "attr:FormItem.canEditOpaqueValues",
            "attr:FormItem.errorMessageWidth",
            "attr:FormItem.applyHeightToTextBox",
            "attr:FormItem.implicitSave",
            "attr:FormItem.implicitSaveOnBlur",
            "attr:FormItem.shouldSaveValue",
            "attr:FormItem.canSelectText",
            "attr:FormItem.allowExpressions",
            "attr:FormItem.validOperators"
        ],
        description:"A UI component that can participate in a DynamicForm, allowing editing or display of one of\n the ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values tracked by the form')}.\n <P>\n <smartclient>FormItems are never created via the ${isc.DocUtils.linkForRef('classMethod:Class.create','create()')} method,\n instead, an Array of plain ${isc.DocUtils.linkForRef('type:Object','JavaScript objects')} are passed as\n ${isc.DocUtils.linkForRef('attr:DynamicForm.items')} when the form is created.</smartclient>\n\n <smartgwt>FormItems do not render themselves, instead, they are provided to a\n ${isc.DocUtils.linkForRef('class:DynamicForm')} via ${isc.DocUtils.linkForRef('method:DynamicForm.setItems')}</smartgwt>\n <p>\n See the ${isc.DocUtils.linkForRef('class:DynamicForm')} documentation for details and sample code.",
        name:"FormItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DrawItem.rotation":{
        ref:"attr:DrawItem.rotation",
        flags:"IR",
        description:"Rotation in degrees about the center of the ${isc.DocUtils.linkForRef('method:DrawItem.getBoundingBox','bounding box')}.\n The positive direction is clockwise.",
        name:"rotation",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.0",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:PortalLayout.preventUnderflow":{
        ref:"attr:PortalLayout.preventUnderflow",
        flags:"IRW",
        description:"Controls whether the last column will be stretched to fill the PortalLayout's width,\n or left at its specified width.",
        name:"preventUnderflow",
        setter:[
            "setPreventUnderflow"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('portalColumnWidth')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:MenuItem.disabledIcon":{
        ref:"attr:MenuItem.disabledIcon",
        flags:"IR",
        description:"The filename for this item's custom icon when the item is disabled. If both this property\n and ${isc.DocUtils.linkForRef('attr:MenuItem.checked')} are both specified, only the icon specified by this property\n will be displayed. The path to the loaded skin directory and the skinImgDir are prepended\n to this filename to form the full URL.\n <p>\n If you need to set this state dynamically, use ${isc.DocUtils.linkForRef('method:MenuItem.dynamicIcon')} instead.",
        name:"disabledIcon",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('fullMenu')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "menuIcons"
        ]
    },
    "classMethod:ValuesManager.getById":{
        ref:"classMethod:ValuesManager.getById",
        flags:"",
        description:" Retrieve a ValuesManager by it's global ${isc.DocUtils.linkForRef('attr:Canvas.ID','ID')}.\n",
        name:"getById",
        seeAlso:[
        ],
        params:[
            {
                description:"global ID of the ValuesManager",
                optional:false,
                name:"ID",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the ValuesManager, or null if not found",
            type:"ValuesManager"
        },
        type:"classMethod",
        definingClass:"class:ValuesManager"
    },
    "method:ListGridField.getCellValue":{
        ref:"method:ListGridField.getCellValue",
        deprecated:"As of SmartClient 5.5, use ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue')}.",
        flags:"",
        description:" A stringMethod which returns the cell value to display for this field for some record.\n If defined, called by ListGrid.getCellValue().  Called in the scope of the field object.\n\n Deprecated as of Jan 12 05 in favor of ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue')}, because \n 'getCellValue()' is a lower-level API which handles (for example) returning the HTML\n for editors within the cell.\n\n",
        name:"getCellValue",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellValue",
                description:null
            },
            {
                ref:"method:ListGridField.formatCellValue",
                description:null
            }
        ],
        params:[
            {
                description:"the ListGrid for which we're returning a cellValue",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"ListGrid"
            },
            {
                description:"the current record object",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            },
            {
                description:"row-index of the current record",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"nubmer"
            },
            {
                description:"current field object",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"listGridField"
            },
            {
                description:"column-index of the current field",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"unformatted value for this field, determined via                          ListGrid.getRawCellValue()",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"value to display in the ListGrid cell",
            type:"any"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "type:VerticalAlignment":{
        ref:"type:VerticalAlignment",
        values:[
            {
                description:"At the top of the container",
                value:"Canvas.TOP"
            },
            {
                description:"Center within container.",
                value:"Canvas.CENTER"
            },
            {
                description:"At the bottom of the container",
                value:"Canvas.BOTTOM"
            }
        ],
        description:null,
        name:"VerticalAlignment",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "attr:FieldPicker.addCustomFieldsButtonTitle":{
        ref:"attr:FieldPicker.addCustomFieldsButtonTitle",
        flags:"IR",
        description:"The title displayed for the Add Custom Fields Button",
        name:"addCustomFieldsButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add Custom Fields\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FacetChart.getPercentile":{
        ref:"method:FacetChart.getPercentile",
        flags:"",
        description:" Calculate a percentile of the data over a single metric.\n See <a href=\"http://en.wikipedia.org/wiki/Percentile\">http://en.wikipedia.org/wiki/Percentile</a>.\n <p>\n The first argument, criteria, determines which metric is used to calculate a percentile.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n <p>\n The second argument is the percentile to calculate and it must be a number from 0 to 100.\n",
        name:"getPercentile",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            },
            {
                description:"the percentile to calculate",
                optional:false,
                name:"percentile",
                defaultValue:null,
                type:"float"
            }
        ],
        returns:{
            description:"a percentile of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:SortSpecifier.normalizer":{
        ref:"attr:SortSpecifier.normalizer",
        flags:"IR",
        description:"A normalizer function which this sortSpecifier will use to sort.",
        name:"normalizer",
        seeAlso:[
        ],
        valueType:"Function",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SortSpecifier"
    },
    "method:Palette.setDefaultEditContext":{
        ref:"method:Palette.setDefaultEditContext",
        flags:"",
        description:" Sets the default EditContext that this palette should use.  Palettes generally create components via\n drag and drop, but may also support creation via double-click or other UI idioms when a\n defaultEditContext is set.\n",
        name:"setDefaultEditContext",
        seeAlso:[
        ],
        params:[
            {
                description:"the default EditContext used by this Palette",
                optional:false,
                name:"defaultEditContext",
                defaultValue:null,
                type:"EditContext"
            }
        ],
        type:"method",
        definingClass:"interface:Palette"
    },
    "group:gridValidation":{
        ref:"group:gridValidation",
        refs:[
            "method:ListGrid.validateRow",
            "method:ListGrid.validateCell",
            "method:ListGrid.getRequiredFieldMessage",
            "method:ListGrid.hasErrors",
            "method:ListGrid.rowHasErrors",
            "method:ListGrid.cellHasErrors",
            "method:ListGrid.getRowErrors",
            "method:ListGrid.getCellErrors",
            "method:ListGrid.setFieldError",
            "method:ListGrid.setRowErrors",
            "method:ListGrid.clearFieldError",
            "attr:ListGridField.validators",
            "attr:ListGridField.validateOnChange",
            "attr:ListGridField.required",
            "attr:ListGrid.validateByCell",
            "attr:ListGrid.validateOnChange",
            "attr:ListGrid.neverValidate"
        ],
        description:"ListGrids support automatic validation of edited cells / records. This group is a collection\n of APIs related to the validation subsystem.\n <p>\n Default validation occurs in response to the user navigating between edit cells\n (see ${isc.DocUtils.linkForRef('attr:ListGrid.validateByCell')}) or whenever edited values are to be committed to the\n server for saving.  Standard validation can also be triggered for a cell or row programmatically at\n any time.<br>\n When standard validation occurs, ${isc.DocUtils.linkForRef('attr:ListGridField.validators')} will be run on each\n cell to be validated.<br>\n In addition to this standard behavior developers can add custom errors to fields\n via ${isc.DocUtils.linkForRef('method:ListGrid.setFieldError')} / ${isc.DocUtils.linkForRef('method:ListGrid.setFieldError')}.",
        name:"gridValidation",
        seeAlso:[
            {
                ref:"group:editing",
                description:null
            }
        ],
        type:"group"
    },
    "method:TileGrid.deselectRange":{
        ref:"method:TileGrid.deselectRange",
        flags:"",
        description:" Deselect a contiguous range of records by index.\n <P>\n This is a synonym for <code>selectRange(startRow, endRow, false);</code>\n",
        name:"deselectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start of selection range",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection range (non-inclusive)",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid"
    },
    "attr:SpinnerItem.min":{
        ref:"attr:SpinnerItem.min",
        flags:"IRW",
        description:"Minimum valid value for this item. If this and ${isc.DocUtils.linkForRef('attr:SpinnerItem.max','max')} are both\n null or unspecified, then\n <smartclient>\n ${isc.DocUtils.linkForRef('method:SpinnerItem.getNextValue')} and ${isc.DocUtils.linkForRef('method:SpinnerItem.getPreviousValue')}\n are used to increase or decrease the value and these methods\n </smartclient><smartgwt>\n the {@link com.smartgwt.client.widgets.form.fields.SpinnerItem#setNextValueHandler(NextValueHandler)\n nextValueHandler} and {@link com.smartgwt.client.widgets.form.fields.SpinnerItem#setPreviousValueHandler(PreviousValueHandler)\n previousValueHandler}\n are used to increase or decrease the value and these handlers\n </smartgwt>\n are also used to determine the minimum value.",
        name:"min",
        seeAlso:[
        ],
        valueType:"Double",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('spinnerItem')}"
        ],
        definingClass:"class:SpinnerItem"
    },
    "attr:RestDataSource.dataFormat":{
        ref:"attr:RestDataSource.dataFormat",
        flags:"IR",
        description:"Expected format for server responses. RestDataSources handle <code>\"json\"</code> and\n <code>\"xml\"</code> format responses by default. See class overview documentation for \n examples of responses in each format.",
        name:"dataFormat",
        seeAlso:[
        ],
        valueType:"DSDataFormat",
        defaultValue:"\"xml\"",
        type:"attr",
        definingClass:"class:RestDataSource"
    },
    "method:Slider.setShowValue":{
        ref:"method:Slider.setShowValue",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.showValue')} property of the slider\n\n",
        name:"setShowValue",
        seeAlso:[
        ],
        params:[
            {
                description:"show the slider value?",
                optional:false,
                name:"showValue",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:FusionChart.dataColors":{
        ref:"attr:FusionChart.dataColors",
        flags:"IR",
        description:"An array of colors to use for a series of visual elements representing data (eg columns,\n bars, pie slices), any of which may be adjacent to any other.\n <P>\n Colors are expressed as hexadecimal RRGGBB Strings <b>with no leading '#' character</b>.",
        name:"dataColors",
        seeAlso:[
        ],
        valueType:"Array of CSSColor",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:FusionChart"
    },
    "method:Tree.hasFolders":{
        ref:"method:Tree.hasFolders",
        flags:"",
        description:"\n Return true if this this node has any children that are folders.\n\n",
        name:"hasFolders",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the node has children that are folders",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:FilterBuilder.subClauseButton":{
        ref:"attr:FilterBuilder.subClauseButton",
        flags:"IR",
        description:"Button allowing the user to add subclauses grouped by a ${isc.DocUtils.linkForRef('type:LogicalOperator')}.",
        name:"subClauseButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:DataSource.nullDateValue":{
        ref:"attr:DataSource.nullDateValue",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:DataSource.noNullUpdates')} is set, the value to use for any date or time field that has a\n null value assigned on an update operation, and does not specify an explicit\n ${isc.DocUtils.linkForRef('attr:DataSourceField.nullReplacementValue','nullReplacementValue')}.\n <p>\n Unlike strings and numbers, there is no \"natural\" choice for a null replacement value \n for dates.  The default value we have chosen is midnight on January 1st 1970, simply \n because this is \"the epoch\" - the value that is returned by calling \"new Date(0)\"",
        name:"nullDateValue",
        seeAlso:[
            "noNullUpdates,noNullUpdates",
            {
                ref:"attr:DataSourceField.nullReplacementValue",
                description:null
            }
        ],
        valueType:"Date",
        defaultValue:"See below",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:SelectItem.multiple":{
        ref:"attr:SelectItem.multiple",
        flags:"IRW",
        description:"If true, multiple values may be selected.\n <P>\n The SelectItem will either render as a drop-down allowing multiple selections, or a\n multi-row list of options similar to a small headerless ${isc.DocUtils.linkForRef('class:ListGrid')}, based on the\n ${isc.DocUtils.linkForRef('type:MultipleAppearance')} setting.\n <P>\n The logical value of the formItem, as retrieved by ${isc.DocUtils.linkForRef('method:FormItem.getValue','getValue()')}\n and set via ${isc.DocUtils.linkForRef('method:FormItem.setValue','setValue()')}, is an Array of Strings reflecting the\n selected values.\n <P>\n When this value is true, we disable doubleClick events by default, instead issuing two\n single clicks by forcibly setting ${isc.DocUtils.linkForRef('attr:Canvas.noDoubleClicks','noDoubleClicks: true')}.\n If you need to work with doubleClick events, you can disable this default behavior by\n explicitly setting formItem.pickListProperties.noDoubleClicks: false.\n <P>\n Note: <code>multiple:true</code> SelectItems with multipleAppearance:\"grid\" do not\n currently support optionDataSource binding.  You can get around this by calling\n ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} directly and calling\n ${isc.DocUtils.linkForRef('method:List.getValueMap','dsResponse.data.getValueMap()')} to obtain a valueMap.",
        name:"multiple",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.valueIconWidth":{
        ref:"attr:ListGrid.valueIconWidth",
        flags:"IRW",
        description:"Width for value icons for this listGrid.\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconSize')}.\n Can be overridden at the field level",
        name:"valueIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "method:ListGrid.cellValueHover":{
        ref:"method:ListGrid.cellValueHover",
        flags:"A",
        description:" Optional stringMethod to fire when the user hovers over a cell and the value is clipped.\n If this.showClippedValuesOnHover is true, the default behavior is to show a hover canvas\n containing the HTML returned by cellValueHoverHTML(). Return false to suppress this default\n behavior.\n\n",
        name:"cellValueHover",
        seeAlso:[
            {
                ref:"attr:ListGrid.showClippedValuesOnHover",
                description:null
            },
            {
                ref:"method:ListGrid.cellValueIsClipped",
                description:null
            },
            {
                ref:"method:ListGrid.cellValueHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"false to suppress the standard hover",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "class:ResetItem":{
        methods:[
        ],
        ref:"class:ResetItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
        ],
        description:"Button that resets the form to default values, by calling\n <code>DynamicForm.resetValues()</code>\n \n If you define a click handler on this item, you can return false to cancel the reset.",
        name:"ResetItem",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Canvas.hide":{
        ref:"method:Canvas.hide",
        flags:"",
        description:"\t\t\tSets the widget's CSS visibility attribute to \"hidden\".\n",
        name:"hide",
        seeAlso:[
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('showAndHide')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "visibility"
        ]
    },
    "method:DrawItem.moveBy":{
        ref:"method:DrawItem.moveBy",
        flags:"",
        description:" Move the shape by the specified deltas for the left and top coordinate.\n\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"change to left coordinate in pixels",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"change to top coordinate in pixels",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:Flashlet.setSrc":{
        ref:"method:Flashlet.setSrc",
        flags:"",
        description:" \n  Sets the source file for the flash component  \n\n",
        name:"setSrc",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Flashlet"
    },
    "method:Calendar.addLane":{
        ref:"method:Calendar.addLane",
        flags:"",
        description:" Adds a new ${isc.DocUtils.linkForRef('object:Lane')} to the calendar ${isc.DocUtils.linkForRef('attr:Calendar.timelineView')}, or to the \n ${isc.DocUtils.linkForRef('attr:Calendar.dayView')} if ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} is true.\n\n",
        name:"addLane",
        seeAlso:[
        ],
        params:[
            {
                description:"a new Lane object to add to the view",
                optional:false,
                name:"lane",
                defaultValue:null,
                type:"Lane"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "group:dataSourceOperations":{
        ref:"group:dataSourceOperations",
        title:"DataSource Operations",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        refs:[
        ],
        description:"A DataSource Operation is a type of ${isc.DocUtils.linkForRef('group:operations','operation')} that acts on the set\n of stored objects represented by a ${isc.DocUtils.linkForRef('class:DataSource')}, performing one of the basic actions\n that makes sense on a set of similar records: \"fetch\", \"add\", \"update\" or \"remove\".  There\n is also a fifth DataSource Operation, \"custom\", which is intended for arbitrary server\n operations that are more complex than a fetch of some records, or an update to a single\n record.\n <P>\n Each DataSource operation has specific request and response data, for example, in the\n \"fetch\" DataSource operation, the request data is expected to be search criteria, and the\n response data is expected to be a list of matching DataSource records.  Listed below are the\n request data and response data for each DataSource operation type, and what they mean.  \n <P>\n DataSource records are represented on the client by a JavaScript Object,\n where each property in the Object maps a DataSource field name to the field value - hence\n the DataSource operations below are in essence a way of exchanging records from client to\n server and back.\n <P>\n If you are using ${isc.DocUtils.linkForRef('group:serverDataIntegration','server-side data integration')} with the\n SmartClient Java server, see the ${isc.DocUtils.linkForDocNode('javaServerReference', 'Java Server Reference')} for\n information about how DataSource Requests arrive on the server (specifically\n com.isomorphic.datasource.DSRequest) and how to provide responses \n (specifically com.isomorphic.datasource.DSResponse.setData()).\n <P>\n If you are using ${isc.DocUtils.linkForRef('group:clientDataIntegration','client-side data integration')} to directly\n consume services that use XML, JSON or other formats, see the \"Editing and Saving\" section\n of the ${isc.DocUtils.linkForRef('group:clientDataIntegration','client-side data integration')} topic.\n <P>\n\n <b>fetch</b>\n <ul>\n <li>Request data: filter criteria, as an Object\n <li>Response data: matching records, as an Array of Objects\n </ul>\n\n <b>add</b>\n <ul>\n <li>Request data: new record, as an Object\n <li>Response data: new record as stored, as an Object\n </ul>\n\n <b>update</b>\n <ul>\n <li>Request data: primary keys of record to update, and new values (or just complete updated\n record), as an Object\n <li>Response data: new record as stored, as an Object\n </ul>\n\n <b>remove</b>\n <ul>\n <li>Request data: primary keys of record to delete, as an Object\n <li>Response data: minimally the primary keys of deleted record (can be complete record), as\n an Object\n </ul>\n\n <b>custom</b>\n <ul>\n <li>Request data: whatever the custom operation requires\n <li>Response data: custom operations can return whatever they like, including nothing.  \n Custom operations are like RPC calls in this respect - the exchanged data is unstructured, \n so it is up to you to make sure the client and server agree.  Note also that, because of\n this unstructured data exchange, cache synchronization does not work with custom operations.\n </ul>",
        name:"dataSourceOperations",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.saveByCell":{
        ref:"attr:ListGrid.saveByCell",
        flags:"IRW",
        description:"Whether edits should be saved whenever the user moves between cells in the current edit\n row.\n <P>\n If unset, defaults to ${isc.DocUtils.linkForRef('attr:ListGrid.editByCell','this.editByCell')}.\n <P>\n To avoid automatic saving entirely, set ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')}:false.",
        name:"saveByCell",
        seeAlso:[
            {
                ref:"attr:ListGrid.editByCell",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "group:fieldState":{
        ref:"group:fieldState",
        refs:[
            "method:ListGrid.fieldStateChanged"
        ],
        name:"fieldState",
        seeAlso:[
        ],
        type:"group"
    },
    "method:RangeSlider.changed":{
        ref:"method:RangeSlider.changed",
        flags:"",
        description:" Notification fired when the selected range is changed by the end user.\n\n",
        name:"changed",
        seeAlso:[
        ],
        params:[
            {
                description:"new start value",
                optional:false,
                name:"startValue",
                defaultValue:null,
                type:"float"
            },
            {
                description:"new end value",
                optional:false,
                name:"endValue",
                defaultValue:null,
                type:"float"
            },
            {
                description:"whether the user is still in the middle of a drag, so that  expensive operations can be avoided if needed",
                optional:false,
                name:"isDragging",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:RangeSlider"
    },
    "group:serverDataSourceImplementation":{
        ref:"group:serverDataSourceImplementation",
        title:"Notes on Server-side DataSource Implementations",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        refs:[
        ],
        description:"NOTE: This section includes references to server-side classes and methods; you can find the\n documentation for these in the server-side Javadocs.\n <p>\n Bear in mind the following points when working with DataSources (whether custom or \n built-in) on the SmartClient Server:<ul>\n <li>There is no requirement or expectation that DataSource subclasses be threadsafe.  As \n long as you use documented techniques for creating DataSource instances, the server framework\n will ensure that no single instance is used concurrently by more than one thread.</li>\n <p>\n <li>If you are using ${isc.DocUtils.linkForRef('group:springIntegration','Spring-injected dataSources')}, note that\n the default scope for a Spring bean is \"singleton\".  This means that a single instance of \n the bean is cached by Spring and returned every time the framework code asks for that \n DataSource.  This pattern prevents the SmartClient framework from making the above-mentioned\n guarantee that no single instance will be used by multiple threads, and can lead to\n unpleasant concurrency bugs.  The solution is to mark your Spring beans with a scope of \n \"prototype\" (you could also use \"request\", but SmartClient caches DataSource instances \n per-HttpServletRequest anyway, so nothing is gained by doing that).  See the \n <a href=http://docs.spring.io/spring/docs/3.2.5.RELEASE/spring-framework-reference/html/beans.html#beans-factory-scopes>\n Spring documentation</a> for further information about bean scope. \n <p>\n <li>DataSource instances can safely be retained for use multiple times in a given HTTP \n request; this presents no thread-safety issues unless you specifically introduce them by,\n eg, creating a new DSRequest and executing it in its own thread.  However, note that mixing\n ${isc.DocUtils.linkForRef('attr:DataSource.autoJoinTransactions','transactional')} and non-transactional operations on the \n same DataSource instance in a single HTTP request can lead to connection leaks if you are \n using the built-in Hibernate or JPA DataSource.</li>\n <p>\n <li>If the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} attribute <code>datasources.pool.enabled</code>\n is set, DataSource instances are automatically cached in an in-memory pool.  This caching\n is smart: if the underlying <code>.ds.xml</code> file changes, cached instances are \n discarded and rebuilt.</li>\n <p>\n <li>If pooling is not switched on, DataSource instances are constructed new as required.\n Whether or not pooling is enabled, new DataSource instances are always constructed using\n cached configuration for better performance.  The configuration file (<code>.ds.xml</code>\n file) is read the first time the DataSource is requested; thereafter, we will only re-read\n the configuration file if its last-changed timestamp changes.  This scheme combines the \n performance benefits of caching with the with the convenience of being able to change a \n <code>.ds.xml</code> file and pick up the changes without restarting the server.</li>\n <p>\n <li>The safe way to obtain a DataSource instance is to use \n <code>RPCManager.getDataSource()</code>.  If pooling is enabled, this is the only way to \n obtain a DataSource instance with the guarantee that it will be returned to the pool at \n the end of request processing.</li>\n <p>\n <li>If you are using the <code>DynamicDSGenerator</code> to provide DataSources to the \n framework dynamically:<ul>\n <p>\n <li>You are expected to use one of the <code>DataSource.fromXML()</code> APIs to construct\n your DataSources from an XML document or String of XML text</li>\n <p>\n <li>Do not use normal Java instantiation techniques like <code>new DataSource()</code>, as \n this will introduce thread-safety issues</li>\n <p>\n <li>Return a new DataSource instance each time - returning the same DataSource twice will\n introduce thread-safety issues.  If you are concerned about performance, ensure pooling is\n enabled as described above - this will mean that the DataSource you return will be\n automatically cached and re-used, so your DynamicDSGenerator will only be called enough\n times to populate the pool.  If you are still concerned about performance, cache the XML\n String that you pass to <code>DataSource.fromXML()</code>.</li>\n <p>\n <li>For many applications of <code>DynamicDSGenerator</code>, pooling is inappropriate\n because the returned DataSource for a given name might be different each time the generator\n is called.  For this reason, pooling of dynamic DataSources is disabled by default.  To\n enable pooling for dynamically-generated DataSources, set the ${isc.DocUtils.linkForRef('group:server_properties','server.properties')} \n flag <code>poolDynamicDataSources</code> to true.  NOTE: Here, \"dynamic DataSource\" means \n a DataSource whose name would cause the framework to invoke a DynamicDSGenerator, which \n doesn't necessarily mean that the generator would actually create a dynamic DataSource.  As\n the server-side documentation for <code>DynamicDSGenerator.getDataSource()</code> states,\n a generator can simply return null to decline the opportunity to create a dynamic DataSource.\n Therefore, if the proper operation of pooling is important to you, avoid patterns of \n <code>DynamicDSGenerator</code> usage that involve registering more generically than you \n need to.  In particular, avoid the <code>addDynamicDSGenerator()</code> signature that \n does not take a prefix or regex parameter - this will cause the pooling subsystem to regard\n <b>all</b> DataSources as dynamic, and will effectively disable all DataSource pooling.\n </li></ul>\n </li></ul>",
        name:"serverDataSourceImplementation",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormulaBuilder.sampleHeaderTitle":{
        ref:"attr:FormulaBuilder.sampleHeaderTitle",
        flags:"IRWA",
        description:"The default title for the \"Sample\" panel, which displays a sample result for the formula.",
        name:"sampleHeaderTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Sample:\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FilterBuilder.inlineAndTitle":{
        ref:"attr:FilterBuilder.inlineAndTitle",
        flags:"IR",
        description:"Title for the \"And\" operator (only applicable to the \"inline\" appearance)",
        name:"inlineAndTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"and\"",
        type:"attr",
        definingClass:"class:FilterBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DataSource.xmlSerialize":{
        ref:"method:DataSource.xmlSerialize",
        flags:"A",
        description:" Serialize a JavaScript object as XML.\n <P>\n The JavaScript Object passed to ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')} becomes an XML\n element named after the ${isc.DocUtils.linkForRef('attr:DataSource.tagName')} (or ${isc.DocUtils.linkForRef('attr:DataSource.ID')} if\n tagName is unset).  Each property of the object becomes a subElement.  For example,\n using a DataSource to serialize like this:\n <pre>\n     var inputObject = {\n        startRow : 5,\n        endRow : 50,\n        data : [\n           { field1 : \"value1\", field2: new Date() },\n           { field1 : \"value3\", field2: null }\n        ]\n     };\n     var myDS = isc.DataSource.create({ tagName:\"DSRequest\" });\n     myDS.xmlSerialize(inputObject);\n </pre>\n .. produces the following XML:\n <pre>\n     &lt;DSRequest&gt;\n         &lt;startRow&gt;5&lt;/startRow&gt;\n         &lt;endRow&gt;50&lt;/endRow&gt;\n         &lt;data&gt;\n             &lt;field1&gt;value1&lt;/field1&gt;\n             &lt;field2&gt;2005-10-14T18:01:16&lt;/field2&gt;\n         &lt;/data&gt;\n         &lt;data&gt;\n             &lt;field1&gt;value3&lt;/field1&gt;\n             &lt;field2&gt;&lt;/field2&gt;\n         &lt;/data&gt;\n     &lt;/DSRequest&gt;\n </pre>\n <P>\n Various properties on the DataSource and DataSourceField can affect how serialization is\n performed, see for example ${isc.DocUtils.linkForRef('attr:DataSource.tagName')},\n ${isc.DocUtils.linkForRef('attr:DataSource.schemaNamespace')}, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.xmlAttribute')}, \n ${isc.DocUtils.linkForRef('attr:DataSourceField.multiple')} and ${isc.DocUtils.linkForRef('attr:DataSourceField.childTagName')}.\n By setting the ${isc.DocUtils.linkForRef('attr:DataSourceField.type','type of a field')} to the ID of another\n DataSource which has further XML serialization settings, you can control serialization of\n nested structures.\n <P>\n If you are working with a WSDL-described web service, XML serialization is performed\n automatically by APIs like ${isc.DocUtils.linkForRef('method:WebService.callOperation')} - you only need to\n know about serialization in order to understand how to put together JavaScript data that\n will fill in an XML message properly, and for simple messages, setting\n ${isc.DocUtils.linkForRef('attr:DSRequest.useFlatFields')} makes that unnecessary as well.   \n <P>\n <b>Note:</b> when trying to send data to a web service, it is best to avoid putting\n together any XML yourself, instead modify the JavaScript data being fed to SmartClient's\n SOAP engine.  This is because the WSDL and SOAP rules for correctly namespacing and\n encoding Web Service messages are very complex and are subject to change with new\n versions of the web service you are contacting, whereas the data itself is easy to\n manipulate and less likely to change.\n <P>\n To troubleshoot message formation, you can set the log category \"xmlSerialize\" to \n <code>INFO</code> or <code>DEBUG</code> level in order to see diagnostics about XML\n message formation, and you can use the RPC tab in the Developer Console to see the\n actual messages being passed to web services.\n\n",
        name:"xmlSerialize",
        seeAlso:[
        ],
        params:[
            {
                description:"data to be serialized",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"any"
            },
            {
                description:"options for the serialization engine",
                optional:false,
                name:"flags",
                defaultValue:null,
                type:"SerializationContext"
            }
        ],
        returns:{
            description:"data as serialized to XML",
            type:"String"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:ListGrid.useCopyPasteShortcuts":{
        ref:"attr:ListGrid.useCopyPasteShortcuts",
        flags:"IRW",
        description:"Enables copy/paste shortcuts, provided ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is true\n <p>\n The default setting of true means that the value of ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')}\n determines whether copy/paste shortcuts are enabled.  Setting this property to\n false disables said shortcuts unconditionally.\n <p>\n Copying is done via copying to a SmartClient-wide \"clipboard\" - <b>not</b> the OS-level\n clipboard, which is innaccessible on some browsers - via the methods\n ${isc.DocUtils.linkForRef('method:ListGrid.getSelectedCellData')} and ${isc.DocUtils.linkForRef('method:ListGrid.applyCellData')}.  To copy data to and\n from applications outside of the browser, use the technique shown in the\n ${isc.DocUtils.linkForExampleId('gridToExcel', 'Grid to Excel')} and\n ${isc.DocUtils.linkForExampleId('excelToGrid', 'Excel to Grid')} samples.\n <p>\n The following shortcuts are available:\n <p>\n CTRL + D: copy cell values from top row of selected cells down to all rows\n <p>\n CTRL + R: copy cell values from left column of selected cells right to all columns\n <p>\n CTRL + C: copy selected cell values into shared clipboard\n <p>\n CTRL + V: paste from shared clipboard into current selection",
        name:"useCopyPasteShortcuts",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "group:errors":{
        ref:"group:errors",
        refs:[
            "method:DynamicForm.getErrors",
            "method:DynamicForm.getFieldErrors",
            "method:DynamicForm.setErrors",
            "method:DynamicForm.setError",
            "method:DynamicForm.addFieldErrors",
            "method:DynamicForm.setFieldErrors",
            "method:DynamicForm.clearFieldErrors",
            "method:DynamicForm.clearErrors",
            "method:DynamicForm.hasErrors",
            "method:DynamicForm.hasFieldErrors",
            "method:DynamicForm.getValidatedValues",
            "method:DynamicForm.showErrors",
            "method:DynamicForm.showFieldErrors",
            "method:ValuesManager.getValidatedValues",
            "method:ValuesManager.setErrors",
            "method:ValuesManager.addFieldErrors",
            "method:ValuesManager.setFieldErrors",
            "method:ValuesManager.clearErrors",
            "method:ValuesManager.clearFieldErrors",
            "method:ValuesManager.getErrors",
            "method:ValuesManager.getFieldErrors",
            "method:ValuesManager.hasErrors",
            "method:ValuesManager.hasFieldErrors",
            "method:ValuesManager.showErrors",
            "method:ValuesManager.showFieldErrors"
        ],
        description:"Validation errors and how they are shown",
        name:"errors",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DataSourceField.canSave":{
        ref:"attr:DataSourceField.canSave",
        flags:"IR",
        description:"Whether values in this field can be updated and saved to the dataSource.\n <P>\n If set to <code>false</code>, this field will default to being non-editable in standard editing\n components (${isc.DocUtils.linkForRef('class:DynamicForm')}, editable ${isc.DocUtils.linkForRef('class:ListGrid')}), but will be editable when displayed\n for filtering purposes only (in a ${isc.DocUtils.linkForRef('class:SearchForm')} or ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','ListGrid\\n filter editor')}.  If ${isc.DocUtils.linkForRef('attr:DataSourceField.canEdit','canEdit')} is explicitly specified it will take \n precedence over this client-side behavior, but the server will still enforce the no-save\n policy (described below).\n <p>\n NOTE: If you are using SmartClient Server and have specified <code>canSave: false</code> \n for a field in a DataSource definition (<code>.ds.xml</code> file), this is enforced on \n the server.  This means that we will strip out any attempt to set the value of such a \n field before trying to process any update or add request, similar to what happens when \n a ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresAuthentication','field-level declarative security check')} fails.",
        name:"canSave",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "attr:SimpleGradient.direction":{
        ref:"attr:SimpleGradient.direction",
        flags:"IR",
        description:"Direction vector in degrees",
        name:"direction",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.0",
        type:"attr",
        definingClass:"object:SimpleGradient"
    },
    "attr:ColorPicker.redFieldTitle":{
        ref:"attr:ColorPicker.redFieldTitle",
        flags:"IR",
        description:"The title for the 'Red' field in the complex chooser.",
        name:"redFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Red\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ColumnTree.shouldShowHeader":{
        ref:"method:ColumnTree.shouldShowHeader",
        flags:"",
        description:" Whether the indicated column should show a header.  Returns this.showHeaders by default,\n override for different behavior.\n \n",
        name:"shouldShowHeader",
        seeAlso:[
        ],
        params:[
            {
                description:"parent node for the nodes to be shown in the column",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"index of the column",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "attr:GridRenderer.cellPadding":{
        ref:"attr:GridRenderer.cellPadding",
        flags:"IRW",
        description:"The amount of empty space, in pixels, surrounding each value in its cell.",
        name:"cellPadding",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "classMethod:Page.getURL":{
        ref:"classMethod:Page.getURL",
        flags:"",
        description:" Return a full URL for a relative path that uses a special prefix such as \"[APPFILES]\" or\n \"[SKIN]\".\n <P>\n For images, use ${isc.DocUtils.linkForRef('classMethod:Page.getImgURL')} instead.\n\n",
        name:"getURL",
        seeAlso:[
        ],
        params:[
            {
                description:"Local file name for the image.",
                optional:false,
                name:"fileName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"URL for the image.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "attr:DynamicForm.showComplexFieldsRecursively":{
        ref:"attr:DynamicForm.showComplexFieldsRecursively",
        flags:"IR",
        description:"If set, this <code>DynamicForm</code> will set both \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.showComplexFields','showComplexFields')} and \n <code>showComplexFieldsRecursively</code> on any nested component used for showing/editing\n a complex field.  Thus any of this form's items that handle complex fields will themselves\n also show complex fields.  This allows for handling of field structures of any complexity.\n <p>\n If set, this value automatically sets ${isc.DocUtils.linkForRef('attr:DataBoundComponent.showComplexFields','showComplexFields')}\n as well.",
        name:"showComplexFieldsRecursively",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:Window.centerInPage":{
        ref:"method:Window.centerInPage",
        flags:"A",
        description:" Centers the Window in the page. This is called automatically in window.show() if\n Window.autoCenter is true.\n Note - if the Window is a child of another widget, we center in the parent widget\n rather than centering in the page.\n",
        name:"centerInPage",
        seeAlso:[
            {
                ref:"attr:Window.autoCenter",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Window",
        groups:[
            "appearance"
        ]
    },
    "attr:TextAreaItem.changeOnKeypress":{
        ref:"attr:TextAreaItem.changeOnKeypress",
        flags:"IRW",
        description:"Should this form item fire its ${isc.DocUtils.linkForRef('method:FormItem.change','change')} handler (and store its\n value in the form) on every keypress? Set to <code>false</code> to suppress the 'change'\n handler firing (and the value stored) on every keypress.\n <p>\n Note: If <code>false</code>, the value returned by ${isc.DocUtils.linkForRef('method:FormItem.getValue','getValue')}\n will not reflect the value displayed in the form item element as long as focus is in\n the form item element.",
        name:"changeOnKeypress",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "eventHandling",
            "values"
        ]
    },
    "type:KnobType":{
        ref:"type:KnobType",
        values:[
            {
                description:"Display up to 4 control knobs at the corners specified by ${isc.DocUtils.linkForRef('attr:DrawItem.resizeKnobPoints')},\n  allowing the user to drag-resize the item.",
                value:"\"resize\""
            },
            {
                description:"Display a control knob for moving the item around. See also ${isc.DocUtils.linkForRef('attr:DrawItem.moveKnobPoint')}\n  and ${isc.DocUtils.linkForRef('attr:DrawItem.moveKnobOffset')}",
                value:"\"move\""
            },
            {
                description:"Control knob  to manipulate ${isc.DocUtils.linkForRef('attr:DrawLine.startPoint')}.",
                value:"\"startPoint\""
            },
            {
                description:"Control knob to manipulate ${isc.DocUtils.linkForRef('attr:DrawLine.endPoint')}.",
                value:"\"endPoint\""
            },
            {
                description:"Display a draggable control knob along with a DrawLine indicating the angle between controlPoint1\n  and the startPoint. Dragging the knob will adjust controlPoint1.",
                value:"\"controlPoint1\""
            },
            {
                description:"Display a draggable control knob along with a DrawLine indicating the angle between controlPoint2\n  and the endPoint. Dragging the knob will adjust controlPoint2.",
                value:"\"controlPoint2\""
            }
        ],
        description:"Entries for the ${isc.DocUtils.linkForRef('attr:DrawItem.knobs')} array. Each specified knobType will enable some UI \n allowing the user to manipulate the DrawItem directly.\n <p>\n <b>NOTE:</b> Not all knob types are supported by each DrawItem type. Refer to the DrawItem\n type's ${isc.DocUtils.linkForRef('attr:DrawItem.knobs','knobs')} attribute documentation for a list of the supported knob types.",
        name:"KnobType",
        seeAlso:[
        ],
        type:"type"
    },
    "method:List.removeList":{
        ref:"method:List.removeList",
        flags:"",
        description:" Remove all instances of objects in the specified list from this list, sliding the remaining\n objects around to fill gaps.\n\n",
        name:"removeList",
        seeAlso:[
        ],
        params:[
            {
                description:"list of items to remove",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array"
            }
        ],
        returns:{
            description:"list of items passed in",
            type:"list"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "modification"
        ]
    },
    "attr:ListGrid.badFormulaResultValue":{
        ref:"attr:ListGrid.badFormulaResultValue",
        flags:"IRW",
        description:"If the result of a formula evaluation is invalid (specifically, if isNaN(result)==true),\n badFormulaResultValue is displayed instead.  The default value is \".\".",
        name:"badFormulaResultValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\".\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "formulaFields"
        ]
    },
    "attr:TimeItem.minuteItemProperties":{
        ref:"attr:TimeItem.minuteItemProperties",
        flags:"IRA",
        description:"Custom properties to apply to this timeItem's generated \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteItem','minute picker')}.",
        name:"minuteItemProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "method:DataSource.getPrimaryKeyFieldName":{
        ref:"method:DataSource.getPrimaryKeyFieldName",
        flags:"",
        description:" Returns the primary key fieldName for this DataSource.    If this dataSource has\n a composite primary key (ie, multiple primaryKey fields), returns just the first \n primaryKey field name.\n",
        name:"getPrimaryKeyFieldName",
        seeAlso:[
            {
                ref:"method:DataSource.getPrimaryKeyFieldNames",
                description:null
            }
        ],
        returns:{
            description:"primary key field name",
            type:"string"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:ListGridField.filterOperator":{
        ref:"attr:ListGridField.filterOperator",
        flags:"IR",
        description:"With the ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','FilterEditor')} showing, the ${isc.DocUtils.linkForRef('object:Operator')} to\n use when matching values for this field.\n <P>\n Note that you can set all FilterEditor fields to default to either substring or exact\n match via ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchTextMatchStyle','autoFetchTextMatchStyle')}, but if you want a mix of exact vs substring\n match on different fields, you need to use this property, and your ListGrid will produce\n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} rather than the simpler ${isc.DocUtils.linkForRef('type:Criteria')} format.  This is\n automatically and transparently handled by the SmartClient Server's SQLDataSource and\n HibernateDataSource in Power Edition or above, but if you have your own filtering\n implementation, it will need to be able to handle AdvancedCriteria.",
        name:"filterOperator",
        seeAlso:[
        ],
        valueType:"OperatorId",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:SectionStack.removeItem":{
        ref:"method:SectionStack.removeItem",
        flags:"",
        description:" Remove an item from a section.\n",
        name:"removeItem",
        seeAlso:[
        ],
        params:[
            {
                description:"ID or index of the section to remove item from",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"String or Number"
            },
            {
                description:"Item to remove",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"Canvas"
            }
        ],
        type:"method",
        definingClass:"class:SectionStack"
    },
    "method:TabSet.addTab":{
        ref:"method:TabSet.addTab",
        flags:"A",
        description:" Add a tab\n",
        name:"addTab",
        seeAlso:[
            {
                ref:"method:TabSet.addTabs",
                description:null
            }
        ],
        params:[
            {
                description:"new tab",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab"
            },
            {
                description:"position where tab should be added",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('tabsAddAndRemove')}"
        ],
        definingClass:"class:TabSet"
    },
    "classAttr:Page.protocolURLs":{
        ref:"classAttr:Page.protocolURLs",
        flags:"IRW",
        description:"If a URL provided to various Page APIs begins with one of these Strings, it is treated\n as an absolute URL.\n <P>\n The default of protocols is:\n <pre>\n     [\"http://\",\"https://\",\"file://\",\"mailto:\", \"app-resource:\", \"data:\"]\n </pre>\n .. and can be replaced via ${isc.DocUtils.linkForRef('classMethod:Class.addClassProperties','Page.addClassProperties()')} or\n via setting the global variable isc_protocolURLs before SmartClient loads.",
        name:"protocolURLs",
        seeAlso:[
            {
                ref:"classMethod:Page.getURL",
                description:null
            }
        ],
        valueType:"Array of String",
        defaultValue:"[...]",
        type:"classAttr",
        definingClass:"class:Page",
        groups:[
            "files"
        ]
    },
    "attr:Canvas.prompt":{
        ref:"attr:Canvas.prompt",
        flags:"IRW",
        description:"Prompt displayed in hover canvas if ${isc.DocUtils.linkForRef('attr:Canvas.showHover','showHover')} is true.",
        name:"prompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customHovers')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "method:CubeGrid.anyCellSelected":{
        ref:"method:CubeGrid.anyCellSelected",
        flags:"",
        description:" Determine whether any cells are selected in this cubeGrid.\n\n  <br><i>methodType</i> tester\n",
        name:"anyCellSelected",
        seeAlso:[
        ],
        returns:{
            description:"true if any cells are selected",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:Label.showRollOverIcon":{
        ref:"attr:Label.showRollOverIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image on mouse rollover.",
        name:"showRollOverIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:TabSet.simpleTabBaseStyle":{
        ref:"attr:TabSet.simpleTabBaseStyle",
        flags:"IRW",
        description:"If this.useSimpleTabs is true, simpleTabBaseClass will be the base style used to \n  determine the css style to apply to the tabs.<br>\n  This property will be suffixed with the side on which the tab-bar will appear, followed\n  by with the tab's state (selected, over, etc), resolving to a className like \n  \"tabButtonTopOver\"",
        name:"simpleTabBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"tabButton\"",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "classMethod:SimpleType.getType":{
        ref:"classMethod:SimpleType.getType",
        flags:"",
        description:" Retrieve a simpleType definition by type name\n",
        name:"getType",
        seeAlso:[
        ],
        params:[
            {
                description:"the <code>name</code> of the simpleType to return",
                optional:false,
                name:"typeName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"simple type object",
            type:"SimpleType"
        },
        type:"classMethod",
        definingClass:"class:SimpleType"
    },
    "method:ListGrid.selectSingleRecord":{
        ref:"method:ListGrid.selectSingleRecord",
        flags:"",
        description:" Select a single ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index, and deselect everything else.\n When programmatic selection of records is a requirement and \n ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType','selectionType()')} is \"single\", use this method rather than \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.selectRecord','selectRecord()')} to \n enforce mutually-exclusive record-selection.\n\n",
        name:"selectSingleRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to select",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "attr:DateRangeDialog.cancelButton":{
        ref:"attr:DateRangeDialog.cancelButton",
        flags:"IR",
        description:"Button used for cancelling the dialog.  Note that, since this is an ${isc.DocUtils.linkForRef('type:AutoChild')}, it can\n be configured using cancelButtonDefaults and cancelButtonProperties.",
        name:"cancelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeDialog"
    },
    "attr:PortalLayout.canResizeColumns":{
        ref:"attr:PortalLayout.canResizeColumns",
        flags:"IRW",
        description:"Are columns in this PortalLayout drag-resizeable?\n <p>\n Note that the <u>displayed</u> width of a column will automatically shrink and stretch\n to accomodate the width of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} -- see ${isc.DocUtils.linkForRef('attr:PortalLayout.canStretchColumnWidths','canStretchColumnWidths')}\n and ${isc.DocUtils.linkForRef('attr:PortalLayout.canShrinkColumnWidths','canShrinkColumnWidths')} for an explanation. \n This setting affects the <u>intrinsic</u> width of a column --\n that is, the width it will try to return to when not necessary to stretch or shrink\n to accomodate Portlet widths.",
        name:"canResizeColumns",
        setter:[
            "setCanResizeColumns"
        ],
        seeAlso:[
            {
                ref:"attr:PortalLayout.canStretchColumnWidths",
                description:null
            },
            {
                ref:"attr:PortalLayout.canShrinkColumnWidths",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('portalColumnWidth')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:ListGrid.showRecordComponents":{
        ref:"attr:ListGrid.showRecordComponents",
        flags:"IRWA",
        description:"If set to true, this listGrid should create and show an embedded component in every\n row of the grid.\n <P>\n Developers using this feature should implement the\n ${isc.DocUtils.linkForRef('method:ListGrid.createRecordComponent')} and ${isc.DocUtils.linkForRef('method:ListGrid.updateRecordComponent')}\n methods.\n <P>\n createRecordComponent() will be called by the grid as rows are rendered to create the\n record components to use per record or per cell.  Your implementation should return a\n component to embed in the record passed in. Note that this method should create and\n return a new component each time it is called.\n <P>\n This feature also supports reusing components in different rows in the grid. If\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentPoolingMode')} is set to <code>\"recycle\"</code>,\n components created by the <code>createRecordComponent</code>\n method will become available for reuse when they are no longer associated with a record.\n The system will automatically store these in a pool. When a record with no\n associated component is rendered, if there are any recordComponents in this pool,\n the system will call ${isc.DocUtils.linkForRef('method:ListGrid.updateRecordComponent')}, and pass in the component.\n This allows the developer to apply record-specific attributes to an already created\n component and render it out into the new record. This greatly improves performance for\n large grids as it allows a small number of components to be created and reused rather\n than maintaining potentially one record component for every cell in the grid.\n <P>\n Record components are refreshed according to the recordComponentPooling mode. If set to\n <code>data</code> components will be maintained as long as their associated record remains\n present in the data set (but this can require a component to be created for every record so\n is not desirable for large data sets). Otherwise record components are refreshed as they\n are scrolled into view. Note that you can explicitly refresh record components via\n ${isc.DocUtils.linkForRef('method:ListGrid.invalidateRecordComponents')} and ${isc.DocUtils.linkForRef('method:ListGrid.refreshRecordComponent')}\n <P>\n NOTE: recordComponents can have an impact on row height and therefore may require\n ${isc.DocUtils.linkForRef('attr:ListGrid.virtualScrolling')}.\n This is not supported in conjunction with ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen fields')}.\n If you are using recordComponents in a listGrid with frozenFields, you can specify an\n explicit ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentHeight')} to ensure every row in the grid renders\n tall enough to accommodate the recordComponents, and as such virtual scrolling is not\n required.",
        name:"showRecordComponents",
        setter:[
            "setShowRecordComponents"
        ],
        seeAlso:[
            {
                ref:"attr:ListGrid.recordComponentPosition",
                description:null
            },
            {
                ref:"attr:ListGrid.showRecordComponentsByCell",
                description:null
            },
            {
                ref:"type:RecordComponentPoolingMode",
                description:null
            },
            {
                ref:"method:ListGrid.showRecordComponent",
                description:null
            },
            {
                ref:"method:ListGrid.createRecordComponent",
                description:null
            },
            {
                ref:"method:ListGrid.updateRecordComponent",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.ariaRole":{
        ref:"attr:Canvas.ariaRole",
        flags:"IR",
        description:"ARIA role of this component.  Usually does not need to be manually set - see\n ${isc.DocUtils.linkForRef('group:accessibility')}.",
        name:"ariaRole",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "accessibility"
        ]
    },
    "attr:FacetChart.decimalPrecision":{
        ref:"attr:FacetChart.decimalPrecision",
        flags:"IR",
        description:"Default precision used when formatting float numbers for axis labels",
        name:"decimalPrecision",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:UploadItem.height":{
        ref:"attr:UploadItem.height",
        flags:"IRW",
        description:"Height for this uploadItem. Note that SmartClient will not apply this size to the\n native HTML &lt;input ...&gt; element written out by this formItem as this leads to\n inconsistent appearance across different browsers. The specified height\n acts as a minimum cell width for the item.",
        name:"height",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"19",
        type:"attr",
        definingClass:"class:UploadItem"
    },
    "attr:FormItem.icons":{
        ref:"attr:FormItem.icons",
        flags:"IRW",
        description:"An array of descriptor objects for icons to display in a line after this form item.\n  These icons are clickable images, often used to display some kind of helper for \n  populating a form item.",
        name:"icons",
        seeAlso:[
            {
                ref:"object:FormItemIcon",
                description:null
            }
        ],
        valueType:"Array of FormItemIcon Properties",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('formIcons')}"
        ],
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "attr:Chart.shouldAnimateShow":{
        ref:"attr:Chart.shouldAnimateShow",
        flags:"IR",
        description:"Whether the chart should animate when shown (eg, bars or columns grow into place)",
        name:"shouldAnimateShow",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:Chart",
        groups:[
            "chartAppearance"
        ]
    },
    "attr:Applet.src":{
        ref:"attr:Applet.src",
        flags:"IR",
        description:"A URL that points to the class of this applet.  This is the same as the 'code' attribute.\n  Note that if you specify both the src and the code attributes, the src attribute will be\n  ignored in favor of the code attribute.",
        name:"src",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:FormItem.ariaRole":{
        ref:"attr:FormItem.ariaRole",
        flags:"IRWA",
        description:"ARIA role of this formItem.  Usually does not need to be manually set - see\n ${isc.DocUtils.linkForRef('group:accessibility')}.",
        name:"ariaRole",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "accessibility"
        ]
    },
    "attr:FilterBuilder.topOperatorItem":{
        ref:"attr:FilterBuilder.topOperatorItem",
        flags:"IR",
        description:"Automatically generated SelectItem autoChild shown in the ${isc.DocUtils.linkForRef('attr:FilterBuilder.topOperatorForm')}.\n Developers may customize this item using the standard autoChild pattern (by\n modifying <code>topOperatorItemDefaults</code> and \n <code>topOperatorItemProperties</code>).\n <P>\n If this FilterBuilder shows nested sub-clauses, the same defaults will be applied to the\n top-operator item for each sub-clause.",
        name:"topOperatorItem",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:DetailViewerField.escapeHTML":{
        ref:"attr:DetailViewerField.escapeHTML",
        flags:"IR",
        description:"By default HTML values in DetailViewer cells will be interpreted by the browser.\n Setting this flag to true will causes HTML characters to be escaped, meaning the\n raw value of the field (for example <code>\"&lt;b&gt;AAA&lt;/b&gt;\"</code>) is displayed\n to the user rather than the interpreted HTML (for example <code>\"<b>AAA</b>\"</code>)",
        name:"escapeHTML",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DetailViewerField"
    },
    "method:PortalLayout.setColumnPreventUnderflow":{
        ref:"method:PortalLayout.setColumnPreventUnderflow",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.preventColumnUnderflow','preventColumnUnderflow')} and reflows the layout to implement it.\n",
        name:"setColumnPreventUnderflow",
        seeAlso:[
        ],
        params:[
            {
                description:"Whether to stretch the last ${isc.DocUtils.linkForRef('class:Portlet')} in a column to  fill the column's height.",
                optional:false,
                name:"preventColumnUnderflow",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('portletHeight')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:SearchForm.showFilterFieldsOnly":{
        ref:"attr:SearchForm.showFilterFieldsOnly",
        flags:"IRWA",
        description:"If this attribute is true any ${isc.DocUtils.linkForRef('attr:DataSourceField.canFilter','canFilter:false')} fields\n specified on the dataSource will not be shown unless explicitly included in this component's\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields','fields array')}",
        name:"showFilterFieldsOnly",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SearchForm"
    },
    "attr:Slider.vTrackStyle":{
        ref:"attr:Slider.vTrackStyle",
        flags:"IR",
        description:"Optional CSS style for the track for a vertically oriented slider.\n <P>\n Will have the suffix \"Disabled\" added when the slider is disabled.",
        name:"vTrackStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:TileGrid.tileDragAppearance":{
        ref:"attr:TileGrid.tileDragAppearance",
        flags:"IRWA",
        description:"Visual appearance to show when the tile is being dragged.",
        name:"tileDragAppearance",
        seeAlso:[
            {
                ref:"attr:Canvas.dragAppearance",
                description:null
            }
        ],
        valueType:"DragAppearance",
        defaultValue:"EventHandler.TRACKER",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "dragdrop"
        ]
    },
    "attr:HTMLFlow.contents":{
        ref:"attr:HTMLFlow.contents",
        flags:"IRW",
        description:"The contents of a canvas or label widget. Any HTML string is acceptable.",
        name:"contents",
        setter:[
            "setContents"
        ],
        seeAlso:[
            {
                ref:"attr:HTMLFlow.dynamicContents",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contents"
        ]
    },
    "attr:DrawItem.fillGradient":{
        ref:"attr:DrawItem.fillGradient",
        flags:"IRW",
        description:"Fill gradient to use for shapes.  If a string it uses the gradient identifier parameter provided in \n ${isc.DocUtils.linkForRef('method:DrawPane.addGradient')}. Otherwise it expects one of ${isc.DocUtils.linkForRef('object:SimpleGradient','SimpleGradient')},\n ${isc.DocUtils.linkForRef('object:LinearGradient','LinearGradient')} or ${isc.DocUtils.linkForRef('object:RadialGradient','RadialGradient')}.",
        name:"fillGradient",
        setter:[
            "setFillGradient"
        ],
        seeAlso:[
            {
                ref:"object:Gradient",
                description:null
            }
        ],
        valueType:"Gradient | string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "fill"
        ]
    },
    "attr:FormItem.hoverHeight":{
        ref:"attr:FormItem.hoverHeight",
        flags:"IRW",
        description:"Option to specify a height for any hover shown for this item.",
        name:"hoverHeight",
        seeAlso:[
            {
                ref:"attr:DynamicForm.itemHoverHeight",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:StretchImgButton.showFocus":{
        ref:"attr:StretchImgButton.showFocus",
        deprecated:"as of SmartClient version 6.1 in favor of ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused')}",
        flags:"IRW",
        description:"Should we visibly change state when the canvas receives focus?  Note that by default the\n <code>over</code> state is used to indicate focus.",
        name:"showFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "attr:IconMenuButton.menuAnimationEffect":{
        ref:"attr:IconMenuButton.menuAnimationEffect",
        flags:"IRWA",
        description:"Allows you to specify an animation effect to apply to the menu when it is being shown.\n Valid options are \"none\" (no animation), \"fade\", \"slide\" and \"wipe\".\n If unspecified falls through to <code>menu.showAnimationEffect</code>",
        name:"menuAnimationEffect",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconMenuButton"
    },
    "classMethod:RPCManager.cancelQueue":{
        ref:"classMethod:RPCManager.cancelQueue",
        flags:"",
        description:" Cancel a queue of requests (also called a transaction).\n <P>\n If a transactionId is passed, that transaction will be cancelled, otherwise, the current \n (not yet sent) transaction is cancelled.  You can retrieve the id of the current \n transaction, if there is one, by calling \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.getCurrentTransactionId','getCurrentTransactionId()')} before the\n transaction has been sent.\n <P>\n Note that cancelQueue() calls ${isc.DocUtils.linkForRef('classMethod:RPCManager.clearTransaction','clearTransaction()')}\n and attempts to abort the request.  However, note also that whilst cancelling a \n transaction that has already been sent will not necessarily stop the HTTP request that \n has been issued - this is only possible on some browsers and with some transports - it \n will reliably cause SmartClient to ignore any response returned by the server and not \n fire any callbacks that have been passed in.\n \n",
        name:"cancelQueue",
        seeAlso:[
        ],
        params:[
            {
                description:"transactionId of the queue.",
                optional:true,
                name:"transactionNum",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:DataSource.schemaNamespace":{
        ref:"attr:DataSource.schemaNamespace",
        flags:"R",
        description:"For a DataSource derived from WSDL or XML schema, the XML namespace this schema belongs\n to.  This is a read-only attribute automatically present on DataSources returned from\n ${isc.DocUtils.linkForRef('method:SchemaSet.getSchema')} and ${isc.DocUtils.linkForRef('method:WebService.getSchema')}.",
        name:"schemaNamespace",
        seeAlso:[
        ],
        valueType:"URN",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "wsdlBinding",
            "clientDataIntegration"
        ]
    },
    "attr:ListGrid.selectionAppearance":{
        ref:"attr:ListGrid.selectionAppearance",
        flags:"IRW",
        description:"How selection of rows should be presented to the user.\n <P>\n For <code>selectionAppearance:\"checkbox\"</code> with multiple selection\n allowed, you would typically use ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType')}:\"simple\" (the default).  Because\n <code>selectionType</code> and <code>selectionAppearance</code> are unrelated,\n the combination of <code>selectionAppearance:\"checkbox\"</code> and\n <code>selectionType:\"multiple\"</code> results in a grid where multiple selection can\n only be achieved via shift-click or ctrl-click.\n <P>\n If using <code>\"checkbox\"</code> for a ${isc.DocUtils.linkForRef('class:ListGrid')}, see also\n ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxField')} for customization APIs.\n <P>\n If using <code>\"checkbox\"</code> for a ${isc.DocUtils.linkForRef('class:TreeGrid')}, an extra icon,\n ${isc.DocUtils.linkForRef('method:TreeGrid.getExtraIcon')} is not supported. Additionally only\n ${isc.DocUtils.linkForRef('attr:ListGrid.selectionType')}:\"simple\" and \"single\" are supported.\n You can also toggle the display of a disabled checkbox on a treegrid, displayed\n when the node can't be selected, via ${isc.DocUtils.linkForRef('attr:TreeGrid.showDisabledSelectionCheckbox')}.",
        name:"selectionAppearance",
        setter:[
            "setSelectionAppearance"
        ],
        seeAlso:[
        ],
        valueType:"SelectionAppearance",
        defaultValue:"\"rowStyle\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "method:FilterBuilder.getValueFieldProperties":{
        ref:"method:FilterBuilder.getValueFieldProperties",
        flags:"",
        description:" \n Override to return properties for the FormItem(s) used for the \"value\" field displayed within\n clauses within this filterBuilder.\n <P>\n Note that the ${isc.DocUtils.linkForRef('attr:Operator.valueType')} impacts when this method is called. For operators with\n valueType <code>\"fieldType\"</code> or <code>\"custom\"</code>, a single value field is displayed.\n For operators with valueType <code>\"valueRange\"</code> two value-field items are displayed\n (one for the start and one for the end position). The <code>valueItemType</code> parameter may\n be used to determine which form item is being generated.\n \n",
        name:"getValueFieldProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"type of the DataSource field for this filter row",
                optional:false,
                name:"type",
                defaultValue:null,
                type:"FieldType"
            },
            {
                description:"name of the DataSource field for this filter row",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"${isc.DocUtils.linkForRef('type:OperatorId')} for the chosen operator",
                optional:false,
                name:"operatorId",
                defaultValue:null,
                type:"OperatorId"
            },
            {
                description:"What valueItem is being generated.",
                optional:false,
                name:"itemType",
                defaultValue:null,
                type:"ValueItemType"
            }
        ],
        returns:{
            description:"properties for the value field",
            type:"FormItem Properties"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "method:DetailViewer.getCellStyle":{
        ref:"method:DetailViewer.getCellStyle",
        flags:"",
        description:" Return the CSS class for a cell. Default implementation calls\n ${isc.DocUtils.linkForRef('method:DetailViewerField.getCellStyle','getCellStyle()')} on the field if defined, otherwise\n returns ${isc.DocUtils.linkForRef('attr:DetailViewer.cellStyle','this.cellStyle')}\n",
        name:"getCellStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"actual value of this cell",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"field object for this cell",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DetailViewerField"
            },
            {
                description:"record object for this cell",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"the viewer instance to which this cell belongs",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"DetailViewer"
            }
        ],
        returns:{
            description:"CSS style for this cell",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.setShowGroupSummary":{
        ref:"method:ListGrid.setShowGroupSummary",
        flags:"",
        description:" Setter for the ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} attribute\n",
        name:"setShowGroupSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for this.showGroupSummary",
                optional:false,
                name:"showGroupSummary",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DataSource.recordsFromXML":{
        ref:"method:DataSource.recordsFromXML",
        flags:"A",
        description:" Transform a list of XML elements to DataSource records.\n <P>\n <code>recordsFromXML()</code> will create a List of DataSource records in the form of\n JavaScript objects.  The value for each field is extracted from the XML according to the\n rules described under ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath')}. \n <P>\n Derived JavaScript values for each field will be the appropriate JavaScript type, eg,\n for a field of \"date\" type, the JS value will be a JavaScript Date object.\n <P>\n Note that if the set of nodes exceeds ${isc.DocUtils.linkForRef('attr:DataSource.resultBatchSize')}, this method\n will break the XML processing logic into multiple threads and therefore complete\n asynchronously. In this case the return value will be null, and the callback parameter\n must be used to process the extracted records.\n \n",
        name:"recordsFromXML",
        seeAlso:[
        ],
        params:[
            {
                description:"XML elements to transform, eg, the result of a                                       call to ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectNodes')}",
                optional:false,
                name:"elements",
                defaultValue:null,
                type:"List of XMLElement"
            },
            {
                description:"Callback to fire when the transform completes. Takes a single    parameter <code>records</code> - the array of DataSource records derived from the\n    XML elements.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        returns:{
            description:"List of DataSource records derived from the XML elements, or null   if this method completed the XML processing asynchronously.",
            type:"List"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:DrawSector.startAngle":{
        ref:"attr:DrawSector.startAngle",
        flags:"IR",
        description:"Start angle of the sector in degrees.  Default of 0.0 will create a sector that starts\n with a line from the ${isc.DocUtils.linkForRef('attr:DrawSector.centerPoint')} and extends to the right for the indicated\n ${isc.DocUtils.linkForRef('attr:DrawSector.radius')}, then sweeps clockwise toward the ${isc.DocUtils.linkForRef('attr:DrawSector.endAngle')}.",
        name:"startAngle",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0.0",
        type:"attr",
        definingClass:"class:DrawSector"
    },
    "method:Slider.setMaxValue":{
        ref:"method:Slider.setMaxValue",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.maxValue','maximum value')} of the slider \n\n",
        name:"setMaxValue",
        seeAlso:[
        ],
        params:[
            {
                description:"the new maximum value <smartgwt><b>Note:</b>Use Doubles rather Floats when manipulating decimal\n values.  See ${isc.DocUtils.linkForRef('group:gwtFloatVsDouble')} for details</smartgwt>",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "method:ComboBoxItem.getClientPickListData":{
        ref:"method:ComboBoxItem.getClientPickListData",
        flags:"",
        description:" Returns the set of data to be displayed in this item's PickList.\n <P>\n This method will be called for non-databound form items implementing the PickList\n interface.  The default implementation will derive data from the item's valueMap - \n can be overridden to allow a custom set of options to be displayed.\n <P>\n Note that for PickLists that filter data based on user input\n (${isc.DocUtils.linkForRef('class:ComboBoxItem','ComboBox')}), this method should return the data <b>before\n filtering</b>.  To customize the data returned after filtering, override\n ${isc.DocUtils.linkForRef('method:ComboBoxItem.filterClientPickListData')} instead.\n <P>\n As an example, for a formItem with ${isc.DocUtils.linkForRef('attr:ComboBoxItem.valueField')} set to \"valueFieldName\", the\n default implementation would take a valueMap like the following:\n <pre>\n     valueMap: { value1: \"display 1\", value2: \"display 2\" }\n </pre>\n .. and returning the following set of records: \n <pre>\n     [\n          { valueFieldName : \"value1\" },\n          { valueFieldName : \"value2\" }\n     ]\n </pre>\n Due to the valueMap, these records will appear as a two row pickList displayed as\n \"display 1\" and \"display 2\".\n\n",
        name:"getClientPickListData",
        seeAlso:[
        ],
        returns:{
            description:"Array of record objects to be displayed in the           pickList. Note that when a user picks a record from the list, the value of the\n           field matching <code>item.valueField</code> will be picked. Also note that the\n           fields to be displayed can be customized via <code>item.pickListFields</code>",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "attr:DetailViewer.datetimeFormatter":{
        ref:"attr:DetailViewer.datetimeFormatter",
        flags:"IRW",
        description:"Display format to use for fields specified as type 'datetime'.  Default is to use the\n system-wide default long (\"normal\") date time format, configured via\n ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDatetimeDisplayFormat')}.  Specify any\n valid ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} to change the display format for datetimes used by this \n viewer.\n <smartclient>\n May be specified as a function. If specified as  a function, this function will\n be executed in the scope of the Date\n and should return the formatted string.\n </smartclient>\n <P>\n May also be specified at the field level via\n ${isc.DocUtils.linkForRef('attr:DetailViewerField.dateFormatter')}",
        name:"datetimeFormatter",
        seeAlso:[
            {
                ref:"attr:ListGridField.dateFormatter",
                description:null
            }
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.showCollapsedGroupSummary":{
        ref:"attr:ListGrid.showCollapsedGroupSummary",
        flags:"IRW",
        description:"Should group summaries be visible when the group is collapsed?\n <P>\n This property only applies to ${isc.DocUtils.linkForRef('method:ListGrid.groupBy','grouped')} grids showing\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary','group summary rows')}. When set to true, the\n group summary row(s) for each group will show up under the group header nodes when\n the group is collapsed, or at then end of the grouped set of data if the group\n is expanded.\n <P>\n This property has no effect if ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummaryInHeader')} is true.",
        name:"showCollapsedGroupSummary",
        setter:[
            "setShowCollapsedGroupSummary"
        ],
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:SummaryBuilder.autoHideCheckBox":{
        ref:"attr:SummaryBuilder.autoHideCheckBox",
        flags:"IR",
        description:"CheckBox that, when selected, hides columns in the component that are used in this formula.",
        name:"autoHideCheckBox",
        seeAlso:[
        ],
        valueType:"AutoChild TextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "summaryFields"
        ]
    },
    "method:Canvas.clickMaskUp":{
        ref:"method:Canvas.clickMaskUp",
        flags:"",
        description:" Determines whether a clickmask is showing\n",
        name:"clickMaskUp",
        seeAlso:[
            {
                ref:"method:Canvas.showClickMask",
                description:null
            }
        ],
        params:[
            {
                description:"optional ID of specific clickMask to check. If not passed,                      checks for the click mask associated with this widget only.",
                optional:true,
                name:"ID",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"whether or not a clickmask is showing",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "clickMask"
        ]
    },
    "type:DetailViewerViewState":{
        ref:"type:DetailViewerViewState",
        description:"An object containing the stored grouping information for a detailViewer.\n Note that this object is not intended to be interrogated directly, but may be stored \n (for example) as a blob on the server for state persistence across sessions.",
        name:"DetailViewerViewState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "group:validation":{
        ref:"group:validation",
        refs:[
            "method:DynamicForm.validateData",
            "method:ListGrid.clearRowErrors",
            "method:DynamicForm.getErrorsHTML",
            "method:DynamicForm.getItemErrorHTML",
            "method:DynamicForm.validate",
            "method:DynamicForm.valuesAreValid",
            "classMethod:Validator.addValidator",
            "classMethod:Validator.addValidators",
            "classMethod:Validator.addValidatorDefinition",
            "classMethod:Validator.addValidatorDefinitions",
            "attr:DataSource.useLocalValidators",
            "attr:DataSourceField.validators",
            "attr:DataBoundComponent.unknownErrorMessage",
            "attr:SimpleType.validators",
            "attr:DynamicForm.showInlineErrors",
            "attr:DynamicForm.showErrorIcons",
            "attr:DynamicForm.showErrorText",
            "attr:DynamicForm.showErrorStyle",
            "attr:DynamicForm.errorOrientation",
            "attr:DynamicForm.errorItemProperties",
            "attr:DynamicForm.errorItemCellStyle",
            "attr:DynamicForm.errorsPreamble",
            "attr:DynamicForm.showTitlesWithErrorMessages",
            "attr:DynamicForm.errors",
            "attr:DynamicForm.validateOnChange",
            "attr:DynamicForm.unknownErrorMessage",
            "attr:DynamicForm.validationURL",
            "attr:DynamicForm.disableValidation",
            "attr:FormItem.required",
            "attr:FormItem.requiredMessage",
            "attr:FormItem.showErrorIcon",
            "attr:FormItem.showErrorText",
            "attr:FormItem.showErrorStyle",
            "attr:FormItem.errorOrientation",
            "attr:FormItem.errorMessageWidth",
            "attr:TextItem.length",
            "attr:ValuesManager.disableValidation",
            "type:CharacterCasing"
        ],
        description:"Validation",
        name:"validation",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.printCheckboxFieldTrueImage":{
        ref:"attr:ListGrid.printCheckboxFieldTrueImage",
        flags:"IRWA",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxFieldTrueImage')} to use when ${isc.DocUtils.linkForRef('groupDef:printing','printing')}.",
        name:"printCheckboxFieldTrueImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.checkboxFieldTrueImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "checkboxField",
            "printing"
        ]
    },
    "attr:ListGrid.hiliteIconPosition":{
        ref:"attr:ListGrid.hiliteIconPosition",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:ListGrid.hiliteIcons','hiliteIcons')} are present, where the hilite icon will be placed \n relative to the field value.  See ${isc.DocUtils.linkForRef('type:HiliteIconPosition')}. Can be overriden at the\n field level.",
        name:"hiliteIconPosition",
        seeAlso:[
        ],
        valueType:"HiliteIconPosition",
        defaultValue:"\"before\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "attr:StatefulCanvas.showRollOverIcon":{
        ref:"attr:StatefulCanvas.showRollOverIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image on mouse rollover.",
        name:"showRollOverIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "method:ListGrid.getEditField":{
        ref:"method:ListGrid.getEditField",
        flags:"",
        description:"\n  Returns the field object associated with cell currently being edited\n\n",
        name:"getEditField",
        seeAlso:[
        ],
        returns:{
            description:"Field object definition",
            type:"object"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:Slider.showTitle":{
        ref:"attr:Slider.showTitle",
        flags:"IRW",
        description:"Indicates whether the slider's title should be displayed. The default position for this label\n is to the left of a horizontal slider, or above a vertical slider.",
        name:"showTitle",
        setter:[
            "setShowTitle"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.title",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Slider"
    },
    "group:treeField":{
        ref:"group:treeField",
        refs:[
            "attr:TreeGridField.treeField",
            "attr:TreeGrid.treeFieldTitle",
            "attr:TreeGrid.showRoot",
            "attr:TreeGrid.separateFolders",
            "attr:TreeGrid.sortFoldersBeforeLeaves",
            "attr:TreeGrid.displayNodeType"
        ],
        name:"treeField",
        seeAlso:[
        ],
        type:"group"
    },
    "class:RestDataSource":{
        methods:[
            "method:RestDataSource.transformRequest",
            "method:RestDataSource.transformResponse"
        ],
        ref:"class:RestDataSource",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:RestDataSource.dataProtocol",
            "attr:RestDataSource.dataFormat",
            "attr:RestDataSource.xmlRecordXPath",
            "attr:RestDataSource.xmlNamespaces",
            "attr:RestDataSource.jsonRecordXPath",
            "attr:RestDataSource.recordXPath",
            "attr:RestDataSource.prettyPrintJSON",
            "attr:RestDataSource.disableQueuing",
            "attr:RestDataSource.jsonPrefix",
            "attr:RestDataSource.jsonSuffix",
            "attr:RestDataSource.operationBindings",
            "attr:RestDataSource.dataURL",
            "attr:RestDataSource.fetchDataURL",
            "attr:RestDataSource.updateDataURL",
            "attr:RestDataSource.addDataURL",
            "attr:RestDataSource.removeDataURL",
            "attr:RestDataSource.sendMetaData",
            "attr:RestDataSource.metaDataPrefix"
        ],
        description:"The RestDataSource implements the 4 core DataSource operations using a simple protocol of\n XML or JSON requests and responses sent over HTTP, which can be easily fulfilled by any HTTP\n server technology.\n <P>\n RestDataSource is named for the\n <a href='http://www.google.com/search?hl=en&q=REST+HTTP' target='_blank'>REST</a> (REpresentational State\n Transfer) pattern, which in brief says that simple messages passed over HTTP is a sufficient\n protocol for many web applications, without the need for further protocols such as WSDL or\n SOAP.\n <P>\n A RestDataSource is used just like a normal DataSource.  RestDataSources are pre-configured,\n using the general-purpose databinding facilities of DataSources, to expect a particular\n format for responses and to send requests in a specific format.   These request and\n response formats represent Isomorphic's recommended best practices for binding SmartClient\n to backends which do not already support a similar, pre-existing request and response\n format and where the SmartClient Java Server cannot be used.  \n <P>\n If you have a pre-existing REST or WSDL service which is difficult to change, consider\n adapting SmartClient to the existing service instead, by starting with a normal\n ${isc.DocUtils.linkForRef('class:DataSource')} and using the \n ${isc.DocUtils.linkForRef('group:clientDataIntegration','client-side data integration')} facilities to create a\n mapping between SmartClient's ${isc.DocUtils.linkForRef('class:DSRequest')} and ${isc.DocUtils.linkForRef('class:DSResponse')} objects and the message\n formats of your existing services.\n <P>\n RestDataSource is typically used with PHP, Ruby, Python, Perl or custom server technologies,\n and represents an alternative to installing the SmartClient Server in a Java technology\n stack, or using ${isc.DocUtils.linkForRef('group:wsdlBinding','WSDL-based binding')} with .NET or other WSDL-capable\n technologies.  Note that SmartClient Server also provides built-in support for the REST\n protocol via its RESTHandler servlet; this is primarily to allow non-SmartClient clients\n to make use of DataSource operations.  If you particularly wished to do so, you could use\n RestDataSource to make a SmartClient app talk to the SmartClient Server using REST rather \n than the proprietary wire format normally used when communicating with SmartClient Server\n (this is how we are able to write automated tests for the RESTHandler servlet).  However,\n doing this provides no benefit, imposes a number of inconveniences, and makes a handful \n of server-based features less useful \n (${isc.DocUtils.linkForRef('attr:DataSourceField.viewRequiresAuthentication','field-level declarative security')}, for \n example), so we strongly recommend that you do <em>not</em> do this; it is only mentioned\n here for completeness while we are discussing REST.\n <P>\n The request and response formats used by the RestDataSource allow for many of the available\n features of SmartClient's databinding system to be used, including data paging, searching &\n sorting, ${isc.DocUtils.linkForRef('attr:DSRequest.oldValues','long transactions')}, \n ${isc.DocUtils.linkForRef('class:ResultSet','automatic cache sync')}, ${isc.DocUtils.linkForRef('group:relogin','relogin')} and \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queuing')}.  However,  advanced\n features such as ${isc.DocUtils.linkForRef('group:upload','uploading / binary fields')} and  \n ${isc.DocUtils.linkForRef('method:ListGrid.exportData','export')} aren't available with RestDataSource and need to be \n re-implemented as needed.  Most, though not all, ${isc.DocUtils.linkForRef('group:iscServer','server-based features')}\n are still available when using RestDataSource, as long as you are also using the RESTHandler \n servlet that is part of SmartClient Server.  However, as noted above, this approach is not \n recommended; if you are using Isomorphic technology both client- and server-side, it makes\n more sense to use the proprietary wire format.\n <P>\n <b>RestDataSource and binary data</b>\n <P>\n Binary data in a response provided to a RestDataSource must be delivered as valid XML or\n JSON Strings.  Once delivered to the browser as Strings, there is no way to trigger the\n browser's \"Save As\" dialog to download the data, and in most cases no way to trigger other\n helper applications that might be launched to handle binary data (such as Excel or a PDF\n viewer).  Hence for binary it usually makes sense to make a direct request via\n RPCManager.sendRequest() with downloadResult:true, separate from RestDataSource.\n <P>\n If you are using the SmartClient Server included in Pro, Power end Enterprise to handle your\n REST requests server-side, there is transparent support for conversion between Java \n <code>InputStream</code>s representing binary data, and Strings containing that binary \n data encoded using the <a href=http://en.wikipedia.org/wiki/Base64>Base64 algorithm</a>.\n Thus, on the server, the binary data is in its raw binary form, with transparent conversion\n to or from Base64 for messages to or from the REST client.\n <P>\n <span style=\"font-weight:bold;font-size:16px;\">Examples</span>\n <p>\n <b>XML formatted responses:</b>\n <P>\n RestDataSource expects a response like the following in response to a \"fetch\" request:\n <pre>\n &lt;response&gt;\n    &lt;status&gt;0&lt;/status&gt;\n    &lt;startRow&gt;0&lt;/startRow&gt;\n    &lt;endRow&gt;76&lt;/endRow&gt;\n    &lt;totalRows&gt;546&lt;/totalRows&gt;\n    &lt;data&gt;\n      &lt;record&gt;\n          &lt;field1&gt;value&lt;/field1&gt;\n          &lt;field2&gt;value&lt;/field2&gt;\n      &lt;/record&gt;\n      &lt;record&gt;\n          &lt;field1&gt;value&lt;/field1&gt;\n          &lt;field2&gt;value&lt;/field2&gt;\n      &lt;/record&gt;\n      <i>... 76 total records ... </i>\n    &lt;/data&gt;\n &lt;/response&gt;\n </pre>\n The &lt;status&gt; element indicates whether the fetch operation was successful \n (see ${isc.DocUtils.linkForRef('group:statusCodes')}).\n <P>\n The &lt;data&gt; element contains a list of record nodes, each of which represents a record\n returned by the server.  The optional &lt;startRow&gt;, &lt;endRow&gt; and &lt;totalRows&gt;\n elements are needed only if data paging is in use, and populate the\n ${isc.DocUtils.linkForRef('attr:DSResponse.startRow','startRow')}, ${isc.DocUtils.linkForRef('attr:DSResponse.endRow','endRow')} and\n ${isc.DocUtils.linkForRef('attr:DSResponse.totalRows','totalRows')} properties of the ${isc.DocUtils.linkForRef('class:DSResponse')}.\n <P>\n Note: for a more compact format, simple field values may be specified on record \n nodes directly as attributes - in this case a record element might be structured like this:\n <pre>\n     &lt;record field1=\"value\" field2=\"value\" /&gt;\n </pre>\n <p>\n Note that a RestDataSource will bypass browser caching of all responses by default.  See\n ${isc.DocUtils.linkForRef('attr:DataSource.preventHTTPCaching')}.\n <p>\n Successful \"add\" or \"update\" request responses are similar in format - in this case the data\n element would be expected to contain a single record object containing the details of the\n record, as saved on the server.\n <P>\n The response from a \"remove\" operation would again include status and data elements, but in\n this case, only the primary key field value(s) of the removed record would be expected to be \n present under the data element.\n <p>\n If a validation failure occurred on the server, the response would\n have status set to ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_VALIDATION_ERROR')} [<code>-4</code>],\n and any validation errors could be included as per-field sub-elements of an \"errors\"\n element.  For a validation error, the response is not expected to contain any\n &lt;data&gt; element.  \n <P>\n A response showing a validation error might look like this:\n <pre>\n &lt;response&gt;\n    &lt;status&gt;-4&lt;/status&gt;\n    &lt;errors&gt;\n      &lt;field1&gt;\n          &lt;errorMessage&gt;A validation error occurred for this field&lt;/errorMessage&gt;\n      &lt;/field1&gt;\n    &lt;/errors&gt;\n &lt;/response&gt;\n </pre>\n <P>\n An unrecoverable error, such as an unexpected server failure, can be flagged by setting\n &lt;status&gt; to -1 and setting &lt;data&gt; to an error message.  In this case the\n &lt;errors&gt; element is not used (it's specific to validation errors).  An unrecoverable\n error causes all response processing to be skipped and ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')} to be\n invoked, which by default will show the provided error message as an alert using\n ${isc.DocUtils.linkForRef('classMethod:isc.warn')}.\n <p>\n <b>JSON formatted responses:</b>\n <P>\n JSON format responses are expected to contain the same data / meta-data as XMLresponses,\n encapsulated in a simple object with a <code>\"response\"</code> attribute.<br>\n The response to a \"fetch\" request would therefore have this format:<br>\n <pre>\n {\n    \"response\": {\n       \"status\": 0,\n       \"startRow\": 0,\n       \"endRow\": 76,\n       \"totalRows\": 546,\n       \"data\": [\n           {\"field1\": \"value\", \"field2\": \"value\"},\n           {\"field1\": \"value\", \"field2\": \"value\"},\n           <i>... 76 total records ...</i>\n       ]\n    }\n }\n </pre>\n The structure successful for \"add\", \"update\" and \"remove\" responses would be similar, though\n the data array would be expected to contain only a single object, representing the values as\n saved.  This allows the server to return values such as an auto-generated sequence\n primaryKey, a last modified timestamp, or similar server-generated field values.\n <P>\n For a remove, only the value for the primaryKey field[s] would be required.\n <p>\n For a validation error, the <code>status</code> attribute would be set to \n ${isc.DocUtils.linkForRef('classAttr:RPCResponse.STATUS_VALIDATION_ERROR')} [<code>-4</code>], and errors would\n be specified in the <code>errors</code> attribute of the response. For example:\n <pre>\n {    \"response\":\n      {   \"status\": -4,\n          \"errors\":\n              {   \"field1\": {\"errorMessage\": \"A validation error on field1\"},\n                  \"field2\": {\"errorMessage\": \"A validation error on field2\"}\n              }\n      }\n }\n </pre>\n An array of errors may also be returned for a single field, like this:\n <pre>\n {    \"response\":\n      {   \"status\": -4,\n          \"errors\":\n              {   \"field1\": [\n                      {\"errorMessage\": \"First error on field1\"},\n                      {\"errorMessage\": \"Second error on field1\"}\n                  ]\n              }\n      }\n }\n </pre>\n <P>\n As with the XML format above, an unrecoverable error is indicated by setting the\n <code>status</code> attribute to -1 and the <code>data</code> property to the error message.\n <P>\n <b>Server inbound data formats</b>\n <P>\n The format of data sent to the server is determined by the ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol')}\n specified for the operation. Request data is sent as parameters if the format is \n specified as <code>\"getParams\"</code> or <code>\"postParams\"</code>.\n <P>\n In this case, the parameters sent to the server will consist of the DSRequest's data, and any\n parameters explicitly specified on the DSRequest object (as ${isc.DocUtils.linkForRef('attr:RPCRequest.params')}.<br> \n If ${isc.DocUtils.linkForRef('attr:RestDataSource.sendMetaData')} is true, the DSRequest meta \n data properties will also be present as parameters, prefixed with \n ${isc.DocUtils.linkForRef('attr:RestDataSource.metaDataPrefix')}.\n <P>\n Example URL constructed with the metaDataPrefix set to <code>\"_\"</code> (the default):\n <p>\n <code>\n &nbsp;&nbsp;&nbsp;<i>[dataURL]</i>?field1=value1&_operationType=fetch&_startRow=0&_endRow=50&_sortBy=-field2&_dataSource=dsName\n </code>\n <p>\n In this case the server would be able to separate the request's data from the meta data \n via the <code>\"_\"</code> prefix.\n <P>\n If data is sent to the server via the <code>\"postMessage\"</code> dataProtocol, the data will\n be serialized as an XML or JSON message according to the <code>dataFormat</code> setting.\n Both XML and JSON messages will contain request metadata such as startRow and endRow, and\n will appear exactly as though the subset of the ${isc.DocUtils.linkForRef('class:DSRequest')} that is meaningful to the\n server had been passed to ${isc.DocUtils.linkForRef('method:DataSource.xmlSerialize')} or ${isc.DocUtils.linkForRef('classMethod:JSON.encode')}\n respectively.\n <P>\n An example of an XML message might look like this:\n <pre>\n    &lt;request&gt;\n        &lt;data&gt;\n            &lt;countryCode&gt;US&lt;/countryCode&gt;\n            &lt;countryName&gt;Edited Value&lt;/countryName&gt;\n            &lt;capital&gt;Edited Value&lt;/capital&gt;\n            &lt;continent&gt;Edited Value&lt;/continent&gt;\n        &lt;/data&gt;\n        &lt;dataSource&gt;countryDS&lt;/dataSource&gt;\n        &lt;operationType&gt;update&lt;/operationType&gt;\n    &lt/request&gt;\n </pre>\n An example of an XML message for a fetch operation passing simple criteria:\n <pre>\n    &lt;request&gt;\n        &lt;data&gt;\n            &lt;continent&gt;North America&lt;/continent&gt;\n        &lt;/data&gt;\n        &lt;dataSource&gt;countryDS&lt;/dataSource&gt;\n        &lt;operationType&gt;fetch&lt;/operationType&gt;\n        &lt;startRow&gt;0&lt;/startRow&gt;\n        &lt;endRow&gt;75&lt;/endRow&gt;\n        &lt;componentId&gt;worldGrid&lt;/componentId&gt;\n        &lt;textMatchStyle&gt;exact&lt;/textMatchStyle&gt;\n    &lt/request&gt;\n </pre>\n And an example of an XML message for a fetch operation passing AdvancedCriteria:\n <pre>\n    &lt;request&gt;\n        &lt;data&gt;\n            &lt;_constructor&gt;AdvancedCriteria&lt;/_constructor&gt;\n            &lt;operator&gt;or&lt;/operator&gt;\n            &lt;criteria&gt;\n                &lt;criterion&gt;\n                    &lt;fieldName&gt;continent&lt;/fieldName&gt;\n                    &lt;operator&gt;equals&lt;/operator&gt;\n                    &lt;value&gt;North America&lt;/value&gt;\n                &lt;/criterion&gt;\n                &lt;criterion&gt;\n                    &lt;operator&gt;and&lt;/operator&gt;\n                    &lt;criteria&gt;\n                        &lt;criterion&gt;\n                            &lt;fieldName&gt;continent&lt;/fieldName&gt;\n                            &lt;operator&gt;equals&lt;/operator&gt;\n                            &lt;value&gt;Europe&lt;/value&gt;\n                        &lt;/criterion&gt;\n                        &lt;criterion&gt;\n                            &lt;fieldName&gt;population&lt;/fieldName&gt;\n                            &lt;operator&gt;greaterThan&lt;/operator&gt;\n                            &lt;value&gt;50000000&lt;/value&gt;\n                        &lt;/criterion&gt;\n                    &lt;/criteria&gt;\n                &lt;/criterion&gt;\n            &lt;/criteria&gt;\n        &lt;/data&gt;\n        &lt;dataSource&gt;countryDS&lt;/dataSource&gt;\n        &lt;operationType&gt;fetch&lt;/operationType&gt;\n        &lt;startRow&gt;0&lt;/startRow&gt;\n        &lt;endRow&gt;75&lt;/endRow&gt;\n        &lt;componentId&gt;worldGrid&lt;/componentId&gt;\n    &lt/request&gt;\n </pre>\n An example of an XML message for a fetch operation when using ${isc.DocUtils.linkForRef('group:serverSummaries','server-side summaries')}:\n <pre>\n    &lt;request&gt;\n        &lt;data&gt;&lt;/data&gt;\n        &lt;dataSource&gt;countryDS&lt;/dataSource&gt;\n        &lt;operationType&gt;fetch&lt;/operationType&gt;\n        &lt;summaryFunctions&gt;\n            &lt;pk&gt;count&lt;/pk&gt;\n        &lt;/summaryFunctions&gt;\n        &lt;groupBy&gt;member_g8&lt;/groupBy&gt;\n    &lt/request&gt;\n </pre>\n JSON messages are just the plain JSON form of the structures shown in the above XML\n examples. The advanced criteria XML example above but in JSON form:\n <pre>\n {\n     data: {\n         _constructor: \"AdvancedCriteria\",\n         operator: \"or\",\n         criteria: [\n             {\n                 fieldName: \"continent\",\n                 operator: \"equals\",\n                 value: \"North America\n             },\n             {\n                 operator: \"and\", criteria: [\n                     {\n                         fieldName: \"continent\",\n                         operator: \"equals\",\n                         value: \"Europe\"\n                     },\n                     {\n                         fieldName: \"population\",\n                         operator: \"greaterThan\",\n                         value: 50000000\n                     }\n                 ]\n             }\n         ]\n     }\n     dataSource: \"countryDS\",\n     operationType: \"fetch\",\n     startRow: 0,\n     endRow: 75,\n     componentId: \"worldGrid\"\n }\n </pre>\n The ${isc.DocUtils.linkForRef('attr:RestDataSource.operationBindings','default OperationBindings')} for a RestDataSource\n specify dataProtocol as \"getParams\" for the fetch operation, and \"postParams\" for update,\n add and remove operations.  Note that most webservers impose a limit on the maximum size \n of GET requests (specifically, on the size of the request URL + HTTP headers).  Using\n dataProtocol:\"getParams\" for \"fetch\" operations that involve complex AdvancedCriteria\n will result in a JSON serialization of the AdvancedCriteria in the request URL, and when\n combined with large cookies this can easily overflow the default limits on certain\n webservers (see\n <a href='http://stackoverflow.com/questions/686217/maximum-on-http-header-values' target='_blank'>http://stackoverflow.com/questions/686217/maximum-on-http-header-values</a>).\n For this reason, we recommend that you use the \"postMessage\" protocol whenever you are\n intending to use AdvancedCriteria with RestDataSource.\n\n <P>\n <b>Date, time and datetime values</b>\n <P>\n Date, time and datetime values must be communicated using XML Schema format, as in the \n following examples:\n <pre>\n &nbsp;&nbsp;&lt;dateField&gt;2007-04-22&lt;/dateField&gt;\n &nbsp;&nbsp;&lt;timeField&gt;11:07:13&lt;/timeField&gt;\n &nbsp;&nbsp;&lt;dateTimeField&gt;2007-04-22T11:07:13&lt;/dateTimeField&gt;\n &nbsp;&nbsp;&lt;dateTimeField&gt;2007-04-22T11:07:13.582&lt;/dateTimeField&gt;\n </pre>\n <P>\n And the equivalent in JSON:\n <pre>\n &nbsp;&nbsp;dateField: \"2007-04-22\"\n &nbsp;&nbsp;timeField: \"11:07:13\"\n &nbsp;&nbsp;dateTimeField: \"2007-04-22T11:07:13\"\n &nbsp;&nbsp;dateTimeField: \"2007-04-22T11:07:13.582\"\n </pre>\n <P>\n Both RestDataSource on the client-side and the RESTHandler servlet on the server side \n automatically handle encoding and decoding temporal values using these formats.  Both also\n handle datetime formats including or excluding milliseconds automatically.  When encoding,\n both honot the ${isc.DocUtils.linkForRef('attr:DataSource.trimMilliseconds')} setting on the DataSource, falling back\n to the <code>server.properties</code> setting <code>rest.trimMilliseconds</code>; when\n decoding, both detect whether or not to try to parse milliseconds based on the string they \n receive.\n <P>\n Fields of type \"date\" and \"time\" are considered to hold logical date and time values, as \n discussed in the ${isc.DocUtils.linkForRef('group:dateFormatAndStorage','date and time handling article')}, and are \n not affected by timezones.  Fields of type \"datetime\" will be converted to UTC on the \n client side by RestDataSource, and will be sent back down to the client as UTC by the \n server-side RESTHandler.  We recommend that your own REST client and/or server code do the\n same thing (ie, transmit all datetime values in both directions as UTC).  Note that the \n examples given above give no timezone information, and will be treated by the SmartClient\n Server as UTC values.  If you wish to work with datetime values in a particular timezone,\n use a format like this:\n <pre>\n &nbsp;&nbsp;&lt;dateField&gt;2007-04-22T11:07:13-0800&lt;/dateField&gt;\n &nbsp;&nbsp;&lt;dateField&gt;2012-11-19T22:12:04+0100&lt;/dateField&gt;\n </pre>\n <p>\n And the equivalent in JSON:\n <pre>\n <code>&nbsp;&nbsp;dateTimeField: \"2007-04-22T11:07:13-0800\"\n <code>&nbsp;&nbsp;dateTimeField: \"2012-11-19T22:12:04+0100\"\n </pre>\n <P>\n <b>NOTE:</b> Although we refer above to XML Schema format, the format used for specifying\n timezone offset is slightly different from XML Schema - as shown in the above examples, you\n specify \"+HHMM\" or \"-HHMM\", as opposed to the XML Schema format which requires a \":\" character\n between the hours and minutes.  The reason for this difference is simply that the Java \n SimpleDateFormat class imposes it.\n <p>\n <b>RestDataSource queuing support</b>\n <P>\n RestDataSource supports ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','queuing')} of DSRequests.  This allows \n you to send multiple requests to the server in a single HTTP turnaround, thus minimizing \n network traffic and allowing the server to treat multiple requests as a single transaction,\n if the server is able to do so (in Power Edition and above, the SmartClient Server\n transparently supports grouping multiple REST requests in a queue into a single database\n transaction when using one of the built-in DataSource types).  Note that you can disable \n queuing support with the ${isc.DocUtils.linkForRef('attr:RestDataSource.disableQueuing')} flag.\n <P>\n If you want to use queuing with RestDataSource, you must use the \"postMessage\" dataProtocol\n with either XML or JSON dataFormat.  Message format is similar to the non-queued examples \n shown earlier: it is simply extended to cope with the idea of multiple DSRequests \n encapsulated in the message.\n <P>\n An example of the XML message sent from RestDataSource to the server for two update requests\n combined into a queue, using XML dataFormat:\n <pre>\n &lt;transaction&gt;\n     &lt;operations&gt;\n         &lt;request&gt;\n             &lt;data&gt;\n                 &lt;pk&gt;1&lt;/pk&gt;\n                 &lt;countryName&gt;Edited Value&lt;/countryName&gt;\n                 &lt;capital&gt;Edited Value&lt;/capital&gt;\n                 &lt;continent&gt;Edited Value&lt;/continent&gt;\n             &lt;/data&gt;\n             &lt;dataSource&gt;countryDS&lt;/dataSource&gt;\n             &lt;operationType&gt;update&lt;/operationType&gt;\n         &lt/request&gt;\n         &lt;request&gt;\n             &lt;data&gt;\n                 &lt;pk&gt;2&lt;/pk&gt;\n                 &lt;capital&gt;Edited Value&lt;/capital&gt;\n                 &lt;population&gt;123456&lt;/population&gt;\n             &lt;/data&gt;\n             &lt;dataSource&gt;countryDS&lt;/dataSource&gt;\n             &lt;operationType&gt;update&lt;/operationType&gt;\n         &lt/request&gt;\n     &lt;/operations&gt;\n &lt;transaction&gt;\n </pre>\n And the same message in JSON format:\n <pre>\n { \n     transaction: { \n         operations: [{\n             dataSource:\"countryDS\", \n             operationType:\"update\", \n             data: {\n                 pk: 1\n                 countryName: \"Edited Value\",\n                 capital: \"Edited Value\",\n                 continent: \"Edited Value\"\n             }\n         }, {\n             dataSource:\"countryDS\", \n             operationType:\"update\", \n             data: {\n                 pk: 2,\n                 capital: \"Edited Value\",\n                 popuilation: 123456\n             }\n         }]\n     }\n }\n </pre>\n RestDataSource expects the response to a queue of requests to be a queue of responses in \n the same order as the original requests.  Again, the message format is very similar to the \n unqueued REST format, it just has an outer container construct.  Note also that the \n individual DSResponses in a queued response have an extra property, \n ${isc.DocUtils.linkForRef('attr:DSResponse.queueStatus','<code>queueStatus</code>')}.  This allows each individual\n response to determine whether the queue as a whole succeeded.  For example, if the first\n update succeeded but the second failed validation, the first response would have a\n <code>status</code> of 0, but a <code>queueStatus</code> of -1, while the second response\n would have both properties set to -1.\n <P>\n The update queue example given above would expect a response like this (in XML):\n <pre>\n &lt;responses&gt;\n     &lt;response&gt;\n         &lt;status&gt;0&lt;/status&gt;\n         &lt;queueStatus&gt;0&lt;/queueStatus&gt;\n         &lt;data&gt;\n             &lt;record&gt;\n                 &lt;countryName&gt;Edited Value&lt;/countryName&gt;\n                 &lt;gdp&gt;1700.0&lt;/gdp&gt;\n                 &lt;continent&gt;Edited Value&lt;/continent&gt;\n                 &lt;capital&gt;Edited Value&lt;/capital&gt;\n                 &lt;pk&gt;1&lt;/pk&gt;\n             &lt;/record&gt;\n         &lt;/data&gt;\n     &lt;/response&gt;\n     &lt;response&gt;\n         &lt;status&gt;0&lt;/status&gt;\n         &lt;queueStatus&gt;0&lt;/queueStatus&gt;\n         &lt;data&gt;\n             &lt;record&gt;\n                 &lt;countryName&gt;United States&lt;/countryName&gt;\n                 &lt;gdp&gt;7247700.0&lt;/gdp&gt;\n                 &lt;continent&gt;North America&lt;/continent&gt;\n                 &lt;independence&gt;1776-07-04&lt;/independence&gt;\n                 &lt;capital&gt;Washington DC&lt;/capital&gt;\n                 &lt;pk&gt;2&lt;/pk&gt;\n                 &lt;population&gt;123456&lt;/population&gt;\n             &lt;/record&gt;\n         &lt;/data&gt;\n     &lt;/response&gt;\n &lt;/responses&gt;\n </pre>\n And in JSON:\n <pre>\n [\n {\n     \"response\": {\n         \"queueStatus\": 0,\n         \"status\": 0, \n         \"data\": [{\n             \"countryName\": \"Edited Value\",\n             \"gdp\": 1700.0,\n             \"continent\": \"Edited Value\",\n             \"capital\": \"Edited Value\",\n             \"pk\": 1\n         }]\n     }\n },\n {\n     \"response\": {\n         \"queueStatus\": 0,\n         \"status\": 0,\n         \"data\": [{\n             \"countryName\": \"United States\",\n             \"gdp\": 7247700.0,\n             \"continent\": \"North America\",\n             \"independence\": \"1776-07-04\",\n             \"capital\": \"Washington DC\",\n             \"pk\": 2,\n             \"population\": 123456\n         }]\n     }\n }\n ]\n </pre>\n <b>Hierarchical (Tree) data:</b>\n <P>\n To create a hierarchical DataSource, in the DataSource's <code>fields</code> array, a field \n must be specified as the parent id field - the field which will contain a pointer to the\n id of each node's parent. \n This can be achieved by setting the ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')} and the \n ${isc.DocUtils.linkForRef('attr:DataSourceField.rootValue')} attributes on the field definition. For example:\n <pre>\n RestDataSource.create({\n    ID:\"supplyItem\",\n    fields : [\n        {name:\"itemId\", type:\"sequence\", primaryKey:true},\n        {name:\"parentId\", type:\"integer\", foreignKey:\"supplyItem.itemId\", rootValue:0},\n        ...\n    ]\n });\n </pre>\n Tree Data is then treated on the server as a flat list of records linked by parent id.\n <P>\n Tree data is typically displayed using a dataBound ${isc.DocUtils.linkForRef('class:TreeGrid')} component. TreeGrids\n automatically create a ${isc.DocUtils.linkForRef('class:ResultTree')} data object, which requests data directly\n from the DataSource.  ResultTrees load data on demand, only requesting currently visible \n (open) nodes from the server. This is handled by including a specified value for the parent \n id field in the request criteria.<br>\n To implement a standard load-on-demand tree RestDataSource back end, you should therefore \n simply return the set of nodes that match the criteria passed in. \n For example, if your DataSource was defined as the \"supplyItem\" code snippet above, \n a fetch request for all children of a node with <code>itemId</code> set to <code>12</code> \n would have <code>\"parentId\"</code> set to <code>12</code> in the request criteria.\n A valid response would then contain all the records that matched this criteria. For example:\n <pre>\n &lt;response&gt;\n    &lt;status&gt;0&lt;/status&gt;\n    &lt;data&gt;\n      &lt;record&gt;\n          &lt;itemId&gt;15&lt;/itemId&gt;\n          &lt;parentId&gt;12&lt;/parentId&gt;\n      &lt;/record&gt;\n      &lt;record&gt;\n          &lt;itemId&gt;16&lt;/itemId&gt;\n          &lt;parentId&gt;12&lt;/parentId&gt;\n      &lt;/record&gt;\n    &lt;/data&gt;\n &lt;/response&gt;\n </pre>\n The structure of responses for Add, Update and Delete type requests will be the \n same regardless of whether the data is hierarchical. However you should be aware that \n the underlying data storage may need to be managed slightly differently in some cases.\n <P>\n Specifically, Add and Update operations may change the structure of the tree by returning a \n new parent id field value for the modified node. Depending on how your data is stored you \n may need to include special back-end logic to handle this.\n <P>\n Also, if a user deletes a folder within a databound tree, any children of that folder will \n also be dropped from the tree, and can be removed from the back-end data storage.\n <P>\n Note: For a general overview of binding components to Tree structured data, see \n ${isc.DocUtils.linkForRef('group:treeDataBinding','Tree Databinding')}.",
        name:"RestDataSource",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('restEditSave')}"
        ]
    },
    "method:SectionStack.sectionIsExpanded":{
        ref:"method:SectionStack.sectionIsExpanded",
        flags:"",
        description:"\n Returns true if the specified section is expanded, false if it is collapsed.\n\n",
        name:"sectionIsExpanded",
        seeAlso:[
        ],
        params:[
            {
                description:"Section for which you want to obtain information.\n                      For this parameter, you can pass the position of the section in the\n                      SectionStack, or the name of the section.",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"int | String"
            }
        ],
        returns:{
            description:"true if the section is expanded, false if it is not.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "attr:Calendar.todayBackgroundColor":{
        ref:"attr:Calendar.todayBackgroundColor",
        flags:"IR",
        description:"The background color for today in the Month view, or in the Timeline view when \n +{timelineGranularity} is \"day\".",
        name:"todayBackgroundColor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:FacetChart.getFacetValue":{
        ref:"method:FacetChart.getFacetValue",
        flags:"",
        description:" Get facet value definition by facetId and facetValueId.\n",
        name:"getFacetValue",
        seeAlso:[
            {
                ref:"class:FacetValue",
                description:null
            }
        ],
        params:[
            {
                description:"the id of the facet to retrieve",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"String"
            },
            {
                description:"the id of the facet value to retrieve",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the FacetValue if found, or null",
            type:"FacetValue"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:OperationBinding.dataFormat":{
        ref:"attr:OperationBinding.dataFormat",
        flags:"IR",
        description:"Format for response data for this operation.\n <P>\n Typically set once for the DataSource as a whole via ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat')}.",
        name:"dataFormat",
        seeAlso:[
        ],
        valueType:"DSDataFormat",
        defaultValue:"\"iscServer\"",
        type:"attr",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:DateChooser.baseWeekendStyle":{
        ref:"attr:DateChooser.baseWeekendStyle",
        flags:"IRW",
        description:"Base CSS style applied to weekends. Will have \"Over\", \"Selected\" and \"Down\"\n suffix appended as the user interacts with buttons.  Defaults to ${isc.DocUtils.linkForRef('attr:DateChooser.baseWeekdayStyle')}.",
        name:"baseWeekendStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserWeekend\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "method:DrawRect.setHeight":{
        ref:"method:DrawRect.setHeight",
        flags:"",
        description:" Set the height of the drawRect\n",
        name:"setHeight",
        seeAlso:[
        ],
        params:[
            {
                description:"new height",
                optional:false,
                name:"height",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:StatefulCanvas.overCanvasConstructor":{
        ref:"attr:StatefulCanvas.overCanvasConstructor",
        flags:"IRWA",
        description:"Constructor class name for this widget's ${isc.DocUtils.linkForRef('attr:StatefulCanvas.overCanvas','overCanvas')}",
        name:"overCanvasConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Canvas\"",
        type:"attr",
        definingClass:"class:StatefulCanvas"
    },
    "attr:MultiSortDialog.levelDownButton":{
        ref:"attr:MultiSortDialog.levelDownButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ImgButton')} providing a mechanism for moving existing\n sort-levels down in the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.levelDownButtonProperties</code> and \n <code>multiSortPanel.levelDownButtonDefaults</code>.",
        name:"levelDownButton",
        seeAlso:[
        ],
        valueType:"AutoChild ImgButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "method:ListGrid.getEditFormItem":{
        ref:"method:ListGrid.getEditFormItem",
        flags:"A",
        description:" Method to retrieve a live edit form item for an ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','editable')} ListGrid.\n This is the automatically generated editor displayed in a cell while editing the grid.\n <P>\n Note that this is an advanced method and developers should be aware of the following issues:\n <ul><li>Edit form items are only present while a user is actually editing a cell. This method\n will return null if the user is not editing the grid or the field in question is not editable\n or not visible. Note that due to ${isc.DocUtils.linkForRef('attr:ListGrid.showAllColumns','incremental rendering')} columns which are\n not currently scrolled into view may be unrendered, in which case they may have no associated\n edit item until the user scrolls them into view.</li>\n <li>The items' values are managed by the ListGrid through the edit-values subsystem.\n If you want to change an edit value for a field, call ${isc.DocUtils.linkForRef('method:ListGrid.setEditValue')} and the\n grid will handle updating the value in the live item if necessary. You should not need to call\n <code>setValue();</code> directly on the item and doing so will not always update the\n edit value for the grid.\n </li></ul>\n In general - bear in mind that this is an advanced usage and if there is an equivalent API\n available on the ListGrid it is always preferable to use that.\n",
        name:"getEditFormItem",
        seeAlso:[
        ],
        params:[
            {
                description:"fieldName or colNum to get the edit item for.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"String or Integer"
            }
        ],
        returns:{
            description:"the live edit item for the current edit row and specified field, or null if the grid is not currently showing any editors.",
            type:"FormItem"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DateChooser.timeItemProperties":{
        ref:"attr:DateChooser.timeItemProperties",
        flags:"IRA",
        description:"Custom properties to apply to the ${isc.DocUtils.linkForRef('attr:DateChooser.timeItem','time field')} used \n for editing the time portion of the date.",
        name:"timeItemProperties",
        seeAlso:[
        ],
        valueType:"TimeItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:SplitPane.deviceMode":{
        ref:"attr:SplitPane.deviceMode",
        flags:"IR",
        description:"UI layout mode used for this <code>SplitPane</code>.\n <p>\n A <code>SplitPane</code> can be configured with up to 3 panes: the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane')},\n ${isc.DocUtils.linkForRef('attr:SplitPane.listPane')} and ${isc.DocUtils.linkForRef('attr:SplitPane.detailPane')}.  Both ${isc.DocUtils.linkForRef('type:DeviceMode')} and ${isc.DocUtils.linkForRef('type:PageOrientation')}\n influence the placement of these panes as follows:\n <ul>\n <li>\"handset\" <code>deviceMode</code>: only a single pane is shown at a time.  Not\n      orientation sensitive\n <li>\"tablet\" <code>deviceMode</code> with <code>pageOrientation</code>:\"landscape\": the\n      <code>detailPane</code> is shown side by side with either the\n      <code>navigationPane</code> or <code>listPane</code>\n <li>\"tablet\" <code>deviceMode</code> with <code>pageOrientation</code>:\"portrait\": the\n      <code>detailPane</code> is shown only.  End user navigation that would show the\n      <code>listPane</code> or <code>navigationPane</code> shows those panes on top of the\n      <code>detailPane</code> (temporarily covering part of its content)\n <li>\"desktop\" <code>deviceMode</code>: all 3 panes are shown simultaneously.  Not\n      orientation sensitive\n </ul>\n The <code>listPane</code> is optional; if not present, wherever the <code>listPane</code>\n is mentioned above, the <code>navigationPane</code> is shown instead.",
        name:"deviceMode",
        seeAlso:[
        ],
        valueType:"DeviceMode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:SectionStack.sectionIsVisible":{
        ref:"method:SectionStack.sectionIsVisible",
        flags:"",
        description:"\n Returns true if the specified section is visible, false if it is not.  A section is\n visible if it shows a header and the header is visible or if it has items and the first\n item is visible.\n\n",
        name:"sectionIsVisible",
        seeAlso:[
        ],
        params:[
            {
                description:"Section for which you want to obtain visibility information.\n                      For this parameter, you can pass the position of the section in the\n                      SectionStack, or the name of the section.",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"int | String"
            }
        ],
        returns:{
            description:"true if the section is visible, false if it is not.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "method:Canvas.clear":{
        ref:"method:Canvas.clear",
        flags:"A",
        description:" Remove all visual representation of a Canvas, including all child or member Canvases, or\n managed top-level components such as the ListGrid drop location indicator.\n <P>\n This is more expensive than hide(), because in order to become visible again, the Canvas must\n be draw()n again.  Generally, application code has no reason to call clear() unless it is\n attempting to do advanced memory management.  If you want to temporarily hide a Canvas, use\n hide() and show(), and if you want to permanently destroy a Canvas, use ${isc.DocUtils.linkForRef('method:Canvas.destroy')}.\n <P>\n You would only use clear() if you were managing a very large pool of components and you\n wanted to reclaim some of the memory used by components that had not been used in a while,\n while still being able to just draw() them to make them active and visible again.\n <P>\n Note: a clear() will happen as part of moving a Canvas to a different parent.  See\n ${isc.DocUtils.linkForRef('method:Canvas.addChild')}.\n\n",
        name:"clear",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:DynamicForm.browserSpellCheck":{
        ref:"attr:DynamicForm.browserSpellCheck",
        flags:"IRW",
        description:"If this browser has a 'spellCheck' feature for text-based form item elements, should\n it be used for items in this form? Can be overridden at the item level via \n ${isc.DocUtils.linkForRef('attr:FormItem.browserSpellCheck')}\n <P>\n Notes:<br>\n - this property only applies to text based items such as TextItem and TextAreaItem.<br>\n - this property is not supported on all browsers.",
        name:"browserSpellCheck",
        seeAlso:[
            {
                ref:"attr:FormItem.browserSpellCheck",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:StatefulCanvas.setIcon":{
        ref:"method:StatefulCanvas.setIcon",
        flags:"",
        description:" Change the icon being shown next to the title text.\n",
        name:"setIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"URL of new icon",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:ListGridField.filterEditorValueMap":{
        ref:"attr:ListGridField.filterEditorValueMap",
        flags:"IRW",
        description:"If this listGrid is showing a filter row, this property can be used to specify a\n  mapping of internal data to/from display values to be in the appropriate filter\n  row form item.",
        name:"filterEditorValueMap",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "filterEditor"
        ]
    },
    "attr:ColumnTree.initialCriteria":{
        ref:"attr:ColumnTree.initialCriteria",
        flags:"IR",
        description:"Criteria to be used when ${isc.DocUtils.linkForRef('attr:ColumnTree.autoFetchData')} is set.",
        name:"initialCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree"
    },
    "attr:MetricSettings.stacked":{
        ref:"attr:MetricSettings.stacked",
        flags:"IRW",
        description:"If the ${isc.DocUtils.linkForRef('type:ChartType')} is \"Column\" then the metric settings may include\n a setting for ${isc.DocUtils.linkForRef('attr:FacetChart.stacked')}.\n <p>",
        name:"stacked",
        setter:[
            "setStacked"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:MultiGroupDialog.getNumLevels":{
        ref:"method:MultiGroupDialog.getNumLevels",
        flags:"",
        description:" Return the number of levels of grouping that have been configured.\n\n",
        name:"getNumLevels",
        seeAlso:[
        ],
        returns:{
            description:"The number of levels of grouping that have been configured",
            type:"number"
        },
        type:"method",
        definingClass:"class:MultiGroupDialog"
    },
    "method:CubeGrid.getFacetValuesColumn":{
        ref:"method:CubeGrid.getFacetValuesColumn",
        flags:"",
        description:" Get the index of the first column in the grid that matches the specified FacetValueMap.\n <P>\n The facetValues passed in should contain values for at least one column facet.  It may\n contain properties other than column facets, which will be ignored.  If values are \n sparse (values not specified for every column facet), the first column matching the specified\n facet values will be returned.\n\n",
        name:"getFacetValuesColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"facet values to find",
                optional:false,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"index of first column in the grid that matches the facet values passed in,                   or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "classAttr:Validator.notADate":{
        ref:"classAttr:Validator.notADate",
        flags:"IRA",
        description:"Default error message to display when standard <code>isDate</code> type validator\n  returns false.",
        name:"notADate",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be a date.\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGridField.title":{
        ref:"attr:ListGridField.title",
        flags:"IRW",
        description:"A title for this field, to display in the header for the field and in other\n contexts such as the ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields','menu for picking visible fields')}.\n <P>\n Note: if you want to use HTML tags to affect the display of the header, you should do so\n via ${isc.DocUtils.linkForRef('attr:ListGridField.headerTitle')} instead so that other places where the title\n appears in the UI are not affected.  For example, you might set <code>headerTitle</code>\n to an empty string to suppress the header title on a narrow column, but you would retain\n the normal title in the <code>title</code> property to avoid a blank menu item in the\n field picker menu, ${isc.DocUtils.linkForRef('method:DataBoundComponent.editHilites','hilite editor')} and other contexts.\n <P>\n Alternately you can specify a ${isc.DocUtils.linkForRef('method:ListGridField.getFieldTitle')} method on the field to return the\n HTML for the field title.",
        name:"title",
        seeAlso:[
            {
                ref:"method:ListGridField.getFieldTitle",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.rowNumberField":{
        ref:"attr:ListGrid.rowNumberField",
        flags:"IRWA",
        description:"An automatically generated field that displays the current row number when\n ${isc.DocUtils.linkForRef('attr:ListGrid.showRowNumbers','showRowNumbers')} is true.",
        name:"rowNumberField",
        seeAlso:[
        ],
        valueType:"AutoChild ListGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "rowNumberField"
        ]
    },
    "attr:DynamicForm.errorItemProperties":{
        ref:"attr:DynamicForm.errorItemProperties",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:DynamicForm.showInlineErrors')} is false we show all errors for the form item in \n a single item rendered at the top of the form.<br>\n This attribute contains a properties block for this item.",
        name:"errorItemProperties",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:ListGrid.removeFieldProperties":{
        ref:"attr:ListGrid.removeFieldProperties",
        flags:"IR",
        description:"Configuration properties for the \"remove field\" displayed when\n ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is enabled.\n <smartclient>These configuration settings will be overlaid\n on top of the ${isc.DocUtils.linkForRef('attr:ListGrid.removeFieldDefaults')}.</smartclient>",
        name:"removeFieldProperties",
        seeAlso:[
        ],
        valueType:"ListGridField properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:FormulaBuilder.builderTypeText":{
        ref:"attr:FormulaBuilder.builderTypeText",
        flags:"IR",
        description:"Indicates whether to use \"formula\" or some other keyword in various captions and text",
        name:"builderTypeText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Formula\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.groupSummaryRecordProperty":{
        ref:"attr:ListGrid.groupSummaryRecordProperty",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true, this attribute will be set to true on each\n record object representing a group-level summary row.",
        name:"groupSummaryRecordProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"isGroupSummary\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.fieldPickerShowSampleValues":{
        ref:"attr:ListGrid.fieldPickerShowSampleValues",
        flags:"IR",
        description:"When set to false, sample values of the FieldPicker are never shown. This property applies to the entire FieldPicker.",
        name:"fieldPickerShowSampleValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:TableView.recordDataStyle":{
        ref:"attr:TableView.recordDataStyle",
        flags:"IRW",
        description:"Default style for data field.",
        name:"recordDataStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"recordData\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "attr:IconButton.largeIcon":{
        ref:"attr:IconButton.largeIcon",
        flags:"IRW",
        description:"Icon to show above the title when ${isc.DocUtils.linkForRef('type:Orientation')} is \"vertical\".\n <P>\n If a largeIcon is not specified, the ${isc.DocUtils.linkForRef('attr:IconButton.icon','normal icon')} will be stretched to \n the ${isc.DocUtils.linkForRef('attr:IconButton.largeIconSize')}.",
        name:"largeIcon",
        setter:[
            "setLargeIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "type:TreeModelType":{
        ref:"type:TreeModelType",
        values:[
            {
                description:"In this model, each node has an ID unique across the whole tree and a parent ID that points to its parent.  The name of the unique ID property can be specified\n via ${isc.DocUtils.linkForRef('attr:Tree.idField')} and the name of the parent ID property can be specified via\n ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}.  The initial set of nodes can be passed in as a list to\n ${isc.DocUtils.linkForRef('attr:Tree.data')} and also added as a list later via ${isc.DocUtils.linkForRef('method:Tree.linkNodes')}.\n Whether or not a given node is a folder is determined by the value of the property specified\n by ${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty')}.\n <br><br>\n The \"parent\" modelType is best for integrating with relational storage (because nodes can\n map easily to rows in a table) and collections of Beans and is the model used for DataBound\n trees.",
                value:"\"parent\""
            },
            {
                description:"In this model, nodes specify their children as a list of nodes.  The property that holds the children nodes is determined by ${isc.DocUtils.linkForRef('attr:Tree.childrenProperty')}.\n Nodes are not required to have an ID that is unique across the whole tree (in fact, no ID is\n required at all).  Node names (specified by the ${isc.DocUtils.linkForRef('attr:Tree.nameProperty')}, unique within\n their siblings, are optional but not required.  Whether or not a given node is a folder is\n determined by the presence of the children list (${isc.DocUtils.linkForRef('attr:Tree.childrenProperty')}).",
                value:"\"children\""
            }
        ],
        description:null,
        name:"TreeModelType",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:TreeNode.enabled":{
        ref:"attr:TreeNode.enabled",
        flags:"IR",
        description:"Default property name denoting whether this record is enabled. Property name may be\n modified for some grid via ${isc.DocUtils.linkForRef('attr:ListGrid.recordEnabledProperty')}.",
        name:"enabled",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('disabledRows')}"
        ],
        definingClass:"object:TreeNode"
    },
    "attr:DrawItem.shadow":{
        ref:"attr:DrawItem.shadow",
        flags:"IRW",
        description:"Shadow used for all DrawItem subtypes.",
        name:"shadow",
        setter:[
            "setShadow"
        ],
        seeAlso:[
        ],
        valueType:"Shadow",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "class:TreePalette":{
        methods:[
        ],
        ref:"class:TreePalette",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools/Palette"
        ],
        attrs:[
            "attr:TreePalette.componentDefaults"
        ],
        description:"A TreeGrid that implements the Palette behavior, so it can be used as the source for \n drag and drop instantiation of components when combined with an ${isc.DocUtils.linkForRef('interface:EditContext')} as \n the drop target.\n <P>\n Each ${isc.DocUtils.linkForRef('object:TreeNode')} within ${isc.DocUtils.linkForRef('attr:TreeGrid.data')} can be a ${isc.DocUtils.linkForRef('object:PaletteNode')}.",
        name:"TreePalette",
        implementsInterfaces:[
            "Palette"
        ],
        seeAlso:[
        ],
        type:"class",
        groups:[
            "devTools"
        ]
    },
    "method:ListGrid.hilitesChanged":{
        ref:"method:ListGrid.hilitesChanged",
        flags:"",
        description:" Notification method executed whenever the end user uses the HiliteEditor to change\n the set of hilites applied to this grid.  This method will not be called after\n a purely programmatic change to the hilites made with a call to\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.setHilites','setHilites()')}.  The array of currently applied hilite objects is\n accessible via ${isc.DocUtils.linkForRef('method:DataBoundComponent.getHilites','getHilites()')}.\n",
        name:"hilitesChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "hiliting"
        ]
    },
    "group:rects":{
        ref:"group:rects",
        refs:[
        ],
        name:"rects",
        seeAlso:[
        ],
        type:"group"
    },
    "class:RecordEditor":{
        methods:[
            "method:RecordEditor.performAction"
        ],
        ref:"class:RecordEditor",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:RecordEditor.baseStyle",
            "attr:RecordEditor.skinImgDir",
            "attr:RecordEditor.filterImg",
            "attr:RecordEditor.actionButton",
            "attr:RecordEditor.actionButtonProperties",
            "attr:RecordEditor.actionButtonStyle"
        ],
        description:"Component for editing a single record.<br>\n  RecordEditors are implemented as a subclass of ListGrid, showing no header and a single \n  row always drawn in the editable state, allowing the user to modify the values at any time.\n  The ${isc.DocUtils.linkForRef('attr:RecordEditor.actionButton')} is automatically shown as a way for the user to act \n  upon the edited values.\n  <P>\n  The RecordEditor class exists as a helper class for ListGrids, used to provide\n  an interface for editing criteria when ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','filterEditor')} \n  is set to true.",
        name:"RecordEditor",
        seeAlso:[
            {
                ref:"attr:ListGrid.showFilterEditor",
                description:null
            },
            {
                ref:"attr:ListGrid.filterEditor",
                description:null
            }
        ],
        type:"class"
    },
    "type:ColorPickerMode":{
        ref:"type:ColorPickerMode",
        values:[
            {
                description:"Display a palette of 40 basic colors from which to pick.",
                value:"\"simple\""
            },
            {
                description:"In addition to the 40 basic colors, the user can specify a color from anywhere in the spectrum, with an optional alpha component.",
                value:"\"complex\""
            }
        ],
        description:null,
        name:"ColorPickerMode",
        seeAlso:[
        ],
        type:"type"
    },
    "method:FormItem.shouldSaveOnEnter":{
        ref:"method:FormItem.shouldSaveOnEnter",
        flags:"A",
        description:" Returns true if 'Enter' key presses in this formItem should allow a saveOnEnter: true\n parent form to save it's data.  The default implementation returns the value of\n ${isc.DocUtils.linkForRef('attr:FormItem.saveOnEnter')} or false if that property is unset.\n",
        name:"shouldSaveOnEnter",
        seeAlso:[
        ],
        returns:{
            description:"boolean indicating whether saving should be allowed to proceed",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:ListGrid.setFieldHeaderTitleStyle":{
        ref:"method:ListGrid.setFieldHeaderTitleStyle",
        flags:"",
        description:" Update the ${isc.DocUtils.linkForRef('attr:ListGridField.headerTitleStyle')} for a field within the grid at runtime.\n",
        name:"setFieldHeaderTitleStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the field.",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new titleTyle for the field header",
                optional:false,
                name:"newStyle",
                defaultValue:null,
                type:"CSSClass"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.canHover":{
        ref:"attr:Canvas.canHover",
        flags:"IRW",
        description:"Will this Canvas fire hover events when the user hovers over it, or one of its children?",
        name:"canHover",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            },
            {
                ref:"method:Canvas.hover",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "classMethod:Page.moveTo":{
        ref:"classMethod:Page.moveTo",
        flags:"",
        description:"\t\tMove the window to a specified top and left in screen coordinates.\n\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate for window",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new top coordinate for window",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page"
    },
    "method:Class.evaluate":{
        ref:"method:Class.evaluate",
        flags:"",
        description:"\n Evaluate a string of script in the scope of this instance (so <code>this</code>\n is available as a pointer to the instance).\n\n",
        name:"evaluate",
        seeAlso:[
            {
                ref:"classMethod:Class.evaluate",
                description:null
            }
        ],
        params:[
            {
                description:"the expression to be evaluated",
                optional:false,
                name:"expression",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Optional mapping of argument names to values - each key will      be available as a local variable when the script is executed.",
                optional:false,
                name:"evalArgs",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"the result of the eval",
            type:"any"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "attr:ListGrid.autoFitIconFields":{
        ref:"attr:ListGrid.autoFitIconFields",
        flags:"IRW",
        description:"SmartClient listGrids have special logic to automatically size fields that\n are displayed as an icon - that is fields with\n ${isc.DocUtils.linkForRef('type:ListGridFieldType','type:\"icon\"')}, fields displaying only\n ${isc.DocUtils.linkForRef('attr:ListGridField.showValueIconOnly','value icons')}, and boolean fields (which\n are rendered as a checkmark type icon by default.\n <P>\n This attribute controls this behavior - governing whether icon fields should\n be sized to fit their content (icon), title, or whether to disable this\n behavior. Setting this value to <code>\"title\"</code> or <code>\"iconWidth\"</code>\n will cause ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')} to be enabled by default for all\n icon fields with the ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidthApproach')} set to\n <code>\"value\"</code> or <code>\"both\"</code> as appropriate. Note that the\n width required for the icons is calculated by ${isc.DocUtils.linkForRef('method:ListGrid.getDefaultFieldWidth')}\n which performs a simple calculation based on the specified icon width for these\n types of fields.\n <P>\n This setting governs default behavior for icon fields - for specific fields within\n a grid, this default behavior can be overridden by setting an explicit\n ${isc.DocUtils.linkForRef('attr:ListGridField.width')} or\n explicitly enabling ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidth')} and setting\n ${isc.DocUtils.linkForRef('attr:ListGridField.autoFitWidthApproach')} on the field in question.",
        name:"autoFitIconFields",
        seeAlso:[
            {
                ref:"attr:ListGrid.autoFitFieldWidths",
                description:null
            }
        ],
        valueType:"AutoFitIconFieldType",
        defaultValue:"\"title\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitFields"
        ]
    },
    "attr:DateItem.yearSelector":{
        ref:"attr:DateItem.yearSelector",
        flags:"R",
        description:"Select item to hold the year part of the date.",
        name:"yearSelector",
        seeAlso:[
        ],
        valueType:"AutoChild SelectItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "attr:FacetChart.clusterMarginRatio":{
        ref:"attr:FacetChart.clusterMarginRatio",
        flags:"IR",
        description:"For clustered charts, ratio between margins between individual bars and margins between\n clusters.",
        name:"clusterMarginRatio",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"4",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Slider.maxValue":{
        ref:"attr:Slider.maxValue",
        flags:"IRW",
        description:"The maximum slider value. The slider value is equal to maxValue when the thumb is at the\n top or right of the slider (unless flipValues is true, in which case the maximum value\n is at the bottom/left of the slider)",
        name:"maxValue",
        setter:[
            "setMaxValue"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.flipValues",
                description:null
            }
        ],
        valueType:"float",
        defaultValue:"100",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('slider')}"
        ],
        definingClass:"class:Slider"
    },
    "method:ListGrid.setHeaderSpanBaseStyle":{
        ref:"method:ListGrid.setHeaderSpanBaseStyle",
        flags:"",
        description:" Update the ${isc.DocUtils.linkForRef('attr:HeaderSpan.headerBaseStyle')} for a span within the grid at runtime.\n",
        name:"setHeaderSpanBaseStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the headerSpan, as specified via ${isc.DocUtils.linkForRef('attr:HeaderSpan.name')}.",
                optional:false,
                name:"name",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new baseStyle for the headerSpan",
                optional:false,
                name:"newStyle",
                defaultValue:null,
                type:"CSSClass"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Calendar.workdays":{
        ref:"attr:Calendar.workdays",
        flags:"IR",
        description:"Array of days that are considered workdays when ${isc.DocUtils.linkForRef('attr:Calendar.showWorkday')} is true.\n <smartclient>Has no effect if ${isc.DocUtils.linkForRef('method:Calendar.dateIsWorkday')} is implemented.</smartclient>",
        name:"workdays",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"[1,2,3,4,5]",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "workday"
        ]
    },
    "attr:DateChooser.weekFieldTitle":{
        ref:"attr:DateChooser.weekFieldTitle",
        flags:"IRW",
        description:"Title for the ${isc.DocUtils.linkForRef('attr:DateChooser.showWeekChooser','week')} field in the date grid.",
        name:"weekFieldTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Wk\"",
        type:"attr",
        definingClass:"class:DateChooser",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:RPCManager.useHttpProxy":{
        ref:"classAttr:RPCManager.useHttpProxy",
        flags:"IR",
        description:"Whether the ${isc.DocUtils.linkForRef('group:servletDetails','HttpProxyServlet')} should be used in order to get\n around the \"same origin policy\" that prevents web pages from contacting other sites.\n <p>\n Default behavior is to use the HttpProxyServlet whenever a URL appears to be pointing to\n another site.  Set ${isc.DocUtils.linkForRef('attr:RPCRequest.useHttpProxy')} false to have a particular request\n avoid using the HttpProxyServlet even when it appears to be necessary, or set\n <code>RPCManager.useHttpProxy</code> to false to avoid ever attempting to use the\n HttpProxyServlet.",
        name:"useHttpProxy",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "attr:DataSourceField.valueXPath":{
        ref:"attr:DataSourceField.valueXPath",
        flags:"IR",
        description:"XPath expression used to retrieve the field's value.\n <P>\n This XPath expression will be evaluated in the scope of the record objects selected by \n the ${isc.DocUtils.linkForRef('attr:DataSource.recordXPath')}.  For XML data \n (${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','dataFormat:\"xml\"')}) this means a call to\n ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectString')} passing the selected XML element.  For JSON data\n (${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','dataFormat:\"json\"')}), this means a call to \n ${isc.DocUtils.linkForRef('classMethod:XMLTools.selectObjects')} passing the selected JSON object.\n <P>\n In the absence of a <code>valueXPath</code>, for JSON data the value for the field will\n be the value of the same-named property in the record object selected by\n ${isc.DocUtils.linkForRef('attr:DataSource.recordXPath','recordXPath')}.  \n <P>\n For XML data, the value will be the attribute or subelement named after the field name.\n For example, for a field \"author\" on a record element &lt;book&gt;, the following structures\n require no valueXPath:\n <pre>\n    &lt;book author=\"Mark Jones\"/&gt;\n\n    &lt;book&gt;\n        &lt;author&gt;Mark Jones&lt;/author&gt;\n    &lt;/book&gt;\n </pre>\n <P>\n If <code>valueXPath</code> is not required for your field because of the default handling\n described above, don't specify it, as it's slightly slower.\n <p>\n To learn about XPath, try the following search:\n <a href=\"http://www.google.com/search?q=xpath+tutorial\" target=\"_blank\"\n >http://www.google.com/search?q=xpath+tutorial</a>\n <P>\n <B>Using valueXPath with the SmartClient server</B>\n <p>\n If you're using the SmartClient server to return data via the DSResponse object (or\n indirectly doing so using DataSource DMI), the valueXPath you specify on the DataSource\n fields will be applied to the data you return via the \n <a href='http://commons.apache.org/jxpath/' target='_blank'>JXPath</a> library.\n <P>\n If you are returning Java Beans as your DSResponse data, normally each dataSource field\n receives the value of the same-named Java Bean property, that is, a field \"zipCode\" is\n populated by looking for \"getZipCode()\" on the objects passed as DSResponse data.  You can\n use <code>valueXPath</code> to retrieve properties from subobjects, so long as a chain of\n getter methods exists that corresponds to the valueXPath.  For example, a valueXPath of\n \"address/zipCode\" expects to call \"getAddress()\" on the bean(s) passed to\n DSResponse.setData(), followed by \"getZipCode()\" on whatever object \"getAddress()\" returns.\n <P>\n When you are saving data, the inbound DSRequest values, available as a Java Map, will use \n just dataSource field names as Map keys, not the valueXPath used to derive them.  However,\n to achieve bidirectional valueXPath binding, you can use the server-side method\n dataSource.setProperties() to use the valueXPath when setting properties on your server\n object model.  When applied as a setter, an XPath like \"address/zipCode\" attempts\n \"getAddress()\" followed by \"setZipCode()\" on the returned object.  JXPath also has some\n ability to auto-create intervening objects if they are missing, such as auto-creating an\n \"address\" subobject when applying \"address/zipCode\" as a valueXPath.\n <P>\n See the\n <a href='http://jakarta.apache.org/commons/jxpath/' target='_blank'>JXPath</a> library documentation for\n complete details, including other types of server object models supported, such as\n server-side XML.",
        name:"valueXPath",
        seeAlso:[
            "DataSource.setProperties() (Java API)",
            "DSResponse.setData() (Java API)"
        ],
        valueType:"XPathExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('xpathBinding')}"
        ],
        definingClass:"class:DataSourceField",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:DrawnValue.endAngle":{
        ref:"attr:DrawnValue.endAngle",
        flags:"IR",
        description:"For pie mode only, start angle of the segment for the data value.",
        name:"endAngle",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "attr:Snapbar.showGrip":{
        ref:"attr:Snapbar.showGrip",
        flags:"IRW",
        description:"Should we show a \"grip\" image floating above the center of this widget?",
        name:"showGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Snapbar",
        groups:[
            "grip"
        ]
    },
    "attr:Button.iconStyle":{
        ref:"attr:Button.iconStyle",
        flags:"IRW",
        description:"Base CSS style applied to the icon image. If set, as the <code>StatefulCanvas</code> changes\n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')} and/or is ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected','selected')},\n suffixes will be appended to <code>iconStyle</code> to form the className set on the\n image element.\n <p>\n The following table lists out the standard set of suffixes which may be appended:\n <table border=1>\n <tr><th>CSS Class Applied</th><th>Description</th></tr>\n <tr><td><code><i>iconStyle</i></code></td><td>Default CSS style</td></tr>\n <tr><td><code><i>iconStyle</i>+Selected</code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected')} and ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showSelectedIcon')}\n      are true.</td></tr>\n <tr><td><code><i>iconStyle</i>+Focused</code></td>\n      <td>Applied when the component has keyboard focus, if\n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedIcon')} is true, and\n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is not true.</td></tr>\n <tr><td><code><i>iconStyle</i>+Over</code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOverIcon')} is set to true and either\n      the user rolls over the component or ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true\n      and the component has keyboard focus.</td></tr>\n <tr><td><code><i>iconStyle</i>+Down</code></td>\n      <td>Applied when the user presses the mouse button on the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDownIcon')} is set to true</td></tr>\n <tr><td><code><i>iconStyle</i>+Disabled</code></td>\n      <td>Applied when the component is ${isc.DocUtils.linkForRef('attr:Canvas.disabled','disabled')}\n       if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabledIcon')} is true.</td></tr>\n <tr><td colspan=2><i>Combined styles</i></td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedFocused</code></td>\n      <td>Combined Selected and focused styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedOver</code></td>\n      <td>Combined Selected and rollOver styling</td></tr>\n <tr><td><code><i>iconStyle</i>+FocusedOver</code></td>\n      <td>Combined Focused and rollOver styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedFocusedOver</code></td>\n      <td>Combined Selected, Focused and rollOver styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedDown</code></td>\n      <td>Combined Selected and mouse-down styling</td></tr>\n <tr><td><code><i>iconStyle</i>+FocusedDown</code></td>\n      <td>Combined Focused and mouse-down styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedFocusedDown</code></td>\n      <td>Combined Selected, Focused and mouse-down styling</td></tr>\n <tr><td><code><i>iconStyle</i>+SelectedDisabled</code></td>\n      <td>Combined Selected and Disabled styling</td></tr>\n </table>\n <p>\n In addition, if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRTLIcon')} is true, then in RTL mode, a final\n \"RTL\" suffix will be appended.",
        name:"iconStyle",
        setter:[
            "setIconStyle"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "classMethod:Log.getPriority":{
        ref:"classMethod:Log.getPriority",
        flags:"",
        description:" Return the priority setting for a particular category.\n <P>\n If there is no priority setting specific to this category, <code>null</code> will be\n returned, NOT <code>Log.defaultPriority</code>.\n\n",
        name:"getPriority",
        seeAlso:[
        ],
        params:[
            {
                description:"category name",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"String"
            },
            {
                description:"Optional class or instance to check for                                               specific log priority overrides",
                optional:true,
                name:"object",
                defaultValue:null,
                type:"Class or Instance object"
            }
        ],
        returns:{
            description:"priority setting",
            type:"LogPriority"
        },
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:DataBoundComponent.hilites":{
        ref:"attr:DataBoundComponent.hilites",
        flags:"IRW",
        getter:[
            "getHilites"
        ],
        description:"Hilites to be applied to the data for this component.  See ${isc.DocUtils.linkForRef('group:hiliting')}.",
        name:"hilites",
        setter:[
            "setHilites"
        ],
        seeAlso:[
        ],
        valueType:"Array of Hilite",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "hiliting"
        ]
    },
    "method:FormItem.getDataPath":{
        ref:"method:FormItem.getDataPath",
        flags:"A",
        description:" Return the dataPath for the this formItem.\n",
        name:"getDataPath",
        seeAlso:[
        ],
        returns:{
            description:"dataPath for this form item",
            type:"dataPath"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:ListGrid.enforceVClipping":{
        ref:"attr:ListGrid.enforceVClipping",
        flags:"IRW",
        description:"For performance reasons, even when ${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights')} is set, vertical clipping\n is not enforced by default for some kinds of content (such as images) on all browsers.\n Set ${isc.DocUtils.linkForRef('attr:ListGrid.enforceVClipping','enforceVClipping:true')} to enforce clipping for all types of\n content on all browsers.\n <P>\n This additional setting is likely to be phased out as browsers improve.",
        name:"enforceVClipping",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "group:summaryFields":{
        ref:"group:summaryFields",
        refs:[
            "method:DataBoundComponent.addSummaryField",
            "method:DataBoundComponent.editSummaryField",
            "method:DataBoundComponent.userAddedField",
            "method:SummaryBuilder.getHelpText",
            "method:SummaryBuilder.fireOnClose",
            "class:SummaryBuilder",
            "attr:DataBoundComponent.missingSummaryFieldValue",
            "attr:DataBoundComponent.canAddSummaryFields",
            "attr:ListGrid.missingSummaryFieldValue",
            "attr:ListGrid.canAddSummaryFields",
            "attr:SummaryBuilder.dataSource",
            "attr:SummaryBuilder.fields",
            "attr:SummaryBuilder.editMode",
            "attr:SummaryBuilder.field",
            "attr:SummaryBuilder.formulaField",
            "attr:SummaryBuilder.titleField",
            "attr:SummaryBuilder.showHelpIcon",
            "attr:SummaryBuilder.helpIcon",
            "attr:SummaryBuilder.showAutoHideCheckBox",
            "attr:SummaryBuilder.autoHideCheckBox"
        ],
        name:"summaryFields",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TextAreaItem.printFullText":{
        ref:"attr:TextAreaItem.printFullText",
        flags:"IRW",
        description:"When generating a print-view of the component containing this TextArea, should\n the form item expand to accommodate its value? If set to false the text box not expand\n to fit its content in the print view, instead showing exactly as it does in the\n live form, possibly with scrollbars.",
        name:"printFullText",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "printing"
        ]
    },
    "method:DrawItem.isPointInPath":{
        ref:"method:DrawItem.isPointInPath",
        flags:"",
        description:" Returns true if the given point in the drawing coordinate system is within this DrawItem's shape,\n taking into account local transforms.\n",
        name:"isPointInPath",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate of the test point.",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Y coordinate of the test point.",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:null,
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:Canvas.locateChildrenBy":{
        ref:"attr:Canvas.locateChildrenBy",
        flags:"IRWA",
        description:"Strategy to use when locating children in this canvas from an autoTest locator string.",
        name:"locateChildrenBy",
        seeAlso:[
        ],
        valueType:"LocatorStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "autoTest"
        ]
    },
    "attr:ListGrid.booleanFalseImage":{
        ref:"attr:ListGrid.booleanFalseImage",
        flags:"IRWA",
        description:"Image to display for a false value in a boolean field. Default <code>null</code> value\n or the special value \"blank\" means no image will be displayed.\n <P>\n To turn this off explicitly set ${isc.DocUtils.linkForRef('attr:ListGridField.suppressValueIcon')} to true\n <P>\n If this, ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} and ${isc.DocUtils.linkForRef('attr:ListGrid.booleanPartialImage')}\n are undefined, this will be set to ${isc.DocUtils.linkForRef('attr:CheckboxItem.uncheckedImage')}.",
        name:"booleanFalseImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.booleanTrueImage",
                description:null
            },
            {
                ref:"attr:ListGrid.booleanPartialImage",
                description:null
            },
            {
                ref:"attr:ListGrid.printBooleanFalseImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:PresetCriteriaItem.showCustomOption":{
        ref:"attr:PresetCriteriaItem.showCustomOption",
        flags:"IR",
        description:"If set, an additional option will be shown with the title ${isc.DocUtils.linkForRef('attr:PresetCriteriaItem.customOptionTitle')}, \n which will cause ${isc.DocUtils.linkForRef('method:PresetCriteriaItem.getCustomCriteria')} to be called.",
        name:"showCustomOption",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:PresetCriteriaItem"
    },
    "attr:SpacerItem.width":{
        ref:"attr:SpacerItem.width",
        flags:"IRW",
        description:"default width for the spacer",
        name:"width",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:SpacerItem",
        groups:[
            "appearance"
        ]
    },
    "method:ListGrid.getTotalRows":{
        ref:"method:ListGrid.getTotalRows",
        flags:"",
        description:" Return the total number of rows in the grid.\n <P>\n Note that, when creating new rows via inline editing, this can be more than the total number\n of rows in the dataset (that is, grid.data.getLength())\n\n",
        name:"getTotalRows",
        seeAlso:[
        ],
        returns:{
            description:"total number of rows in the grid",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListProperties.image":{
        ref:"attr:ListProperties.image",
        flags:"IR",
        description:"When the list item marker ${isc.DocUtils.linkForRef('attr:ListProperties.style','style')} is \"custom-image\", the image\n to use for the markers.",
        name:"image",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/RichTextEditor/bullet_blue.png\"",
        type:"attr",
        definingClass:"object:ListProperties"
    },
    "method:GridRenderer.getCellHoverComponent":{
        ref:"method:GridRenderer.getCellHoverComponent",
        flags:"A",
        description:" StringMethod to dynamically create a Canvas-based component to show as a hover window \n over the appropriate cell/record when this.canHover and this.showHover are both true and\n when an override of getCellHoverComponent() is present.\n Called when the mouse hovers over a cell.\n\n",
        name:"getCellHoverComponent",
        seeAlso:[
            {
                ref:"attr:GridRenderer.canHover",
                description:null
            },
            {
                ref:"attr:GridRenderer.showHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"a Canvas to be shown as the hover for this cell",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "method:DynamicForm.showFieldErrors":{
        ref:"method:DynamicForm.showFieldErrors",
        flags:"",
        description:" If this form has any outstanding validation errors for the field passed in, show them now.\n Called when field errors are set directly via ${isc.DocUtils.linkForRef('method:DynamicForm.setFieldErrors')} / \n ${isc.DocUtils.linkForRef('method:DynamicForm.addFieldErrors')} / ${isc.DocUtils.linkForRef('method:DynamicForm.clearFieldErrors')}.<br>\n Default implementation simply falls through to ${isc.DocUtils.linkForRef('method:DynamicForm.showErrors')}.\n",
        name:"showFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"field to show errors for",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "attr:FormItem.textAlign":{
        ref:"attr:FormItem.textAlign",
        flags:"IRW",
        description:"Alignment of the text / content within this form item. Note that ${isc.DocUtils.linkForRef('attr:FormItem.align')} may\n be used to control alignment of the entire form item within its cell. textAlign may not\n apply to all form item types; typically it applies only to items showing a \"textBox\",\n such as a ${isc.DocUtils.linkForRef('class:TextItem')} or ${isc.DocUtils.linkForRef('class:SelectItem')}, as well as text-only form item types\n such as ${isc.DocUtils.linkForRef('class:StaticTextItem')} and ${isc.DocUtils.linkForRef('class:HeaderItem')}.\n <p>\n If this item has ${isc.DocUtils.linkForRef('attr:FormItem.icons','icons')}, then textAlign will default to\n <smartclient>\"left\"</smartclient>\n <smartgwt>{@link com.smartgwt.client.types.Alignment#LEFT}</smartgwt>\n <smartclient>(\"right\"</smartclient>\n <smartgwt>({@link com.smartgwt.client.types.Alignment#RIGHT}</smartgwt>\n in ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','RTL mode')}).",
        name:"textAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "method:FormItem.showIcon":{
        ref:"method:FormItem.showIcon",
        flags:"",
        description:" This method will show some icon in this item's ${isc.DocUtils.linkForRef('attr:FormItem.icons')} array, if it is not\n already visible. Note that once this method has been called, andy previously specified\n ${isc.DocUtils.linkForRef('method:FormItemIcon.showIf')} will be discarded.\n <P>\n Note that if the form item's showIcons property is set to false, no icons will be displayed\n for the item. In this case this method will not cause the icon to be displayed.\n\n",
        name:"showIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"${isc.DocUtils.linkForRef('attr:FormItemIcon.name','Name')} of the icon to be shown.",
                optional:false,
                name:"icon",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:ListGrid.showGroupSummaryInHeader":{
        ref:"attr:ListGrid.showGroupSummaryInHeader",
        flags:"IRW",
        description:"If this grid is ${isc.DocUtils.linkForRef('method:ListGrid.groupBy','grouped')}, and ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')}\n is true, setting this property causes field summary values for each group to be displayed\n directly in the group header node, rather than showing up at the bottom of each\n expanded group.\n <P>\n Note that this means the group header node will be showing multiple field values\n rather than the default display of a single cell spanning all columns containing the\n group title. Developers may specify an explicit ${isc.DocUtils.linkForRef('attr:ListGrid.groupTitleField')}, or\n rely on the automatically generated ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupTitleColumn','groupTitleColumn')}\n to have group titles be visible in as well as the summary values.\n <P>\n Also note that multi-line group summaries are not supported when showing\n the group summary in the group header. If multiple\n ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction','field summary functions')} are defined for some field\n only the first will be displayed when this property is set to true.",
        name:"showGroupSummaryInHeader",
        setter:[
            "setShowGroupSummaryInHeader"
        ],
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:OperationBinding.xmlNamespaces":{
        ref:"attr:OperationBinding.xmlNamespaces",
        flags:"IR",
        description:"Optional object declaring namespace prefixes for use in ${isc.DocUtils.linkForRef('attr:OperationBinding.recordXPath')} and\n ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath')} XPath expressions.\n <P>\n <code>xmlNamespaces</code> should be specified as a mapping from namespace prefix to\n namespace URI, for example:\n <pre>\n    xmlNamespaces : {\n        az : \"http://webservices.amazon.com/AWSECommerceService/2005-03-23\"\n    }\n </pre>\n By default, all namespaces declared on the document element (outermost element of the\n response) are made available with the prefix used in the document itself.\n <P>\n Then, for non-WSDL-described XML results, if there is a default namespace on the document\n element, it is made available with the special prefix \"default\".\n <P>\n For results of WSDL-described operations, the prefix \"service\" means the service namespace,\n that is, the \"targetNamespace\" on the &lt;definitions&gt; element from the WSDL file.  The prefix\n \"schema\" means the namespace of the outermost element in the output message for the current\n operation.  \"default\" will be the schema namespace if there is one, otherwise the service\n namespace.\n <P>\n For basic information on XML Namespaces and their use in XPath, try the following search:\n <a href=\"http://www.google.com/search?q=XPath+xml+namespaces\" target=\"_blank\"\n >http://www.google.com/search?q=XPath+xml+namespaces</a>",
        name:"xmlNamespaces",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlYahooWebServices')}"
        ],
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "method:TabSet.setTabTitle":{
        ref:"method:TabSet.setTabTitle",
        flags:"A",
        description:" Changes the title of a tab\n",
        name:"setTabTitle",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | number | ID | name"
            },
            {
                description:"new title",
                optional:false,
                name:"title",
                defaultValue:null,
                type:"HTML"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('titleChange')}"
        ],
        definingClass:"class:TabSet"
    },
    "method:DrawLabel.getBoundingBox":{
        ref:"method:DrawLabel.getBoundingBox",
        flags:"",
        description:" Returns the top, left, top + textHeight, left + textWidth\n",
        name:"getBoundingBox",
        seeAlso:[
        ],
        returns:{
            description:"x1, y1, x2, y2 coordinates",
            type:"array"
        },
        type:"method",
        definingClass:"class:DrawLabel"
    },
    "method:Toolbar.itemDragResized":{
        ref:"method:Toolbar.itemDragResized",
        flags:"",
        description:" Observable, overrideable method - called when one of the Toolbar buttons is drag resized.\n\n",
        name:"itemDragResized",
        seeAlso:[
        ],
        params:[
            {
                description:"the index of the item that was resized",
                optional:false,
                name:"itemNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the new size of the item",
                optional:false,
                name:"newSize",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar"
    },
    "attr:TreeGrid.showCustomIconDrop":{
        ref:"attr:TreeGrid.showCustomIconDrop",
        flags:"IRWA",
        description:"Should folder nodes showing custom icons (set via the ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconProperty')},\n default ${isc.DocUtils.linkForRef('attr:TreeNode.icon')}),\n show drop state images when the user is drop-hovering over the folder.\n If true, the ${isc.DocUtils.linkForRef('attr:TreeGrid.dropIconSuffix')} will be appended to the image URL\n (so <code>\"customFolder.gif\"</code> might be replaced with \n <code>\"customFolder_drop.gif\"</code>).<br>\n Can be overridden at the node level via the default property ${isc.DocUtils.linkForRef('attr:TreeNode.showDropIcon')}\n and that property can be renamed via ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconDropProperty')}.",
        name:"showCustomIconDrop",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeIcons"
        ]
    },
    "classMethod:isc.getKeys":{
        ref:"classMethod:isc.getKeys",
        flags:"",
        description:"\n\tReturn all keys (property names) of a given object\n\n",
        name:"getKeys",
        seeAlso:[
        ],
        params:[
            {
                description:"object to get properties from",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"String names of all properties.  NOTE: never null",
            type:"Array"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:TabSet.scrollerVSrc":{
        ref:"attr:TabSet.scrollerVSrc",
        flags:"IR",
        description:"If this TabSet is showing ${isc.DocUtils.linkForRef('attr:TabSet.showTabScroller','tab scroller buttons')}, and \n ${isc.DocUtils.linkForRef('attr:TabSet.symmetricScroller','symmetricScroller')} is true, this property governs the base\n URL for the tab bar back and forward scroller button images for vertical tab bars [IE for\n tab sets with ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} set to \"left\" or \"right\"].\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:TabSet.symmetricScroller','symmetricScroller')} is false, \n ${isc.DocUtils.linkForRef('attr:TabSet.scrollerSrc')} will be used instead.\n <P>\n To get the path to the image to display, this base URL will be modified as follows:\n <ul>\n <li>If appropriate a state suffix of <code>\"Down\"</code> or <code>\"Disabled\"</code> will be\n     appended.</li>\n <li>A suffix of <code>\"forward\"</code> or <code>\"back\"</code> will be appended for the\n     forward or backward scrolling button.</li>\n </ul>\n For example - if the scrollerVSrc is set to <code>\"[SKIN]vscroll.gif\"</code>, the image\n displayed for the back-scroller button on a tabSet with <code>tabBarPosition</code> set to\n \"left\" and <code>symmetricScroller</code> set to true would be one of \n <code>\"[SKIN]vscroll_back.gif\"</code>, <code>\"[SKIN]vscroll_Down_back.gif\"</code>,\n and <code>\"[SKIN]vscroll_Disabled_back.gif\"</code>.\n <P>\n Note that for best results the media should be sized to match the scroller button sizes, \n determined by ${isc.DocUtils.linkForRef('attr:TabSet.tabBarThickness')} and ${isc.DocUtils.linkForRef('attr:TabSet.scrollerButtonSize')}.",
        name:"scrollerVSrc",
        seeAlso:[
            {
                ref:"attr:TabSet.symmetricScroller",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]vscroll.gif\"",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "attr:FacetChart.valueProperty":{
        ref:"attr:FacetChart.valueProperty",
        flags:"IR",
        description:"Property in each record that holds a data value.\n <P>\n Not used if there is an inline facet, see ${isc.DocUtils.linkForRef('attr:Chart.data')}.",
        name:"valueProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"_value\"",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ToolStripGroup.labelConstructor":{
        ref:"attr:ToolStripGroup.labelConstructor",
        flags:"IRA",
        description:"SmartClient class for the title label.",
        name:"labelConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Label\"",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "attr:SplitPane.showLeftButton":{
        ref:"attr:SplitPane.showLeftButton",
        flags:"IRW",
        description:"Should the ${isc.DocUtils.linkForRef('attr:NavigationBar.leftButton','leftButton')} be shown in the\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')}?\n <p>\n The default behavior is to automatically create and show a ${isc.DocUtils.linkForRef('attr:SplitPane.backButton','back button')}\n as appropriate that allows transitioning back to the ${isc.DocUtils.linkForRef('attr:SplitPane.navigationPane','navigationPane')}\n (tablet and handset mode) or the ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')} (handset mode). If\n <code>showLeftButton</code> is true, then the left button is shown <em>in addition</em>\n to the automatically-created back button.",
        name:"showLeftButton",
        setter:[
            "setShowLeftButton"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:DynamicForm.getValuesAsCriteria":{
        ref:"method:DynamicForm.getValuesAsCriteria",
        flags:"",
        description:" Return search criteria based on the current set of values within this form.\n <p>\n The returned search criteria will be a simple ${isc.DocUtils.linkForRef('type:Criteria')} object, except for\n in the following cases, in which case an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object will be returned:\n <ul>\n <li>The <code>advanced</code> parameter may be passed to explicitly request a \n <code>AdvancedCriteria</code> object be returned</li>\n <li>If ${isc.DocUtils.linkForRef('method:DynamicForm.setValuesAsCriteria')} was called with an <code>AdvancedCriteria</code>\n     object, this method will return advanced criteria.</li>\n <li>If ${isc.DocUtils.linkForRef('attr:DynamicForm.operator')} is set to <code>\"or\"</code> rather than \n     <code>\"and\"</code> the generated criteria will always be advanced.</li>\n <li>If any item within this form returns true for ${isc.DocUtils.linkForRef('method:FormItem.hasAdvancedCriteria')},\n     which can be caused by setting ${isc.DocUtils.linkForRef('attr:FormItem.operator')}, and is always true for\n     items such as ${isc.DocUtils.linkForRef('class:DateRangeItem')}</li>\n <li>If ${isc.DocUtils.linkForRef('attr:FormItem.allowExpressions')} is enabled\n </ul>\n The criteria returned will be picked up from the current values for this form. For simple\n criteria, each form item simply maps its value to it's fieldName. See\n <smartclient>${isc.DocUtils.linkForRef('method:FormItem.getCriterion')}</smartclient>\n <smartgwt><code>FormItem.setCriterionGetter()</code></smartgwt>\n for details on how form items generate advanced criteria.\n Note that any values or criteria specified via ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')} or\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValuesAsCriteria')} which do not correspond to an item within the form will be\n combined with the live item values when criteria are generated.\n <P>\n The returned criteria object can be used to filter data via methods such as\n ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')}, ${isc.DocUtils.linkForRef('method:DataSource.fetchData')}, or, for more advanced usage,\n ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria')}.\n <P>\n Note that any form field which the user has left blank is omitted as criteria, that is,\n a blank field is assumed to mean \"allow any value for this field\" and not \"this field must\n be blank\".  Examples of empty values include a blank text field or SelectItem with an empty\n selection.\n\n",
        name:"getValuesAsCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"if true, return an ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} object even if the   form item values could be represented in a simple ${isc.DocUtils.linkForRef('object:Criterion')} object.",
                optional:false,
                name:"advanced",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"This parameter may be passed to indicate whether   the criteria are to be applied to a substring match (filter) or exact match (fetch).\n   When advanced criteria are returned this parameter will cause the appropriate\n   <code>operator</code> to be generated for individual fields' criterion clauses.",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"a ${isc.DocUtils.linkForRef('type:Criteria')} object, or ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}",
            type:"Criteria or AdvancedCriteria"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:ListGrid.groupSummaryStyle":{
        ref:"attr:ListGrid.groupSummaryStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:ListGridRecord.customStyle')} for the group-level summary row displayed when\n ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true.",
        name:"groupSummaryStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"gridSummaryCell\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGridField.valueIconLeftPadding":{
        ref:"attr:ListGridField.valueIconLeftPadding",
        flags:"IRW",
        description:"How much padding should there be on the left of valueIcons for this field\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconLeftPadding')}",
        name:"valueIconLeftPadding",
        seeAlso:[
            {
                ref:"attr:ListGridField.valueIcons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "class:Timeline":{
        methods:[
        ],
        ref:"class:Timeline",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Calendar"
        ],
        attrs:[
        ],
        description:"Timeline is a trivial subclass of ${isc.DocUtils.linkForRef('class:Calendar')} that configures the Calendar with settings\n typical for a standalone timeline view: no other tabs (week, month, day) are shown and the \n control bar is hidden by default.",
        name:"Timeline",
        seeAlso:[
        ],
        type:"class"
    },
    "classAttr:RPCResponse.STATUS_SUCCESS":{
        ref:"classAttr:RPCResponse.STATUS_SUCCESS",
        flags:"R",
        description:"Indicates successful completion of the request.  This is the default status and is\n automatically used by the RPCResponse on the server unless you override it with\n setStatus().\n <br><br>\n See the error handling section in ${isc.DocUtils.linkForRef('class:RPCManager','RPCManager documentation')}\n for more information.",
        name:"STATUS_SUCCESS",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"0",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "attr:PortalLayout.columnBorder":{
        ref:"attr:PortalLayout.columnBorder",
        flags:"IRW",
        description:"Border to show around columns in this PortalLayout",
        name:"columnBorder",
        setter:[
            "setColumnBorder"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"1px solid gray\"",
        type:"attr",
        definingClass:"class:PortalLayout"
    },
    "attr:DataBoundComponent.addOperation":{
        ref:"attr:DataBoundComponent.addOperation",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')} this component should use when performing add operations.",
        name:"addOperation",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "operations"
        ]
    },
    "method:Canvas.deparent":{
        ref:"method:Canvas.deparent",
        flags:"",
        description:" Remove this canvas from its parent if it has one.\n",
        name:"deparent",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:ImgProperties.name":{
        ref:"attr:ImgProperties.name",
        flags:"IRW",
        description:"Specifies the name of the image. This is an identifier unique to the canvas, and subsequent\n calls to <code>${isc.DocUtils.linkForRef('method:Canvas.getImage')}</code> and\n <code>${isc.DocUtils.linkForRef('method:Canvas.setImage')}</code>\n with this name will act on the image object created using this ImgProperties object.",
        name:"name",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ImgProperties"
    },
    "attr:MultiGroupDialog.applyButtonTitle":{
        ref:"attr:MultiGroupDialog.applyButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the applyButton",
        name:"applyButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Apply\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FilterClause.showFieldTitles":{
        ref:"attr:FilterClause.showFieldTitles",
        flags:"IR",
        description:"If true (the default), show field titles in the drop-down box used to select a field for querying.\n If false, show actual field names instead.",
        name:"showFieldTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:Window.items":{
        ref:"attr:Window.items",
        flags:"IR",
        description:"The contents of the Window body. Can be specified three different ways:\n      <ul><li>an Array of Canvases that will become the children of the Window's body when it\n      is initialized; the canvases in this array should be created, but not drawn (autodraw:\n      false).\n      <li>a single canvas that will become a child of the Window body.\n      <li>a string that will be set as the body's contents.</ul>",
        name:"items",
        seeAlso:[
            {
                ref:"attr:Window.body",
                description:null
            }
        ],
        valueType:"Array of Canvas | Canvas | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "attr:ListGrid.expansionEditorSaveButtonTitle":{
        ref:"attr:ListGrid.expansionEditorSaveButtonTitle",
        flags:"RWA",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:ListGrid.expansionEditorSaveButton')}.",
        name:"expansionEditorSaveButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Save\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField",
            "i18nMessages"
        ]
    },
    "attr:FormItem.hoverStyle":{
        ref:"attr:FormItem.hoverStyle",
        flags:"IRW",
        description:"Explicit CSS Style for any hover shown for this item.",
        name:"hoverStyle",
        seeAlso:[
            {
                ref:"attr:DynamicForm.itemHoverStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "classMethod:JSON.encode":{
        ref:"classMethod:JSON.encode",
        flags:"",
        description:" Serialize an object as a JSON string by creating a ${isc.DocUtils.linkForRef('class:JSONEncoder')} and calling\n ${isc.DocUtils.linkForRef('method:JSONEncoder.encode')}.\n <P>\n Note that using the String produced by this API with ${isc.DocUtils.linkForRef('classMethod:JSON.decode')} <b>will not\n successfully preserve dates</b>.  Use ${isc.DocUtils.linkForRef('attr:JSONEncoder.dateFormat')} \"dateConstructor\" or\n \"logicalDateConstructor\" to have dates round-trip properly.\n\n",
        name:"encode",
        seeAlso:[
        ],
        params:[
            {
                description:"object to serialize",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"any"
            },
            {
                description:"optional settings for encoding",
                optional:true,
                name:"settings",
                defaultValue:null,
                type:"JSONEncoder Properties"
            }
        ],
        returns:{
            description:"object encoded as a JSON String",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:JSON"
    },
    "attr:DynamicForm.canTabToSectionHeaders":{
        ref:"attr:DynamicForm.canTabToSectionHeaders",
        flags:"IRA",
        description:"If true, the headers for any ${isc.DocUtils.linkForRef('attr:SectionStackSection.items','SectionItems')} will be included in the page's tab\n order for accessibility. May also be set at the item level via ${isc.DocUtils.linkForRef('attr:SectionItem.canTabToHeader')}\n <P>\n If unset, section headers will be focusable if ${isc.DocUtils.linkForRef('classMethod:isc.setScreenReaderMode')} has been called.\n See ${isc.DocUtils.linkForRef('group:accessibility')}.",
        name:"canTabToSectionHeaders",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:Slider.setTrackSrc":{
        ref:"method:Slider.setTrackSrc",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:Slider.trackSrc')} property of the slider\n\n",
        name:"setTrackSrc",
        seeAlso:[
        ],
        params:[
            {
                description:"new trackSrc",
                optional:false,
                name:"newSrc",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Slider"
    },
    "attr:DateChooser.nextYearIconWidth":{
        ref:"attr:DateChooser.nextYearIconWidth",
        flags:"IR",
        description:"Width of the icon for the next year button",
        name:"nextYearIconWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"14",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classAttr:Operators.notEndsWithTitle":{
        ref:"classAttr:Operators.notEndsWithTitle",
        flags:"IR",
        description:"Title for the \"notEndsWith\" operator",
        name:"notEndsWithTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not end with (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DrawGroup.getGroupRect":{
        ref:"method:DrawGroup.getGroupRect",
        flags:"",
        description:" This method will return an array of integers (left, top, width, height) defining the area\n of the \"group rectangle\" for the group. If ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','useGroupRect')} is true, this is\n the area of the DrawPane where user interactions will fire event notifications on this DrawGroup.\n <P>\n This is a convienence method to get the current coordinates of the\n ${isc.DocUtils.linkForRef('attr:DrawGroup.useGroupRect','group rectangle')}.  Developers must use\n ${isc.DocUtils.linkForRef('method:DrawGroup.setLeft')}, ${isc.DocUtils.linkForRef('method:DrawGroup.setTop')}, ${isc.DocUtils.linkForRef('method:DrawGroup.setWidth')} or\n ${isc.DocUtils.linkForRef('method:DrawGroup.setHeight')} to set each coordinate directly.\n",
        name:"getGroupRect",
        seeAlso:[
        ],
        returns:{
            description:"4 element array containing left, top, width, height of the group rectangle.",
            type:"Array of int"
        },
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "object:GroupSummary":{
        methods:[
        ],
        ref:"object:GroupSummary",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
        ],
        description:"Group Summary.",
        name:"GroupSummary",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:ListGridField.defaultValue":{
        ref:"attr:ListGridField.defaultValue",
        flags:"IRW",
        description:"If this field ${isc.DocUtils.linkForRef('attr:ListGridField.canEdit','can be edited')}, this property can be used to\n specify a default value for this field's editor when adding new rows to the grid.",
        name:"defaultValue",
        seeAlso:[
            {
                ref:"method:ListGrid.startEditingNew",
                description:null
            }
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "attr:RPCRequest.showPrompt":{
        ref:"attr:RPCRequest.showPrompt",
        flags:"IRW",
        description:"Overrides <code>RPCManager.showPrompt</code> for this request only.\n <p>\n If you're using queuing, note that if any of the requests in the queue specify\n showPrompt:true, then a prompt will be shown for the entire queue with the prompt text of\n the first request in the queue to specify a custom prompt if promptStyle is set to \"dialog\".\n <p>\n If promptStyle is set to \"cursor\" for the request that specified showPrompt: true, then the\n entire queue uses the \"cursor\" style for the prompt.",
        name:"showPrompt",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.showPrompt",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest",
        groups:[
            "rpcPrompt"
        ]
    },
    "attr:FacetChart.highErrorMetric":{
        ref:"attr:FacetChart.highErrorMetric",
        flags:"IR",
        description:"See ${isc.DocUtils.linkForRef('attr:FacetChart.lowErrorMetric')}.",
        name:"highErrorMetric",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:PortalLayout.addColumn":{
        ref:"method:PortalLayout.addColumn",
        flags:"",
        description:" Adds a new portal column to this layout at the specified position\n",
        name:"addColumn",
        seeAlso:[
        ],
        params:[
            {
                description:"target position for the new column",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout"
    },
    "attr:Slider.trackCapSize":{
        ref:"attr:Slider.trackCapSize",
        flags:"IRW",
        description:"The height of vertical slider start and end images, or width of horizontal slider start and\n end images.",
        name:"trackCapSize",
        setter:[
            "setTrackCapSize"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:Slider"
    },
    "method:ListGrid.setCanResizeFields":{
        ref:"method:ListGrid.setCanResizeFields",
        flags:"",
        description:" Setter method for updating ${isc.DocUtils.linkForRef('attr:ListGrid.canResizeFields')} at runtime.\n",
        name:"setCanResizeFields",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for this.canResizeFields",
                optional:false,
                name:"canResize",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.height":{
        ref:"attr:Canvas.height",
        flags:"IRW",
        getter:[
            "getHeight"
        ],
        description:"Size for this component's vertical dimension.\n <P>\n Can be a number of pixels, or a percentage like \"50%\". See documentation for\n ${isc.DocUtils.linkForRef('attr:Canvas.width')} for details on how percentage values are resolved actual size.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:Canvas.overflow','overflow')} is set to \"visible\", this size is a\n minimum, and the component may overflow to show all content and/or children.\n <P>\n If trying to establish a default height for a custom component, set\n ${isc.DocUtils.linkForRef('attr:Canvas.defaultHeight','defaultHeight')} instead.",
        name:"height",
        setter:[
            "setHeight"
        ],
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:ListGrid.deselectRange":{
        ref:"method:ListGrid.deselectRange",
        flags:"",
        description:" Deselect a contiguous range of records by index.\n <P>\n This is a synonym for <code>selectRange(startRow, endRow, false);</code>\n",
        name:"deselectRange",
        seeAlso:[
        ],
        params:[
            {
                description:"start of selection range",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"end of selection range (non-inclusive)",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.drawAheadRatio":{
        ref:"attr:ListGrid.drawAheadRatio",
        flags:"IRW",
        description:"How far should we render rows ahead of the currently visible area?  This is expressed as a\n ratio from viewport size to rendered area size.\n <P>\n Tweaking drawAheadRatio allows you to make tradeoffs between continuous scrolling speed vs\n initial render time and render time when scrolling by large amounts.\n <P>\n NOTE: Only applies when showAllRows is false.",
        name:"drawAheadRatio",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"1.3",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundFetch')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "performance"
        ]
    },
    "method:ListGrid.getCellVAlign":{
        ref:"method:ListGrid.getCellVAlign",
        flags:"",
        description:" Return the vertical alignment for cell contents.\n Expected values are: 'top', 'center', or 'bottom'\n\n",
        name:"getCellVAlign",
        seeAlso:[
            {
                ref:"method:ListGrid.getCellStyle",
                description:null
            }
        ],
        params:[
            {
                description:"this cell's record",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"listgridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Vertical alignment of cell contents: 'right', 'center', or 'left'",
            type:"Alignment"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:DataSource.filterData":{
        ref:"method:DataSource.filterData",
        flags:"",
        description:" Perform a \"fetch\" DataSource operation against this DataSource, sending search criteria\n and retrieving matching records.\n <P>\n This is identical to ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} except that\n ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')} is set to \"substring\" to cause case insensitive\n substring matching (if the server respects this setting).\n\n",
        name:"filterData",
        seeAlso:[
        ],
        params:[
            {
                description:"search criteria",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on                                                       the DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "operations"
        ]
    },
    "attr:DateItem.centuryThreshold":{
        ref:"attr:DateItem.centuryThreshold",
        flags:"IRW",
        description:"Only used if we're showing the date in a text field. When parsing a date, if the year\n is specified with 1 or 2 digits and is less than the centuryThreshold, then the year will\n be assumed to be 20xx; otherwise it will be interpreted according to default browser\n behaviour, which will consider it to be 19xx.\n <P>\n If you need to allow 1 and 2 digit years, set this attribute to \n <code>null</code> to have the control retain your year-value as entered.",
        name:"centuryThreshold",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"25",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "appearance"
        ]
    },
    "method:CanvasItem.storeValue":{
        ref:"method:CanvasItem.storeValue",
        flags:"",
        description:" Store (and optionally show) a value for this form item. \n <p>\n This method will fire standard ${isc.DocUtils.linkForRef('method:FormItem.change')} and\n ${isc.DocUtils.linkForRef('method:DynamicForm.itemChanged')} handlers, and store the value passed in such that\n subsequent calls to ${isc.DocUtils.linkForRef('method:FormItem.getValue')} or ${isc.DocUtils.linkForRef('method:DynamicForm.getValue')} will\n return the new value for this item.\n <P>\n This method is intended to provide a way for custom formItems - most commonly \n ${isc.DocUtils.linkForRef('class:CanvasItem','canvasItems')} - to provide a new interface to the user, allowing them\n to manipulate the item's value, for example in an embedded ${isc.DocUtils.linkForRef('attr:CanvasItem.canvas')},\n or a pop-up dialog launched from an ${isc.DocUtils.linkForRef('object:FormItemIcon','icon')}, etc.  Developers\n should call this method when the user interacts with this custom \n interface in order to store the changed value.\n <P>\n ${isc.DocUtils.linkForRef('attr:CanvasItem.shouldSaveValue','shouldSaveValue')} for CanvasItems is\n false by default. Custom CanvasItems will need to override shouldSaveValue\n to true if the values stored via this API should be included in the form's\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','getValues()')} and saved with the form when\n ${isc.DocUtils.linkForRef('method:DynamicForm.saveData','saveData()')} is called.\n <P>\n If you cannot easily detect interactions that should change the value as the \n user performs them, a workaround is to call\n <code>storeValue</code> right before the form saves.\n <P>\n Note that this method is not designed for customizing a value which is already being\n saved by a standard user interaction. For example you should not call this method\n from a ${isc.DocUtils.linkForRef('method:FormItem.change','change handler')}. Other APIs such as \n ${isc.DocUtils.linkForRef('method:FormItem.transformInput')} exist for this.\n \n",
        name:"storeValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value to save for this item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Should the formItem be updated to display the new value?",
                optional:true,
                name:"showValue",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('canvasItem')}"
        ],
        definingClass:"class:CanvasItem"
    },
    "attr:ToolStripResizer.vSrc":{
        ref:"attr:ToolStripResizer.vSrc",
        flags:"IRW",
        description:"Image for resizer",
        name:"vSrc",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]resizer.png\"",
        type:"attr",
        definingClass:"class:ToolStripResizer"
    },
    "method:ListGrid.getRowSpan":{
        ref:"method:ListGrid.getRowSpan",
        flags:"",
        description:" Return how many rows this cell should span.  Default is 1.\n <P>\n This method will only be called if ${isc.DocUtils.linkForRef('attr:ListGrid.allowRowSpanning')} is set to\n <code>true</code>\n <P>\n When using row spanning, consider setting ${isc.DocUtils.linkForRef('attr:ListGrid.useRowSpanStyling')} to enable\n row-span-sensitive styling behaviors.\n <P>\n Note that the standard implementation assumes that the number of rows spanned by cells\n decreases or stays the same, starting with the first (leftmost) column in the grid and\n moving rightwards.\n <P>\n When using row spanning:\n <ul>\n <li> APIs that allow modifying the contents of cells (such as ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle')} or\n ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue')}) will be called only once per row-spanning cell\n <li> when using ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells','cell-based selection')}, only the\n spanning cell is considered selected, and not any of the cells spanned through.  For\n example, if the cell at row 2 column 0 spans 2 cells, ${isc.DocUtils.linkForRef('class:CellSelection','CellSelection.isSelected()')}\n will be true for 2,0 but false for 3,0.\n <li> if using incremental rendering (either horizontal or vertical),\n <code>getRowSpan()</code> may be called for a rowNum <b>in the middle of a spanning\n cell</b>, and should return the remaining span from that rowNum onward.\n <li> cell-level events such as ${isc.DocUtils.linkForRef('method:ListGrid.recordClick')} will report the logical\n rowNum for spanned cells. In other words if a cell spans two rows, a different\n rowNum parameter will be passed to the recordClick handler depending on whether the user\n clicks at the top of the spanning cell or the bottom. Developers can normalize\n this to the starting cell via the ${isc.DocUtils.linkForRef('method:ListGrid.getCellStartRow')} API.\n <li> for cells that span multiple records, editing behavior may be controlled by the\n ${isc.DocUtils.linkForRef('type:RowSpanEditMode','rowSpanEditMode')} attribute.\n <li> rowSpanning can be used in conjunction with\n  ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponents')}. If record\n component are enabled on a grid with row-spanning cells the behavior is as follows:\n   <ul>\n    <li>Having ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentPosition')} set to \"expand\" is not currently supported\n        for grids that render out spanning cells.\n    <li>The method to retrieve / create record components will not be run for cells that\n        are \"spanned\". In other words if the first row in a grid spans 2 rows for some\n        field, the second logical row is \"spanned\" for that field - that cell doesn't\n        render any content and won't attempt to create a recordComponent.\n    <li>If ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is false, the method to create record\n        components will be called for every non-spanned cell in the first column\n        of the grid.\n    <li>Percentage sizing of record components spanning multiple cells will be\n        calculated relative to the set of spanned cells.\n   </ul>\n </ul>\n <P>\n More generally, the ListGrid has a data model of one ${isc.DocUtils.linkForRef('object:Record')} per row, and spanning cells\n doesn't fit well with this model, meaning that many ListGrid features are incompatible\n with rowSpanning.\n\n",
        name:"getRowSpan",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"number of cells to span",
            type:"number"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Selection.multipleSelected":{
        ref:"method:Selection.multipleSelected",
        flags:"",
        description:"\tWhether multiple items are selected\n",
        name:"multipleSelected",
        seeAlso:[
        ],
        returns:{
            description:"true == more than one item is selected\t\t\t\t\t\t\t\tfalse == no items are selected, or only one item is selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:ListPropertiesDialog.applyButton":{
        ref:"attr:ListPropertiesDialog.applyButton",
        flags:"R",
        description:"The Apply button. When clicked, the ${isc.DocUtils.linkForRef('method:ListPropertiesDialog.applyClick','applyClick')}\n event is fired.\n <p>\n ${isc.DocUtils.linkForRef('attr:ListPropertiesDialog.applyButtonTitle','applyButtonTitle')} is a ${isc.DocUtils.linkForRef('group:autoChildUsage','passthrough')}\n for the button's ${isc.DocUtils.linkForRef('attr:Button.title','title')}.",
        name:"applyButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListPropertiesDialog"
    },
    "method:MetricSettings.getYCoord":{
        ref:"method:MetricSettings.getYCoord",
        flags:"",
        description:"  Returns the Y coordination where the passed data value would be drawn.  \n For example, this would be the Y coordinate that a line would pass through on\n a line chart, or the top of a column on a column chart.\n <P>\n This is only allowed to be called when ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')} fires.\n <P>\n If the ${isc.DocUtils.linkForRef('type:ChartType')} is \"Area\", \"Column\", \"Line\", or \"Scatter\" then the\n <code>value</code> argument should be a number.  For \"Bar\" charts this method expects\n a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that uniquely identifies the data cell whose y-axis coordinate to\n retrieve.\n\n",
        name:"getYCoord",
        seeAlso:[
        ],
        params:[
            {
                description:"the value to be drawn.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float"
            }
        ],
        returns:{
            description:"the Y coordinate where the passed data value would be drawn.",
            type:"float"
        },
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "method:FacetChart.getPolynomialRegressionFunction":{
        ref:"method:FacetChart.getPolynomialRegressionFunction",
        flags:"",
        description:" For scatter plots only, get a Function from the specified independent variable X to the\n specified dependent variable Y that defines the polynomial that best fits the data.\n See <a href=\"http://en.wikipedia.org/wiki/Polynomial_regression\">http://en.wikipedia.org/wiki/Polynomial_regression</a>.\n",
        name:"getPolynomialRegressionFunction",
        seeAlso:[
        ],
        params:[
            {
                description:"the degree of the polynomial.  Defaults to ${isc.DocUtils.linkForRef('attr:FacetChart.regressionPolynomialDegree')}.",
                optional:true,
                name:"degree",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"ID of an inlined facet value to use as the independent variable. Defaults to the ${isc.DocUtils.linkForRef('attr:FacetChart.xAxisMetric','x-axis metric')}.",
                optional:true,
                name:"xMetric",
                defaultValue:null,
                type:"String"
            },
            {
                description:"ID of an inlined facet value to use as the dependent variable. Defaults to the ${isc.DocUtils.linkForRef('attr:FacetChart.yAxisMetric','y-axis metric')}.",
                optional:true,
                name:"yMetric",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Toolbar.setCanResizeItems":{
        ref:"method:Toolbar.setCanResizeItems",
        flags:"",
        description:" Setter for updating ${isc.DocUtils.linkForRef('attr:Toolbar.canResizeItems')} at runtime.\n",
        name:"setCanResizeItems",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for this.canResizeItems",
                optional:false,
                name:"canResizeItems",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar"
    },
    "classMethod:Page.loadStyleSheet":{
        ref:"classMethod:Page.loadStyleSheet",
        flags:"",
        description:"\t\tLoad a styleSheet for this application.  \n\n\t\tThe styleSheetURL parameter can use any special directories, eg:<br>\n      &nbsp;&nbsp;<code>Page.loadStylesheet(\"[SKIN]/skin_styles.css\")</code><br>\n      or<br>\n      &nbsp;&nbsp;<code>Page.loadStylesheet(\"[APP]/app_styles.css\")</code>.\n      <P>\n\t\tIf you don't specify a special directory, the app directory\n\t\t\twill be assumed.\n\t\t<P>\n\t\tNote:   If the document's ONLOAD handler has already fired, this\n\t\t\t\twill have no effect.\n\n",
        name:"loadStyleSheet",
        seeAlso:[
        ],
        params:[
            {
                description:"URL to the stylesheet.",
                optional:false,
                name:"styleSheetURL",
                defaultValue:null,
                type:"URL"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "skins",
            "files",
            "images"
        ]
    },
    "attr:TableView.titleField":{
        ref:"attr:TableView.titleField",
        flags:"IRW",
        description:"Field to display for an individual record as the main title.",
        name:"titleField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"title\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "method:ButtonItem.setTitle":{
        ref:"method:ButtonItem.setTitle",
        flags:"",
        description:" Set the title.\n",
        name:"setTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"new title",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:ButtonItem",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.printBooleanTrueImage":{
        ref:"attr:ListGrid.printBooleanTrueImage",
        flags:"IRWA",
        description:"If set, the ${isc.DocUtils.linkForRef('attr:ListGrid.booleanTrueImage')} to use when ${isc.DocUtils.linkForRef('groupDef:printing','printing')}.",
        name:"printBooleanTrueImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.booleanTrueImage",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns",
            "printing"
        ]
    },
    "method:DrawPath.moveTo":{
        ref:"method:DrawPath.moveTo",
        flags:"",
        description:" Move both the start and end points of the line, such that the startPoint ends up at the\n specified coordinate and the line length and angle are unchanged.\n\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new startLeft coordinate in pixels",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new startTop coordinate in pixels",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawPath"
    },
    "attr:ListGrid.normalCellHeight":{
        ref:"attr:ListGrid.normalCellHeight",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.baseStyle')} is unset, base style will be derived from\n ${isc.DocUtils.linkForRef('attr:ListGrid.normalBaseStyle')} if this grid has fixed row heights and\n the specified ${isc.DocUtils.linkForRef('attr:ListGrid.cellHeight')} matches this value. Otherwise\n ${isc.DocUtils.linkForRef('attr:ListGrid.tallBaseStyle')} will be used.",
        name:"normalCellHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:DrawTriangle":{
        methods:[
            "method:DrawTriangle.getCenter"
        ],
        ref:"class:DrawTriangle",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
            "attr:DrawTriangle.points"
        ],
        description:"DrawItem subclass to render triangles",
        name:"DrawTriangle",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawPolygon"
    },
    "attr:TabSet.tabs":{
        ref:"attr:TabSet.tabs",
        flags:"IRW",
        description:"An array of ${isc.DocUtils.linkForRef('object:Tab')} objects, specifying the title and pane contents of each tab in the TabSet.\n <smartclient>When developing in JavaScript, tabs are specified as an array of object literals, \n not instances - see ${isc.DocUtils.linkForRef('object:Tab')}.</smartclient>  \n <smartgwt>Tab instances are not widgets, they just provide configuration such as title and \n icon.</smartgwt>\n <p>\n After providing ${isc.DocUtils.linkForRef('object:Tab')} instances to <code>setTabs()</code>, the TabSet creates actual UI \n widgets to serve as interactive tabs. Any further modifications to tabs should be performed \n via TabSet APIs such as ${isc.DocUtils.linkForRef('method:TabSet.setTabTitle')}, ${isc.DocUtils.linkForRef('method:TabSet.setTabIcon')} and \n ${isc.DocUtils.linkForRef('method:TabSet.setTabPane')}.\n <p>\n You can add and remove tabs after creating the TabSet by calling ${isc.DocUtils.linkForRef('method:TabSet.addTab')} and \n ${isc.DocUtils.linkForRef('method:TabSet.removeTab')}",
        name:"tabs",
        seeAlso:[
        ],
        valueType:"Array of Tab",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('tabsOrientation')}"
        ],
        definingClass:"class:TabSet"
    },
    "attr:EdgedCanvas.edgeTop":{
        ref:"attr:EdgedCanvas.edgeTop",
        flags:"IR",
        description:"Height in pixels for top corners and edges.  Defaults to edgeSize when unset.",
        name:"edgeTop",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:ListGrid.showAsynchGroupingPrompt":{
        ref:"attr:ListGrid.showAsynchGroupingPrompt",
        flags:"IR",
        description:"If set to false, do not show the ${isc.DocUtils.linkForRef('attr:ListGrid.asynchGroupingPrompt')} dialog during\n ${isc.DocUtils.linkForRef('attr:ListGrid.groupByAsyncThreshold','asynchronous grouping')}.",
        name:"showAsynchGroupingPrompt",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Calendar.laneFields":{
        ref:"attr:Calendar.laneFields",
        flags:"IR",
        description:"Field definitions for the frozen area of the ${isc.DocUtils.linkForRef('attr:Calendar.timelineView')}, which shows data about the\n timeline ${isc.DocUtils.linkForRef('attr:Calendar.lanes')}.  Each field shows one attribute of the objects provided as\n ${isc.DocUtils.linkForRef('attr:Calendar.lanes')}.",
        name:"laneFields",
        seeAlso:[
        ],
        valueType:"Array of ListGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:Window.headerLabelDefaults":{
        ref:"attr:Window.headerLabelDefaults",
        flags:"IRWA",
        description:"This is an object literal property block specifying various properties of the header\n label that displays the ${isc.DocUtils.linkForRef('attr:Window.title')}.  Overrideable defaults are as follows:\n <ul>\n <li>styleName- defaults to <code>\"windowHeaderText\"</code> and specifies the css style\n that is used  to render the ${isc.DocUtils.linkForRef('attr:Window.title')} text.\n </ul>\n You can override the the above properties by calling ${isc.DocUtils.linkForRef('classMethod:Class.changeDefaults')}.",
        name:"headerLabelDefaults",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "headerLabel"
        ]
    },
    "attr:TreeGrid.alwaysShowOpener":{
        ref:"attr:TreeGrid.alwaysShowOpener",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:TreeGrid.showOpener')} is true, should we display the opener icon\n for folders even if they have no children?\n <P>\n Note that for trees which\n ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand','load data on demand')}, we may not know if a folder\n has any descendants if it has never been opened. As such we will show the\n opener icon next to the folder. Once the user opens the icon and a fetch occurs,\n if the folder is empty, and this property is false, the opener icon\n will be hidden.\n <P>\n For more information on load on demand trees, and how we determine whether\n a node is a a folder or a leaf, please refer to the ${isc.DocUtils.linkForRef('group:treeDataBinding')}\n documentation.",
        name:"alwaysShowOpener",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "method:Calendar.currentViewChanged":{
        ref:"method:Calendar.currentViewChanged",
        flags:"",
        description:" Notification that fires whenever the current view changes via the \n ${isc.DocUtils.linkForRef('attr:Calendar.mainView','mainView tabset')}.\n\n",
        name:"currentViewChanged",
        seeAlso:[
        ],
        params:[
            {
                description:"the name of the current view after the change",
                optional:false,
                name:"viewName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"HTML to display",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "group:usingSelenium":{
        ref:"group:usingSelenium",
        title:"Using Selenium",
        treeLocation:[
            "Concepts/Automated Testing"
        ],
        refs:[
        ],
        description:"<a href='http://seleniumhq.org/' target='_blank'>Selenium</a> is a powerful and popular tool which can be used \n to test your SmartClient applications. \n Selenium executes tests against your running application in a browser emulating user interaction \n and asserting various conditions. Selenium provides a record/playback tool for authoring tests without \n learning a test scripting language. You must be familiar with <a href='http://seleniumhq.org/' target='_blank'>Selenium</a>\n and use of <a href='http://seleniumhq.org/projects/ide/' target='_blank'>Selenium IDE</a> before proceeding. \n Refer to the documentation on the Selenium site.\n <P>\n Selenium supports the concept of <a href='http://seleniumhq.org/docs/02_selenium_ide.html#locating-elements' target='_blank'>Locators</a>\n in order to specify the element you'd like a given Selenium command to target. For example Selenium supports XPath based\n locators and DOM ID based locators. XPath based locators are extremely fragile due to complexity of certain \n highly nested DOM elements you need access to combined with the fact that XPath support varies across browsers and \n so your tests might not work across different browsers. \n <P>\n Use of Selenium with SmartClient applications is no different than using Selenium to write and run test cases with \n any other application with the exception of one caveat: SmartClient occasionally renders a different DOM structure \n depending on the browser for performance or rendering the UI such that it appears identical across various browsers. \n As a result using DOM ID or DOM XPath based locators with SmartClient applications is not advisable. \n <P>\n Instead SmartClient supports a new Selenium locator which is an XPath-like string used by Selenium to robustly identify \n DOM elements within a SmartClient application. SmartClient locators for Selenium are prefixed by \"scLocator=\" and have a \n readable XPath-like value even for cells in ListGrid's or TreeGrids. Typically these locators will not be hand-written and \n are generated by <a href='http://seleniumhq.org/projects/ide/' target='_blank'>Selenium IDE</a>, Selenium's test recording tool. One primary\n locator is based on the ID of the SmartClient widget and has the syntax <b>ID=&lt;Canvas ID&gt;</b>. This simplifies the task of \n writing tests if you know the ID of the Canvas. For reference, the scLocator syntax for ListGrid cells and DynamicForm \n FormItems can be found at the end of this document.\n <P>\n <b>You can automate the process of running Selenium tests and saving or reporting results\n using ${isc.DocUtils.linkForRef('group:testRunner','TestRunner')}.</b>\n <P>\n <b>Setup Instructions</b>\n <P>\n SmartClient ships with two Selenium user extension Javascript files: \n <P>\n <ul>\n <li> user-extensions.js\n <li> user-entensions-ide.js\n </ul>\n <P>\n These extensions (found in the \n <smartclient><code>smartclientSDK/tools/selenium/</code></smartclient>\n <smartgwt><code>selenium/</code></smartgwt>\n directory) augment the Selenium tools to support SmartClient locators. To integrate these extensions with Selenium, \n follow the steps below:\n <P>\n <ul>\n <li> Confirm that the Selenium IDE has been installed.\n <li> Copy the user extension files listed above to a common location on your test client machine.\n <li> Open the Selenium IDE and click the Options ==&gt; Options... menu item. On the General tab enter the path to these extension \n files in the corresponding fields: Selenium Core extensions and Selenium IDE extensions. Refer to the Selenium Documention \n on <a href='http://seleniumhq.org/docs/08_user_extensions.html#using-user-extensions-with-selenium-ide' target='_blank'>user extensions</a> \n for more information.\n <li> Go to the WebDriver tab and ensure that the \"Enable WebDriver Playback\" checkbox is unchecked.\n <li> Close and restart Selenium IDE to load the new extensions.\n </ul>\n <P>\n That's it, we're done configuring the environment.\n <P>\n Note: Tests recorded using Selenium IDE can be played back using\n <a href='http://seleniumhq.org/projects/remote-control/' target='_blank'>Selenium Remote Control</a>.\n The <code>user-extensions-ide.js</code> file is not required for playback of SmartClient-aware tests using Selenium RC, but the \n <code>user-extensions.js</code> is. Instructions for using <code>user-extensions.js</code> with Selenium RC can be found \n <a href='http://seleniumhq.org/docs/08_user_extensions.html#using-user-extensions-with-selenium-rc' target='_blank'>here</a>.\n <P>\n <b>Recording Selenium tests with Selenium IDE</b>\n <P>\n Once you have your application running in Firefox, open Selenium IDE from the Tools ==&gt; Selenium IDE menu option. If the Selenium IDE\n is in record mode, then clicking or carrying out other operations like typing in a text field with automatically record the \n appropriate Selenium commands with the SmartClient locator. In most cases there's no need for you to manually enter the locator, \n the recorder does this for you! In fact, not only do the provided user extension files record your clicks, drag operations, and \n typing in the browser--they also try to ensure that your script executes each operaton only when the SmartClient widgets it depends \n upon exist and are ready to be interacted with.  This ensures that when the test script is executed, then even if one or more triggered \n operations are asynchronous (delayed), it behaves as expected.\n <P>\n In the screenshot below, note the <b>waitForElementClickable()</b> operation above the click operation; it was added automatically by our \n user extensions as the click itself was recorded: \n <P>\n <img src=\"skin/user-guide-images-selenium/selenium-ide-example.png\" width=\"1017px\" height=\"853px\">\n <P>\n Sometimes users may also want finer grain control of what Selenium command is created instead of having the Selenium IDE recorder \n do this automatically. For example if you want to verify the value of a particular cell in a ListGrid. Instead of typing in the \n command \"verifyTable\" and manually enter the SmartClient Locator (scLocator), you can simply right click on the table cell or any \n other SmartClient widget and the most suitable Selenium commands will appear in the context menu along with the scLocator path for \n the clicked element. See image below.\n <P>\n <img src=\"skin/user-guide-images-selenium/selenium-ide-example-verifyText.png\" width=\"1211px\" height=\"737px\">\n <P>\n <b>Solving Ordering Issues in Selenium Scripts</b>\n <P>\n Fundamentally, the reason we add <b>waitForElementClickable()</b> calls before each click is to deal with asynchronous SmartClient\n operations. Many operations on widgets or the network are asynchronous, and a correctly coded test should wait for such operations to \n complete as opposed to inserting an arbitrary delay or using Selenium's <b>setSpeed()</b> function. Using such delays runs the risk of \n the test failing if replay occurs on a loaded machine or slow network, and also makes the test run slower than needed. \n <P>\n Asynchronous operations include:\n <P>\n <ul>\n <li> any actual network operation,\n <li> any DataSource operation (even for a clientOnly DataSource),\n <li> any situation where a widget can be marked \"dirty\" (see notes at <b>Canvas.isDirty()</b>), and then asynchronously \n redraw itself - this includes API calls like <b>ListGrid.setData()</b>, <b>Canvas.setContents()</b> as well as user interactions like \n ListGrid sort or filter, regardless of whether the data is already present,\n <li> re-layout that occurs as a result of a size change or new member being added to a Layout or subclass of Layout (eg SectionStack, Window)\n </ul>\n <P>\n The following operations are synchronous and don't require waiting:\n <P>\n <ul>\n <li>draw()ing any widget that has no parent - but note adding a widget to an already-drawn Layout is asynchronous, as above\n </ul>\n <P>\n You may encounter cases where you have to manually insert a <b>waitForElementClickable()</b> or <b>waitForElementNotPresent()</b>\n to get a script to behave properly.  Looking at the SmartClient Showcase Example (Grids / Filtering / Advanced Filter), suppose \n we wanted to filter by country names containing \"Za\" and wait for the filter step to complete before proceeding.  Since the \n ListGrid initially contains many entries and Zaire is not among them, it is not visible and thus we can solve the original \n problem by manually adding a <b>waitForElementClickable()</b> on the locator for Zaire's ListGrid entry:\n <P>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>scLocator=//ListGrid[ID=\"filterGrid\"]/body/row[pk=216||countryCode=CG||215]/col[fieldName=countryCode||0]</b>\n <P>\n Before the filter operation is issued, the locator is not clickable because the record is not visible:\n <P>\n <img src=\"skin/user-guide-images-selenium/manual-wait-clickable-before.png\" width=\"767px\" height=\"327px\">\n <P>\n When the filter operation completes, Zaire and the other search results become visible and the <b>waitForElementClickable()</b> \n returns successfully allowing the next script command to execute:\n <P>\n <img src=\"skin/user-guide-images-selenium/manual-wait-clickable-after.png\" width=\"763px\" height=\"328px\">\n <P>\n Finally, suppose you wanted to do another filter operation to look only at countries (from the previous search results) with \n populations under 30 million.   Since Zaire is above this limit, it will be missing from the search results and you could \n wait for the filter operation to complete by adding a <b>waitForElementNotPresent()</b> on same locator that we previously used \n for <b>waitForElementClickable()</b>. It will return true and allow the script to proceed when the filter operation completes:\n <P>\n <img src=\"skin/user-guide-images-selenium/manual-wait-not-present.png\" width=\"762px\" height=\"317px\">\n <P>\n <b>Waiting on Pending ListGrid Operations</b>\n <P>\n There are cases where <b>waitForElementClickable()/waitForElementNotPresent()</b> will not work--for example if you're performing \n a sort that's rearranging existing elements on the screen, or if you're performing a filter operation where you're not sure of\n the results and thus cannot use the approach from the previous section.  In such a situation, you may need to add a \n <b>waitForGridDone()</b> command into your script to ensure the pending operations are complete before you hit the next command.\n <P>\n The <b>waitForGridDone()</b> command guarantees it will not complete successfully unless all of the following potential pending \n operations on the widget are complete:\n <P>\n <ul>\n <li> any fetch or filter operation (the result of applying criteria),\n <li> any sort operation (the result of apply sort specifiers),\n <li> the flush of pending FilterEditor criteria to the parent ListGrid, and\n <li> the saving of any newly edited rows.\n </ul>\n <P>\n This command should be able to block a Selenium script until the ListGrid specified in the locator reaches a stable drawn state with \n no pending activity.  So for a ListGrid names 'filterGrid', all you'd need to add to ensure all pending operations on it have\n completed is the command:\n <P>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>waitForGridDone(\"//ListGrid[ID='filterGrid']\");</b>\n <P>\n <P>\n <b>Waiting on All Pending Network Operations</b>\n <P>\n Because of the <b>waitForElementClickable</b> commands which are automatically inserted during recording, your scripts will\n automatically wait for the completion of any network operations that block interactivity (via showPrompt, which is enabled by \n default). However in some cases you may want to wait for all pending network operations to complete, even if they don't block\n user interactivity.\n <P>\n To do this, use <b>RPCManager.requestsArePending()</b> in combination with <b>waitForCondition()</b>.\n So, the JavaScript in your <b>waitForCondition()</b> operation would be:\n <P>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>!selenium.browserbot.getCurrentWindow().isc.RPCManager.requestsArePending()</b>\n <P>\n When the call returns, you'd know that any previously initiated network operations--such as filter/sort operations on DataSources--are \n complete.\n <P>\n <b>Automatically Waiting on All Pending Network Operations</b>\n <P>\n If you need the functionality from the section above to wait on all pending network operations, but don't want to add extra calls to\n <b>waitForCondition()</b>, you may switch on automatic enforcement of the condition that <b>isc.RPCManager.requestsArePending()</b>\n is false.  There are two ways to do this:\n <P>\n <ul>\n <li> Set the property <b>isc.AutoTest.implicitNetworkWait</b> to true on the page under test after the ISC modules are loaded, or\n <li> Add the Selenium command <b>setImplicitNetworkWait(true)</b> to your selenium script in Selenium IDE.\n </ul>\n <P>\n Like other Selenium IDE commands with a single argument, you'll want to use <b>setImplicitNetworkWait()</b> by passing <b>true</b>\n (or <b>false</b>) in the Target field of the Selenium IDE GUI (right under command). Without any modifications, the default value \n for <b>isc.AutoTest.implicitNetworkWait</b> of <b>false</b> will prevail.\n <P>\n <b>Capturing Logs</b>\n <P>\n Capturing of client and server-side logs can be switched on by providing appropriate options to ${isc.DocUtils.linkForRef('group:testRunner')},\n but a few Selenium commands are provided to provide direct control over logging on a per-script basis.  If\n server logging has been configured as \"some,\" then server logs won't be captured for a given script unless you\n add the captureServerLogs() Selenium command after the open command; switching the mode to \"all\" will force\n server logs to be collected for all Selenium scripts, and no captureServerLogs() command is then required.\n <P>\n To configure logging levels, you can use the commands <b>setClientLogLevel(category, level)</b>, or\n <b>setServerLogLevel(category, level)</b>.  For example:\n <ul>\n <li><b>setClientLogLevel(\"AutoTest\",\"ERROR\")</b>, or\n <li><b>setServerLogLevel(\"com.isomorphic.rpc.RPCManager\", \"INFO\")</b>\n </ul>\n Note that when entering the above examples into Selenium IDE, you need neither parentheses nor quotes,\n as everything is considered a string and there are fixed slots for each.\n <P>\n <b>Disabling the Selenium SmartClient URL Query String</b>\n <P>\n By default, our user extensions automatically add a special URL variable, <b>sc_selenium</b>, to open command urls to allow \n JavaScript to detect it's being driven by Selenium in case special logic should be used.  In the unlikely event that this causes a \n problem with your code or page loading and you don't need the feature, you may eliminate this special URL variable by changing\n <b>Selenium.prototype.use_url_query_sc_selenium</b> from <b>true</b> to <b>false</b> in user-extensions.js.\n <P>\n <hr>\n <P>\n <b><u>Common scLocator syntax</u></b>\n <P>\n For more information on how locators are formed and how to influence them, see the ${isc.DocUtils.linkForRef('class:AutoTest','AutoTest')} class in \n the SmartClient Reference. \n <P>\n <b><u>List Grid cells</u></b>\n <P>\n <b>//ListGrid[ID=\"itemList\"]/body/row[itemID=1996||itemName=Sugar White 1KG||SKU=85201400||1]/col[fieldName=SKU||1]</b>\n <P>\n <ul>\n <li> This assumes the ListGrid has an explicit ID\n <li> the 'body' part might be 'frozenBody' if the field in question was frozen\n <li> row[......] identifies the row (record)\n <li> itemID= - that's the primary key field from the dataSource the grid is bound to\n <li> itemName= - that's the title field value for the record\n <li> SKU=... - that's the cell the user clicked's value\n <li> 1 - that's the index of the row (rowNum)\n <li> col[.....] - identifies the column in the grid\n <li> fieldName=... - field name for the field the user clicked\n <li> 1 - that's the index of the column\n </ul>\n <P>\n <b><u>Form Items</u></b>\n <P>\n <b>//DynamicForm[ID=\"autoTestForm\"]/item[name=textField||title=textField||value=test||index=0||Class=TextItem]/element</b>\n <P>\n This example is the data element (text entry box) for a text field \n <P>\n <ul>\n <li> this form has an explicit ID\n <li> item[...] identifies the item\n <li> name (field name, if set)\n <li> title (title, if set)\n <li> value (current value if set)\n <li> index (index in the form items array)\n <li> Class (SC class of the item - in this case TextItem) after the \"/\" we identify the part of the item in question options here include:\n <li> \"element\" - the data element\n <li> \"canvas\" - for CanvasItems - points to the canvas embedded in the item\n <li> in this case the xpath might continue to contain, for example children of the canvas or elements within it (cells in a listGrid, etc)\n <li> \"textbox\" - the \"text box\" - this is the area where content is written out for items without a 'data element' - like header items\n <li> \"[icon=&lt;...&gt;]\" - the icon element -- \"&lt;...&gt;\" would contain the \"name\" of the icon\n </ul>\n <P>\n <P>\n <hr>\n <P>\n <b><u>Keystroke Capturing (Experimental)</u></b>\n <P>\n We've enabled the capability to capture keyboard interaction with the widgets on a\n SmartClient page as an experimental feature - it's known to have incompatibilities with\n Chrome browser and has been tested mostly with Firefox.  This may be used to:\n <ul>\n <li> capture keystrokes passed to a masked TextItem (printable characters only, not navigation)\n <li> capture navigation keystrokes between records/fields of a ListGrid\n </ul>\n <hr>\n <P>\n <b><u>Best Practices</u></b>\n <P>\n <ul>\n <li> <b>Maximize the test browser window to avoid offscreen widgets</b>: Some browsers will not respond to events on widgets \n that are not visible in the browser pane (scrolled out of view or clipped off). To avoid having to manually add script commands to \n scroll such widgets into view, it's recommended to use Selenium's <b>windowMaximize()</b> command which will force the browser to \n occupy the entire screen.\n <P>\n Note that currently some browsers will respond to events on offscreen widgets (IE will, Firefox will not) however, web standards \n are unclear on whether this should be allowed and the behavior may change in the future, so best practice is to maximize for all \n browsers.\n <P>\n <li> <b>Use setID() judiciously to ensure stable locators run-to-run</b>: When setID() is not used to supply a unique component ID,\n locators will sometimes incorporate automatically generated IDs which have a sequence number (eg isc_Object_355). If your test \n has unpredictable execution order (for example, two simultaneous network operations take place and either may complete first, \n and both generate UI components on completion) then these IDs will not be stable from run-to-run. They will likewise not be stable \n if you test part of an app and then embed it in a larger app and try to use the same script.\n <P>\n Use setID() selectively to avoid this problem. Generally, it makes sense to use setID() on all top-level (parentless) widgets - at \n this point, locators for children that do not have a unique ID will be based on the parent's ID plus a relative path. This relative \n path will not incorporate auto-generated IDs and will generally continue to work even if the interior layout of the parent is \n significantly rearranged (such as adding a new intervening container widget).\n </ul>\n <P>\n <hr>\n <P>\n <b><u>Known Limitations</u></b>\n <ul>\n <li> Selenium intermittently fails to generate an scLocator with the \"type\" command on some FormItems. If this occurs, you can \n manually enter an scLocator into the target field, or use the drop down to select an alternative locator strategy (such as locating\n  a text input element by name).\n <li> Support for multi-select for SelectItems with selection mode \"grid\" (non-default)\n </ul>\n <P>",
        name:"usingSelenium",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Array.setSort":{
        ref:"method:Array.setSort",
        flags:"",
        description:" Sort this Array by a list of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s. \n",
        name:"setSort",
        seeAlso:[
        ],
        params:[
            {
                description:"the list of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s to sort by",
                optional:false,
                name:"sortSpecifiers",
                defaultValue:null,
                type:"Array of SortSpecifier"
            }
        ],
        returns:{
            description:"the array itself",
            type:"array"
        },
        type:"method",
        definingClass:"object:Array"
    },
    "class:DataSourceField":{
        methods:[
            "method:DataSourceField.getFieldValue",
            "method:DataSourceField.exportForceText"
        ],
        ref:"class:DataSourceField",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        attrs:[
            "attr:DataSourceField.fkTableCode",
            "attr:DataSourceField.fkColumnCode",
            "attr:DataSourceField.name",
            "attr:DataSourceField.type",
            "attr:DataSourceField.mimeType",
            "attr:DataSourceField.required",
            "attr:DataSourceField.autoGenerated",
            "attr:DataSourceField.nillable",
            "attr:DataSourceField.valueMap",
            "attr:DataSourceField.valueMapEnum",
            "attr:DataSourceField.validators",
            "attr:DataSourceField.length",
            "attr:DataSourceField.valueXPath",
            "attr:DataSourceField.valueWriteXPath",
            "attr:DataSourceField.lenientXPath",
            "attr:DataSourceField.title",
            "attr:DataSourceField.escapeHTML",
            "attr:DataSourceField.canView",
            "attr:DataSourceField.canEdit",
            "attr:DataSourceField.canSave",
            "attr:DataSourceField.canFilter",
            "attr:DataSourceField.editorType",
            "attr:DataSourceField.readOnlyEditorType",
            "attr:DataSourceField.displayFormat",
            "attr:DataSourceField.dateFormatter",
            "attr:DataSourceField.timeFormatter",
            "attr:DataSourceField.decimalPrecision",
            "attr:DataSourceField.decimalPad",
            "attr:DataSourceField.precision",
            "attr:DataSourceField.hidden",
            "attr:DataSourceField.ignore",
            "attr:DataSourceField.detail",
            "attr:DataSourceField.emptyDisplayValue",
            "attr:DataSourceField.primaryKey",
            "attr:DataSourceField.foreignKey",
            "attr:DataSourceField.childrenProperty",
            "attr:DataSourceField.rootValue",
            "attr:DataSourceField.sequenceName",
            "attr:DataSourceField.implicitSequence",
            "attr:DataSourceField.includeFrom",
            "attr:DataSourceField.includeVia",
            "attr:DataSourceField.relatedTableAlias",
            "attr:DataSourceField.displayField",
            "attr:DataSourceField.joinType",
            "attr:DataSourceField.summaryFunction",
            "attr:DataSourceField.summaryValueTitle",
            "attr:DataSourceField.xmlAttribute",
            "attr:DataSourceField.childTagName",
            "attr:DataSourceField.propertiesOnly",
            "attr:DataSourceField.inapplicable",
            "attr:DataSourceField.group",
            "attr:DataSourceField.multiple",
            "attr:DataSourceField.multipleValueSeparator",
            "attr:DataSourceField.multipleStorage",
            "attr:DataSourceField.multipleStorageSeparator",
            "attr:DataSourceField.javaClass",
            "attr:DataSourceField.javaCollectionClass",
            "attr:DataSourceField.javaKeyClass",
            "attr:DataSourceField.exportTitle",
            "attr:DataSourceField.canExport",
            "attr:DataSourceField.showFileInline",
            "attr:DataSourceField.imageWidth",
            "attr:DataSourceField.imageHeight",
            "attr:DataSourceField.imageSize",
            "attr:DataSourceField.viewRequiresAuthentication",
            "attr:DataSourceField.editRequiresAuthentication",
            "attr:DataSourceField.initRequiresAuthentication",
            "attr:DataSourceField.updateRequiresAuthentication",
            "attr:DataSourceField.viewRequiresRole",
            "attr:DataSourceField.editRequiresRole",
            "attr:DataSourceField.initRequiresRole",
            "attr:DataSourceField.updateRequiresRole",
            "attr:DataSourceField.viewRequires",
            "attr:DataSourceField.editRequires",
            "attr:DataSourceField.initRequires",
            "attr:DataSourceField.updateRequires",
            "attr:DataSourceField.creatorOverrides",
            "attr:DataSourceField.audit",
            "attr:DataSourceField.nullReplacementValue",
            "attr:DataSourceField.ignoreTextMatchStyle",
            "attr:DataSourceField.canSortClientOnly",
            "attr:DataSourceField.storeWithHash",
            "attr:DataSourceField.maxFileSize",
            "attr:DataSourceField.encodeInResponse",
            "attr:DataSourceField.format",
            "attr:DataSourceField.exportFormat",
            "attr:DataSourceField.includeSummaryFunction",
            "attr:DataSourceField.allowClientRequestedSummaries",
            "attr:DataSourceField.validOperators"
        ],
        description:"Metadata about a DataSourceField, including its type and validators.",
        name:"DataSourceField",
        seeAlso:[
        ],
        type:"class",
        serverDS:"allowed"
    },
    "attr:DSRequest.exportValueFields":{
        ref:"attr:DSRequest.exportValueFields",
        flags:"IR",
        description:"Only applies to request properties passed to ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData')}.\n Ordinarily, any fields that have a ${isc.DocUtils.linkForRef('attr:ListGridField.displayField','displayField')} defined \n have the value of that displayFIeld exported, rather than the underlying value in the \n ${isc.DocUtils.linkForRef('attr:ListGridField.valueField','valueField')}.  If you set this  property, we export both \n the underlying value and the displayField value.",
        name:"exportValueFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:ComboBoxItem.optionOperationId":{
        ref:"attr:ComboBoxItem.optionOperationId",
        flags:"IR",
        description:"If this item has a specified <code>optionDataSource</code>, this attribute may be set\n to specify an explicit ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} when performing a fetch against the\n option dataSource to pick up display value mapping.",
        name:"optionOperationId",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:ListGrid.printHeaderStyle":{
        ref:"attr:ListGrid.printHeaderStyle",
        flags:"IRW",
        description:"Style for header cells in printed output.  Defaults to ${isc.DocUtils.linkForRef('attr:ListGrid.headerBaseStyle')} if null.",
        name:"printHeaderStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"printHeader\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "printing"
        ]
    },
    "attr:RichTextEditor.editAreaBackgroundColor":{
        ref:"attr:RichTextEditor.editAreaBackgroundColor",
        flags:"IR",
        description:"Background color for the ${isc.DocUtils.linkForRef('attr:RichTextEditor.editArea','edit canvas')}.",
        name:"editAreaBackgroundColor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"white\"",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "attr:WebService.globalNamespaces":{
        ref:"attr:WebService.globalNamespaces",
        flags:"IRW",
        description:"Namespaces definitions to add to the root element of outbound XML messages sent to a web\n service, as a mapping from namespace prefix to namespace URI.\n <P>\n The default value is:\n <pre>\n   globalNamespaces : {\n      xsi: \"http://www.w3.org/2001/XMLSchema-instance\",\n      xsd: \"http://www.w3.org/2001/XMLSchema\"\n   },\n </pre>\n This default value allows the use of the xsi:type and xsi:nil attributes without further\n declarations.\n <P>\n Note that some web services will only accept specific revisions of the XML Schema URI.\n If xsi-namespaced attributes seem to be ignored by an older webservice, try the URI\n \"http://www.w3.org/1999/XMLSchema-instance\" instead.",
        name:"globalNamespaces",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"...",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:WebService"
    },
    "method:DynamicForm.clearFieldErrors":{
        ref:"method:DynamicForm.clearFieldErrors",
        flags:"",
        description:" Clear any validation errors on the field passed in.\n",
        name:"clearFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"field to clear errors from",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"If true this method will fall through to ${isc.DocUtils.linkForRef('method:DynamicForm.showFieldErrors')}  to update the display",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "method:Class.getID":{
        ref:"method:Class.getID",
        flags:"",
        description:"\t\t\tReturn the global identifier for this object.\n\n",
        name:"getID",
        seeAlso:[
        ],
        returns:{
            description:"global identifier for this canvas",
            type:"string"
        },
        type:"method",
        definingClass:"class:Class"
    },
    "attr:FormItem.criteriaField":{
        ref:"attr:FormItem.criteriaField",
        flags:"IR",
        description:"When using ${isc.DocUtils.linkForRef('attr:FormItem.operator')}, the name of the DataSource field for the\n ${isc.DocUtils.linkForRef('object:Criterion')} this FormItem generates.  If not specified, defaults to\n ${isc.DocUtils.linkForRef('attr:FormItem.name')}.\n <P>\n Generally, because <code>criteriaField</code> defaults to <code>item.name</code>, you don't\n need to specify it.  However, if more than one FormItem specifies criteria for the same\n DataSource field, they will need unique values for ${isc.DocUtils.linkForRef('attr:FormItem.name')} but should set\n ${isc.DocUtils.linkForRef('attr:FormItem.criteriaField')} to the name of DataSource field they both target.\n <P>\n For example, if two DateItems are used to provide a min and max date for a single field called\n \"joinDate\", set ${isc.DocUtils.linkForRef('attr:FormItem.criteriaField')} to \"joinDate\" on both fields but give the fields\n distinct names (eg \"minDate\" and \"maxDate\") and use those names for any programmatic access,\n such as ${isc.DocUtils.linkForRef('method:DynamicForm.setValue')}.",
        name:"criteriaField",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "class:Selection":{
        methods:[
            "method:Selection.isSelected",
            "method:Selection.isPartiallySelected",
            "method:Selection.anySelected",
            "method:Selection.getLength",
            "method:Selection.multipleSelected",
            "method:Selection.getSelection",
            "method:Selection.getSelectedRecord",
            "method:Selection.setSelected",
            "method:Selection.select",
            "method:Selection.deselect",
            "method:Selection.selectSingle",
            "method:Selection.selectList",
            "method:Selection.deselectList",
            "method:Selection.selectAll",
            "method:Selection.deselectAll",
            "method:Selection.selectItem",
            "method:Selection.deselectItem",
            "method:Selection.selectRange",
            "method:Selection.deselectRange"
        ],
        ref:"class:Selection",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:Selection.selectionRangeNotLoadedMessage"
        ],
        description:"Maintains a 'selected' subset of a List or Array of objects, such as records in a record\n set, or widgets in a selectable header.<br><br>\n\n Includes methods for selecting objects and checking which objects are selected, and also for\n selecting objects as a result of mouse events, including drag selection support.<br>\n The selection object is used automatically to handle selection APIs on ${isc.DocUtils.linkForRef('class:ListGrid')}\n and ${isc.DocUtils.linkForRef('class:TreeGrid')} instances.<br><br>",
        name:"Selection",
        seeAlso:[
        ],
        type:"class"
    },
    "classMethod:isc.getKeyForValue":{
        ref:"classMethod:isc.getKeyForValue",
        flags:"",
        description:" Given a value and an object of <code>key:value</code> pairs, return a key that corresponds\n to that value.\n <P>\n If the key is not found, <code>defaultKey</code> will be returned if provided, otherwise the\n value will be returned.\n\n",
        name:"getKeyForValue",
        seeAlso:[
        ],
        params:[
            {
                description:"value to look for",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"string or number"
            },
            {
                description:"object of key:value pairs",
                optional:false,
                name:"valueMap",
                defaultValue:null,
                type:"object"
            },
            {
                description:"default key to return if value not found",
                optional:true,
                name:"defaultKey",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"returns first key in valueMap with value, or                                              defaultKey if value not found",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:ListGrid.showExpansionEditorSaveButton":{
        ref:"attr:ListGrid.showExpansionEditorSaveButton",
        flags:"RW",
        description:"When ${isc.DocUtils.linkForRef('type:ExpansionMode')} is <i>editor</i>, should a Save button be shown below the\n the expanded editor?\n <P>\n Note that if an expanded-row containing an editor is collapsed while changes are\n oustanding, changes will be either be automatically updated to the grid, or will first\n show a confirmation dialog, according to the value of\n ${isc.DocUtils.linkForRef('attr:ListGrid.expansionEditorShowSaveDialog')}.",
        name:"showExpansionEditorSaveButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:DataSourceField.updateRequiresAuthentication":{
        ref:"attr:DataSourceField.updateRequiresAuthentication",
        flags:"IR",
        description:"Whether a user must be authenticated in order to update to this field.  If this property is \n set and the user is not authenticated, the SmartClient Server will not allow this field to\n be updated.",
        name:"updateRequiresAuthentication",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:ResultTree.discardParentlessNodes":{
        ref:"attr:ResultTree.discardParentlessNodes",
        flags:"IRA",
        description:"When data is loaded from the server, should nodes with an explicit value for\n the ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')} which doesn't map to a valid parent node be dropped?\n If set to false, for ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand')}:false trees, parentless nodes will be\n added as children of the root node - for ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand')}:true, they will be\n added as children of the folder currently requesting children.\n <P>\n This effectively allows nodes to be loaded into the current (or root) folder without\n needing an explicit ${isc.DocUtils.linkForRef('attr:Tree.parentIdField','parentIdField value')} that matches the folder's\n ID or <code>rootValue</code> for the resultTree.\n <P>\n Note: For <code>loadDataOnDemand:false</code> trees, if this property is unset at init time,\n it will default to <code>true</code> if an explicit ${isc.DocUtils.linkForRef('attr:ResultTree.rootNode')} has been\n specified. This ensures that if the data tree retrieved from the server includes ancestors\n of the desired root-node we don't display them. Otherwise this property always defaults to\n false.",
        name:"discardParentlessNodes",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultTree"
    },
    "attr:JSONEncoder.strictQuoting":{
        ref:"attr:JSONEncoder.strictQuoting",
        flags:"IR",
        description:"Whether all property names should be quoted, or only those property names that are not valid\n identifiers or are JavaScript reserved words (such as \"true\").\n <P>\n Encoding only where required produces slightly shorter, more readable output which is still\n compatible with JavaScript's eval():\n <pre>\n {\n     someProp : \"someValue\",\n     \"true\" : \"otherValue\",\n     otherProp : \"otherValue\"\n }\n </pre>\n .. but is not understood by many server-side JSON parser implementations.",
        name:"strictQuoting",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:JSONEncoder"
    },
    "attr:FiscalCalendar.fiscalYears":{
        ref:"attr:FiscalCalendar.fiscalYears",
        flags:"IRW",
        description:"An array of ${isc.DocUtils.linkForRef('object:FiscalYear','FiscalYear objects')} which each represent the start date of a\n single fiscal year.",
        name:"fiscalYears",
        seeAlso:[
        ],
        valueType:"Array of FiscalYear",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FiscalCalendar"
    },
    "attr:ListGridField.groupPrecision":{
        ref:"attr:ListGridField.groupPrecision",
        flags:"IR",
        description:"For fields of type:\"float\" or derived from float, number of digits after the decimal point\n to consider when grouping.\n <P>\n For example, <code>groupPrecision:2</code> indicates that 45.238 and 45.231 group together,\n but 45.22 and 45.27 are separate.\n <P>\n See also ${isc.DocUtils.linkForRef('attr:ListGridField.groupGranularity','groupGranularity')} for grouping by broader\n ranges.",
        name:"groupPrecision",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "grouping"
        ]
    },
    "method:DrawItem.computeAngle":{
        ref:"method:DrawItem.computeAngle",
        flags:"",
        description:" Computes the angle in degrees from the positive X axis to the difference vector\n <nobr><b>v</b><sub>2</sub> - <b>v</b><sub>1</sub></nobr> between the two given vectors.\n",
        name:"computeAngle",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate of <b>v</b><sub>1</sub>",
                optional:false,
                name:"px1",
                defaultValue:null,
                type:"double"
            },
            {
                description:"Y coordinate of <b>v</b><sub>1</sub>",
                optional:false,
                name:"py1",
                defaultValue:null,
                type:"double"
            },
            {
                description:"X coordinate of <b>v</b><sub>2</sub>",
                optional:false,
                name:"px2",
                defaultValue:null,
                type:"double"
            },
            {
                description:"Y coordinate of <b>v</b><sub>2</sub>",
                optional:false,
                name:"py2",
                defaultValue:null,
                type:"double"
            }
        ],
        returns:{
            description:"the angle in degrees, in the range [0, 360).",
            type:"double"
        },
        type:"method",
        definingClass:"class:DrawItem"
    },
    "classMethod:Process.loadProcess":{
        ref:"classMethod:Process.loadProcess",
        flags:"",
        description:" Loads an XML process definition stored in XML from the server.\n <p>\n This method requires server-side support included in SmartClient Pro Edition or better.\n <p>\n Process files are stored as .proc.xml files in ${isc.DocUtils.linkForRef('group:componentXML','Component XML')}\n format, in the directory indicated by the <code>project.processes</code> setting in\n ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}\n (<code><i>webroot</i>/processes</code> by default).  To load a process\n saved in a file <i>processId</i>.proc.xml, pass just <i>processId</i> to this method.\n <p>\n Processes follow all the standard rules for encoding as ${isc.DocUtils.linkForRef('group:componentXML')}, for\n example:\n <pre>\n &lt;Process ID=\"<i>processId</i>\"&gt;\n     &lt;elements&gt;\n        &lt;ServiceTask ID=\"<i>taskId</i>\" ..&gt;\n            &lt;inputFieldList&gt;\n               &lt;value&gt;order.countryName&lt;/value&gt;\n            &lt;/inputFieldList&gt;\n            &lt;outputFieldList&gt;\n               &lt;value&gt;order.countryName&lt;/value&gt;\n               &lt;value&gt;order.continent&lt;/value&gt;\n            &lt;outputFieldList&gt;\n        &lt;/ServiceTask&gt;\n        &lt;UserTask ../&gt;\n        ...\n     &lt;/elements&gt;\n &lt;/Process&gt;\n </pre>\n  \n",
        name:"loadProcess",
        seeAlso:[
        ],
        params:[
            {
                description:"process IDs to load",
                optional:false,
                name:"processId",
                defaultValue:null,
                type:"Identifier | Array of Identifier"
            },
            {
                description:"called when the process is loaded with argument                            \"process\", the first process.  Other processes can be looked\n                            up via ${isc.DocUtils.linkForRef('classMethod:Process.getProcess')}.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"ProcessCallback"
            }
        ],
        type:"classMethod",
        definingClass:"class:Process"
    },
    "attr:ListGridField.exportFormat":{
        ref:"attr:ListGridField.exportFormat",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('type:FormatString')} used during exports for numeric or date formatting.  See\n ${isc.DocUtils.linkForRef('attr:DataSourceField.exportFormat')}.",
        name:"exportFormat",
        seeAlso:[
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "exportFormatting"
        ]
    },
    "attr:DataSourceField.lenientXPath":{
        ref:"attr:DataSourceField.lenientXPath",
        deprecated:"No longer needs to be set since the framework now defaults to suppressing errors  for null values in the middle of Xpath, and only invalid XPath will cause warning be logged.",
        flags:"IR",
        description:"Indicates that getting ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath')} for this field should\n not perform any validation at all and will return null for non existing XPaths.\n Otherwise warning message will be logged for non-existing XPath or with null objects\n in the middle of XPath.\n <P>\n NOTE: this applies to server-side processing of valueXPath only.",
        name:"lenientXPath",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "classAttr:RPCManager.allowIE9Leak":{
        ref:"classAttr:RPCManager.allowIE9Leak",
        flags:"IRWA",
        description:"In Internet Explorer 9, when a string of \n JavaScript is evaluated via the native <code>eval()</code> function, objects created \n within that evaluation are not released from browser memory until the page is \n reloaded.\n <P>\n SmartClient uses the <code>eval()</code> function to evaluate JSON formatted\n responses to RPCRequests by default, making long running applications potentially\n susceptible to memory leaks over time.\n <P>\n Note that this does not apply to DataSources which use\n ${isc.DocUtils.linkForRef('attr:DataSource.useStrictJSON')} formatted responses as the framework avoids\n calling eval() altogether and makes use of the native browser \n <code>JSON.parse()</code> method which does not have this issue. By default\n we also use strict json formatted responses for all\n ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','dataFormat:\"iscServer\"')} dataSources in IE9, so these\n leaks are mainly a concern only for dataSources with ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat')}\n set to \"json\".\n <P>\n Setting this property to <code>false</code> enables a workaround suggested on the\n <a href=\"http://support.microsoft.com/kb/2572253\">Microsoft Knowledge Base</a> to \n avoid such memory leaks by evaluating script in a hidden iframe and periodically\n refresh that frame. However developers should be aware of the following\n limitation with this setting: \n attempting to access certain object types including\n <code>Date</code> or <code>function</code> objects generated from such an \n evaluation can subsequently lead to a JavaScript error with the message\n <code>\"Can't execute code from a freed script\"</code>.\n <P>\n This workaround therefore may not be suitable for all transactions or dataSources\n within a given application.\n <P>\n This property may also be specified for specific ${isc.DocUtils.linkForRef('attr:RPCRequest.allowIE9Leak','RPCRequests')}.\n <P>\n This issue is discussed further in the online \n <a href=\"http://forums.smartclient.com/showthread.php?t=8159\">SmartClient FAQ</a>.",
        name:"allowIE9Leak",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"classAttr",
        definingClass:"class:RPCManager"
    },
    "attr:Tree.modelType":{
        ref:"attr:Tree.modelType",
        flags:"IRWA",
        description:"Selects the model used to construct the tree representation.  See ${isc.DocUtils.linkForRef('type:TreeModelType')} for\n the available options and their implications.\n <P>\n If the \"parent\" modelType is used, you can provide the initial parent-linked data set to the\n tree via the ${isc.DocUtils.linkForRef('attr:Tree.data')} attribute.  If the \"children\" modelType is used, you can\n provide the initial tree structure to the Tree via the ${isc.DocUtils.linkForRef('attr:Tree.root')} attribute.",
        name:"modelType",
        seeAlso:[
            {
                ref:"attr:Tree.data",
                description:null
            },
            {
                ref:"attr:Tree.root",
                description:null
            }
        ],
        valueType:"TreeModelType",
        defaultValue:"\"children\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('nodeTitles')}"
        ],
        definingClass:"class:Tree"
    },
    "type:Direction":{
        ref:"type:Direction",
        values:[
            {
                description:"above",
                value:"Canvas.UP"
            },
            {
                description:"below",
                value:"Canvas.DOWN"
            },
            {
                description:"to the left of",
                value:"Canvas.LEFT"
            },
            {
                description:"to the right of",
                value:"Canvas.RIGHT"
            }
        ],
        description:null,
        name:"Direction",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "attr:Canvas.edgeOpacity":{
        ref:"attr:Canvas.edgeOpacity",
        flags:"IR",
        description:"Opacity of the edges.  Defaults to matching this.opacity.\n if ${isc.DocUtils.linkForRef('method:Canvas.setOpacity')} is called on a Canvas where edgeOpacity is set,\n edgeOpacity will be considered a percentage of the parent's opacity (so 50% opaque parent plus\n edgeOpacity 50 means 25% opaque edges)",
        name:"edgeOpacity",
        setter:[
            "setEdgeOpacity"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('edges')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:ImgSplitbar.skinImgDir":{
        ref:"attr:ImgSplitbar.skinImgDir",
        flags:"IR",
        description:"Default directory for skin images (those defined by the class), relative to the\n Page-wide ${isc.DocUtils.linkForRef('classMethod:Page.getSkinDir','skinDir')}.",
        name:"skinImgDir",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"images/SplitBar/\"",
        type:"attr",
        definingClass:"class:ImgSplitbar",
        groups:[
            "images"
        ]
    },
    "attr:Splitbar.vResizeCursor":{
        ref:"attr:Splitbar.vResizeCursor",
        flags:"IR",
        description:"Cursor to display if this Splitbar is to be used for vertical resize of widgets.",
        name:"vResizeCursor",
        seeAlso:[
        ],
        valueType:"Cursor",
        defaultValue:"\"row-resize\"",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "cursor"
        ]
    },
    "attr:TimeItem.minuteMinValue":{
        ref:"attr:TimeItem.minuteMinValue",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteValues','minuteValues')} is unset, this attribute specifies the minimum\n value present in the minute picker.\n <P>Used for specifying a limited set of valid Minute values, or when using the \n TimeItem to record duration, rather than time per-se.  The default is zero in all cases.\n <P> See also ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMaxValue','minuteMaxValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteIncrement','minuteIncrement')}.",
        name:"minuteMinValue",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:DrawOval.top":{
        ref:"attr:DrawOval.top",
        flags:"IRW",
        description:"Top coordinate in pixels relative to the DrawPane.",
        name:"top",
        setter:[
            "setTop"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DrawOval"
    },
    "attr:ListGridField.includeInRecordSummary":{
        ref:"attr:ListGridField.includeInRecordSummary",
        flags:"IR",
        description:"If a listGrid is showing a field of type summary, should this field be passed to the\n recordSummaryFunction when calculating the summary value to display.\n If unset, fields are included if they are of type \"integer\" or \"float\" only (since most\n summary functions perform numeric calculations). See also\n ${isc.DocUtils.linkForRef('attr:ListGridField.includeInRecordSummaryFields')}.",
        name:"includeInRecordSummary",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:FacetChart.setStacked":{
        ref:"method:FacetChart.setStacked",
        flags:"",
        description:" Method to change ${isc.DocUtils.linkForRef('attr:FacetChart.stacked','stacked')}. Use null to\n apply a default value for the current ${isc.DocUtils.linkForRef('type:ChartType','chartType')}.\n\n",
        name:"setStacked",
        seeAlso:[
        ],
        params:[
            {
                description:"new value",
                optional:false,
                name:"stacked",
                defaultValue:null,
                type:"boolean or null"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "group:contentLoading":{
        ref:"group:contentLoading",
        refs:[
            "method:ViewLoader.handleError",
            "method:ViewLoader.getView",
            "method:ViewLoader.viewLoaded",
            "method:HTMLFlow.setContentsURL",
            "method:HTMLFlow.loadingContent",
            "method:HTMLFlow.handleError",
            "method:HTMLFlow.transformHTML",
            "method:HTMLFlow.contentLoaded",
            "class:HTMLFlow",
            "attr:ViewLoader.httpMethod",
            "attr:HTMLFlow.contentsURL",
            "attr:HTMLFlow.loadingMessage",
            "attr:HTMLFlow.contentsURLParams",
            "attr:HTMLFlow.httpMethod",
            "attr:HTMLFlow.contentsType",
            "attr:HTMLFlow.evalScriptBlocks",
            "attr:HTMLFlow.captureSCComponents"
        ],
        name:"contentLoading",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:SelectItem.canSelectText":{
        ref:"attr:SelectItem.canSelectText",
        flags:"IRW",
        description:"By default SelectItems do not allow users to select the text of the\n selected value.",
        name:"canSelectText",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "method:Array.intersect":{
        ref:"method:Array.intersect",
        flags:"",
        description:" Return the list of items that are in both this list and the passed-in list(s).\n\n",
        name:"intersect",
        seeAlso:[
        ],
        params:[
            {
                description:"lists to intersect with",
                optional:false,
                name:"lists",
                defaultValue:null,
                type:"all List arguments"
            }
        ],
        returns:{
            description:"intersection",
            type:"List"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "arrayMath"
        ]
    },
    "attr:StateTask.value":{
        ref:"attr:StateTask.value",
        flags:"IR",
        description:"If a stateTask does not declare ${isc.DocUtils.linkForRef('attr:Task.inputField','inputField')}, it must declare a <code>value</code>\n which should be assigned to the output field.\n <p>\n See ${isc.DocUtils.linkForRef('attr:StateTask.type')} for how the value is interpreted.",
        name:"value",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StateTask"
    },
    "method:DateItem.setStartDate":{
        ref:"method:DateItem.setStartDate",
        flags:"A",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:DateItem.startDate')}.\n",
        name:"setStartDate",
        seeAlso:[
        ],
        params:[
            {
                description:"the new startDate.",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"LogicalDate | String"
            }
        ],
        type:"method",
        definingClass:"class:DateItem"
    },
    "classMethod:Class.addProperties":{
        ref:"classMethod:Class.addProperties",
        flags:"",
        description:"\n\tAdd default properties and methods to all instances of this class.<br><br>\n\n\tThese properties can then be accessed as <code>myInstance.property</code>,\n  and methods can be called via <code>myInstance.methodName()</code>\n\n",
        name:"addProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"objects with properties to add (think named parameters).\t\t\t\t\t\t\t\t\t\tall the properties of each argument will be applied\n\t\t\t\t\t\t\t\t\t\tas instance-level property defaults.",
                optional:true,
                name:"arguments 0-N",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"the class after properties have been added to it",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:ListGrid.hoverStyle":{
        ref:"attr:ListGrid.hoverStyle",
        flags:"IRWA",
        description:"Style to apply to hovers shown over this grid.",
        name:"hoverStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.showHover",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"gridHover\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "hovers"
        ]
    },
    "method:DateItem.deselectValue":{
        ref:"method:DateItem.deselectValue",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.deselectValue','deselectValue()')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"deselectValue",
        seeAlso:[
        ],
        params:[
            {
                description:"If this parameter is passed, new cursor insertion position will be   moved to the start, rather than the end of this item's value.",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:DateItem"
    },
    "attr:MultiSortDialog.cancelButtonTitle":{
        ref:"attr:MultiSortDialog.cancelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the cancelButton",
        name:"cancelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.groupByMaxRecords":{
        ref:"attr:ListGrid.groupByMaxRecords",
        flags:"IRW",
        description:"Maximum number of records to which a groupBy can be applied. If there are more records,\n grouping will not be available via the default header context menu, and calls to\n ${isc.DocUtils.linkForRef('method:ListGrid.groupBy')} will be ignored.\n <P>\n The maximum exists because ListGrid grouping is performed in-browser, hence requires loading of\n all records that match the current filter criteria before records can be grouped.  The default\n maximum represents a number of records which are safe to load in legacy browsers such as Internet\n Explorer 8 (modern browsers can handle far more), and is also a good upper limit from the\n perspective of loading data from a database.\n <P>\n Going beyond this limit can cause \"script running slowly\" errors from legacy browsers (as well as\n high database load).  To build an interface for grouping that handles arbitrary data volume, use\n a TreeGrid with ${isc.DocUtils.linkForRef('attr:TreeGrid.loadDataOnDemand')} with server-side grouping code.",
        name:"groupByMaxRecords",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"1000",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:ToolbarItem.vertical":{
        ref:"attr:ToolbarItem.vertical",
        flags:"IRA",
        description:"Should the toolbar stack its buttons vertically or horizontally?",
        name:"vertical",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ToolbarItem"
    },
    "class:isc":{
        methods:[
        ],
        ref:"class:isc",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:isc.getIconLeft",
            "classMethod:isc.getIconTop",
            "classMethod:isc.getIconRect",
            "classMethod:isc.getIconPageRect",
            "classMethod:isc.setScreenReaderMode",
            "classMethod:isc.showPrompt",
            "classMethod:isc.clearPrompt",
            "classMethod:isc.showFadingPrompt",
            "classMethod:isc.warn",
            "classMethod:isc.say",
            "classMethod:isc.ask",
            "classMethod:isc.confirm",
            "classMethod:isc.askForValue",
            "classMethod:isc.showLoginDialog",
            "classMethod:isc.logWarn",
            "classMethod:isc.echo",
            "classMethod:isc.echoAll",
            "classMethod:isc.echoLeaf",
            "classMethod:isc.logEcho",
            "classMethod:isc.logEchoAll",
            "classMethod:isc.addProperties",
            "classMethod:isc.getKeys",
            "classMethod:isc.firstKey",
            "classMethod:isc.getValues",
            "classMethod:isc.sortObject",
            "classMethod:isc.sortObjectByProperties",
            "classMethod:isc.addDefaults",
            "classMethod:isc.propertyDefined",
            "classMethod:isc.defineClass",
            "classMethod:isc.overwriteClass",
            "classMethod:isc.eval",
            "classMethod:isc.timeStamp",
            "classMethod:isc.getValueForKey",
            "classMethod:isc.getKeyForValue",
            "classMethod:isc.makeReverseMap",
            "classMethod:isc.setAutoDraw",
            "classMethod:isc.clone",
            "classMethod:isc.shallowClone"
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
        ],
        description:"The <code>isc</code> object contains global methods and objects of the Isomorphic SmartClient\n framework.\n <P>\n See also ${isc.DocUtils.linkForRef('group:simpleNamesMode','Simple Names mode')}.",
        name:"isc",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:MultiGroupPanel.addLevelButtonTitle":{
        ref:"attr:MultiGroupPanel.addLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the addLevelButton",
        name:"addLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Add Level\"",
        type:"attr",
        definingClass:"class:MultiGroupPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HibernateBrowser.mappingTree":{
        ref:"attr:HibernateBrowser.mappingTree",
        flags:"IR",
        description:"Instance of TreeGrid used to display the Hibernate mappings (beans and properties)",
        name:"mappingTree",
        seeAlso:[
        ],
        valueType:"AutoChild TreeGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HibernateBrowser"
    },
    "method:ListGrid.getGridSummaryData":{
        ref:"method:ListGrid.getGridSummaryData",
        flags:"",
        description:" This method returns the data <smartclient>to be</smartclient> displayed in the \n ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRow')} when ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is true.\n <P>\n By default this will call ${isc.DocUtils.linkForRef('method:ListGrid.getGridSummary')} for each field and generate an array of records\n containing the resulting values.\n <P>\n This method <smartclient>may be overridden for custom grid-summary display, and</smartclient> \n may return multiple records if more than one summary row is desired.\n\n",
        name:"getGridSummaryData",
        seeAlso:[
        ],
        returns:{
            description:"summary record(s)",
            type:"Array of ListGridRecord"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGridField.getGroupSummary":{
        ref:"method:ListGridField.getGroupSummary",
        flags:"A",
        description:" If ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true, and this method is specified it will be\n called to generate the field summary value to be displayed for each group level summary row.\n Note that this is called instead of making use of the ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')}.\n <P>\n This method may return an array of results - in this case the group will show multiple summary\n rows, with each entry in the array showing up in a different record.\n\n",
        name:"getGroupSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"records for which a summary is being generated  (so all records in the group).",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of ListGridRecord"
            },
            {
                description:"pointer to the field for which summary value is being generated",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"object with specified groupValue and groupName for this group",
                optional:true,
                name:"groupNode",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"summary value to display",
            type:"any"
        },
        type:"method",
        definingClass:"object:ListGridField"
    },
    "method:Tree.getParentPath":{
        ref:"method:Tree.getParentPath",
        flags:"",
        description:"\n Given a node, return the path to its parent.  This works just like\n ${isc.DocUtils.linkForRef('method:Tree.getPath')} except the node itself is not reported as part of the path.\n\n",
        name:"getParentPath",
        seeAlso:[
            {
                ref:"method:Tree.getPath",
                description:null
            }
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"path to the node's parent",
            type:"string"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:DrawItem.getPageLeft":{
        ref:"method:DrawItem.getPageLeft",
        flags:"A",
        description:" Returns the page-relative left coordinate of the widget on the page, in pixels.\n",
        name:"getPageLeft",
        seeAlso:[
        ],
        returns:{
            description:"global left coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:DrawItem",
        groups:[
            "positioning"
        ]
    },
    "attr:CubeGrid.facetLabelHoverWidth":{
        ref:"attr:CubeGrid.facetLabelHoverWidth",
        flags:"IRWA",
        description:"If specified and <code>this.showHover</code> is true, this is the default width to apply\n to hover tips shown for facetLabels. If unset, the hover canvas will be sized to \n <code>this.hoverWidth</code> if specified instead.",
        name:"facetLabelHoverWidth",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverWidth",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "attr:DataSourceField.canSortClientOnly":{
        ref:"attr:DataSourceField.canSortClientOnly",
        flags:"IRW",
        description:"When true, this field can only be used for sorting if the data is entirely client-side.",
        name:"canSortClientOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "method:FacetChart.getLegendFacet":{
        ref:"method:FacetChart.getLegendFacet",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('class:Facet')} in the list of ${isc.DocUtils.linkForRef('attr:FacetChart.facets','facets')} whose\n ${isc.DocUtils.linkForRef('attr:Facet.values','values')} are rendered in the chart's legend.\n <p>\n Most single-facet charts do not have a legend facet.  The exceptions are that single-facet\n Pie/Doughnut charts have a legend facet as the first facet and Scatter charts may optionally\n have a legend facet as the second facet, after the metric facet.\n <p>\n In all multi-facet charts, the legend facet is the second facet.\n <p>\n Note that the user may swap the legend facet and the\n ${isc.DocUtils.linkForRef('method:FacetChart.getDataLabelFacet','data label facet')} in most chart types using the context menu.\n",
        name:"getLegendFacet",
        seeAlso:[
            {
                ref:"attr:FacetChart.facets",
                description:null
            }
        ],
        returns:{
            description:"the legend facet, or <code>null</code> if there is no such facet",
            type:"Facet"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "classAttr:Canvas.allowExternalFilters":{
        ref:"classAttr:Canvas.allowExternalFilters",
        flags:"IR",
        description:"If enabled, uses a moderately expensive workaround to allow the use of IE filters in CSS\n to produce gradient effects for buttons, grid rows, and other elements, without the use\n of image backgrounds.\n <P>\n See ${isc.DocUtils.linkForRef('group:IEFilters')} for background.",
        name:"allowExternalFilters",
        setter:[
            "setAllowExternalFilters"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"classAttr",
        definingClass:"class:Canvas",
        groups:[
            "IEFilters"
        ]
    },
    "classMethod:Menu.hideAllMenus":{
        ref:"classMethod:Menu.hideAllMenus",
        flags:"",
        description:" Hide all menus that are currently open. This method is useful to hide the current set of\n menus including submenus, and dismiss the menu's clickMask.\n\n",
        name:"hideAllMenus",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Menu"
    },
    "method:SectionStack.collapseSection":{
        ref:"method:SectionStack.collapseSection",
        flags:"",
        description:" \n Collapse a section or sections.  This action hides all the items assigned to the\n section.  Calling this method is equivalent to the user clicking on the SectionHeader of\n an expanded section.\n <smartclient>This method is called when the user clicks on SectionHeaders\n to expand / collapse sections and so may be overridden to act as a notification method\n for the user expanding or collapsing sections.</smartclient>\n\n",
        name:"collapseSection",
        seeAlso:[
            {
                ref:"method:SectionStack.hideSection",
                description:null
            }
        ],
        params:[
            {
                description:"Section(s) to collapse.  For this parameter, you can pass the position \n                      of the section in the SectionStack, the name of the section, or a\n                      List of section positions / names",
                optional:false,
                name:"sections",
                defaultValue:null,
                type:"int | String | Array of int | Array of String"
            },
            {
                description:"callback to fire when the section has been collapsed",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"CollapseSectionCallback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsExpandCollapse')}"
        ],
        definingClass:"class:SectionStack"
    },
    "type:EscapingMode":{
        ref:"type:EscapingMode",
        values:[
            {
                description:"Literal double quotes in data values are doubled (\"\"), as expected by Microsoft                 Excel when pasting text values",
                value:"\"double\""
            },
            {
                description:"double quotes in data values have a blackslash (\\) prepended, similar to                    String escaping in JavaScript and Java",
                value:"\"backslash\""
            }
        ],
        description:"Mode for escaping text values when using ${isc.DocUtils.linkForRef('method:DataSource.recordsAsText')} or\n ${isc.DocUtils.linkForRef('method:DataSource.recordsFromText')}.",
        name:"EscapingMode",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:TreeGrid.dataSource":{
        ref:"attr:TreeGrid.dataSource",
        flags:"IRW",
        description:"The DataSource that this component should bind to for default fields and for performing\n ${isc.DocUtils.linkForRef('class:DSRequest','DataSource requests')}.\n <P>\n Can be specified as either a DataSource instance or the String ID of a DataSource.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataSourceFields')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "databinding"
        ]
    },
    "attr:DataSource.dataField":{
        ref:"attr:DataSource.dataField",
        flags:"IR",
        description:"Name of the field that has the most pertinent numeric, date, or enum value, for use when a\n ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} needs to show a short summary of a record.\n <P>\n For example, for a DataSource of employees, good choices might be the \"salary\" field, \"hire\n date\" or \"status\" (active, vacation, on leave, etc).\n <p>\n Unlike ${isc.DocUtils.linkForRef('attr:DataSource.titleField')}, dataField is not automatically determined in the absence of an\n explicit setting.",
        name:"dataField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "dsSpecialFields"
        ]
    },
    "method:ListGrid.getGridSummary":{
        ref:"method:ListGrid.getGridSummary",
        flags:"A",
        description:" When ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} is <code>true</code> this method is called for each field\n which will show a grid summary value (as described in ${isc.DocUtils.linkForRef('attr:ListGridField.showGridSummary')})\n to get the summary value to display below the relevant column.\n <P>\n The default implementation is as follows:\n <ul><li>If this is a databound grid and not all data is loaded, returns null for every field</li>\n     <li>Otherwise if ${isc.DocUtils.linkForRef('method:ListGridField.getGridSummary')} is defined, calls that method passing\n         in the current data set for the grid</li>\n     <li>If ${isc.DocUtils.linkForRef('method:ListGridField.getGridSummary')} is undefined, makes use of the\n          ${isc.DocUtils.linkForRef('method:ListGrid.getGridSummaryFunction','standard summary function')} for the field to\n          calculate the summary based on the current data set</li>\n </ul>\n This method may return an array of values. This implies that the grid summary should show\n multiple rows. Note that if a field has more than one summaryFunction specified, this method\n will pick up values from each summary function and return them in an array, meaning\n these summaries will show up on multiple rows in the grid.\n <P>\n This method may be overridden to completely customize the summary value displayed for\n columns in this grid. An example use case would be when summary information is available on\n the client and does not need to be calculated directly from the data.\n <P>\n <b>Note:</b> this method will not be called if ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRowDataSource')} is\n specified.\n\n",
        name:"getGridSummary",
        seeAlso:[
        ],
        params:[
            {
                description:"field for which the summary value should be returned",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            }
        ],
        returns:{
            description:"summary value to display for the specified field.",
            type:"any"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:ListGrid.getSummaryTitle":{
        ref:"method:ListGrid.getSummaryTitle",
        flags:"A",
        description:" Return the summary title of particular field.  This is the title of\n the field to be used in the show / hide fields context menu. Default implementation will\n use  ${isc.DocUtils.linkForRef('method:ListGridField.getSummaryTitle')} or ${isc.DocUtils.linkForRef('attr:ListGridField.summaryTitle')} if specified,\n otherwise ${isc.DocUtils.linkForRef('attr:ListGridField.title')}.\n",
        name:"getSummaryTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"field for which we're returning the title",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"listGridField"
            }
        ],
        returns:{
            description:"Field summary title.",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages",
            "display"
        ]
    },
    "attr:ComboBoxItem.optionFilterContext":{
        ref:"attr:ComboBoxItem.optionFilterContext",
        flags:"IRA",
        description:"If this item has a specified <code>optionDataSource</code>, and this property is\n not null, this will be passed to the datasource as ${isc.DocUtils.linkForRef('class:DSRequest')} properties when\n performing the filter operation on the dataSource to obtain the set of options for the\n list.",
        name:"optionFilterContext",
        seeAlso:[
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:ButtonItem.buttonConstructor":{
        ref:"attr:ButtonItem.buttonConstructor",
        flags:"IRA",
        description:"Constructor class for the button.",
        name:"buttonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"Button",
        type:"attr",
        definingClass:"class:ButtonItem"
    },
    "attr:DataSourceField.exportFormat":{
        ref:"attr:DataSourceField.exportFormat",
        flags:"IRW",
        description:"An optional ${isc.DocUtils.linkForRef('type:FormatString')} for this field, for use when \n ${isc.DocUtils.linkForRef('method:DataBoundComponent.exportData','exporting')} data to spreadsheet formats (XLS and \n OOXML/XLSX), XML, JSON or CSV.   You can use this property to override the normal\n ${isc.DocUtils.linkForRef('attr:DataSourceField.format','format')} of this field, if any, specifically for exports.  \n <p>\n Note, for server-driven exports you can specify default formats for date, time and \n datetime fields by specifying properties <code>export.format.default.date</code>, \n <code>export.format.default.time</code> and <code>export.format.default.datetime</code>\n in your <code>server.properties</code> file.  These formats will be used for fields \n that do not have a \"format\" or \"exportFormat\" property specified in the \n <code>.ds.xml</code> file.\n <p>\n Specifically when exporting to spreadsheet formats, the <code>FormatString</code> is\n translated to the type of format string used by spreadsheet programs like Excel.  A handful\n of features are not present in Excel format strings, and some features behave slightly\n differently.  These differences are explained below.\n <p>\n <h3>Excel cannot handle dates prior to January 1st 1900</h3>\n This is a well-known limitation of Excel dates; it is not a formatting issue as such.\n <p>\n <h3>Currency symbols become fixed to the current locale at export time</h3>\n The placeholder currency symbol \"&#x00A4\" (\\u00A4) in a numeric\n format string is rendered as the \n <smartclient>\n ${isc.DocUtils.linkForRef('classAttr:NumberUtil.currencySymbol','localized currency symbol')}.\n </smartclient>\n <smartgwt>\n localized currency symbol returned by GWT's built-in NumberFormat class.\n </smartgwt>\n When exporting, the format string provided to Excel contains the currency symbol for the\n current locale of the SmartClient application, and not a placeholder currency symbol that\n would make Excel pick up a currency symbol based on the operating system locale.  We do this\n to ensure that the spreadsheet reflects the <em>application's</em> localization, rather than\n the localization of the current user's computer, because they may be different.\n <p>\n <h3>Rounding differences</h3>\n The approach to rounding a positive number to a set number of decimal places is fairly \n universally agreed upon for non-specialized requirements: add 0.5 (or 0.05, or 0.005, or \n whatever) to the number and then truncate.  This leads to the well understood convention \n that numbers exactly halfway between two possible rounding outcomes, go to the larger one. \n So 7.5 becomes 8 and 7.15 becomes 7.2.\n <p>\n However, there is no such universal agreement when it come to rounding negative numbers.  \n Some take the view that you should round by taking the number to the larger absolute value,\n so -7.15 becomes -7.2.  Others feel that you should round by taking the number to the larger\n value in the sense of it being \"less negative\", so -7.15 becomes -7.1.\n <p>\n SmartClient formatting takes the first approach and rounds negative numbers away from zero.\n We do this simply because that is what Java DecimalFormat does.  Unfortunately, Excel does\n the opposite.  Therefore, you will see rounding differences on negative numbers on exact \n 50% boundaries: SmartClient will format -7.15 as -7.2, while Excel will format the same \n value as -7.1.\n <p>\n <h3>Different treatment of '#'</h3>\n Both SmartClient and Excel use '#' to mean \"digit, do not show zeroes\".  However, Excel\n does not implement this strictly in the integer part when the number it is formatting has\n a value of 0 in the integer part.  So, with a format of \"#.##\", the value 0.25 is formatted \n as \"0.25\".  SmartClient (like Java DecimalFormat) is strict: with that format, 0.25 is \n formatted as \".25\"; if you want to match Excel's output, you must use the format \"0.##\".\n <p>\n <h3>Miscellaneous edge cases</h3>\n There is quite a lot of variation in behavior between Java DecimalFormat and Excel around \n the edges.  For actual error cases - for example, a format string that just contains \n nonsense - it is normal and expected that the SmartClient behavior and the Excel behavior\n do not match - this is just two systems producing different garbage out for the same \n garbage in, which is to be expected.  For valid but weird usages - for example, a format \n with multiple percent signs - SmartClient's formatting is in line with what DecimalFormat \n does, unless DecimalFormat throws an Exception, in which case we just do the thing that \n seems most sensible, or the thing that was easiest to implement.\n <p>\n Known differences in behavior in edge cases include:<ul>\n <li>SmartClient ignores formatting characters in the number part of the format string, \n whereas Excel rejects the format (this behavior may vary with different releases of Excel\n and supposedly compatible libraries: POI, for example, will accept such format strings).  \n If you attempt to format 5.175 with the format string \"#b0.#a#\", SmartClient will return\n \"5.72\", and Excel will reject the format</li>\n <li>SmartClient ignores quoted characters in the number part of the format string, \n whereas Excel preserves them.  If you attempt to format 5.175 with the format string \n \"#'b'0.#'a'#\", SmartClient will return \"5.72\", and Excel will return \"b5.7a2\"</li>\n <li>If you specify the empty string as a format string, SmartClient returns the result of \n calling toString() on the number; Excel uses the built-in \"General\" format.  These two \n approaches will generally give the same or very similar results, but that is really a \n coincidence: the correct way to obtain matching results in the browser and the spreadsheet\n is to specify a valid format string</li>\n <li>If you specify a format string that contains no number part (ie, no '#' or '0' \n characters), SmartClient does what DecimalFormat does, which is to output the integer part\n of the number alongside the fixed part of the format.  Excel just outputs the fixed part.\n So, if you attempt to format -5.3 with the format string \"'Hello world'\", SmartClient will\n output \"-Hello world5\", whereas Excel will output just \"Hello world\"</li>\n <li>If you specify multiple percent signs in the format, SmartClient treats all but the \n first one as static text, so 0.5 formatted with \"#%%%\" is \"50%%%\" (ie, all the signs are \n preserved but there is only one multiplcation by 100).  Excel multiplies for  each percent\n sign, so 0.5 formatted with \"#%%%\" is \"500000%%%\"</li>\n </ul>\n <p>\n <h3>Date format functionality not supported by Excel</h3>\n The following date/time/datetime functionality is not supported by Excel; if you use \n formatters that use any of this functionality, your values will be exported to Excel \n incorrectly formatted.  In cases like this, we recommend that you use a separate \n <code>exportFormat</code>, with the intent of exporting your values in a way that is \n similar to your application formatting (which would be specified with the \n ${isc.DocUtils.linkForRef('attr:DataSourceField.format','format')} property), but within the confines of what Excel \n supports.\n <ul>\n <li>Fiscal year, week and day (LL, LLLL, C, CC, c, cc)</li>\n <li>Week in year (w, ww)</li>\n <li>Day in year (D, DD)</li>\n <li>Day number in week (u)</li>\n <li>Explicit control over whether to use 12- or 24-hour notation.  In Excel, this is \n implied by the presence or absence of the AM/PM designator</li>\n <li>If the user's operating system locale is different to the locale in use in the \n SmartClient application, day and month names may be different in the spreadsheet</li>\n </ul>\n <h3>Number format functionality not supported by Excel</h3>\n The only SmartClient number-formatting functionality not supported for \n export to Excel is \"multiply by 1000 and show as per mille\".\n <p>\n <h3>Limit on number of custom Excel formats</h3>\n Excel limits the number of custom format strings in a single spreadsheet to somewhere\n between 200 and 250, depending on your locale and language.  Hitting this limit in an export\n would require hundreds of field definitions, each defining unique\n <code>FormatStrings</code>.  If you do hit the limit, the only workaround is to use fewer\n unique <code>FormatStrings</code>.",
        name:"exportFormat",
        seeAlso:[
            {
                ref:"attr:DataSourceField.format",
                description:null
            }
        ],
        valueType:"FormatString",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField"
    },
    "attr:MultiGroupDialog.invalidListPrompt":{
        ref:"attr:MultiGroupDialog.invalidListPrompt",
        flags:"IR",
        description:"This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed.\n <P>\n Default value returns <P>\n <code>\n <i>Columns may only be used once: <code>[some field's title]</code> is used multiple times</i>\n </code>\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiGroupPanel for i18n.",
        name:"invalidListPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Columns may only be used once: '${title}' is used multiple times.\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DrawRect.moveBy":{
        ref:"method:DrawRect.moveBy",
        flags:"",
        description:" Move the drawRect by the specified delta\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of pixels to move horizontally",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"number of pixels to move vertically",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:DataSource.dropExtraFields":{
        ref:"attr:DataSource.dropExtraFields",
        flags:"IR",
        description:"Indicates that for server responses, for any data being interpreted as DataSource records, \n only data that\n corresponds to declared fields should be retained; any extra fields should be discarded.\n <P>\n For ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','JSON')} data, this means extra properties in selected\n objects are dropped.\n <P>\n By default, for DMI DSResponses, DSResponse.data is filtered on the server to just\n the set of fields defined on the DataSource.  This type of filtering can also be enabled\n for non-DMI DSResponses (see the overview in ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')}).  Setting this property to\n <code>false</code> disables this filtering for this DataSource only.  This setting\n overrides the configuration in ${isc.DocUtils.linkForRef('group:server_properties','server.properties')}.  This setting can\n be overridden by ${isc.DocUtils.linkForRef('attr:ServerObject.dropExtraFields')}.",
        name:"dropExtraFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:SplitPane.showRightButton":{
        ref:"attr:SplitPane.showRightButton",
        flags:"IRW",
        description:"Should the ${isc.DocUtils.linkForRef('attr:NavigationBar.rightButton','rightButton')} be shown in the\n ${isc.DocUtils.linkForRef('attr:SplitPane.navigationBar','navigationBar')}?",
        name:"showRightButton",
        setter:[
            "setShowRightButton"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "classAttr:EventHandler.IDLE_DELAY":{
        ref:"classAttr:EventHandler.IDLE_DELAY",
        flags:"IRWA",
        description:"amount of time between idle messages (msec)",
        name:"IDLE_DELAY",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"10",
        type:"classAttr",
        definingClass:"class:EventHandler"
    },
    "attr:ListGrid.useAllDataSourceFields":{
        ref:"attr:ListGrid.useAllDataSourceFields",
        flags:"IRW",
        description:"If true, the set of fields given by the \"default binding\" (see \n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')}) is used, with any fields specified in\n <code>component.fields</code> acting as overrides that can suppress or modify the\n display of individual fields, without having to list the entire set of fields that\n should be shown.\n <P>\n If <code>component.fields</code> contains fields that are not found in the DataSource,\n they will be shown after the most recently referred to DataSource field.  If the new\n fields appear first, they will be shown first.\n <P>\n ${isc.DocUtils.linkForExampleId('validationFieldBinding', 'This example')} shows a mixture of component\n fields and DataSource fields, and how they interact for validation.",
        name:"useAllDataSourceFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('validationFieldBinding')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "databinding"
        ]
    },
    "attr:Facet.rollupValue":{
        ref:"attr:Facet.rollupValue",
        flags:"IR",
        description:"facetValueId of the rollup facetValue for this facet.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.  See\n ${isc.DocUtils.linkForRef('attr:CubeGrid.rollupValue')}.",
        name:"rollupValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"cubeGrid.rollupValue",
        type:"attr",
        definingClass:"class:Facet"
    },
    "attr:Canvas.parentElement":{
        ref:"attr:Canvas.parentElement",
        deprecated:"As of Smartclient version 9.1, deprecated in favor of ${isc.DocUtils.linkForRef('attr:Canvas.parentCanvas')}             and ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas')}",
        flags:"IRA",
        description:"This Canvas's immediate parent, if any.\n <BR>\n Can be initialized, but any subsequent manipulation should be via\n ${isc.DocUtils.linkForRef('method:Canvas.addChild','addChild()')} and ${isc.DocUtils.linkForRef('method:Canvas.removeChild','removeChild()')} calls\n on the parent.",
        name:"parentElement",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "classMethod:isc.getValueForKey":{
        ref:"classMethod:isc.getValueForKey",
        flags:"",
        description:" Given a key and an object of <code>key:value</code> pairs, return the value that corresponds to\n that key.\n <P>\n If the key is not found, <code>defaultValue</code> will be returned if provided, otherwise the\n key will be returned.\n\n",
        name:"getValueForKey",
        seeAlso:[
        ],
        params:[
            {
                description:"key to look for",
                optional:false,
                name:"key",
                defaultValue:null,
                type:"string or number"
            },
            {
                description:"object of key:value pairs",
                optional:false,
                name:"valueMap",
                defaultValue:null,
                type:"object"
            },
            {
                description:"default value to return if key not found",
                optional:true,
                name:"defaultValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"returns value in valueMap under name key, or                                              defaultValue if key not found",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "classAttr:Operators.iContainsFieldTitle":{
        ref:"classAttr:Operators.iContainsFieldTitle",
        flags:"IR",
        description:"Title for the \"iContainsField\" operator",
        name:"iContainsFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"contains (case insensitive) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Date.getInputFormat":{
        ref:"classMethod:Date.getInputFormat",
        flags:"",
        description:" Retrieves the default format for strings being parsed into dates via\n <code>Date.parseInput()</code>\n",
        name:"getInputFormat",
        seeAlso:[
            {
                ref:"classMethod:Date.setInputFormat",
                description:null
            }
        ],
        returns:{
            description:"the current inputFormat for dates",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:IconButton.icon":{
        ref:"attr:IconButton.icon",
        flags:"IRW",
        description:"Icon to show to the left of or above the title, according to the button's ${isc.DocUtils.linkForRef('type:Orientation')}.\n <P>\n When specifying <code>titleOrientation = \"vertical\"</code>, this icon will be stretched to \n the ${isc.DocUtils.linkForRef('attr:IconButton.largeIconSize')} unless a ${isc.DocUtils.linkForRef('attr:IconButton.largeIcon')} is specified.",
        name:"icon",
        setter:[
            "setIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:Button.radioGroup":{
        ref:"attr:Button.radioGroup",
        flags:"IRWA",
        description:"String identifier for this canvas's mutually exclusive selection group.",
        name:"radioGroup",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonRadioToggle')}"
        ],
        definingClass:"class:Button",
        groups:[
            "state",
            "event handling"
        ]
    },
    "method:ListGrid.recalculateGridSummary":{
        ref:"method:ListGrid.recalculateGridSummary",
        flags:"",
        description:" Refresh the ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','grid summary')}, by either re-calculating from\n already-loaded data or doing a new fetch from the ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRowDataSource')}.\n <P>\n Note unlike ${isc.DocUtils.linkForRef('method:ListGrid.recalculateSummaries')}, this method will not force a refresh of\n field-level summaries (see ${isc.DocUtils.linkForRef('attr:ListGridField.recordSummaryFunction')}) or group level\n summaries (see ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')}).\n",
        name:"recalculateGridSummary",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "classAttr:Validator.mustBeEarlierThan":{
        ref:"classAttr:Validator.mustBeEarlierThan",
        flags:"IRA",
        description:"Default error message to display when standard <code>dateRange</code> type validator\n  returns false because the value passed in is less than the specified maximum date.\n This is a dynamic string - text within <code>&#36;{...}</code> will be evaluated as JS code\n when the message is displayed, with <code>max</code> and <code>min</code> available as\n variables mapped to <code>validator.max</code> and <code>validator.min</code>.",
        name:"mustBeEarlierThan",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Must be earlier than ${max}\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ResultSet.neverDropUpdatedRows":{
        ref:"attr:ResultSet.neverDropUpdatedRows",
        flags:"IRA",
        description:"By default when a row is returned by the server, the current ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria','filter\\n criteria')} are applied to it, and it may disappear from the cache.\n <P>\n Set this flag to true to disable this behavior.",
        name:"neverDropUpdatedRows",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "cacheSync"
        ]
    },
    "classMethod:Page.setIsomorphicDir":{
        ref:"classMethod:Page.setIsomorphicDir",
        flags:"",
        description:"\t\tSpecify the root directory for Isomorphic-supplied files.\n\n",
        name:"setIsomorphicDir",
        seeAlso:[
        ],
        params:[
            {
                description:"New IsomorphicDir URL.",
                optional:true,
                name:"URL",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files"
        ]
    },
    "group:animation":{
        ref:"group:animation",
        refs:[
            "method:TreeGrid.shouldAnimateFolder",
            "method:TreeGrid.getAnimateFolderMaxRows",
            "method:Canvas.animateMove",
            "method:Canvas.animateResize",
            "method:Canvas.animateRect",
            "method:Canvas.animateFade",
            "method:Canvas.animateScroll",
            "method:Canvas.animateShow",
            "method:Canvas.animateHide",
            "classAttr:Canvas.loadingImageSrc",
            "classAttr:Canvas.loadingImageSize",
            "attr:Window.animateMinimize",
            "attr:Window.minimizeTime",
            "attr:Window.minimizeAcceleration",
            "attr:ListGrid.animateFolders",
            "attr:ListGrid.animateFolderMaxRows",
            "attr:ListGrid.animateFolderTime",
            "attr:ListGrid.animateFolderSpeed",
            "attr:ListGrid.animateFolderEffect",
            "attr:ListGrid.animateRemoveTime",
            "attr:ListGrid.animateRemoveSpeed",
            "attr:TreeGrid.animateFolders",
            "attr:TreeGrid.animateFolderMaxRows",
            "attr:TreeGrid.animateFolderTime",
            "attr:TreeGrid.animateFolderSpeed",
            "attr:TreeGrid.animateFolderEffect",
            "attr:Canvas.animateTime",
            "attr:Canvas.animateAcceleration",
            "attr:Canvas.animateShowEffect",
            "attr:Canvas.animateHideEffect",
            "attr:Canvas.animateMoveTime",
            "attr:Canvas.animateResizeTime",
            "attr:Canvas.animateRectTime",
            "attr:Canvas.animateFadeTime",
            "attr:Canvas.animateScrollTime",
            "attr:Canvas.animateShowTime",
            "attr:Canvas.animateHideTime",
            "attr:Canvas.animateMoveAcceleration",
            "attr:Canvas.animateResizeAcceleration",
            "attr:Canvas.animateRectAcceleration",
            "attr:Canvas.animateScrollAcceleration",
            "attr:Canvas.animateShowAcceleration",
            "attr:Canvas.animateHideAcceleration",
            "attr:Layout.animateMembers",
            "attr:Layout.animateMemberTime",
            "attr:SectionStack.animateSections",
            "attr:Slider.animateThumb",
            "attr:Slider.animateThumbTime",
            "attr:Slider.animateThumbInit"
        ],
        name:"animation",
        seeAlso:[
        ],
        type:"group"
    },
    "method:MultiComboBoxItem.showValue":{
        ref:"method:MultiComboBoxItem.showValue",
        flags:"",
        description:" This method will be called whenever this FormItem's value is being set via a programmatic\n call to e.g: ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')} or ${isc.DocUtils.linkForRef('method:FormItem.setValue')} and may be\n overridden by CanvasItems intended to support displaying data values to update the\n embedded Canvas to reflect the value passed in.\n <p>\n The value of a MultiComboBoxItem to the form is an array of valueField values corresponding\n to the selected combo box options.\n",
        name:"showValue",
        seeAlso:[
        ],
        params:[
            {
                description:"new display value for the item.  This is the value after applying   any custom formatter or valueMap",
                optional:false,
                name:"displayValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"underlying data value for the item",
                optional:false,
                name:"dataValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the dynamicForm in which this item is contained",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the live form item instance",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"CanvasItem"
            }
        ],
        type:"method",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:TabSet.showTabPicker":{
        ref:"attr:TabSet.showTabPicker",
        flags:"IR",
        description:"If there is not enough space to display all the tab-buttons in this tabSet, should\n a drop-down \"picker\" be displayed to allow selection of tabs that are clipped?",
        name:"showTabPicker",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "attr:Validator.validateOnChange":{
        ref:"attr:Validator.validateOnChange",
        flags:"IRW",
        description:"If true, validator will be validated when each item's \"change\" handler is fired\n as well as when the entire form is submitted or validated. If false, this validator\n will not fire on the item's \"change\" handler.\n <p>\n Note that this property can also be set at the form/grid or field level;\n If true at any level and not explicitly false on the validator, the validator will be\n fired on change - displaying errors and rejecting the change on validation failure.",
        name:"validateOnChange",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "method:FacetChart.getDrawnValuesAtPoint":{
        ref:"method:FacetChart.getDrawnValuesAtPoint",
        flags:"",
        description:" Returns an array of ${isc.DocUtils.linkForRef('object:DrawnValue')} objects for the data values of each metric that are shown\n nearest to the passed coordinates, but only if they're under the given coordinates, or under\n the current mouse event coordinates if no coordinates are passed. This method is similar to\n ${isc.DocUtils.linkForRef('method:FacetChart.getNearestDrawnValues')}, but DrawnValues are only included in the returned array if\n they're under the coordinates.\n <p>\n See ${isc.DocUtils.linkForRef('method:FacetChart.drawnValueContainsPoint')} for the criteria that determine whether a DrawnValue is under\n (contains) the coordinates.\n",
        name:"getDrawnValuesAtPoint",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate. If this parameter is specified, then <code>y</code> is a required parameter.",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Y coordinate",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"the nearest DrawnValues that are under the given coordinates (or current mouse event coordinates), or null for invalid arguments / incorrect timing of call.",
            type:"Array of DrawnValue"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Gauge.setNumMajorTicks":{
        ref:"method:Gauge.setNumMajorTicks",
        flags:"",
        description:" Sets the number of major tick lines.\n\n <p><b>NOTE:</b> To divide the dial into <i>n</i> regions, you will need <i>n</i> + 1 ticks.\n For example, if the minimum value is 0 and the maximum value is 100, then to place major\n tick lines at 0, 10, 20, 30, ..., 90, 100, you need 11 (10 + 1) major ticks.\n\n",
        name:"setNumMajorTicks",
        seeAlso:[
        ],
        params:[
            {
                description:"the number of major tick lines to draw. Must be either 0 or an integer greater than or equal to 2.",
                optional:false,
                name:"numMajorTicks",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:Gauge"
    },
    "classAttr:Dialog.YES_BUTTON_TITLE":{
        ref:"classAttr:Dialog.YES_BUTTON_TITLE",
        flags:"IRW",
        description:"Title for the <code>\"Yes\"</code> button.",
        name:"YES_BUTTON_TITLE",
        seeAlso:[
            {
                ref:"type:DialogButtons",
                description:null
            }
        ],
        valueType:"HTML",
        defaultValue:"\"Yes\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TabSet.simpleTabButtonConstructor":{
        ref:"attr:TabSet.simpleTabButtonConstructor",
        flags:"IRA",
        description:"Tab button constructor if ${isc.DocUtils.linkForRef('attr:TabSet.useSimpleTabs')} is true.",
        name:"simpleTabButtonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"SimpleTabButton",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:RelativeDateItem.dateFormatter":{
        ref:"attr:RelativeDateItem.dateFormatter",
        flags:"IR",
        description:"Format for displaying dates in the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.valueField')} and ${isc.DocUtils.linkForRef('attr:RelativeDateItem.calculatedDateField')}.\n If unset a default DateDisplayFormat will be picked up from ${isc.DocUtils.linkForRef('attr:DynamicForm.dateFormatter')}\n (or ${isc.DocUtils.linkForRef('attr:DynamicForm.datetimeFormatter')} for datetime fields} or otherwise from \n the system-wide default established by ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat')}, or\n if this item has its type specified as datetime, ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat')}.\n <smartclient>\n <P>\n Note: if entirely custom date formatting/parsing logic is required for this item, this\n attribute may be set to a custom formatting function. In this case the function will be\n applied to the Date being formatted (for example <code>this.getFullYear()</code> would\n give you back the full year), and should return the formatted date string.\n </smartclient>",
        name:"dateFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:DynamicForm.itemHoverHeight":{
        ref:"attr:DynamicForm.itemHoverHeight",
        flags:"IRW",
        description:"A default height for hovers shown for items",
        name:"itemHoverHeight",
        seeAlso:[
            {
                ref:"attr:FormItem.hoverHeight",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "attr:FacetChart.gradationLineProperties":{
        ref:"attr:FacetChart.gradationLineProperties",
        flags:"IR",
        description:"Properties for gradation lines",
        name:"gradationLineProperties",
        seeAlso:[
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ListPropertiesDialog.applyButtonTitle":{
        ref:"attr:ListPropertiesDialog.applyButtonTitle",
        flags:"IR",
        description:"The title of the ${isc.DocUtils.linkForRef('attr:ListPropertiesDialog.applyButton','Apply button')}.",
        name:"applyButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Apply\"",
        type:"attr",
        definingClass:"class:ListPropertiesDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:UserTask.targetForm":{
        ref:"attr:UserTask.targetForm",
        flags:"IR",
        description:"DynamicForm that should be populated with data and that should provide the data for the task\n outputs.\n <P>\n Use ${isc.DocUtils.linkForRef('attr:UserTask.targetVM')} to use a ${isc.DocUtils.linkForRef('class:ValuesManager')} instead.",
        name:"targetForm",
        seeAlso:[
        ],
        valueType:"DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "group:mail":{
        ref:"group:mail",
        refs:[
            "class:Mail",
            "attr:OperationBinding.mail",
            "attr:Mail.templateFile",
            "attr:Mail.messageTemplate",
            "attr:Mail.to",
            "attr:Mail.cc",
            "attr:Mail.bcc",
            "attr:Mail.from",
            "attr:Mail.replyTo",
            "attr:Mail.subject",
            "attr:Mail.multiple",
            "attr:Mail.messageData",
            "attr:Mail.contentType",
            "attr:Mail.encoding"
        ],
        name:"mail",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Label.showDisabledIcon":{
        ref:"attr:Label.showDisabledIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image if the button becomes\n disabled.",
        name:"showDisabledIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "classMethod:Class.logIsInfoEnabled":{
        ref:"classMethod:Class.logIsInfoEnabled",
        flags:"",
        description:" Check whether a message logged at \"info\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsInfoEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:DynamicForm.longTextEditorType":{
        ref:"attr:DynamicForm.longTextEditorType",
        flags:"IRW",
        description:"Name of the Form Item class to use for text fields which exceed the \n longTextEditorThreshold for this form.",
        name:"longTextEditorType",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"textArea\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "appearance"
        ]
    },
    "method:MenuItem.dynamicIcon":{
        ref:"method:MenuItem.dynamicIcon",
        flags:"",
        description:" Contains the condition that will change the current items' icon when met. The handler must be specified\n as a function or string of script.\n <p>\n If you don't need to set this state dynamically, use ${isc.DocUtils.linkForRef('attr:MenuItem.icon')} instead.\n <p>\n May be defined as a ${isc.DocUtils.linkForRef('group:stringMethods','stringMethod')}.\n <p>\n",
        name:"dynamicIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"${isc.DocUtils.linkForRef('attr:Menu.target','target')} attribute for the top level menu.",
                optional:false,
                name:"target",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"${isc.DocUtils.linkForRef('class:Menu','menu')} contains the reference to the menu that contains the current item",
                optional:false,
                name:"menu",
                defaultValue:null,
                type:"Menu"
            },
            {
                description:"contains the reference to the current item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem"
            }
        ],
        returns:{
            description:"the url of this menuItems icon",
            type:"SCImgURL"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('menuDynamicItems')}"
        ],
        definingClass:"object:MenuItem",
        groups:[
            "dynamicMenuItem"
        ]
    },
    "classMethod:Log.logFatal":{
        ref:"classMethod:Log.logFatal",
        flags:"",
        description:" A common usage of ${isc.DocUtils.linkForRef('classMethod:Class.logFatal')} is to call the method directly on\n the Log class.\n",
        name:"logFatal",
        seeAlso:[
            {
                ref:"classMethod:Log.logDebug",
                description:"for usage info"
            }
        ],
        params:[
            {
                description:"message to log",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"String"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Log"
    },
    "attr:Canvas.dropTypes":{
        ref:"attr:Canvas.dropTypes",
        flags:"IRWA",
        description:"When a drag and drop interaction occurs, if a ${isc.DocUtils.linkForRef('attr:Canvas.dragType','dragType')} is\n configured on the source widget, it is compared to the <code>dropTypes</code> configured\n on the target widget, and a drop is only allowed if the <code>dragType</code> is listed\n in the target widget's <code>dropTypes</code> array.\n <p>\n The default setting means any <code>dragType</code> is eligible for dropping on this\n widget, including no <code>dragType</code> setting.\n <p>\n See also ${isc.DocUtils.linkForRef('method:Canvas.willAcceptDrop')} for dynamic determination of drop eligibility.",
        name:"dropTypes",
        seeAlso:[
        ],
        valueType:"Array of String | String",
        defaultValue:"Canvas.ANYTHING",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ImgButton.icon":{
        ref:"attr:ImgButton.icon",
        flags:"IRW",
        description:"Optional icon to be shown with the button title text.  \n <P>\n Specify as the partial URL to an image, relative to the imgDir of this component.",
        name:"icon",
        setter:[
            "setIcon"
        ],
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:Chart.labelValues":{
        ref:"attr:Chart.labelValues",
        flags:"IR",
        description:"Whether to show labels on each individual value (bar, column or line point)",
        name:"labelValues",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:Chart",
        groups:[
            "chartAppearance"
        ]
    },
    "attr:TableView.descriptionField":{
        ref:"attr:TableView.descriptionField",
        flags:"IRW",
        description:"Field to display as part of individual record in all ${isc.DocUtils.linkForRef('type:RecordLayout')}s \n except \"titleOnly\".",
        name:"descriptionField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"description\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "attr:TileLayout.tilesPerLine":{
        ref:"attr:TileLayout.tilesPerLine",
        flags:"IRW",
        description:"Number of tiles to show in each line.  Auto-derived from ${isc.DocUtils.linkForRef('attr:TileLayout.tileSize')} for some layout\n modes.  See ${isc.DocUtils.linkForRef('type:TileLayoutPolicy')}.\n This can also affect ${isc.DocUtils.linkForRef('attr:TileLayout.tileWidth')} or ${isc.DocUtils.linkForRef('attr:TileLayout.tileHeight')}. See those properties for details.",
        name:"tilesPerLine",
        setter:[
            "setTilesPerLine"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutPolicy"
        ]
    },
    "attr:DatabaseBrowser.schemaTree":{
        ref:"attr:DatabaseBrowser.schemaTree",
        flags:"IR",
        description:"Instance of TreeGrid used to display the database schema (tables and columns)",
        name:"schemaTree",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "attr:TabSet.scrollerButtonSize":{
        ref:"attr:TabSet.scrollerButtonSize",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:TabSet.showTabScroller')} is true, this property governs the size of scroller\n buttons. Applied as the width of buttons if the tabBar is horizontal, or the height\n if tabBar is vertical. Note that the other dimension is determined by \n ${isc.DocUtils.linkForRef('attr:TabSet.tabBarThickness','this.tabBarThickness')}",
        name:"scrollerButtonSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "attr:Slider.showValue":{
        ref:"attr:Slider.showValue",
        flags:"IRW",
        description:"Indicates whether a label for the value of the slider should be displayed. The\n default position for this label is to the right of a vertical slider, or below a horizontal \n slider.",
        name:"showValue",
        setter:[
            "setShowValue"
        ],
        seeAlso:[
            {
                ref:"attr:Slider.value",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Slider"
    },
    "attr:DataSource.strictSQLFiltering":{
        ref:"attr:DataSource.strictSQLFiltering",
        flags:"IRA",
        description:"If set to true, both client and server-side advanced filtering used by SmartClient will follow\n SQL99 behavior for dealing with NULL values, which is often counter-intuitive to users.\n Specifically, when a field has NULL value, all of the following expressions are false:\n <pre>\n    field == \"someValue\"  (normally false)\n    field != \"someValue\"  (normally true)\n    not (field == \"someValue\")   (normally true)\n    not (field != \"someValue\")   (normally false)\n </pre>\n This property can be overridden per-query by specifying <code>strictSQLFiltering</code>\n directly as a property on the ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}.\n <p>\n <b>NOTE:</b> On the server side, this property is only applicable if you are using the \n SQL DataSource; the other built-in types (Hibernate and JPA/JPA2) do not offer this mode.",
        name:"strictSQLFiltering",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:MetricSettings.chartType":{
        ref:"attr:MetricSettings.chartType",
        flags:"IRW",
        description:"See ${isc.DocUtils.linkForRef('type:ChartType')} for a list of known types - Column, Bar, Line, Pie, Doughnut,\n Area, and Radar charts are supported.",
        name:"chartType",
        setter:[
            "setChartType"
        ],
        seeAlso:[
        ],
        valueType:"ChartType",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:FacetChart.setRegressionLineType":{
        ref:"method:FacetChart.setRegressionLineType",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('type:RegressionLineType')}.\n",
        name:"setRegressionLineType",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for this.regressionLineType",
                optional:false,
                name:"regressionLineType",
                defaultValue:null,
                type:"RegressionLineType"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:StretchImg.ignoreRTL":{
        ref:"attr:StretchImg.ignoreRTL",
        flags:"IRW",
        description:"Should the ${isc.DocUtils.linkForRef('attr:StretchImg.items','items')} for this StretchImg display left-to-right even\n if this page is displaying ${isc.DocUtils.linkForRef('classMethod:Page.isRTL','right to left text')}?\n <P>\n Only has an effect if this StretchImg is horizontal (${isc.DocUtils.linkForRef('attr:StretchImg.vertical','vertical')}\n is set to false).\n <P>\n Having this property set to true is usually desirable for the common pattern of media\n consisting of fixed size \"end caps\" and a stretchable center, because it allows the same\n media to be used for LTR and RTL pages.\n <P>\n If set to false, items will be displayed in RTL order for RTL pages.",
        name:"ignoreRTL",
        setter:[
            "setIgnoreRTL"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StretchImg",
        groups:[
            "RTL",
            "appearance"
        ]
    },
    "attr:FormulaBuilder.defaultErrorText":{
        ref:"attr:FormulaBuilder.defaultErrorText",
        flags:"IRW",
        description:"If an invalid builder prompt is displayed, but no explicit error message was returned when\n attempting to evaluate the formula, this string will be used as a default.",
        name:"defaultErrorText",
        seeAlso:[
            {
                ref:"attr:FormulaBuilder.invalidBuilderPrompt",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"[No Explicit Error]\"",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.getHeaderSpanContextMenuItems":{
        ref:"method:ListGrid.getHeaderSpanContextMenuItems",
        flags:"",
        description:" Return the menus items that should be shown in a menu triggered from a\n ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans','headerSpan')}.\n\n",
        name:"getHeaderSpanContextMenuItems",
        seeAlso:[
        ],
        params:[
            {
                description:"the component representing the headerSpan.  This component will                            have all the properties specified via ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans')}.",
                optional:false,
                name:"headerSpan",
                defaultValue:null,
                type:"HeaderSpan"
            }
        ],
        returns:{
            description:"return false instead to avoid showing a menu",
            type:"Array of MenuItem"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "headerSpan"
        ]
    },
    "attr:BlurbItem.canSelectText":{
        ref:"attr:BlurbItem.canSelectText",
        flags:"IRW",
        description:"Should the user be able to select the text in this item?",
        name:"canSelectText",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:BlurbItem"
    },
    "method:Array.get":{
        ref:"method:Array.get",
        flags:"",
        description:" Return the item at a particular position\n",
        name:"get",
        seeAlso:[
        ],
        params:[
            {
                description:"position of the element to get",
                optional:false,
                name:"pos",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"whatever's at that position, undef if not found",
            type:"object"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:EdgedCanvas.edgeOffsetTop":{
        ref:"attr:EdgedCanvas.edgeOffsetTop",
        flags:"IRA",
        description:"Amount the contained Canvas should be offset from the top.  Defaults to the size for \n the top edge.  Set smaller to allow the contained Canvas to overlap the edge and \n corner media.",
        name:"edgeOffsetTop",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:SectionStackSection.canReorder":{
        ref:"attr:SectionStackSection.canReorder",
        flags:"I",
        description:"If set to false, then this sectionHeader will not be able to be dragged to perform a drag\n reorder, if ${isc.DocUtils.linkForRef('attr:SectionStack.canReorderSections')} is true.\n You can also disable dropping other sections before this one by setting \n ${isc.DocUtils.linkForRef('attr:Canvas.canDropBefore','canDropBefore')} to false.",
        name:"canReorder",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "attr:ListGridField.sortByMappedValue":{
        ref:"attr:ListGridField.sortByMappedValue",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.valueMap')} is set, and the grid is ${isc.DocUtils.linkForRef('method:ListGrid.setSort','sorted')}\n by this field, should the data be sorted by the underlying data value or the\n mapped display value. If unset, will sort by display value. Set to <code>false</code>\n to sort by underlying data value. Note that this has no effect if\n a ${isc.DocUtils.linkForRef('method:ListGridField.sortNormalizer')} has been specified.",
        name:"sortByMappedValue",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:CubeGrid.padTitles":{
        ref:"attr:CubeGrid.padTitles",
        flags:"IRW",
        description:"Whether to pad titles so they aren't flush with header borders.",
        name:"padTitles",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:Validator.serverCondition":{
        ref:"attr:Validator.serverCondition",
        flags:"IR",
        description:"For validators of type \"serverCustom\" only: a scriptlet in any supported JSR223 scripting\n language which is run in order to see if validation passes.  For example:\n <P>\n <pre>\n     &lt;validator type=\"serverCustom\"&gt;\n         &lt;serverCondition language=\"groovy\"&gt;&lt;![CDATA[\n             value &lt; dataSources.StockItem.fetchById(record.itemId).quantity\n         ]]&gt;&lt;/serverCondition&gt;\n     &lt;/validator&gt;\n </pre>\n The scriptlet should return a boolean true or false value - failing to return a value will\n be considered a false result (validator failed).  If your expression is syntactically\n invalid, an exception is thrown and the error message is displayed in the client.\n <P>\n See ${isc.DocUtils.linkForRef('group:serverScript')} for general information on Server Scripting and JSR223, and\n ${isc.DocUtils.linkForRef('group:velocitySupport')} for general information on Velocity support, and also see below\n for special rules for Velocity.\n <P>\n <b>Available variables</b>\n The following variables are available in a <code>serverCondition</code>:\n <ul>\n <li><b>dataSource</b> - The current DataSource</li>\n <li><b>record</b> - Other submitted values part of the same update</li>\n <li><b>value</b> - The value of the field</li>\n <li><b>validator</b> - The config of this validator, including all attributes declared on\n                        the &lt;validator&gt; tag, presented as a <code>Map</code></li>\n <li><b>field</b> - The field (as a <code>DSField</code> object)</li>\n </ul>\n Note that \"record\" will contain only other values submitted at the same time, not the\n complete DataSource record.  For most types of cross-field validation, you should fetch the\n current saved record using the server-side API DataSource.fetchById().  For example, in\n Velocity:\n <pre>\n     $dataSource.fetchById($record.<i>primaryKeyField</i>).otherFieldName\n </pre>\n Note that, while a DSRequest provides dsRequest.oldValues, these values cannot be relied\n upon for a security check since they could be faked.\n <P>\n Server-side custom validators also have access to the standard set of context variables that\n come from the Servlet API.  However, be aware that if you write conditions that depend upon \n these variables, you preclude your Validator from being used in the widest possible variety \n of circumstances; for example, in a command-line process.  Rather, it will be tied to \n operating in the context of, say, an <code>HttpSession</code>.  \n <P>\n Given the above caveat, the following context variables are also available:\n <ul>\n <li><b>servletRequest</b> - The associated <code>HttpServletRequest</code></li>\n <li><b>session</b> - The associated <code>HttpSession</code></li>\n <li><b>httpParameters</b> - This variable gives you access to the parameters <code>Map</code>\n         of the associated <code>HttpServletRequest</code>; it is an alternate form of \n         <code>$servletRequest.getParameter</code></li>\n <li><b>requestAttributes</b> - This variable gives you access to the attributes <code>Map</code> \n         of the associated <code>HttpServletRequest</code>; it is an alternate form of \n         <code>$servletRequest.getAttribute</code></li>\n <li><b>sessionAttributes</b> - This variable gives you access to the attributes <code>Map</code> \n         of the associated <code>HttpSession</code>; it is an alternate form of \n         <code>$session.getAttribute</code></li>\n </ul>\n <P>\n <b>Special considerations for Velocity</b>\n <P>\n To return a true or false value in Velocity, you script can either be just an expression\n that returns a boolean value, or the result of evaluating the Velocity template can result\n in output of \"true\" or \"false\".  All of the following are valid forms:\n <p><code>\n &nbsp;&nbsp;$value &lt; 100<br>\n &nbsp;&nbsp;$util.contains($value, \"some string\")<br>\n &nbsp;&nbsp;$record.someField</code>(assuming that \"someField\" contains a boolean value)<code><br>\n &nbsp;&nbsp;$value &gt; $record.otherField</code>\n <P>\n For additional troubleshooting information when Velocity expressions aren't working as\n expected, set the log category org.apache.Velocity to DEBUG in log4j.isc.config.xml.\n <P>\n Because it's tricky to call arbitrary Java methods in Velocity, the following special\n objects are passed to Velocity for convenience:\n <ul>\n <li><b>dataSources</b> - The list of all DataSources, accessible by name (so, for example, \n     <code>$dataSources.supplyItem</code> refers to the <code>supplyItem</code> DataSource\n     object).</li>\n <li><b>util</b> - A <code>com.isomorphic.util.DataTools</code> object, giving you access to\n               all of that class's useful helper functions</li>\n </ul>",
        name:"serverCondition",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        examples:[
            "${isc.DocUtils.linkForExampleId('inlineScriptValidation')}",
            "${isc.DocUtils.linkForExampleId('velocityValidation')}"
        ],
        definingClass:"class:Validator"
    },
    "attr:Menu.dataSource":{
        ref:"attr:Menu.dataSource",
        flags:"IR",
        description:"Optional DataSource to fetch menuItems and submenus from, instead of using ${isc.DocUtils.linkForRef('attr:Menu.items')}.\n <P>\n The provided DataSource must be set up for hierarchical fetching - see the\n ${isc.DocUtils.linkForRef('group:treeDataBinding','Tree Data Binding overview')}.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "group:debugging":{
        ref:"group:debugging",
        title:"Debugging",
        treeLocation:[
            "Concepts"
        ],
        refs:[
        ],
        description:"<h4>Built-in Diagnostics</h4>\n <P>\n The SmartClient Developer Console is a suite of development tools implemented in SmartClient itself. \n The Console runs in its own browser window, parallel to your running application, so it is always \n available in every browser, and in every deployment environment.\n <P>\n The Developer Console can be opened by calling <code>isc.showConsole()</code> on any page in which \n SmartClient has been loaded. You can create a bookmark in your browser to quickly show the Console on \n any SmartClient application, without any changes to the application code:\n <P>\n 1. Create a new bookmark in your browser.<BR>\n 2. Enter url \"javascript:isc.showConsole()\".<BR>\n 3. Label the bookmark as \"Show Console\".<BR>\n 4. Consider adding this to the Bookmarks Toolbar. This allows one-click access to the Console \n from any SmartClient application.\n <P>\n Note: For most browsers you can evaluate javascript directly from the browser URL bar by entering \n <code>javascript:<i>string to evaluate</i></code> directly in the URL bar, so setting up a bookmark \n is not strictly necessary. For Firefox 6 and above, this feature has been disallowed, but the bookmark \n approach will still work. Alternatively developers could use \n <a href='http://blog.mozilla.com/devtools/2011/08/15/introducing-scratchpad/' target='_blank'>Firefox Scratchpad</a> \n to launch the console.\n <P>\n Basic information on the features of the Developer Console can be found in the QuickStart\n Guide.  For information about the \"RPC\" tab of the Developer Console and the request \n profiling information it can provide, see \n ${isc.DocUtils.linkForRef('group:devConsoleRPCTab','the Developer Console RPC tab')}.  The remainder of this \n topic focuses on use of the log system and related debugging facilities.\n <P>\n The Developer Console contains a \"Results\" pane that displays a list of diagnostic\n messages logged by the SmartClient framework. The \"Logging Preferences\" menu lets you\n enable and disable SmartClient's built-in diagnostics in several categories. Because\n important diagnostic messages may be logged at any time, you should have the Developer\n Console open whenever you are working with SmartClient (and you should bookmark the\n \"javascript:\" expression above to make this easier).\n <P>\n Log messages are of the format:\n <P>\n &nbsp;&nbsp;&nbsp;<i>timestamp</i>:<i>priority</i>:<i>category</i>:<i>message</i>\n <P>\n For example, the following log message:\n <pre>\n     11:59:25:806:INFO:Page:Page loading complete.</pre>\n Occurred at 11:59:25 local time and 806 milliseconds.  It's priority was <code>INFO</code>,\n it occurred in the category <i>Page</i>, and the message is \"Page loading complete.\".\n <P>\n Each logging <i>category</i> has a <i>priority</i> associated with it.  If a message's\n priority is lower than the current priority for the category it is logged in, the\n message will be suppressed (will not appear in the \"Results\" pane).  \n <p>\n It is critical to be familiar with the diagnostic categories built-in to SmartClient - \n you will use them in most debugging sessions.  Open the Logging Preferences menu and select\n \"More..\" to see a list of diagnostic log categories.   Hover over each category name to\n see a description of what kind of messages are logged in the category.  \n <P>\n <h4>Debugging JavaScript Errors</h4>\n <P>\n Javascript errors will typically be reported in the Developer Console. Wherever possible a stack \n trace will be included which can help determine the cause of the error.\n In addition to this, recent versions of the Firefox browser (versions 6.0 and above) ship with some \n useful development tools including the Error Console for reporting errors. We also recommend Console2 \n and Firebug for debugging in Firefox.\n <P>\n In Internet Explorer, when JS errors occur, SmartClient is able to report full stack traces\n in the Developer Console.  This can be invaluable when your code triggers a JS error\n in the SmartClient libraries themselves, or when it is unclear how your code is being\n called.  Stack traces from Internet Explorer should <i>always</i> be included in issue\n reports sent to Isomorphic Software, if at all possible.\n <smartclient><P>\n <h4>Avoiding JavaScript Validation Errors from the Framework</h4>\n <P>\n In Eclipse, you may find that you're getting a bunch of spurious validation errors from the\n SmartClient Framework JavaScript code.  This can be distracting and slow down interactions\n with Eclipse.  If you encounter this problem, you can try to apply the following fixes\n (verified in Eclipse 4.3 \"Kepler\"):<ul>\n <li> For each affected project, in \n <i>Properties =&gt; JavaScript =&gt; Include Path =&gt; Source</i>, exclude the \n SmartClient Framework files that are triggering the errors.\n <li> If errors are still being reported, you can switch off validation entirely:<ul>\n     <li> In <i>Window =&gt; Preferences =&gt; JavaScript =&gt; Validator =&gt; Errors/Warnings</i>,\n          uncheck \"Enable JavaScript Semantic Validation\".\n     <li> For each affected project, in \n          <i>Properties =&gt; Builders</i>, uncheck \"JavaScript Validator\" underneath where it\n          says \"Configure the builders for the project,\" and make sure that the \"Enable \n          project-specific settings\" checkboxes are unchecked at both levels (second one in\n          parens): <i>Properties =&gt; JavaScript =&gt; Validation (=&gt; Errors/Warnings)</i>.\n </ul></ul>\n A more in-depth discussion can be found at \n <a href='http://stackoverflow.com/questions/17329028/eclipse-kepler-disable-javascript-validation' target='_blank'>http://stackoverflow.com/questions/17329028/eclipse-kepler-disable-javascript-validation</a>.\n </smartclient>\n <P>\n <h4>Inspecting application state</h4>\n <P>\n The \"Evaluate JS Expression\" area of the Results Pane in the Developer Console can be used\n to inspect the current state of a SmartClient application.  Any SmartClient or browser\n built-in API can be called from the \"Evaluate JS Expression\" area, and the results will\n be intelligently summarized (via ${isc.DocUtils.linkForRef('classMethod:Log.echo')}).  For example, simply typing a\n component's ID and pressing the \"Eval JS\" button will give you a dump of it's current\n property values.  \n <P>\n Many, many SmartClient APIs can be usefully called while troubleshooting, eg, \n ${isc.DocUtils.linkForRef('attr:ListGrid.data')} is a ${isc.DocUtils.linkForRef('class:ResultSet')} when a grid is DataBound and \n ${isc.DocUtils.linkForRef('method:ResultSet.get')} can be called to inspect the current values on records.  In addition,\n new application code can be tried out, for example, you might repeatedly instantiate a new\n component, trying variants on the properties you could give it.\n <P>\n <b>Inspecting transient application state with logs</b>\n <P>\n Transient state, such as the values of local variables in a method that is crashing, can be\n sent to the Developer Console via using the ${isc.DocUtils.linkForRef('class:Log')} class.  For example, to dump the\n value of the local variable \"request\": \n <pre>\n     isc.logWarn(\"request is: \" + isc.echo(request));\n </pre>\n <P>\n It's a good idea to dump the values of local variables in any method that is crashing or\n behaving unexpectedly.\n <P>\n Note the use of ${isc.DocUtils.linkForRef('classMethod:isc.logWarn','logWarn()')} above: in typical debugging sessions,\n it's best\n to simply use <code>logWarn</code> method to output diagnostics to ensure your message will\n not be suppressed by log priority settings.\n <P>\n NOTE: never use the native <code>alert()</code> method to output diagnostics.  Among other\n issues, <code>alert()</code> can affect timing, masking or altering the behavior you were\n trying to debug.  SmartClient's logging system doesn't suffer from these problems and\n provides much more control.\n <P>\n <h4>Issue Reports</h4>\n <P>\n If you believe you've discovered a bug in SmartClient or you are having trouble using\n SmartClient APIs, you can report it at <a href='http://forums.smartclient.com/' target='_blank'>http://forums.smartclient.com/</a>, or, if\n you have Enterprise Support, at the \n <a href='http://support.isomorphic.com/' target='_blank'>Customer Support Extranet</a>.\n <P>\n <b>How quickly your issue is resolved is entirely up to you</b>.  If you follow the steps\n below and submit an appropriate issue report, you will generally receive a rapid solution\n from Isomorphic Support, regardless of what support level you have, because Isomorphic\n aggressively corrects bugs and legitimate usage issues.  If you skip steps you are likely to\n be directed back to this document and asked to submit a more complete issue report.\n <P>\n Before reporting an issue, ensure that you:\n <ul>\n <li> Have read the ${isc.DocUtils.linkForDocNode('QuickStartGuide', 'QuickStart Guide')} cover to\n cover.  Later chapters cover more advanced topics and provide links to further examples and\n reference.\n <li> Have searched the ${isc.DocUtils.linkForDocNode('FeatureExplorer', 'Feature Explorer')} for examples that show\n what you are trying to do\n <li> Have searched this reference, trying multiple searches using different, common and\n related terms for what you are trying to do (eg for search, try \"search\", \"filter\",\n \"criteria\", \"find\", \"match\", etc)\n <li> Have searched the public <a href='http://forums.smartclient.com' target='_blank'>forums</a>\n </ul>\n Always include:\n <ul>\n <li> A description of what you are trying to accomplish <b>from a user's perspective</b>.\n The best answers often point out a simpler approach.\n <li> The browser(s), operating system(s) and SmartClient version(s) you experience the error\n on (SmartClient version is available in the lower-left handle corner of the Developer\n Console)\n </ul>\n Then, include <b>either</b> a standalone test case (see below), <b>or</b>:\n <ul>\n <li> For JS errors, Stack traces from Firebug (for Firefox) or the Developer Console (for\n IE), as covered under \"Debugging JavaScript Errors\" above\n <li> Results of calling <code>echo()</code> on local variables or other application\n state you think is relevant (see \"Inspecting Application State\" above)\n <li> What server platform and ${isc.DocUtils.linkForRef('group:clientServerIntegration','databinding approach')} you\n are using, if applicable\n <li> contents of the SmartClient Developer Console \"Log messages\" area, with appropriate\n diagnostic categories set the DEBUG or INFO level (see \"Built-in Diagnostics\" above)\n <li> sample code and sample data\n </ul>\n <b>Preparing a standalone test case</b>\n <P>\n A standalone test case is one of:\n <ol>\n <li> a chunk of JavaScript code that can be executed from the \"Eval JS\" area of the\n Developer Console on some specified page within the unmodified SmartClient SDK,\n demonstrating your issue\n <li> an .html or .jsp file that can be dropped at a specified location into an unmodified\n SmartClient SDK and will run without changes, demonstrating your issue.\n <li> a .zip file that includes a standalone .html/.jsp file  as above, as well as\n dependencies required to make the test case runnable, such as XML datasets\n </ol>\n <P>\n Submitting a standalone test case removes any ambiguity as to whether there is a bug in\n SmartClient or a bug in your code, and eliminates the possibility of Isomorphic Support\n responding with a \"works for me\" result due to incomplete information.  Issues with verified\n test cases are routed directly to the engineer that authored the relevant SmartClient\n subsystem, often as the new highest priority task.  In addition, the process of preparing a\n test case very often allows you to solve the issue yourself.\n <P>\n There are two approaches to test case preparation:\n <ol>\n <li> Add code to an existing SmartClient example until you can reproduce the problem\n <li> Remove code from your application until it minimally shows the problem and runs standalone\n </ol>\n <P>\n For approach #1, find the nearest match to your use case in the\n ${isc.DocUtils.linkForDocNode('FeatureExplorer')} examples or in the other examples accessible from the Examples\n folder of the SDK, then try to minimally modify that example to demonstrate your issue.\n Feature Explorer examples are a particularly good starting point because you can simply copy\n the code from the Feature Explorer to the Eval JS area of the Developer Console and begin\n changing it, and if successful this yields a type #1 test case, the easiest for you to\n submit and most efficient for Isomorphic to work with.\n <P>\n For approach #2,\n <ol>\n <li> If a server is involved in initial page generation (eg a .jsp file), in most cases you\n can eliminate many server dependencies <b>and</b> create an easily modifiable starting point\n by using the browser's \"View Source\" feature to save a copy of the generated HTML output as\n an .html file in the same directory as the .jsp file that generated it.  Such a file will\n generally continue to function (all relative paths are still correct), and can be modified\n freely without the need to later revert changes to a .jsp.\n <li> Eliminate any code that isn't involved in the interaction.  Keep running the test case\n as you eliminate code to ensure you are still seeing the issue (you may solve it this way,\n or find key preconditions that you can report to Isomorphic)\n <li> For any issue that isn't cosmetic, revert to a default SmartClient skin\n <li> For any necessary RPC/DataSource interactions, spoof the interaction with one of these\n approaches:\n <ul>\n <li> switch any DataSources to one of the sample DataSources from the SDK (eg \"supplyItem\")\n if your issue can still be reproduced in this case.\n <li> create a small sample dataset in JavaScript directly in the .html file, and use a\n ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly DataSource')} with that dataset.\n <li> capture server responses verbatim by setting the RPCManager log category to DEBUG, save\n the responses as flat files, and set ${isc.DocUtils.linkForRef('attr:DataSource.dataURL')} to point at them.\n <li> for RPCs, instead of calling the RPCManager, directly call your own callback function,\n passing a spoofed RPCResponse that includes just the fields your code depends upon\n </ul>\n <li> Finally, move your .html file into the stock SmartClient SDK along with any remaining\n dependencies and verify the problem can still be reproduced\n </ol>\n Having prepared the test case, combine it with the other required issue report information\n covered above, and submit it to the <a href='http://forums.smartclient.com/' target='_blank'>forums</a>,\n or, if you have Enterprise Support, at the\n <a href='http://support.isomorphic.com/' target='_blank'>Customer Support Extranet</a>.\n <P>\n <h4>Adding your own diagnostic categories</h4>\n <P>\n Calling <code>logWarn()</code> is fine for a log statement you plan to delete at the end of\n the debugging session.  However, many log statements have lasting value if you could enable\n or disable them only when you need the relevant diagnostics, like SmartClient's built-in\n diagnostic categories.  To do this, pick a priority level less than <code>WARN</code>\n (<code>INFO</code> or <code>DEBUG</code>), and call the corresponding method on the Log\n class (<code>logInfo()</code> or <code>logDebug()</code>), passing the category name as a\n second parameter.  For example:\n <pre>\n   isc.Log.logInfo(\"first record is: \" + \n                   isc.Log.echo(myGrid.data.get(0)), \n                  \"myGridLoading\");\n </pre>\n This message will no longer appear in the Results Pane by default, because its priority\n (<code>INFO</code>) is less than the default of <code>WARN</code>.  To see this message,\n open the Logging Preferences menu and pick \"More..\", then click the \"Add\" button, enter\n \"myGridLoading\" as the category name and set the priority to <code>INFO</code>.  The message\n will now appear next time it is logged.\n <P>\n Now you have a custom log category that you and other developers can use to debug your\n application, subsystem by subsystem.  These diagnostics will be available to you both in\n development and production environments.\n <P>\n As with SmartClient's built-in diagnostics, you may choose to log certain messages in your\n custom category at the <code>DEBUG</code> level and a lesser number of messages at the\n <code>INFO</code> level, to create different depths of diagnostic output.\n <P>\n <h4>Logging refinements</h4>\n <P>\n The core log methods (<code>logDebug()</code>, <code>logInfo()</code>,\n <code>logWarn()</code>) and the \"echo\" facilities (<code>echo()</code> and\n <code>echoAll()</code>) are available on every SmartClient component and Class.  Hence,\n in many cases, the special JavaScript value \"this\" will refer to an object that supports\n <code>logWarn()</code> et al.  For example:\n <pre>\n     Canvas.create({\n        ID:\"canvasExample\",\n        contents:\"Hello World!\",\n        click:\"this.logWarn('the Canvas is: ' + this.echo(this))\"\n     });\n </pre>\n The special value \"this\" is not always set to a SmartClient component, for example, in some\n kinds of callbacks (eg ${isc.DocUtils.linkForRef('method:ListGrid.fetchData','fetchData()')}).  When in doubt, use these\n methods via the Log class as <code>isc.Log.logWarn()</code>.\n <P>\n <b>Logging performance</b>\n <P>\n Because the log message is actually formed <i>before</i> the call to the log system, logs\n that are suppressed can still carry a performance penalty.  This is particularly true of\n logs that output a lot of data or occur frequently.  To avoid this penalty, you can check in\n advance whether a message will be suppressed using \n ${isc.DocUtils.linkForRef('classMethod:Class.logIsDebugEnabled','isc.Log.logIsDebugEnabled()')} and\n ${isc.DocUtils.linkForRef('classMethod:Class.logIsInfoEnabled','isc.Log.logIsInfoEnabled()')}.  For example:\n <pre>\n   if (isc.Log.logIsInfoEnabled(\"myGridLoading\")) {\n      isc.Log.logInfo(\"first record is: \" +\n                      isc.Log.echo(myGrid.data.get(0)),\n                      \"myGridLoading\");\n   }\n </pre>\n Generally, it is only important to do this for logs that will occur multiple times during a\n given user interaction (eg a mousedown or keypress) and/or that call <code>echo()</code> on\n objects with many properties.",
        name:"debugging",
        seeAlso:[
        ],
        type:"group"
    },
    "type:FieldAppearance":{
        ref:"type:FieldAppearance",
        values:[
            {
                description:"Show in read-only appearance",
                value:"Validator.READONLY"
            },
            {
                description:"Hide field",
                value:"Validator.HIDDEN"
            },
            {
                description:"Disable field",
                value:"Validator.DISABLED"
            }
        ],
        description:null,
        name:"FieldAppearance",
        seeAlso:[
        ],
        type:"type"
    },
    "method:Layout.setMembers":{
        ref:"method:Layout.setMembers",
        flags:"",
        description:" Display a new set of members in this layout. Equivalent to calling removeMembers() then\n addMembers(). Note that the new members may include members already present, in which case\n they will be reordered / integrated with any other new members passed into this method.\n",
        name:"setMembers",
        seeAlso:[
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"members",
                defaultValue:null,
                type:"Array of Canvas"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "classAttr:FieldPickerField.decimalPrecisionTitle":{
        ref:"classAttr:FieldPickerField.decimalPrecisionTitle",
        flags:"IR",
        description:"The title displayed for the decimalPrecision property",
        name:"decimalPrecisionTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Decimal Precision\"",
        type:"classAttr",
        definingClass:"class:FieldPickerField",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.minimizeTime":{
        ref:"attr:Window.minimizeTime",
        flags:"IRWA",
        description:"If this window is minimizeable, and animateMinimize is true, what should the duration of \n the minimize / maximize be (in ms)? If unset defaults to <code>canvas.animationTime</code>.",
        name:"minimizeTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('windowMinimize')}"
        ],
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header",
            "animation"
        ]
    },
    "attr:TestFunctionResult.result":{
        ref:"attr:TestFunctionResult.result",
        flags:"IRW",
        description:"When a formula or summary format is valid, <i>result</i> contains the result returned by the\n generated function when it was executed.",
        name:"result",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:TestFunctionResult",
        groups:[
            "formulaFields"
        ]
    },
    "attr:ListGridField.width":{
        ref:"attr:ListGridField.width",
        flags:"IRW",
        description:"The width of this field, specified as either an absolute number of pixels,\n a percentage of the remaining space like \"25%\", or \"*\" to split remaining space among\n all fields which have \"*\".\n <P>\n See also ${isc.DocUtils.linkForRef('attr:ListGrid.minFieldWidth')} to ensure no field goes below a minimum size.\n <P>\n Use ${isc.DocUtils.linkForRef('method:ListGrid.resizeField')} to programmatically change field width after creation.\n <P>\n Use ${isc.DocUtils.linkForRef('method:ListGrid.getFieldWidth')} to access the rendered field width after\n the ListGrid is drawn.",
        name:"width",
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:Window.modalMaskStyle":{
        ref:"attr:Window.modalMaskStyle",
        flags:"IR",
        description:"Specifies the CSS style for the modal mask.",
        name:"modalMaskStyle",
        seeAlso:[
            {
                ref:"attr:Window.modalMask",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"modalMask\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "modal",
            "appearance"
        ]
    },
    "type:AutoChild":{
        ref:"type:AutoChild",
        description:"An autoChild is an automatically generated subcomponent that a component creates to\n handle part of its presentation or functionality.  An example is the Window component and\n its subcomponent the \"header\".\n <P>\n See ${isc.DocUtils.linkForRef('group:autoChildUsage','Using AutoChildren')} for more information.",
        name:"AutoChild",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "autoChildren"
        ]
    },
    "method:TileGrid.selectAllRecords":{
        ref:"method:TileGrid.selectAllRecords",
        flags:"",
        description:" Select all records\n\n",
        name:"selectAllRecords",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:FacetChart.zoomChartSlider":{
        ref:"attr:FacetChart.zoomChartSlider",
        flags:"IR",
        description:"Slider controls shown on the mini-chart which is created when ${isc.DocUtils.linkForRef('attr:FacetChart.canZoom')} is enabled.",
        name:"zoomChartSlider",
        seeAlso:[
        ],
        valueType:"RangeSlider AutoChild",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:Calendar.fetchData":{
        ref:"method:Calendar.fetchData",
        flags:"",
        description:" Retrieves data from the DataSource that matches the specified criteria.\n <p>\n When <code>fetchData()</code> is first called, if data has not already been provided via\n ${isc.DocUtils.linkForRef('method:ListGrid.setData','setData()')}, this method will create a ${isc.DocUtils.linkForRef('class:ResultSet')}, which will be\n configured based on component settings such as ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fetchOperation')}\n and ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataPageSize')}, as well as the general purpose\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataProperties')}.  The created ResultSet will automatically send a DSRequest\n to retrieve data from ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource','listGrid.dataSource')}, and from then on will  \n automatically manage paging through large datasets, as well as performing filtering and\n sorting operations inside the browser when possible - see the ${isc.DocUtils.linkForRef('class:ResultSet')} docs for\n details.\n <p>\n <b>NOTE:</b> do not use <b>both</b> ${isc.DocUtils.linkForRef('attr:DataBoundComponent.autoFetchData','autoFetchData:true')} <b>and</b> a\n call to <code>fetchData()</code> - this may result in two DSRequests to fetch data.  Use\n either ${isc.DocUtils.linkForRef('attr:DataBoundComponent.autoFetchData','autoFetchData')} and ${isc.DocUtils.linkForRef('type:Criteria')} <b>or</b> a manual call to fetchData()\n passing criteria.\n <p>\n Whether a ResultSet was automatically created or provided via ${isc.DocUtils.linkForRef('method:ListGrid.setData','setData()')}, subsequent\n calls to fetchData() will simply call ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria')}.\n <p>\n Changes to criteria may or may not result in a DSRequest to the server due to\n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering','client-side filtering')}.  You can call\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.willFetchData','willFetchData(criteria)')} to determine if new criteria will result in a\n server fetch.\n <P>\n If you need to force data to be re-fetched, you can call\n ${isc.DocUtils.linkForRef('method:ListGrid.invalidateCache','invalidateCache()')} and new data will automatically be fetched\n from the server using the current criteria and sort direction.  <b>NOTE:</b> when using\n <code>invalidateCache()</code> there is no need to <b>also</b> call <code>fetchData()</code>\n and in fact this could produce unexpected results.\n <p>\n This method takes an optional callback parameter (set to a ${isc.DocUtils.linkForRef('type:DSCallback')}) to fire when\n the fetch completes. Note that this callback will not fire if no server fetch is performed.\n In this case the data is updated synchronously, so as soon as this method completes you\n can interact with the new data. If necessary, you can use\n ${isc.DocUtils.linkForRef('method:DataBoundComponent.willFetchData','willFetchData()')} to determine whether or not a server\n fetch will occur when <code>fetchData()</code> is called with new criteria.\n <p>\n In addition to the callback parameter for this method, developers can use \n ${isc.DocUtils.linkForRef('method:ListGrid.dataArrived','dataArrived()')} to be notified every time data is loaded.\n\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria. If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed                                          in as this argument instead of a raw criteria \n                                          object, will be derived by calling\n                                          ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete. Fires                                          only if server contact was required",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundFetch')}"
        ],
        definingClass:"class:Calendar",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:ListGrid.clearCriteria":{
        ref:"method:ListGrid.clearCriteria",
        flags:"",
        description:" Clear the current criteria used to filter data.\n\n",
        name:"clearCriteria",
        seeAlso:[
            {
                ref:"method:ListGrid.fetchData",
                description:null
            }
        ],
        params:[
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                            that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundFilter')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:MultiSortDialog.deleteLevelButton":{
        ref:"attr:MultiSortDialog.deleteLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for deleting levels\n from the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.deleteLevelButtonProperties</code> and \n <code>multiSortPanel.deleteLevelButtonDefaults</code>.",
        name:"deleteLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortDialog"
    },
    "class:DatabaseBrowser":{
        methods:[
            "method:DatabaseBrowser.getGeneratedDataSource",
            "method:DatabaseBrowser.getResults"
        ],
        ref:"class:DatabaseBrowser",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:DatabaseBrowser.serverType",
            "attr:DatabaseBrowser.dbName",
            "attr:DatabaseBrowser.catalog",
            "attr:DatabaseBrowser.schema",
            "attr:DatabaseBrowser.schemaTree",
            "attr:DatabaseBrowser.databaseList",
            "attr:DatabaseBrowser.dataGrid",
            "attr:DatabaseBrowser.selectButton",
            "attr:DatabaseBrowser.title",
            "attr:DatabaseBrowser.includeSubstring",
            "attr:DatabaseBrowser.excludeSubstring"
        ],
        description:"A component that connects to a database (and, depending on the RDBMS in use, optionally a \n particular catalog and/or schema) and displays the currently-defined tables, optionally \n filtered in a variety of ways.  It also allows you to view the column details\n of a selected table, and optionally retrieves and displays the data currently in that table.\n <p>\n The DatabaseBrowser can also create a SmartClient DataSource from any existing SQL table.",
        name:"DatabaseBrowser",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DSRequest.useStrictJSON":{
        ref:"attr:DSRequest.useStrictJSON",
        flags:"IR",
        description:"Should the HTTP response to this request be formatted using the\n strict JSON subset of the javascript language?\n If set to true, responses returned by the server should match the format described\n <a href='http://www.json.org/js.html' target='_blank'>here</a>.\n <P>\n Only applies to requests sent a server with\n ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat')} set to \"json\" or \"iscServer\".",
        name:"useStrictJSON",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "attr:TileGrid.data":{
        ref:"attr:TileGrid.data",
        flags:"IRW",
        description:"A List of TileRecord objects, specifying the data to be used to create the\n tiles.  \n <p>\n This property will typically not be explicitly specified for databound TileGrids, where\n the data is returned from the server via databound component methods such as\n ${isc.DocUtils.linkForRef('method:TileGrid.fetchData')}. In this case the data objects will be set to a \n ${isc.DocUtils.linkForRef('class:ResultSet','resultSet')} rather than a simple array.",
        name:"data",
        setter:[
            "setData"
        ],
        seeAlso:[
            {
                ref:"object:TileRecord",
                description:null
            }
        ],
        valueType:"Array[] of Record | Array[] of TileRecord | RecordList",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TileGrid",
        groups:[
            "data"
        ]
    },
    "method:ListGrid.refreshRecordComponent":{
        ref:"method:ListGrid.refreshRecordComponent",
        flags:"",
        description:" Discards any currently visible set of ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponents','recordComponent')}\n and gets a fresh one for the specified record (or cell) according to the\n ${isc.DocUtils.linkForRef('attr:ListGrid.recordComponentPoolingMode')}\n <P>\n See also ${isc.DocUtils.linkForRef('method:ListGrid.invalidateRecordComponents')} which allows you to refresh all record\n components that are currently visible in the grid.\n\n",
        name:"refreshRecordComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"Row to refresh",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Column to refresh. This parameter should be passed      if ${isc.DocUtils.linkForRef('attr:ListGrid.showRecordComponentsByCell')} is true.",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:TimeItem.minuteIncrement":{
        ref:"attr:TimeItem.minuteIncrement",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField','useTextField')} is false and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteValues','minuteValues')} is unset, this attribute specifies the increment\n to use when generating entries for the minute picker.  For example, if this attribute is\n set to 5, the minute picker will contain only every fifth value between the \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMinValue','minuteMinValue')} and \n ${isc.DocUtils.linkForRef('attr:TimeItem.minuteMaxValue','minuteMaxValue')}.",
        name:"minuteIncrement",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TimeItem"
    },
    "attr:DSRequest.outputs":{
        ref:"attr:DSRequest.outputs",
        flags:"IR",
        description:"The list of fields to return in the response, specified as a comma-separated string (eg,\n <code>\"foo, bar, baz\"</code>).  You can use this property to indicate to the server that \n you are only interested in a subset of the fields that would normally be returned.\n <p>\n Note that you cannot use this property to request a <em>superset</em> of the fields that\n would normally be returned, because that would be a security hole.  It is possible to \n configure individual ${isc.DocUtils.linkForRef('class:OperationBinding')}s to return extra fields, but this must\n be done in the server's ${isc.DocUtils.linkForRef('class:DataSource')} descriptor; it cannot be altered on the fly\n from the client side.",
        name:"outputs",
        seeAlso:[
            {
                ref:"attr:OperationBinding.outputs",
                description:null
            },
            {
                ref:"attr:DSRequest.additionalOutputs",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "method:Button.select":{
        ref:"method:Button.select",
        flags:"",
        description:" Select this object.\n",
        name:"select",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "method:Canvas.animateShow":{
        ref:"method:Canvas.animateShow",
        flags:"",
        description:" Show a canvas by growing it vertically to its fully drawn height over a period of time.\n This method will not fire if the widget is already drawn and visible, or has overflow\n other than <code>\"visible\"</code> or <code>\"hidden\"</code>.\n",
        name:"animateShow",
        seeAlso:[
        ],
        params:[
            {
                description:"Animation effect to use      when revealing the widget. If ommitted, default behavior can be configured via\n      ${isc.DocUtils.linkForRef('attr:Canvas.animateShowEffect')}",
                optional:true,
                name:"effect",
                defaultValue:null,
                type:"animateShowEffectId | AnimateShowEffect"
            },
            {
                description:"When the show completes this callback will be fired. Single                              'earlyFinish' parameter will be passed if the animation was\n                              cut short by a call to finishAnimation.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"AnimationCallback"
            },
            {
                description:"Duration in ms of the animated show. If unset, duration will be   picked up from ${isc.DocUtils.linkForRef('attr:Canvas.animateShowTime')}",
                optional:true,
                name:"duration",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Optional acceleration effect function to    bias the animation ratios.  If unset, acceleration will be picked up from\n   ${isc.DocUtils.linkForRef('attr:Canvas.animateShowAcceleration')}",
                optional:true,
                name:"acceleration",
                defaultValue:null,
                type:"AnimationAcceleration"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateWipe')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:Scrollbar.trackImg":{
        ref:"attr:Scrollbar.trackImg",
        flags:"IR",
        description:"The StretchItem for the middle part of a scrollbar track, which usually takes up the majority\n of the width or height of the scrollbar. The default is:\n <smartclient><code>{ name:\"track\", width:\"*\", height:\"*\" }</code></smartclient>\n <smartgwt><code>new StretchItem(\"track\", \"*\", \"*\")</code></smartgwt>",
        name:"trackImg",
        seeAlso:[
        ],
        valueType:"StretchItem",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "method:MetricSettings.getDataGradient":{
        ref:"method:MetricSettings.getDataGradient",
        flags:"",
        description:" Get a gradient from the ${isc.DocUtils.linkForRef('attr:MetricSettings.dataGradients')} Array\n <P>\n Override to provide a dynamic gradient generation scheme.\n\n",
        name:"getDataGradient",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the visual element to be colored",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"Number"
            }
        ],
        returns:{
            description:"the gradient identifier",
            type:"String"
        },
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "attr:SubmitItem.title":{
        ref:"attr:SubmitItem.title",
        flags:"IRW",
        description:"SubmitItems show a title of <code>\"Submit\"</code> by default. May be overridden.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Submit\"",
        type:"attr",
        definingClass:"class:SubmitItem"
    },
    "attr:DynamicForm.dateFormatter":{
        ref:"attr:DynamicForm.dateFormatter",
        flags:"IRW",
        description:"Default ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} for Date type values displayed in this form.\n <P>\n If some field's value is set to a native Date object, how should it be displayed to the\n user? If specified this is the default display format to use, and will apply to all fields\n except those specified as ${isc.DocUtils.linkForRef('attr:FormItem.type','type:\"time\"')} \n (See ${isc.DocUtils.linkForRef('attr:DynamicForm.timeFormatter')}).\n <P>\n May be overridden at the component level for fields of type <code>datetime</code> via \n ${isc.DocUtils.linkForRef('attr:DynamicForm.datetimeFormatter')}.\n <P>\n Note that if specified, ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter')} and ${isc.DocUtils.linkForRef('attr:FormItem.timeFormatter')}\n take precedence over the format specified at the component level.\n <P>\n If no explicit formatter is specified at the field or component level, dates will be \n formatted according to the system-wide\n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat','short date display format')} or \n ${isc.DocUtils.linkForRef('classMethod:Date.setShortDatetimeDisplayFormat','short datetime display format')} depending on the\n specified field type.",
        name:"dateFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:RelativeDateItem.quartersAgoTitle":{
        ref:"attr:RelativeDateItem.quartersAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"quarter\".",
        name:"quartersAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N quarters ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:List.indexOf":{
        ref:"method:List.indexOf",
        flags:"",
        description:" Return the position in the list of the first instance of the specified object.\n <p>\n If pos is specified, starts looking after that position.\n <p>\n Returns -1 if not found.\n\n",
        name:"indexOf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"earliest index to consider",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endPos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"position of the item, if found, -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "access"
        ]
    },
    "attr:FacetChart.yAxisMetric":{
        ref:"attr:FacetChart.yAxisMetric",
        flags:"IR",
        description:"For scatter charts only, the \"id\" of the metric facet value to use for the y-axis.\n <p>\n The default y-axis metric is the first value of the metric facet.",
        name:"yAxisMetric",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ListGrid.getFocusRow":{
        ref:"method:ListGrid.getFocusRow",
        flags:"A",
        description:" Get the row that currently has keyboard focus.  Arrow key navigation moves relative to this\n row.\n\n",
        name:"getFocusRow",
        seeAlso:[
        ],
        returns:{
            description:"rowNum of the current focus row",
            type:"Integer"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "type:ValueItemType":{
        ref:"type:ValueItemType",
        values:[
            {
                description:"This is the single form item that will populate the generated   ${isc.DocUtils.linkForRef('attr:Criterion.value')} for this clause. This applies for operators with\n  ${isc.DocUtils.linkForRef('attr:Operator.valueType')} of <code>\"fieldType\"</code> or <code>\"custom\"</code>.",
                value:"\"value\""
            },
            {
                description:"This is the single form item that will populate the generated   ${isc.DocUtils.linkForRef('attr:Criterion.value')} for ${isc.DocUtils.linkForRef('attr:Operator.valueType')} of <code>\"fieldName\"</code>.",
                value:"\"name\""
            },
            {
                description:"Indicates this item will generate the lower-bound value (or \"start\") when generating  criteria with ${isc.DocUtils.linkForRef('attr:Operator.valueType')} <code>\"valueRange\"</code>.",
                value:"\"start\""
            },
            {
                description:"Indicates this item will generate the higher-bound value (or \"end\") when generating  criteria with ${isc.DocUtils.linkForRef('attr:Operator.valueType')} <code>\"valueRange\"</code>.",
                value:"\"end\""
            }
        ],
        description:"Enum used within the ${isc.DocUtils.linkForRef('class:FilterBuilder')} class to indicate the role of a particular \n value-field form item within a filter clause.",
        name:"ValueItemType",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:FacetValue.id":{
        ref:"attr:FacetValue.id",
        flags:"IRW",
        description:"id of this facetValue.  Any string or number.",
        name:"id",
        seeAlso:[
        ],
        valueType:"String | Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "attr:HeaderSpan.spans":{
        ref:"attr:HeaderSpan.spans",
        flags:"IR",
        description:"This property allows developer to \"nest\" header spans, grouping fields together by\n multiple layers of granularity.\n <P>\n For example a group of fields could be nested within two layers of header spans as follows:\n <smartclient>\n <pre>\n { title:\"Europe\", spans:[\n      {title:\"France\", fields:[\"Paris\", \"Lyon\"]},\n      {title:\"UK\", fields:[\"London\", \"Glasgow\"]},\n      {title:\"Spain\", fields:[\"Barcelona\"]}\n  ]\n }\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n      HeaderSpan france = new HeaderSpan(\"France\", new String[] {\"Paris\", \"Lyon\"});\n      HeaderSpan uk = new HeaderSpan(\"UK\", new String[] {\"London\", \"Glasgow\"});\n      HeaderSpan spain = new HeaderSpan(\"Spain\", new String[] {\"Barcelona\"});\n\n      HeaderSpan europe = new HeaderSpan();\n      europe.setTitle(\"Europe\");\n      europe.setSpans(france, uk, spain);\n </pre>\n </smartgwt>\n Note that a span definition can not include both <code>spans</code>\n and ${isc.DocUtils.linkForRef('attr:HeaderSpan.fields','fields')}.",
        name:"spans",
        seeAlso:[
        ],
        valueType:"Array of HeaderSpan",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "attr:Img.prompt":{
        ref:"attr:Img.prompt",
        flags:"IRW",
        description:"Prompt displayed in hover canvas if ${isc.DocUtils.linkForRef('attr:Canvas.showHover','showHover')} is true.",
        name:"prompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customHovers')}"
        ],
        definingClass:"class:Img",
        groups:[
            "hovers"
        ]
    },
    "method:TileGrid.dataArrived":{
        ref:"method:TileGrid.dataArrived",
        flags:"A",
        description:" Notification method fired when new data arrives from the server to be displayed in this\n tileGrid, (for example in response to the user scrolling a new set of tiles into view).\n Only applies to databound tileGrid where the ${isc.DocUtils.linkForRef('attr:TileGrid.data','data')} attribute is a\n ${isc.DocUtils.linkForRef('class:ResultSet')}.\n This method is fired directly in\n response to ${isc.DocUtils.linkForRef('method:ResultSet.dataArrived','dataArrived()')} firing on the data object.\n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"starting index of the newly loaded set of records",
                optional:false,
                name:"startRecord",
                defaultValue:null,
                type:"int"
            },
            {
                description:"ending index of the newly loaded set of records (non inclusive).",
                optional:false,
                name:"endRecord",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:TileGrid"
    },
    "method:Selection.anySelected":{
        ref:"method:Selection.anySelected",
        flags:"",
        description:" Whether at least one item is selected\n",
        name:"anySelected",
        seeAlso:[
        ],
        returns:{
            description:"true == at least one item is selected\t\t\t\t\t\t\t\tfalse == nothing at all is selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "class:SimpleTabButton":{
        methods:[
        ],
        ref:"class:SimpleTabButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/TabSet"
        ],
        attrs:[
        ],
        description:"Simple subclass of ${isc.DocUtils.linkForRef('class:Button')} used for tabs in a ${isc.DocUtils.linkForRef('class:TabSet')} if ${isc.DocUtils.linkForRef('attr:TabSet.useSimpleTabs')}\n is true. See also ${isc.DocUtils.linkForRef('attr:TabSet.simpleTabButtonConstructor')}.",
        name:"SimpleTabButton",
        seeAlso:[
        ],
        type:"class"
    },
    "method:DrawItem.isInBounds":{
        ref:"method:DrawItem.isInBounds",
        flags:"",
        description:" Returns true if the given point in the global coordinate system, when converted to coordinates\n in the drawing coordinate system, is within the ${isc.DocUtils.linkForRef('method:DrawItem.getBoundingBox','bounding box')} of this\n DrawItem's shape.\n <p>\n This method can be used to quickly check whether the given point is definitely <em>not</em> within\n the DrawItem shape. To check whether the point is within the DrawItem shape, use the slower\n but exact ${isc.DocUtils.linkForRef('method:DrawItem.isPointInPath')} method.\n",
        name:"isInBounds",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate of the point in the global coordinate system.",
                optional:false,
                name:"x",
                defaultValue:null,
                type:"int"
            },
            {
                description:"Y coordinate of the point in the global coordinate system.",
                optional:false,
                name:"y",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:null,
            type:"boolean"
        },
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:FormItem.setTop":{
        ref:"method:FormItem.setTop",
        flags:"A",
        description:" For a form with ${isc.DocUtils.linkForRef('attr:DynamicForm.itemLayout','itemLayout')}:\"absolute\" only, set the top\n coordinate of this form item.\n <P>\n Causes the form to redraw.\n",
        name:"setTop",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:ListGrid.fixedRecordHeights":{
        ref:"attr:ListGrid.fixedRecordHeights",
        flags:"IRWA",
        description:"Should we vertically clip cell contents, or allow rows to expand vertically to show all\n contents?\n <P>\n If we allow rows to expand, the row height as derived from\n ${isc.DocUtils.linkForRef('method:GridRenderer.getRowHeight','getRowHeight()')} or the\n default ${isc.DocUtils.linkForRef('attr:ListGrid.cellHeight')} is treated as a minimum.\n <P>\n <b>NOTE:</b><ul>\n <li>Setting fixedRecordHeights to false for ${isc.DocUtils.linkForRef('class:CubeGrid')} is not supported, though a\n similar option for the row headers is available as ${isc.DocUtils.linkForRef('attr:CubeGrid.autoSizeHeaders')}.\n <li>By default, for performance reasons, clipping is not enforced for\n some kinds of content (such as images) on all browsers.  Set\n ${isc.DocUtils.linkForRef('attr:ListGrid.enforceVClipping','enforceVClipping:true')} to enforce clipping for\n all types of content on all browsers.\n </ul>",
        name:"fixedRecordHeights",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('autofitValues')}"
        ],
        definingClass:"class:ListGrid",
        groups:[
            "cellStyling"
        ]
    },
    "method:SplitPane.navigationClick":{
        ref:"method:SplitPane.navigationClick",
        flags:"",
        description:" Notification method fired when the user clicks the default back / forward buttons\n on the navigation bar for this <code>SplitPane</code>.\n",
        name:"navigationClick",
        seeAlso:[
        ],
        params:[
            {
                description:"direction in which the user is attempting to navigate.",
                optional:false,
                name:"direction",
                defaultValue:null,
                type:"NavigationDirection"
            }
        ],
        type:"method",
        definingClass:"class:SplitPane"
    },
    "method:TabSet.scrollForward":{
        ref:"method:TabSet.scrollForward",
        flags:"",
        description:" If there is not enough space to display all the tabs in this tabSet, this method will \n scroll the next tab (that first tab that is clipped at the end of the tab-bar) into view.\n",
        name:"scrollForward",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:RelativeDateItem.weeksAgoTitle":{
        ref:"attr:RelativeDateItem.weeksAgoTitle",
        flags:"IR",
        description:"The title to show for historical periods when the ${isc.DocUtils.linkForRef('type:TimeUnit')} is \"week\".",
        name:"weeksAgoTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"N weeks ago\"",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:HTMLFlow.contentsURL":{
        ref:"attr:HTMLFlow.contentsURL",
        flags:"IRW",
        description:"URL to load content from.\n <P>\n If specified, this component will load HTML content from the specified URL when it is\n first drawn.\n <p>\n This feature relies on the XMLHttpRequest object which can be disabled by end-users in some\n supported browsers.  See ${isc.DocUtils.linkForRef('group:platformDependencies')} for more information.",
        name:"contentsURL",
        setter:[
            "setContentsURL"
        ],
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "attr:TileGrid.dragTrackerStyle":{
        ref:"attr:TileGrid.dragTrackerStyle",
        flags:"IRW",
        description:"CSS Style to apply to the drag tracker when dragging occurs on this component.",
        name:"dragTrackerStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"gridDragTracker\"",
        type:"attr",
        definingClass:"class:TileGrid"
    },
    "method:UploadItem.setSelectionRange":{
        ref:"method:UploadItem.setSelectionRange",
        flags:"",
        description:" <strong>This method is not supported</strong> by <code>UploadItem</code>.\n",
        name:"setSelectionRange",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:UploadItem"
    },
    "attr:ComboBoxItem.mask":{
        ref:"attr:ComboBoxItem.mask",
        flags:"IRWA",
        description:"Not applicable to a ComboBoxItem.",
        name:"mask",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "group:loadISCTag":{
        ref:"group:loadISCTag",
        title:"&lt;isomorphic:loadISC&gt;",
        treeLocation:[
            "Java Server Reference/SmartClient JSP Tags"
        ],
        refs:[
        ],
        description:"<i>produces:</i> HTML\n <p>\n This tag sets window.isomorphicDir and loads a default set of SmartClient modules and a\n skin.  SmartClient modules are JavaScript files that need to be loaded via \n <code>&lt;SCRIPT SRC=/some/filename.js&gt;&lt;/SCRIPT&gt;</code>\n blocks as part of the loading HTML page.  The modules themselves are stored in the\n <code>[webroot]/isomorphic/system/modules</code> directory.  A skin defines the look and feel of your\n website and typically consists of at least one CSS file and some SmartClient UI Component\n default overrides.  Skins are located in <code>[webroot]/isomorphic/skins</code>.  Loading a skin\n consists of loading the corresponding <code>load_skin.js</code> - residing at top-level in\n each skin directory.\n <p>\n The default set of modules loaded by this tag are: <code>Core, Foundation, Containers,\n Grids, Forms, DataBinding</code>.  The default skin is the <code>SmartClient</code> skin.\n So, for example inserting this into your JSP:\n <pre>\n &lt;isomorphic:loadISC/&gt;\n </pre>\n Produces the following output:\n <pre>\n &lt;SCRIPT&gt;window.isomorphicDir='isomorphic/';&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/modules/ISC_Core.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT src=isomorphic/skins/SmartClient/load_skin.js&gt;&lt;/SCRIPT&gt;\n </pre>\n <b><u>Tag Attributes:</u></b>\n <p>\n <b>skin</b><br>\n <i>value format</i>: Name of skin to load.  See the <code>[webroot]/isomorphic/skins</code> directory\n for a list of available skins.  You can also create your own skin by copying an existing\n skin directory recursively, modifying anything you need, and using your new skin name as the\n value here.<br>\n <i>default value</i>: \"SmartClient\"\n <p>\n This selects a skin other than the default.  The value of this attribute is used as a path\n component to <code>load_skin.js</code>.  For example, specifying:\n <pre>\n &lt;isomorphic:loadISC skin=\"standard\"/&gt;\n </pre>\n Produces the following <code>load_skin.js</code> directive (in addition to all the standard\n module loads):\n <pre>\n &lt;SCRIPT src=isomorphic/skins/standard/load_skin.js&gt;&lt;/SCRIPT&gt;\n </pre>\n <p>\n <b>skinDir</b><br>\n <i>value format</i>: path or URL up to and including the name of the skin<br>\n <i>default value</i>: automatically derived from the value of the <code>skin</code>\n attribute\n <p>\n This attribute is usable in lieu of the <code>skin</code> attribute and allows you to\n specify the full path or URL to the directory containing the load_skin.js for your skin.\n This allows you to move the directory containing the skin anywhere you want - including to a\n completely different server.\n <p>\n <b>includeModules</b><br>\n <i>value format</i>: Comma separated list of additional modules to load.  See the\n <code>[webroot]/isomorphic/system/modules</code> directory for a list of loadable modules.  The\n leading \"ISC_\" is optional, spaces after commas are also optional.<br>\n <i>default value</i>: NONE\n <p>\n This attribute allows you to specify SmartClient modules that you want to load in addition\n to the default set of modules. For example, specifying:\n <pre>\n &lt;isomorphic:loadISC includeModules=\"Analytics\"/&gt;\n </pre>\n Produces the following output:\n <pre>\n &lt;SCRIPT&gt;window.isomorphicDir='isomorphic/';&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/development/ISC_Core.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/development/ISC_Foundation.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/development/ISC_Containers.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/development/ISC_Grids.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/development/ISC_Forms.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/development/ISC_DataBinding.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT SRC=isomorphic/system/development/ISC_Analytics.js&gt;&lt;/SCRIPT&gt;\n &lt;SCRIPT src=isomorphic/skins/SmartClient/load_skin.js&gt;&lt;/SCRIPT&gt;\n </pre>\n Notice the addition of the line that loads <code>ISC_Analytics.js</code>.  SmartClient\n modules must be loaded in a particular order and may have dependencies on other modules.\n The <code>loadISC</code> automatically resolves any missing dependencies and includes them\n in the list of modules to load.  The list of modules to load is also automatically reordered\n as required by this tag, so you can specify just the modules you care about, in any order,\n and <code>loadISC</code> will do the right thing.\n <p>\n <b>modules</b><br>\n <i>value format</i>: Comma separated list of modules to load.  See the\n <code>[webroot]/isomorphic/system/modules</code> directory for a list of loadable modules.  The\n leading \"ISC_\" is optional, spaces after commas are also optional.<br>\n <i>default value</i>: \"Core, Foundation, Containers, Grids, Forms, DataBinding\"\n <p>\n Specifying this attribute overrides the default set of modules loaded by\n <code>loadISC</code>. This is useful if you don't need to load all of the default modules on\n a particular page.\n <p>\n <b>isomorphicURI</b><br>\n <i>value format</i>: absolute or relative (from current URI) path to the\n <code>isomorphic</code> directory (by default, located in webRoot).<br>\n <i>default value</i>: automatically derived\n <p>\n This value sets <code>window.isomorphicDir</code> and defines the base path to SmartClient\n modules from the currently executing JSP.  By default, this value is automatically derived\n and you don't need to override it.  Generally, an override is only required if you're\n pointing multiple web application deployments at one base URL for cache coherence reasons.\n <p>\n <b>defer</b><br>\n <i>value format</i>: boolean - acceptable values: \"true\" or \"false\"<br>\n <i>default value</i>: \"false\"\n <p>\n This attribute applies only if you're using the optional Network Performance component of\n SmartClient.  By default, the modules specified by the <code>loadISC</code> tag are loaded\n synchronously - that is, the browser waits for each module to download before rendering\n any HTML on the page.  Specifying <code>defer=\"true\"</code> makes the module load\n asynchronous.  In this mode, all the page content except the modules specified by\n <code>loadISC</code> is loaded and rendered first, and then the SmartClient modules are\n loaded.  The asynchronous mode makes it possible to render some content and allow the user\n to interact with the site immediately, while SmartClient modules load in the background.\n <p>\n Note that typically SmartClient modules are delivered compressed with cache headers, so the\n download delay really only affects first time users of your site, those whose cached\n versions have expired, or if you've upgraded your SmartClient module to a newer version that\n the user has cached.\n <p>\n Using this directive is equivalent to calling ${isc.DocUtils.linkForRef('classMethod:FileLoader.loadISC')}.\n <p>\n <b>cacheOnly</b><br>\n <i>value format</i>: boolean - acceptable values: \"true\" or \"false\"<br>\n <i>default value</i>: \"false\"\n <p>\n This attribute applies only if you're using the optional Network Performance component of\n SmartClient.  This works like <code>defer</code> (see above), except that the modules are\n only loaded into the browser cache, but not executed.  This means that when the specified\n modules download, they'll be added to the browser cache, but will not be available to the\n execution context of the page.  Actually executing the module code takes some processing\n time on the client, whereas simply caching it does not.  The typical use case for this\n directive is on some intermediary page before the user gets to a SmartClient-enabled page.\n For example, you could include a cacheOnly <code>loadISC</code> tag on a login page that\n does not use SmartClient components, but protects a SmartClient-enabled application.  While\n the user is typing in their credentials, the SmartClient modules will cache in the\n background, then once the user logs in and is sent to a SmartClient-enabled page, the\n modules are simply read from cache.\n <p>\n Using this directive is equivalent to calling ${isc.DocUtils.linkForRef('classMethod:FileLoader.cacheISC')}.\n <p>\n <b>onload</b><br>\n <i>value format</i>: String - any javascript code<br>\n <i>default value</i>: NONE\n <p>\n This attribute applies only if you're using the optional Network Performance component of\n SmartClient.  This attribute is usable in conjunction with <code>defer</code> and\n <code>cacheOnly</code> attributes.  This attribute allows you to specify a callback to\n execute when loading or caching of the specified modules has completed.  You can use this\n to, for example, replace portions of the page with SmartClient components once SmartClient\n has loaded.\n <p>\n The value of this attribute is passed as the <code>onload</code> handler to the generated\n ${isc.DocUtils.linkForRef('classMethod:FileLoader.cacheISC')} or ${isc.DocUtils.linkForRef('classMethod:FileLoader.loadISC')} call as appropriate.\n <p>\n <b>useSimpleNames</b><br>\n <i>value format</i>: boolean - acceptable values: \"true\" or \"false\"<br>\n <i>default value</i>: \"true\"\n <p>\n Setting this attribute to false puts SmartClient in namespace mode.  See ${isc.DocUtils.linkForRef('class:isc')}\n for more info.",
        name:"loadISCTag",
        seeAlso:[
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:DateChooser.baseButtonStyle":{
        ref:"attr:DateChooser.baseButtonStyle",
        flags:"IRW",
        description:"Base CSS style applied to this picker's buttons. Will have \"Over\", \"Selected\" and \"Down\"\n suffix appended as the user interacts with buttons.",
        name:"baseButtonStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"dateChooserButton\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:Operator.title":{
        ref:"attr:Operator.title",
        flags:"IR",
        description:"User-visible title for this operator, such as \"doesn't contain\".\n <P>\n To simplify internationalization by separating titles from operator code, you can use\n specify ${isc.DocUtils.linkForRef('attr:Operator.titleProperty')} instead of this property.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:Operator",
        groups:[
            "advancedFilter"
        ]
    },
    "attr:StretchImgButton.actionType":{
        ref:"attr:StretchImgButton.actionType",
        flags:"IRW",
        getter:[
            "getActionType"
        ],
        description:"Behavior on state changes -- BUTTON, RADIO or CHECKBOX",
        name:"actionType",
        setter:[
            "setActionType"
        ],
        seeAlso:[
        ],
        valueType:"SelectionType",
        defaultValue:"\"button\"",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:OperationBinding.dataURL":{
        ref:"attr:OperationBinding.dataURL",
        flags:"IR",
        description:"URL to contact to fulfill DSRequests for this operationBinding.\n <P>\n <code>dataURL</code> is typically set as DataSource.dataURL rather than on each individual\n operationBinding.\n <P>\n <code>dataURL</code> can be omitted for a DataSource using a Web Service\n (${isc.DocUtils.linkForRef('attr:DataSource.serviceNamespace')} is set).",
        name:"dataURL",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "class:XMLTools":{
        methods:[
        ],
        ref:"class:XMLTools",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:XMLTools.loadXML",
            "classMethod:XMLTools.parseXML",
            "classMethod:XMLTools.nativeXMLAvailable",
            "classMethod:XMLTools.toJS",
            "classMethod:XMLTools.selectObjects",
            "classMethod:XMLTools.selectNodes",
            "classMethod:XMLTools.selectString",
            "classMethod:XMLTools.selectNumber",
            "classMethod:XMLTools.transformNodes",
            "classMethod:XMLTools.serializeToString",
            "classMethod:XMLTools.loadXMLSchema",
            "classMethod:XMLTools.loadWSDL"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
        ],
        description:"Utility methods for dealing with XML elements, XML Schema, WSDL files, XSLT, and other\n XML-related functionality.",
        name:"XMLTools",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Calendar.eventEndDateFieldTitle":{
        ref:"attr:Calendar.eventEndDateFieldTitle",
        flags:"IR",
        description:"The title for the end date field in the quick and advanced event dialogs",
        name:"eventEndDateFieldTitle",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"To\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Window.opacity":{
        ref:"attr:Window.opacity",
        flags:"IRWA",
        description:"Renders the widget to be partly transparent. A widget's opacity property may\n be set to any number between 0 (transparent) to 100 (opaque).\n Null means don't specify opacity directly, 100 is fully opaque.\n Note that heavy use of opacity may have a performance impact on some older\n browsers.\n <P>\n In older versions of Internet Explorer (Pre IE9 / HTML5), opacity is achieved\n through proprietary filters. If \n ${isc.DocUtils.linkForRef('classAttr:Canvas.neverUseFilters','filters have been disabled')} within this application\n developers must set ${isc.DocUtils.linkForRef('attr:Canvas.useOpacityFilter')} to true for specific components\n on which opacity support is required.\n <P>\n Also note that opacity is incompatible \n with ${isc.DocUtils.linkForRef('attr:Canvas.useBackMask','backMasks')}, and that this property is enabled\n by default for Window instances.",
        name:"opacity",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "attr:ValuesManager.dataSource":{
        ref:"attr:ValuesManager.dataSource",
        flags:"IRWA",
        getter:[
            "getDataSource"
        ],
        description:"Specifies a dataSource for this valuesManager.  This dataSource will then be used for\n validation and client-server flow methods.  Can be specified as a dataSource object or\n an identifier for the dataSource.<br>\n Note that member forms should have the same dataSource applied to them to allow their\n items to inherit properties from the DataSource fields.",
        name:"dataSource",
        setter:[
            "setDataSource"
        ],
        seeAlso:[
            {
                ref:"method:ValuesManager.setDataSource",
                description:null
            },
            {
                ref:"method:ValuesManager.getDataSource",
                description:null
            }
        ],
        valueType:"DataSource | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ValuesManager"
    },
    "method:FormItem.transformInput":{
        ref:"method:FormItem.transformInput",
        flags:"",
        description:" Called when a FormItem's value is about to change as the result of user interaction.  This\n method fires after the user performed an action that would change the value of this field,\n and allows the developer to modify / reformat the value before it gets validated / saved.\n Fires before ${isc.DocUtils.linkForRef('method:FormItem.change')}.\n <P>\n Return the reformatted value.\n\n",
        name:"transformInput",
        seeAlso:[
        ],
        params:[
            {
                description:"the managing DynamicForm instance",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the form item itself (also available as \"this\")",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"The new value of the form item",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"The previous (current) value of the form item",
                optional:false,
                name:"oldValue",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"The desired new value for the form item",
            type:"any"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:ColumnTree.deselectAllRecords":{
        ref:"method:ColumnTree.deselectAllRecords",
        flags:"",
        description:" Deselect all records in the supplied column (the first column if none is passed)\n\n",
        name:"deselectAllRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"Column number",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "selection"
        ]
    },
    "attr:ColorPicker.satFieldPrompt":{
        ref:"attr:ColorPicker.satFieldPrompt",
        flags:"IR",
        description:"The text to show when the mouse hovers over the 'Saturation' field in the complex chooser.",
        name:"satFieldPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"The Saturation (color purity) of the selected color\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ServerObject.visibleMethods":{
        ref:"attr:ServerObject.visibleMethods",
        flags:"IR",
        description:"When the ${isc.DocUtils.linkForRef('class:ServerObject')} appears in a .app.xml file (for RPC DMI), this property\n specifies the list of methods on the ServerObject that are callable from the client.  See\n the builtin.app.xml file in the /shared/app directory of the SDK for an example of a\n visibleMethods declaration block.",
        name:"visibleMethods",
        seeAlso:[
            {
                ref:"class:DMI",
                description:null
            }
        ],
        valueType:"List",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:ServerObject"
    },
    "attr:WSRequest.xmlNamespaces":{
        ref:"attr:WSRequest.xmlNamespaces",
        flags:"IR",
        description:"Optional object declaring namespace prefixes for use in evaluating the\n <code>resultType</code> parameter of ${isc.DocUtils.linkForRef('method:WebService.callOperation')}, if resultType is an\n XPath.\n <P>\n Format is identical to ${isc.DocUtils.linkForRef('attr:OperationBinding.xmlNamespaces')}, and default namespaces\n bindings are also identical.",
        name:"xmlNamespaces",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:WSRequest"
    },
    "method:Array.getValueMap":{
        ref:"method:Array.getValueMap",
        flags:"",
        description:" Get a map of the form <code>{ item[idField] -&gt; item[displayField] }</code>, for all \n items in the list.  Note that if more than one item has the same <code>idProperty</code>, \n the value for the later item in the list will clobber the value for the earlier item.\n\n",
        name:"getValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"Property to use as ID (data value) in the valueMap",
                optional:false,
                name:"idField",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Property to use a display value in the valueMap",
                optional:false,
                name:"displayField",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"valueMap object",
            type:"object"
        },
        type:"method",
        definingClass:"object:Array"
    },
    "classMethod:JSON.decode":{
        ref:"classMethod:JSON.decode",
        flags:"",
        description:" De-serialize an object from JSON.  Currently, this is simply a JavaScript eval() and should\n be used for trusted data only.\n\n",
        name:"decode",
        seeAlso:[
        ],
        params:[
            {
                description:"JSON data to be de-serialized",
                optional:false,
                name:"jsonString",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"object derived from JSON String",
            type:"Object"
        },
        type:"classMethod",
        definingClass:"class:JSON"
    },
    "attr:Validator.applyWhen":{
        ref:"attr:Validator.applyWhen",
        flags:"IRA",
        description:"Used to create a conditional validator based on ${isc.DocUtils.linkForRef('object:AdvancedCriteria','criteria')}.\n The criteria defines when the validator applies. The form current values or ListGrid record\n is used as reference for the criteria. If the criteria matches the validator will be\n processed. Otherwise the validator is skipped and assumed valid.\n <p>\n Note: To use an <code>applyWhen</code> criteria the form or grid must use a ${isc.DocUtils.linkForRef('class:DataSource')}.\n <p>\n <h3>Server and client use</h3>\n Conditional validators are enforced both on the server and on the client-side\n when defined on a DataSource field as shown in the examples below. Note the\n <code>applyWhen</code> element is treated as a ${isc.DocUtils.linkForRef('object:Criterion')}.\n <pre>\n &lt;!-- Simple format --&gt;\n &lt;field name=\"age\" type=\"integer\"&gt;\n   &lt;validators&gt;\n     &lt;validator type=\"integerRange\" min=\"0\" max=\"100\"&gt;\n       &lt;applyWhen fieldName=\"restrictAge\" operator=\"equals\" value=\"true\"/&gt;\n     &lt;/validator&gt;\n   &lt;/validators&gt;\n &lt;/field&gt;\n\n &lt;!-- Normal format --&gt;\n &lt;field name=\"age\" type=\"integer\"&gt;\n   &lt;validators&gt;\n     &lt;validator type=\"integerRange\" min=\"0\" max=\"100\"&gt;\n       &lt;applyWhen operator=\"or\"&gt;\n         &lt;criteria&gt;\n           &lt;criterion fieldName=\"restrictAge\" operator=\"equals\" value=\"true\"/&gt;\n           &lt;criterion fieldName=\"gender\" operator=\"equals\" value=\"female\"/&gt;\n         &lt;/criteria&gt; \n       &lt;/applyWhen&gt;\n     &lt;/validator&gt;\n   &lt;/validators&gt;\n &lt;/field&gt;\n\n &lt;!-- Conditional requirement --&gt;\n &lt;field name=\"reason\" type=\"text\"&gt;\n   &lt;validators&gt;\n     &lt;validator type=\"required\"&gt;\n       &lt;applyWhen fieldName=\"willAttend\" operator=\"equals\" value=\"false\"/&gt;\n     &lt;/validator&gt;\n   &lt;/validators&gt;\n &lt;/field&gt;\n </pre>\n The last example above shows an alternate to the <code>requiredIf</code> validator\n which is only available for client-side use. On the client the <code>reason</code> \n field will change appearance to match other required or non-required fields when\n <code>willAttend</code> changes.\n <p>\n <h3>Component XML and client-only use</h3> \n Conditional validators can also be applied to ${isc.DocUtils.linkForRef('group:componentXML','Component XML')}\n similarly to provide client-only validations or read-only state management. A common\n use case is conditionally displaying or enabling fields. Use the <code>readOnly</code>\n validator with an <code>applyWhen</code> value to control the read-only appearance of a\n field. The example below shows a field which is hidden when <code>willAttend=true</code>.\n <pre>\n &lt;!-- field definition within a Component XML DynamicForm --&gt;\n &lt;field name=\"reason\" type=\"text\"&gt;\n   &lt;validators&gt;\n     &lt;validator type=\"readOnly\" fieldAppearance=\"hidden\"&gt;\n       &lt;applyWhen fieldName=\"willAttend\" operator=\"equals\" value=\"true\"/&gt;\n     &lt;/validator&gt;\n   &lt;/validators&gt;\n &lt;/field&gt;\n </pre>\n <p>\n Conditional validators can be applied to DynamicForm or ListGrid fields in \n <smartclient>JavaScript</smartclient><smartgwt>Java</smartgwt> code as well.",
        name:"applyWhen",
        seeAlso:[
        ],
        valueType:"AdvancedCriteria",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "attr:FacetChart.valueTitle":{
        ref:"attr:FacetChart.valueTitle",
        flags:"IR",
        description:"A label for the data values, such as \"Sales in Thousands\", typically used as the label for\n the value axis.",
        name:"valueTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:IconButton.menuIconClick":{
        ref:"method:IconButton.menuIconClick",
        flags:"",
        description:" Notification method fired when a user clicks on the menuIcon on this IconButton.  \n <smartclient>Return false to suppress the standard click handling code.</smartclient>\n <smartgwt>call <code>event.cancel()</code> to suppress the standard \n click handling code.</smartgwt>\n\n",
        name:"menuIconClick",
        seeAlso:[
        ],
        returns:{
            description:"return false to cancel event-bubbling",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:IconButton"
    },
    "attr:ListGrid.groupNodeBaseStyle":{
        ref:"attr:ListGrid.groupNodeBaseStyle",
        flags:"IRW",
        description:"${isc.DocUtils.linkForRef('method:ListGrid.getBaseStyle','Base style')} for ${isc.DocUtils.linkForRef('method:ListGrid.groupBy','group')} rows.\n <P>\n Note that this property has no effect if ${isc.DocUtils.linkForRef('attr:ListGrid.groupNodeStyle')} is\n non null.",
        name:"groupNodeBaseStyle",
        seeAlso:[
            {
                ref:"group:grouping",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:ListGrid.cellMouseDown":{
        ref:"method:ListGrid.cellMouseDown",
        flags:"",
        description:" Called when a cell receives a mousedown event.\n \n",
        name:"cellMouseDown",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "method:GridRenderer.cellValueIsClipped":{
        ref:"method:GridRenderer.cellValueIsClipped",
        flags:"A",
        description:" Is the value in a given cell clipped?\n",
        name:"cellValueIsClipped",
        seeAlso:[
            {
                ref:"method:GridRenderer.cellValueHover",
                description:null
            }
        ],
        params:[
            {
                description:"row number of the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"null if there is no cell at the given row, column; otherwise, whether the value in the specified cell is clipped.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer"
    },
    "attr:ComboBoxItem.searchStringTooShortMessage":{
        ref:"attr:ComboBoxItem.searchStringTooShortMessage",
        flags:"IRA",
        description:"Message to display in pick list when ${isc.DocUtils.linkForRef('attr:ComboBoxItem.minimumSearchLength','minimumSearchLength')} characters have not been entered.",
        name:"searchStringTooShortMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Enter a longer search string to search\"",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:GridRenderer.cellClick":{
        ref:"method:GridRenderer.cellClick",
        flags:"A",
        description:" Called when a cell receives a click event.\n\n",
        name:"cellClick",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object returned from getCellRecord()",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:Canvas.hoverVAlign":{
        ref:"attr:Canvas.hoverVAlign",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true, this property can be used to customize the\n vertical alignment of content in the hover canvas.",
        name:"hoverVAlign",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"VerticalAlignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "attr:ListGridField.hidden":{
        ref:"attr:ListGridField.hidden",
        flags:"IR",
        description:"Marks field as initially hidden.<br>\n The user will still be able to show the field via a context menu.\n This may be suppressed by setting ${isc.DocUtils.linkForRef('attr:ListGridField.canHide')} to false, or by\n setting ${isc.DocUtils.linkForRef('attr:ListGrid.canPickFields')} to false to suppress the\n field-picker entirely.\n <p>\n To mark a field as completely hidden (not shown to a user at all, in any component), set\n ${isc.DocUtils.linkForRef('attr:DataSourceField.hidden')} instead.\n <P>\n See ${isc.DocUtils.linkForRef('attr:ListGrid.discardEditsOnHideField')} and ${isc.DocUtils.linkForRef('attr:ListGrid.dropCriteriaOnHideField')}\n for behavior when hiding fields while ${isc.DocUtils.linkForRef('attr:ListGrid.canEdit','editing')}.",
        name:"hidden",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "appearance"
        ]
    },
    "attr:SearchForm.canEditFieldAttribute":{
        ref:"attr:SearchForm.canEditFieldAttribute",
        flags:"IRA",
        description:"This property is overridden in SearchForm to allow editing of dataSource fields marked as\n <code>canFilter:true</code> by default.",
        name:"canEditFieldAttribute",
        seeAlso:[
            {
                ref:"attr:DataBoundComponent.canEditFieldAttribute",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"canFilter\"",
        type:"attr",
        definingClass:"class:SearchForm"
    },
    "attr:ListGrid.singleCellValueProperty":{
        ref:"attr:ListGrid.singleCellValueProperty",
        flags:"IRW",
        description:"If <code>record[this.singleCellValueProperty]</code> is set for some record, the\n record will be displayed as a single cell spanning every column in the grid, with\n contents set to the value of <code>record[this.singleCellValueProperty]</code>.",
        name:"singleCellValueProperty",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"singleCellValue\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:CheckboxItem":{
        methods:[
            "method:CheckboxItem.setValueMap",
            "method:CheckboxItem.getValueAsBoolean"
        ],
        exampleConfig:"CheckboxItem.xml",
        ref:"class:CheckboxItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:CheckboxItem.titleStyle",
            "attr:CheckboxItem.textBoxStyle",
            "attr:CheckboxItem.width",
            "attr:CheckboxItem.showTitle",
            "attr:CheckboxItem.labelAsTitle",
            "attr:CheckboxItem.showLabel",
            "attr:CheckboxItem.showValueIconOver",
            "attr:CheckboxItem.showValueIconDown",
            "attr:CheckboxItem.showValueIconDisabled",
            "attr:CheckboxItem.checkedImage",
            "attr:CheckboxItem.uncheckedImage",
            "attr:CheckboxItem.partialSelectedImage",
            "attr:CheckboxItem.showUnsetImage",
            "attr:CheckboxItem.unsetImage",
            "attr:CheckboxItem.valueIconWidth",
            "attr:CheckboxItem.valueIconHeight",
            "attr:CheckboxItem.valueMap",
            "attr:CheckboxItem.allowEmptyValue"
        ],
        description:"Checkbox form item, implemented with customizable checkbox images",
        name:"CheckboxItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('checkboxItem')}"
        ]
    },
    "attr:CalendarEvent.lane":{
        ref:"attr:CalendarEvent.lane",
        flags:"IRW",
        description:"When in Timeline mode, or when ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} is true, a string that \n represents the name of the ${isc.DocUtils.linkForRef('attr:Calendar.lanes','lane')} this ${isc.DocUtils.linkForRef('object:CalendarEvent')} should \n sit in.  The name of this field within the CalendarEvent can be changed via\n ${isc.DocUtils.linkForRef('attr:Calendar.laneNameField')}.",
        name:"lane",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "method:ResultSet.getLength":{
        ref:"method:ResultSet.getLength",
        flags:"",
        description:" Return the total number of records that match the current filter criteria.\n <P>\n This length can only be known, even approximately, when the first results are retrieved from\n the server.  Before then, the ResultSet returns a large length in order to encourage viewers\n to ask for rows.  ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown','ResultSet.lengthIsKnown()')} can be called to\n determine whether an actual length is known.\n\n",
        name:"getLength",
        seeAlso:[
        ],
        returns:{
            description:"number of items in the list",
            type:"Number"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access"
        ]
    },
    "attr:MultiComboBoxItem.button":{
        ref:"attr:MultiComboBoxItem.button",
        flags:"RA",
        description:"An ${isc.DocUtils.linkForRef('type:AutoChild')} attribute used to create the buttons in the MultiComboBoxItem.",
        name:"button",
        seeAlso:[
        ],
        valueType:"MultiAutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:MultiGroupDialog.addLevelButton":{
        ref:"attr:MultiGroupDialog.addLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for adding new levels\n to the group configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiGroupPanel.addLevelButtonProperties</code> and \n <code>multiGroupPanel.addLevelButtonDefaults</code>.",
        name:"addLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "method:ListGrid.formatCellValue":{
        ref:"method:ListGrid.formatCellValue",
        flags:"",
        description:" Formatter to apply to values displayed within cells.\n <P>\n The value passed to this method is either the field value found in the cell record\n or, if there are unsaved edits, the current user-entered value for the cell.\n <b>NOTE:</b> unsaved user edits may contain nulls, bad values or values of the wrong\n type, so formatters used for editable data should be bulletproof.  For example, if you\n have a function \"myNumberFormatter\" that should only be passed actual Numbers, you might\n define formatCellValue like so:\n <pre>\n     isc.isA.Number(parseInt(value)) ?\n            myNumberFormatter(parseInt(value)) : value\n </pre>\n Note that this formatter will not be applied to the value displayed within editors for\n cells - use <code>formatEditorValue</code> to achieve this.\n <P>\n If <code>formatCellValue</code> is defined at the field level for some cell being edited,\n the field level method will be used to format the edit value and this method will not\n be called for that cell.<br>\n\n",
        name:"formatCellValue",
        seeAlso:[
            {
                ref:"method:ListGridField.formatCellValue",
                description:null
            },
            {
                ref:"method:ListGrid.formatEditorValue",
                description:null
            }
        ],
        params:[
            {
                description:"raw value for the cell being",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Record object for the cell. Note: If this is a new row that has not been saved, in an\n   editable grid, it has no associated record object. In this case the edit values will\n   be passed in as this parameter.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number for the cell.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"formatted value to display in the cell.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "display_values"
        ]
    },
    "attr:DateChooser.weekChooserButton":{
        ref:"attr:DateChooser.weekChooserButton",
        flags:"IR",
        description:"A button shown in the ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayout','navigation layout')} which shows\n a picker for selecting a specific week of the year.  When ${isc.DocUtils.linkForRef('attr:DateChooser.showFiscalYearChooser')}\n is true, the week number represents a fiscal week number, one offset from the start of \n the fiscal year.  Otherwise, it represents a week number offset from the start of the\n calendar year.",
        name:"weekChooserButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:StretchImgButton.labelSkinImgDir":{
        ref:"attr:StretchImgButton.labelSkinImgDir",
        flags:"IRWA",
        description:"Specifies a skinImgDir to apply to the label containing the title of this \n StretchImgButton. May be null in which case <code>this.skinImgDir</code>\n will be applied to the label as well.\n <P>\n Note that icons displayed in the title may make use of the skin img dir set here",
        name:"labelSkinImgDir",
        setter:[
            "setLabelSkinImgDir"
        ],
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImgButton"
    },
    "attr:DrawRect.lineCap":{
        ref:"attr:DrawRect.lineCap",
        flags:"IRW",
        description:"Style of drawing the endpoints of a line.\n <P>\n Note that for dashed and dotted lines, the lineCap style affects each dash or dot.",
        name:"lineCap",
        seeAlso:[
        ],
        valueType:"LineCap",
        defaultValue:"\"butt\"",
        type:"attr",
        definingClass:"class:DrawRect",
        groups:[
            "line"
        ]
    },
    "attr:PickList.pickListHeight":{
        ref:"attr:PickList.pickListHeight",
        flags:"IRW",
        description:"Maximum height to show the pick list before it starts to scroll.\n Note that by default the pickList will be sized to the height required by its content\n so it will be taller when more rows are available as selectable options",
        name:"pickListHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"300",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "method:MetricSettings.setChartType":{
        ref:"method:MetricSettings.setChartType",
        flags:"",
        description:" Method to change the current ${isc.DocUtils.linkForRef('type:ChartType','chartType')}.\n Will redraw the chart if drawn. \n Will use default settings for the new chart type for ${isc.DocUtils.linkForRef('attr:MetricSettings.stacked','stacked')}\n and ${isc.DocUtils.linkForRef('attr:MetricSettings.filled','filled')} if those values are null.\n <p>\n Note that for ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis')} charts this method changes the\n <code>chartType</code> for the main value axis only.\n\n",
        name:"setChartType",
        seeAlso:[
        ],
        params:[
            {
                description:"new chart type",
                optional:false,
                name:"chartType",
                defaultValue:null,
                type:"ChartType"
            }
        ],
        type:"method",
        definingClass:"object:MetricSettings"
    },
    "attr:SpinnerItem.maskSaveLiterals":{
        ref:"attr:SpinnerItem.maskSaveLiterals",
        flags:"IRWA",
        description:"Not applicable to a SpinnerItem.",
        name:"maskSaveLiterals",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "method:Canvas.getID":{
        ref:"method:Canvas.getID",
        flags:"",
        description:"      When a widget instance is created, it is assigned a unique global identifier that can be\n      used to access the instance by name. The getID method returns this ID for a particular\n      instance. Global IDs are essential when you need to embed a widget reference in a string,\n      usually a string that will be evaluated in the future and/or in another object, where you\n      may not have access to a variable or parameter holding the widget's reference.\n\n",
        name:"getID",
        seeAlso:[
        ],
        returns:{
            description:"global identifier for this canvas",
            type:"string"
        },
        type:"method",
        definingClass:"class:Canvas"
    },
    "attr:FormItem.showTitle":{
        ref:"attr:FormItem.showTitle",
        flags:"IRW",
        description:"Should we show a title cell for this formItem?\n <p>\n Note: the default value of this attribute is overridden by some subclasses.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "method:Button.titleHover":{
        ref:"method:Button.titleHover",
        flags:"",
        description:" Optional stringMethod to fire when the user hovers over this button and the title is\n clipped. If ${isc.DocUtils.linkForRef('attr:Button.showClippedTitleOnHover')} is true, the default behavior is to\n show a hover canvas containing the HTML returned by ${isc.DocUtils.linkForRef('method:Button.titleHoverHTML')}.\n Return false to suppress this default behavior.\n",
        name:"titleHover",
        seeAlso:[
            {
                ref:"method:Button.titleClipped",
                description:null
            }
        ],
        returns:{
            description:"false to suppress the standard hover",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Button",
        groups:[
            "hovers"
        ]
    },
    "classAttr:Browser.isTouch":{
        ref:"classAttr:Browser.isTouch",
        flags:"RW",
        description:"Is the application running on a touch device (e.g. iPhone, iPad, Android device, etc.)?\n <p>\n SmartClient's auto-detected value for <code>isTouch</code> can be overridden via\n ${isc.DocUtils.linkForRef('classMethod:Browser.setIsTouch')}.",
        name:"isTouch",
        setter:[
            "setIsTouch"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:null,
        type:"classAttr",
        definingClass:"class:Browser"
    },
    "attr:FacetChart.rotateLabels":{
        ref:"attr:FacetChart.rotateLabels",
        flags:"IR",
        description:"This property controls whether to rotate the labels on the X-axis.  If rotateLabels is\n \"always\" then all of the data labels will be rotated by 90 degrees.  If rotateLabels is\n \"auto\" (the default) then the labels will only be rotated if it is required in order for\n the labels to be legible and non-overlapping.  If rotateLabels is \"never\" then the\n labels will not be rotated.",
        name:"rotateLabels",
        seeAlso:[
        ],
        valueType:"LabelRotationMode",
        defaultValue:"\"auto\"",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:ImgButton.src":{
        ref:"attr:ImgButton.src",
        flags:"IRW",
        description:"The base filename for the image.\n <P>\n This value will be combined with any specified ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state','state')}\n to form a combined URL, changing the appearance of the component as the\n state changes.\n <P>\n The following table lists out the standard set of combined URLs that \n may be generated. Subclasses may support additional state-derived media of course.\n Note that the src URL will be split such that the extension is always applied to the\n end of the combined string. For example in the following table, if <code>src</code>\n was set to <code>\"blank.gif\"</code>, the Selected+Focused URL would be \n <code>\"blank_Selected_Focused.gif\"</code>.\n <table>\n <tr><td><b>URL for Img source</b></td><td><b>Description</b></td></tr>\n <tr><td><code><i>src</i>+<i>extension</i></code></td><td>Default URL</td></tr>\n <tr><td><code><i>src</i>+\"_Selected\"+<i>extension</i></code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Focused\"+<i>extension</i></code></td>\n      <td>Applied when the component has keyboard focus, if \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused')} is true, and \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is not true.</td></tr>\n <tr><td><code><i>src</i>+\"_Over\"+<i>extension</i></code></td>\n      <td>Applied when the user rolls over the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Down\"+<i>extension</i></code></td>\n      <td>Applied when the user presses the mouse button over over the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')} is set to true</td></tr>\n <tr><td><code><i>src</i>+\"_Disabled\"+<i>extension</i></code></td>\n      <td>Applied to ${isc.DocUtils.linkForRef('attr:Canvas.disabled')} component\n       if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')} is true.</td></tr>\n <tr><td colspan=2><i>Combined states</i></td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused\"+<i>extension</i></code></td>\n      <td>Combined Selected and focused state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Over\"+<i>extension</i></code></td>\n      <td>Combined Selected and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Focused_Over\"+<i>extension</i></code></td>\n      <td>Combined Focused and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused_Over\"+<i>extension</i></code></td>\n      <td>Combined Selected, Focused and rollOver state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Down\"+<i>extension</i></code></td>\n      <td>Combined Selected and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Focused_Down\"+<i>extension</i></code></td>\n      <td>Combined Focused and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Focused_Down\"+<i>extension</i></code></td>\n      <td>Combined Selected, Focused and mouse-down state</td></tr>\n <tr><td><code><i>src</i>+\"_Selected_Disabled\"+<i>extension</i></code></td>\n      <td>Combined Selected and Disabled state</td></tr>\n </table>",
        name:"src",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/ImgButton/button.png\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonAppearance')}"
        ],
        definingClass:"class:ImgButton",
        groups:[
            "appearance"
        ]
    },
    "method:CanvasItem.showValue":{
        ref:"method:CanvasItem.showValue",
        flags:"",
        description:" This method will be called whenever this FormItem's value is being set via a programmatic\n call to e.g: ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')} or ${isc.DocUtils.linkForRef('method:FormItem.setValue')} and may be\n overridden by CanvasItems intended to support displaying data values to update the\n embedded Canvas to reflect the value passed in.\n",
        name:"showValue",
        seeAlso:[
        ],
        params:[
            {
                description:"new display value for the item.  This is the value after applying   any custom formatter or valueMap",
                optional:false,
                name:"displayValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"underlying data value for the item",
                optional:false,
                name:"dataValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"the dynamicForm in which this item is contained",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            },
            {
                description:"the live form item instance",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"CanvasItem"
            }
        ],
        type:"method",
        definingClass:"class:CanvasItem"
    },
    "classAttr:Operators.iNotContainsTitle":{
        ref:"classAttr:Operators.iNotContainsTitle",
        flags:"IR",
        description:"Title for the \"iNotContains\" operator",
        name:"iNotContainsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not contain\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:RPCManager.loginRequiredMarker":{
        ref:"classAttr:RPCManager.loginRequiredMarker",
        flags:"IRWA",
        description:"Marker the system will look for in order to detect when login is required.\n <P>\n The default loginRequired marker should generally <b>not</b> be customized.  It is\n designed to be safe to insert into any HTML page or other server response without\n affecting display or functionality, for example, within an HTML comment.  You should\n *only* customize the <code>loginRequiredMarker</code> if you have absolutely no ability\n to change the response that the server will send when login is required.\n <P>\n If you do customize the <code>loginRequiredMarker</code>, then the loginRequiredMarker,\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.loginSuccessMarker')} and ${isc.DocUtils.linkForRef('classAttr:RPCManager.maxLoginAttemptsExceededMarker')} should all start with the \n ${isc.DocUtils.linkForRef('classAttr:RPCManager.loginStatusCodeMarker')}.  If they do not, there will be a small impact on \n performance as every response must be separately scanned for each marker, instead of just scanning\n once for the ${isc.DocUtils.linkForRef('classAttr:RPCManager.loginStatusCodeMarker')}.\n <P>\n In addition, the ${isc.DocUtils.linkForRef('classAttr:RPCManager.loginStatusCodeMarker')} should ideally contain text that could not possibly\n validly appear as a data value in a normal response, since if that were possible, end\n users could enter the loginRequiredMarker as a data value and cause SmartClient to\n falsely detect session timeout when handling an ordinary data response.  This is why the\n default marker has characters that make it impossible for it to be validly interpreted\n as a JavaScript String, XML document or HTML content - there is no way that an end user\n could enter this as a data value in an application and have it appear verbatim in a\n server response.",
        name:"loginRequiredMarker",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"RPCManager.loginRequiredMarker",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "relogin"
        ]
    },
    "classMethod:Page.getSkinImgDir":{
        ref:"classMethod:Page.getSkinImgDir",
        flags:"",
        description:"\t\tReturn the directory for a skin image.\n\n",
        name:"getSkinImgDir",
        seeAlso:[
        ],
        params:[
            {
                description:"Partial URL (relative to Page._skinDir) where the image lives.\t\t\t\t\t\t\t\t\t\tIf not supplied, will use \"images/\"",
                optional:true,
                name:"imgDir",
                defaultValue:null,
                type:"URL"
            }
        ],
        returns:{
            description:"URL for page-specific images.",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "attr:DetailViewer.dateFormatter":{
        ref:"attr:DetailViewer.dateFormatter",
        flags:"IRW",
        description:"How should Date type values be displayed in this DetailViewer by default?\n <P>\n This property specifies the default DateDisplayFormat to apply to Date values\n displayed in this grid for all fields except those of ${isc.DocUtils.linkForRef('attr:DetailViewerField.type','type \"time\"')}\n (See also ${isc.DocUtils.linkForRef('attr:DetailViewer.timeFormatter')}).<br>\n If ${isc.DocUtils.linkForRef('attr:DetailViewer.datetimeFormatter')} is specified, that will be applied by default\n to fields of type <code>\"datetime\"</code>.\n <P>\n Note that if ${isc.DocUtils.linkForRef('attr:DetailViewerField.dateFormatter')} or ${isc.DocUtils.linkForRef('attr:DetailViewerField.timeFormatter')} are\n specified those properties will take precedence over the component level settings.\n <P>\n If unset, date values will be formatted according to the system wide \n ${isc.DocUtils.linkForRef('classMethod:Date.setNormalDisplayFormat','normal display format')}.",
        name:"dateFormatter",
        seeAlso:[
        ],
        valueType:"DateDisplayFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer"
    },
    "attr:FacetChart.showLegend":{
        ref:"attr:FacetChart.showLegend",
        flags:"IR",
        description:"The legend is automatically shown for charts that need it (generally, multi-series\n charts) but can be forced off by setting showLegend to false.",
        name:"showLegend",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:Calendar.endDate":{
        ref:"attr:Calendar.endDate",
        flags:"IR",
        description:"The end date of the calendar timeline view.  Has no effect in other views.\n <P>\n To set different ${isc.DocUtils.linkForRef('attr:Calendar.startDate','start')} and end dates after initial draw,\n see ${isc.DocUtils.linkForRef('method:Calendar.setTimelineRange','setTimelineRange')}.\n <P>\n Note that this attribute may be automatically altered if showing \n ${isc.DocUtils.linkForRef('attr:Calendar.headerLevels','header-levels')}, to fit to header boundaries.",
        name:"endDate",
        seeAlso:[
        ],
        valueType:"Date",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "class:DOMGrid":{
        methods:[
            "method:DOMGrid.setRootElement"
        ],
        ref:"class:DOMGrid",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids"
        ],
        attrs:[
            "attr:DOMGrid.rootElement"
        ],
        description:"Provides a tree view of any DOM-compliant structure, such as an XML or HTML document.",
        name:"DOMGrid",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:FormItemIcon.disableOnReadOnly":{
        ref:"attr:FormItemIcon.disableOnReadOnly",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.canEdit')} is set to false, should this icon be disabled.\n If unset this is determined by ${isc.DocUtils.linkForRef('attr:FormItem.disableIconsOnReadOnly')}.\n Note that if ${isc.DocUtils.linkForRef('attr:FormItemIcon.neverDisable')} is set to true, the icons will\n be rendered enabled regardless of this setting and whether the item is editable.",
        name:"disableOnReadOnly",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "method:ListGrid.removeData":{
        ref:"method:ListGrid.removeData",
        flags:"",
        description:" Remove a record from this ListGrid.\n <P>\n If this grid is bound to a DataSource, it will perform a DataSource \"remove\" operation to\n remove records from this component's DataSource.\n <P>\n Otherwise the data will be removed from the grid's ${isc.DocUtils.linkForRef('attr:ListGrid.data','data')} object.\n <P>\n To make changes to the local data object even when a DataSource is present, use\n ${isc.DocUtils.linkForRef('attr:ListGrid.saveLocally')}.\n\n",
        name:"removeData",
        seeAlso:[
        ],
        params:[
            {
                description:"listGrid record, or primary key values of record to delete.",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"method to call on operation completion.   Note that if this is method does not trigger a dataSource remove operation, the callback\n   will still be fired when the data has been removed, but the <code>dsResponse</code> parameter\n   will be null.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on any DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:FormItem.vAlign":{
        ref:"attr:FormItem.vAlign",
        flags:"IRW",
        description:"Vertical alignment of this item within its cell. This property governs the position\n of the item's text box within the cell (not the content within the text box).\n If ${isc.DocUtils.linkForRef('method:FormItem.shouldApplyHeightToTextBox')} is true, for this to have a visible effect,\n the cell height must exceed the specified height of the item, either due to\n an explicit ${isc.DocUtils.linkForRef('attr:FormItem.cellHeight')} specification, or due to the row being expanded\n by another taller item.\n <P>\n Has no effect if ${isc.DocUtils.linkForRef('attr:DynamicForm.itemLayout')} is set to <code>\"absolute\"</code> for the\n form.",
        name:"vAlign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "attr:NavigationBar.titleLabel":{
        ref:"attr:NavigationBar.titleLabel",
        flags:"IR",
        description:"The AutoChild label used to display the ${isc.DocUtils.linkForRef('attr:NavigationBar.title','title')} in this\n NavigationBar.",
        name:"titleLabel",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:NavigationBar"
    },
    "method:TreeGrid.transferNodes":{
        ref:"method:TreeGrid.transferNodes",
        flags:"A",
        description:"\n Transfer a list of ${isc.DocUtils.linkForRef('object:TreeNode')}s from another component (does not have to be a databound\n component) into this component.  This method is only applicable to list-type components,\n such as ${isc.DocUtils.linkForRef('class:ListGrid','listGrid')}, ${isc.DocUtils.linkForRef('class:TreeGrid','treeGrid')} or ${isc.DocUtils.linkForRef('class:TileGrid','tileGrid')}.\n <P>\n This method implements the automatic drag-copy and drag-move behavior and calling it is\n equivalent to completing a drag and drop of the <code>nodes</code>.\n <P>\n Note that this method is asynchronous - it may need to perform server turnarounds to prevent\n duplicates in the target component's data.  If you wish to be notified when the transfer\n process has completed, you can either pass the optional callback to this method or implement\n the ${isc.DocUtils.linkForRef('method:DataBoundComponent.dropComplete')} method on this component.\n <P>\n See also ${isc.DocUtils.linkForRef('method:TreeGrid.transferSelectedData')}.\n\n",
        name:"transferNodes",
        seeAlso:[
        ],
        params:[
            {
                description:"Nodes to transfer to this component",
                optional:false,
                name:"nodes",
                defaultValue:null,
                type:"Array of TreeNode"
            },
            {
                description:"The target folder (eg, of a drop interaction), for context",
                optional:false,
                name:"folder",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Insert point within the target folder data for the transferred nodes",
                optional:false,
                name:"index",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"The databound or non-databound component from which the nodes                              are to be transferred.",
                optional:false,
                name:"sourceWidget",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"optional callback to be fired when the transfer process has                       completed.  The callback will be passed a single parameter \"records\",\n                       the list of nodes actually transferred to this component (it is called\n                       \"records\" because this is logic shared with ${isc.DocUtils.linkForRef('class:ListGrid')})",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('treeDropEvents')}"
        ],
        definingClass:"class:TreeGrid"
    },
    "method:FilterBuilder.search":{
        ref:"method:FilterBuilder.search",
        flags:"",
        description:" A StringMethod that is automatically invoked if ${isc.DocUtils.linkForRef('attr:FilterBuilder.saveOnEnter')} is set \n and the user presses Enter whilst in a text-item in any clause or subclause.\n\n",
        name:"search",
        seeAlso:[
        ],
        params:[
            {
                description:"The criteria represented by the filterBuilder",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"AdvancedCriteria"
            }
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "class:TextImportSettings":{
        methods:[
        ],
        ref:"class:TextImportSettings",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:TextImportSettings.hasHeaderLine"
        ],
        description:"Settings for use with ${isc.DocUtils.linkForRef('method:DataSource.recordsFromText')}.",
        name:"TextImportSettings",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ColumnTree.selectAllRecords":{
        ref:"method:ColumnTree.selectAllRecords",
        flags:"",
        description:" Select all records in the supplied column (the first column if none is passed)\n\n",
        name:"selectAllRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"Column number",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "selection"
        ]
    },
    "attr:SliderItem.defaultValue":{
        ref:"attr:SliderItem.defaultValue",
        flags:"IRW",
        description:"Default value for this sliderItems is 1.",
        name:"defaultValue",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1",
        type:"attr",
        definingClass:"class:SliderItem"
    },
    "attr:ColorPicker.blueFieldTitle":{
        ref:"attr:ColorPicker.blueFieldTitle",
        flags:"IR",
        description:"The title for the 'Blue' field in the complex chooser.",
        name:"blueFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Blue\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Splitbar.canDrag":{
        ref:"attr:Splitbar.canDrag",
        flags:"IRW",
        description:"<code>canDrag</code> set to true to allow dragging of the split bar. Dragging the\n Splitbar will resize it's ${isc.DocUtils.linkForRef('attr:Splitbar.target','target')}",
        name:"canDrag",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Splitbar"
    },
    "method:DrawPane.rotate":{
        ref:"method:DrawPane.rotate",
        flags:"",
        description:" Synonym of ${isc.DocUtils.linkForRef('method:DrawPane.setRotation')}.\n",
        name:"rotate",
        seeAlso:[
        ],
        params:[
            {
                description:"the new rotation in degrees. The positive direction corresponds to clockwise rotation.",
                optional:false,
                name:"degrees",
                defaultValue:null,
                type:"double"
            }
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "method:Gauge.getSectorFillColor":{
        ref:"method:Gauge.getSectorFillColor",
        flags:"",
        description:" Gets the fill color of the sector at index <code>sectorIndex</code>.\n\n",
        name:"getSectorFillColor",
        seeAlso:[
            {
                ref:"attr:DrawItem.fillColor",
                description:null
            }
        ],
        params:[
            {
                description:"index of the target sector.",
                optional:false,
                name:"sectorIndex",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"the fill color of the sector at <code>sectorIndex</code>.",
            type:"CSSColor"
        },
        type:"method",
        definingClass:"class:Gauge"
    },
    "attr:TreeGrid.loadDataOnDemand":{
        ref:"attr:TreeGrid.loadDataOnDemand",
        flags:"IRW",
        description:"For databound treeGrid instances, should the entire tree of data be loaded on initial \n fetch, or should folders load their children as they are opened.\n <P>\n If unset, calling ${isc.DocUtils.linkForRef('method:TreeGrid.fetchData')} will default it to true, otherwise, if a ResultTree\n is passed to ${isc.DocUtils.linkForRef('method:TreeGrid.setData')}, the ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand')} setting is\n respected.\n <P>\n Note that when using <code>loadDataOnDemand</code>, every node returned by the server is\n assumed be a folder which may load further children.  See\n ${isc.DocUtils.linkForRef('attr:ResultTree.defaultIsFolder')} for how to control this behavior.",
        name:"loadDataOnDemand",
        seeAlso:[
            {
                ref:"attr:TreeGrid.dataFetchMode",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('initialData')}"
        ],
        definingClass:"class:TreeGrid",
        groups:[
            "databinding"
        ]
    },
    "attr:ListGrid.originalData":{
        ref:"attr:ListGrid.originalData",
        flags:"R",
        getter:[
            "getOriginalData"
        ],
        description:"When grouped, a copy of the original ungrouped data.",
        name:"originalData",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:StretchImgButton.isSelected":{
        ref:"method:StretchImgButton.isSelected",
        flags:"",
        description:" Find out if this object is selected\n",
        name:"isSelected",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "attr:SelectItem.showOver":{
        ref:"attr:SelectItem.showOver",
        flags:"IRWA",
        description:"When the user rolls over the select item, should the pickButton display it's \n <code>Over</code> state?",
        name:"showOver",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:DynamicForm.implicitSaveOnBlur":{
        ref:"attr:DynamicForm.implicitSaveOnBlur",
        flags:"IRW",
        description:"If true, form item values will be automatically saved when each item's \"editorExit\" \n handler is fired as well as on a delay and when the entire form is submitted.  This\n attribute can also be set directly on FormItems.",
        name:"implicitSaveOnBlur",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:ListGrid.groupStateChanged":{
        ref:"method:ListGrid.groupStateChanged",
        flags:"",
        description:" Notification method executed whenever the groupState of this grid changes.\n Group state is accessible via ${isc.DocUtils.linkForRef('method:ListGrid.getGroupState')}, and contains group state\n information.\n\n",
        name:"groupStateChanged",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DetailViewer.linkTextProperty":{
        ref:"attr:DetailViewer.linkTextProperty",
        flags:"IRW",
        description:"Property name on a record that will hold the link text for that record.\n <p>\n This property is configurable to avoid possible collision with data values in the\n record.\n <p>\n Use ${isc.DocUtils.linkForRef('attr:DetailViewerField.linkTextProperty')} if you have more than one link field and\n the fields' records do not use the same property to store the linkText.",
        name:"linkTextProperty",
        seeAlso:[
            {
                ref:"attr:DetailViewerField.linkText",
                description:null
            },
            {
                ref:"attr:DetailViewerField.linkTextProperty",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"linkText\"",
        type:"attr",
        definingClass:"class:DetailViewer"
    },
    "method:Canvas.showContextMenu":{
        ref:"method:Canvas.showContextMenu",
        flags:"A",
        description:" Executed when the right mouse button is clicked.  The default implementation of\n this method auto-creates a ${isc.DocUtils.linkForRef('class:Menu')} from the ${isc.DocUtils.linkForRef('attr:Canvas.contextMenu')} property on\n this component and then calls ${isc.DocUtils.linkForRef('method:Menu.showContextMenu')} on it to show it.\n <p>\n If you want to show a standard context menu, you can simply define your Menu and set it as the\n contextMenu property on your component - you do not need to override this method.\n <p>\n If you want to do some other processing before showing a menu or do something else entirely, then\n you should override this method.  Note that the return value from this method controls whether or\n not the native browser context menu is shown.\n\n",
        name:"showContextMenu",
        seeAlso:[
            {
                ref:"attr:Canvas.contextMenu",
                description:null
            },
            {
                ref:"method:Menu.showContextMenu",
                description:null
            },
            {
                ref:"method:Canvas.hideContextMenu",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false == don't show native context menu, true == show native context menu",
            type:"boolean"
        },
        type:"method",
        platformNotes:"On the Mac platform, context menu functionality may be triggered by <code>Command+click</code><br>\n On the Opera browser, context menu functionality may be triggered by <code>Shift+Ctrl+click</code>",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "classMethod:isc.showPrompt":{
        ref:"classMethod:isc.showPrompt",
        flags:"",
        description:"\n\tMethod available on the isc object to show a modal prompt to the user.\n  This method will display the message using the Dialog.Prompt singleton object.<br>\n  Note: if this prompt is to be shown to the user during some slow JavaScript logic, we\n  advise calling this method, then using ${isc.DocUtils.linkForRef('method:Class.delayCall')} or ${isc.DocUtils.linkForRef('classMethod:Timer.setTimeout')}\n  to kick off the slow logic in a separate thread. This ensures that the prompt is showing\n  before the lengthy execution begins.\n  <p/>Use <code>\"&#36;{loadingImage}\"</code> to include ${isc.DocUtils.linkForRef('classAttr:Canvas.loadingImageSrc','a loading image')}.\n\n\n",
        name:"showPrompt",
        seeAlso:[
            {
                ref:"classAttr:Dialog.Prompt",
                description:null
            }
        ],
        params:[
            {
                description:"message to display",
                optional:false,
                name:"message",
                defaultValue:null,
                type:"string"
            },
            {
                description:"additional properties for the Dialog, applied before                                       the Dialog is shown",
                optional:true,
                name:"properties",
                defaultValue:null,
                type:"Dialog Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:isc",
        groups:[
            "Prompting"
        ]
    },
    "attr:DataSourceField.valueMap":{
        ref:"attr:DataSourceField.valueMap",
        flags:"IR",
        description:"A ${isc.DocUtils.linkForRef('type:ValueMap')} is a set of legal values for a field.\n <p>\n The valueMap can be specified as either an Array of legal values, or as an\n ${isc.DocUtils.linkForRef('type:Object')} where each property maps a stored value to a user-displayable value.\n <p>\n To enforce that a field should be constrained to only the values in the valueMap, either\n declare ${isc.DocUtils.linkForRef('attr:DataSourceField.type','field.type')} as \"enum\", or use a\n ${isc.DocUtils.linkForRef('type:ValidatorType')} of \"isOneOf\" with explicitly listed values.  Otherwise,\n although a normal ${isc.DocUtils.linkForRef('class:SelectItem')} control will only allow values from the valueMap to be\n entered, other controls such as a ${isc.DocUtils.linkForRef('class:ComboBoxItem','ComboBox')} will allow other values \n to be entered.\n <p>\n In XML, a valueMap that specifies only a list of legal values is specified as follows:\n <pre>\n   &lt;valueMap&gt;\n   \t&lt;value&gt;Pens &amp; Pencils&lt;/value&gt;\n   \t&lt;value&gt;Stationery&lt;/value&gt;\n   \t&lt;value&gt;Computer Products&lt;/value&gt;\n   \t&lt;value&gt;Furniture&lt;/value&gt;\n   \t&lt;value&gt;Misc&lt;/value&gt;\n   &lt;/valueMap&gt;\n </pre>\n A ValueMap that specifies stored values mapped to user-visible values is specified as\n follows:\n <pre>\n   &lt;valueMap&gt;\n   \t&lt;value ID=\"1\"&gt;Pens &amp; Pencils&lt;/value&gt;\n   \t&lt;value ID=\"2\"&gt;Stationery&lt;/value&gt;\n   \t&lt;value ID=\"3\"&gt;Computer Products&lt;/value&gt;\n   \t&lt;value ID=\"4\"&gt;Furniture&lt;/value&gt;\n   \t&lt;value ID=\"5\"&gt;Misc&lt;/value&gt;\n   &lt;/valueMap&gt;\n </pre>",
        name:"valueMap",
        seeAlso:[
        ],
        valueType:"ValueMap",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSourceField",
        groups:[
            "dataType"
        ]
    },
    "attr:DateChooser.disableWeekends":{
        ref:"attr:DateChooser.disableWeekends",
        flags:"IR",
        description:"Whether it should be valid to pick a weekend day.  If set to true, weekend days appear\n in disabled style and cannot be picked. \n <P>\n Which days are considered weekends is controlled by ${isc.DocUtils.linkForRef('classAttr:Date.weekendDays')}.",
        name:"disableWeekends",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "class:ListPropertiesDialog":{
        methods:[
            "method:ListPropertiesDialog.applyClick",
            "method:ListPropertiesDialog.cancelClick"
        ],
        ref:"class:ListPropertiesDialog",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation/RichTextEditor"
        ],
        attrs:[
            "attr:ListPropertiesDialog.title",
            "attr:ListPropertiesDialog.listPropertiesPane",
            "attr:ListPropertiesDialog.applyButtonTitle",
            "attr:ListPropertiesDialog.applyButton",
            "attr:ListPropertiesDialog.cancelButtonTitle",
            "attr:ListPropertiesDialog.cancelButton"
        ],
        description:"Dialog shown for editing properties of HTML lists in a ${isc.DocUtils.linkForRef('class:RichTextEditor')}.  Contains a\n ${isc.DocUtils.linkForRef('class:ListPropertiesPane')}.\n <p>\n Cannot be directly used; shown in documentation only for skinning purposes.",
        name:"ListPropertiesDialog",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Calendar.startDateField":{
        ref:"attr:Calendar.startDateField",
        flags:"IR",
        description:"The name of the start date field in a ${isc.DocUtils.linkForRef('object:CalendarEvent')}.",
        name:"startDateField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"startDate\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "type:ExportFormat":{
        ref:"type:ExportFormat",
        values:[
            {
                description:"Export data as XML records",
                value:"\"xml\""
            },
            {
                description:"Export data as JSON objects",
                value:"\"json\""
            },
            {
                description:"Export data in comma-separated format",
                value:"\"csv\""
            },
            {
                description:"Export data in native Microsoft Excel 97 format",
                value:"\"xls\""
            },
            {
                description:"Export data in native Microsoft Excel 2007 format (also called XLSX)",
                value:"\"ooxml\""
            }
        ],
        description:"One of the supported formats for data-export.  If you are doing a \n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','client export')} to one of the native spreadsheet\n formats (xls or ooxml), we also export ${isc.DocUtils.linkForRef('object:Hilite','hilite-based')} coloring.  So, if\n Hilites are causing a particular cell to be rendered as green text on a blue background, \n the corresponding cell in the exported spreadsheet document will also be colored that way.",
        name:"ExportFormat",
        seeAlso:[
        ],
        type:"type",
        serverDS:"allowed"
    },
    "attr:MetricSettings.dataShapeProperties":{
        ref:"attr:MetricSettings.dataShapeProperties",
        flags:"IR",
        description:"Properties for data shapes (filled areas in area or radar charts).",
        name:"dataShapeProperties",
        seeAlso:[
        ],
        valueType:"DrawPath Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "method:FacetChart.getNearestDrawnValue":{
        ref:"method:FacetChart.getNearestDrawnValue",
        flags:"",
        description:" Returns rendering information for the data value that is shown nearest to the passed\n coordinates, as a ${isc.DocUtils.linkForRef('object:DrawnValue')} object.\n <p>\n Passed X and Y coordinates should be relative to the FacetChart.  If neither an X or Y\n coordinate is passed, both X and Y will use the current ${isc.DocUtils.linkForRef('method:Canvas.getOffsetX')} and\n ${isc.DocUtils.linkForRef('method:Canvas.getOffsetY')}.\n <p>\n If called before ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')}, logs a warning and returns null.  For a chart with\n multiple vertical axes, returns the nearest point from the first metric only (see\n ${isc.DocUtils.linkForRef('class:FacetChart','FacetChart overview')}).  For scatter charts, returns a DrawnValue where the\n ${isc.DocUtils.linkForRef('attr:DrawnValue.value','value')} is from the ${isc.DocUtils.linkForRef('attr:FacetChart.yAxisMetric','y-axis metric')}.\n <p>\n To get the nearest DrawnValue only if it contains the given coordinates, you can either use\n the ${isc.DocUtils.linkForRef('method:FacetChart.getDrawnValueAtPoint')} API or call ${isc.DocUtils.linkForRef('method:FacetChart.drawnValueContainsPoint')} on the return\n value.\n <p>\n Behavior for different chart types is as follows:\n <p>\n <h4>Bar / Column</h4>\n <p>\n Returns the centerpoint of the end of the nearest bar or column by considering the Y\n coordinate (bar) or X coordinate (column) only.\n <p>\n <h4>Line / Area</h4>\n <p>\n Returns the nearest point based on which data label is nearest to the passed X coordinate.\n For multi-series charts, if Y coordinate is not passed the data point returned is from the\n series that has the highest value at the data label.\n <p>\n <h4>Radar</h4>\n <p>\n Returns the data point nearest the passed coordinates by straight line distance.\n Passing only one coordinate will cause a warning to be logged and null to be returned;\n passing neither coordinate is allowed (<code>getOffsetX/Y</code> will be used).\n <p>\n <h4>Pie</h4>\n <p>\n Returns the data point for the segment that would be hit if a line were drawn from the\n passed coordinates to the center of the pie.\n <p>\n If there are multiple stacked pies, uses the pie that contains the passed coordinates,\n otherwise the outermost pie.\n <p>\n If there are multiple non-stacked pies, uses the pie that is nearest the passed coordinates\n by straight-line distance to the center of the pie.\n <p>\n Passing only one coordinate will cause a warning to be logged and null to be returned;\n passing neither coordinate is allowed (<code>getOffsetX/Y</code> will be used).\n <p>\n If the chart is a ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis chart')} then this method takes an\n optional parameter, <code>metric</code>, which causes this method to return a <code>DrawnValue</code>\n from the specified metric.  If a metric is not passed then the first metric of the metric facet\n will be used (or just the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')} if there is no metric facet).\n\n",
        name:"getNearestDrawnValue",
        seeAlso:[
        ],
        params:[
            {
                description:"X coordinate. If this parameter is specified, then <code>y</code> is a required parameter.",
                optional:true,
                name:"x",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"Y coordinate",
                optional:true,
                name:"y",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"metric over which to determine the drawn value",
                optional:true,
                name:"metric",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"the nearest drawn value, or null for invalid arguments / incorrect timing                  of call",
            type:"DrawnValue"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('chartCustomHovers')}"
        ],
        definingClass:"class:FacetChart"
    },
    "method:DrawPath.moveBy":{
        ref:"method:DrawPath.moveBy",
        flags:"",
        description:" Move the points by dX,dY\n\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"delta x coordinate in pixels",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"delta y coordinate in pixels",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawPath"
    },
    "group:menuIcons":{
        ref:"group:menuIcons",
        refs:[
            "attr:MenuItem.checked",
            "attr:MenuItem.disabledIcon",
            "attr:MenuItem.icon",
            "attr:MenuItem.iconWidth",
            "attr:MenuItem.iconHeight"
        ],
        name:"menuIcons",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:HTMLFlow.evalScriptBlocks":{
        ref:"attr:HTMLFlow.evalScriptBlocks",
        flags:"IR",
        description:"If <code>evalScriptBlocks</code> is true, HTMLFlow will pre-process the loaded HTML in order to\n mimic how the HTML would execute if it were loaded as an independent page or loaded via an\n IFRAME.  \n <P>\n This feature is intended to assist with migrating existing applications to SmartClient.\n <P>\n <code>evalScriptBlocks</code> is enabled by default when loading remote content (via\n ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL')}) and disabled by default for content supplied via ${isc.DocUtils.linkForRef('method:HTMLFlow.setContents')}.\n <P>\n Note that, if evalScriptBlocks is false, &lt;SCRIPT&gt; blocks will still be detected and disabled\n to avoid the inconsistent results across different browsers.\n <P>\n Only applies when contentsType is <b>not</b> \"page\".",
        name:"evalScriptBlocks",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "attr:ColumnTree.dataProperties":{
        ref:"attr:ColumnTree.dataProperties",
        flags:"IR",
        description:"For a <code>ColumnTree</code> that uses a DataSource, these properties will be passed to\n the automatically-created ResultTree.  This can be used for various customizations such as\n modifying the automatically-chosen ${isc.DocUtils.linkForRef('attr:Tree.parentIdField')}.",
        name:"dataProperties",
        seeAlso:[
        ],
        valueType:"Tree",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "databinding"
        ]
    },
    "attr:ListGrid.canExpandRecords":{
        ref:"attr:ListGrid.canExpandRecords",
        flags:"IRWA",
        description:"When set to true, shows an additional field at the beginning of the field-list\n (respecting RTL) to allow users to expand and collapse individual records.\n See ${isc.DocUtils.linkForRef('method:ListGrid.expandRecord')} and ${isc.DocUtils.linkForRef('attr:ListGrid.expansionMode')} for details\n on record expansion.\n <P>\n ${isc.DocUtils.linkForRef('attr:ListGrid.virtualScrolling')} is automatically enabled when canExpandRecords is\n set to true.\n <P>\n Note that expanded records are not currently supported in conjunction\n with ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen fields')}.",
        name:"canExpandRecords",
        setter:[
            "setCanExpandRecords"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "attr:RowSpacerItem.colSpan":{
        ref:"attr:RowSpacerItem.colSpan",
        flags:"IRW",
        description:"by default, separators span all remaining columns",
        name:"colSpan",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"\"*\"",
        type:"attr",
        definingClass:"class:RowSpacerItem",
        groups:[
            "appearance"
        ]
    },
    "class:RichTextItem":{
        methods:[
            "method:RichTextItem.setMoveFocusOnTab"
        ],
        ref:"class:RichTextItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:RichTextItem.moveFocusOnTab",
            "attr:RichTextItem.shouldSaveValue",
            "attr:RichTextItem.showTitle",
            "attr:RichTextItem.startRow",
            "attr:RichTextItem.endRow",
            "attr:RichTextItem.colSpan",
            "attr:RichTextItem.controlGroups"
        ],
        description:"FormItem for rich text (HTML) editing. Makes use of a ${isc.DocUtils.linkForRef('class:RichTextEditor')} as the \n editing interface.",
        name:"RichTextItem",
        seeAlso:[
        ],
        type:"class"
    },
    "class:PrintCanvas":{
        methods:[
            "method:PrintCanvas.setHTML",
            "method:PrintCanvas.print"
        ],
        ref:"class:PrintCanvas",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:PrintCanvas.printFrameURL",
            "attr:PrintCanvas.externalStylesheet"
        ],
        description:"PrintCanvas is a subclass of canvas which renders printable content HTML and \n provides APIs for printing this content as a separate document.",
        name:"PrintCanvas",
        seeAlso:[
        ],
        type:"class",
        groups:[
            "printing"
        ]
    },
    "type:PageOrientation":{
        ref:"type:PageOrientation",
        values:[
            {
                description:"Landscape orientation: page is wider than it is tall.",
                value:"\"landscape\""
            },
            {
                description:"Portrait orientation: page is taller than it is wide.",
                value:"\"portrait\""
            }
        ],
        description:"Is this page being viewed in landscape or portrait orientation? Typically used with\n mobile devices.",
        name:"PageOrientation",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DataBoundComponent.setDataSource":{
        ref:"method:DataBoundComponent.setDataSource",
        flags:"",
        description:" Bind to a new DataSource.\n <P>\n Like passing the \"dataSource\" property on creation, binding to a DataSource means that the\n component will use the DataSource to provide default data for its fields.\n <P>\n When binding to a new DataSource, if the component has any existing \"fields\" or has a dataset,\n these will be discarded by default, since it is assumed the new DataSource may represent a\n completely unrelated set of objects.  If the old \"fields\" are still relevant, pass them to\n setDataSource().\n \n",
        name:"setDataSource",
        seeAlso:[
        ],
        params:[
            {
                description:"DataSource to bind to",
                optional:false,
                name:"dataSource",
                defaultValue:null,
                type:"ID or DataSource"
            },
            {
                description:"optional array of fields to use",
                optional:false,
                name:"fields",
                defaultValue:null,
                type:"Array of Fields"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('WSDLDataSource')}"
        ],
        definingClass:"interface:DataBoundComponent"
    },
    "method:DrawLabel.setContents":{
        ref:"method:DrawLabel.setContents",
        flags:"",
        description:" Sets this DrawLabel's ${isc.DocUtils.linkForRef('attr:DrawLabel.contents','contents')}.\n",
        name:"setContents",
        seeAlso:[
        ],
        params:[
            {
                description:"the new contents.",
                optional:false,
                name:"contents",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:DrawLabel"
    },
    "attr:Canvas.resizeFrom":{
        ref:"attr:Canvas.resizeFrom",
        flags:"IRWA",
        description:"When drag resizing is enabled via ${isc.DocUtils.linkForRef('attr:Canvas.canDragResize')}, restricts resizes to only\n certain edges or corners.\n <P>\n The default of null indicates the widget can be resized from any corner or edge (if\n <code>canDragResize</code> is true).\n <P>\n To restrict resizing to only certain corners, set <code>resizeFrom</code> to an Array of\n ${isc.DocUtils.linkForRef('type:EdgeName')}s.",
        name:"resizeFrom",
        seeAlso:[
        ],
        valueType:"Array of EdgeName",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragResize')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "attr:IconButton.iconAlign":{
        ref:"attr:IconButton.iconAlign",
        flags:"IRW",
        description:"This attribute is not supported in this subclass.  However, RTL mode is still supported.",
        name:"iconAlign",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "method:Canvas.getParentCanvas":{
        ref:"method:Canvas.getParentCanvas",
        flags:"",
        description:" Returns the parent of this canvas, if any.\n",
        name:"getParentCanvas",
        seeAlso:[
        ],
        returns:{
            description:"the parent canvas, null if none exists.",
            type:"Canvas"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:ResultSet.dataSource":{
        ref:"attr:ResultSet.dataSource",
        flags:"IR",
        description:"What ${isc.DocUtils.linkForRef('class:DataSource')} is this resultSet associated with?",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataSourceFields')}"
        ],
        definingClass:"class:ResultSet",
        groups:[
            "databinding"
        ]
    },
    "method:MiniDateRangeItem.getCriterion":{
        ref:"method:MiniDateRangeItem.getCriterion",
        flags:"",
        description:" Returns the Criterion entered in the fields shown in the \n ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.rangeDialog')}.\n <P>\n If both dates are entered, a Criterion with an \"and\" ${isc.DocUtils.linkForRef('type:OperatorId','operator')} \n and both \"greaterOrEqual\" and \"lessOrEqual\" sub-criteria will be returned.  If either\n date is omitted, only the \"greaterOrEqual\" (from date) or \"lessOrEqual\" (to date) \n Criterion is returned.\n\n",
        name:"getCriterion",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Criterion"
        },
        type:"method",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "criteriaEditing"
        ]
    },
    "attr:Canvas.destroying":{
        ref:"attr:Canvas.destroying",
        flags:"RA",
        description:"This property is set to true when the ${isc.DocUtils.linkForRef('method:Canvas.destroy')} method is called on a widget.\n If this property is true, but ${isc.DocUtils.linkForRef('attr:Canvas.destroyed')} is not, this indicates the canvas is\n in the process of being destroyed.",
        name:"destroying",
        seeAlso:[
            {
                ref:"method:Canvas.destroy",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "method:CellSelection.selectCell":{
        ref:"method:CellSelection.selectCell",
        flags:"",
        description:" Select a particular cell\n\n",
        name:"selectCell",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of cell to select",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"int"
            },
            {
                description:"column index of cell to select",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "method:TileGrid.addData":{
        ref:"method:TileGrid.addData",
        flags:"",
        description:" Perform a DataSource \"add\" operation to add new records to this component's DataSource.\n\n",
        name:"addData",
        seeAlso:[
        ],
        params:[
            {
                description:"new record",
                optional:false,
                name:"newRecord",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"method to call on operation completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundAdd')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "method:Palette.makeEditNode":{
        ref:"method:Palette.makeEditNode",
        flags:"",
        description:" Given a ${isc.DocUtils.linkForRef('object:PaletteNode')}, make an ${isc.DocUtils.linkForRef('object:EditNode')} from it by creating a \n ${isc.DocUtils.linkForRef('attr:EditNode.liveObject','liveObject')} from the ${isc.DocUtils.linkForRef('attr:PaletteNode.defaults')}\n and copying presentation properties (eg ${isc.DocUtils.linkForRef('attr:PaletteNode.title','title')}\n to the editNode. If <code>editNodeProperties</code> is specified as an object on\n on the paletteNode, each property in this object will also be copied across to\n the editNode.\n",
        name:"makeEditNode",
        seeAlso:[
        ],
        params:[
            {
                description:"paletteNode to create from",
                optional:false,
                name:"paletteNode",
                defaultValue:null,
                type:"PaletteNode"
            }
        ],
        returns:{
            description:"created EditNode",
            type:"EditNode"
        },
        type:"method",
        definingClass:"interface:Palette"
    },
    "group:communication":{
        ref:"group:communication",
        refs:[
            "type:SendMethod"
        ],
        name:"communication",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGridField.formatGridSummary":{
        ref:"attr:ListGridField.formatGridSummary",
        flags:"IR",
        description:"Optional stringMethod to format the summary value displayed\n in the ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','grid summary')}.\n Takes a single parameter <code>value</code> and should return the formatted version\n of that value. If specified this will be applied instead of any formatting logic applied\n via ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue')}, ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue')}, etc.\n <P>\n Note that for fields with a specified summary function of \"count\", if no custom formatting\n is applied, we default to formatting the count value by appending\n <code>field.pluralTitle</code> if defined, otherwise <code>field.title</code> to the\n numeric count value returned by the standard count function. To change this behavior for\n such fields, specify an explicit 'formatGridSummary' and/or 'formatGroupSummary' method",
        name:"formatGridSummary",
        seeAlso:[
        ],
        valueType:"stringMethod",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:FormItem.errorCellClassName":{
        ref:"attr:FormItem.errorCellClassName",
        deprecated:"As of SmartClient version 5.5 deprecated in favor of ${isc.DocUtils.linkForRef('attr:FormItem.cellStyle')}",
        flags:"IRW",
        description:"CSS class for a form item's cell when a validation error is showing.",
        name:"errorCellClassName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"formError\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "group:formulaFields":{
        ref:"group:formulaFields",
        refs:[
            "method:DataBoundComponent.addFormulaField",
            "method:DataBoundComponent.editFormulaField",
            "method:DataBoundComponent.userAddedField",
            "method:FormulaBuilder.setFormula",
            "method:FormulaBuilder.getHelpText",
            "method:FormulaBuilder.getUpdatedFieldObject",
            "method:FormulaBuilder.testFunction",
            "method:FormulaBuilder.getTestRecord",
            "method:FormulaBuilder.saveAddAnother",
            "method:FormulaBuilder.save",
            "method:FormulaBuilder.fireOnClose",
            "method:SummaryBuilder.setSummary",
            "method:SummaryBuilder.save",
            "class:MathFunction",
            "object:TestFunctionResult",
            "class:FormulaBuilder",
            "classMethod:MathFunction.registerFunction",
            "classMethod:MathFunction.getRegisteredFunctionIndex",
            "classMethod:MathFunction.getDefaultFunctionIndex",
            "attr:DataBoundComponent.badFormulaResultValue",
            "attr:DataBoundComponent.canAddFormulaFields",
            "attr:MathFunction.name",
            "attr:MathFunction.description",
            "attr:MathFunction.jsFunction",
            "attr:MathFunction.defaultSortPosition",
            "attr:TestFunctionResult.failedGeneration",
            "attr:TestFunctionResult.failedExecution",
            "attr:TestFunctionResult.emptyTestValue",
            "attr:TestFunctionResult.errorText",
            "attr:TestFunctionResult.result",
            "attr:TestFunctionResult.record",
            "attr:ListGrid.badFormulaResultValue",
            "attr:ListGrid.canAddFormulaFields",
            "attr:FormulaBuilder.dataSource",
            "attr:FormulaBuilder.fields",
            "attr:FormulaBuilder.field",
            "attr:FormulaBuilder.editMode",
            "attr:FormulaBuilder.formulaField",
            "attr:FormulaBuilder.titleField",
            "attr:FormulaBuilder.showHelpIcon",
            "attr:FormulaBuilder.helpIcon",
            "attr:FormulaBuilder.showAutoHideCheckBox",
            "attr:FormulaBuilder.autoHideCheckBox",
            "attr:FormulaBuilder.mathFunctions",
            "attr:FormulaBuilder.cancelled",
            "attr:FormulaBuilder.valuePrefix",
            "attr:FormulaBuilder.valueSuffix",
            "attr:FormulaBuilder.fieldKey",
            "attr:FormulaBuilder.messageLabel",
            "attr:FormulaBuilder.cancelButton",
            "attr:FormulaBuilder.testButton",
            "attr:FormulaBuilder.saveAddAnotherButton",
            "attr:FormulaBuilder.saveButton",
            "attr:FormulaBuilder.autoTest",
            "attr:FormulaBuilder.autoTestDelay",
            "attr:FormulaBuilder.testRecord",
            "attr:SummaryBuilder.testRecord"
        ],
        description:"Fields with values calculated from other fields in the grid.",
        name:"formulaFields",
        seeAlso:[
        ],
        type:"group"
    },
    "method:DataSource.supportsTextMatchStyle":{
        ref:"method:DataSource.supportsTextMatchStyle",
        flags:"A",
        description:" Does this dataSource support the specified \"textMatchStyle\" when performing a filter\n operation against a text field.\n",
        name:"supportsTextMatchStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"textMatchStyle to check. If passed a null value,      assume an exact match is being requested.",
                optional:false,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:StatefulCanvas.showDown":{
        ref:"attr:StatefulCanvas.showDown",
        flags:"IRW",
        description:"Should we visibly change state when the mouse goes down in this object?",
        name:"showDown",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "attr:GridRenderer.snapToCells":{
        ref:"attr:GridRenderer.snapToCells",
        flags:"IRW",
        description:"Should drag-and-drop operations snap the dragged object into line with the nearest cell?",
        name:"snapToCells",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "dragdrop"
        ]
    },
    "attr:RelativeDateItem.defaultValue":{
        ref:"attr:RelativeDateItem.defaultValue",
        flags:"IR",
        description:"Default value to show.  Can be a concrete Date, a ${isc.DocUtils.linkForRef('type:RelativeDateString')} that matches \n one of the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.presetOptions')}, or one of the available \n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.timeUnitOptions','time units')}.  If setting a ${isc.DocUtils.linkForRef('type:TimeUnit')},\n use ${isc.DocUtils.linkForRef('attr:RelativeDateItem.defaultQuantity','defaultQuantity')} to establish a default \n value for the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.quantityField','quantityField')}.",
        name:"defaultValue",
        seeAlso:[
        ],
        valueType:"Date or RelativeDateString or TimeUnit",
        defaultValue:"\"$today\"",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "type:ListGridSortState":{
        ref:"type:ListGridSortState",
        description:"An object containing the stored sort information for a listGrid.\n Note that this object is not intended to be interrogated directly, but may be stored\n (for example) as a blob on the server for state persistence across sessions.",
        name:"ListGridSortState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "attr:FormItemIcon.name":{
        ref:"attr:FormItemIcon.name",
        flags:"IR",
        description:"Identifier for this form item icon. This identifier (if set) should be unique\n within this form item and may be used to get a pointer to the icon object\n via ${isc.DocUtils.linkForRef('method:FormItem.getIcon')}.",
        name:"name",
        seeAlso:[
        ],
        valueType:"identifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon"
    },
    "attr:SelectItem.cachePickListResults":{
        ref:"attr:SelectItem.cachePickListResults",
        flags:"IR",
        description:"For databound pickLists (see ${isc.DocUtils.linkForRef('attr:PickList.optionDataSource')}), by default SmartClient\n will cache and re-use datasets shown by pickLists in an LRU (least recently used) caching\n pattern.\n <P>\n Setting this flag to false avoids this caching for situations where it is too aggressive.",
        name:"cachePickListResults",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "classAttr:Operators.isNullTitle":{
        ref:"classAttr:Operators.isNullTitle",
        flags:"IR",
        description:"Title for the \"isNull\" operator",
        name:"isNullTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"is null\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Hilite.replacementValue":{
        ref:"attr:Hilite.replacementValue",
        flags:"IR",
        description:"HTML which replaces the cell's textual value where this hilite is applied.\n <p>\n Note that sorting, filtering, etc behavior will still operate on the underlying value.\n For example, if there is a date field with the FilterEditor enabled, the default search\n interface will still offer date-range based filtering even if hilites have caused values\n to be displayed as text such as \"current\" or \"past due\".",
        name:"replacementValue",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "method:Menu.setItemEnabled":{
        ref:"method:Menu.setItemEnabled",
        flags:"",
        description:" Enables or disables the menu item according to the value of newState, and redraws\n the menu if necessary. Returns true if there's a change in the enabled state.\n\n",
        name:"setItemEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"MenuItem in question, or it's index",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem or number"
            },
            {
                description:"true to enable the menu item, false to disable it.  If not                             passed, true is assumed",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"true if the enabled state was changed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Menu"
    },
    "method:ListGridField.getAutoFreezePosition":{
        ref:"method:ListGridField.getAutoFreezePosition",
        flags:"",
        description:" When a field has ${isc.DocUtils.linkForRef('attr:ListGridField.autoFreeze','autoFreeze')} set to true, developers can\n implement this method to indicate where in the frozen-fields array this field should\n appear.\n <P>\n Some automatically generated fields, such as\n ${isc.DocUtils.linkForRef('attr:ListGrid.rowNumberField','rowNumberField')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.expansionField','expansionField')} and\n ${isc.DocUtils.linkForRef('attr:ListGrid.checkboxField','checkboxField')}, provide default implementations of this\n method.\n",
        name:"getAutoFreezePosition",
        seeAlso:[
        ],
        returns:{
            description:"the index at which this autoFreeze field should appear in the frozen body",
            type:"number"
        },
        type:"method",
        definingClass:"object:ListGridField",
        groups:[
            "frozenFields"
        ]
    },
    "attr:DynamicForm.synchronousValidation":{
        ref:"attr:DynamicForm.synchronousValidation",
        flags:"IR",
        description:"If enabled, whenever validation is triggered and a request to the server is required,\n user interactivity will be blocked until the request returns. Can be set for the entire\n form or individual FormItems.\n <p>\n If false, the form will try to avoid blocking user interaction until it is strictly\n required. That is until the user attempts to use a FormItem whose state could be\n affected by a server request that has not yet returned.",
        name:"synchronousValidation",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "method:Canvas.getBottom":{
        ref:"method:Canvas.getBottom",
        flags:"",
        description:" Return the bottom coordinate of this object as rendered, relative to its enclosing context,\n in pixels.\n\n",
        name:"getBottom",
        seeAlso:[
        ],
        returns:{
            description:"bottom coordinate",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "positioning",
            "sizing"
        ]
    },
    "class:Layout":{
        methods:[
            "method:Layout.getMemberOffset",
            "method:Layout.setLayoutMargin",
            "method:Layout.getMemberDefaultBreadth",
            "method:Layout.getMemberSizes",
            "method:Layout.reflow",
            "method:Layout.reflowNow",
            "method:Layout.getMember",
            "method:Layout.getMemberNumber",
            "method:Layout.hasMember",
            "method:Layout.getMembers",
            "method:Layout.addMember",
            "method:Layout.addMembers",
            "method:Layout.removeMember",
            "method:Layout.removeMembers",
            "method:Layout.setMembers",
            "method:Layout.showMember",
            "method:Layout.hideMember",
            "method:Layout.setVisibleMember",
            "method:Layout.reorderMember",
            "method:Layout.reorderMembers",
            "method:Layout.membersChanged",
            "method:Layout.getDropComponent",
            "method:Layout.drop",
            "method:Layout.getDropPosition",
            "method:Layout.hideDropLine"
        ],
        ref:"class:Layout",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:Layout.locateMembersBy",
            "attr:Layout.locateMembersType",
            "attr:Layout.members",
            "attr:Layout.overflow",
            "attr:Layout.orientation",
            "attr:Layout.vertical",
            "attr:Layout.vPolicy",
            "attr:Layout.hPolicy",
            "attr:Layout.minMemberSize",
            "attr:Layout.enforcePolicy",
            "attr:Layout.defaultLayoutAlign",
            "attr:Layout.align",
            "attr:Layout.reverseOrder",
            "attr:Layout.paddingAsLayoutMargin",
            "attr:Layout.layoutMargin",
            "attr:Layout.layoutLeftMargin",
            "attr:Layout.layoutRightMargin",
            "attr:Layout.layoutTopMargin",
            "attr:Layout.layoutBottomMargin",
            "attr:Layout.membersMargin",
            "attr:Layout.leaveScrollbarGap",
            "attr:Layout.memberOverlap",
            "attr:Layout.defaultResizeBars",
            "attr:Layout.resizeBar",
            "attr:Layout.resizeBarClass",
            "attr:Layout.resizeBarSize",
            "attr:Layout.animateMembers",
            "attr:Layout.animateMemberTime",
            "attr:Layout.canDropComponents",
            "attr:Layout.dropLineThickness",
            "attr:Layout.showDropLines",
            "attr:Layout.showDragPlaceHolder",
            "attr:Layout.placeHolderProperties",
            "attr:Layout.stackZIndex",
            "attr:Layout.managePercentBreadth",
            "attr:Layout.placeHolderDefaults",
            "attr:Layout.dropLine"
        ],
        description:"Arranges a set of \"member\" Canvases in horizontal or vertical stacks, applying a layout\n policy to determine member heights and widths.\n <P>\n A Layout manages a set of \"member\" Canvases initialized via the \"members\" property.  Layouts\n can have both \"members\", which are managed by the Layout, and normal Canvas children, which\n are unmanaged.\n <P>\n Rather than using the Layout class directly, use the HLayout, VLayout, HStack and VStack\n classes, which are subclasses of Layout preconfigured for horizontal or vertical stacking,\n with the \"fill\" (VLayout) or \"none\" (VStack) ${isc.DocUtils.linkForRef('type:LayoutPolicy','policies')} already set.\n <P>\n Layouts and Stacks may be nested to create arbitrarily complex layouts.\n <P>\n To show a resizer bar after (to the right or bottom of) a layout member, set showResizeBar to\n true on that member component (not on the HLayout or VLayout).  Resizer bars override\n membersMargin spacing.\n <P>\n Like other Canvas subclasses, Layout and Stack components may have % width and height\n values. To create a dynamically-resizing layout that occupies the entire page (or entire\n parent component), set width and height to \"100%\".",
        name:"Layout",
        seeAlso:[
            {
                ref:"type:LayoutPolicy",
                description:"for available policies"
            },
            {
                ref:"class:VLayout",
                description:null
            },
            {
                ref:"class:HLayout",
                description:null
            },
            {
                ref:"class:VStack",
                description:null
            },
            {
                ref:"class:HStack",
                description:null
            },
            {
                ref:"class:LayoutSpacer",
                description:null
            }
        ],
        type:"class"
    },
    "method:FormItem.getDisplayFieldName":{
        ref:"method:FormItem.getDisplayFieldName",
        flags:"",
        description:" Returns the <code>displayField</code> for this item. This will typically be\n specified explicitly via the ${isc.DocUtils.linkForRef('attr:FormItem.displayField')} attribute. However, if \n that property is unset, and the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item is \n hidden in the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}, this method\n will return the title field for the <code>optionDataSource</code>.\n\n",
        name:"getDisplayFieldName",
        seeAlso:[
        ],
        returns:{
            description:"display field name, or null if there is no separate display field to use.",
            type:"String"
        },
        type:"method",
        definingClass:"class:FormItem"
    },
    "attr:NativeCheckboxItem.showLabel":{
        ref:"attr:NativeCheckboxItem.showLabel",
        flags:"IRW",
        description:"Should we show the label text next to the checkbox item.",
        name:"showLabel",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:NativeCheckboxItem"
    },
    "method:Canvas.handleHover":{
        ref:"method:Canvas.handleHover",
        flags:"A",
        description:" Handler fired on a delay when the user hovers the mouse over this hover-target.\n Default implementation will fire <code>this.hover()</code> (if defined), and handle\n showing the hover canvas if <code>this.showHover</code> is true.\n",
        name:"handleHover",
        seeAlso:[
            {
                ref:"attr:Canvas.canHover",
                description:null
            },
            {
                ref:"attr:Canvas.showHover",
                description:null
            },
            {
                ref:"method:Canvas.hover",
                description:null
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "classMethod:Canvas.hiliteCharacter":{
        ref:"classMethod:Canvas.hiliteCharacter",
        flags:"A",
        description:"\t\t\tGiven a string and a character, hilite the first occurrence of the character in the\n          string (if it occurs), preferring uppercase to lowercase.\n\n",
        name:"hiliteCharacter",
        seeAlso:[
        ],
        params:[
            {
                description:"String to return with hilited character",
                optional:false,
                name:"string",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Character to hilite",
                optional:false,
                name:"character",
                defaultValue:null,
                type:"character"
            },
            {
                description:"Prefix to apply to hilighted character - defaults to                                      \"&lt;span style='text-decoration:underline;'&gt;\"",
                optional:true,
                name:"hilitePrefix",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Suffix to apply to hilited character - defaults to                                          \"&lt;/span&gt;\"",
                optional:true,
                name:"hiliteSuffix",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"The string passed in, with the first occurrence of the hilite                          character enclosed by the 'hilitePrefix' and 'hiliteSuffix'",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Canvas",
        groups:[
            "utils"
        ]
    },
    "method:ValuesManager.showFieldErrors":{
        ref:"method:ValuesManager.showFieldErrors",
        flags:"",
        description:" Method to explicitly show the latest set of validation errors present on some field \n within this ValuesManager.<br>\n If the field in question is present as a visible item in a member form, the form item\n will be redrawn to display the error message(s).\n Otherwise ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')} will be fired to allow \n custom handling of hidden errors.\n",
        name:"showFieldErrors",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "attr:ImgButton.iconSize":{
        ref:"attr:ImgButton.iconSize",
        flags:"IR",
        description:"Size in pixels of the icon image.\n <P>\n The <code>iconWidth</code> and <code>iconHeight</code> properties can be used to\n configure width and height separately.",
        name:"iconSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:Chart.chartType":{
        ref:"attr:Chart.chartType",
        flags:"IRW",
        description:"Type of chart to draw, see ${isc.DocUtils.linkForRef('type:ChartType')} for a list of known types.",
        name:"chartType",
        seeAlso:[
        ],
        valueType:"ChartType",
        defaultValue:"\"Column\"",
        type:"attr",
        definingClass:"interface:Chart"
    },
    "attr:ColorPicker.okButton":{
        ref:"attr:ColorPicker.okButton",
        flags:"R",
        description:"\"OK\" button for the ColorPicker",
        name:"okButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "attr:Canvas.canDragScroll":{
        ref:"attr:Canvas.canDragScroll",
        flags:"IRWA",
        description:"If this Canvas is canAcceptDrop:true, when the user drags a droppable widget over\n      an edge of the widget, should we scroll to show the rest of the widget's content?\n      Returned from canvas.shouldDragScroll() if there are scrollbars.",
        name:"canDragScroll",
        seeAlso:[
            {
                ref:"method:Canvas.shouldDragScroll",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragging"
        ]
    },
    "attr:TreeGrid.folderDropImage":{
        ref:"attr:TreeGrid.folderDropImage",
        deprecated:"as part of SmartClient release 5.5 in favor of ${isc.DocUtils.linkForRef('attr:TreeGrid.folderIcon')}",
        flags:"IRW",
        description:"The filename of the icon displayed for a folder node that will accept drag-and-drop\n data when the mouse is released.",
        name:"folderDropImage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "attr:Calendar.canEditLaneField":{
        ref:"attr:Calendar.canEditLaneField",
        flags:"IR",
        description:"Name of the field on each ${isc.DocUtils.linkForRef('object:CalendarEvent')} that determines whether that event can be \n moved between lanes.",
        name:"canEditLaneField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"canEditLane\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:Splitbar.targetAfter":{
        ref:"attr:Splitbar.targetAfter",
        flags:"IRWA",
        description:"Is the ${isc.DocUtils.linkForRef('attr:Splitbar.target')} being shown before or after the bar? This property is\n automatically populated for <code>splitbar</code>s created by a layout.",
        name:"targetAfter",
        seeAlso:[
            {
                ref:"attr:Splitbar.invertClosedGripIfTargetAfter",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar"
    },
    "attr:ListGrid.useCellRollOvers":{
        ref:"attr:ListGrid.useCellRollOvers",
        flags:"IRW",
        description:"Are rollovers cell-level or row-level?",
        name:"useCellRollOvers",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "class:MultiSortDialog":{
        methods:[
            "method:MultiSortDialog.getNumLevels",
            "method:MultiSortDialog.getSortLevel",
            "method:MultiSortDialog.getSort",
            "method:MultiSortDialog.validate"
        ],
        ref:"class:MultiSortDialog",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:MultiSortDialog.askForSort"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
            "attr:MultiSortDialog.title",
            "attr:MultiSortDialog.addLevelButtonTitle",
            "attr:MultiSortDialog.deleteLevelButtonTitle",
            "attr:MultiSortDialog.copyLevelButtonTitle",
            "attr:MultiSortDialog.levelUpButtonTitle",
            "attr:MultiSortDialog.levelDownButtonTitle",
            "attr:MultiSortDialog.invalidListPrompt",
            "attr:MultiSortDialog.propertyFieldTitle",
            "attr:MultiSortDialog.directionFieldTitle",
            "attr:MultiSortDialog.ascendingTitle",
            "attr:MultiSortDialog.descendingTitle",
            "attr:MultiSortDialog.firstSortLevelTitle",
            "attr:MultiSortDialog.otherSortLevelTitle",
            "attr:MultiSortDialog.initialSort",
            "attr:MultiSortDialog.maxLevels",
            "attr:MultiSortDialog.applyButtonTitle",
            "attr:MultiSortDialog.cancelButtonTitle",
            "attr:MultiSortDialog.applyButton",
            "attr:MultiSortDialog.cancelButton",
            "attr:MultiSortDialog.addLevelButton",
            "attr:MultiSortDialog.deleteLevelButton",
            "attr:MultiSortDialog.copyLevelButton",
            "attr:MultiSortDialog.levelUpButton",
            "attr:MultiSortDialog.levelDownButton",
            "attr:MultiSortDialog.fields",
            "attr:MultiSortDialog.optionsGrid"
        ],
        description:"A dialog that allows the user to set up complex sorting arrangements by defining a group of\n ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n <P>\n Each ${isc.DocUtils.linkForRef('object:SortSpecifier')} applies to a single property and direction - so, for instance, in \n a grid with two columns, <code>year</code> and <code>monthNumber</code>, you could sort first \n by <code>year</code> in descending order and then by <code>monthNumber</code> in ascending \n order.  This would producing a grid sorted by year from largest (most \n recent) to smallest (least recent) and, within each year, by monthNumber from smallest \n (January) to largest (December).",
        name:"MultiSortDialog",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ImgButton.setAutoFit":{
        ref:"method:ImgButton.setAutoFit",
        flags:"",
        description:" Setter method for the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.autoFit')} property. Pass in true or false to turn\n autoFit on or off. When autoFit is set to <code>false</code>, canvas will be resized to\n it's previously specified size.\n",
        name:"setAutoFit",
        seeAlso:[
        ],
        params:[
            {
                description:"New autoFit setting.",
                optional:false,
                name:"autoFit",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ImgButton"
    },
    "group:sqlDataSource":{
        ref:"group:sqlDataSource",
        title:"SQL DataSources",
        treeLocation:[
            "Client Reference/Data Binding/DataSource"
        ],
        refs:[
            "attr:DataSourceField.sequenceName",
            "attr:DataSourceField.implicitSequence"
        ],
        description:"The SmartClient Server supports comprehensive, codeless SQL connectivity for DataSources\n defined in XML.  Our SQL connectivity is mature, feature-rich, protected against injection\n attacks and easily customizable to support user-written SQL and additional business logic\n of any complexity.  ${isc.DocUtils.linkForRef('group:sqlVsJPA','This article')} compares the built-in SQL DataSource\n to other persistence approaches based on Javabeans.\n <P>\n To use the built-in SQL engine, declare a ${isc.DocUtils.linkForRef('class:DataSource')} in XML format with\n ${isc.DocUtils.linkForRef('attr:DataSource.serverType')} set to \"sql\", and place it in the shared dataSources directory\n ([webroot]/shared/ds by default) in a file called \"[dataSourceId].ds.xml\".\n <p>\n You can then use the ${isc.DocUtils.linkForRef('group:adminConsole','Admin Console')} to configure database access,\n as well as to automatically create and populate a database table based on your DataSource.\n By default, DataSources will use the \"default database\" from the admin console, however you\n can set ${isc.DocUtils.linkForRef('attr:DataSource.dbName')} to the name of a specific database configuration you have\n configured via the Admin Console.\n <P>\n The list of databases known to work with the the built-in SQL logic is as follows:\n <p>\n <table class='normal'>\n <tr><td width=40></td><td width=400><i>HSQLDB 1.7.x, 1.8.x, 2.0.x, 2.2.x, 2.3.x</i></td><td></td></tr>\n <tr><td></td><td><i>IBM DB2 8.x, 9.x, 10.x</i></td><td></td></tr>\n <tr><td></td><td><i>IBM DB2 for i (formerly known as DB2 for i5/OS) V5R4M0 onwards</i></td><td></td></tr>\n <tr><td></td><td><i>Firebird 2.5</i></td><td></td></tr>\n <tr><td></td><td><i>Informix 11.5+, 12.1</i></td><td></td></tr>\n <tr><td></td><td><i>MS SQL Server 2000, 2005, 2008, 2008 R2, 2012, 2014</i></td><td></td></tr>\n <tr><td></td><td><i>MySQL 3.2.x, 4.0.x, 4.1.x, 5.0.x, 5.1.x, 5.5.x, 5.6x</i></td><td></td></tr>\n <tr><td></td><td><i>Oracle 8.0.5, 8i, 9i, 10g, 11g, 12c</i></td><td></td></tr>\n <tr><td></td><td><i>PostgreSQL 7.x, 8.x, 9.x</i></td><td></td></tr>\n </table>\n <p>We also support a generic SQL92 database connection which works for basic CRUD operations\n with any database product that supports standard SQL92 syntax and data types, plus a couple \n of widely-implemented features that are not actually part of the standard.  Specifically,\n this means we do not support:<ul>\n <li>Sequences</li>\n <li>Paging via SQL limit queries</li>\n <li>${isc.DocUtils.linkForRef('attr:DataSource.autoJoinTransactions','Automatic transaction management')}\n <li>Long text values (there is no real definition of \"long\" here - we try to use a standard\n VARCHAR, but different databases will support different maximum values for this)</li>\n <li>Databases that do not implement the widely-supported LOWER() function</li>\n <li>Databases that do not support the ability to perform string-type operations on numeric\n columns - for example, <code>myNumericColumn LIKE '%5%'</code></li>\n </ul>\n <p>You will also need a JDBC driver for your specific database. Licensing restrictions\n prevent us including any JDBC driver other than the one for HSQLDB.  However, you\n can download these drivers for free from the vendors' websites.  If your specific database\n server or version is not listed above, please go to the\n <a href=\"http://forums.smartclient.com\">SmartClient forums</a> for assistance.\n <P>\n You can also connect to an existing database table - the Visual Builder DataSource Wizard\n (\"New\" button in DataSources pane) allows you to pick an existing database table and have a\n DataSource generated from it.  The Batch DataSource Generator tool will allow you to\n generate DataSources for any number of SQL DataSources, and customize the process so that\n organization-specific rules are applied (eg ignoring certain columns, or using naming\n conventions to generate more complete DataSources).\n <P>\n Once you have your SQL DataSource connected to a table, in a default SDK installation,\n DSRequests for your DataSource will be sent to the default\n ${isc.DocUtils.linkForRef('classAttr:RPCManager.actionURL','actionURL')}, and hence handled automatically, without you having\n to write any Java code, by the ${isc.DocUtils.linkForRef('group:servletDetails','IDACall servlet registered in web.xml')}.\n IDACall is a very simple servlet that just calls the server-side method\n dsRequest.execute() for all inbound requests.  For more details on how DataSource requests\n are processed by SmartClient Server, and how you can alter and add to this processing, see\n this description of ${isc.DocUtils.linkForRef('group:serverDataIntegration','server data integration')}.",
        name:"sqlDataSource",
        seeAlso:[
        ],
        type:"group",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:Canvas.scrollToPercent":{
        ref:"method:Canvas.scrollToPercent",
        flags:"",
        description:"  Scroll this widget to some position specified as a percentage of scroll size in either\n (or both) direction(s).\n\n",
        name:"scrollToPercent",
        seeAlso:[
        ],
        params:[
            {
                description:"Left Percentage position to scroll to                                        Will accept either a numeric percent value, or a\n                                        string like \"10%\".",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"number | string"
            },
            {
                description:"Top Percentage position to scroll to                                       Will accept either a numeric percent value, or a\n                                       string like \"10%\".",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"number | string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "attr:ListGrid.removeFieldTitle":{
        ref:"attr:ListGrid.removeFieldTitle",
        flags:"IRWA",
        description:"The title to use for the ${isc.DocUtils.linkForRef('attr:ListGrid.removeFieldDefaults','remove field')}.\n <P>\n By default this title is not displayed in the remove column header button as the\n ${isc.DocUtils.linkForRef('attr:ListGrid.removeFieldDefaults')} sets ${isc.DocUtils.linkForRef('attr:ListGridField.showTitle')} to <code>false</code>.",
        name:"removeFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.canEditTitles":{
        ref:"attr:ListGrid.canEditTitles",
        flags:"IRW",
        description:"If set to true, the ${isc.DocUtils.linkForRef('attr:ListGrid.useAdvancedFieldPicker','advanced field picker')} provides\n an interface allowing users to modify fields' titles.\n <P>\n Note that when enabled, the ${isc.DocUtils.linkForRef('method:ListGrid.getFieldState','field state')} for this component\n will include field titles.",
        name:"canEditTitles",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classMethod:EventHandler.getWheelDelta":{
        ref:"classMethod:EventHandler.getWheelDelta",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('classMethod:EventHandler.getWheelDeltaY')}",
        flags:"",
        description:" Applies to ${isc.DocUtils.linkForRef('method:Canvas.mouseWheel','mouseWheel')} events only.\n Returns a numeric value indicating how far the mouse wheel was rotated. This value will be\n positive if the user scrolled the mousewheel forward or up, or negative if scrolled in the\n other direction. For a standard wheel-mouse, an increment of 1 relates to the smallest\n possible rotation of the mouse wheel. For other scrolling devices, such as scroll \n gestures on a track pad, wheel delta may be reported in finer grained increments \n (causing this method to return a fractional value).\n <P>\n Note that behavior for trackpad scroll-gestures may differ by browser, but where \n separate vertical and horizontal scroll information is available, this method\n refers to a vertical scroll gesture.\n <P>\n Developers should also be aware\n that some browsers and operating systems allow the user to configure the sensitivity\n of the mouse wheel or trackpad, which may change this value.\n\n",
        name:"getWheelDelta",
        seeAlso:[
        ],
        returns:{
            description:"numeric value indicating how far the mouse wheel was rotated.",
            type:"float"
        },
        type:"classMethod",
        definingClass:"class:EventHandler"
    },
    "type:TEXTAREA_WRAP":{
        ref:"type:TEXTAREA_WRAP",
        values:[
            {
                description:"don't allow wrapping at all",
                value:"TextAreaItem.OFF"
            },
            {
                description:"when the entered text reaches the edge of the text area,                                  wrap visibly but don't include line breaks in the textarea\n                                  value",
                value:"TextAreaItem.SOFT"
            },
            {
                description:"when the entered text reaches the edge of the text area,                                   insert a line break",
                value:"TextAreaItem.HARD"
            }
        ],
        description:null,
        name:"TEXTAREA_WRAP",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:DataSourceField.valueWriteXPath":{
        ref:"attr:DataSourceField.valueWriteXPath",
        flags:"IR",
        description:"Alternative XPath expression used to set the field's value.\n <P>\n If is not set, then ${isc.DocUtils.linkForRef('attr:DataSourceField.valueXPath','dataSourceField.valueXPath')} is\n used, see its description for details.",
        name:"valueWriteXPath",
        seeAlso:[
            "DataSource.setProperties() (Java API)",
            "DSResponse.setData() (Java API)"
        ],
        valueType:"XPathExpression",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "clientDataIntegration"
        ]
    },
    "method:DataBoundComponent.getDragData":{
        ref:"method:DataBoundComponent.getDragData",
        flags:"A",
        description:"\n During a drag-and-drop interaction, this method returns the set of records being dragged out\n of the component.  In the default implementation, this is the list of currently selected\n records.<p>\n \n This method is consulted by ${isc.DocUtils.linkForRef('method:ListGrid.willAcceptDrop')}.\n\n",
        name:"getDragData",
        seeAlso:[
        ],
        params:[
            {
                description:"source component from which the records will be transferred",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"DataBoundComponent"
            }
        ],
        returns:{
            description:"Array of ${isc.DocUtils.linkForRef('object:Record')}s that are currently selected.",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragging",
            "data"
        ]
    },
    "attr:Window.bodyDefaults":{
        ref:"attr:Window.bodyDefaults",
        flags:"IRWA",
        description:"Default properties for the body of the Window<br>\n You can change the class-level bodyDefaults for all Windows by changing this item\n or set  instance.body to be another object of properties to override for your instance only",
        name:"bodyDefaults",
        seeAlso:[
        ],
        valueType:"object",
        defaultValue:"...",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "attr:FilterBuilder.validateOnChange":{
        ref:"attr:FilterBuilder.validateOnChange",
        flags:"IR",
        description:"If true (the default), validates each entered value when it changes, to make sure it is a \n a valid value of its type (valid string, number, and so on).  No other validation is \n carried out.  If you switch this property off, it is still possible to validate the \n <code>FilterBuilder</code> by calling ${isc.DocUtils.linkForRef('method:FilterBuilder.validate')} from your own code.",
        name:"validateOnChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:ProcessSequence.elements":{
        ref:"attr:ProcessSequence.elements",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('class:ProcessElement')}s in this sequence.",
        name:"elements",
        seeAlso:[
        ],
        valueType:"Array of ProcessElement",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ProcessSequence"
    },
    "attr:FacetChart.errorLineProperties":{
        ref:"attr:FacetChart.errorLineProperties",
        flags:"IR",
        description:"Properties of the lines used to draw error bars (short, horizontal lines at the low\n and high metric values, and a vertical connecting line).\n <p>\n Note that the ${isc.DocUtils.linkForRef('attr:DrawItem.lineColor','lineColor')} property has no effect as the color\n of the error bars is derived from the color of the data line.",
        name:"errorLineProperties",
        seeAlso:[
            {
                ref:"attr:FacetChart.errorBarColorMutePercent",
                description:null
            }
        ],
        valueType:"DrawLine Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:FilterClause.showRemoveButton":{
        ref:"attr:FilterClause.showRemoveButton",
        flags:"IR",
        description:"If set, show a button for this clause allowing it to be removed.",
        name:"showRemoveButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "attr:ComboBoxItem.optionDataSource":{
        ref:"attr:ComboBoxItem.optionDataSource",
        flags:"IRA",
        description:"If set, this FormItem will derive data to show in the PickList by fetching records from\n the specified <code>optionDataSource</code>.  The fetched data will be used as a\n ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} by extracting the\n ${isc.DocUtils.linkForRef('attr:FormItem.valueField','valueField')} and ${isc.DocUtils.linkForRef('attr:FormItem.displayField','displayField')} in\n the loaded records, to derive one valueMap entry per record loaded from the\n optionDataSource.  Multiple fields from the fetched data may be shown in the pickList by\n setting ${isc.DocUtils.linkForRef('attr:ComboBoxItem.pickListFields')}.\n <P>\n The data will be retrieved via a \"fetch\" operation on the DataSource, passing the \n ${isc.DocUtils.linkForRef('attr:PickList.pickListCriteria')} (if set) as criteria, and passing\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.optionFilterContext')} (if set) as DSRequest Properties.\n <P>\n The fetch will be triggered when the pickList is first shown, or, you can set\n ${isc.DocUtils.linkForRef('attr:SelectItem.autoFetchData','autoFetchData:true')} to fetch when the FormItem is\n first drawn.  \n <P>\n Note that providing an initial value when\n ${isc.DocUtils.linkForRef('attr:FormItem.fetchMissingValues','fetchMissingValues')} is enabled, or enabling\n ${isc.DocUtils.linkForRef('attr:SelectItem.defaultToFirstOption','defaultToFirstOption')}, can also cause a fetch to\n be initiated immediately upon form creation.  You can also call ${isc.DocUtils.linkForRef('method:PickList.fetchData')}\n at any time to manually trigger a fetch.\n <P>\n Data paging is automatically enabled if the optionDataSource supports it.  As the\n pickList is scrolled by the user, requests for additional data will be automatically\n issued.\n <P>\n For a pickList attached to a ${isc.DocUtils.linkForRef('class:ComboBoxItem','ComboBoxItem')}, new fetches are \n issued as the user types, with criteria set as described under \n ${isc.DocUtils.linkForRef('method:ComboBoxItem.getPickListFilterCriteria')}.\n If your dataSource is not capable of filtering results by search criteria (eg, the\n dataSource is backed by an XML flat file), you can set ${isc.DocUtils.linkForRef('attr:ComboBoxItem.filterLocally')} to have the\n entire dataset loaded up front and filtering performed in the browser.  This disables\n data paging.\n <P>\n Note that if a normal, static ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','valueMap')} is <b>also</b> specified\n for the field (either directly in the form item or as part of the field definition in\n the dataSource), it will be preferred to the data derived from the optionDataSource for\n whatever mappings are present.",
        name:"optionDataSource",
        seeAlso:[
        ],
        valueType:"DataSource | String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "classMethod:isc.timeStamp":{
        ref:"classMethod:isc.timeStamp",
        flags:"",
        description:"  Shorthand for <code>new Date().getTime();</code>, this returns a timeStamp - a large number\n  which is incremented by 1 every millisecond.  Can be used to generate unique identifiers,\n  or perform timing tasks.\n\n",
        name:"timeStamp",
        seeAlso:[
        ],
        returns:{
            description:"a large integer (actually the number of milliseconds since 1/1/1970)",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:ListGrid.freezeOnLeftText":{
        ref:"attr:ListGrid.freezeOnLeftText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid and\n ${isc.DocUtils.linkForRef('attr:ListGrid.canFreezeFields','this.canFreezeFields')} is true, this string will be shown as the\n title for the menu item to freeze fields on the left of the scrollable body.",
        name:"freezeOnLeftText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Freeze on left\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:FileLoader.cacheStretchImgStates":{
        ref:"classMethod:FileLoader.cacheStretchImgStates",
        flags:"",
        description:"\n Caches a set of state stretch images derived from a base image.  This is useful for caching a set\n of images for a single component.  For example this code:\n <pre>\n isc.FileLoader.cacheStretchImgStates(\"/isomorphic/skins/SmartClient/images/button/button.png\",\n                                      \"Down,Over\");\n </pre>\n Will cause the following images to be cached:\n <pre>\n /isomorphic/skins/SmartClient/images/button/button_start.png\n /isomorphic/skins/SmartClient/images/button/button_stretch.png\n /isomorphic/skins/SmartClient/images/button/button_end.png\n /isomorphic/skins/SmartClient/images/button/button_Down_start.png\n /isomorphic/skins/SmartClient/images/button/button_Down_stretch.png\n /isomorphic/skins/SmartClient/images/button/button_Down_end.png\n /isomorphic/skins/SmartClient/images/button/button_Over_start.png\n /isomorphic/skins/SmartClient/images/button/button_Over_stretch.png\n /isomorphic/skins/SmartClient/images/button/button_Over_end.png\n </pre>\n\n",
        name:"cacheStretchImgStates",
        seeAlso:[
            {
                ref:"classMethod:FileLoader.cacheImgStates",
                description:null
            }
        ],
        params:[
            {
                description:"List of base image URLs from which stateful names are to be                                    derived.  This can either be a\n                                    string with comma separated baseURLs or an Array of baseURLs.",
                optional:false,
                name:"baseURLs",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"List of states to load.  If none specified, The following                                    default list will be used:\n                                    \"Down,Over,Selected,Selected_Down,Selected_Over\".  This can\n                                    either be a string with comma separated states or an Array\n                                    of states",
                optional:true,
                name:"states",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"List of StretchImg pieces to cache.  If not specified, the                                    following list will be used: \"start,stretch,end\".  This can\n                                    either be a string with comma separated piece names or an Array\n                                    of piece names.",
                optional:true,
                name:"pieces",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when the last of the specified URLs                                      has completed caching.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "group:serverSummaries":{
        ref:"group:serverSummaries",
        title:"Server Summaries",
        refs:[
            "attr:DSRequest.summaryFunctions",
            "attr:DSRequest.groupBy",
            "attr:OperationBinding.summaryFunctions",
            "attr:OperationBinding.groupBy",
            "attr:DataSourceField.includeSummaryFunction",
            "attr:DataSource.allowClientRequestedSummaries",
            "attr:DataSourceField.allowClientRequestedSummaries",
            "type:SummaryFunction"
        ],
        description:"In SmartClient, \"summarization\" refers to applying functions to DataSource fields to obtain\n <i>summary records</i> calculated from the values of multiple DataSource records.  \n <p>\n For example, by applying an \"average\" function to a DataSourceField representing the dollar\n value of an order, you can calculate the average dollar amount of a set of orders.\n <p>\n Client-side calculation of summary records is a \n ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary','listGrid feature')}.  Server Summaries is a feature of the\n SmartClient Server allowing similar summaries to be computed server-side, generally by the\n database engine itself.  \n <p>\n See also the related feature which allows a single field to receive a value summarized from\n several related records, ${isc.DocUtils.linkForRef('attr:DataSourceField.includeSummaryFunction')}.\n <p>\n <b>The Server Summaries feature is available with Power or better licenses only.</b>  See \n <a href=\"http://smartclient.com/product\">smartclient.com/product</a> for details.\n <p>\n Summarization can be statically configured directly in a .ds.xml file, or can be dynamically\n configured when sending a ${isc.DocUtils.linkForRef('class:DSRequest')}, either client-side or server-side.  The\n following examples all assume a DataSource with fields like this:\n <pre>\n\t&lt;DataSource ID=\"dsOrders\" ...&gt;\n\t\t&lt;fields&gt;\n\t\t\t&lt;field name=\"customerName\" type=\"text\" /&gt;\n\t\t\t&lt;field name=\"orderDate\" type=\"date\" /&gt;\n\t\t\t&lt;field name=\"deliveryStatus\" type=\"string\" /&gt;\n\t\t\t...\n\t\t&lt;/fields&gt;\n\t&lt;/DataSource&gt;\n </pre>\n <p>\n <h3>Summaries in DataSource .ds.xml files</h3>\n <p>\n You can declare summarization directly on an ${isc.DocUtils.linkForRef('class:OperationBinding','operationBinding')} in a\n .ds.xml file, using ${isc.DocUtils.linkForRef('attr:OperationBinding.summaryFunctions')} and\n ${isc.DocUtils.linkForRef('attr:OperationBinding.groupBy')}.  For example:\n <pre>\n\t&lt;DataSource ID=\"dsOrders\" ...&gt;\n    ...\n    &lt;operationBindings&gt;\n      &lt;operationBinding operationType=\"fetch\" operationId=\"lastOrderDateByCustomer\"&gt;\n        &lt;summaryFunctions&gt;\n          &lt;orderDate&gt;max&lt;/orderDate&gt;\n        &lt;/summaryFunctions&gt;\n        &lt;groupBy&gt;customerName&lt;/groupBy&gt;\n      &lt;/operationBinding&gt;\n\t  &lt;/operationBindings&gt;\n\t&lt;/DataSource&gt;\n </pre>\n This would return summary records representing the most recent order per customer.\n Represented in JSON, the returned records would look like:\n <pre>\n   { customerName: \"JBar Struts\", orderDate:\"2012/02/05\" },\n   { customerName: \"KFoo Widgets\", orderDate:\"2012/03/01\" },\n   ...\n </pre>\n This is analogous to the result of a SQL query like:\n <pre>\n\tSELECT\n\t\tmax(order.orderData)\n\t\torder.customerName\n\tFROM\n\t\torder\n\tGROUP BY\n\t\torder.customerName\n </pre>\n Note that, as with SQL, the returned records will <i>only</i> include the fields where summary\n functions were applied or which were used for grouping - \"deliveryDate\" and other fields are\n not included because in general, summary records may represent data from more than one\n record (there may be more than one record with the \"max\" value, and consider also \"sum\" or\n \"avg\" functions), so it's ambiguous which record's values should be returned for\n non-grouped, non-summarized fields.\n <p>\n <h3>Dynamically Requested Summaries</h3>\n <p>\n ${isc.DocUtils.linkForRef('attr:DSRequest.summaryFunctions')} and ${isc.DocUtils.linkForRef('attr:DSRequest.groupBy')} allow you to dynamically\n request a server summary from client-side code.  For example:\n <smartclient>\n <pre>\n\tdsOrders.fetchData(null, <i>callback</i>, {\n\t\tsummaryFunctions:{\"orderDate\": \"max\"}\n\t\tgroupBy:[\"customerName\"],\n\t});\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n  DSRequest requestProperties = new DSRequest();\n  requestProperties.setGroupBy(\"customerName\");\n  requestProperties.setSummaryFunctions(new HashMap() {{\n     put(\"orderDate\", SummaryFunctionType.MAX);\n  }});\n  dsOrders.fetchData(null, <i>callback</i>, request);\n </pre>\n </smartgwt>\n By default such requests are allowed, but such requests can be disallowed on a\n per-DataSource or system-wide level if you have concerns - see\n ${isc.DocUtils.linkForRef('attr:DataSource.allowClientRequestedSummaries')}.\n <p>\n You can also dynamically request summaries from server-side code (for example, in a\n ${isc.DocUtils.linkForRef('class:DMI')} method):\n <pre>\n   DSRequest dsRequest = new DSRequest(\"dsOrders\", \"fetch\");\n   dsRequest.setSummaryFunctions(new HashMap() {{\n\t    put(\"orderDate\", SummaryFunctionType.MAX);\n   }});\n   dsRequest.setGroupBy(\"customerName\");\n   DSResponse dsResponse = dsRequest.execute();\n </pre>\n <p>\n <h3>Criteria, Sort &amp; Data Paging</h3>\n <p>\n Criteria and sort directions are supported for queries that involve server summarization.\n <p>\n Criteria apply to record <b>before</b> summaries are applied.  For example, if the \"avg\"\n function is being applied to a \"price\" field, criteria like \"price &lt; 5\" will eliminate\n records where price is less than 5 <i>before</i> the average price is calculated.  This\n means that client-side filtering may not work as expected with summarized results: \n client-side filter criteria are necessarily applied <i>after</i> summary functions have been\n applied, so may not match the server's behavior.  You can set\n ${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering')} to disable client-side filtering on a grid via\n ${isc.DocUtils.linkForRef('attr:ListGrid.dataProperties')}.  Or individual fields can be marked\n ${isc.DocUtils.linkForRef('attr:ListGridField.canFilter','canFilter:false')}.\n <p>\n Sort directions may only target fields that are returned by the query (only those fields\n included in <code>groupBy</code> or where a <code>summaryFunction</code> was applied).\n <p>\n Data paging is also supported, however, consider that for aggregated queries, when asked for\n a second page of data, the database is likely to have to repeat all the work of calculating\n aggregated values.  Turning paging off or setting a generous ${isc.DocUtils.linkForRef('attr:ListGrid.dataPageSize')} is\n advised.\n <p>\n <h3>SQL Templating</h3>\n <p>\n ${isc.DocUtils.linkForRef('group:customQuerying','SQL Templating')} is also supported with server summaries.\n Clause-by-clause substitution works normally.\n <p>\n <h3>Summarizing without Grouping</h3>\n <p>\n Declaring just &lt;summaryFunctions&gt; without declaring &lt;groupBy&gt; is allowed.  This\n will always give you exactly one summary record in the result, which will represent the\n summary functions as applied to all records that match the criteria in the DSRequest.\n <p>\n <h3>Grouping without Summarizing</h3>\n <p>\n Declaring just &lt;groupBy&gt; without &lt;summaryFunctions&gt; is also allowed.  This gives\n results similar to a SQL \"select distinct\": one record per distinct set of values for the\n grouped fields.  This kind of result can be used in various ways; one common use case is\n populating a ComboBoxItem with a list of existing values for a field that already appear in\n DataSource records.",
        name:"serverSummaries",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FormItem.hintStyle":{
        ref:"attr:FormItem.hintStyle",
        flags:"IRW",
        description:"CSS class for the \"hint\" string.",
        name:"hintStyle",
        setter:[
            "setHintStyle"
        ],
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"formHint\"",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "method:Canvas.moveTo":{
        ref:"method:Canvas.moveTo",
        flags:"",
        description:" Moves the widget so that its top-left corner is at the specified coordinates.\n <P>\n This method will also accept a single parameter as an object array with left and top given\n as properties.\n\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"x-coordinate to move to in LOCAL coordinates\t\t\t\t\t\t                       or Object with left and top properties.",
                optional:true,
                name:"left",
                defaultValue:null,
                type:"number or Object"
            },
            {
                description:"y-coordinate to move to in LOCAL coordinates",
                optional:true,
                name:"top",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether the component actually moved",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('move')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:SectionStack.styleName":{
        ref:"attr:SectionStack.styleName",
        flags:"IR",
        description:"Default CSS style for the SectionStack as a whole.",
        name:"styleName",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"sectionStack\"",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "attr:FileItem.uploadItem":{
        ref:"attr:FileItem.uploadItem",
        flags:"RA",
        description:"The ${isc.DocUtils.linkForRef('class:UploadItem')} created automatically and displayed in the \n ${isc.DocUtils.linkForRef('attr:FileItem.editForm')} when ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')} is true.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>fileItem.uploadItemDefaults</code> and\n <code>fileItem.uploadItemProperties</code>.\n <P>",
        name:"uploadItem",
        seeAlso:[
        ],
        valueType:"AutoChild UploadItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "upload"
        ]
    },
    "method:ColumnTree.fetchData":{
        ref:"method:ColumnTree.fetchData",
        flags:"",
        description:" Uses a \"fetch\" operation on the current ${isc.DocUtils.linkForRef('class:DataSource','grid.dataSource')} to retrieve data\n that matches the provided criteria, and displays the matching data in this component as a\n tree.\n <P>\n This method will create a ${isc.DocUtils.linkForRef('class:ResultTree')} to manage tree data, which will\n subsequently be available as <code>columnTree.data</code>.  DataSource records\n returned by the \"fetch\" operation are linked into a tree structure according to\n ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')} and\n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreignKey')} declarations on DataSource fields.  See the\n ${isc.DocUtils.linkForRef('group:treeDataBinding')} topic for complete details.\n <P>\n By default, the created ResultTree will use folder-by-folder load on demand, asking the\n server for the children of each folder as the user opens it.\n <P>\n The ${isc.DocUtils.linkForRef('class:ResultTree')} created by <code>fetchData()</code> can be customized by setting\n ${isc.DocUtils.linkForRef('attr:ColumnTree.dataProperties')} to an Object containing properties and methods to apply to\n the created ResultTree.  For example, the property that determines whether a node is a\n folder (${isc.DocUtils.linkForRef('attr:Tree.isFolderProperty','isFolderProperty')}) can be customized, or\n level-by-level loading can be disabled via\n ${isc.DocUtils.linkForRef('attr:ResultTree.loadDataOnDemand','loadDataOnDemand:false')}.\n <P>\n The callback passed to <code>fetchData</code> will fire once, the first time that data is\n loaded from the server.  If using folder-by-folder load on demand, use the\n ${isc.DocUtils.linkForRef('method:ResultTree.dataArrived')} notification to be notified each time new nodes are loaded.\n <P>\n Note that, if criteria are passed to <code>fetchData()</code>, they will be passed every\n time a new \"fetch\" operation is sent to the server.  This allows you to retrieve multiple\n different tree structures from the same DataSource.  However note that the server is expected\n to always respond with an intact tree - returned nodes which do not have parents are dropped\n from the dataset and not displayed.\n\n",
        name:"fetchData",
        seeAlso:[
        ],
        params:[
            {
                description:"Search criteria. If a ${isc.DocUtils.linkForRef('class:DynamicForm')} is passed                                          in as this argument instead of a raw criteria \n                                          object, will be derived by calling\n                                          ${isc.DocUtils.linkForRef('method:DynamicForm.getValuesAsCriteria')}",
                optional:true,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"callback to invoke when a fetch is complete. Fires                                          only if server contact was required",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the DSRequest                                          that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:DrawSector.knobs":{
        ref:"attr:DrawSector.knobs",
        flags:"IR",
        description:"<b>NOTE:</b> DrawSector items do not support knobs.",
        name:"knobs",
        seeAlso:[
        ],
        valueType:"Array of KnobType",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('drawKnobs')}"
        ],
        definingClass:"class:DrawSector"
    },
    "attr:DataSourceField.summaryFunction":{
        ref:"attr:DataSourceField.summaryFunction",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showGridSummary')} or ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummary')} is true,\n this attribute can be used to specify\n an explicit ${isc.DocUtils.linkForRef('type:SummaryFunction')} for calculating the summary value to\n display.\n <P>\n If an array of summaryFunctions is specified, they will be executed in turn and the\n grid will show multiple summary rows at the grid or group level (or both)\n containing the resulting values.",
        name:"summaryFunction",
        seeAlso:[
        ],
        valueType:"SummaryFunction",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DataSourceField"
    },
    "method:DrawShape.setCommands":{
        ref:"method:DrawShape.setCommands",
        flags:"",
        description:" Sets the ${isc.DocUtils.linkForRef('attr:DrawShape.commands','commands')} that define this shape.\n",
        name:"setCommands",
        seeAlso:[
        ],
        params:[
            {
                description:"the new commands.",
                optional:false,
                name:"commands",
                defaultValue:null,
                type:"Array of DrawShapeCommand"
            }
        ],
        type:"method",
        definingClass:"class:DrawShape"
    },
    "classMethod:XMLTools.toJS":{
        ref:"classMethod:XMLTools.toJS",
        flags:"",
        description:" Translates an XML fragment to JavaScript collections.  This method works just like the\n server-side method XML.toJS(Element, Writer):\n <ul>\n <li>  Elements become JavaScript Objects with each attribute becoming a property\n <li>  Subelements with just text (no child elements or attributes) become properties\n <li>  Subelements with child elements or attributes become sub objects\n </ul>\n For example, if you pass the following fragment to this method:\n <pre>\n &lt;foo&nbsp;bar=\"zoo\"&gt;\n     &nbsp;&nbsp;&lt;x&gt;y&lt;/x&gt;\n &lt;/foo&gt;\n </pre>\n You will get back the following JS structure: \n <pre>\n { bar:\"zoo\", x:\"y\"}\n </pre>\n All atomic property values will be of String type.  Use ${isc.DocUtils.linkForRef('method:DataSource.recordsFromXML')}\n to do schema-driven XML to JS transform, which can produce correctly typed values.\n \n",
        name:"toJS",
        seeAlso:[
        ],
        params:[
            {
                description:"The element to transform to JS",
                optional:false,
                name:"element",
                defaultValue:null,
                type:"XMLElement or XMLDocument"
            }
        ],
        returns:{
            description:"The resulting JavaScript collection.",
            type:"Object"
        },
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('xmlServerValidationErrors')}"
        ],
        definingClass:"class:XMLTools"
    },
    "attr:TreeGrid.canReparentNodes":{
        ref:"attr:TreeGrid.canReparentNodes",
        flags:"IRW",
        description:"If set this property allows the user to reparent nodes by dragging them from their\n current folder to a new folder.<br>\n <b>Backcompat:</b> For backwards compatibility with versions prior to SmartClient 1.5,\n if this property is unset, but <code>this.canAcceptDroppedRecords</code> is true, we\n allow nodes to be dragged to different folders.",
        name:"canReparentNodes",
        seeAlso:[
            {
                ref:"attr:TreeNode.canDrag",
                description:null
            },
            {
                ref:"attr:TreeNode.canAcceptDrop",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "dragdrop"
        ]
    },
    "attr:ListGrid.allowFilterExpressions":{
        ref:"attr:ListGrid.allowFilterExpressions",
        flags:"IR",
        description:"For use with ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')}:true, allows simple search expressions to be entered\n into filter fields, as though ${isc.DocUtils.linkForRef('attr:DynamicForm.allowExpressions')} were true.\n <P>\n Can also be enabled or disabled on a field-by-field basis via\n ${isc.DocUtils.linkForRef('attr:ListGridField.filterEditorProperties')}.",
        name:"allowFilterExpressions",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "advancedFilter"
        ]
    },
    "method:FormItem.getTop":{
        ref:"method:FormItem.getTop",
        flags:"",
        description:" Returns the top coordinate of the form item in pixels. Note that this method is only \n reliable after the item has been drawn out.\n",
        name:"getTop",
        seeAlso:[
        ],
        returns:{
            description:"top position in pixels",
            type:"integer"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "positioning",
            "sizing"
        ]
    },
    "attr:ListGrid.warnOnUnmappedValueFieldChange":{
        ref:"attr:ListGrid.warnOnUnmappedValueFieldChange",
        flags:"IRWA",
        description:"If a field has ${isc.DocUtils.linkForRef('attr:ListGridField.displayField')} specified and has no\n ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')}, this field will display the value from the\n <code>displayField</code> of each record by default (for more on this behavior\n see ${isc.DocUtils.linkForRef('attr:ListGridField.optionDataSource')}).\n <P>\n If such a field is editable, changing the edit value for the field on some record,\n without updating the edit value for the associated display field on the same record\n would mean the user would continue to see the unchanged display field value.\n Developers can resolve this situation by programmatically setting an edit value for\n the display field as well as the data field, or avoid it by specifying an optionDataSource\n and ensuring ${isc.DocUtils.linkForRef('attr:ListGrid.autoFetchDisplayMap')} is true, or setting an explicit valueMap\n for the field.\n <P>\n By default, when the edit value on a field with a specified displayField and\n no optionDataSource is set, we log a warning to notify the developer. This warning may\n be disabled by setting <code>warnOnUnmappedValueFieldChange</code> to <code>false</code>.\n <P>\n Note: There are actually a couple of cases in which the system will automatically\n derive a new display-field value and apply it to the record:\n <ol><li>If the edit value was changed by a user actually editing the record\n (rather than a programmatic call to setEditValue()), and the edit-item had\n a valueMap or optionDataSource set, we automatically pick up the display value from\n that item and store it as an edit-value for the displayField of the record</li>\n     <li>If the listGrid has a loaded record in its data set whose valueField value matches\n the edit value for the valueField, we automatically apply the displayField value from that\n record as an edit value for the displayField on the newly edited record.</li></ol>\n In either case, the display value for the record is updated automatically\n (and the warning would not be logged).",
        name:"warnOnUnmappedValueFieldChange",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Label.showFocusedIcon":{
        ref:"attr:Label.showFocusedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n receives focus.\n <P>\n If ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true, the <code>\"Over\"</code> icon will be\n displayed when the canvas has focus, otherwise a separate <code>\"Focused\"</code> icon\n will be displayed",
        name:"showFocusedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:DataSource.trimMilliseconds":{
        ref:"attr:DataSource.trimMilliseconds",
        flags:"IR",
        description:"For this dataSource, should the millisecond portion of time and datetime values be \n trimmed off before before being sent from client to server or vice versa.  By default, \n millisecond information is preserved (ie, it is not trimmed).  You only need to consider\n trimming millisecond values if their presence causes a problem - for example, a custom\n server that is not expecting that extra information and so fails parsing.\n <p>\n Note that there is no inherent support for millisecond precision in SmartClient widgets;\n if you need millisecond-precise visibility and editability of values in your client, \n you must write custom formatters and editors (or sponsor the addition of such things to\n the framework).  Server-side, millisecond-precise values are delivered to and obtained\n from DataSourcea, so DataSource implementations that are capable of persisting and \n reading millisecond values should work transparently.  Of the built-in DataSource types,\n the JPA and Hibernate DataSources will transparently handle millisecond-precise values\n as long as the underlying database supports millisecond precision, and the underlying \n column is of an appropriate type.\n <p>\n The SQLDataSource was designed for accuracy to the nearest second, and making it support\n millisecond accuracy requires a couple of steps:<ul>\n <li>Use a column type that supports millisecond accuracy.  For example, Oracle and \n PostgreSQL have a \"timestamp(3)\" type, MySQL version 5.6.4 and greater has \"datetime(3)\",\n and SQL Server 2008 and greater has \"datetime2\"</li>\n <li>Create your tables manually; if you allow SmartClient to do it by importing through\n the Admin Console, it will normally choose a column type that does not support \n sub-second precision</li>\n <li>Use ${isc.DocUtils.linkForRef('attr:DataSourceField.customUpdateExpression')} in conjunction with the utility \n method <code>DataTools.formatDate()</code> to provide a correctly-formatted date value\n for INSERT and UPDATE operations.  Because an instance of DataTools is provided in the\n Velocity context via the <code>$util</code> variable, you can write \n customUpdateExpressions like this (consult the vendor's documentation for the correct \n format to use for your particular database):<pre>\n    $util.formatDate(\"yyyy-MM-dd hh:mm:ss.SSS\", $values.myDateField)\n </pre></li>\n </ul>",
        name:"trimMilliseconds",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:FacetChart.extraAxisSettings":{
        ref:"attr:FacetChart.extraAxisSettings",
        flags:"IR",
        description:"For charts will multiple vertical axes, optionally provides settings for how each\n ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','extra axis metric')} is plotted.  See the main ${isc.DocUtils.linkForRef('class:FacetChart')}\n docs for an overview of how multi-axis charts are used.\n <p>\n The chart of each metric's values may be of any rectangular chart type\n that uses a vertical value axis (\"Column\", \"Area\", and \"Line\").  Because\n the charts will be superimposed over the same drawing area, there can only\n be one \"Column\" chart and one \"Area\" chart.  The column chart is placed on the bottom\n followed by the area chart, and then the line charts are drawn on top in the\n order of their metric in the ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics')} array.\n If the ${isc.DocUtils.linkForRef('attr:MetricSettings.chartType','chartType')}s\n are left unspecified then by default the first metric will be drawn as\n columns and the remaining will be drawn as lines.",
        name:"extraAxisSettings",
        seeAlso:[
        ],
        valueType:"Array of MetricSettings",
        defaultValue:"[]",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "group:location":{
        ref:"group:location",
        refs:[
            "method:Tree.findById",
            "method:Tree.find",
            "attr:Window.autoCenter"
        ],
        name:"location",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ColumnTree.showCustomIconOpen":{
        ref:"attr:ColumnTree.showCustomIconOpen",
        flags:"IRWA",
        description:"Should folder nodes showing custom icons (set via the ${isc.DocUtils.linkForRef('attr:ColumnTree.customIconProperty')}),\n show open state images when the folder is opened.\n If true, the ${isc.DocUtils.linkForRef('attr:ColumnTree.openIconSuffix')} will be appended to the image URL\n (so <code>\"customFolder.gif\"</code> might be replaced with \n <code>\"customFolder_open.gif\"</code>).<br>\n <b>Note</b> that the ${isc.DocUtils.linkForRef('attr:ColumnTree.closedIconSuffix')} is never appended to custom folder icons.<br>\n Can be overridden at the node level via the default property ${isc.DocUtils.linkForRef('attr:TreeNode.showOpenIcon')}\n and that property can be renamed via ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconOpenProperty')}.",
        name:"showCustomIconOpen",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "attr:TreeGrid.fields":{
        ref:"attr:TreeGrid.fields",
        flags:"IRW",
        description:"An array of field objects, specifying the order, layout, dynamic calculation, and\n sorting behavior of each field in the treeGrid object. In TreeGrids, the fields\n array specifies columns. Each field in the fields array is TreeGridField object.\n <p>\n If ${isc.DocUtils.linkForRef('attr:TreeGrid.dataSource')} is also set, this value acts as a set of overrides as\n explained in ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')}.",
        name:"fields",
        seeAlso:[
            {
                ref:"object:TreeGridField",
                description:null
            }
        ],
        valueType:"Array of TreeGridField",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "databinding"
        ]
    },
    "method:Slider.valueChanged":{
        ref:"method:Slider.valueChanged",
        flags:"A",
        description:" This method is called when the slider value changes. This occurs when the ${isc.DocUtils.linkForRef('method:Slider.setValue','setValue()')}\n method is called, or when the slider is moved. Observe this method to be notified when the slider value\n changes.\n\n",
        name:"valueChanged",
        seeAlso:[
            {
                ref:"method:Class.observe",
                description:null
            }
        ],
        params:[
            {
                description:"the new value.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"double"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('slider')}"
        ],
        definingClass:"class:Slider"
    },
    "type:KeyName":{
        ref:"type:KeyName",
        description:"Strings to identify the various keys on the keyboard.\n <ul>\n <li>  For alpha keys, the single (uppercase) character value is used, such as \"Q\"\n <li>  For Numeric keys, the number is used as in a single character string, like \"1\"\n <li>  Function keys are identified as <code>\"f1\"</code> - <code>\"f12\"</code>\n <li>  Non alpha-numeric character keys (such as the key for \"[\" / \"{\") are identified by\n       their unmodified character value (the value obtained by hitting the key without \n       holding shift down), by default - exceptions are listed below.\n <li>  Additional key names:<br>\n      - <code>Space</code><br>    \n      - <code>Tab</code><br>    \n      - <code>Enter</code><br>\n      - <code>Escape</code><br>\n      - <code>Backspace</code><br>\n      - <code>Insert</code><br>\n      - <code>Delete</code><br>\n      - <code>Arrow_Up</code><br>\n      - <code>Arrow_Down</code><br>\n      - <code>Arrow_Left</code><br>\n      - <code>Arrow_Right</code><br>            \n      - <code>Home</code><br>\n      - <code>End</code><br>\n      - <code>Page_Up</code><br>    \n      - <code>Page_Down</code><br>   \n      - <code>Shift</code><br>\n      - <code>Ctrl</code><br>\n      - <code>Alt</code>\n </ul>\n [Note: Some keys may not be available for capture on every platform]",
        name:"KeyName",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:PickList.showOptionsFromDataSource":{
        ref:"attr:PickList.showOptionsFromDataSource",
        flags:"IRWA",
        description:"If this item is part of a databound form, and has a specified <code>valueMap</code>,\n by default we show the valueMap options in the pickList for the item.\n Setting this property to true will ensure that the options displayed in our pickList\n are derived from the form's <code>dataSource</code>.",
        name:"showOptionsFromDataSource",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList",
        groups:[
            "databinding"
        ]
    },
    "method:TileGrid.removeTile":{
        ref:"method:TileGrid.removeTile",
        flags:"",
        description:" This is not allowed for tileGrid. Instead, use ${isc.DocUtils.linkForRef('method:TileGrid.removeData')}.\n\n",
        name:"removeTile",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TileGrid"
    },
    "attr:LoginDialog.loginForm":{
        ref:"attr:LoginDialog.loginForm",
        flags:"R",
        description:"Form used to request login credentials from the user.",
        name:"loginForm",
        seeAlso:[
            {
                ref:"attr:LoginDialog.formFields",
                description:null
            }
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "classAttr:GroupingMessages.byMinutesTitle":{
        ref:"classAttr:GroupingMessages.byMinutesTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a time field by minutes.",
        name:"byMinutesTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Minutes\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FiscalYear.year":{
        ref:"attr:FiscalYear.year",
        flags:"IRW",
        description:"The 4-digit calendar year when this fiscal year starts.",
        name:"year",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FiscalYear"
    },
    "method:TabSet.reorderTab":{
        ref:"method:TabSet.reorderTab",
        flags:"",
        description:" Move a tab to another location in the tabset.\n",
        name:"reorderTab",
        seeAlso:[
        ],
        params:[
            {
                description:"tab to move",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | ID | name | number"
            },
            {
                description:"the index to move the tab to - defaults to the end of the                                  tabset if not passed",
                optional:true,
                name:"moveToPosition",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "attr:Img.size":{
        ref:"attr:Img.size",
        flags:"IR",
        description:"Convenience for setting height and width to the same value, at init time only",
        name:"size",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Img",
        groups:[
            "sizing"
        ]
    },
    "attr:FiscalCalendar.defaultMonth":{
        ref:"attr:FiscalCalendar.defaultMonth",
        flags:"IRW",
        description:"The default zero-based month-number to use for calculating fiscal dates when no\n ${isc.DocUtils.linkForRef('attr:FiscalCalendar.fiscalYears','fiscal years')} are provided. This value together\n with ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultDate')} will be used as the start date for the\n fiscal years where no explicitly specified fiscalYear configuration is present.\n <br>\n See also ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultYearMode')}.",
        name:"defaultMonth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FiscalCalendar"
    },
    "attr:FacetChart.expectedValueLineProperties":{
        ref:"attr:FacetChart.expectedValueLineProperties",
        flags:"IR",
        description:"Properties for the ${isc.DocUtils.linkForRef('attr:FacetChart.showExpectedValueLine','line drawn at the mean value')}.\n <p>\n Note that for rectangular charts the properties are for a ${isc.DocUtils.linkForRef('class:DrawLine')},\n and for radar charts the properties are for a ${isc.DocUtils.linkForRef('class:DrawOval')}.",
        name:"expectedValueLineProperties",
        seeAlso:[
        ],
        valueType:"DrawItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:DynamicForm.itemHoverHTML":{
        ref:"method:DynamicForm.itemHoverHTML",
        flags:"A",
        description:"  Retrieves the HTML to display in a hover canvas when the user holds the mousepointer over\n  some item.  Return null to suppress the hover canvas altogether.<br>\n  Default implementation returns the prompt for the item if defined.<br>\n  Can be overridden via <code>item.itemHoverHTML()</code>\n\n",
        name:"itemHoverHTML",
        seeAlso:[
            {
                ref:"attr:FormItem.prompt",
                description:null
            },
            {
                ref:"method:FormItem.itemHoverHTML",
                description:null
            }
        ],
        params:[
            {
                description:"Item the user is hovering over.",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "attr:TabSet.titleEditorLeftOffset":{
        ref:"attr:TabSet.titleEditorLeftOffset",
        flags:"IRW",
        description:"If set, offsets the tab title editor further in from the left-hand edge of the tab, by\n the number of pixels set in this property.  Note that the editor is always offset to\n avoid overlapping the endcaps of the tab; this property is applied on top of that \n default offset.",
        name:"titleEditorLeftOffset",
        seeAlso:[
            {
                ref:"attr:TabSet.titleEditorRightOffset",
                description:null
            },
            {
                ref:"attr:TabSet.titleEditorTopOffset",
                description:null
            }
        ],
        valueType:"Integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:MultiSortPanel.copyLevelButton":{
        ref:"attr:MultiSortPanel.copyLevelButton",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:IButton')} providing a mechanism for duplicating levels\n in the sort configuration.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.copyLevelButtonProperties</code> and \n <code>multiSortPanel.copyLevelButtonDefaults</code>.",
        name:"copyLevelButton",
        seeAlso:[
        ],
        valueType:"AutoChild IButton",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "classAttr:Operators.notEndsWithFieldTitle":{
        ref:"classAttr:Operators.notEndsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"notEndsWithField\" operator",
        name:"notEndsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not end with (match case) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.canSubmit":{
        ref:"attr:DynamicForm.canSubmit",
        flags:"IRWA",
        description:"Governs whether this form will be used to perform a standard HTML form submission.\n Note that if true, ${isc.DocUtils.linkForRef('method:DynamicForm.submit')} will perform a native HTML submission\n to the specified ${isc.DocUtils.linkForRef('attr:DynamicForm.action')} URL.<br>\n Wherever possible we strongly recommend using the \n ${isc.DocUtils.linkForRef('group:dataBoundComponentMethods','DataBound Component Methods')} to send data to\n the server as they provide a far more sophisticated interface, with built in \n options for server validation, required fields, etc.<br>",
        name:"canSubmit",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "method:DataBoundComponent.dropComplete":{
        ref:"method:DataBoundComponent.dropComplete",
        flags:"",
        description:" This method is invoked whenever a drop operation or ${isc.DocUtils.linkForRef('method:DataBoundComponent.transferSelectedData')} \n targeting this component completes.  A drop is considered to be complete when all the client-\n side transfer operations have finished.  This includes any server turnarounds SmartClient \n needs to make to check for duplicate records in the target component; it specifically does \n not include any add or update operations sent to the server for databound components.  If \n you want to be notified when the entire drag operation - including server updates and cache\n synchronization - has completed, override ${isc.DocUtils.linkForRef('method:DataBoundComponent.dragComplete','dragComplete')}\n on the source component.<p>\n There is no default implementation of this method; you are intended to override it if you \n are interested in being notified when drop operations complete.\n\n",
        name:"dropComplete",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.dragComplete",
                description:null
            }
        ],
        params:[
            {
                description:"The list of records actually transferred to                    this component (note that this is not necessarily the same thing as the\n                    list of records dragged out of the source component because it doesn't\n                    include records that were excluded because of collisions with existing\n                    records)",
                optional:false,
                name:"transferredRecords",
                defaultValue:null,
                type:"List of Records"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "dragging"
        ]
    },
    "method:EditContext.serializeEditNodes":{
        ref:"method:EditContext.serializeEditNodes",
        flags:"",
        description:" Serialize the provided ${isc.DocUtils.linkForRef('object:EditNode','EditNodes')} to an XML\n representation of ${isc.DocUtils.linkForRef('object:PaletteNode','PaletteNodes')}. Note that the\n EditNodes must have been added to this EditContext. The result can be\n supplied to ${isc.DocUtils.linkForRef('method:EditContext.addPaletteNodesFromXML','addPaletteNodesFromXML()')} to\n recreate the EditNodes.\n\n",
        name:"serializeEditNodes",
        seeAlso:[
        ],
        params:[
            {
                description:"EditNodes to be serialized",
                optional:false,
                name:"nodes",
                defaultValue:null,
                type:"Array of EditNode"
            },
            {
                description:"If true, specify DataSources in full rather than                               assuming they can be downloaded from the server.\n                               Defaults to false.",
                optional:true,
                name:"serverless",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"an XML representtion of the provided EditNodes",
            type:"String"
        },
        type:"method",
        definingClass:"interface:EditContext"
    },
    "attr:Splitbar.gripImgSuffix":{
        ref:"attr:Splitbar.gripImgSuffix",
        flags:"IRA",
        description:"Suffix used the 'grip' image if ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true.",
        name:"gripImgSuffix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"grip\"",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "grip"
        ]
    },
    "attr:RichTextEditor.toolbarBackgroundColor":{
        ref:"attr:RichTextEditor.toolbarBackgroundColor",
        flags:"IR",
        description:"The background color for the toolbar.",
        name:"toolbarBackgroundColor",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"#CCCCCC\"",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "method:DataSource.compareCriteria":{
        ref:"method:DataSource.compareCriteria",
        flags:"",
        description:" Given two sets of criteria, determine whether they are equivalent, the new criteria is\n guaranteed more restrictive, or the new criteria is not guaranteed more restrictive,\n returning 0, 1 or -1 respectively.\n <P>\n Comparisons between ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} are made via recursively calling\n ${isc.DocUtils.linkForRef('method:Operator.compareCriteria')} for all criteria involved.\n <P>\n For simple ${isc.DocUtils.linkForRef('type:Criteria')}, by default (${isc.DocUtils.linkForRef('type:CriteriaPolicy')}:\"dropOnShortening\"), returns:\n <ul>\n <li> -1 if the new criteria has fewer properties than the old criteria (indicating that it\n      isn't more restrictive)\n <li> -1 if the value for any property in the old criteria is an array and 1) the value for\n      the same property in the new criteria isn't an array, or 2) is an array but\n      of different length, or 3) the arrays do not contain the exact same set of objects\n      (order can be different)\n <li> -1 if the value for any given property in the old criteria is not an array, and the\n      the value for the same property property in the new criteria is different\n <li> -1 if both values for a given property are strings and the new criteria value doesn't\n      contain the old criteria value\n <li> 1 if none of the above are true and, for at least one of the properties, the\n      respective criteria values are both strings, and the old criteria value is a substring\n      of, and is shorter than, the new criteria value\n <li> 0 otherwise (indicating the sets of criteria are equivalent)\n </ul>\n <P>\n For (${isc.DocUtils.linkForRef('type:CriteriaPolicy')}:\"dropOnChange\"), returns:\n <ul>\n <li> -1 if the two sets of criteria have a different number of properties\n <li> -1 if the value for any property in the old criteria is an array and 1) the value for\n      the same property in the new criteria isn't an array, or 2) is an array but\n      of different length, or 3) the arrays do not contain the exact same set of objects\n      (order can be different)\n <li> -1 if the value for any given property in the old criteria is not an array, and the\n      the value for the same property in the new criteria is different\n <li> 0 otherwise (indicating the sets of criteria are equivalent)\n </ul>\n This method is called by ${isc.DocUtils.linkForRef('method:ResultSet.compareCriteria')} to determine whether a change\n in criteria should cause the cache to be invalidated. You may want\n to override this method in order to mimic the filtering behavior that your server performs.\n\n",
        name:"compareCriteria",
        seeAlso:[
            {
                ref:"type:CriteriaPolicy",
                description:null
            }
        ],
        params:[
            {
                description:"new filter criteria",
                optional:false,
                name:"newCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"previous filter criteria",
                optional:false,
                name:"oldCriteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"dataSource request properties",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            },
            {
                description:"overrides ${isc.DocUtils.linkForRef('type:CriteriaPolicy')}",
                optional:true,
                name:"policy",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"0 if the filters are equivalent, 1 if newCriteria is guaranteed more                      restrictive, and -1 if newCriteria is not guaranteed more restrictive",
            type:"Number"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:Layout.placeHolderProperties":{
        ref:"attr:Layout.placeHolderProperties",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:Layout.showDragPlaceHolder','this.showDragPlaceHolder')} is true, this \n properties object can be used to customize the appearance of the placeholder displayed\n when the user drags a widget out of this layout.",
        name:"placeHolderProperties",
        seeAlso:[
        ],
        valueType:"canvas properties",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('dragMove')}"
        ],
        definingClass:"class:Layout",
        groups:[
            "dragdrop"
        ]
    },
    "method:ValuesManager.setValue":{
        ref:"method:ValuesManager.setValue",
        flags:"",
        description:" Set the value for some field.\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Which field to set the value for",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"New value for the field.",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "method:SimpleType.getAtomicValue":{
        ref:"method:SimpleType.getAtomicValue",
        flags:"",
        description:" Optional method to extract an atomic value (such as a string or number)\n from some arbitrary live data value. If defined this method will be called\n for every field value of the specified type in order to convert from the\n raw data value to an atomic type to be used for standard DataBinding features\n such as sorting and editing.\n",
        name:"getAtomicValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Raw data value to convert. Typically this would be a field   value for some record.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"Atomic value. This should match the underlying atomic type   specified by the ${isc.DocUtils.linkForRef('attr:SimpleType.inheritsFrom')} attribute.",
            type:"any"
        },
        type:"method",
        definingClass:"class:SimpleType"
    },
    "attr:ResultSet.fetchDelay":{
        ref:"attr:ResultSet.fetchDelay",
        flags:"IRWA",
        description:"Delay in milliseconds before fetching rows.\n <P>\n When a get() or getRange() call asked for rows that haven't been loaded, the\n ResultSet will wait before actually triggering the request.  If, during the delay, more\n get() or getRange() calls are made for missing rows, the final fetch to the server will\n reflect the most recently requested rows.\n <P>\n The intent of this delay is to avoid triggering many unnecessary fetches during\n drag-scrolling and similar user interactions.",
        name:"fetchDelay",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "fetching"
        ]
    },
    "method:SectionStack.getExpandedSections":{
        ref:"method:SectionStack.getExpandedSections",
        flags:"",
        description:"\n Returns the list of currently expanded sections.  The list items are section IDs.\n\n",
        name:"getExpandedSections",
        seeAlso:[
        ],
        returns:{
            description:"list of currently expanded sections",
            type:"List"
        },
        type:"method",
        definingClass:"class:SectionStack"
    },
    "attr:OperationBinding.requiresAuthentication":{
        ref:"attr:OperationBinding.requiresAuthentication",
        flags:"IR",
        description:"Whether a user must be authenticated in order to access this operation.  For details of \n what is meant by \"authenticated\", see ${isc.DocUtils.linkForRef('attr:DataSource.requiresAuthentication')}.\n <P>\n To protect access to an entire operationType (eg, all \"fetch\" operations), declare an\n operationBinding with <code>requiresAuthentication=\"true\"</code>, ${isc.DocUtils.linkForRef('attr:OperationBinding.operationType')} set\n to the operationType to be protected, but no ${isc.DocUtils.linkForRef('attr:OperationBinding.operationId')}.  This will then\n prevent access to the \"fetch\" operationType unless another ${isc.DocUtils.linkForRef('class:OperationBinding')}\n declares requiresAuthentication=\"false\" with a specific\n ${isc.DocUtils.linkForRef('attr:OperationBinding.operationId','operationId')}.",
        name:"requiresAuthentication",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "auth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "attr:StatefulCanvas.radioGroup":{
        ref:"attr:StatefulCanvas.radioGroup",
        flags:"IRWA",
        description:"String identifier for this canvas's mutually exclusive selection group.",
        name:"radioGroup",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:DataSource.patternEscapeChar":{
        ref:"attr:DataSource.patternEscapeChar",
        flags:"IR",
        description:"When using the \"matchesPattern\", \"iMatchesPattern\", \"containsPattern\" or \"iContainsPattern\"\n ${isc.DocUtils.linkForRef('type:OperatorId','searchoperator')}, character that escapes the\n ${isc.DocUtils.linkForRef('attr:DataSource.patternSingleWildcard')} or ${isc.DocUtils.linkForRef('attr:DataSource.patternMultiWildcard')} if placed before it, so that\n it is treated as a literal character.",
        name:"patternEscapeChar",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"\\\"",
        type:"attr",
        definingClass:"class:DataSource"
    },
    "attr:SectionStack.locateSectionsBy":{
        ref:"attr:SectionStack.locateSectionsBy",
        flags:"IRWA",
        description:"When ${isc.DocUtils.linkForRef('classMethod:AutoTest.getElement')} is used to parse locator strings generated by\n link{isc.AutoTest.getLocator()}, how should sections within this stack be identified?\n By default if a section has a specified ${isc.DocUtils.linkForRef('attr:SectionStackSection.name','Section.name')} this will always be used.\n For sections with no name, the following options are available:\n <ul>\n <li><code>\"title\"</code> use the title as an identifier</li>\n <li><code>\"index\"</code> use the index of the section in the sections array as an identifier</li>\n </ul>\n \n If unset, and the section has no specified name, default behavior is to\n identify by title (if available), otherwise by index.",
        name:"locateSectionsBy",
        seeAlso:[
        ],
        valueType:"LocatorStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SectionStack",
        groups:[
            "autoTest"
        ]
    },
    "method:DataBoundComponent.selectionUpdated":{
        ref:"method:DataBoundComponent.selectionUpdated",
        flags:"",
        description:" Called when selection changes. Note this method fires exactly once for any given\n change unlike the ${isc.DocUtils.linkForRef('method:ListGrid.selectionChanged','selectionChanged')} event.\n <P>\n This event is fired once after selection/deselection has completed. The result is\n one event per mouse-down event. For a drag selection there will be two events fired:\n one when the first record is selected and once when the range is completed.\n <P>\n This event is also fired when selection is updated by a direct call to one of the\n DataBoundComponent select/deselect methods. Calls on the ${isc.DocUtils.linkForRef('class:Selection')} object\n <b>do not</b> trigger this event.\n\n",
        name:"selectionUpdated",
        seeAlso:[
        ],
        params:[
            {
                description:"first selected record, if any",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            },
            {
                description:"List of records that are now selected",
                optional:false,
                name:"recordList",
                defaultValue:null,
                type:"Array of Object"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "selection"
        ]
    },
    "attr:MenuItem.fetchSubmenus":{
        ref:"attr:MenuItem.fetchSubmenus",
        flags:"IR",
        description:"If false, no submenus will be fetched for this MenuItem. This can be set globally via\n ${isc.DocUtils.linkForRef('attr:Menu.fetchSubmenus')}.",
        name:"fetchSubmenus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:MenuItem"
    },
    "method:DynamicForm.hasFieldErrors":{
        ref:"method:DynamicForm.hasFieldErrors",
        flags:"",
        description:" Does this form currently h ave any validation errors on the field passed in?<br>\n Validation errors are set up automatically by validation, or may be explicitly set via\n ${isc.DocUtils.linkForRef('method:DynamicForm.setErrors')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setFieldErrors')}.\n",
        name:"hasFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"field to test for validation errors",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"true if the form has outstanding errors for the field in question.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "errors"
        ]
    },
    "attr:OperationBinding.operationId":{
        ref:"attr:OperationBinding.operationId",
        flags:"IR",
        description:"Optional operationId if this DataSource supports two or more variants of one of the basic\n DataSource operations, for instance, a \"fetch\" that uses full text search and a \"fetch\" that\n accepts per-field search criteria.  See ${isc.DocUtils.linkForRef('attr:DSRequest.operationId')} for usage.",
        name:"operationId",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:OperationBinding",
        groups:[
            "clientDataIntegration"
        ]
    },
    "attr:Calendar.weekViewTitle":{
        ref:"attr:Calendar.weekViewTitle",
        flags:"IR",
        description:"The title for the ${isc.DocUtils.linkForRef('attr:Calendar.weekView','week view')}.",
        name:"weekViewTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Week\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Applet.codeBase":{
        ref:"attr:Applet.codeBase",
        flags:"IR",
        description:"The base URL of the applet if the ${isc.DocUtils.linkForRef('attr:Applet.code')} attribute is relative",
        name:"codeBase",
        seeAlso:[
            {
                ref:"attr:Applet.code",
                description:null
            },
            {
                ref:"attr:Applet.archive",
                description:null
            }
        ],
        valueType:"URL",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Applet"
    },
    "attr:ListGridField.iconSize":{
        ref:"attr:ListGridField.iconSize",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.icon')} is specified, this property can be used to specify the\n size of the icon to be displayed in the ListGrid header button.\n (See ${isc.DocUtils.linkForRef('attr:StatefulCanvas.iconSize')})",
        name:"iconSize",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:IconButton.setLargeIcon":{
        ref:"method:IconButton.setLargeIcon",
        flags:"",
        description:" Sets a new Large-Icon for vertical buttons after initialization - synonymous with \n ${isc.DocUtils.linkForRef('method:IconButton.setIcon','setIcon')} for normal horizontal buttons.\n\n",
        name:"setLargeIcon",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:IconButton"
    },
    "class:SearchForm":{
        methods:[
            "method:SearchForm.search"
        ],
        ref:"class:SearchForm",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms"
        ],
        attrs:[
            "attr:SearchForm.canEditFieldAttribute",
            "attr:SearchForm.showFilterFieldsOnly"
        ],
        description:"A SearchForm is a DynamicForm specialized for a user to enter search criteria.\n <P>\n All DynamicForm properties and methods work on SearchForm.  SearchForm extends and\n specializes DynamicForm for searching; for example, SearchForm sets\n <code>hiliteRequiredFields</code> false by default because fields are typically not \n required in a search.",
        name:"SearchForm",
        seeAlso:[
            {
                ref:"class:DynamicForm",
                description:null
            }
        ],
        type:"class"
    },
    "attr:PrintCanvas.printFrameURL":{
        ref:"attr:PrintCanvas.printFrameURL",
        flags:"IRA",
        description:"Location of the special printFrame html file provided as part of the SmartClient libraries.\n This file must be present at the specified location for the printCanvas printing APIs.",
        name:"printFrameURL",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"[HELPERS]printFrame.html\"",
        type:"attr",
        definingClass:"class:PrintCanvas"
    },
    "attr:DataBoundComponent.editSummaryFieldText":{
        ref:"attr:DataBoundComponent.editSummaryFieldText",
        flags:"IRW",
        description:"Text for a menu item allowing users to edit the formatter for a field",
        name:"editSummaryFieldText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Edit summary format...\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.sectionVisibilityMode":{
        ref:"attr:DynamicForm.sectionVisibilityMode",
        flags:"IRW",
        description:"If the form has sections, [implemented as ${isc.DocUtils.linkForRef('class:SectionItem')}s], this attribute controls\n whether multiple sections can be expanded at once.",
        name:"sectionVisibilityMode",
        seeAlso:[
            {
                ref:"type:VisibilityMode",
                description:null
            },
            {
                ref:"class:SectionItem",
                description:null
            }
        ],
        valueType:"VisibilityMode",
        defaultValue:"\"multiple\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "attr:RangeSlider.endValue":{
        ref:"attr:RangeSlider.endValue",
        flags:"IRW",
        description:"The end of the selected range.",
        name:"endValue",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:RangeSlider"
    },
    "attr:FacetChart.valueAxisLabelProperties":{
        ref:"attr:FacetChart.valueAxisLabelProperties",
        flags:"IRW",
        description:"Properties for labels of value axis.",
        name:"valueAxisLabelProperties",
        seeAlso:[
        ],
        valueType:"DrawLabel Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "group:timing":{
        ref:"group:timing",
        refs:[
        ],
        name:"timing",
        seeAlso:[
        ],
        type:"group"
    },
    "group:caching":{
        ref:"group:caching",
        title:"Caching",
        treeLocation:[
            "Optional Modules/Network Performance"
        ],
        refs:[
        ],
        description:"Standard web browsers can cache server responses, associating the locally-cached files with\n the URLs (including query parameters) that were used to fetch the files from the\n server. Each file may be assigned an explicit expiration time. Requests for the associated\n URL will always be served from the local cache, without accessing the server, until the file\n expires.\n <p>\n The recommended approach is to move as much content as possible into cacheable assets\n (these can be images, html, css, and js) and tell the browser to cache those for as long as\n possible (ideally indefinitely).  Clearly, most things can't simply be cached permanently -\n new versions of the application will often require changes to these assets.  To allow for\n this, the pages that direct the loading of the cached assets should be dynamic and should\n create version-specific URLs to these cacheable assets.  This can be done by tacking the\n version number as a query parameter or as a path component.  Here's an example of loading a\n javascript file versioned with a query parameter:\n <pre>\n &lt;script src='/foo/bar.js?version=13'&gt;&lt;/script&gt;\n </pre>\n Generally, the version number wouldn't be hard-coded into the dynamic page, but would\n instead pick up the value of a variable, such that you can simply bump up the value in one\n configuration file and have all versioned URLs change dynamically.\n <p>\n Because SmartClient performs the assembly of image URLs dynamically, versioning of\n SmartClient skins must be done with a path component.  You can do this by changing the base\n skinDir using ${isc.DocUtils.linkForRef('classMethod:Page.setSkinDir')} - e.g:\n <pre>\n isc.Page.setSkinDir('/version/5.6/isomorphic/skins/SmartClient/');\n </pre>\n You can then either deploy the new skins under the versioned directory above or use a URL\n rewriting engine such as mod_rewrite for Apache to map all such versions into a single\n deploy directory.\n <p>\n To actually tell the browser to cache images for a longer length of time than the browser\n session, you need to set the HTTP 'Expires' header.\n If you're not using the SmartClient Java back-end there are several caching solutions\n available, depending on your server of choice.  Microsoft's IIS has built-in caching\n capability, please check the reference manual for details.  If you're using Apache, you can\n use <a href='http://httpd.apache.org/docs/2.0/mod/mod_expires.html' target='_blank'>mod_expires</a>.  Some servlet\n containers also natively support the setting of caching headers.\n <p>\n The SmartClient Java back-end supports setting caching headers via the FileDownload service\n on a per-mimetype basis.  To use it, first register the FileDownload servlet in your web.xml\n as follows:\n <pre>\n     &lt;servlet&gt;\n       &lt;servlet-name&gt;FileDownload&lt;/servlet-name&gt;\n       &lt;init-param&gt;\n           &lt;param-name&gt;expires&lt;/param-name&gt;\n           &lt;param-value&gt;text/javascript:3600,image/gif:86400&lt;/param-value&gt;\n       &lt;/init-param&gt;\n       &lt;servlet-class&gt;com.isomorphic.servlet.FileDownload&lt;/servlet-class&gt;\n     &lt;/servlet&gt;\n </pre>\n The expires parameter controls the expiration time in seconds.  In the block above,\n javascript files are set to expire in 1 hour and gif images are set to expire in 1 day from\n the time they are served to the browser.  If you don't set explicit expires mappings, all\n images and css files will be set to expire in 1 day and javascript files will expire in 1\n hour, by default.\n <p>\n Next, map any resource that you want to serve with caching headers to the FileDownload\n servlet in your web.xml.  Typically, you'll want to serve the SmartClient modules and all\n skin images with caching headers.  You can do so by adding the following servlet-mapping\n directives to your web.xml:\n <pre>\n     &lt;servlet-mapping&gt;\n       &lt;servlet-name&gt;FileDownload&lt;/servlet-name&gt;\n       &lt;url-pattern&gt;/isomorphic/system/modules/*&lt;/url-pattern&gt;\n     &lt;/servlet-mapping&gt;\n \n     &lt;servlet-mapping&gt;\n       &lt;servlet-name&gt;FileDownload&lt;/servlet-name&gt;\n       &lt;url-pattern&gt;/isomorphic/skins/*&lt;/url-pattern&gt;\n     &lt;/servlet-mapping&gt;\n </pre>",
        name:"caching",
        seeAlso:[
        ],
        type:"group"
    },
    "method:ListGrid.saveEdits":{
        ref:"method:ListGrid.saveEdits",
        flags:"A",
        description:"\n Validates and saves edits within the row currently being edited (or another row with unsaved\n edits, if indicated).\n <P>\n This method can be called to manually trigger saves if the default mechanisms of\n ${isc.DocUtils.linkForRef('attr:ListGrid.saveByCell','cell by cell')} or row by row saving are not suitable.\n <P>\n The 'callback' parameter provides a notification when the save attempt completes, which is\n likely to be asynchronous for databound grids.  Cases under which the callback will fire are:\n <ul><li>Save completed successfully</li>\n <li>No changes to the edited row, so save not required</li>\n <li>Validation failure occurred on the client or on the server</li></ul>\n Note that if this method was unable to determine the row to be saved, the callback will NOT\n fire - in this case, the method is a no-op.\n <P>\n Other, standard callbacks such as ${isc.DocUtils.linkForRef('method:ListGrid.editComplete')}, ${isc.DocUtils.linkForRef('method:ListGrid.editFailed')} and\n ${isc.DocUtils.linkForRef('method:ListGrid.cellChanged')} will fire normally.\n <P>\n Note this method does not hide the inline editors if they are showing - to explicitly save\n and end editing, use the method 'endEditing()'\n <P>\n If this method is called for a row which has been marked for deletion\n (see ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')}) it will cause the record to be removed from the\n data-set.\n\n",
        name:"saveEdits",
        seeAlso:[
            {
                ref:"method:ListGrid.endEditing",
                description:null
            }
        ],
        params:[
            {
                description:"Event used to complete cell editing.          Optional, and defaults to <code>\"programmatic\"</code>.  Can be used by the\n          <code>callback</code> method to perform custom actions such as navigation when the\n          save completes.",
                optional:true,
                name:"editCompletionEvent",
                defaultValue:null,
                type:"EditCompletionEvent"
            },
            {
                description:"Callback to fire on completion of the saving process.                                    If no edits were made or client-side validation fails\n                                    the callback will be fired synchronously at the end of this\n                                    method.<br>\n                                    Takes the following parameters:\n                                    <br>- rowNum <i>(Number) edited row number</i>\n                                    <br>- colNum <i>(Number) edited column number</i>\n                                    <br>- editCompletionEvent <i>(EditCompletionEvent) event\n                                      passed in (defaults to <code>\"programmatic\"</code>)</i>\n                                    <br>- success <i>(boolean) false if the save was unable to\n                                      complete due to a validation failure or server-side\n                                      error.</i>",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"Which row should be saved. If unspecified the current edit row                            is saved by default. Note that if there is no current edit row\n                            this method will no op.",
                optional:true,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "type:SelectionAppearance":{
        ref:"type:SelectionAppearance",
        values:[
            {
                description:"selected rows should be shown with different appearance - see                   ${isc.DocUtils.linkForRef('method:ListGrid.getCellStyle')} and optionally\n                   ${isc.DocUtils.linkForRef('attr:ListGrid.selectionCanvas')}.",
                value:"\"rowStyle\""
            },
            {
                description:"an extra, non-data column should be automatically added to the ListGrid,                   showing checkboxes that can be toggled to select rows.\n                   See ${isc.DocUtils.linkForRef('method:ListGrid.getCheckboxField')}.",
                value:"\"checkbox\""
            }
        ],
        description:"How data selection should be presented to the user.",
        name:"SelectionAppearance",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:DynamicForm.cellBorder":{
        ref:"attr:DynamicForm.cellBorder",
        flags:"IRW",
        description:"Width of border for the table that form is drawn in. This is primarily used for debugging\n form layout.",
        name:"cellBorder",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formLayout"
        ]
    },
    "classMethod:Canvas.getEventEdge":{
        ref:"classMethod:Canvas.getEventEdge",
        flags:"",
        description:" Check if an event is within an \"edge\" of this canvas.\n\n",
        name:"getEventEdge",
        seeAlso:[
            {
                ref:"attr:Canvas.resizeFrom",
                description:null
            }
        ],
        params:[
            {
                description:"Array of legal edges.  Default is all the edges that                                       allow resizing (see ${isc.DocUtils.linkForRef('attr:Canvas.resizeFrom')})",
                optional:true,
                name:"edgeMask",
                defaultValue:null,
                type:"Array of EdgeName"
            }
        ],
        returns:{
            description:"edge where the mouse is positioned, or null if not within a legal edge                    (including being in the center)",
            type:"EdgeName"
        },
        type:"classMethod",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop",
            "dragResize"
        ]
    },
    "attr:ListGrid.canSelectCells":{
        ref:"attr:ListGrid.canSelectCells",
        flags:"IR",
        description:"Enables cell-level selection behavior as well as\n ${isc.DocUtils.linkForRef('attr:ListGrid.useCellRollOvers','cell-level rollover')}.\n <P>\n To query and manipulate cell-level selections, use ${isc.DocUtils.linkForRef('method:ListGrid.getCellSelection')} to retrieve\n the ${isc.DocUtils.linkForRef('class:CellSelection')}.\n <P>\n Note that the ListGrid has a data model of one ${isc.DocUtils.linkForRef('object:Record')} per row, unlike the\n ${isc.DocUtils.linkForRef('class:CubeGrid')} which supports one ${isc.DocUtils.linkForRef('object:CellRecord')} per cell.  For this reason\n record-oriented APIs that act on the selection will act on entire Records that have\n <i>any</i> selected cells (examples include drag and drop and transferSelectedData()).\n <P>\n More generally, <code>canSelectCells</code> is primarily intended to enable developers\n to build Excel-like interactions on local datasets, by using ${isc.DocUtils.linkForRef('method:ListGrid.setData')} plus\n ${isc.DocUtils.linkForRef('attr:ListGrid.saveLocally')}:true rather than record-oriented DataSources and data binding.\n <P>\n The following keyboard selection behaviors are enabled with this property in\n addition to standard single-selection Arrow Key navigation:\n <P>\n SHIFT +        [Arrow Key]:  begin or continue incremental selection\n <P>\n SHIFT + CTRL + [Arrow Key]:  incremental selection to the end of row or column\n <P>\n CTRL  + A: select all cells (enabled only with ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectAll')})\n <P>\n Incremental selection allows selection of rows and columns of cells via keyboard\n or mouse provided the shift key is down.  Behavior is designed to match Excel.\n Thus, if a previous selection has begun, cells will be selected from that origin.\n <P>\n Users may also navigate through cells using the <i>Tab</i> and <i>Shift+Tab</i>\n keypresses if ${isc.DocUtils.linkForRef('attr:ListGrid.navigateOnTab')} is true. When a user tabs to the\n end of the row, the ${isc.DocUtils.linkForRef('attr:ListGrid.rowEndEditAction')} is used to determine whether\n to shift selection to the next row, return to the beginning of the same row, or\n simply move on through the page's tab order.",
        name:"canSelectCells",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:DrawRect.resizeBy":{
        ref:"method:DrawRect.resizeBy",
        flags:"",
        description:" Resize by the specified delta\n",
        name:"resizeBy",
        seeAlso:[
        ],
        params:[
            {
                description:"number of pixels to resize by horizontally",
                optional:false,
                name:"dX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"number of pixels to resize by vertically",
                optional:false,
                name:"dY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "class:RPCRequest":{
        methods:[
        ],
        ref:"class:RPCRequest",
        classAttrs:[
            "classAttr:RPCRequest.useCursorTracker"
        ],
        classMethods:[
            "classMethod:RPCRequest.create"
        ],
        treeLocation:[
            "Client Reference/RPC"
        ],
        attrs:[
            "attr:RPCRequest.data",
            "attr:RPCRequest.actionURL",
            "attr:RPCRequest.useHttpProxy",
            "attr:RPCRequest.promptStyle",
            "attr:RPCRequest.promptCursor",
            "attr:RPCRequest.prompt",
            "attr:RPCRequest.showPrompt",
            "attr:RPCRequest.promptDelay",
            "attr:RPCRequest.callback",
            "attr:RPCRequest.clientContext",
            "attr:RPCRequest.willHandleError",
            "attr:RPCRequest.timeout",
            "attr:RPCRequest.params",
            "attr:RPCRequest.evalResult",
            "attr:RPCRequest.evalVars",
            "attr:RPCRequest.callbackParam",
            "attr:RPCRequest.suppressAutoDraw",
            "attr:RPCRequest.serverOutputAsString",
            "attr:RPCRequest.allowIE9Leak",
            "attr:RPCRequest.transport",
            "attr:RPCRequest.useXmlHttpRequest",
            "attr:RPCRequest.httpMethod",
            "attr:RPCRequest.contentType",
            "attr:RPCRequest.httpHeaders",
            "attr:RPCRequest.containsCredentials",
            "attr:RPCRequest.ignoreTimeout",
            "attr:RPCRequest.sendNoQueue",
            "attr:RPCRequest.paramsOnly",
            "attr:RPCRequest.useSimpleHttp",
            "attr:RPCRequest.bypassCache",
            "attr:RPCRequest.omitNullMapValuesInResponse",
            "attr:RPCRequest.downloadResult",
            "attr:RPCRequest.downloadToNewWindow"
        ],
        description:"Encapsulates a client/server RPC request.  You'll need to provide an instance of this class (or a\n constructor for it) to the ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendRequest')} method.  If you use the \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.send')} method, an instance of RPCRequest will be created for you.",
        name:"RPCRequest",
        seeAlso:[
            {
                ref:"classMethod:RPCManager.send",
                description:null
            },
            {
                ref:"classMethod:RPCManager.sendRequest",
                description:null
            }
        ],
        type:"class"
    },
    "method:FacetChart.setRegressionPolynomialDegree":{
        ref:"method:FacetChart.setRegressionPolynomialDegree",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:FacetChart.regressionPolynomialDegree')}.\n",
        name:"setRegressionPolynomialDegree",
        seeAlso:[
        ],
        params:[
            {
                description:"New value for this.regressionPolynomialDegree.",
                optional:false,
                name:"regressionPolynomialDegree",
                defaultValue:null,
                type:"Number"
            }
        ],
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:FormItem.titleHoverHTML":{
        ref:"method:FormItem.titleHoverHTML",
        flags:"A",
        description:" If defined, this method should return the HTML to display in a hover canvas when the \n user holds the mousepointer over this item's title.  Return null to suppress the hover \n canvas altogether.\n <P>\n If not defined, ${isc.DocUtils.linkForRef('method:DynamicForm.titleHoverHTML')} will be evaluated to determine\n hover content instead.\n\n",
        name:"titleHoverHTML",
        seeAlso:[
            {
                ref:"attr:FormItem.prompt",
                description:null
            },
            {
                ref:"method:FormItem.titleHover",
                description:null
            },
            {
                ref:"method:FormItem.itemHoverHTML",
                description:null
            },
            {
                ref:"attr:FormItem.showClippedTitleOnHover",
                description:null
            }
        ],
        params:[
            {
                description:"Pointer to this item",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"FormItem"
            },
            {
                description:"This items form",
                optional:false,
                name:"form",
                defaultValue:null,
                type:"DynamicForm"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "Hovers"
        ]
    },
    "attr:DSResponse.totalRows":{
        ref:"attr:DSResponse.totalRows",
        flags:"R",
        description:"Total number of rows available from the server that match the current filter criteria,\n when using paged result fetching.",
        name:"totalRows",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "paging"
        ]
    },
    "classAttr:Operators.greaterOrEqualFieldTitle":{
        ref:"classAttr:Operators.greaterOrEqualFieldTitle",
        flags:"IR",
        description:"Title for the \"greaterOrEqualField\" operator",
        name:"greaterOrEqualFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"greater than or equal to field\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DrawLine.startPoint":{
        ref:"attr:DrawLine.startPoint",
        flags:"IRW",
        description:"Start point of the line",
        name:"startPoint",
        setter:[
            "setStartPoint"
        ],
        seeAlso:[
        ],
        valueType:"Point",
        defaultValue:"[0,0]",
        type:"attr",
        definingClass:"class:DrawLine"
    },
    "object:ListGridField":{
        methods:[
            "method:ListGridField.getGroupValue",
            "method:ListGridField.getGroupTitle",
            "method:ListGridField.getFieldTitle",
            "method:ListGridField.showIf",
            "method:ListGridField.getAutoFreezePosition",
            "method:ListGridField.getGridSummary",
            "method:ListGridField.getGroupSummary",
            "method:ListGridField.getRecordSummary",
            "method:ListGridField.getSummaryTitle",
            "method:ListGridField.sortNormalizer",
            "method:ListGridField.defaultDynamicValue",
            "method:ListGridField.editorEnter",
            "method:ListGridField.editorExit",
            "method:ListGridField.cellChanged",
            "method:ListGridField.recordClick",
            "method:ListGridField.recordDoubleClick",
            "method:ListGridField.getCellValue",
            "method:ListGridField.formatCellValue",
            "method:ListGridField.formatEditorValue",
            "method:ListGridField.parseEditorValue",
            "method:ListGridField.change",
            "method:ListGridField.changed",
            "method:ListGridField.hoverHTML",
            "method:ListGridField.getEditorValueMap"
        ],
        ref:"object:ListGridField",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:ListGridField.exportFieldWidth",
            "attr:ListGridField.groupingModes",
            "attr:ListGridField.groupingMode",
            "attr:ListGridField.defaultGroupingMode",
            "attr:ListGridField.groupPrecision",
            "attr:ListGridField.groupGranularity",
            "attr:ListGridField.canHilite",
            "attr:ListGridField.showHilitesInGroupSummary",
            "attr:ListGridField.canGroupBy",
            "attr:ListGridField.canSortClientOnly",
            "attr:ListGridField.showDefaultContextMenu",
            "attr:ListGridField.filterOperator",
            "attr:ListGridField.canExport",
            "attr:ListGridField.exportRawValues",
            "attr:ListGridField.summaryValue",
            "attr:ListGridField.valueIcons",
            "attr:ListGridField.valueIconSize",
            "attr:ListGridField.valueIconWidth",
            "attr:ListGridField.valueIconHeight",
            "attr:ListGridField.valueIconLeftPadding",
            "attr:ListGridField.valueIconRightPadding",
            "attr:ListGridField.editorValueIcons",
            "attr:ListGridField.editorValueIconWidth",
            "attr:ListGridField.editorValueIconHeight",
            "attr:ListGridField.showValueIconOnly",
            "attr:ListGridField.suppressValueIcon",
            "attr:ListGridField.valueIconOrientation",
            "attr:ListGridField.hiliteIconPosition",
            "attr:ListGridField.hiliteIconSize",
            "attr:ListGridField.hiliteIconWidth",
            "attr:ListGridField.hiliteIconHeight",
            "attr:ListGridField.hiliteIconLeftPadding",
            "attr:ListGridField.hiliteIconRightPadding",
            "attr:ListGridField.imageURLPrefix",
            "attr:ListGridField.imageURLSuffix",
            "attr:ListGridField.editorImageURLPrefix",
            "attr:ListGridField.editorImageURLSuffix",
            "attr:ListGridField.imageSize",
            "attr:ListGridField.imageWidth",
            "attr:ListGridField.imageHeight",
            "attr:ListGridField.type",
            "attr:ListGridField.name",
            "attr:ListGridField.dataPath",
            "attr:ListGridField.title",
            "attr:ListGridField.showTitle",
            "attr:ListGridField.wrap",
            "attr:ListGridField.hoverWrap",
            "attr:ListGridField.hoverWidth",
            "attr:ListGridField.target",
            "attr:ListGridField.hidden",
            "attr:ListGridField.frozen",
            "attr:ListGridField.canFreeze",
            "attr:ListGridField.autoFreeze",
            "attr:ListGridField.canHide",
            "attr:ListGridField.canDragResize",
            "attr:ListGridField.canReorder",
            "attr:ListGridField.ignoreKeyboardClicks",
            "attr:ListGridField.showGridSummary",
            "attr:ListGridField.showGroupSummary",
            "attr:ListGridField.summaryFunction",
            "attr:ListGridField.summaryValueTitle",
            "attr:ListGridField.formatGridSummary",
            "attr:ListGridField.formatGroupSummary",
            "attr:ListGridField.recordSummaryFunction",
            "attr:ListGridField.partialSummary",
            "attr:ListGridField.includeInRecordSummary",
            "attr:ListGridField.includeInRecordSummaryFields",
            "attr:ListGridField.applyAfterSummary",
            "attr:ListGridField.icon",
            "attr:ListGridField.iconSize",
            "attr:ListGridField.iconWidth",
            "attr:ListGridField.iconHeight",
            "attr:ListGridField.iconOrientation",
            "attr:ListGridField.iconSpacing",
            "attr:ListGridField.showDisabledIcon",
            "attr:ListGridField.showRollOverIcon",
            "attr:ListGridField.showFocusedIcon",
            "attr:ListGridField.showDownIcon",
            "attr:ListGridField.showSelectedIcon",
            "attr:ListGridField.cellIcon",
            "attr:ListGridField.showFileInline",
            "attr:ListGridField.format",
            "attr:ListGridField.exportFormat",
            "attr:ListGridField.icons",
            "attr:ListGridField.editorIconWidth",
            "attr:ListGridField.editorIconHeight",
            "attr:ListGridField.defaultIconSrc",
            "attr:ListGridField.iconVAlign",
            "attr:ListGridField.summaryTitle",
            "attr:ListGridField.width",
            "attr:ListGridField.align",
            "attr:ListGridField.headerBaseStyle",
            "attr:ListGridField.headerTitleStyle",
            "attr:ListGridField.headerTitle",
            "attr:ListGridField.cellAlign",
            "attr:ListGridField.baseStyle",
            "attr:ListGridField.canSort",
            "attr:ListGridField.sortDirection",
            "attr:ListGridField.canEdit",
            "attr:ListGridField.defaultValue",
            "attr:ListGridField.enterKeyEditAction",
            "attr:ListGridField.escapeKeyEditAction",
            "attr:ListGridField.editorType",
            "attr:ListGridField.editorProperties",
            "attr:ListGridField.validators",
            "attr:ListGridField.validateOnChange",
            "attr:ListGridField.required",
            "attr:ListGridField.displayFormat",
            "attr:ListGridField.dateFormatter",
            "attr:ListGridField.timeFormatter",
            "attr:ListGridField.decimalPrecision",
            "attr:ListGridField.decimalPad",
            "attr:ListGridField.inputFormat",
            "attr:ListGridField.isRemoveField",
            "attr:ListGridField.canFilter",
            "attr:ListGridField.filterEditorValueMap",
            "attr:ListGridField.filterEditorType",
            "attr:ListGridField.defaultFilterValue",
            "attr:ListGridField.filterEditorProperties",
            "attr:ListGridField.filterOnKeypress",
            "attr:ListGridField.shouldPrint",
            "attr:ListGridField.escapeHTML",
            "attr:ListGridField.linkText",
            "attr:ListGridField.linkTextProperty",
            "attr:ListGridField.linkURLPrefix",
            "attr:ListGridField.linkURLSuffix",
            "attr:ListGridField.valueMap",
            "attr:ListGridField.sortByMappedValue",
            "attr:ListGridField.multiple",
            "attr:ListGridField.editorValueMap",
            "attr:ListGridField.emptyCellValue",
            "attr:ListGridField.autoFetchDisplayMap",
            "attr:ListGridField.displayValueFromRecord",
            "attr:ListGridField.optionTextMatchStyle",
            "attr:ListGridField.optionFilterContext",
            "attr:ListGridField.optionOperationId",
            "attr:ListGridField.optionDataSource",
            "attr:ListGridField.valueField",
            "attr:ListGridField.displayField",
            "attr:ListGridField.sortByDisplayField",
            "attr:ListGridField.optionCriteria",
            "attr:ListGridField.includeFrom",
            "attr:ListGridField.autoFitWidth",
            "attr:ListGridField.autoFitWidthApproach",
            "attr:ListGridField.hiliteHTMLAfterFormat",
            "attr:ListGridField.showHover",
            "attr:ListGridField.prompt",
            "attr:ListGridField.canToggle",
            "attr:ListGridField.leaveHeaderMenuButtonSpace",
            "attr:ListGridField.hoverDelay",
            "attr:ListGridField.headerHoverDelay",
            "attr:ListGridField.showAlternateStyle",
            "attr:ListGridField.userFormula",
            "attr:ListGridField.userSummary"
        ],
        description:"An ordinary JavaScript object containing properties that configures the display of\n and interaction with the columns of a ${isc.DocUtils.linkForRef('class:ListGrid')}.",
        name:"ListGridField",
        seeAlso:[
            {
                ref:"attr:ListGrid.fields",
                description:null
            },
            {
                ref:"method:ListGrid.setFields",
                description:null
            }
        ],
        type:"object"
    },
    "method:ListGrid.refreshCellStyle":{
        ref:"method:ListGrid.refreshCellStyle",
        flags:"",
        description:" Refresh the styling of an individual cell without redrawing the grid.\n <P>\n The cell's CSS class and CSS text will be refreshed, to the current values returned by\n getCellStyle() and getCellCSSText() respectively.\n <P>\n The cell's contents (as returned by getCellValue()) will <b>not</b> be refreshed.  To\n refresh both styling and contents, call refreshCell() instead.\n\n",
        name:"refreshCellStyle",
        seeAlso:[
            {
                ref:"method:ListGrid.refreshCell",
                description:"to update cell contents too"
            }
        ],
        params:[
            {
                description:"row number of cell to refresh",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of cell to refresh",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "group:formValues":{
        ref:"group:formValues",
        refs:[
            "method:DynamicForm.reset",
            "method:DynamicForm.setValues",
            "method:DynamicForm.rememberValues",
            "method:DynamicForm.resetValues",
            "method:DynamicForm.clearValues",
            "method:DynamicForm.valuesHaveChanged",
            "method:DynamicForm.getOldValues",
            "method:DynamicForm.getChangedValues",
            "method:DynamicForm.getValues",
            "method:DynamicForm.getValue",
            "method:DynamicForm.setValue",
            "method:DynamicForm.showItem",
            "method:DynamicForm.hideItem",
            "method:DynamicForm.setValueMap",
            "method:FormItem.getValue",
            "method:FormItem.defaultDynamicValue",
            "method:ValuesManager.getValues",
            "method:ValuesManager.setValues",
            "method:ValuesManager.clearValues",
            "method:ValuesManager.getMemberValues",
            "method:ValuesManager.setMemberValues",
            "method:ValuesManager.rememberValues",
            "method:ValuesManager.getOldValues",
            "method:ValuesManager.getChangedValues",
            "method:ValuesManager.resetValues",
            "method:ValuesManager.valuesHaveChanged",
            "method:ValuesManager.getValue",
            "method:ValuesManager.setValue",
            "method:ValuesManager.clearValue",
            "attr:RichTextItem.shouldSaveValue",
            "attr:DynamicForm.values",
            "attr:FormItem.shouldSaveValue",
            "attr:TextItem.emptyStringValue",
            "attr:TextAreaItem.emptyStringValue",
            "attr:MultiComboBoxItem.shouldSaveValue",
            "attr:FileItem.shouldSaveValue",
            "attr:SliderItem.shouldSaveValue",
            "attr:ValueMapItem.shouldSaveValue",
            "attr:PickTreeItem.shouldSaveValue",
            "attr:RelativeDateItem.shouldSaveValue",
            "attr:PresetCriteriaItem.shouldSaveValue"
        ],
        name:"formValues",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Menu.setItemProperties":{
        ref:"method:Menu.setItemProperties",
        flags:"",
        description:" Set arbitrary properties for a particular menu item.\n\n",
        name:"setItemProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"index of the MenuItem",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"int"
            },
            {
                description:"properties to apply to the item",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"MenuItem Properties"
            }
        ],
        type:"method",
        definingClass:"class:Menu"
    },
    "attr:Button.showRollOverIcon":{
        ref:"attr:Button.showRollOverIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image on mouse rollover.",
        name:"showRollOverIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "group:treeIcons":{
        ref:"group:treeIcons",
        refs:[
            "method:TreeGrid.setNodeIcon",
            "attr:TreeNode.icon",
            "attr:TreeNode.showOpenIcon",
            "attr:TreeNode.showDropIcon",
            "attr:TreeGrid.iconSize",
            "attr:TreeGrid.openerIconSize",
            "attr:TreeGrid.openerIconWidth",
            "attr:TreeGrid.openerIconHeight",
            "attr:TreeGrid.folderIcon",
            "attr:TreeGrid.dropIconSuffix",
            "attr:TreeGrid.openIconSuffix",
            "attr:TreeGrid.closedIconSuffix",
            "attr:TreeGrid.nodeIcon",
            "attr:TreeGrid.showOpenIcons",
            "attr:TreeGrid.showDropIcons",
            "attr:TreeGrid.customIconProperty",
            "attr:TreeGrid.customIconOpenProperty",
            "attr:TreeGrid.customIconDropProperty",
            "attr:TreeGrid.showCustomIconOpen",
            "attr:TreeGrid.showCustomIconDrop",
            "attr:TreeGrid.showDisabledSelectionCheckbox",
            "attr:TreeGrid.leaveSelectionCheckboxGap",
            "attr:TreeGrid.showConnectors",
            "attr:TreeGrid.showFullConnectors",
            "attr:TreeGrid.openerImage",
            "attr:TreeGrid.connectorImage",
            "attr:ColumnTree.folderIcon",
            "attr:ColumnTree.customIconProperty",
            "attr:ColumnTree.nodeIcon",
            "attr:ColumnTree.openIconSuffix",
            "attr:ColumnTree.closedIconSuffix",
            "attr:ColumnTree.showOpenIcons",
            "attr:ColumnTree.showCustomIconOpen",
            "attr:ColumnTree.customIconOpenProperty",
            "attr:ColumnTree.showMultipleColumns"
        ],
        name:"treeIcons",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:FacetChart.maxBarThickness":{
        ref:"attr:FacetChart.maxBarThickness",
        flags:"IR",
        description:"Bars will not be drawn over this thickness, instead, margins will be increased.",
        name:"maxBarThickness",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:FacetChart.logBase":{
        ref:"attr:FacetChart.logBase",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:FacetChart.useLogGradations')}, base value for logarithmic gradation lines.  Gradation\n lines will be shown at every power of this value plus intervening values specified by\n ${isc.DocUtils.linkForRef('attr:FacetChart.logGradations')}.",
        name:"logBase",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "attr:DataSource.noNullUpdates":{
        ref:"attr:DataSource.noNullUpdates",
        flags:"IR",
        description:"When true, indicates that fields in this DataSource will never be positively updated\n to the null value; they may arrive at null values by being omitted, but we will \n not send actual null values in update requests.  When false (the default), null is \n not treated in any special way.\n <p>\n Setting this value causes null-assigned fields to be replaced with the field's\n ${isc.DocUtils.linkForRef('attr:DataSourceField.nullReplacementValue','nullReplacementValue')}, if one is declared.\n If no <code>nullReplacementValue</code> is declared for the field, the null assignment\n is replaced with the DataSource's ${isc.DocUtils.linkForRef('attr:DataSource.nullStringValue','nullStringValue')}, \n ${isc.DocUtils.linkForRef('attr:DataSource.nullIntegerValue','nullIntegerValue')}, ${isc.DocUtils.linkForRef('attr:DataSource.nullFloatValue','nullFloatValue')} \n or ${isc.DocUtils.linkForRef('attr:DataSource.nullDateValue','nullDateValue')}, depending on the field type.\n <p>\n For \"add\" operations, setting ${isc.DocUtils.linkForRef('attr:DataSource.omitNullDefaultsOnAdd','omitNullDefaultsOnAdd')} causes\n null-valued fields to be removed from the request entirely, rather than replaced with\n default values as described above.",
        name:"noNullUpdates",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "type:DSInheritanceMode":{
        ref:"type:DSInheritanceMode",
        values:[
            {
                description:"Inherit fields by copying them onto the inheriting DataSource's underlying table.  When we \n import a DataSource with this inheritanceMode, we create actual columns for inherited fields\n  on the table we create.  With this inheritanceMode, inherited fields are updatable.",
                value:"\"full\""
            },
            {
                description:"Do not physically inherit fields onto the inheriting DataSource's SQL table.  Columns will\n not be created for inherited fields on import, and all generated SQL operations will exclude\n inherited fields.  However, those fields are still part of the DataSource's schema so you\n can, for example, write ${isc.DocUtils.linkForRef('group:customQuerying','custom SQL')} that returns values for \n the inherited fields, and they will be delivered to the client.",
                value:"\"none\""
            }
        ],
        description:"For DataSources of type \"sql\" and \"hibernate\", specifies the kind of inheritance to use when a dataSource\n specifies ${isc.DocUtils.linkForRef('attr:DataSource.inheritsFrom','inheritsFrom')}.",
        name:"DSInheritanceMode",
        seeAlso:[
        ],
        type:"type",
        serverDS:"only",
        groups:[
            "fields"
        ]
    },
    "method:FilterBuilder.getFieldOperators":{
        ref:"method:FilterBuilder.getFieldOperators",
        flags:"",
        description:" Get the list of ${isc.DocUtils.linkForRef('type:OperatorId','operatorIds')} that are valid for the passed field.  By \n default, all operators returned by ${isc.DocUtils.linkForRef('method:DataSource.getFieldOperators')} are used.\n <P>\n Called automatically by the default implementation of the same method on each\n ${isc.DocUtils.linkForRef('method:FilterClause.getFieldOperators','clause')}, whenever its fieldName is changed.\n \n",
        name:"getFieldOperators",
        seeAlso:[
        ],
        params:[
            {
                description:"the name of the field for which to return the set of available operators",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"valid operators for this field",
            type:"Array of OperatorId"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "classMethod:NumberUtil.stringify":{
        ref:"classMethod:NumberUtil.stringify",
        flags:"",
        description:" Return the passed number as a string padded out to digits length.\n\n",
        name:"stringify",
        seeAlso:[
        ],
        params:[
            {
                description:"Number object to stringify",
                optional:false,
                name:"number",
                defaultValue:null,
                type:"number"
            },
            {
                description:"Number of digits to pad to.  (Default is 2)",
                optional:true,
                name:"digits",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"Padded string version of the number",
            type:"string"
        },
        type:"classMethod",
        examples:[
            "var str = isc.NumberUtil.stringify(myNumberVar, 2);"
        ],
        definingClass:"class:NumberUtil",
        groups:[
            "stringProcessing"
        ]
    },
    "attr:Splitbar.showGrip":{
        ref:"attr:Splitbar.showGrip",
        flags:"IRA",
        description:"Should we show a \"grip\" image floating above the center of this widget?",
        name:"showGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Splitbar",
        groups:[
            "grip"
        ]
    },
    "attr:SectionStackSection.showHeader":{
        ref:"attr:SectionStackSection.showHeader",
        flags:"I",
        description:"If true, a header will be shown for this section.  If false, no header will be shown.",
        name:"showHeader",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"object:SectionStackSection"
    },
    "method:Calendar.getEventHoverHTML":{
        ref:"method:Calendar.getEventHoverHTML",
        flags:"",
        description:" Gets the hover HTML for an event being hovered over. Override here to return custom \n HTML based upon the parameter event object.\n\n",
        name:"getEventHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"The event being hovered",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            },
            {
                description:"the event window being hovered",
                optional:false,
                name:"eventWindow",
                defaultValue:null,
                type:"EventWindow"
            }
        ],
        returns:{
            description:"the HTML to show in the hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:Button.showDownIcon":{
        ref:"attr:Button.showDownIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the mouse goes\n down on the button.",
        name:"showDownIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('buttonIcons')}"
        ],
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "object:MenuItem":{
        methods:[
            "method:MenuItem.enableIf",
            "method:MenuItem.checkIf",
            "method:MenuItem.dynamicTitle",
            "method:MenuItem.dynamicIcon",
            "method:MenuItem.click",
            "method:MenuItem.action"
        ],
        ref:"object:MenuItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control/Menu"
        ],
        attrs:[
            "attr:MenuItem.title",
            "attr:MenuItem.submenu",
            "attr:MenuItem.canSelectParent",
            "attr:MenuItem.isSeparator",
            "attr:MenuItem.enabled",
            "attr:MenuItem.checked",
            "attr:MenuItem.disabledIcon",
            "attr:MenuItem.icon",
            "attr:MenuItem.iconWidth",
            "attr:MenuItem.iconHeight",
            "attr:MenuItem.keys",
            "attr:MenuItem.keyTitle",
            "attr:MenuItem.fetchSubmenus"
        ],
        description:"Menu items are specified are object literals, not class instances.  For example, when\n developing in JavaScript, a typical initialization block for a Menu would look like\n this:\n <pre>\n Menu.create({\n     data: [\n         {title: \"item1\", click: \"alert(1)\"},\n         {title: \"item2\"}\n     ]\n });\n </pre>\n And in XML:\n <pre>\n &lt;Menu&gt;\n    &lt;data&gt;\n        &lt;MenuItem title=\"item1\" click=\"alert(1)\"/&gt;\n        &lt;MenuItem title=\"item2\"/&gt;\n    &lt;/data&gt;\n &lt;/Menu&gt;\n </pre>",
        name:"MenuItem",
        seeAlso:[
        ],
        type:"object",
        inheritsFrom:"ListGridRecord"
    },
    "method:ColumnTree.selectRecords":{
        ref:"method:ColumnTree.selectRecords",
        flags:"",
        description:"\n Select/deselect a list of ${isc.DocUtils.linkForRef('object:Record')}s passed in explicitly, or by index.\n\n",
        name:"selectRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records (or row numbers) to select",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of Record | numbers"
            },
            {
                description:"new selection state (if null, defaults to true)",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"Column number",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:ColumnTree",
        groups:[
            "selection"
        ]
    },
    "classAttr:Operators.notStartsWithFieldTitle":{
        ref:"classAttr:Operators.notStartsWithFieldTitle",
        flags:"IR",
        description:"Title for the \"notStartsWithField\" operator",
        name:"notStartsWithFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"does not start with (match case) another field value\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:FormItemIcon.tabIndex":{
        ref:"attr:FormItemIcon.tabIndex",
        flags:"IRA",
        description:"TabIndex for this formItemIcon.\n <P>\n Set to -1 to remove the icon from the tab order, but be cautious doing so: if the\n icon triggers important application functionality that cannot otherwise be accessed\n via the keyboard, it would be a violation of accessibility standard to remove the\n icon from the tab order.\n <P>\n Any usage other than setting to -1 is extremely advanced in the same way as using\n ${isc.DocUtils.linkForRef('attr:FormItem.globalTabIndex')}.",
        name:"tabIndex",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:FormItemIcon",
        groups:[
            "formIcons"
        ]
    },
    "attr:FormulaBuilder.fields":{
        ref:"attr:FormulaBuilder.fields",
        flags:"IRW",
        description:"Set this to override the underlying set of available fields.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder",
        groups:[
            "formulaFields"
        ]
    },
    "method:ComboBoxItem.dataArrived":{
        ref:"method:ComboBoxItem.dataArrived",
        flags:"",
        description:" If this item is showing a dataBound pickList, this notification method will be fired \n when new data arrives from the server.\n",
        name:"dataArrived",
        seeAlso:[
        ],
        params:[
            {
                description:"index of first row returned by the server",
                optional:false,
                name:"startRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"index of last row returned by the server",
                optional:false,
                name:"endRow",
                defaultValue:null,
                type:"int"
            },
            {
                description:"pointer to this pickList's data",
                optional:false,
                name:"data",
                defaultValue:null,
                type:"ResultSet"
            }
        ],
        type:"method",
        definingClass:"class:ComboBoxItem"
    },
    "attr:Gradient.startColor":{
        ref:"attr:Gradient.startColor",
        flags:"IR",
        description:"A start color for the gradient. If both startColor and ${isc.DocUtils.linkForRef('attr:Gradient.endColor','endColor')}\n are set then ${isc.DocUtils.linkForRef('attr:Gradient.colorStops','colorStops')} is ignored.",
        name:"startColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Gradient"
    },
    "method:TabSet.removeTab":{
        ref:"method:TabSet.removeTab",
        flags:"A",
        description:" Remove a tab.\n <P>\n The pane associated with the removed tab is automatically destroyed when you\n call this method.  To avoid this, call ${isc.DocUtils.linkForRef('method:TabSet.updateTab')} with <code>null</code> as the new\n pane immediately before removing the tab, or set ${isc.DocUtils.linkForRef('attr:TabSet.destroyPanes')} to false.\n \n",
        name:"removeTab",
        seeAlso:[
            {
                ref:"method:TabSet.removeTabs",
                description:null
            }
        ],
        params:[
            {
                description:"list of tabs, tabIDs, or tab numbers",
                optional:false,
                name:"tabs",
                defaultValue:null,
                type:"Tab | ID | name | number | Array of Tab"
            }
        ],
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('tabsAddAndRemove')}"
        ],
        definingClass:"class:TabSet"
    },
    "classAttr:Operators.iBetweenInclusiveTitle":{
        ref:"classAttr:Operators.iBetweenInclusiveTitle",
        flags:"IR",
        description:"Title for the \"iBetweenInclusive\" operator",
        name:"iBetweenInclusiveTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"between (inclusive)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DatabaseBrowser.databaseList":{
        ref:"attr:DatabaseBrowser.databaseList",
        flags:"IR",
        description:"Instance of DynamicForm used to select a database from the list for display in the \n ${isc.DocUtils.linkForRef('attr:DatabaseBrowser.schemaTree','schemaTree')}.",
        name:"databaseList",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "classMethod:RPCRequest.create":{
        ref:"classMethod:RPCRequest.create",
        flags:"",
        description:" RPCRequest shouldn't be created directly. Instead, pass ${isc.DocUtils.linkForRef('type:Properties')} to \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.sendRequest')} and ${isc.DocUtils.linkForRef('classMethod:RPCManager.send')}.\n",
        name:"create",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:RPCRequest"
    },
    "method:ListGrid.markForRedraw":{
        ref:"method:ListGrid.markForRedraw",
        flags:"",
        description:" Marks the widget as \"dirty\" so that it will be added to a queue for redraw. Redraw of dirty\n components is handled by a looping timer and will after a very short delay (typically less than\n 100ms). In most cases it is recommended that developers use <code>markForRedraw()</code>\n instead of calling ${isc.DocUtils.linkForRef('method:Canvas.redraw')} directly. Since this method queues the redraw, multiple\n calls to markForRedraw() within a single thread of execution will only lead to a single DOM\n manipulation which greatly improves application performance.\n\n",
        name:"markForRedraw",
        seeAlso:[
        ],
        params:[
            {
                description:"reason for performing the redraw",
                optional:true,
                name:"reason",
                defaultValue:"\"no reason provided\"",
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "drawing"
        ]
    },
    "attr:DateItem.yearSelectorProperties":{
        ref:"attr:DateItem.yearSelectorProperties",
        flags:"IRA",
        description:"Custom properties to apply to this dateItem's generated ${isc.DocUtils.linkForRef('attr:DateItem.yearSelector')}.",
        name:"yearSelectorProperties",
        seeAlso:[
        ],
        valueType:"SelectItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateItem",
        groups:[
            "dateItemAppearance"
        ]
    },
    "attr:Menu.useKeys":{
        ref:"attr:Menu.useKeys",
        flags:"IRW",
        description:"A boolean indicating whether this menu should use shortcut keys. Set useKeys to\n false in a menu's initialization block to explicitly disable shortcut keys.",
        name:"useKeys",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:ListGrid.cellHoverHTML":{
        ref:"method:ListGrid.cellHoverHTML",
        flags:"",
        description:" StringMethod to dynamically assemble an HTML string to show in a hover window over the\n appropriate cell/record when this.canHover and this.showHover are both true.\n Called when the mouse hovers over a cell.\n\n",
        name:"cellHoverHTML",
        seeAlso:[
            {
                ref:"attr:ListGrid.canHover",
                description:null
            },
            {
                ref:"attr:ListGrid.showHover",
                description:null
            }
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the html to be shown inside the hover for this cell",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "events"
        ]
    },
    "classAttr:Dialog.SAY_TITLE":{
        ref:"classAttr:Dialog.SAY_TITLE",
        flags:"IRW",
        description:"Default title for the dialog displayed in response to the ${isc.DocUtils.linkForRef('classMethod:isc.say')} method.\n Note that a custom title can be specified as the <code>title</code> attribute of the\n <code>properties</code> parameter passed to that method.",
        name:"SAY_TITLE",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Note\"",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "i18nMessages"
        ]
    },
    "type:SelectionNotificationType":{
        ref:"type:SelectionNotificationType",
        values:[
            {
                description:"No selection change notification should fire",
                value:"\"none\""
            },
            {
                description:"${isc.DocUtils.linkForRef('method:ListGrid.selectionChanged')} should fire but  ${isc.DocUtils.linkForRef('method:ListGrid.selectionUpdated')} should not fire.",
                value:"\"selectionChanged\""
            },
            {
                description:"${isc.DocUtils.linkForRef('method:ListGrid.selectionChanged')} and  ${isc.DocUtils.linkForRef('method:ListGrid.selectionUpdated')} should both fire.",
                value:"\"selectionUpdated\""
            }
        ],
        description:"Enum to indicate selection change notification types. Used by\n ${isc.DocUtils.linkForRef('attr:ListGrid.reselectOnUpdateNotifications')}",
        name:"SelectionNotificationType",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ImgProperties.width":{
        ref:"attr:ImgProperties.width",
        flags:"IRW",
        description:"Specifies the width of the image.",
        name:"width",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ImgProperties"
    },
    "attr:StaticTextItem.outputAsHTML":{
        ref:"attr:StaticTextItem.outputAsHTML",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:StaticTextItem.escapeHTML')}",
        flags:"IRW",
        description:"By default HTML values in a staticTextItem will be interpreted by the browser.\n Setting this flag to true will causes HTML characters to be escaped, meaning the\n raw value of the field (for example <code>\"&lt;b&gt;AAA&lt;/b&gt;\"</code>) is displayed\n to the user rather than the interpreted HTML (for example <code>\"<b>AAA</b>\"</code>)",
        name:"outputAsHTML",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StaticTextItem",
        groups:[
            "appearance"
        ]
    },
    "group:columnControls":{
        ref:"group:columnControls",
        refs:[
            "method:CubeGrid.closeFacet",
            "method:CubeGrid.closeColumn",
            "method:CubeGrid.sortByFacetValues",
            "method:CubeGrid.sortByFacetId"
        ],
        description:null,
        name:"columnControls",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Snapbar.showDownGrip":{
        ref:"attr:Snapbar.showDownGrip",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true, this property determines whether to show the\n 'Down' state on the grip image when the user mousedown's on this widget. \n Has no effect if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')} is false.",
        name:"showDownGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Snapbar",
        groups:[
            "grip"
        ]
    },
    "attr:Tab.closeIcon":{
        ref:"attr:Tab.closeIcon",
        flags:"IRW",
        description:"Custom src for the close icon for this tab to display if it is closeable.\n See ${isc.DocUtils.linkForRef('attr:Tab.canClose')} and ${isc.DocUtils.linkForRef('attr:TabSet.canCloseTabs')}.",
        name:"closeIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Tab"
    },
    "method:Canvas.setWidth":{
        ref:"method:Canvas.setWidth",
        flags:"",
        description:" Resizes the widget horizontally to the specified width (moves the right side of the\n widget). The width parameter can be expressed as a percentage of viewport size or as\n the number of pixels.\n <P>\n NOTE: if you're setting multiple coordinates, use resizeTo() or setRect() instead\n\n",
        name:"setWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "classMethod:Class.fireCallback":{
        ref:"classMethod:Class.fireCallback",
        flags:"",
        description:"\n Fire some arbitrary action specified as a ${isc.DocUtils.linkForRef('type:Callback')}.\n Returns the value returned by the action.\n\n",
        name:"fireCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"Action to fire.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            },
            {
                description:"Comma separated string of variable names. If the callback                            passed in was a string of script, any arguments passed to the\n                            callback will be available as local variables with these names.",
                optional:true,
                name:"argNames",
                defaultValue:null,
                type:"string"
            },
            {
                description:"Array of arguments to pass to the method. Note that the number                          of arguments should match the number of argNames.",
                optional:true,
                name:"args",
                defaultValue:null,
                type:"array"
            },
            {
                description:"If specified the callback will be evaluated in the scope of this                          object - the <code>this</code> keyword will be a pointer to this\n                          target when the callback is fired.",
                optional:true,
                name:"target",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"returns the value returned by the callback method passed in.",
            type:"any"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:Calendar.descriptionField":{
        ref:"attr:Calendar.descriptionField",
        flags:"IR",
        description:"The name of the description field in a ${isc.DocUtils.linkForRef('object:CalendarEvent')}.",
        name:"descriptionField",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"description\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:MultiFileItem.dataSource":{
        ref:"attr:MultiFileItem.dataSource",
        flags:"IR",
        description:"DataSource where files are stored.  \n <P>\n This DataSource is expected to have a field of type \"binary\" as well as a primaryKey and\n foreignKey declaration to some other DataSource; see the ${isc.DocUtils.linkForRef('class:MultiFileItem')} for an\n overview.\n <P>\n This DataSource need only be capable of \"fetch\", \"add\" and \"remove\" - \"update\" is unused.",
        name:"dataSource",
        seeAlso:[
        ],
        valueType:"DataSource or ID",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiFileItem"
    },
    "attr:Palette.defaultEditContext":{
        ref:"attr:Palette.defaultEditContext",
        flags:"IRW",
        description:"Default EditContext that this palette should use.  Palettes generally create components via\n drag and drop, but may also support creation via double-click or other UI idioms when a\n defaultEditContext is set.",
        name:"defaultEditContext",
        setter:[
            "setDefaultEditContext"
        ],
        seeAlso:[
        ],
        valueType:"EditContext",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:Palette"
    },
    "method:DynamicForm.setFields":{
        ref:"method:DynamicForm.setFields",
        flags:"",
        description:" Set the ${isc.DocUtils.linkForRef('attr:DynamicForm.fields','items')} for this DynamicForm.  Takes an array of item\n definitions, which will be converted to ${isc.DocUtils.linkForRef('class:FormItem')}s and displayed in the form.\n <P>\n <smartclient>\n Note: Do not attempt to create ${isc.DocUtils.linkForRef('class:FormItem')} instances directly. This method should be\n passed the raw properties for each item only.\n </smartclient>\n <P>\n Objects passed to <code>setFields()</code> may not be reused in other forms and may not be\n used in subsequent calls to <code>setFields()</code> with the same form, new objects must be\n created instead.\n <P>\n To create a form where some items are conditionally present, rather than repeated calls to\n <code>setFields()</code> or <code>setItems()</code>, you should generally use\n ${isc.DocUtils.linkForRef('method:FormItem.hide')} and ${isc.DocUtils.linkForRef('method:FormItem.show')} and/or ${isc.DocUtils.linkForRef('method:FormItem.showIf')} rather than\n calling <code>setItems() or setFields()</code>.  <code>setItems()</code> and\n <code>setFields()</code> are appropriate for dynamically generated forms where there are\n few if any items that are the same each time the form is used.\n\n",
        name:"setFields",
        seeAlso:[
        ],
        params:[
            {
                description:"list of new items to show in the form",
                optional:false,
                name:"itemList",
                defaultValue:null,
                type:"Array of FormItem Properties"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "elements"
        ]
    },
    "attr:Calendar.canEditEvents":{
        ref:"attr:Calendar.canEditEvents",
        flags:"IR",
        description:"If true, users can edit existing events.",
        name:"canEditEvents",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "allowedOperations"
        ]
    },
    "method:ListGrid.sort":{
        ref:"method:ListGrid.sort",
        flags:"",
        description:" Sort this grid's data, with the option to explicitly specify a single field to\n sort by and sort direction.\n <P>\n If sortField is not provided and listGrid.sortField is undefined, the data will be sorted\n by the first sortable column according to ${isc.DocUtils.linkForRef('attr:ListGridField.sortDirection')} if specified,\n or ${isc.DocUtils.linkForRef('attr:ListGrid.sortDirection')}.\n <P>\n ListGrids also support multiple-field sorting. See ${isc.DocUtils.linkForRef('method:ListGrid.setSort')} for details.\n\n",
        name:"sort",
        seeAlso:[
            {
                ref:"type:SortDirection",
                description:null
            }
        ],
        params:[
            {
                description:"the field name or column number to sort by",
                optional:true,
                name:"sortField",
                defaultValue:null,
                type:"string | number"
            },
            {
                description:"the direction to sort in",
                optional:true,
                name:"sortDirection",
                defaultValue:null,
                type:"SortDirection"
            }
        ],
        returns:{
            description:"sorting worked",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "sorting"
        ]
    },
    "type:DSOperationType":{
        ref:"type:DSOperationType",
        values:[
            {
                description:"Fetch one or more records that match a set of search criteria.",
                value:"\"fetch\""
            },
            {
                description:"Store new records",
                value:"\"add\""
            },
            {
                description:"Update an existing record",
                value:"\"update\""
            },
            {
                description:"Remove (delete) an existing record",
                value:"\"remove\""
            },
            {
                description:"perform some arbitrary custom logic that is not a CRUD operation.                       Format of the inputs and outputs is unconstrained, and the operation\n                       will be ignored for cache sync purposes by ${isc.DocUtils.linkForRef('class:ResultSet')}s.  See \n                       ${isc.DocUtils.linkForRef('method:DataSource.performCustomOperation')}.",
                value:"\"custom\""
            },
            {
                description:"Run server-side validation for \"add\" or \"update\" without actually                       adding or updating anything.  See ${isc.DocUtils.linkForRef('method:DataSource.validateData')}.",
                value:"\"validate\""
            },
            {
                description:"Retrieve a file stored in a binary field in a DataSource record, and                       allow the browser to choose whether to view it directly or prompt the\n                       user to save.  See ${isc.DocUtils.linkForRef('group:binaryFields')}.",
                value:"\"viewFile\""
            },
            {
                description:"Like \"viewFile\", but the HTTP header Content-Disposition is used to                       suggest that the browser show a save dialog.  See ${isc.DocUtils.linkForRef('group:binaryFields')}.",
                value:"\"downloadFile\""
            },
            {
                description:"Upload formatted client data and export it to Excel, XML and other                        formats.  Used automatically by \n                       ${isc.DocUtils.linkForRef('method:DataSource.exportClientData','exportClientData()')} \n                       and cannot be used directly.  Usable only with the SmartClient server\n                       framework.",
                value:"\"clientExport\""
            }
        ],
        description:"One of the four basic operations that can be performed on DataSource data: \"fetch\",\n \"add\", \"update\", \"remove\".  Elsewhere called CRUD operations, where CRUD stands for\n \"create\", \"retrieve\", \"update\", \"delete\", which correspond to \"add\", \"fetch\", \"update\" and\n \"remove\" in SmartClient terminology.  See ${isc.DocUtils.linkForRef('group:dataSourceOperations')} for a full\n description.\n <p>\n There are also additional, non-CRUD operations explained below.",
        name:"DSOperationType",
        seeAlso:[
        ],
        type:"type"
    },
    "group:selection":{
        ref:"group:selection",
        title:"Selection",
        refs:[
            "method:CubeGrid.getEventRow",
            "method:CubeGrid.getEventColumn",
            "method:CubeGrid.facetValueSelectionChanged",
            "method:CubeGrid.getSelectedCells",
            "method:CubeGrid.getSelectedCellIds",
            "method:CubeGrid.anyCellSelected",
            "method:CubeGrid.cellIsSelected",
            "method:CubeGrid.selectCell",
            "method:CubeGrid.deselectCell",
            "method:CubeGrid.selectCells",
            "method:CubeGrid.deselectCells",
            "method:CubeGrid.selectAllCells",
            "method:CubeGrid.deselectAllCells",
            "method:CubeGrid.getSelectedFacetValues",
            "method:CubeGrid.facetValuesSelected",
            "method:CubeGrid.facetHasSelection",
            "method:CubeGrid.getFacetsHavingSelection",
            "method:CubeGrid.selectFacetValues",
            "method:CubeGrid.deselectFacetValues",
            "method:CubeGrid.selectFacetValue",
            "method:CubeGrid.deselectFacetValue",
            "method:CubeGrid.selectAllFacetValues",
            "method:CubeGrid.deselectAllFacetValues",
            "method:CubeGrid.deselectAll",
            "method:CubeGrid.cellSelectionChanged",
            "method:ListGrid.getSelection",
            "method:ListGrid.getSelectedRecord",
            "method:ListGrid.getSelectedRecords",
            "method:ListGrid.isSelected",
            "method:ListGrid.isPartiallySelected",
            "method:DataBoundComponent.selectRecord",
            "method:DataBoundComponent.selectSingleRecord",
            "method:DataBoundComponent.deselectRecord",
            "method:DataBoundComponent.selectRecords",
            "method:DataBoundComponent.deselectRecords",
            "method:DataBoundComponent.selectAllRecords",
            "method:DataBoundComponent.deselectAllRecords",
            "method:DataBoundComponent.anySelected",
            "method:DataBoundComponent.getSelectionLength",
            "method:DataBoundComponent.selectionUpdated",
            "method:Selection.isSelected",
            "method:Selection.isPartiallySelected",
            "method:Selection.anySelected",
            "method:Selection.getLength",
            "method:Selection.multipleSelected",
            "method:Selection.getSelection",
            "method:Selection.getSelectedRecord",
            "method:Selection.setSelected",
            "method:Selection.select",
            "method:Selection.deselect",
            "method:Selection.selectSingle",
            "method:Selection.selectList",
            "method:Selection.deselectList",
            "method:Selection.selectAll",
            "method:Selection.deselectAll",
            "method:Selection.selectItem",
            "method:Selection.deselectItem",
            "method:Selection.selectRange",
            "method:Selection.deselectRange",
            "method:GridRenderer.cellIsEnabled",
            "method:GridRenderer.getEventRow",
            "method:GridRenderer.getEventColumn",
            "method:GridRenderer.getNearestRowToEvent",
            "method:GridRenderer.getNearestColToEvent",
            "method:GridRenderer.selectionChanged",
            "method:GridRenderer.cellSelectionChanged",
            "method:ListGrid.selectRecord",
            "method:ListGrid.deselectRecord",
            "method:ListGrid.selectRecords",
            "method:ListGrid.deselectRecords",
            "method:ListGrid.deselectAllRecords",
            "method:ListGrid.anySelected",
            "method:ListGrid.selectSingleRecord",
            "method:ListGrid.cellSelectionChanged",
            "method:ListGrid.selectionChanged",
            "method:ListGrid.selectionUpdated",
            "method:TileGrid.getSelection",
            "method:TileGrid.getSelectedRecord",
            "method:TileGrid.selectRecord",
            "method:TileGrid.deselectRecord",
            "method:TileGrid.selectRecords",
            "method:TileGrid.deselectRecords",
            "method:TileGrid.selectAllRecords",
            "method:TileGrid.deselectAllRecords",
            "method:TileGrid.anySelected",
            "method:TileGrid.selectionChanged",
            "method:ColumnTree.selectRecord",
            "method:ColumnTree.deselectRecord",
            "method:ColumnTree.selectRecords",
            "method:ColumnTree.deselectRecords",
            "method:ColumnTree.selectAllRecords",
            "method:ColumnTree.deselectAllRecords",
            "method:ColumnTree.anySelected",
            "method:CellSelection.cellIsSelected",
            "method:CellSelection.anySelected",
            "method:CellSelection.getSelectedCells",
            "method:CellSelection.getSelectedRecord",
            "method:CellSelection.selectionChanged",
            "method:CellSelection.selectCell",
            "method:CellSelection.deselectCell",
            "method:CellSelection.selectCellList",
            "method:CellSelection.deselectCellList",
            "method:CellSelection.selectSingleCell",
            "method:Toolbar.selectButton",
            "method:Toolbar.deselectButton",
            "attr:ListGrid.selection",
            "attr:ListGrid.selectionAppearance",
            "attr:ListGrid.canSelectAll",
            "attr:ListGrid.selectionType",
            "attr:ListGrid.selectionProperty",
            "attr:ListGrid.canDragSelect",
            "attr:ListGrid.canDragSelectText",
            "attr:TreeGrid.selectionProperty",
            "attr:TreeGrid.canSelectAll",
            "attr:Menu.canSelectParentItems",
            "attr:TileGrid.selectionType",
            "attr:PickTreeItem.canSelectParentItems",
            "type:SelectionStyle"
        ],
        description:"APIs for marking ${isc.DocUtils.linkForRef('object:Record')}s as selected and retrieving the selected record or records.\n <P>\n Only applicable to a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} that manages a list of Records, or manages a\n data model that can be viewed as a list (for example, the current list of visible nodes\n on a tree can be treated as a list for selection purposes).",
        name:"selection",
        seeAlso:[
        ],
        type:"group"
    },
    "group:timer":{
        ref:"group:timer",
        refs:[
        ],
        name:"timer",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DrawItem.dragStartDistance":{
        ref:"attr:DrawItem.dragStartDistance",
        flags:"IRWA",
        description:"Number of pixels the cursor needs to move before the EventHandler starts a drag operation.",
        name:"dragStartDistance",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"5",
        type:"attr",
        definingClass:"class:DrawItem",
        groups:[
            "dragdrop"
        ]
    },
    "attr:Canvas.overflow":{
        ref:"attr:Canvas.overflow",
        flags:"IRW",
        description:"Controls what happens when the drawn size of the content of a Canvas is either\n\t\t\tgreater or smaller than the specified size of the Canvas.  Similar to the CSS\n\t\t\tproperty overflow, but consistent across browsers.  See Overflow type for\n\t\t\tdetails.",
        name:"overflow",
        setter:[
            "setOverflow"
        ],
        seeAlso:[
        ],
        valueType:"Overflow",
        defaultValue:"Canvas.VISIBLE",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "method:Calendar.dayBodyClick":{
        ref:"method:Calendar.dayBodyClick",
        flags:"",
        description:" Called when the body area of a day in the month view is clicked on, outside of any links\n to a particular event.\n <P>\n By default, if the user can add events, shows a dialog for adding a new event for that\n day.  Return false to cancel this action.\n <P>\n Not called if the day falls outside the current month and ${isc.DocUtils.linkForRef('attr:Calendar.showOtherDays')} is false.\n\n",
        name:"dayBodyClick",
        seeAlso:[
        ],
        params:[
            {
                description:"JavaScript Date object representing this day",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"events that fall on this day",
                optional:false,
                name:"events",
                defaultValue:null,
                type:"Array of CalendarEvent"
            },
            {
                description:"the calendar itself",
                optional:false,
                name:"calendar",
                defaultValue:null,
                type:"Calendar"
            },
            {
                description:"the row number to which the parameter date belongs",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the column number to which the parameter date belongs",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            }
        ],
        returns:{
            description:"false to cancel the default action",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "method:DrawItem.setLineCap":{
        ref:"method:DrawItem.setLineCap",
        flags:"",
        description:" Update lineCap for this drawItem.\n",
        name:"setLineCap",
        seeAlso:[
        ],
        params:[
            {
                description:"new lineCap to use",
                optional:false,
                name:"cap",
                defaultValue:null,
                type:"LineCap"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "attr:ListGrid.groupNodeStyle":{
        ref:"attr:ListGrid.groupNodeStyle",
        flags:"IRW",
        description:"The CSS style that ${isc.DocUtils.linkForRef('method:ListGrid.groupBy','group')} rows will have.\n <P>\n Note that this is not a ${isc.DocUtils.linkForRef('method:ListGrid.getBaseStyle','base style')}, so, if this\n property is set, group nodes will not show stateful styling\n (different styles for ${isc.DocUtils.linkForRef('attr:ListGrid.showRollOver')},\n ${isc.DocUtils.linkForRef('attr:ListGrid.alternateRecordStyles')}, etc). To enable stateful styling for\n groupNodes, set this property to <code>null</code> and specify a\n ${isc.DocUtils.linkForRef('attr:ListGrid.groupNodeBaseStyle')}",
        name:"groupNodeStyle",
        seeAlso:[
            {
                ref:"group:grouping",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"groupNode\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:ResultTree.applyFilter":{
        ref:"method:ResultTree.applyFilter",
        flags:"A",
        description:" The ResultTree will call applyFilter() when it needs to locally filter the tree using the\n current filter criteria.\n <P>\n Default behavior is to call ${isc.DocUtils.linkForRef('method:Tree.getFilteredTree')} to obtain a new, filtered tree.\n <P>\n Override this method or ${isc.DocUtils.linkForRef('method:Tree.getFilteredTree')} to implement your own client-side\n filtering behavior. Note that the original tree should not be affected.\n\n",
        name:"applyFilter",
        seeAlso:[
        ],
        params:[
            {
                description:"the source tree to be filtered",
                optional:false,
                name:"tree",
                defaultValue:null,
                type:"Tree"
            },
            {
                description:"the filter criteria",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"mode to use for filtering",
                optional:false,
                name:"filterMode",
                defaultValue:null,
                type:"TreeFilterMode"
            },
            {
                description:"dataSource for filtering if the Tree does not                                       already have one",
                optional:false,
                name:"dataSource",
                defaultValue:null,
                type:"DataSource"
            },
            {
                description:"Request properties block. This allows developers to specify  properties that would impact the filter such as ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')}",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest"
            }
        ],
        returns:{
            description:"the filtered tree (copy)",
            type:"Tree"
        },
        type:"method",
        definingClass:"class:ResultTree"
    },
    "method:ListGridField.recordDoubleClick":{
        ref:"method:ListGridField.recordDoubleClick",
        flags:"",
        description:"\n Executed when this field is double-clicked.  Note that if\n ${isc.DocUtils.linkForRef('method:ListGrid.recordDoubleClick')} is also defined, it will be fired for fields that define\n a recordDoubleClick handler if the field-level handler returns true. Return false to prevent\n the grid-level handler from firing.\n\n\n",
        name:"recordDoubleClick",
        seeAlso:[
            {
                ref:"method:ListGrid.recordClick",
                description:null
            }
        ],
        params:[
            {
                description:"the listGrid that contains doubleclick event",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"ListGrid"
            },
            {
                description:"the record that was double-clicked",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"number of the record clicked on in the current set of                                  displayed records (starts with 0)",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"the field that was clicked on (field definition)",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"number of the field clicked on in the listGrid.fields                                  array",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"value of the cell (after valueMap, etc. applied)",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"object"
            },
            {
                description:"raw value of the cell (before valueMap, etc applied)",
                optional:false,
                name:"rawValue",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"false to stop event bubbling",
            type:"boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('recordClicks')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "events"
        ]
    },
    "method:ResultSet.indexOf":{
        ref:"method:ResultSet.indexOf",
        flags:"",
        description:" Return the position in the list of the first instance of the specified object.\n <p>\n If pos is specified, starts looking after that position.\n <p>\n Returns -1 if not found.\n <p>\n <b>NOTE:</b> ResultSet.indexOf() only inspects the current cache of records, so it is only\n appropriate for temporary presentation purposes.  For example, it would not be appropriate\n to hold onto a record and attempt to use indexOf() to determine if it had been deleted.\n\n",
        name:"indexOf",
        seeAlso:[
        ],
        params:[
            {
                description:"object to look for",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            },
            {
                description:"earliest index to consider",
                optional:true,
                name:"pos",
                defaultValue:null,
                type:"number"
            },
            {
                description:"last index to consider",
                optional:true,
                name:"endPos",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"position of the item, if found, -1 if not found",
            type:"number"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access"
        ]
    },
    "attr:SliderItem.sliderProperties":{
        ref:"attr:SliderItem.sliderProperties",
        flags:"IR",
        description:"Properties to add to the automatically created ${isc.DocUtils.linkForRef('class:Slider')} used by this\n FormItem.  See the ${isc.DocUtils.linkForRef('class:Slider')} class for reference.",
        name:"sliderProperties",
        seeAlso:[
        ],
        valueType:"Slider properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SliderItem"
    },
    "classAttr:Validator.requiredField":{
        ref:"classAttr:Validator.requiredField",
        flags:"IRA",
        description:"Default error message to display when validation fails for a field marked as required\n or with a standard <code>required</code> type validator.\n The message is also displayed for a field with a standard <code>requiredIf</code> type\n validator whose condition evaluates to true, because the field has no value.",
        name:"requiredField",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Field is required\"",
        type:"classAttr",
        definingClass:"class:Validator",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Canvas.dataPath":{
        ref:"attr:Canvas.dataPath",
        flags:"IRWA",
        description:"A dataPath may be specified on any canvas. This provides a straightforward way to display or\n edit complex nested data.\n <P>\n For components which support displaying or editing data values, (such as ${isc.DocUtils.linkForRef('class:DynamicForm')} or\n ${isc.DocUtils.linkForRef('class:ListGrid')} components), the dataPath may be set to specify how the components data is\n accessed. In this case the dataPath essentially specifies a nested object to edit - typically\n a path to a field value within a dataSource record. Note that a ValuesManager will be required\n to handle connecting the dataBoundcomponent to the appropriate sub object. This may be explicitly\n specified on the component, or a parent of the component, or automatically generated\n if a DataSource is specified on either the component or a parent thereof.\n <P>\n To provide a simple example - if a complex object existed with the following format:\n <pre>\n { companyName:\"Some Company\",\n   address:{    street:\"123 Main Street\", city:\"New York\", state:\"NY\"  }\n }\n </pre>\n a developer could specify a DynamicForm instance with 'dataPath' set to \"address\" to edit\n the nested address object:\n <pre>\n isc.ValuesManager.create({\n      ID:'vm',\n      values: { companyName:\"Some Company\",\n              address:{    street:\"123 Main Street\", city:\"New York\", state:\"NY\"  }\n      }\n });\n\n isc.DynamicForm.create({\n      valuesManager:\"vm\",\n      dataPath:\"address\",\n      items:[{name:\"street\"}, {name:\"city\"}, {name:\"state\"}]\n });\n </pre>\n If a component is specified with a <code>dataPath</code> attribute but does not have an\n explicitly specified valuesManager, it will check its parent element chain for a specified\n valuesManager and automatically bind to that. This simplifies binding multiple components used\n to view or edit a nested data structure as the valuesManager needs only be defined once at a\n reasonably high level component. Here's an example of this approach:\n <pre>\n isc.ValuesManager.create({\n      ID:'vm',\n      values: { companyName:\"Some Company\",\n              address:{    street:\"123 Main Street\", city:\"New York\", state:\"NY\"  }\n      }\n });\n\n isc.Layout.create({\n      valuesManager:\"vm\",\n      members:[\n          isc.DynamicForm.create({\n              dataPath:\"/\",\n              items:[{name:\"companyName\"}]\n          }),\n          isc.DynamicForm.create({\n              dataPath:\"address\",\n              items:[{name:\"street\"}, {name:\"city\"}, {name:\"state\"}]\n          })\n      ]\n });\n </pre>\n Note that in this case the valuesManager is specified on a Layout, which has no 'values'\n management behavior of its own, but contains items with a specified dataPath which do. In this\n example you'd see 2 forms allowing editing of the nested data structure.\n <P>\n dataPaths from multiple nested components may also be combined. For example:\n <pre>\n isc.ValuesManager.create({\n      ID:'vm',\n      values: { companyName:\"Some Company\",\n              address:{    street:\"123 Main Street\", city:\"New York\", state:\"NY\"  }\n              parentCompany:{\n                  companyName:\"Some Corporation\",\n                  address:{   street:\"1 High Street\", city:\"New York\", state:\"NY\" }\n              }\n      }\n });\n\n isc.Layout.create({\n      valuesManager:\"vm\",\n      members:[\n          isc.DynamicForm.create({\n              dataPath:\"/\",\n              items:[{name:\"companyName\"}]\n          }),\n          isc.DynamicForm.create({\n              dataPath:\"address\",\n              items:[{name:\"street\"}, {name:\"city\"}, {name:\"state\"}]\n          }),\n          isc.Layout.create({\n              dataPath:\"parentCompany\",\n              members:[\n                  isc.DynamicForm.create({\n                      dataPath:\"/\",\n                      items:[{name:\"companyName\", type:\"staticText\"}]\n                  }),\n                  isc.DetailViewer.create({\n                      dataPath:\"address\",\n                      fields:[{name:\"street\", name:\"city\", name:\"state\"}]\n                  })\n              ]\n          })\n      ]\n });\n </pre>\n In this example the detailViewer will display data from the <code>parentCompany.address</code>\n object within the base record.\n <P>\n Note that if a component has a specified  dataSource and shows child components with a\n specified dataPath, there is no need to explicitly declare a valuesManager at all. If a component\n with a dataPath has a dataSource, or an ancestor with a dataSource specified, it will, a\n valuesManager will automatically be generated on the higher level component (and be available as\n <code>component.valuesManager</code>).",
        name:"dataPath",
        setter:[
            "setDataPath"
        ],
        seeAlso:[
        ],
        valueType:"DataPath",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas"
    },
    "method:Calendar.getDateStyle":{
        ref:"method:Calendar.getDateStyle",
        flags:"",
        description:" Return the CSS styleName for the cell associated with the passed date and/or rowNum & colNum.\n\n",
        name:"getDateStyle",
        seeAlso:[
            {
                ref:"method:Calendar.getDateCSSText",
                description:null
            }
        ],
        params:[
            {
                description:"the date to return the CSS styleName for",
                optional:false,
                name:"date",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the row number to get the style for",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the column number to get the style for",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"the ListGrid used by the current Calendar view",
                optional:false,
                name:"viewer",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"CSS style for the cell associated with the passed date",
            type:"CSSStyleName"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:DetailViewer.labelPrefix":{
        ref:"attr:DetailViewer.labelPrefix",
        flags:"IRW",
        description:"text to put before a label",
        name:"labelPrefix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "labels"
        ]
    },
    "attr:ListGridField.optionFilterContext":{
        ref:"attr:ListGridField.optionFilterContext",
        flags:"IR",
        description:"If this field has an optionDataSource specified and\n ${isc.DocUtils.linkForRef('attr:ListGridField.autoFetchDisplayMap','autoFetchDisplayMap')} is set, this attribute\n provides a way to customize the dataSource request issued to fetch the display map from\n the option dataSource.",
        name:"optionFilterContext",
        seeAlso:[
        ],
        valueType:"DSRequest Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "method:MenuBar.addMenus":{
        ref:"method:MenuBar.addMenus",
        flags:"",
        description:" Dynamically update the menuBar to include additional menus. Will update the visible set\n of buttons as appropriate\n",
        name:"addMenus",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of new menus to add",
                optional:false,
                name:"newMenus",
                defaultValue:null,
                type:"array"
            },
            {
                description:"desired starting position of the new menus in the existing menus   array",
                optional:false,
                name:"position",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:MenuBar"
    },
    "attr:Mail.multiple":{
        ref:"attr:Mail.multiple",
        flags:"IR",
        description:"By default, multiple mail messages are sent if the dsResponse contains multiple records. \n Set this property to false to prevent this behavior.",
        name:"multiple",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "classMethod:Date.setFirstDayOfWeek":{
        ref:"classMethod:Date.setFirstDayOfWeek",
        flags:"",
        description:" Sets the global attribute that dictates which day should be treated as the first day of the\n week in calendars and date calculations.  The parameter is expected to be an integer value \n between 0 (Sunday) and 6 (Saturday).\n <P>\n The default value is picked up from the current locale.\n\n",
        name:"setFirstDayOfWeek",
        seeAlso:[
        ],
        params:[
            {
                description:"the number of the day to use as the first day of the week",
                optional:false,
                name:"firstDayOfWeek",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:RelativeDateItem.shouldSaveValue":{
        ref:"attr:RelativeDateItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem",
        groups:[
            "formValues"
        ]
    },
    "attr:StretchImgButton.showDisabled":{
        ref:"attr:StretchImgButton.showDisabled",
        flags:"IRW",
        description:"Should we visibly change state when disabled?",
        name:"showDisabled",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:StretchImgButton",
        groups:[
            "state"
        ]
    },
    "attr:ColorPicker.colorButtonBaseStyle":{
        ref:"attr:ColorPicker.colorButtonBaseStyle",
        flags:"IR",
        description:"Base CSS style applied to the basic color boxes",
        name:"colorButtonBaseStyle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"ColorChooserCell\"",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "method:DetailViewer.getViewState":{
        ref:"method:DetailViewer.getViewState",
        flags:"",
        description:" Returns a snapshot of the current view state of this DetailViewer.<br>\n This includes the field, sort and hilite state of the grid, returned as a\n ${isc.DocUtils.linkForRef('type:DetailViewerViewState')} object.<br>\n This object can be passed to ${isc.DocUtils.linkForRef('method:DetailViewer.setViewState')} to reset this detail viewer's vew state\n to the current state (assuming the same data / fields are present in the detail viewer).<br>\n",
        name:"getViewState",
        seeAlso:[
            {
                ref:"type:DetailViewerViewState",
                description:null
            },
            {
                ref:"method:DetailViewer.setViewState",
                description:null
            }
        ],
        returns:{
            description:"current view state for the detail viewer.",
            type:"DetailViewerViewState"
        },
        type:"method",
        definingClass:"class:DetailViewer",
        groups:[
            "viewState"
        ]
    },
    "attr:MetricSettings.dataGradients":{
        ref:"attr:MetricSettings.dataGradients",
        flags:"IR",
        description:"A dictionary of gradients to use for a series of visual elements representing data (eg columns,\n bars, pie slices), any of which may be adjacent to any other.",
        name:"dataGradients",
        seeAlso:[
        ],
        valueType:"Map Gradient",
        defaultValue:"see below",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:ListGrid.expansionDetails":{
        ref:"attr:ListGrid.expansionDetails",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:DetailViewer')} for displaying the details of a record\n in its expanded section when\n ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')} is <code>details</code>.  Note that\n only those fields\n which do not already appear in the grid are displayed in the expanded section.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.expansionDetailsProperties</code> and\n <code>listGrid.expansionDetailsDefaults</code>.\n <P>\n Note, however, that this is a multi-instance component (potentially one per record),\n so it is created using ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')} not\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')}, and no default single instance is created by\n name on the grid.",
        name:"expansionDetails",
        seeAlso:[
        ],
        valueType:"MultiAutoChild DetailViewer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:StatefulCanvas.isSelected":{
        ref:"method:StatefulCanvas.isSelected",
        flags:"",
        description:" Find out if this object is selected\n",
        name:"isSelected",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "method:DrawItem.setLineColor":{
        ref:"method:DrawItem.setLineColor",
        flags:"",
        description:" Update lineColor for this drawItem.\n",
        name:"setLineColor",
        seeAlso:[
        ],
        params:[
            {
                description:"new line color.  Pass null for transparent.",
                optional:false,
                name:"color",
                defaultValue:null,
                type:"CSSColor"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:ImgButton.titleHoverHTML":{
        ref:"method:ImgButton.titleHoverHTML",
        flags:"",
        description:" Returns the HTML that is displayed by the default ${isc.DocUtils.linkForRef('method:ImgButton.titleHover','titleHover')}\n handler. Return null or an empty string to cancel the hover.\n <smartgwt><p>Use <code>setTitleHoverFormatter()</code> to provide a custom\n implementation.</smartgwt>\n",
        name:"titleHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the HTML that would have been displayed by default",
                optional:false,
                name:"defaultHTML",
                defaultValue:null,
                type:"HTMLString"
            }
        ],
        returns:{
            description:"HTML to be displayed in the hover. If null or an empty string, then the hover is canceled.",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:ImgButton"
    },
    "attr:Dialog.toolbarButtons":{
        ref:"attr:Dialog.toolbarButtons",
        flags:"IR",
        description:"This is a synonym for ${isc.DocUtils.linkForRef('attr:Dialog.buttons')}",
        name:"toolbarButtons",
        setter:[
            "setToolbarButtons"
        ],
        seeAlso:[
        ],
        valueType:"Array of Button or Button Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Dialog"
    },
    "attr:MultiComboBoxItem.valueField":{
        ref:"attr:MultiComboBoxItem.valueField",
        flags:"IR",
        description:"The <code>valueField</code> of the combo box.",
        name:"valueField",
        seeAlso:[
            {
                ref:"attr:ComboBoxItem.valueField",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "attr:Snapbar.showRollOverGrip":{
        ref:"attr:Snapbar.showRollOverGrip",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:StretchImg.showGrip')} is true, this property determines whether to show the\n 'Over' state on the grip image when the user rolls over on this widget. \n Has no effect if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')} is false.",
        name:"showRollOverGrip",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Snapbar",
        groups:[
            "grip"
        ]
    },
    "attr:DateChooser.closeOnEscapeKeypress":{
        ref:"attr:DateChooser.closeOnEscapeKeypress",
        flags:"IR",
        description:"Should this dateChooser be dismissed if the user presses the Escape key?",
        name:"closeOnEscapeKeypress",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classMethod:FileLoader.loadISC":{
        ref:"classMethod:FileLoader.loadISC",
        flags:"",
        description:"\n Loads the specified SmartClient modules and skin in defer mode.  Calling this method is\n equivalent to using the <code>loadISC</code> JSP tag with <code>defer=\"true\"</code>.\n\n",
        name:"loadISC",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the skin to load.  If not specified, the skin specified by the                        default ${isc.DocUtils.linkForRef('classAttr:FileLoader.defaultSkin')} will be used.\n                        Instead of a skin name, you can specify a skinDir - this works just\n                        like ${isc.DocUtils.linkForRef('classMethod:Page.setSkinDir')} - the skin assumed to be a skinDir if\n                        there's at least one forward slash (/) in the name.",
                optional:true,
                name:"skin",
                defaultValue:null,
                type:"String"
            },
            {
                description:"List of modules to load.  If not specified, the list of modules                                   specified by the default\n                                   ${isc.DocUtils.linkForRef('classAttr:FileLoader.defaultModules')} will be used.  You\n                                   can specify modules as e.g: \"Core,Foundation\" or as [\"Core\",\n                                   \"Foundation\"]",
                optional:true,
                name:"modules",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when all specified modules and                                      skin have loaded.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "classAttr:MultiComboBoxItem.defaultHint":{
        ref:"classAttr:MultiComboBoxItem.defaultHint",
        flags:"R",
        description:"The default hint string.",
        name:"defaultHint",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Enter values\"",
        type:"classAttr",
        definingClass:"class:MultiComboBoxItem",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:isc.getValues":{
        ref:"classMethod:isc.getValues",
        flags:"",
        description:"\n\tReturn all values of a given object\n\n",
        name:"getValues",
        seeAlso:[
        ],
        params:[
            {
                description:"object to get properties from",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"values of all properties.  NOTE: never null",
            type:"Array"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "method:Class.logIsWarnEnabled":{
        ref:"method:Class.logIsWarnEnabled",
        flags:"",
        description:" Check whether a message logged at \"warn\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsWarnEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "attr:ActiveXControl.id":{
        ref:"attr:ActiveXControl.id",
        flags:"IR",
        description:"Sets the 'id' attribute on the object.  If a name is not provided it will be\n  auto-generated.  Note that in general you don't need to set this.  If you have a reference to\n  your ISC ActiveX control object you can simply call\n  ${isc.DocUtils.linkForRef('method:ActiveXControl.getPluginHandle')} to get a handle to the element.",
        name:"id",
        seeAlso:[
            {
                ref:"method:ActiveXControl.getPluginHandle",
                description:null
            },
            {
                ref:"method:ActiveXControl.getPluginID",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ActiveXControl"
    },
    "attr:MultiGroupDialog.levelUpButtonTitle":{
        ref:"attr:MultiGroupDialog.levelUpButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Up button.",
        name:"levelUpButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Up\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Array.addList":{
        ref:"method:Array.addList",
        flags:"",
        description:" Add a list of items to this array.\n <P>\n Note: you can specify that a subset range be added by passing start and end indices\n\n",
        name:"addList",
        seeAlso:[
        ],
        params:[
            {
                description:"list of items to add",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array"
            },
            {
                description:"optional start index in list",
                optional:true,
                name:"listStartRow",
                defaultValue:null,
                type:"number"
            },
            {
                description:"optional end index in list (non-inclusive)",
                optional:true,
                name:"listEndRow",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"list of items that were added",
            type:"list"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "modification"
        ]
    },
    "classMethod:History.getCurrentHistoryId":{
        ref:"classMethod:History.getCurrentHistoryId",
        flags:"",
        description:"\n Returns the current history id as reflected by the current URL.\n\n",
        name:"getCurrentHistoryId",
        seeAlso:[
        ],
        returns:{
            description:"The current history id as reflected by the current URL.",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:History"
    },
    "attr:Mail.contentType":{
        ref:"attr:Mail.contentType",
        flags:"IR",
        description:"Used to override the content-type header applied to the email.  Primarily used to send \n HTML emails rather than plain text ones (use \"text/html\" to do this).",
        name:"contentType",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "attr:Calendar.showEventDescriptions":{
        ref:"attr:Calendar.showEventDescriptions",
        flags:"IR",
        description:"If false, the event header will take up the entire space of the event. This is useful\n when you want to be able to drag reposition by the entire event and not just the header.",
        name:"showEventDescriptions",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "method:Portlet.getPortalLayout":{
        ref:"method:Portlet.getPortalLayout",
        flags:"",
        description:" Gets the ${isc.DocUtils.linkForRef('class:PortalLayout')} which encloses this Portlet (or null, if none).\n",
        name:"getPortalLayout",
        seeAlso:[
        ],
        returns:{
            description:"the PortalLayout enclosing this Portlet",
            type:"PortalLayout"
        },
        type:"method",
        definingClass:"class:Portlet"
    },
    "attr:RichTextEditor.fontNames":{
        ref:"attr:RichTextEditor.fontNames",
        flags:"IRA",
        description:"ValueMap of css fontName properties to font name titles to display in the font selector \n if <code>\"fontSelector\"</code> is included in ${isc.DocUtils.linkForRef('attr:RichTextEditor.controlGroups')} \n for this editor.\n Default value for this attribute:<br>\n <code> {\n &nbsp;&nbsp;\"arial,helvetica,sans-serif\":\"Arial\",\n &nbsp;&nbsp;'courier new,courier,monospace':\"Courier New\",\n &nbsp;&nbsp;'georgia,times new roman,times,serif':\"Georgia\",\n &nbsp;&nbsp;'tahoma,arial,helvetica,sans-serif':\"Tahoma\",\n &nbsp;&nbsp;'times new roman,times,serif':\"Times New Roman\",\n &nbsp;&nbsp;'verdana,arial,helvetica,sans-serif':\"Verdana\",\n &nbsp;&nbsp;\"impact\":\"Impact\"}</code>",
        name:"fontNames",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"{}",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "attr:ListGrid.gridComponents":{
        ref:"attr:ListGrid.gridComponents",
        flags:"IR",
        description:"Array of components that make up this grid. This array controls which standard and/or custom\n parts will be displayed within this ListGrid.\n <P>\n ListGrid is a subclass of ${isc.DocUtils.linkForRef('class:VLayout')} and consists of a number of member components. The\n standard set of members are automatically generated by the grid, and include (for example)\n the header (a Toolbar of buttons for each field) and the body\n (a GridRenderer displaying the actual data contained in the grid).<br>\n The default value of <code>gridComponents</code> is an Array of ${isc.DocUtils.linkForRef('type:ListGridComponent')}s listing\n the standard components in their default order:\n <smartclient>\n <pre>\n    gridComponents : [\"filterEditor\", \"header\",\n                      \"body\", \"summaryRow\"]\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n    [ListGridComponent.FILTER_EDITOR, ListGridComponent.HEADER, ListGridComponent.BODY,\n     ListGridComponent.SUMMARY_ROW]\n </pre>\n </smartgwt>\n\n You can override <code>gridComponents</code> to change the order of standard components.\n You can also omit standard components this way, although it more efficient to\n use the related \"show\" property if available (eg ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')}). Note that\n this array must contain an entry for the <code>\"body\"</code> - listGrids with no body showing\n are unsupported.<br>\n <i>Advanced note:</i> The live components generated for each of these standard\n ${isc.DocUtils.linkForRef('type:ListGridComponent')} types may differ across different listGrids. For example if this\n grid has any ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','frozen fields')}, the \"body\" entry will actually\n be created as an HLayout containing two GridRenderers (one for frozen fields,\n and one for unfrozen fields). This is really an implementation detail - the \"body\" entry\n in the gridComponents array simply specifies where the UI for the body should render within\n the ListGrid layout.\n <P>\n By embedding a Canvas directly in this list you can add arbitrary additional components to the\n listGrid as members, and have them be displayed alongside the standard automatically generated\n parts of the ListGrid.\n <P>\n Note that having added controls to gridComponents, you can still call APIs directly on\n those controls to change their appearance, and you can also show() and hide() them if\n they should not be shown in some circumstances.\n <P>\n Tip: custom controls need to set layoutAlign:\"center\" to appear vertically centered.",
        name:"gridComponents",
        seeAlso:[
        ],
        valueType:"Array of ListGridComponent | Array of any",
        defaultValue:"(see below)",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "method:FacetChart.getDrawnValues":{
        ref:"method:FacetChart.getDrawnValues",
        flags:"",
        description:" Returns rendering information for the data values specified by the passed facet values.\n <p>\n If called before ${isc.DocUtils.linkForRef('method:FacetChart.chartDrawn')}, logs a warning and returns null.\n",
        name:"getDrawnValues",
        seeAlso:[
        ],
        params:[
            {
                description:"facet values of desired DrawnValues. If no FacetValueMap is provided, then all DrawnValues are returned.",
                optional:true,
                name:"facetValues",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"the DrawnValues, or null for invalid arguments / incorrect timing of call",
            type:"Array of DrawnValue"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "attr:UserTask.targetVM":{
        ref:"attr:UserTask.targetVM",
        flags:"IR",
        description:"Optional ValuesManager which will receive task inputs and provide task outputs.  Use\n ${isc.DocUtils.linkForRef('attr:UserTask.targetForm')} instead of you want to use a DynamicForm.",
        name:"targetVM",
        seeAlso:[
        ],
        valueType:"ValuesManager or String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "method:TimeItem.deselectValue":{
        ref:"method:TimeItem.deselectValue",
        flags:"",
        description:" If ${isc.DocUtils.linkForRef('attr:TimeItem.useTextField')} is true, falls through to standard\n ${isc.DocUtils.linkForRef('method:TextItem.deselectValue','deselectValue()')} implementation on this items freeform text entry field.\n Otherwise has no effect.\n",
        name:"deselectValue",
        seeAlso:[
        ],
        params:[
            {
                description:"If this parameter is passed, new cursor insertion position will be   moved to the start, rather than the end of this item's value.",
                optional:true,
                name:"start",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        type:"method",
        definingClass:"class:TimeItem"
    },
    "attr:SplitPane.listPane":{
        ref:"attr:SplitPane.listPane",
        flags:"IRW",
        description:"An optional list pane displayed in the left-hand of the panes or in a side panel\n according to the pane layout.",
        name:"listPane",
        setter:[
            "setListPane"
        ],
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "attr:FilterBuilder.radioOperatorForm":{
        ref:"attr:FilterBuilder.radioOperatorForm",
        flags:"IR",
        description:"With ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')}:\"radio\", form that appears above the stack of clauses\n and allows picking the ${isc.DocUtils.linkForRef('type:LogicalOperator')} for the overall FilterBuilder.\n <P>\n By default, consists of a simple RadioGroupItem.",
        name:"radioOperatorForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:GridRenderer.cellHeight":{
        ref:"attr:GridRenderer.cellHeight",
        flags:"IRW",
        description:"The default height of each row in pixels.",
        name:"cellHeight",
        seeAlso:[
            {
                ref:"method:GridRenderer.getRowHeight",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:GridRenderer",
        groups:[
            "cellStyling"
        ]
    },
    "attr:TreeGrid.offlineNodeMessage":{
        ref:"attr:TreeGrid.offlineNodeMessage",
        flags:"IRW",
        description:"For TreeGrids with loadDataOnDemand: true, a message to show the user if an attempt is \n made to open a folder, and thus load that node's children, while we are offline and \n there is no offline cache of that data.  The message will be presented to the user in \n in a pop-up dialog box.",
        name:"offlineNodeMessage",
        seeAlso:[
            {
                ref:"attr:DataBoundComponent.offlineMessage",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"This data not available while offline\"",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "offlineGroup",
            "i18nMessages"
        ]
    },
    "method:ListGrid.setFieldCellIcon":{
        ref:"method:ListGrid.setFieldCellIcon",
        flags:"",
        description:" Change the ${isc.DocUtils.linkForRef('attr:ListGridField.cellIcon')} for a field after the grid is created\n",
        name:"setFieldCellIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"field to update",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new cellIcon for the field",
                optional:false,
                name:"cellIcon",
                defaultValue:null,
                type:"SCImgURL"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "classMethod:Array.compareDescending":{
        ref:"classMethod:Array.compareDescending",
        flags:"A",
        description:" Compare two values for a descending order sort, using locale-sensitive comparison.\n",
        name:"compareDescending",
        seeAlso:[
        ],
        params:[
            {
                description:"first value to compare",
                optional:false,
                name:"first",
                defaultValue:null,
                type:"any"
            },
            {
                description:"second value to compare",
                optional:false,
                name:"second",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"negative == first is larger, 0 == same value, positive == second is larger",
            type:"number"
        },
        type:"classMethod",
        definingClass:"object:Array",
        groups:[
            "sorting"
        ]
    },
    "attr:TabSet.symmetricPickerButton":{
        ref:"attr:TabSet.symmetricPickerButton",
        flags:"IR",
        description:"If this TabSet is showing a ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker','tab picker button')}, this\n property determines whether the ${isc.DocUtils.linkForRef('attr:TabSet.pickerButtonHSrc')} and\n ${isc.DocUtils.linkForRef('attr:TabSet.pickerButtonVSrc')} media will be used for vertical and horizontal tab-bar\n picker buttons, or whether separate media should be used for each possible \n ${isc.DocUtils.linkForRef('attr:TabSet.tabBarPosition','tabBarPosition')} based on the ${isc.DocUtils.linkForRef('attr:TabSet.pickerButtonSrc')}\n property  for this tabSet.",
        name:"symmetricPickerButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarScrolling"
        ]
    },
    "class:Messaging":{
        methods:[
        ],
        ref:"class:Messaging",
        classAttrs:[
            "classAttr:Messaging.messagingURL",
            "classAttr:Messaging.connectTimeout"
        ],
        classMethods:[
            "classMethod:Messaging.send",
            "classMethod:Messaging.getSubscribedChannels",
            "classMethod:Messaging.subscribe",
            "classMethod:Messaging.unsubscribe",
            "classMethod:Messaging.connected",
            "classMethod:Messaging.disconnect"
        ],
        treeLocation:[
            "Optional Modules/Messaging"
        ],
        attrs:[
        ],
        description:"The Real-Time Messaging module creates a channel for messages to be sent from the server to\n the client (a.k.a. \"server push\") in real-time (as opposed to periodically polling the\n server for updates).\n <p>\n See ${isc.DocUtils.linkForRef('group:messaging','Messaging overview')} for information.",
        name:"Messaging",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:MultiSortDialog.firstSortLevelTitle":{
        ref:"attr:MultiSortDialog.firstSortLevelTitle",
        flags:"IR",
        description:"The title-text to appear in the first column for the first sort-level.\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiSortPanel','MultiSortPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiSortPanel for i18n.",
        name:"firstSortLevelTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Sort by\"",
        type:"attr",
        definingClass:"class:MultiSortDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Canvas.canFocus":{
        ref:"attr:Canvas.canFocus",
        flags:"IRWA",
        description:"Can this widget be allowed to become the target of keyboard events?\n <P>\n If canFocus is unset (the default), only scrollable widgets with visible scrollbars are\n focusable, to allow for keyboard scrolling.\n <P>\n A widget normally receives focus by being clicked on or tabbed to.",
        name:"canFocus",
        setter:[
            "setCanFocus"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('focus')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "focus",
            "events"
        ]
    },
    "group:imageEdgeStyles":{
        ref:"group:imageEdgeStyles",
        refs:[
            "attr:EdgedCanvas.edgeStyleName",
            "attr:EdgedCanvas.addEdgeStyleSuffix"
        ],
        name:"imageEdgeStyles",
        seeAlso:[
        ],
        type:"group"
    },
    "method:FacetChart.getStdDev":{
        ref:"method:FacetChart.getStdDev",
        flags:"",
        description:" Calculate the standard deviation of the data from a single metric.\n See <a href=\"http://en.wikipedia.org/wiki/Standard_deviation\">http://en.wikipedia.org/wiki/Standard_deviation</a>.\n <p>\n The first argument, criteria, determines which metric is used to calculate the standard deviation.\n The criteria may be a String that is the \"id\" of some ${isc.DocUtils.linkForRef('class:FacetValue')} of\n the metric facet, or a ${isc.DocUtils.linkForRef('object:FacetValueMap')} that contains an entry for the metric facet,\n or null to use the ${isc.DocUtils.linkForRef('attr:FacetChart.valueProperty')}.  A FacetValueMap criteria may also be used to restrict\n the calculation to a slice of the data.\n",
        name:"getStdDev",
        seeAlso:[
        ],
        params:[
            {
                description:"the \"id\" of a metric facet value, or a set of mappings describing the data over which to calculate, or null",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"String | FacetValueMap"
            },
            {
                description:"false to calculate a sample standard deviation, true to calculate a population standard deviation",
                optional:false,
                name:"population",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"the standard deviation of the data values",
            type:"Float"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:GridRenderer.cellMouseUp":{
        ref:"method:GridRenderer.cellMouseUp",
        flags:"A",
        description:" Called when a cell receives a mouseup event.\n\n",
        name:"cellMouseUp",
        seeAlso:[
        ],
        params:[
            {
                description:"Record object (retrieved from getCellRecord(rowNum, colNum))",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:DateChooser.dateGrid":{
        ref:"attr:DateChooser.dateGrid",
        flags:"IR",
        description:"A ${isc.DocUtils.linkForRef('class:ListGrid')} subclass, responsible for rendering the calendar view.",
        name:"dateGrid",
        seeAlso:[
        ],
        valueType:"AutoChild DateGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:DateChooser.nextMonthIcon":{
        ref:"attr:DateChooser.nextMonthIcon",
        flags:"IRW",
        description:"Icon for the next month button",
        name:"nextMonthIcon",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"\"[SKIN]arrow_right.gif\"",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classMethod:Page.setSkinDir":{
        ref:"classMethod:Page.setSkinDir",
        flags:"",
        description:"\t\tSpecify the URL for media that's part of the skin\n\n",
        name:"setSkinDir",
        seeAlso:[
        ],
        params:[
            {
                description:"New skinDir URL",
                optional:true,
                name:"URL",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "skins",
            "files",
            "images"
        ]
    },
    "attr:ListGrid.canFreezeFields":{
        ref:"attr:ListGrid.canFreezeFields",
        flags:"IRW",
        description:"Whether an interface should be shown to allow user is allowed to dynamically \"freeze\" or\n \"unfreeze\" columns with respect to horizontally scrolling. If unset, this property defaults\n to <code>true</code> unless:<ul>\n <li>${isc.DocUtils.linkForRef('attr:ListGrid.fixedRecordHeights','this.fixedRecordHeights')} is <code>false</code></li>\n <li>${isc.DocUtils.linkForRef('attr:ListGrid.bodyOverflow','this.bodyOverflow')} is <code>\"visible\"</code></li>\n <li>${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData','this.autoFitData')} is set to <code>\"horizontal\"</code> or\n <code>\"both\"</code></li>\n <li>Any field has overflow set to <code>\"visible\"</code></li></ul>\n <P>\n Note that the <code>canFreezeFields</code> setting enables or disables the user\n interface for freezing and unfreezing fields only.  Fields can be programmatically\n frozen via setting ${isc.DocUtils.linkForRef('attr:ListGridField.frozen','field.frozen')} to true when the grid is\n created, or dynamically frozen and unfrozen via ${isc.DocUtils.linkForRef('method:ListGrid.freezeField')} and\n ${isc.DocUtils.linkForRef('method:ListGrid.unfreezeField')}.",
        name:"canFreezeFields",
        setter:[
            "setCanFreezeFields"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "frozenFields"
        ]
    },
    "attr:FormItem.showRTL":{
        ref:"attr:FormItem.showRTL",
        flags:"IRA",
        description:"When this item is in RTL mode, should its style name include an \"RTL\" suffix?",
        name:"showRTL",
        seeAlso:[
            {
                ref:"attr:FormItem.cellStyle",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "RTL",
            "appearance"
        ]
    },
    "method:ListGrid.getFieldNum":{
        ref:"method:ListGrid.getFieldNum",
        flags:"A",
        description:"\t\tGiven a field or field id, return it's index in the fields array\n",
        name:"getFieldNum",
        seeAlso:[
        ],
        params:[
            {
                description:"field number or field.name",
                optional:false,
                name:"fieldID",
                defaultValue:null,
                type:"String | number"
            }
        ],
        returns:{
            description:"index of the field within this.fields",
            type:"int"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "display"
        ]
    },
    "attr:TabSet.moreTabTitle":{
        ref:"attr:TabSet.moreTabTitle",
        flags:"IR",
        description:"Title for the \"More\" tab.",
        name:"moreTabTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"More\"",
        type:"attr",
        definingClass:"class:TabSet"
    },
    "attr:Scrollbar.cornerImg":{
        ref:"attr:Scrollbar.cornerImg",
        flags:"IR",
        description:"The StretchItem for the corner between vertical and horizontal scrollbars. The width\n and height are determined automatically, so ${isc.DocUtils.linkForRef('attr:StretchItem.width')} and ${isc.DocUtils.linkForRef('attr:StretchItem.height')}\n set on the cornerImg StretchItem are ignored. The default is:\n <smartclient><code>{ name:\"corner\" }</code></smartclient>\n <smartgwt><code>new StretchItem(\"corner\", null, null)</code></smartgwt>",
        name:"cornerImg",
        seeAlso:[
        ],
        valueType:"StretchItem",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:Scrollbar"
    },
    "method:Tree.removeList":{
        ref:"method:Tree.removeList",
        flags:"",
        description:"\n Remove a list of nodes (not necessarily from the same parent), and all children of those nodes.\n\t\t\t\n",
        name:"removeList",
        seeAlso:[
        ],
        params:[
            {
                description:"list of nodes to remove",
                optional:false,
                name:"nodeList",
                defaultValue:null,
                type:"List of TreeNode"
            }
        ],
        returns:{
            description:"true if the tree was changed as a result of this call",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:Canvas.moveBy":{
        ref:"method:Canvas.moveBy",
        flags:"",
        description:"\t\t\tMoves the widget deltaX pixels to the right and deltaY pixels down. Pass negative\n          numbers to move up and/or to the left.\n",
        name:"moveBy",
        seeAlso:[
        ],
        params:[
            {
                description:"amount to move horizontally (may be negative)",
                optional:false,
                name:"deltaX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"amount to move vertically (may be negative)",
                optional:false,
                name:"deltaY",
                defaultValue:null,
                type:"int"
            }
        ],
        returns:{
            description:"whether the component actually moved",
            type:"Boolean"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('move')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:Gauge.dialRadius":{
        ref:"attr:Gauge.dialRadius",
        flags:"IR",
        description:"Radius in pixels of the dial.",
        name:"dialRadius",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"150",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:StatefulCanvas.actionType":{
        ref:"attr:StatefulCanvas.actionType",
        flags:"IRW",
        getter:[
            "getActionType"
        ],
        description:"Behavior on state changes -- BUTTON, RADIO or CHECKBOX",
        name:"actionType",
        setter:[
            "setActionType"
        ],
        seeAlso:[
        ],
        valueType:"SelectionType",
        defaultValue:"\"button\"",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state",
            "event handling"
        ]
    },
    "attr:BlurbItem.showTitle":{
        ref:"attr:BlurbItem.showTitle",
        flags:"IRW",
        description:"Blurb items show no title by default.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:BlurbItem",
        groups:[
            "appearance"
        ]
    },
    "classMethod:Time.compareTimes":{
        ref:"classMethod:Time.compareTimes",
        flags:"",
        description:" Compares the times of 2 dates, or strings. If a string is passed as one of the \n parameters it should be in a format that converts to a valid time such as <code>\"1:30pm\"</code>, \n <code>\"13:30\"</code>, or <code>\"1:30:45pm\"</code>\n",
        name:"compareTimes",
        seeAlso:[
        ],
        params:[
            {
                description:"First time to compare",
                optional:false,
                name:"time1",
                defaultValue:null,
                type:"Date|string"
            },
            {
                description:"Second time to compare",
                optional:false,
                name:"time2",
                defaultValue:null,
                type:"Date|string"
            }
        ],
        returns:{
            description:"True if the times match, false if not",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"class:Time"
    },
    "method:Progressbar.setLength":{
        ref:"method:Progressbar.setLength",
        flags:"",
        description:" Sets the length of the progressbar to newLength. This is the width of a horizontal progressbar,\n or the height of a vertical progressbar.\n\n",
        name:"setLength",
        seeAlso:[
        ],
        params:[
            {
                description:"the new length of the progressbar",
                optional:false,
                name:"newLength",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:Progressbar"
    },
    "attr:MultiSortPanel.optionsGrid":{
        ref:"attr:MultiSortPanel.optionsGrid",
        flags:"IR",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:ListGrid')} allowing the user to configure a set of \n ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>multiSortPanel.optionsGridProperties</code> and \n <code>multiSortPanel.optionsGridDefaults</code>.",
        name:"optionsGrid",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "method:CubeGrid.collapseField":{
        ref:"method:CubeGrid.collapseField",
        flags:"facetValueMap",
        description:" Collapses the specified field.  No-ops if it's not showing, or it it's already collapsed.\n",
        name:"collapseField",
        seeAlso:[
        ],
        params:[
            {
                description:"field specified as a facetValueMap",
                optional:false,
                name:"facetValueMap",
                defaultValue:null,
                type:"FacetValueMap"
            }
        ],
        returns:{
            description:"whether specified field was actually collapsed",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "method:WebService.setLocation":{
        ref:"method:WebService.setLocation",
        flags:"A",
        description:" Set location can be used when the actual URL where a service will be accessible isn't\n known until runtime, or changes at runtime, hence can't be embedded in the service\n definition.\n <P>\n With an operation parameter, <code>setLocation()</code> can be used to set a distinct\n URL for each web service operation.  This is a development-time only feature that allows\n XML flat files to be placed at various URLs on a server, to serve as spoofed responses\n for each web service operation.\n\n",
        name:"setLocation",
        seeAlso:[
        ],
        params:[
            {
                description:"URL where web service can be contacted",
                optional:false,
                name:"location",
                defaultValue:null,
                type:"URL"
            },
            {
                description:"optional operation name to set the location for, for                             debugging only",
                optional:true,
                name:"operation",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "method:TextItem.getEnteredValue":{
        ref:"method:TextItem.getEnteredValue",
        flags:"",
        description:" Returns the raw text value that currently appears in the text field, which can differ from \n ${isc.DocUtils.linkForRef('method:FormItem.getValue')} in various cases - for example:\n <ul>\n <li>for items that constrain the value range, such as a ${isc.DocUtils.linkForRef('class:DateItem')} with\n ${isc.DocUtils.linkForRef('attr:DateItem.enforceDate','enforceDate')}:true, or a ${isc.DocUtils.linkForRef('class:ComboBoxItem')} with\n ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues','addUnknownValues')}:false</li>\n <li>for items with a defined valueMap or edit value formatter and parser functions\n which converts display value to data value</li>\n <li>while the item has focus if ${isc.DocUtils.linkForRef('attr:TextItem.changeOnKeypress','changeOnKeypress')} is false\n </li></ul>\n",
        name:"getEnteredValue",
        seeAlso:[
        ],
        returns:{
            description:"current entered value",
            type:"string"
        },
        type:"method",
        definingClass:"class:TextItem"
    },
    "method:PresetCriteriaItem.getCustomCriteria":{
        ref:"method:PresetCriteriaItem.getCustomCriteria",
        flags:"A",
        description:" This method is called when ${isc.DocUtils.linkForRef('attr:PresetCriteriaItem.showCustomOption')} is true and the user selects the \n custom option.  Implement this method by allowing the user to enter custom criteria, for\n example, by opening a modal dialog.  Once the user has input customer criteria, fire the\n callback method with the resulting criteria.\n \n",
        name:"getCustomCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"callback to fire when custom criteria has been gathered.              Expects parameters \"criteria,title\".  The \"title\" will be displayed as the \n              currently selected value when custom criteria have been chosen.",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        definingClass:"class:PresetCriteriaItem"
    },
    "attr:ListGridField.editorType":{
        ref:"attr:ListGridField.editorType",
        flags:"IRWA",
        description:"Name of form item class to use for the form item created to edit this field.\n      (Only used if this field is editable).<br>\n      Note: If this is not specified, the edit-form item type may be derived from the\n      <code>editorType</code> property, typically inherited from datasource fields, or\n      from the <code>type</code> of the field (showing the appropriate form item for\n      the data-type). See the ${isc.DocUtils.linkForRef('group:editing')} overview for more on editing ListGrid\n      fields.",
        name:"editorType",
        seeAlso:[
            {
                ref:"attr:ListGrid.canEdit",
                description:null
            }
        ],
        valueType:"FormItem className",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customEditors')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "class:TextExportSettings":{
        methods:[
        ],
        ref:"class:TextExportSettings",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System"
        ],
        attrs:[
            "attr:TextExportSettings.lineSeparator",
            "attr:TextExportSettings.quoteValues",
            "attr:TextExportSettings.nullValueText",
            "attr:TextExportSettings.useDisplayValue",
            "attr:TextExportSettings.forceText",
            "attr:TextExportSettings.dateFormat",
            "attr:TextExportSettings.dateTimeFormat",
            "attr:TextExportSettings.timeFormat"
        ],
        description:"Settings for use with ${isc.DocUtils.linkForRef('method:DataSource.recordsAsText')}.",
        name:"TextExportSettings",
        seeAlso:[
        ],
        type:"class"
    },
    "group:cues":{
        ref:"group:cues",
        refs:[
            "method:Canvas.setOpacity",
            "method:Canvas.setCursor",
            "attr:Canvas.cursor",
            "attr:Canvas.disabledCursor",
            "attr:Canvas.opacity",
            "attr:Canvas.contextMenu",
            "attr:Canvas.menuConstructor",
            "attr:DrawItem.contextMenu",
            "type:Cursor"
        ],
        description:"Visual hints for the user that something can be done to this object",
        name:"cues",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:ListGrid.groupIcon":{
        ref:"attr:ListGrid.groupIcon",
        flags:"IRW",
        description:"The URL of the base icon for the group icons in this listGrid. Default value may \n be overridden by the ${isc.DocUtils.linkForRef('skinning','current skin')}.",
        name:"groupIcon",
        seeAlso:[
            {
                ref:"group:grouping",
                description:null
            }
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKINIMG]/TreeGrid/opener.gif\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "attr:DynamicForm.target":{
        ref:"attr:DynamicForm.target",
        flags:"IRWA",
        description:"The name of a window or frame that will receive the results returned by the form's\n action. The default null indicates to use the current frame.\n <p>\n <b>NOTE:</b> this is used only in the very rare case that a form is used to submit data\n directly to a URL.  Normal server contact is through\n ${isc.DocUtils.linkForRef('group:dataBoundComponentMethods','DataBound Component Methods')}.",
        name:"target",
        setter:[
            "setTarget"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "submitting"
        ]
    },
    "attr:AdvancedHiliteEditor.hiliteForm":{
        ref:"attr:AdvancedHiliteEditor.hiliteForm",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:DynamicForm')} for configuring the details of this Hilite.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>advancedHiliteEditor.hiliteFormProperties</code>.",
        name:"hiliteForm",
        seeAlso:[
        ],
        valueType:"AutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:AdvancedHiliteEditor"
    },
    "attr:DrawItem.cursor":{
        ref:"attr:DrawItem.cursor",
        flags:"IRWA",
        description:"If set, specifies the cursor to display when the mouse pointer is over this DrawItem.",
        name:"cursor",
        setter:[
            "setCursor"
        ],
        seeAlso:[
        ],
        valueType:"Cursor",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:EdgedCanvas.edgeImage":{
        ref:"attr:EdgedCanvas.edgeImage",
        flags:"IR",
        description:"Base name of images for edges.  Extensions for each corner or edge piece will be added\n to this image URL, before the extension.  For example, with the default base name of\n \"edge.gif\", the top-left corner image will be \"edge_TL.gif\".\n <P>\n The full list of extensions is: \"_TL\", \"_TR\", \"_BL\", \"_BR\", \"_T\", \"_L\", \"_B\", \"_R\",\n \"_center\".",
        name:"edgeImage",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKIN]/rounded/frame/FFFFFF/6.png\"",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:ListGridField.filterEditorProperties":{
        ref:"attr:ListGridField.filterEditorProperties",
        flags:"IRWA",
        description:"If this ListGrid is showing a filter row\n (${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor','showFilterEditor')}:true), this property\n can be used to specify properties for the appropriate filter form item.",
        name:"filterEditorProperties",
        seeAlso:[
        ],
        valueType:"FormItem properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "filterEditor"
        ]
    },
    "method:TileGrid.getSelection":{
        ref:"method:TileGrid.getSelection",
        flags:"",
        description:" Returns all selected records, as an Array.\n\n",
        name:"getSelection",
        seeAlso:[
        ],
        params:[
            {
                description:"When true, partially selected records will not be returned.                                   Otherwise, both fully and partially selected records are\n                                   returned.",
                optional:true,
                name:"excludePartialSelections",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"list of records, empty list if nothing selected",
            type:"Array of ListGridRecord"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('databoundRemove')}"
        ],
        definingClass:"class:TileGrid",
        groups:[
            "selection"
        ]
    },
    "attr:CubeGrid.sortDirection":{
        ref:"attr:CubeGrid.sortDirection",
        flags:"IRW",
        description:"Direction of sorting if sortedFacet or sortedFacetValues is specified.",
        name:"sortDirection",
        seeAlso:[
        ],
        valueType:"SortDirection",
        defaultValue:"\"ascending\"",
        type:"attr",
        definingClass:"class:CubeGrid"
    },
    "attr:SimpleType.readOnlyEditorType":{
        ref:"attr:SimpleType.readOnlyEditorType",
        flags:"IR",
        description:"Classname of the FormItem that should be used to display values of this type when a field\n is marked as ${isc.DocUtils.linkForRef('attr:DataSourceField.canEdit','canEdit false')} and the field is displayed\n in an editor type component like a DynamicForm.\n <P>\n May be overridden by ${isc.DocUtils.linkForRef('attr:DataSourceField.readOnlyEditorType')}.",
        name:"readOnlyEditorType",
        seeAlso:[
        ],
        valueType:"FormItem ClassName",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:SimpleType"
    },
    "classAttr:Operators.greaterOrEqualTitle":{
        ref:"classAttr:Operators.greaterOrEqualTitle",
        flags:"IR",
        description:"Title for the \"greaterOrEqual\" operator",
        name:"greaterOrEqualTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"greater than or equal to\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:RPCManager.fetchDataPrompt":{
        ref:"classAttr:RPCManager.fetchDataPrompt",
        flags:"IRW",
        description:"Default prompt displayed to the user while an operation is running to fetch data from\n the server.<br>\n Displayed as a result of ${isc.DocUtils.linkForRef('method:ListGrid.filterData')}, ${isc.DocUtils.linkForRef('method:ListGrid.fetchData')} and\n ${isc.DocUtils.linkForRef('method:ListGrid.clearCriteria')} code paths.",
        name:"fetchDataPrompt",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Finding Records that match your criteria...\"",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "i18nMessages"
        ]
    },
    "group:changeHandling":{
        ref:"group:changeHandling",
        refs:[
            "attr:FormItem.redrawOnChange",
            "attr:FormItem.validateOnChange"
        ],
        name:"changeHandling",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Hilite.icon":{
        ref:"attr:Hilite.icon",
        flags:"IR",
        description:"URL of an icon to show when this hilite is applied to a cell.  Position of the icon \n is controlled by ${isc.DocUtils.linkForRef('attr:DataBoundComponent.hiliteIconPosition')} or \n ${isc.DocUtils.linkForRef('attr:ListGridField.hiliteIconPosition')}.",
        name:"icon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:Hilite",
        groups:[
            "hiliting"
        ]
    },
    "attr:DateRangeItem.invalidRangeErrorMessage":{
        ref:"attr:DateRangeItem.invalidRangeErrorMessage",
        flags:"IR",
        description:"Error message to display if the user enters a date range where the \"To\" field value\n is earlier than the \"From\" field value.",
        name:"invalidRangeErrorMessage",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"'\"To\" field value cannot be earlier than \"From\" field value.'",
        type:"attr",
        definingClass:"class:DateRangeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:RPCRequest.params":{
        ref:"attr:RPCRequest.params",
        flags:"IRW",
        description:"Values to be sent as simple HTTP params, as a JavaScript Object where each property/value\n pair will become an HTTP parameter name and value.  These parameters are then accessible on\n the server, for example, using servletRequest.getParameter(paramName) in Java Servlets.  \n <P>\n Array-valued parameters will be submitted as multiple instances of the same parameter,\n similar to an HTML form with a multi-select (?paramName=value1&amp;paramName=value2 ...),\n accessible as getParameterValues(paramName) in Java Servlets.  Any non-atomic type, such as\n an Object, will be serialized to <a href='http://www.json.org/' target='_blank'>JSON</a> by the\n ${isc.DocUtils.linkForRef('class:JSONEncoder')}.  If this isn't desirable, serialize the data in advance so that the\n value provided in <code>rpcRequest.params</code> is a String.\n <P>\n Note that this API is primarily used in combination with ${isc.DocUtils.linkForRef('attr:RPCRequest.useSimpleHttp')} -\n when contacting the SmartClient Server, use ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} instead, which provides\n full JavaScript &lt;-&gt; Java translation of arbitrary structures.\n <code>rpcRequest.params</code> can also be used with the SmartClient Server, where it\n provides an an opportunity to send additional data aside from the main\n ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} payload.  This is useful for adding data to DataSource requests which\n will be kept separate from the automatically sent DataSource data, or for making parts of\n the request visible in the URL for HTTP-level logging or layer 4 switches.\n <P>\n Note that in contrast to ${isc.DocUtils.linkForRef('attr:RPCRequest.data')} object, the data in\n <code>rpcRequest.params</code> is not deserialized by the SmartClient server, and\n all values arrive on the server as String type (like HTTP parameters always do).\n <p>\n <smartclient>\n The params value can also be specified as a componentID or component instance that provides\n a method getValues() that returns an Object containing parameter names and values.\n SmartClient components ${isc.DocUtils.linkForRef('class:DynamicForm')}, ${isc.DocUtils.linkForRef('class:ValuesManager')} are two such\n classes.  Lastly, you may specify the ID of a native form element (retrievable via\n getElementById()) and the params will be populated from there.  If there is an error\n resolving your params directive, it will be logged to the Developer Console.\n </smartclient>\n <p>\n Note: The params are submitted once per http transaction.  If you are using \n ${isc.DocUtils.linkForRef('classMethod:RPCManager.startQueue','request queuing')} to bundle multiple RPCRequests or DSRequests\n into a single HTTP turnaround, the params from the various RPCRequests will be merged,\n with the later-queued transactions winning on parameter name collisions.  A warning will be\n logged in the Developer Console if multiple RPCRequests specified params.",
        name:"params",
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "method:DynamicForm.setValueMap":{
        ref:"method:DynamicForm.setValueMap",
        flags:"",
        description:" Set the valueMap for a specified item\n",
        name:"setValueMap",
        seeAlso:[
        ],
        params:[
            {
                description:"itemName of the item upon which the valueMap should be set.",
                optional:false,
                name:"itemName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"new valueMap for the field in question.",
                optional:false,
                name:"valueMap",
                defaultValue:null,
                type:"ValueMap"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "attr:Facet.collapsed":{
        ref:"attr:Facet.collapsed",
        flags:"IR",
        description:"For tree facets, default collapse state for parent nodes.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"collapsed",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Facet"
    },
    "type:AnimationAcceleration":{
        ref:"type:AnimationAcceleration",
        values:[
            {
                description:"- animation will speed up as time elapses",
                value:"\"smoothStart\""
            },
            {
                description:"- animation will slow down as time elapses",
                value:"\"smoothEnd\""
            },
            {
                description:"- animation will speed up in the middle",
                value:"\"smoothStartEnd\""
            },
            {
                description:"- no bias",
                value:"\"none\""
            }
        ],
        description:"Acceleration effect for animations. Can either be a ratio function or a string.\n Ratio functions take a value between 0 and 1 which represents how much of the \n animation's duration has elapsed, and return another value between 0 and 1 indicating\n how close the animation is to completion. For a completely linear animation, the \n function would return the value it was passed. This allows you to bias animations to\n [for example] speed up toward the end of the animation.<br>\n The following strings are also supported for common ratio bias effects:",
        name:"AnimationAcceleration",
        seeAlso:[
        ],
        type:"type"
    },
    "method:FilterBuilder.getFilterDescription":{
        ref:"method:FilterBuilder.getFilterDescription",
        flags:"",
        description:" Returns a human-readable string describing the clauses in this filterBuilder.\n \n",
        name:"getFilterDescription",
        seeAlso:[
        ],
        returns:{
            description:"Human-readable string describing the clauses in the passed criteria",
            type:"String"
        },
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:MultiGroupDialog.copyLevelButtonTitle":{
        ref:"attr:MultiGroupDialog.copyLevelButtonTitle",
        flags:"IR",
        description:"The title-text to appear on the copyLevelButton\n <P>\n Note, this is a passthrough property which, when set, is passed through to the \n ${isc.DocUtils.linkForRef('class:MultiGroupPanel','MultiGroupPanel')} contained in this dialog.  You only need to\n consider the properties on the MultiGroupPanel for i18n.",
        name:"copyLevelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Copy Level\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.animateFolderMaxRows":{
        ref:"attr:ListGrid.animateFolderMaxRows",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.animateFolders')} is true for this grid, this number can be set to designate\n the maximum number of rows to animate at a time when opening / closing a folder.\n <P>\n For a ListGrid, this property applies when ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grouping')} is enabled.",
        name:"animateFolderMaxRows",
        seeAlso:[
            {
                ref:"method:TreeGrid.getAnimateFolderMaxRows",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "animation"
        ]
    },
    "attr:DatabaseBrowser.dataGrid":{
        ref:"attr:DatabaseBrowser.dataGrid",
        flags:"IR",
        description:"Instance of ListGrid used to display the actual data in the table selected in the \n ${isc.DocUtils.linkForRef('attr:DatabaseBrowser.schemaTree','schemaTree')}.",
        name:"dataGrid",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DatabaseBrowser"
    },
    "method:Window.closeClick":{
        ref:"method:Window.closeClick",
        flags:"",
        description:" Handles a click on the close button of this window. The default implementation\n calls ${isc.DocUtils.linkForRef('method:Window.close','close()')} and returns false to prevent bubbling of the click event.\n <P>\n <smartclient>Override this method if you want\n other actions to be taken.</smartclient>\n <smartgwt>Developers may use <code>addCloseClickHandler()</code> to provide custom\n handling when the user clicks this button.</smartgwt>\n Custom implementations may call <code>close()</code> to trigger the default behavior.\n",
        name:"closeClick",
        seeAlso:[
        ],
        returns:{
            description:"Return false to cancel bubbling the click event",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Window",
        groups:[
            "buttons"
        ]
    },
    "attr:MetricSettings.fixedFacetValue":{
        ref:"attr:MetricSettings.fixedFacetValue",
        flags:"IR",
        description:"For a ${isc.DocUtils.linkForRef('attr:MetricSettings.multiFacet','single-facet')} chart of an extra value axis, this property provides a constant facet value\n for the second facet.  By varying the value of the other facet in multi-facet data, the chart\n obtains the series of values to plot.  The default facet value is the first facet value of the second facet.",
        name:"fixedFacetValue",
        seeAlso:[
        ],
        valueType:"String | Number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:OperationBinding.useSubselectForRowCount":{
        ref:"attr:OperationBinding.useSubselectForRowCount",
        flags:"IRW",
        description:"Whether to use the subselect technique (see ${isc.DocUtils.linkForRef('attr:DataSource.useSubselectForRowCount')} for\n details) to derive a rowcount query for this operation.  If this property is not\n set, we fall back to the <code>useSubselectForRowCount</code> setting on the DataSource, \n and the defaults described in the documentation for that property.",
        name:"useSubselectForRowCount",
        seeAlso:[
            {
                ref:"attr:DataSource.useSubselectForRowCount",
                description:null
            },
            {
                ref:"attr:OperationBinding.customSQL",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding"
    },
    "attr:DataBoundComponent.exportFields":{
        ref:"attr:DataBoundComponent.exportFields",
        flags:"IRW",
        description:"The list of field-names to export.  If provided, the field-list in the exported output is \n limited and sorted as per the list.\n <P>\n If exportFields is not provided, the exported output includes all visible fields \n from this component, sorted as they appear.",
        name:"exportFields",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:DataSourceField.ignore":{
        ref:"attr:DataSourceField.ignore",
        flags:"IR",
        description:"Whether this field should be completely excluded from this dataSource, as if it had never been\n defined.\n <P>\n If set to true, the field will be entirely omitted when serving a DataSource derived \n from a server-side definition (typically a .ds.xml file) to the client.",
        name:"ignore",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "componentBinding"
        ]
    },
    "attr:Label.iconWidth":{
        ref:"attr:Label.iconWidth",
        flags:"IR",
        description:"Width in pixels of the icon image.\n <P>\n If unset, defaults to <code>iconSize</code>",
        name:"iconWidth",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:MenuButton.menu":{
        ref:"attr:MenuButton.menu",
        flags:"IRW",
        description:"The menu to show.\n <P>\n For a menu button with no menu (menu: null) the up/down arrow image can\n be suppressed by setting\n ${isc.DocUtils.linkForRef('attr:MenuButton.showMenuButtonImage','showMenuButtonImage')}: <code>false</code>.",
        name:"menu",
        seeAlso:[
        ],
        valueType:"Menu",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MenuButton"
    },
    "class:ProcessElement":{
        methods:[
        ],
        ref:"class:ProcessElement",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Workflow"
        ],
        attrs:[
            "attr:ProcessElement.ID",
            "attr:ProcessElement.nextElement"
        ],
        description:"A ProcessElement is an abstract superclass for elements involved in a ${isc.DocUtils.linkForRef('class:Process')}, such\n as a ${isc.DocUtils.linkForRef('class:Task')} or ${isc.DocUtils.linkForRef('class:XORGateway')}.",
        name:"ProcessElement",
        seeAlso:[
        ],
        type:"class"
    },
    "method:Toolbar.selectButton":{
        ref:"method:Toolbar.selectButton",
        flags:"",
        description:" Given an identifier for a button, select it.\n The button identifier can be a number (index), string (id), or object (widget or init block),\n as with the getButtonNumber() method.\n \n",
        name:"selectButton",
        seeAlso:[
            {
                ref:"method:Toolbar.getButtonNumber",
                description:null
            }
        ],
        params:[
            {
                description:"Button / Button identifier",
                optional:false,
                name:"buttonID",
                defaultValue:null,
                type:"number | string | object | canvas"
            }
        ],
        type:"method",
        definingClass:"class:Toolbar",
        groups:[
            "selection"
        ]
    },
    "group:mobileDevelopment":{
        ref:"group:mobileDevelopment",
        title:"Mobile Application Development",
        treeLocation:[
            "Concepts"
        ],
        refs:[
            "classMethod:Page.getOrientation",
            "classMethod:Page.updateViewport"
        ],
        description:"SmartClient supports building web applications that can be accessed by mobile devices that\n support modern web browsers, specifically:\n <ul>\n <li> Safari on iOS devices (iPad, iPhone, iPod Touch)\n <li> Android's default (WebKit-based) browser\n <li> Windows Phone 7 (future, for 'Mango' and up)\n <li> Blackberry devices that use a WebKit-based browser (future)\n </ul>\n <P>\n <h3>Finger / touch events</h3>\n <P>\n Mobile and touch devices support \"touch events\" that correspond to finger actions on the\n screen.  By default, SmartClient simply sends touch events to UI components as normal mouse\n events.  Specifically:\n <ul>\n <li> a finger tap gesture will trigger mouseDown, mouseUp and click events\n <li> a touch-and-slide interaction will trigger drag and drop, firing the normal SmartClient\n      sequence of dragStart, dragMove, and dragStop\n <li> a touch-and-hold interaction will trigger a contextMenu event, and will trigger a hover\n      if no contextMenu is shown\n </ul>\n This means that most applications that are written initially to target desktop computers\n need little or no modification in order be able to run on tablet-sized devices (eg the\n iPad).  For handset-sized devices (phones, iPod touch), conditional logic may need to be\n added to make different use of the screen real estate.\n <P>\n <h3>Adapting to tablets and handsets</h3>\n SmartClient provides the ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')} variable which can be used to determine\n whether a device is tablet-size (e.g. iPad, Nexus 7) or handset-size (phones, iPod touch,\n and similar smaller form-factor devices). In most cases SmartClient will correctly determine\n whether the device running your application is a tablet. For any uncommon device for which\n this variable is incorrect, you can override SmartClient's detection logic by defining the\n <code>isc_isTablet</code> global with the correct value before SmartClient is loaded. Whenever\n the <code>isc_isTablet</code> global is defined, SmartClient will use this value for\n Browser.isTablet instead of its own detection logic.\n <P>\n <h3>Mobile look and feel</h3>\n <P>\n We recommend using either the Enterprise, EnterpriseBlue or Graphite skins for applications\n that support mobile (or a custom skin based on one of these skins).  These skins make\n maximum use of CSS3 to minimize the number of images that need to be loaded and the number\n of DOM elements used to create components.\n <p>\n We also do <b>not</b> recommend attempting to mimic the native UI of each particular mobile\n platform, because:\n <ul>\n <li> if users access the same application via desktop and mobile browsers, consistent\n appearance between the desktop and mobile rendering of the application is more important for\n familiarity than looking similar to other applications on the mobile device\n <li> there is no single consistent appearance across Android devices because different\n manufacturers customize the platform a great deal, so there's no single appearance to mimic\n <li> mobile platform design overhauls, such as the major changes from iOS6 to iOS7, can\n easily invalidate efforts to look like native applications on the device\n </ul>\n <P>\n <h3>Adapting to Screen Size and Orientation Change</h3>\n <P>\n Safari on the Apple iPod/iPhone supports explicitly configuring the viewport as detailed here:\n <a href='http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html' target='_blank'>http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html</a>.\n Including these meta tags in your bootstrap HTML file will allow you to set \n a default \"zoom level\" - how many pixels show up on the screen in landscape or portrait\n mode as well as disabling the user's standard zoom interactions. We also have \n ${isc.DocUtils.linkForRef('classMethod:Page.updateViewport','an API')} to configure the viewport programmatically at runtime.\n <P>\n It is recommended to start with the following viewport meta tag in the bootstrap HTML file:<br>\n <br>\n <code>&lt;meta name=\"viewport\" content=\"initial-scale=1\"&gt;</code><br>\n <br>\n .. and then use ${isc.DocUtils.linkForRef('classMethod:Page.updateViewport')} to update the viewport meta tag. On tablet\n devices (see ${isc.DocUtils.linkForRef('classAttr:Browser.isTablet')}), it is recommended to scale the viewport to 125% via:<br>\n <code><smartclient>isc.</smartclient>Page.updateViewport(1.25, null, null, true);</code><br>\n <br>\n On handsets, it is recommended to set the viewport width to 700 via:<br>\n <code><smartclient>isc.</smartclient>Page.updateViewport(null, 700, null, true);</code>\n <P>\n Note that the ${isc.DocUtils.linkForRef('classMethod:Page.getOrientation')} API may be used to determine the current\n orientation of the application, and ${isc.DocUtils.linkForRef('type:PageEvent','the page orientationChange event')} will fire\n whenever the user rotates the screen allowing applications to directly respond to the user\n pivoting their device.\n <P>\n <h3>Packaging as a native application</h3>\n <P>\n Via \"packaging\" technologies such as PhoneGap/Cordova and Titanium, a SmartClient web application\n can be packaged as an installable native application that can be delivered via the \"App Store\"\n for the target mobile platform.  Applications packaged in this way have access to phone-specific\n data and services such as contacts stored on the phone, or the ability to invoke the device's camera.\n <P>\n Both Titanium and PhoneGap provide access to the underlying native device APIs such as the\n accelerometer, geolocation, and UI. Both frameworks enable application development using\n only JavaScript, CSS and HTML. Additionally they provide development environments that work\n across a wide variety of devices.\n <P>\n PhoneGap has good support for native device APIs as noted <a href='http://www.phonegap.com/about/feature' target='_blank'>here</a>.\n Titanium has similar support. There are differences between the two environments and how they\n expose their APIs, though both provide Xcode-compatible projects that can be compiled and run from the Xcode IDE.\n See ${isc.DocUtils.linkForRef('group:titaniumIntegration','Integration with Titanium')} and ${isc.DocUtils.linkForRef('group:phonegapIntegration','Integration with PhoneGap')}\n for more information.",
        name:"mobileDevelopment",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Scrollbar.btnSize":{
        ref:"attr:Scrollbar.btnSize",
        flags:"IRW",
        description:"The size of the square buttons (arrows) at the ends of this scrollbar. This \n overrides the width of a vertical scrollbar or the height of a horizontal scrollbar\n to set the scrollbar's thickness.",
        name:"btnSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"16",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "track"
        ]
    },
    "classMethod:AutoTest.getValue":{
        ref:"classMethod:AutoTest.getValue",
        flags:"",
        description:" Given an ${isc.DocUtils.linkForRef('type:AutoTestLocator')} that refers to a live SmartClient object or a logical\n subcomponent of that object, return the associated meaningful JS value, if any.\n <P>\n For example:\n <ul>\n     <li> For a locator to a ListGrid/CubeGrid cell, return the cell's value\n     <li> For a locator to a FormItem, return the FormItem's value\n     <li> For a locator to a ListGrid field header, return the checkbox/sorting state\n     <li> For a locator to a Calendar EventWindow header or contents, return the text\n </ul>\n",
        name:"getValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Locator String previously returned by        ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')}",
                optional:false,
                name:"locator",
                defaultValue:null,
                type:"AutoTestLocator"
            }
        ],
        returns:{
            description:"value associated with SC object if any, otherwise undefined",
            type:"Object"
        },
        type:"classMethod",
        definingClass:"class:AutoTest",
        groups:[
            "autoTest"
        ]
    },
    "method:ListGrid.addEmbeddedComponent":{
        ref:"method:ListGrid.addEmbeddedComponent",
        flags:"A",
        description:" Attaches the component to the provided record. If <code>position</code> is specified as\n <code>\"within\"</code> ${isc.DocUtils.linkForRef('attr:Canvas.snapTo')} and ${isc.DocUtils.linkForRef('attr:Canvas.snapOffsetLeft')},\n ${isc.DocUtils.linkForRef('attr:Canvas.snapOffsetTop')} may be set to specify where the component\n will render within the cell or record. If unset, for components embedded within a record\n we will default to embedding at the top/left coordinate, and for components embedded within\n a cell, we will respect the align / valign properties for the cell in question. Any\n percentage sizing will be interpreted as percentage of row size.\n <P>\n Otherwise it will appear to be embedded within the record, underneath the field values.\n <P>\n Embedded components become children of the grid and will stay attached to a record through\n scrolling, sorting and other operations that cause records to shift position.\n <P>\n If <code>position</code> is set to <code>\"expand\"</code>, embedded components may offer a\n resize interface, eg, by setting ${isc.DocUtils.linkForRef('attr:ListGridField.canDragResize','canDragResize')}:true,\n and the grid will react accordingly, growing or shrinking the record to match the embedded\n component's new extents.\n <P>\n Embedded components can be explicitly removed with ${isc.DocUtils.linkForRef('method:ListGrid.removeEmbeddedComponent')}.\n <P>\n If a record is removed from the dataset or is replaced in the dataset, for example, it is\n eliminated through filtering (removes record) or is successfully edited in a databound grid\n (replaces record), the component is cleared but not logically removed from the grid. It is the\n responsibility of code that sets up the embedded component to remove it if the record is removed\n from the dataSet.\n <P>\n When embedding components will result in variable height records,\n you should switch on ${isc.DocUtils.linkForRef('attr:ListGrid.virtualScrolling','virtualScrolling')}.\n\n",
        name:"addEmbeddedComponent",
        seeAlso:[
        ],
        params:[
            {
                description:"component to embed",
                optional:false,
                name:"component",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"record to attach the component to",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"rowNum of the record to attach the component to",
                optional:true,
                name:"rowNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"colNum in which to embed the component",
                optional:true,
                name:"colNum",
                defaultValue:null,
                type:"Integer"
            },
            {
                description:"positioning with respect to the record or cell (Defaults to \"expand\").",
                optional:true,
                name:"position",
                defaultValue:null,
                type:"EmbeddedPosition"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:Canvas.adjustForContent":{
        ref:"method:Canvas.adjustForContent",
        flags:"A",
        description:" This method tells a component to adjust for size changes made to content by external code.\n <P>\n This is for very advanced use in which the contents of a Canvas are being directly updated by\n Ajax techniques, which is required for integration with some third-party libraries.\n Calling this method is required because browsers do not provide consistent events by which\n SmartClient can be notified of external content changes.\n <P>\n Only contents supplied to a widget via ${isc.DocUtils.linkForRef('attr:Canvas.contents')} or via an override of\n ${isc.DocUtils.linkForRef('method:Canvas.getInnerHTML')} should be manipulated directly.  Contents automatically\n generated by SmartClient components (such as the basic structure of a Button) should never be\n manipulated: these structures are considered internal, differ by platform, and will change\n without notice.\n",
        name:"adjustForContent",
        seeAlso:[
        ],
        params:[
            {
                description:"By default the adjustment will occur on a small delay for performance reasons.\n  Pass in this parameter to force immediate adjustment.",
                optional:false,
                name:"immediate",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:SummaryBuilder.builderTypeText":{
        ref:"attr:SummaryBuilder.builderTypeText",
        flags:"IR",
        description:"Indicates whether to use \"summary\" or some other keyword in various captions and text",
        name:"builderTypeText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Summary\"",
        type:"attr",
        definingClass:"class:SummaryBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "method:ListGrid.getDragData":{
        ref:"method:ListGrid.getDragData",
        flags:"",
        description:"\n During a drag-and-drop interaction, this method returns the set of records being dragged out\n of the component.  In the default implementation, this is the list of currently selected\n records.<p>\n \n This method is consulted by ${isc.DocUtils.linkForRef('method:ListGrid.willAcceptDrop')}.\n\n",
        name:"getDragData",
        seeAlso:[
        ],
        params:[
            {
                description:"source component from which the records will be transferred",
                optional:false,
                name:"source",
                defaultValue:null,
                type:"DataBoundComponent"
            }
        ],
        returns:{
            description:"Array of ${isc.DocUtils.linkForRef('object:Record')}s that are currently selected.",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "dragging",
            "data"
        ]
    },
    "attr:ListGridField.valueIconRightPadding":{
        ref:"attr:ListGridField.valueIconRightPadding",
        flags:"IRW",
        description:"How much padding should there be on the right of valueIcons for this field\n Overrides ${isc.DocUtils.linkForRef('attr:ListGrid.valueIconRightPadding')}",
        name:"valueIconRightPadding",
        seeAlso:[
            {
                ref:"attr:ListGridField.valueIcons",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "method:FilterClause.getFieldOperators":{
        ref:"method:FilterClause.getFieldOperators",
        flags:"",
        description:" Get the list of ${isc.DocUtils.linkForRef('type:OperatorId','operatorIds')} that are valid for this field.  By default, \n calls through to the same method on ${isc.DocUtils.linkForRef('method:FilterBuilder.getFieldOperators','filterBuilder')},\n which defaults to all operators returned by ${isc.DocUtils.linkForRef('method:DataSource.getFieldOperators')}.\n <P>\n Called whenever the fieldName is changed.\n \n",
        name:"getFieldOperators",
        seeAlso:[
        ],
        params:[
            {
                description:"the name of the field for which to return the set of available            operators",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"valid operators for this field",
            type:"Array of OperatorId"
        },
        type:"method",
        definingClass:"class:FilterClause"
    },
    "classMethod:Page.getAppFilesDir":{
        ref:"classMethod:Page.getAppFilesDir",
        flags:"",
        description:" Returns the directory for application-specific files (other than images).\n\n",
        name:"getAppFilesDir",
        seeAlso:[
        ],
        params:[
            {
                description:"New app files URL.",
                optional:true,
                name:"URL",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "files",
            "images"
        ]
    },
    "attr:Slider.animateThumb":{
        ref:"attr:Slider.animateThumb",
        flags:"IRW",
        description:"Should the thumb be animated to its new position when the value is changed programmatically,\n or by clicking in the slider track.",
        name:"animateThumb",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Slider",
        groups:[
            "animation"
        ]
    },
    "classAttr:Hover.topOffset":{
        ref:"classAttr:Hover.topOffset",
        flags:"RW",
        description:"When positioning the hover canvas, this will be the default top offset from the \n mousepointer, if no explicit position was passed to the ${isc.DocUtils.linkForRef('classMethod:Hover.show')} method",
        name:"topOffset",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"15",
        type:"classAttr",
        definingClass:"class:Hover"
    },
    "method:Date.getFiscalYear":{
        ref:"method:Date.getFiscalYear",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('object:FiscalYear')} object appropriate for the the current date, according to the\n ${isc.DocUtils.linkForRef('object:FiscalCalendar','FiscalCalendar')}.\n",
        name:"getFiscalYear",
        seeAlso:[
        ],
        returns:{
            description:"the fiscal year object",
            type:"FiscalYear"
        },
        type:"method",
        definingClass:"class:Date"
    },
    "class:VStack":{
        methods:[
        ],
        exampleConfig:"VStack.xml",
        ref:"class:VStack",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
        ],
        description:"A subclass of Layout that simply stacks members on the vertical axis without trying to\n manage their height.  On the horizontal axis, any members that do not have explicit widths\n will be sized to match the width of the stack.",
        name:"VStack",
        seeAlso:[
            {
                ref:"attr:Layout.vPolicy",
                description:null
            }
        ],
        type:"class"
    },
    "method:Canvas.isDrawn":{
        ref:"method:Canvas.isDrawn",
        flags:"",
        description:"      Returns the boolean true, if the widget has been completely drawn, and false otherwise.\n",
        name:"isDrawn",
        seeAlso:[
        ],
        returns:{
            description:"true if drawn, false if not drawn",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "method:RestDataSource.transformRequest":{
        ref:"method:RestDataSource.transformRequest",
        flags:"",
        description:" RestDataSource overrides transformRequest and handles serializing the request in the\n appropriate format (determined by the specified\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','dataProtocol')}), including the submitted\n ${isc.DocUtils.linkForRef('attr:DSRequest.data','data')} as well as the meta data parameters, which may include -<br> \n ${isc.DocUtils.linkForRef('attr:DSRequest.dataSource','dataSource')},\n ${isc.DocUtils.linkForRef('attr:DSRequest.operationType','operationType')}, ${isc.DocUtils.linkForRef('attr:DSRequest.operationId','operationId')};<br>\n ${isc.DocUtils.linkForRef('attr:DSRequest.startRow','startRow')} and ${isc.DocUtils.linkForRef('attr:DSRequest.endRow','endRow')} (for fetches);<br>\n ${isc.DocUtils.linkForRef('attr:DSRequest.sortBy','sortBy')} and ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle','textMatchStyle')} \n (for fetches);<br>\n ${isc.DocUtils.linkForRef('attr:DSRequest.oldValues','oldValues')} (for update and remove operations);<br>\n and possibly ${isc.DocUtils.linkForRef('attr:DSRequest.componentId','componentId')}.\n <P>\n If you override this method in order to add additional data to the DSRequest, you must\n call ${isc.DocUtils.linkForRef('method:Class.Super','Super()')} or you will remove the functionality provided by\n RestDataSource.  For example:\n <pre>\n    transformRequest : function (dsRequest) {\n        // modify dsRequest.data here, for example, add fixed criteria\n        dsRequest.data.userId = myApplication.getCurrentUserId();\n  \n        return this.Super(\"transformRequest\", arguments);\n    }\n </pre>\n <P>\n See ${isc.DocUtils.linkForRef('class:RestDataSource','RestDataSource overview')} for a description of the \n standard formatting applied to requests.\n\n",
        name:"transformRequest",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:RestDataSource"
    },
    "method:TabSet.cancelTabTitleEditing":{
        ref:"method:TabSet.cancelTabTitleEditing",
        flags:"",
        description:" If the user is currently editing a tab title (see ${isc.DocUtils.linkForRef('attr:TabSet.canEditTabTitles')}), dismiss\n the editor and discard the edit value entered by the user.\n",
        name:"cancelTabTitleEditing",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "group:iteration":{
        ref:"group:iteration",
        title:"Iteration",
        refs:[
            "method:ResultSet.getProperty",
            "method:Array.getProperty",
            "method:Array.map",
            "method:Array.setProperty",
            "method:Array.clearProperty",
            "method:List.getProperty"
        ],
        description:"Operations on entire Arrays at once",
        name:"iteration",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateChooser.headerHeight":{
        ref:"attr:DateChooser.headerHeight",
        deprecated:"in favor of ${isc.DocUtils.linkForRef('attr:DateChooser.navigationLayoutHeight')}",
        flags:"IR",
        description:"Height of the header area (containing the navigation buttons) in pixels.",
        name:"headerHeight",
        seeAlso:[
        ],
        valueType:"Integer",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "classAttr:Dialog.Ask":{
        ref:"classAttr:Dialog.Ask",
        flags:"A",
        description:"A singleton Dialog instance that will be shown in response to a ${isc.DocUtils.linkForRef('classMethod:isc.askForValue')} call.\n\n Notes:<br>\n  Because this is a singleton object, properties set on the Ask object directly will persist\n  each time it is shown.<br>\n  Developers should use the <code>askForValue()</code> method to show this object rather than\n  manipulating the Dialog directly.",
        name:"Ask",
        seeAlso:[
            {
                ref:"classMethod:isc.askForValue",
                description:null
            }
        ],
        valueType:"Dialog Properties",
        defaultValue:"dialog instance properties",
        type:"classAttr",
        definingClass:"class:Dialog",
        groups:[
            "Prompting"
        ]
    },
    "method:Window.setSrc":{
        ref:"method:Window.setSrc",
        flags:"",
        description:" Sets the URL of the contents to display in the body of the window, redrawing if\n necessary.\n",
        name:"setSrc",
        seeAlso:[
        ],
        params:[
            {
                description:"URL of new contents to be displayed in the window body",
                optional:false,
                name:"url",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "classMethod:WebService.getByName":{
        ref:"classMethod:WebService.getByName",
        flags:"",
        description:" Retrieve a WebService object by the name attribute declared on the &lt;wsdl:service&gt; tag.\n\n",
        name:"getByName",
        seeAlso:[
        ],
        params:[
            {
                description:"name attribute from the &lt;wsdl:service&gt; tag",
                optional:false,
                name:"serviceName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"optional serviceNamespace if needed to disambiguate",
                optional:true,
                name:"serviceNamespace",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"the requested WebService, or null if not loaded",
            type:"WebService"
        },
        type:"classMethod",
        definingClass:"class:WebService",
        groups:[
            "webService"
        ]
    },
    "method:ColumnTree.getNodeTitle":{
        ref:"method:ColumnTree.getNodeTitle",
        flags:"",
        description:"\n Returns the title to show for a node in the ColumnTree.  The default implementation\n returns the result of calling ${isc.DocUtils.linkForRef('method:Tree.getTitle')} on the node.\n <br><br>\n You can override this method to return a custom title for nodes in the tree.\n\n",
        name:"getNodeTitle",
        seeAlso:[
            {
                ref:"method:Tree.getTitle",
                description:null
            }
        ],
        params:[
            {
                description:"The node for which the title is being requested.",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"The index of the node.",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"Number"
            },
            {
                description:"The field for which the title is being requested.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"DSField"
            }
        ],
        returns:{
            description:"the title to display.",
            type:"HTML"
        },
        type:"method",
        definingClass:"class:ColumnTree"
    },
    "classMethod:Class.addPropertyList":{
        ref:"classMethod:Class.addPropertyList",
        flags:"",
        description:"\n\tAdd default properties to all instances of this class\n\n",
        name:"addPropertyList",
        seeAlso:[
        ],
        params:[
            {
                description:"array of objects with properties to add",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"object[]"
            }
        ],
        returns:{
            description:"the class after properties have been added to it",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:EdgedCanvas.edgeColor":{
        ref:"attr:EdgedCanvas.edgeColor",
        flags:"IR",
        description:"CSS color (WITHOUT \"#\") for the edges.  If specified, will be used as part of image\n names.  Example: \"edge_88FF88_TL.gif\".",
        name:"edgeColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:Layout.resizeBarSize":{
        ref:"attr:Layout.resizeBarSize",
        flags:"AIRW",
        description:"Thickness of the resizeBar in pixels.",
        name:"resizeBarSize",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:Layout"
    },
    "attr:ListGrid.booleanBaseStyle":{
        ref:"attr:ListGrid.booleanBaseStyle",
        flags:"IRA",
        description:"An optional CSS style to apply to the checkbox image. If supplied, and the checkbox is\n enabled, the base style is suffixed with \"True\", \"False\", or \"Partial\" if the checkbox\n is selected, unselected, or partially selected; if the checkbox is disabled, the suffix\n is \"TrueDisabled\", \"FalseDisabled\", or \"PartialDisabled\".\n <p>\n <b>NOTE:</b> This attribute is not supported by ${isc.DocUtils.linkForRef('class:TreeGrid')}.",
        name:"booleanBaseStyle",
        seeAlso:[
            {
                ref:"attr:ListGrid.printBooleanBaseStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:DrawKnob.drawPane":{
        ref:"attr:DrawKnob.drawPane",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('class:DrawPane')} into which this DrawKnob's ${isc.DocUtils.linkForRef('attr:DrawKnob.knobShape')} will be rendered.",
        name:"drawPane",
        seeAlso:[
        ],
        valueType:"DrawPane",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DrawKnob"
    },
    "method:DrawPane.erase":{
        ref:"method:DrawPane.erase",
        flags:"",
        description:" Call ${isc.DocUtils.linkForRef('method:DrawItem.erase')} on all DrawItems currently associated with the DrawPane.  \n <P>\n The DrawItems will continue to exist, and you can call draw() on them to make them appear again, or\n ${isc.DocUtils.linkForRef('method:DrawItem.destroy','destroy')} to get rid of them permanetly.  Use ${isc.DocUtils.linkForRef('method:DrawPane.destroyItems')} to permanently\n get rid of all DrawItems.\n\n",
        name:"erase",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "attr:GaugeSector.endAngle":{
        ref:"attr:GaugeSector.endAngle",
        flags:"IR",
        description:null,
        name:"endAngle",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:GaugeSector"
    },
    "attr:PickTreeItem.shouldSaveValue":{
        ref:"attr:PickTreeItem.shouldSaveValue",
        flags:"IR",
        description:"Should this item's value be saved in the form's values and hence returned from\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValues','form.getValues()')}?\n <p>\n <code>shouldSaveValue:false</code> is used to mark formItems which do not correspond to\n the underlying data model and should not save a value into the form's\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','values')}.  Example includes visual separators, password re-type fields,\n or checkboxes used to show/hide other form items.\n <p>\n A <code>shouldSaveValue:false</code> item should be given a value either via\n ${isc.DocUtils.linkForRef('attr:FormItem.defaultValue')} or by calling\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValue','form.setValue(item, value)')} or \n ${isc.DocUtils.linkForRef('method:FormItem.setValue','formItem.setValue(value)')}.  Providing a value via\n ${isc.DocUtils.linkForRef('attr:DynamicForm.values','form.values')} or ${isc.DocUtils.linkForRef('method:DynamicForm.setValues','form.setValues()')} \n will automatically switch the item to <code>shouldSaveValue:true</code>.\n <P>\n Note that <ul>\n <li>if an item is shouldSaveValue true, but has no name, a warning is logged, and \n     shouldSaveValue will be set to false.\n </li></ul>",
        name:"shouldSaveValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:PickTreeItem",
        groups:[
            "formValues"
        ]
    },
    "classMethod:Class.getInstanceProperty":{
        ref:"classMethod:Class.getInstanceProperty",
        flags:"",
        description:"\n\tGets a named property from the instance defaults for this object.\n\n",
        name:"getInstanceProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to return",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "attr:FieldPicker.confirmText":{
        ref:"attr:FieldPicker.confirmText",
        flags:"IR",
        description:null,
        name:"confirmText",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Must save pending changes to proceed. OK?\"",
        type:"attr",
        definingClass:"class:FieldPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.scrollToTop":{
        ref:"method:Canvas.scrollToTop",
        flags:"",
        description:" Vertically scrolls the content of the widget to 0\n\n",
        name:"scrollToTop",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "scrolling"
        ]
    },
    "method:ListGrid.getValueIcon":{
        ref:"method:ListGrid.getValueIcon",
        flags:"",
        description:" Returns the appropriate valueIcon for a cell based on the field and the data value for the\n cell. Default implementation returns null if ${isc.DocUtils.linkForRef('attr:ListGridField.suppressValueIcon')} is true\n otherwise looks at ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons')}.\n",
        name:"getValueIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"field associated with the cell",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"ListGridField"
            },
            {
                description:"data value for the cell's record in this field.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"record associated with this cell",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            }
        ],
        returns:{
            description:"url for the icon",
            type:"SCImgURL"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "attr:SectionItem.sectionVisible":{
        ref:"attr:SectionItem.sectionVisible",
        deprecated:"As of SmartClient version 5.5, use ${isc.DocUtils.linkForRef('attr:SectionItem.sectionExpanded')}             instead.",
        flags:"IR",
        description:"Whether this form section should initially be visible.",
        name:"sectionVisible",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SectionItem"
    },
    "class:HiliteEditor":{
        methods:[
            "method:HiliteEditor.removeRule",
            "method:HiliteEditor.clearHilites",
            "method:HiliteEditor.setHilites",
            "method:HiliteEditor.saveHilites"
        ],
        ref:"class:HiliteEditor",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:HiliteEditor.fieldList",
            "attr:HiliteEditor.availableFieldsColumnTitle",
            "attr:HiliteEditor.hiliteIcons",
            "attr:HiliteEditor.hiliteRule",
            "attr:HiliteEditor.addAdvancedRuleButton",
            "attr:HiliteEditor.addAdvancedRuleButtonTitle",
            "attr:HiliteEditor.saveButton",
            "attr:HiliteEditor.saveButtonTitle",
            "attr:HiliteEditor.cancelButton",
            "attr:HiliteEditor.cancelButtonTitle",
            "attr:HiliteEditor.callback"
        ],
        description:"A widget for defining and editing a set of ${isc.DocUtils.linkForRef('class:HiliteRule','hilite rules')} for use by \n ${isc.DocUtils.linkForRef('interface:DataBoundComponent','dataBoundComponents')}.  Presents a list of available fields \n and allows editing of simple hilites directly and more complex hilites via  \n ${isc.DocUtils.linkForRef('class:AdvancedHiliteEditor')}s. \n <P>\n <i><b>Important Note:</b> this class should not be used directly - it is exposed purely for\n ${isc.DocUtils.linkForRef('group:i18nMessages','i18n reasons.')}</i>",
        name:"HiliteEditor",
        seeAlso:[
        ],
        type:"class"
    },
    "method:ListGrid.formatEditorValue":{
        ref:"method:ListGrid.formatEditorValue",
        flags:"",
        description:" Formatter to apply to values displayed within editors while a cell is being edited.\n The value passed to this method is the raw value for the cell.<br>\n If <code>formatEditorValue</code> is defined at the field level for some cell being edited,\n the field level method will be used to format the edit value and this method will not\n be called for that cell.<br>\n To convert the formatted value displayed within an editor back to a raw value, the\n <code>parseEditorValue</code> method is used.\n\n",
        name:"formatEditorValue",
        seeAlso:[
            {
                ref:"method:ListGridField.formatEditorValue",
                description:null
            },
            {
                ref:"method:ListGrid.parseEditorValue",
                description:null
            }
        ],
        params:[
            {
                description:"raw value for the cell being edited",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"any"
            },
            {
                description:"Record object for the cell. Note: If this is a new row that has not been saved,\n   it has no associated record object. In this case the edit values will\n   be passed in as this parameter.",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number for the cell.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"formatted value to display in the editor",
            type:"any"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "group:stringProcessing":{
        ref:"group:stringProcessing",
        refs:[
            "method:Number.stringify",
            "method:Number.toCurrencyString",
            "method:String.contains",
            "method:String.startsWith",
            "method:String.endsWith",
            "classMethod:NumberUtil.stringify",
            "classMethod:NumberUtil.toCurrencyString"
        ],
        name:"stringProcessing",
        seeAlso:[
        ],
        type:"group"
    },
    "group:tabBar":{
        ref:"group:tabBar",
        refs:[
            "attr:TabSet.tabBarPosition",
            "attr:TabSet.tabBarAlign",
            "attr:TabSet.tabBarThickness",
            "attr:TabSet.selectedTab"
        ],
        name:"tabBar",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DateChooser.dayNameLength":{
        ref:"attr:DateChooser.dayNameLength",
        flags:"IR",
        description:"How long (how many characters) should be day names be. May be 1, 2 or 3 characters.",
        name:"dayNameLength",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:StatefulCanvas.ignoreRTL":{
        ref:"attr:StatefulCanvas.ignoreRTL",
        flags:"IRWA",
        description:"Should horizontal alignment-related attributes ${isc.DocUtils.linkForRef('attr:StatefulCanvas.align','align')} and ${isc.DocUtils.linkForRef('attr:StatefulCanvas.iconOrientation','iconOrientation')}\n be mirrored in RTL mode? This is the default behavior unless ignoreRTL is set to true.",
        name:"ignoreRTL",
        setter:[
            "setIgnoreRTL"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "RTL"
        ]
    },
    "method:Array.slide":{
        ref:"method:Array.slide",
        flags:"A",
        description:" Slide element at position start to position destination, moving all the other elements to cover\n the gap.\n\n",
        name:"slide",
        seeAlso:[
        ],
        params:[
            {
                description:"start position",
                optional:false,
                name:"start",
                defaultValue:null,
                type:"number"
            },
            {
                description:"destination position for the value at start",
                optional:false,
                name:"destination",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"object:Array"
    },
    "attr:FormItem.pickerIconProperties":{
        ref:"attr:FormItem.pickerIconProperties",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','showPickerIcon')} is true for this item, this block of properties will\n be applied to the pickerIcon. Allows for advanced customization of this icon.",
        name:"pickerIconProperties",
        seeAlso:[
        ],
        valueType:"FormItemIcon Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:ListGrid.navigateOnTab":{
        ref:"attr:ListGrid.navigateOnTab",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canSelectCells')} is true, this property allows the user\n to navigate through the cells of a grid using Tab and Shift+Tab keypresses.\n When a user tabs to the\n end of the row, the ${isc.DocUtils.linkForRef('attr:ListGrid.rowEndEditAction')} is used to determine whether\n to shift selection to the next row, return to the beginning of the same row, or\n simply move on through the page's tab order.",
        name:"navigateOnTab",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DataSourceField.initRequiresRole":{
        ref:"attr:DataSourceField.initRequiresRole",
        flags:"IR",
        description:"Comma-separated list of user roles that are allowed to initialize this field. If the current\n user does not have any of the roles listed, the system will not allow this field to be \n initialized.\n <p>\n <b>NOTE:</b> This property only prevents initialization of a field; updates will still be \n allowed.  You should only use this property if you have a special requirement; ordinarily,\n use ${isc.DocUtils.linkForRef('attr:DataSourceField.editRequiresRole')}, which applies security for both types of write.",
        name:"initRequiresRole",
        seeAlso:[
            {
                ref:"attr:DataSourceField.editRequiresAuthentication",
                description:null
            },
            {
                ref:"attr:DataSourceField.editRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.updateRequiresRole",
                description:null
            },
            {
                ref:"attr:DataSourceField.initRequires",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        groups:[
            "fieldLevelAuth"
        ],
        requiresModules:[
            "SCServer"
        ]
    },
    "object:FiscalCalendar":{
        methods:[
        ],
        ref:"object:FiscalCalendar",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System/Date"
        ],
        attrs:[
            "attr:FiscalCalendar.defaultMonth",
            "attr:FiscalCalendar.defaultDate",
            "attr:FiscalCalendar.defaultYearMode",
            "attr:FiscalCalendar.fiscalYears"
        ],
        description:"An object representing the start date for fiscal years in the current locale.\n <P>\n A fiscal year spans a configurable date range - it may not exactly\n match a calendar year in length and it can start on any date within the calendar year\n and potentially end in the next calendar year.\n <P>\n Developers may specify explicit fiscal year start dates by adding ${isc.DocUtils.linkForRef('object:FiscalYear')}\n objects to the ${isc.DocUtils.linkForRef('attr:FiscalCalendar.fiscalYears','fiscal years array')}.\n If none are provided, or if there is no entry for the given year, one is\n manufactured based on the default ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultMonth','month')}\n and ${isc.DocUtils.linkForRef('attr:FiscalCalendar.defaultDate','date')}.",
        name:"FiscalCalendar",
        seeAlso:[
        ],
        type:"object"
    },
    "method:Menu.setItemChecked":{
        ref:"method:Menu.setItemChecked",
        flags:"",
        description:" Checks or unchecks the menu item according to the value of newState, and redraws\n the menu if necessary. Returns true if there's a change in the checked state.\n\n",
        name:"setItemChecked",
        seeAlso:[
        ],
        params:[
            {
                description:"MenuItem in question, or it's index",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"MenuItem or number"
            },
            {
                description:"true to check the menu item, false to uncheck it.  If not                             passed, true is assumed",
                optional:true,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"true if the checked state was changed",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Menu"
    },
    "attr:Calendar.eventEditorFields":{
        ref:"attr:Calendar.eventEditorFields",
        flags:"IR",
        description:"The set of fields for the ${isc.DocUtils.linkForRef('attr:Calendar.eventEditor','event editor')}.\n <p>\n The default set of fields are: \n <pre>\n    {name: \"startHours\", title: \"From\",      editorType: \"SelectItem\", type: \"integer\", width: 60},\n    {name: \"startMinutes\", showTitle: false, editorType: \"SelectItem\", type: \"integer\", width: 60},\n    {name: \"startAMPM\", showTitle: false, type: \"select\", width: 60},\n    {name: \"invalidDate\", type: \"blurb\", colSpan: 4, visible: false}\n    {name: \"endHours\", title: \"To\",        editorType: \"SelectItem\", type: \"integer\", width: 60},\n    {name: \"endMinutes\", showTitle: false, editorType: \"SelectItem\", type: \"integer\", width: 60},\n    {name: \"endAMPM\", showTitle: false, type: \"select\", width: 60},\n    {name: \"name\", title: \"Name\", type: \"text\", colSpan: 4},\n    {name: \"description\", title: \"Description\", type: \"textArea\", colSpan: 4, height: 50}\n </pre>\n See the Customized Binding example below for more information on altering default datasource \n fields within forms.",
        name:"eventEditorFields",
        seeAlso:[
        ],
        valueType:"Array of FormItem",
        defaultValue:"see below",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('customCalendar')}",
            "${isc.DocUtils.linkForExampleId('validationFieldBinding')}"
        ],
        definingClass:"class:Calendar",
        groups:[
            "editing"
        ]
    },
    "attr:ListGrid.groupStartOpen":{
        ref:"attr:ListGrid.groupStartOpen",
        flags:"IRW",
        description:"Describes the default state of ListGrid groups when groupBy is called.\n\n Possible values are:\n <ul>\n <li>\"all\": open all groups\n <li>\"first\": open the first group\n <li>\"none\": start with all groups closed\n <li>Array of group values that should be opened\n </ul>",
        name:"groupStartOpen",
        seeAlso:[
            {
                ref:"method:ListGrid.groupBy",
                description:null
            }
        ],
        valueType:"GroupStartOpen | Array",
        defaultValue:"\"first\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "grouping"
        ]
    },
    "method:Canvas.markForRedraw":{
        ref:"method:Canvas.markForRedraw",
        flags:"",
        description:" Marks the widget as \"dirty\" so that it will be added to a queue for redraw. Redraw of dirty\n components is handled by a looping timer and will after a very short delay (typically less than\n 100ms). In most cases it is recommended that developers use <code>markForRedraw()</code>\n instead of calling ${isc.DocUtils.linkForRef('method:Canvas.redraw')} directly. Since this method queues the redraw, multiple\n calls to markForRedraw() within a single thread of execution will only lead to a single DOM\n manipulation which greatly improves application performance.\n\n",
        name:"markForRedraw",
        seeAlso:[
        ],
        params:[
            {
                description:"reason for performing the redraw",
                optional:true,
                name:"reason",
                defaultValue:"\"no reason provided\"",
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "drawing"
        ]
    },
    "attr:Tab.width":{
        ref:"attr:Tab.width",
        flags:"IRW",
        description:"You can specify an explicit width for the tab using this property.  Note that tabs\n automatically size to make room for the full title, but if you want to e.g. specify a\n uniform width for all tabs in a TabSet, this property enables you to do so.",
        name:"width",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"100",
        type:"attr",
        definingClass:"object:Tab"
    },
    "method:ValuesManager.addFieldErrors":{
        ref:"method:ValuesManager.addFieldErrors",
        flags:"",
        description:" Adds validation errors to the existing set of errors for the field in question.\n Errors passed in should be a string (for a single error message) or an array of strings.\n Pass in the showErrors parameter to immediately display the errors to the user by \n redrawing the appropriate member form item (or if no visible item is found for the field\n firing ${isc.DocUtils.linkForRef('method:ValuesManager.handleHiddenValidationErrors')}.\n",
        name:"addFieldErrors",
        seeAlso:[
        ],
        params:[
            {
                description:"name of field to apply errors to",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"error messages for the field",
                optional:false,
                name:"errors",
                defaultValue:null,
                type:"string | array of strings"
            },
            {
                description:"should the error(s) be immediately displayed to the user?",
                optional:false,
                name:"showErrors",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "errors"
        ]
    },
    "method:CubeGrid.setFixedFacetValue":{
        ref:"method:CubeGrid.setFixedFacetValue",
        flags:"",
        description:"\n Modify fixedFacetValues for this cubeGrid.\n\n",
        name:"setFixedFacetValue",
        seeAlso:[
        ],
        params:[
            {
                description:"facetId",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"fixedFacetValue     New fixed value for the facet, to be added to cubeGrid.fixedFacetValues.  Default is the\n     rollup value for the facet.",
                optional:false,
                name:"fixedFacetValueId",
                defaultValue:null,
                type:"id"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "method:DataBoundComponent.editFormulaField":{
        ref:"method:DataBoundComponent.editFormulaField",
        flags:"",
        description:" Method to display a ${isc.DocUtils.linkForRef('class:FormulaBuilder')} to edit a formula Field.  If the function is called\n without a parameter, a new field will be created when the formula is saved.\n\n",
        name:"editFormulaField",
        seeAlso:[
        ],
        params:[
            {
                description:"Field to edit or null to add a new formula field",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"Field"
            }
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "formulaFields"
        ]
    },
    "method:MultiGroupDialog.getGroup":{
        ref:"method:MultiGroupDialog.getGroup",
        flags:"",
        description:" Returns all configured grouping levels, as an array of ${isc.DocUtils.linkForRef('object:GroupSpecifier')}s.\n\n",
        name:"getGroup",
        seeAlso:[
        ],
        returns:{
            description:"the GroupSpecifiers for all configured grouping levels",
            type:"Array of GroupSpecifier"
        },
        type:"method",
        definingClass:"class:MultiGroupDialog"
    },
    "attr:Canvas.hoverAutoDestroy":{
        ref:"attr:Canvas.hoverAutoDestroy",
        flags:"IRW",
        description:"If <code>this.showHover</code> is true and ${isc.DocUtils.linkForRef('method:Canvas.getHoverComponent')} is implemented, should\n the hoverCanvas returned from it be automatically destroyed when it is hidden?\n <P>\n The default of null indicates that the component <b>will</b> be automatically\n destroyed.  Set to false to prevent this.",
        name:"hoverAutoDestroy",
        seeAlso:[
            {
                ref:"attr:Canvas.showHover",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "hovers"
        ]
    },
    "type:EscapeKeyEditAction":{
        ref:"type:EscapeKeyEditAction",
        values:[
            {
                description:"cancels the current edit and discards edit values",
                value:"\"cancel\""
            },
            {
                description:"end editing (will save edit values if ${isc.DocUtils.linkForRef('attr:ListGrid.autoSaveEdits')}  is true).",
                value:"\"done\""
            },
            {
                description:"exit the editor (edit values will be left intact but not saved).",
                value:"\"exit\""
            }
        ],
        description:"What to do if the user hits escape while editing a cell.",
        name:"EscapeKeyEditAction",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "editing"
        ]
    },
    "method:CubeGrid.getSelectedCells":{
        ref:"method:CubeGrid.getSelectedCells",
        flags:"",
        description:" Returns an array of the selected cell records.\n\n  <br><i>methodType</i> getter\n",
        name:"getSelectedCells",
        seeAlso:[
        ],
        returns:{
            description:"array of the selected cell records",
            type:"Array of CellRecord"
        },
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "selection"
        ]
    },
    "attr:ListGrid.hiliteEditorSpanTitleSeparator":{
        ref:"attr:ListGrid.hiliteEditorSpanTitleSeparator",
        flags:"IRW",
        description:"If this grid has specified ${isc.DocUtils.linkForRef('attr:ListGrid.headerSpans')}, and\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderSpanTitlesInHiliteEditor')} is true, this string will be inserted\n between the headerSpan title and the field title in the hiliteEditor field chooser\n grid.",
        name:"hiliteEditorSpanTitleSeparator",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\" - \"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Canvas.getHoverComponent":{
        ref:"method:Canvas.getHoverComponent",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:Canvas.showHoverComponents')} is true, this method is called to get the component to show\n as a hover for this Canvas.  There is no default implementation of this method, so you need\n to override it with an implementation that returns a Canvas that suits your needs.\n <P>\n By default, components returned by <code>getHoverComponent()</code> will not be\n automatically destroyed when the hover is hidden.  To enforce this, set\n ${isc.DocUtils.linkForRef('attr:Canvas.hoverAutoDestroy')} to true on the returned component.\n\n",
        name:"getHoverComponent",
        seeAlso:[
        ],
        returns:{
            description:"the component to show as a hover",
            type:"Canvas | Canvas Properties"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "hoverComponents"
        ]
    },
    "method:Canvas.setAriaState":{
        ref:"method:Canvas.setAriaState",
        flags:"",
        description:" Set a specific ARIA state for this component.\n \n",
        name:"setAriaState",
        seeAlso:[
        ],
        params:[
            {
                description:"aria state to update",
                optional:false,
                name:"stateName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"value for the aria state",
                optional:false,
                name:"stateValue",
                defaultValue:null,
                type:"String | Boolean | Integer | Float"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "accessibility"
        ]
    },
    "group:messaging":{
        ref:"group:messaging",
        title:"Real-Time Messaging",
        treeLocation:[
            "Optional Modules/Messaging"
        ],
        refs:[
            "classMethod:Messaging.send",
            "classMethod:Messaging.getSubscribedChannels",
            "classMethod:Messaging.subscribe",
            "classMethod:Messaging.unsubscribe",
            "classMethod:Messaging.connected",
            "classMethod:Messaging.disconnect"
        ],
        description:"The optional Real-Time Messaging (RTM) module for SmartClient allows browser-based web applications to:\n <ul>\n <li>publish and subscribe to HTTP messaging channels</li>\n <li>send and receive messages via server push, for \"real-time\" updates without polling</li>\n </ul>\n For examples of publish and subscribe messaging, see: ${isc.DocUtils.linkForExampleId('FSportfolioGrid', 'Portfolio Grid')}\n and ${isc.DocUtils.linkForExampleId('FSstockQuotesChart', 'Stock Chart')}\n <p>\n This functionality is currently supported for deployment on Java server platforms only, and\n requires a Power license or better as well as purchase of the Real-Time Messaging\n module.  See <a href='http://smartclient.com/product' target='_blank'>http://smartclient.com/product</a> for details, and see \n ${isc.DocUtils.linkForRef('group:loadingOptionalModules')} for instructions on setting up the Messaging module.\n <p>\n <h3>Usage Summary</h3>\n <p>\n Messaging works in terms of <i>channels</i>.  A <i>channel</i> is an abitrary identifier for\n a destination for a message.  When messages are sent to a channel, anyone subscribed\n to that channel receives the message.\n <p>\n The same concept appears in JMS (Java Message Service), where the equivalent term to\n channel is \"topic\".\n <p>\n Messages can be sent to a channel from either the client-side (${isc.DocUtils.linkForRef('classMethod:Messaging.send')})\n or server-side (ISCMessageDispatcher.send(), or equivalent JMS APIs to send a message to a\n Topic).\n <p>\n You can subscribe to a channel from either the client-side (${isc.DocUtils.linkForRef('classMethod:Messaging.subscribe')})\n or server-side (ISCMessageDispatcher.register(), or equivalent JMS APIs to subscribe to a\n Topic).\n <p>\n Channels can be used in any way the application needs.  For example, a chat application\n similar to IRC would typically create a new channel every time 2 or more people want to talk\n to one another.\n <p>\n <h3>Server API summary</h3>\n <p>\n Server-side RTM interfaces are provided by the following classes in com.isomorphic.messaging:\n <table style=\"width: 80%;\"> <!-- Packages -->\n <tr><td><hr /><span style=\"font-family: monospace;\">ISCMessageDispatcher</span>\n         <table style=\"width: 90%; margin-left: 10%; float: left;\">\n         <tr><td>\n         Abstract class; use to obtain a concrete message dispatcher class.\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">instance()</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 returns a concrete ISCMessageDispatcher class capable of delivering responses within the JVM\n                 </div>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">instance(RequestContext context)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 returns a concrete ISCMessageDispatcher class capable of delivering responses to web browsers\n                 </div>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">send(ISCMessage msg)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 send a message\n                 </div>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">register(ISubscriber subscriber)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 register this subscriber\n                 </div>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">unregister(ISubscriber subscriber)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 unregister this subscriber\n                 </div>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">subscribe(ISubscriber subscriber, String channel)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 subscribe a given subscriber to a given channel\n                 </div>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">unsubscribe(ISubscriber subscriber, String channel)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 unsubscribe a given subscriber from a given channel\n                 </div>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">boolean isSubscribed(ISubscriber subscriber, String channel)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 check to see if a given subscriber is subscribed to a given channel\n                 </div>\n          </td></tr>\n         </table>\n </td></tr>\n \n <tr><td><hr /><span style=\"font-family: monospace;\">ISCMessage</span>\n         <table style=\"width: 90%; margin-left: 10%; float: left;\">\n         <tr><td>\n         Message object.\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">ISCMessage(String channel, Object data)</span>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">ISCMessage(List channels, Object data)</span>\n                 <div style=\"width: 75%; margin-left: 15%; float: left;\">\n                 create a message bound for the specified channel(s) with the specified data payload\n                 </div>\n          </td></tr>\n         </table>\n </td></tr>\n \n <tr><td><hr /><span style=\"font-family: monospace;\">ISubscriber</span>\n         <table style=\"width: 90%; margin-left: 10%; float: left;\">\n         <tr><td>\n         Simple interface for a message subscriber. Required methods are:\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">public void send(ISCMessage msg) throws Exception;</span>\n         </td></tr><tr><td>\n            <hr />\n            <span style=\"font-family: monospace;\">public ISCMessage nextMessage(long timeout) throws Exception;</span>\n          </td></tr>\n         </table>\n </td></tr>\n \n <tr><td><hr /><span style=\"font-family: monospace;\">ISCSubscriber</span>\n         <div style=\"width: 80%; margin-left: 60px; float: left;\">\n         Simple concrete implementation of ISubscriber. send() adds message to a queue and nextMessage() retrieves them.\n         </div>\n </td></tr>\n </table> <!-- Packages -->\n \n <p>\n <h3>Configuration</h3>\n <p>\n The SmartClient message dispatcher can operate in simple mode or enterprise mode:\n <ul>\n <li>Simple mode uses an in-memory messaging delivery system with no message persistence, and\n     can operate only in the context of a single JVM.</li>\n <li>Enterprise mode uses Java Message Service (JMS) as the messaging backend, and can\n     operate in a clustered environment.</li>\n </ul>\n You can set the following properties in WEB-INF/classes/server.properties to control this mode and other parameters:\n <table style=\"border: 1px solid black;\">\n <tr><td style=\"background-color: #f4f4f4;\">\n <pre> \n # how often do we send keepalives to the client (ms) \n        messaging.keepaliveInterval: 3000\n\n # how long the client waits after the keepaliveInterval before re-establishing\n # the connection (ms)\n        messaging.keepaliveReestablishDelay: 1000\n\n # how long the client waits for the connect handshake to complete before \n # retrying \n        messaging.connectTimeout: 4000\n\n # connection time to live - the maximum amount of time a persistent connection\n # is allowed to stay open before being re-established (ms) \n        messaging.connectionTTL: 120000\n\n # total response size to pad out to in order to defeat intervening\n # bufferring by proxies (bytes)\n        messaging.flushBufferSize: 8096\n\n # dispatcher to use for user registration/message queueing\n # com.isomorphic.messaging.LocalMessageDispatcher for simple one-jvm messaging\n # com.isomorphic.messaging.JMSMessageDispatcher for JMS-backed messaging\n        messaging.dispatcherImplementer: com.isomorphic.messaging.LocalMessageDispatcher\n\n # jms configuration - for JMSMessageDispatcher only\n        messaging.jms.context: _container_\n        messaging.jms.jndiPrefix: jms\n        messaging.jms.topicConnectionFactory: TopicConnectionFactory\n </pre>\n </td></tr>\n </table>\n \n <p>\n Example configurations for various populate JMS engines (ActiveMQ, JBoss, etc) can be found\n on the\n <a href='http://wiki.smartclient.com/' target='_blank'>Isomorphic Public Wiki</a>.  Try searching for \n <a href='http://wiki.smartclient.com/dosearchsite.action?queryString=messaging' target='_blank'>\"messaging\"</a> or\n <a href='http://wiki.smartclient.com/dosearchsite.action?queryString=jms' target='_blank'>\"jms\"</a> or the\n name of the engine you are trying to configure.\n\n <h3>Tips</h3>\n <p>\n <ul>\n <li>We recommend developing using a single container with the LocalMessageDispatcher and\n     then switching to the JMSMessageDispatcher for production.</li>\n <li>For best performance, we recommend forwarding the messaging connections to an HTTP 1.0\n     server. This results in better interactive behaviour in older Internet Explorer web\n     browsers (pre-8.0)</li>\n </ul>\n <p>",
        name:"messaging",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DetailViewer.valueAlign":{
        ref:"attr:DetailViewer.valueAlign",
        flags:"IRW",
        description:"Horizontal alignment of values in this viewer.  If unspecified, defaults to \n <code>\"right\"</code> when in RTL mode and <code>\"left\"</code> otherwise.",
        name:"valueAlign",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "values"
        ]
    },
    "attr:ProcessElement.ID":{
        ref:"attr:ProcessElement.ID",
        flags:"IR",
        description:"Optional ID for this process element, allowing it to be referred to from \n ${isc.DocUtils.linkForRef('class:DecisionGateway','Gateways')}, or as the ${isc.DocUtils.linkForRef('attr:Process.startElement')}.  See ${isc.DocUtils.linkForRef('class:ProcessSequence')} and\n ${isc.DocUtils.linkForRef('class:Process')} to understand when this is required or can be omitted.\n <P>\n Unlike ${isc.DocUtils.linkForRef('attr:Canvas.ID')} a <code>processElement</code>'s is a not a globally unique\n variable, it need only by unique within it's process.\n <P>\n When assigned an ID, a <code>processElement</code> can be retrieve via\n ${isc.DocUtils.linkForRef('method:Process.getElement')}.",
        name:"ID",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ProcessElement"
    },
    "attr:DetailViewer.fieldPickerFieldProperties":{
        ref:"attr:DetailViewer.fieldPickerFieldProperties",
        flags:"IR",
        description:"Names of properties on ${isc.DocUtils.linkForRef('object:DetailViewerField')} for which the ${isc.DocUtils.linkForRef('class:FieldPicker')} should\n show an editing interface, for convenience.\n <P>\n For example, specify [\"decimalPad\", \"decimalPrecision\"] to allow end users to modify\n ${isc.DocUtils.linkForRef('attr:DetailViewerField.decimalPad')} and ${isc.DocUtils.linkForRef('attr:DetailViewerField.decimalPrecision')} respectively.",
        name:"fieldPickerFieldProperties",
        seeAlso:[
        ],
        valueType:"Array of String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DetailViewer"
    },
    "method:Date.toShortDateTime":{
        ref:"method:Date.toShortDateTime",
        flags:"",
        description:" Returns the datetime as a formatted string using the format set up via the\n <code>setShortDatetimeDisplayFormat()</code> method.\n",
        name:"toShortDateTime",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional Format for the date returned",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"DateDisplayFormat"
            },
            {
                description:"If a custom timezone has been set via   Time.setDefaultDisplayTimezone(), by default date formatters will respect this timezone.\n   to suppress this behavior, this parameter should be set to false.",
                optional:true,
                name:"useCustomTimezone",
                defaultValue:null,
                type:"Boolean"
            }
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:DateChooser.todayButtonHeight":{
        ref:"attr:DateChooser.todayButtonHeight",
        flags:"IRW",
        description:"If set specifies a fixed height for the Today and Cancel buttons.",
        name:"todayButtonHeight",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "attr:Window.hiliteHeaderStyle":{
        ref:"attr:Window.hiliteHeaderStyle",
        flags:"IRWA",
        description:"Highlight style for the Window header. Displayed when a window \n is ${isc.DocUtils.linkForRef('method:Window.flash','flashed')}",
        name:"hiliteHeaderStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"WindowHeader\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "header"
        ]
    },
    "group:autoFitFields":{
        ref:"group:autoFitFields",
        refs:[
            "method:ListGrid.autoFitField",
            "method:ListGrid.autoFitFields",
            "method:ListGrid.setAutoFitWidth",
            "attr:ListGrid.canAutoFitFields",
            "attr:ListGrid.headerAutoFitEvent",
            "attr:ListGridField.autoFitWidth",
            "attr:ListGrid.autoFitFieldWidths",
            "attr:ListGrid.autoSizeHeaderSpans",
            "attr:ListGrid.autoFitClipFields",
            "attr:ListGrid.autoFitFieldsFillViewport",
            "attr:ListGrid.autoFitExpandField",
            "attr:ListGrid.autoFitWidthApproach",
            "attr:ListGridField.autoFitWidthApproach",
            "attr:ListGrid.autoFitIconFields",
            "attr:ListGrid.autoFitFieldText",
            "attr:ListGrid.autoFitAllText",
            "type:AutoFitEvent",
            "type:AutoFitWidthApproach",
            "type:AutoFitIconFieldType"
        ],
        name:"autoFitFields",
        seeAlso:[
        ],
        type:"group"
    },
    "classMethod:Time.setDefaultDisplayTimezone":{
        ref:"classMethod:Time.setDefaultDisplayTimezone",
        flags:"",
        description:" Sets the offset from UTC to use when formatting values of type ${isc.DocUtils.linkForRef('type:FieldType','datetime')} \n with standard display formatters.\n <p>\n This property affects how dates are displayed and also the\n assumed timezone for user-input. For a concrete example - assume this method has been called \n and passed a value of \"+01:00\", and an application has a ${isc.DocUtils.linkForRef('class:DateTimeItem')} visible in\n a DynamicForm. If the value of this field is set to the current date, with UTC time set to\n \"10:00\", the time portion of the value displayed in the form item will be \"11:00\".\n Similarly if a user modifies the time value in the text box to be \"16:00\", a call to \n ${isc.DocUtils.linkForRef('method:FormItem.getValue')} for the item will return a date object with UTC time set to 15:00.\n <P>\n Interaction with daylight savings time: The specified \"defaultDisplayTimezone\" should\n reflect the correct UTC offset for the current date, for which it will always be exactly respected;\n adjustment will only be made for dates that fall outside the current daylight savings time mode.\n <P>\n In other words if DST is currently not in effect (IE: the current date is a Winter date),\n any other dates where DST is not in effect will be formatted to exactly respect the specified\n defaultDisplayTimezone (so for defaultDisplayTimezone of \"+01:00\", the display\n string will be 1 hour ahead of the UTC time on the date in question), and any\n dates where DST is in effect would be further adjusted to account for DST\n (so the display string would be 2 hours ahead for dates that fall in the Summer).<br>\n Alternatively if DST currently is in effect (EG: Current date is a Summer date)\n the situation is reversed. Any date value for which DST should be applied\n will be be formatted for display with an offset of 1 hour from UTC - and any date value\n for which DST should not be applied would be formatted with an offset of 0 hours from UTC.\n <br>\n Note that the ${isc.DocUtils.linkForRef('classAttr:Time.adjustForDST')} property may be set to <code>false</code> to\n disable this logic - in this case the time portion of dates will always be offset from\n UTC by exactly the specified defaultDisplayOffset, regardless of whether they fall in the\n range where Daylight Savings Time would usually be applied or not.\n <p>\n Note that if a custom timezone is specified, it will not effect native javascript \n date formatting functions such as <code>toLocaleString()</code>.\n See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more on how SmartClient handles date and time\n formatting and storage.\n <P>\n If this method is never called, the default display timezone for times and datetimes will\n be derived from the native browser local timezone.\n <P>\n Note that the displayTimezone effects datetime fields only and has no effect on fields\n specified as logical date (<code>field.type = \"date\";</code>) or\n logical time (<code>field.type = \"time\"</code>).\n\n",
        name:"setDefaultDisplayTimezone",
        seeAlso:[
            {
                ref:"group:dateFormatAndStorage",
                description:null
            }
        ],
        params:[
            {
                description:"offset from UTC. This should be a string in the format    <code>+/-HH:MM</code> for example <code>\"-08:00\"</code>",
                optional:false,
                name:"offset",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"classMethod",
        definingClass:"class:Time"
    },
    "attr:ListGrid.expansionEditor":{
        ref:"attr:ListGrid.expansionEditor",
        flags:"RA",
        description:"Automatically generated ${isc.DocUtils.linkForRef('class:DynamicForm')} for editing the details of a record\n in its expanded section when\n ${isc.DocUtils.linkForRef('type:ExpansionMode','listGrid.expansionMode')} is <code>editor</code>.  Note that only\n those fields which do not already appear in the grid will appear in the expanded section.\n <P>\n According to the value of ${isc.DocUtils.linkForRef('attr:ListGrid.showExpansionEditorSaveButton')}, a save button is shown\n beneath the editor.  You can save the values in the editor by clicking this button\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via\n <code>listGrid.expansionEditorProperties</code> and\n <code>listGrid.expansionEditorDefaults</code>.\n <P>\n Note, however, that this is a multi-instance component (potentially one per record),\n so it is created using ${isc.DocUtils.linkForRef('method:Class.createAutoChild','createAutoChild()')} not\n ${isc.DocUtils.linkForRef('method:Class.addAutoChild','addAutoChild()')}, and no default single instance is created by\n name on the grid.",
        name:"expansionEditor",
        seeAlso:[
        ],
        valueType:"MultiAutoChild DynamicForm",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:Date.toSerializeableDate":{
        ref:"method:Date.toSerializeableDate",
        flags:"A",
        description:" Return this date in 'serialized' format <code>YYYY-MM-DD HH:MM:SS</code>\n",
        name:"toSerializeableDate",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"String"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "classAttr:NumberUtil.groupingSymbol":{
        ref:"classAttr:NumberUtil.groupingSymbol",
        flags:"IR",
        description:"The grouping symbol, or thousands separator, to use when formatting numbers",
        name:"groupingSymbol",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\",\"",
        type:"classAttr",
        definingClass:"class:NumberUtil",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DrawPane.drawingWidth":{
        ref:"attr:DrawPane.drawingWidth",
        flags:"IR",
        description:"When ${isc.DocUtils.linkForRef('attr:DrawPane.canDragScroll','canDragScroll')} is enabled, this is the width of the area\n in viewbox coordinates that can be accessed through drag-scrolling.",
        name:"drawingWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"1000",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('ZoomAndPan')}"
        ],
        definingClass:"class:DrawPane"
    },
    "attr:ToolStrip.height":{
        ref:"attr:ToolStrip.height",
        flags:"IRW",
        description:"ToolStrips set a default ${isc.DocUtils.linkForRef('attr:Canvas.height','height')} to avoid being stretched by\n containing layouts.",
        name:"height",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:ToolStrip",
        groups:[
            "sizing"
        ]
    },
    "method:EBay.setUseProduction":{
        ref:"method:EBay.setUseProduction",
        flags:"",
        description:"\n You can use web services in sandbox or production mode.  By default, this web service\n will work in sandbox mode.  Call this method with a true value to switch to production\n mode.\n\n",
        name:"setUseProduction",
        seeAlso:[
        ],
        params:[
            {
                description:"true to use production, false to use sandbox",
                optional:false,
                name:"useProduction",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:EBay"
    },
    "attr:Scrollbar.thumbMinSize":{
        ref:"attr:Scrollbar.thumbMinSize",
        flags:"IRA",
        description:"The minimum pixel size of the draggable thumb regardless of how large the scrolling\n region becomes.",
        name:"thumbMinSize",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"12",
        type:"attr",
        definingClass:"class:Scrollbar",
        groups:[
            "thumb"
        ]
    },
    "class:SliderItem":{
        methods:[
            "method:SliderItem.setMinValue",
            "method:SliderItem.setMaxValue",
            "method:SliderItem.setNumValues"
        ],
        ref:"class:SliderItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Forms/Form Items"
        ],
        attrs:[
            "attr:SliderItem.vertical",
            "attr:SliderItem.minValue",
            "attr:SliderItem.maxValue",
            "attr:SliderItem.numValues",
            "attr:SliderItem.roundValues",
            "attr:SliderItem.roundPrecision",
            "attr:SliderItem.defaultValue",
            "attr:SliderItem.slider",
            "attr:SliderItem.sliderProperties",
            "attr:SliderItem.shouldSaveValue",
            "attr:SliderItem.sliderConstructor",
            "attr:SliderItem.changeOnDrag"
        ],
        description:"FormItem that uses a ${isc.DocUtils.linkForRef('class:Slider')} component to present an interface for picking\n from either a continuous range or a range with a small number of discrete values.",
        name:"SliderItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('sliderItem')}"
        ]
    },
    "attr:Applet.scriptable":{
        ref:"attr:Applet.scriptable",
        flags:"IR",
        description:"Usable only in IE: if true allows JS->Java LiveConnect (other platforms that support\n  LiveConnect have it enabled by default and do not allow it to be disabled).",
        name:"scriptable",
        seeAlso:[
            {
                ref:"attr:Applet.mayScript",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        platformNotes:"Relevant only on IE.",
        definingClass:"class:Applet"
    },
    "attr:ListGrid.exportRawValues":{
        ref:"attr:ListGrid.exportRawValues",
        flags:"IR",
        description:"Dictates whether the data in this grid should be exported raw by\n ${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData()')}.  If set to true,\n data will not be processed by field-formatters during exports.\n Decreases the time taken for large exports.  This property can also be set at the\n ${isc.DocUtils.linkForRef('attr:ListGridField.exportRawValues','field level')}.",
        name:"exportRawValues",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.animateShowTime":{
        ref:"attr:Canvas.animateShowTime",
        flags:"IRWA",
        description:"Default time for performing an animated show.  If unset, <code>this.animateTime</code>\n will be used by default instead",
        name:"animateShowTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "attr:DynamicForm.errors":{
        ref:"attr:DynamicForm.errors",
        flags:"IRW",
        getter:[
            "getErrors"
        ],
        description:"A property list of itemName:errorMessage pairs, specifying the set of error messages\n          displayed with the corresponding form elements. Each errorMessage may be either a\n          single string or an array of strings.",
        name:"errors",
        setter:[
            "setErrors"
        ],
        seeAlso:[
        ],
        valueType:"array",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:DynamicForm.validateOnChange":{
        ref:"attr:DynamicForm.validateOnChange",
        flags:"IRW",
        description:"If true, form fields will be validated when each item's \"change\" handler is fired\n as well as when the entire form is submitted or validated.\n <p>\n Note that this property can also be set at the item level or on each validator\n to enable finer granularity validation in response to user interaction.\n If true at the form or field level, validators not explicitly set with\n <code>validateOnChange:false</code> will be fired on change - displaying errors and\n rejecting the change on validation failure.",
        name:"validateOnChange",
        seeAlso:[
            {
                ref:"attr:FormItem.validateOnChange",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "validation"
        ]
    },
    "attr:ListGrid.showGridSummary":{
        ref:"attr:ListGrid.showGridSummary",
        flags:"IRW",
        description:"Should this ListGrid show a summary row beneath the last record of the grid. This summary\n row will contain per-field summary information. See ${isc.DocUtils.linkForRef('attr:ListGridField.showGridSummary')} and\n ${isc.DocUtils.linkForRef('method:ListGrid.getGridSummaryFunction')} for details on how the summary value to be displayed\n for each column will be calculated.\n <P>\n Note that the ${isc.DocUtils.linkForRef('attr:ListGrid.summaryRow','summaryRow autoChild')} will be created to actually\n display the summary row.",
        name:"showGridSummary",
        setter:[
            "setShowGridSummary"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:DataSourceField.fkColumnCode":{
        ref:"attr:DataSourceField.fkColumnCode",
        flags:"R",
        description:"<b>Only applicable to the built-in SQL DataSource</b>\n <p>\n This read-only attribute is a secure and unique hashed version of the name of the matching\n column in the table underlying a dataSource that this dataSourceField is a \n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey','foreign key')} to.  It is used automatically by client-side \n framework code to link dataSources together by foreign key.  This is necessary if we \n automatically discovered a foreign key relationship by inspecting the database schema, as \n a result of a DataSource specifying ${isc.DocUtils.linkForRef('attr:DataSource.autoDeriveSchema','autoDeriveSchema')}:\n true.  We use a secure hash rather than the column name itself for security reasons - \n sending the actual column name to the client would be considered an information leakage \n that could encourage attempts at injection attacks.",
        name:"fkColumnCode",
        seeAlso:[
            {
                ref:"attr:DataSource.tableCode",
                description:null
            },
            {
                ref:"attr:DataSourceField.fkTableCode",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSourceField",
        requiresModules:[
            "SCServer"
        ]
    },
    "method:TabSet.enableTab":{
        ref:"method:TabSet.enableTab",
        flags:"",
        description:" If the specified tab is disabled, enable it now.\n",
        name:"enableTab",
        seeAlso:[
            {
                ref:"attr:Tab.disabled",
                description:null
            }
        ],
        params:[
            {
                description:null,
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"Tab | number | ID | name"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "method:DrawItem.setStartArrow":{
        ref:"method:DrawItem.setStartArrow",
        flags:"",
        description:" Set the arrowhead at the beginning of this path.\n <p>\n <b>NOTE:</b> Not all DrawItem classes support arrowheads. You can use ${isc.DocUtils.linkForRef('method:DrawItem.supportsStartArrow')}\n to dynamically check whether a DrawItem instance supports this method.\n",
        name:"setStartArrow",
        seeAlso:[
        ],
        params:[
            {
                description:"style of arrow to use",
                optional:false,
                name:"arrowStyle",
                defaultValue:null,
                type:"ArrowStyle"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "method:Progressbar.getBreadth":{
        ref:"method:Progressbar.getBreadth",
        flags:"",
        description:" Returns the current height of a horizontal progressbar, or width of a vertical progressbar.\n\n",
        name:"getBreadth",
        seeAlso:[
        ],
        returns:{
            description:"the breadth of the progressbar",
            type:"number"
        },
        type:"method",
        definingClass:"class:Progressbar"
    },
    "attr:ListGrid.dragTrackerStyle":{
        ref:"attr:ListGrid.dragTrackerStyle",
        flags:"IRW",
        description:"CSS Style to apply to the drag tracker when dragging occurs on this component.",
        name:"dragTrackerStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"gridDragTracker\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:ListGrid.trackerImage":{
        ref:"attr:ListGrid.trackerImage",
        flags:"IRWA",
        description:"Default image to use for the dragTracker when things are dragged within or out of this\n list. See ${isc.DocUtils.linkForRef('object:ImgProperties')} for format.",
        name:"trackerImage",
        seeAlso:[
            {
                ref:"attr:ListGrid.dragTrackerMode",
                description:null
            },
            {
                ref:"method:ListGrid.getDragTrackerIcon",
                description:null
            }
        ],
        valueType:"ImgProperties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "dragTracker"
        ]
    },
    "attr:Calendar.dayView":{
        ref:"attr:Calendar.dayView",
        flags:"R",
        description:"${isc.DocUtils.linkForRef('class:ListGrid')} used to display events that pertain to a given day.",
        name:"dayView",
        seeAlso:[
        ],
        valueType:"AutoChild ListGrid",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "classAttr:Operators.iregexpTitle":{
        ref:"classAttr:Operators.iregexpTitle",
        flags:"IR",
        description:"Title for the \"iregexp\" operator",
        name:"iregexpTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"matches expression\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:MultiGroupDialog.fields":{
        ref:"attr:MultiGroupDialog.fields",
        flags:"IR",
        description:"The list of fields which the user can choose to group by.",
        name:"fields",
        seeAlso:[
        ],
        valueType:"Array of Field",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiGroupDialog"
    },
    "object:UserSummary":{
        methods:[
        ],
        ref:"object:UserSummary",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Grids/ListGrid"
        ],
        attrs:[
            "attr:UserSummary.text",
            "attr:UserSummary.summaryVars"
        ],
        description:"An object representing a user-created and user-modifiable summary, which can be created and\n edited with a ${isc.DocUtils.linkForRef('class:SummaryBuilder')} either directly or via the\n ${isc.DocUtils.linkForRef('attr:ListGrid.canAddSummaryFields')} behavior.",
        name:"UserSummary",
        seeAlso:[
        ],
        type:"object"
    },
    "classMethod:isA.emptyString":{
        ref:"classMethod:isA.emptyString",
        flags:"",
        description:"\n\tIs <code>object</code> the empty string?<br><br>\n\t\n\tNOTE: if you prefer, you can call this as <code>isAn.emptyString()</code>\n\n",
        name:"emptyString",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a null string",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "method:TabSet.updateTab":{
        ref:"method:TabSet.updateTab",
        flags:"",
        description:" Set the pane for a tab.\n <P>\n Pass in the index of a tab (or a tab object), and a new pane.\n <P>\n NOTE: the old pane for the tab is not destroy()d\n \n",
        name:"updateTab",
        seeAlso:[
        ],
        params:[
            {
                description:"tab to update",
                optional:false,
                name:"tab",
                defaultValue:null,
                type:"number | ID | name | Tab"
            },
            {
                description:"new pane for the tab",
                optional:false,
                name:"pane",
                defaultValue:null,
                type:"Canvas | ID"
            }
        ],
        type:"method",
        definingClass:"class:TabSet"
    },
    "classMethod:RPCManager.cacheScreens":{
        ref:"classMethod:RPCManager.cacheScreens",
        flags:"",
        description:" Loads the definitions of a set of screens saved in ${isc.DocUtils.linkForRef('group:componentXML','Component XML')}\n format, using the ${isc.DocUtils.linkForRef('group:servletDetails','ScreenLoaderServlet')}.\n <p>\n Unlike ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')}, <code>cacheScreens()</code> does not cause any UI components to be\n created or drawn, it just loads the definitions of the screens.  This allows a subsequent,\n synchronous call to ${isc.DocUtils.linkForRef('classMethod:RPCManager.createScreen')} to create the actual screen, rather than\n contacting the <code>ScreenLoader</code> servlet and showing a loading message.\n <p>\n See ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} for the meaning of the <code>locale</code> parameter.\n <p>\n Calling <code>cacheScreens</code> twice with the same screenName will re-load the definition of\n that screen from the server such that subsequent calls to <code>createScreen()</code> will use\n the new definition.\n \n",
        name:"cacheScreens",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the screens to cache",
                optional:false,
                name:"screenName",
                defaultValue:null,
                type:"Array of String"
            },
            {
                description:"callback for notification of screens being successfully cached",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Function"
            },
            {
                description:"The name of a locale to use for resolving i18n tags in the                          component XML of the screen",
                optional:true,
                name:"locale",
                defaultValue:null,
                type:"String"
            },
            {
                description:"optional properties for the request",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"RPCRequest Properties"
            }
        ],
        type:"classMethod",
        definingClass:"class:RPCManager"
    },
    "attr:HiliteEditor.saveButton":{
        ref:"attr:HiliteEditor.saveButton",
        flags:"IR",
        description:"AutoChild ${isc.DocUtils.linkForRef('class:ImgButton')} that saves the hilites in this editor and fires the \n ${isc.DocUtils.linkForRef('attr:HiliteEditor.callback','callback')}.\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>hiliteEditor.saveButtonProperties</code>.",
        name:"saveButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:HiliteEditor"
    },
    "classAttr:Time.displayFormat":{
        ref:"classAttr:Time.displayFormat",
        flags:"RWA",
        description:"Standard formatter to be used when converting a date to a time-string via ${isc.DocUtils.linkForRef('classMethod:Time.toTime')}",
        name:"displayFormat",
        setter:[
            "Time.setNormalDisplayFormat"
        ],
        seeAlso:[
        ],
        valueType:"TimeDisplayFormat | function",
        defaultValue:"\"toTime\"",
        type:"classAttr",
        definingClass:"class:Time"
    },
    "attr:DrawPane.canDragScroll":{
        ref:"attr:DrawPane.canDragScroll",
        flags:"IR",
        description:"Can the user drag-scroll the DrawPane?",
        name:"canDragScroll",
        seeAlso:[
            {
                ref:"attr:DrawPane.drawingWidth",
                description:null
            },
            {
                ref:"attr:DrawPane.drawingHeight",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('ZoomAndPan')}"
        ],
        definingClass:"class:DrawPane"
    },
    "group:formLayout":{
        ref:"group:formLayout",
        title:"Form Layout",
        treeLocation:[
            "Client Reference/Forms"
        ],
        refs:[
            "attr:DynamicForm.itemLayout",
            "attr:DynamicForm.numCols",
            "attr:DynamicForm.fixedColWidths",
            "attr:DynamicForm.colWidths",
            "attr:DynamicForm.minColWidth",
            "attr:DynamicForm.cellPadding",
            "attr:DynamicForm.cellBorder",
            "attr:DynamicForm.sectionVisibilityMode",
            "attr:FormItem.width",
            "attr:FormItem.height",
            "attr:FormItem.titleColSpan",
            "attr:FormItem.colSpan",
            "attr:FormItem.rowSpan",
            "attr:FormItem.startRow",
            "attr:FormItem.endRow",
            "attr:ButtonItem.startRow",
            "attr:ButtonItem.endRow",
            "attr:SelectItem.height"
        ],
        description:"<b>FormItem Placement in Columns and Rows</b>\n <P>\n With the default tabular layout mechanism, items are laid out in rows from left to\n right until the number of columns, specified by ${isc.DocUtils.linkForRef('attr:DynamicForm.numCols','form.numCols')},\n is filled, then a new row is begun.  Flags on FormItems, including\n ${isc.DocUtils.linkForRef('attr:FormItem.startRow','startRow')}, ${isc.DocUtils.linkForRef('attr:FormItem.endRow','endRow')},\n ${isc.DocUtils.linkForRef('attr:FormItem.colSpan','colSpan')} and ${isc.DocUtils.linkForRef('attr:FormItem.rowSpan','rowSpan')}, control row and\n column placement and spanning.  \n <P>\n Note that the most common form items (TextItem, SelectItem, etc) take up <b>two</b>\n columns by default: one for the form control itself, and one for it's title.  The\n default setting of ${isc.DocUtils.linkForRef('attr:DynamicForm.numCols','form.numCols:2')} will result in one TextItem\n or SelectItem per row.\n <P>\n Note also that ButtonItems have both startRow:true and endRow:true by default.  You must\n set startRow and/or endRow to <code>false</code> on a ButtonItem in order to place a\n button in the same row as any other item.\n <P>\n The log category \"tablePlacement\" can be enabled from the Developer Console to watch\n items being placed.  You can also set ${isc.DocUtils.linkForRef('attr:DynamicForm.cellBorder','form.cellBorder:1')} to\n reveal the table structure for layout troubleshooting purposes.\n <P>\n <b>Row and Column Sizing</b>\n <P>\n ${isc.DocUtils.linkForRef('attr:DynamicForm.colWidths')} controls the widths of form columns.  FormItems that have\n \"*\" for ${isc.DocUtils.linkForRef('attr:FormItem.width')} will fill the column.  FormItems with a numeric width will\n have that width in pixels regardless of the column's specified width, which may cause the\n column to overflow as described under ${isc.DocUtils.linkForRef('attr:DynamicForm.fixedColWidths')}.\n <P>\n For row heights, the largest pixel height specified on any item in the row is taken as a\n minimum size for the row.  Then, any rows that have \"*\" or \"%\" height items will share\n any height not taken up by fixed-sized items.\n <P>\n Individual item heights are controlled by ${isc.DocUtils.linkForRef('attr:FormItem.height','item.height')}. This may be specified as\n an integer (pixel value), or a percentage string, or the special string \"*\", which \n indicates an item should fill the available space.<br>\n Percentages allow developers to determine how the available space in the form\n is split amongst items. For example if a form has 4 items in a single column,\n 2 of which have an  absolute pixel height specified, and 2 of which are have\n heights of <code>\"30%\"</code> and <code>\"70%\"</code> respectively, the percentage\n sized items will split up the available space after the fixed size items have been\n rendered.<br>\n Note that ${isc.DocUtils.linkForRef('attr:FormItem.cellHeight','item.cellHeight')} may be specified to explicitly control the height of \n an item's cell. In this case the specified ${isc.DocUtils.linkForRef('attr:FormItem.height','item.height')} will govern the size\n of the item within the cell (and if set to a percentage, this will be interpreted as\n a percentage of the cellHeight).\n <P>\n <b>Managing Overflow</b>\n <P>\n Forms often contain labels, data values, or instructional text which can vary in\n size based on the skin, data values, or internationalization settings.  There are a few\n ways to deal with a form potentially varying in size:\n <ol>\n <li> Allow scrolling when necessary, using ${isc.DocUtils.linkForRef('attr:Canvas.overflow','overflow:auto')}, either\n on the immediate form, or on some parent.\n <li> Place the form in a Layout along with a component that can render any specified\n size, such as a ${isc.DocUtils.linkForRef('class:ListGrid')}.  In this case, the Layout will automatically shrink the\n grid in order to accommodate the form.\n <li> Ensure that the form can always render at a designed minimum size by reducing\n the number of cases of variable-sized text, and testing remaining cases across all\n supported skins.  For example, move help text into hovers on help icons, or clip \n long text values at a maximum length and provide a hover to see the rest.\n </ol>\n\n Several examples of Form Layout are available ${isc.DocUtils.linkForExampleId('formsLayout', 'here')}.",
        name:"formLayout",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Canvas.shouldDragScroll":{
        ref:"method:Canvas.shouldDragScroll",
        flags:"A",
        description:" If this widget is showing scrollbars, and a user drags close to the edge of the viewport,\n should we scroll the viewport in the appropriate direction?\n Returns this.canDragScroll if there are scrollbars, else false.\n",
        name:"shouldDragScroll",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "events",
            "dragdrop"
        ]
    },
    "classAttr:RPCManager.loginStatusCodeMarker":{
        ref:"classAttr:RPCManager.loginStatusCodeMarker",
        flags:"IRWA",
        description:"String sequence which marks the response as a one which contains login status information.",
        name:"loginStatusCodeMarker",
        seeAlso:[
            {
                ref:"classAttr:RPCManager.loginRequiredMarker",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"RPCManager.loginStatusCodeMarker",
        type:"classAttr",
        definingClass:"class:RPCManager",
        groups:[
            "relogin"
        ]
    },
    "classMethod:isA.emptyObject":{
        ref:"classMethod:isA.emptyObject",
        flags:"",
        description:"\n Is <code>object</code> an object with no properties (i.e.: <code>{}</code>)?\n <P>\n Note that an object that has properties with null values is considered non-empty, eg \n <code>{ propName:null }</code> is non-empty.\n <P>\n NOTE: if you prefer, you can call this as <code>isAn.emptyObject()</code>\n\n",
        name:"emptyObject",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is the empty object",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "classMethod:Time.parseInput":{
        ref:"classMethod:Time.parseInput",
        flags:"",
        description:" Converts a time-string such as <code>1:00pm</code> to a new Date object \n representing a logical time value (rather than a specific datetime\n value), typically for display in a ${isc.DocUtils.linkForRef('attr:DataSourceField.type','time type field')}. \n Accepts most formats of time string. The generated\n Date value will have year, month and date set to the epoch date (Jan 1 1970), and time \n elements set to the supplied hour, minute and second (in browser native local time).\n <P>\n See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more information on date, time and datetime \n values in SmartClient.\n\n",
        name:"parseInput",
        seeAlso:[
        ],
        params:[
            {
                description:"time string to convert to a date",
                optional:false,
                name:"timeString",
                defaultValue:null,
                type:"string"
            },
            {
                description:"If this method is passed a timeString in an unrecognized format,  return null rather than a date object with time set to 00:00:00",
                optional:false,
                name:"validTime",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"classMethod",
        definingClass:"class:Time"
    },
    "attr:DynamicForm.clipStaticValue":{
        ref:"attr:DynamicForm.clipStaticValue",
        flags:"IR",
        description:"Default ${isc.DocUtils.linkForRef('attr:FormItem.clipStaticValue')} setting for items in this form. When unset, this\n is equivalent to <code>false</code>.",
        name:"clipStaticValue",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "attr:FormItem.valueIcons":{
        ref:"attr:FormItem.valueIcons",
        flags:"IRW",
        description:"A mapping of logical form item values to URLs.\n If specified, when the form item is set to the value in question, an icon will be \n displayed with the appropriate source URL.",
        name:"valueIcons",
        setter:[
            "setValueIcons"
        ],
        seeAlso:[
            {
                ref:"method:FormItem.getValueIcon",
                description:null
            }
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "valueIcons"
        ]
    },
    "attr:ListGrid.autoSaveEdits":{
        ref:"attr:ListGrid.autoSaveEdits",
        flags:"IRWA",
        description:"If this ListGrid is editable, should edits be saved out when the user finishes editing\n a row (or a cell if ${isc.DocUtils.linkForRef('attr:ListGrid.saveByCell')} is true).\n <P>\n The default of <code>true</code> indicates that edits will be\n ${isc.DocUtils.linkForRef('attr:ListGrid.saveByCell','automatically saved')} as the\n user navigates through the grid and/or ${isc.DocUtils.linkForRef('type:EnterKeyEditAction','hits \\'Enter\\'')} to end\n editing.  See the ${isc.DocUtils.linkForRef('group:editing','Grid Editing')} overview for details.\n <P>\n Setting <code>autoSaveEdits</code> false creates a \"mass update\" / \"mass delete\"\n interaction where edits will be retained for all edited cells (across rows if\n appropriate) until ${isc.DocUtils.linkForRef('method:ListGrid.saveEdits')} is called to save a particular row, or\n ${isc.DocUtils.linkForRef('method:ListGrid.saveAllEdits')} is called to save all changes in a batch.",
        name:"autoSaveEdits",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:SectionStack.useGlobalSectionIDs":{
        ref:"attr:SectionStack.useGlobalSectionIDs",
        flags:"IR",
        description:"Should any specified ${isc.DocUtils.linkForRef('attr:SectionStackSection.ID')} be applied to the generated SectionHeader widget\n for the section as a widget ID? If set to false, SectionStackSection.ID will behave as a synonym for\n SectionStackSection.name.",
        name:"useGlobalSectionIDs",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SectionStack"
    },
    "method:Canvas.getInnerContentHeight":{
        ref:"method:Canvas.getInnerContentHeight",
        flags:"A",
        description:" Returns the amount of space available for interior content (or relatively positioned child\n widget(s)) without introducing clipping, scrolling or overflow.<br>\n This is the space within the viewport of the widget (not including padding, and excluding\n margins, borders or scrollbars) rendered at its specified size.\n\n",
        name:"getInnerContentHeight",
        seeAlso:[
            {
                ref:"method:Canvas.getInnerContentWidth",
                description:null
            },
            {
                ref:"method:Canvas.getInnerHeight",
                description:null
            },
            {
                ref:"method:Canvas.getInnerWidth",
                description:null
            }
        ],
        returns:{
            description:"inner height of the widget in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:ToolStripGroup.bodyConstructor":{
        ref:"attr:ToolStripGroup.bodyConstructor",
        flags:"IRA",
        description:"SmartClient class for the body.",
        name:"bodyConstructor",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"HLayout\"",
        type:"attr",
        definingClass:"class:ToolStripGroup"
    },
    "classAttr:RPCResponse.STATUS_LOGIN_SUCCESS":{
        ref:"classAttr:RPCResponse.STATUS_LOGIN_SUCCESS",
        flags:"R",
        description:"Indicates that the login succeeded.",
        name:"STATUS_LOGIN_SUCCESS",
        seeAlso:[
            {
                ref:"class:RPCRequest",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"-8",
        type:"classAttr",
        definingClass:"class:RPCResponse",
        groups:[
            "statusCodes"
        ]
    },
    "method:HTMLFlow.contentLoaded":{
        ref:"method:HTMLFlow.contentLoaded",
        flags:"",
        description:" StringMethod fired when content is completely loaded in this htmlFlow. Has no default \n implementation. May be observed or overridden as a notification type method to fire custom\n logic when loading completes.\n <P>\n Notes:\n <ul><li>A call to ${isc.DocUtils.linkForRef('method:Canvas.setContents','this.setContents()')} \n  will cause this notification to be fired when\n  the contents have been set. If ${isc.DocUtils.linkForRef('attr:HTMLFlow.evalScriptBlocks')} is true, and the HTML passed\n  into <code>setContents()</code> contains any <code>&lt;script src=... &gt;</code>\n  tags, this callback will be fired asynchronously once the scripts have been loaded\n  from the server and executed, as well as having the widget content updated</li>\n <li>When using ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsURL')}, this does not apply to htmlFlows with\n  ${isc.DocUtils.linkForRef('attr:HTMLFlow.contentsType','contentsType')} set to <code>\"page\"</code></li></ul>\n\n",
        name:"contentLoaded",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:HTMLFlow",
        groups:[
            "contentLoading"
        ]
    },
    "attr:PrintWindow.printButtonTitle":{
        ref:"attr:PrintWindow.printButtonTitle",
        flags:"IRW",
        description:"Title for the print button",
        name:"printButtonTitle",
        setter:[
            "setPrintButtonTitle"
        ],
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Print\"",
        type:"attr",
        definingClass:"class:PrintWindow"
    },
    "attr:Canvas.animateTime":{
        ref:"attr:Canvas.animateTime",
        flags:"IRWA",
        description:"Default total duration of animations. Can be overridden by setting animation times for\n specific animations, or by passing a <code>duration</code> parameter into the appropriate\n animate...() method.",
        name:"animateTime",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"300",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('animateMove')}"
        ],
        definingClass:"class:Canvas",
        groups:[
            "animation"
        ]
    },
    "classMethod:Class.toString":{
        ref:"classMethod:Class.toString",
        flags:"",
        description:"\n  The default toString() for a ClassObject reports that you have a ClassObject and what class\n  it is.\n",
        name:"toString",
        seeAlso:[
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "method:Tree.remove":{
        ref:"method:Tree.remove",
        flags:"",
        description:"\n Removes a node, along with all its children.\n\n",
        name:"remove",
        seeAlso:[
        ],
        params:[
            {
                description:"node to remove",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"true if the tree was changed as a result of this call",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "classMethod:Time.createLogicalTime":{
        ref:"classMethod:Time.createLogicalTime",
        flags:"",
        description:" Create a new Date object to represent a logical time value (rather than a specific datetime\n value), typically for display in a ${isc.DocUtils.linkForRef('attr:DataSourceField.type','time type field')}. The generated\n Date value will have year, month and date set to the epoch date (Jan 1 1970), and time \n elements set to the supplied hour, minute and second (in browser native local time).\n <P>\n See ${isc.DocUtils.linkForRef('group:dateFormatAndStorage')} for more information on date, time and datetime \n values in SmartClient.\n\n",
        name:"createLogicalTime",
        seeAlso:[
        ],
        params:[
            {
                description:"hour (0-23)",
                optional:false,
                name:"hour",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"minute (0-59)",
                optional:false,
                name:"minute",
                defaultValue:null,
                type:"integer"
            },
            {
                description:"second (0-59)",
                optional:false,
                name:"second",
                defaultValue:null,
                type:"integer"
            }
        ],
        returns:{
            description:"new Javascript Date object representing the time in question",
            type:"Date"
        },
        type:"classMethod",
        definingClass:"class:Time"
    },
    "attr:ListGridField.editorValueIconWidth":{
        ref:"attr:ListGridField.editorValueIconWidth",
        flags:"IRW",
        description:"When some cell in this field is being edited, setting this property will specify the\n width for value icons in the cell's editor. If unset, the editor's valueIcon width and\n height will be determined in the same way as it would be for a static cell.",
        name:"editorValueIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "imageColumns"
        ]
    },
    "attr:FilterBuilder.showSubClauseButton":{
        ref:"attr:FilterBuilder.showSubClauseButton",
        flags:"IR",
        description:"Whether to show a button that allows the user to add subclauses.  Defaults to false if \n the ${isc.DocUtils.linkForRef('type:TopOperatorAppearance')} is \"radio\" or \"inline\", true in all other cases.",
        name:"showSubClauseButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"See Description",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:ListGrid.scrollToCellXPosition":{
        ref:"attr:ListGrid.scrollToCellXPosition",
        flags:"IRW",
        description:"When scrollToCell is called, this is used as defaults if xPosition weren't explicitly passed\n into the method.",
        name:"scrollToCellXPosition",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.left":{
        ref:"attr:Canvas.left",
        flags:"IRW",
        getter:[
            "getLeft"
        ],
        description:"Number of pixels the left side of the widget is offset to the right from its default\n drawing context (either its parent's topleft corner, or the document flow, depending on\n the value of the ${isc.DocUtils.linkForRef('attr:Canvas.position')} property).\n <P>\n Can also be set as a percentage, specified as a String ending in '%', eg, \"50%\".  In\n this case the top coordinate is considered as a percentage of the specified width of\n the ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas','parent')}.",
        name:"left",
        setter:[
            "setLeft"
        ],
        seeAlso:[
        ],
        valueType:"Number or String",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "positioning"
        ]
    },
    "attr:ResultTree.updateCacheFromRequest":{
        ref:"attr:ResultTree.updateCacheFromRequest",
        flags:"IRA",
        description:"When a successful Add, Update or Remove type operation fires on this ResultTree's \n dataSource, if ${isc.DocUtils.linkForRef('attr:DSResponse.data')} is unset, should we integrate the submitted\n data values (from the request) into our data-set?",
        name:"updateCacheFromRequest",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ResultTree",
        groups:[
            "cacheSync"
        ]
    },
    "attr:TreeGrid.animateFolderEffect":{
        ref:"attr:TreeGrid.animateFolderEffect",
        flags:"IRW",
        description:"When animating folder opening / closing, this property can be set to apply an\n animated acceleration effect. This allows the animation speed to be \"weighted\", for\n example expanding or collapsing at a faster rate toward the beginning of the animation\n than at the end.",
        name:"animateFolderEffect",
        seeAlso:[
        ],
        valueType:"AnimationAcceleration",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "animation"
        ]
    },
    "method:DrawGroup.erase":{
        ref:"method:DrawGroup.erase",
        flags:"",
        description:" Erases all DrawItems in the DrawGroup.\n\n",
        name:"erase",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DrawGroup"
    },
    "attr:FormItem.visible":{
        ref:"attr:FormItem.visible",
        flags:"IRW",
        description:"Whether this item is currently visible.\n <P>\n <code>visible</code> can only be set on creation.  After creation, use\n ${isc.DocUtils.linkForRef('method:FormItem.show')} and ${isc.DocUtils.linkForRef('method:FormItem.hide')} to manipulate visibility.",
        name:"visible",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "appearance"
        ]
    },
    "attr:TreeGrid.dragDataAction":{
        ref:"attr:TreeGrid.dragDataAction",
        flags:"IRWA",
        description:"Specifies what to do with data dragged from this TreeGrid (into another component, or\n another node in this TreeGrid.  The default action is to move the data.  A setting of\n \"none\" is not recommended for trees because Trees maintain the node open state on the nodes\n themselves, and hence having multiple Tree objects share a reference to a node can have\n unintended consequences (such as opening a folder in one tree also triggering an open in\n another tree that shares the same node).\n <br><br>\n For DataBound trees (${isc.DocUtils.linkForRef('class:ResultTree')}), the expectation is that\n ${isc.DocUtils.linkForRef('method:TreeGrid.folderDrop')} will be overridden to perform whatever action took\n place as the result of the drag and drop interaction.",
        name:"dragDataAction",
        seeAlso:[
            {
                ref:"group:sharingNodes",
                description:null
            }
        ],
        valueType:"DragDataAction",
        defaultValue:"ListGrid.MOVE",
        type:"attr",
        definingClass:"class:TreeGrid"
    },
    "attr:Button.showSelectedIcon":{
        ref:"attr:Button.showSelectedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n becomes selected.",
        name:"showSelectedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "group:IEFilters":{
        ref:"group:IEFilters",
        title:"Internet Explorer \"filter\" effects",
        refs:[
            "classAttr:Canvas.neverUsePNGWorkaround",
            "classAttr:Canvas.neverUseFilters",
            "classAttr:Canvas.allowExternalFilters",
            "classMethod:Canvas.setNeverUseFilters",
            "classMethod:Canvas.setAllowExternalFilters",
            "attr:Canvas.useOpacityFilter"
        ],
        description:"In order to compensate for various bugs and missing features in Internet Explorer, it's\n necessary to use Microsoft-proprietary \"filter\" settings, as follows:\n <ul>\n <li> IE6-8: Opacity filter required for opacity to work at all\n <li> IE6: AlphaImageLoader filter required for PNG transparency to work at all\n <li> IE7-8: AlphaImageLoader filter required for PNG transparency to work properly with\n      opacity (eg, translucent rounded windows), otherwise, PNGs will turn entirely black\n      or show other severe artifacts when opacity is applied\n </ul>\n Using these filters has a range of side-effects:\n <ul>\n <li> AlphaImageLoader will cause the UI to appear frozen until users have downloaded all\n      PNG media shown on the page\n <li> moderate to severe impact on rendering speed (20-60%)\n <li> font smoothing is disabled\n </ul>\n <P>\n For an application that is frequently used (where images will typically be cached) on\n recent machines, and where font smoothing is not considered important, no special steps\n need to be taken.\n <P>\n If any of the above side effects are important, our recommendations are:\n <ul>\n <li> minimize use of PNG media - use .gif instead\n <li> for IE7-8, ${isc.DocUtils.linkForRef('classAttr:Canvas.neverUsePNGWorkaround','disable AlphaImageLoader')} and\n      ${isc.DocUtils.linkForRef('attr:Canvas.useOpacityFilter','disable Opacity')} globally since these browsers\n      can only render PNGs correctly in the absence of opacity settings.  Selectively\n      enable opacity only in widgets that do not contain PNGs (eg the modalMask shown by\n      a Window).  Avoid the use of opacity fades as a transition effect for IE unless you\n      have eliminated all or almost all PNG media and the remaining artifacts are considered\n      acceptable.  Also eliminate all use of filter effects in CSS, and\n      ${isc.DocUtils.linkForRef('classAttr:Canvas.allowExternalFilters','disable the workaround')} that makes this possible.\n <li> if IE6 performance is critically important, eliminate all PNG media and all use of\n      opacity and ${isc.DocUtils.linkForRef('classAttr:Canvas.neverUseFilters','disable all filters')}.\n </ul>\n Note that the .gif format does not support partially transparent pixels, hence can't be\n used for very high-quality antialiasing effects.  However, certain specific tools can\n produce high-quality anti-aliased images in the less known PNG8 format, and this\n particular format has the least artifacts in the above situations.  Details\n <a href='http://blogs.sitepoint.com/2007/09/18/png8-the-clear-winner/' target='_blank'>here</a>.",
        name:"IEFilters",
        seeAlso:[
        ],
        type:"group"
    },
    "object:FiscalYear":{
        methods:[
        ],
        ref:"object:FiscalYear",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/System/Date"
        ],
        attrs:[
            "attr:FiscalYear.fiscalYear",
            "attr:FiscalYear.year",
            "attr:FiscalYear.month",
            "attr:FiscalYear.date"
        ],
        description:"An object representing the start of a given Fiscal Year in the current locale.\n <P>\n See ${isc.DocUtils.linkForRef('object:FiscalCalendar')} for more information on how FiscalYears are set up and used.",
        name:"FiscalYear",
        seeAlso:[
        ],
        type:"object"
    },
    "method:Date.toUSShortDateTime":{
        ref:"method:Date.toUSShortDateTime",
        flags:"",
        description:"  Return this date in the format: <code>MM/DD/YYYY HH:MM</code>\n\n",
        name:"toUSShortDateTime",
        seeAlso:[
        ],
        returns:{
            description:"formatted date string",
            type:"string"
        },
        type:"method",
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:TreeNode.showOpenIcon":{
        ref:"attr:TreeNode.showOpenIcon",
        flags:"IRWA",
        description:"For folder nodes showing custom icons (set via ${isc.DocUtils.linkForRef('attr:TreeNode.icon')}),\n this property allows the developer to specify on a per-node basis whether an\n open state icon should be displayed when the folder is open.\n Set <code>node.showOpenIcon</code> to true to show the open state\n icons, or false to suppress this.<br>\n If not specified, this behavior is determined by ${isc.DocUtils.linkForRef('attr:TreeGrid.showCustomIconOpen')}\n for this node.\n <P>You can change the name of this property by setting \n ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconOpenProperty')}.",
        name:"showOpenIcon",
        seeAlso:[
            {
                ref:"attr:TreeGrid.customIconProperty",
                description:null
            },
            {
                ref:"attr:TreeGrid.showCustomIconOpen",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"object:TreeNode",
        groups:[
            "treeIcons"
        ]
    },
    "attr:ColorPicker.cancelButtonConstructor":{
        ref:"attr:ColorPicker.cancelButtonConstructor",
        flags:"IRWA",
        description:"The class of the Cancel button. It is intended that you use either IButton or \n      Button - other classes are unlikely to work correctly.",
        name:"cancelButtonConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"IButton",
        type:"attr",
        definingClass:"class:ColorPicker"
    },
    "method:TreeGrid.getViewState":{
        ref:"method:TreeGrid.getViewState",
        flags:"",
        description:" Overridden to return a ${isc.DocUtils.linkForRef('type:TreeGridViewState')} object for the grid.\n",
        name:"getViewState",
        seeAlso:[
            {
                ref:"type:TreeGridViewState",
                description:null
            },
            {
                ref:"method:TreeGrid.setViewState",
                description:null
            }
        ],
        returns:{
            description:"current view state for the grid.",
            type:"TreeGridViewState"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "viewState"
        ]
    },
    "method:DateChooser.todayClick":{
        ref:"method:DateChooser.todayClick",
        flags:"",
        description:" Fired when the user clicks the Today button. Default implementation will select the current\n date in the date chooser.\n",
        name:"todayClick",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:DateChooser"
    },
    "interface:Chart":{
        methods:[
            "method:Chart.setupChart",
            "method:Chart.getFacet",
            "method:Chart.getFacetValue",
            "method:Chart.getValue",
            "method:Chart.setData"
        ],
        ref:"interface:Chart",
        classAttrs:[
            "classAttr:Chart.allChartTypes"
        ],
        classMethods:[
        ],
        treeLocation:[
            "Optional Modules/Charts"
        ],
        attrs:[
            "attr:Chart.valueProperty",
            "attr:Chart.data",
            "attr:Chart.facets",
            "attr:Chart.stacked",
            "attr:Chart.chartType",
            "attr:Chart.valueTitle",
            "attr:Chart.title",
            "attr:Chart.subTitle",
            "attr:Chart.threeD",
            "attr:Chart.shouldAnimateShow",
            "attr:Chart.labelValues"
        ],
        description:"Generic Chart properties and interfaces to be mixed into concrete charting implementations.\n <P>\n Components such as the ${isc.DocUtils.linkForRef('method:ListGrid.chartData','ListGrid')} and\n ${isc.DocUtils.linkForRef('method:CubeGrid.makeChart','CubeGrid')} expect this interface and can drive charting engines\n that support it.\n <P>\n Concrete Chart implementations may expose whatever properties they want for configuration,\n however, to enable easy switching of charting engines (different engines may be used for\n different end users based on that user's installed plugins), they should support\n the properties of this interface to the maximum extent possible.\n <P>\n This interface also provides core data model management (see\n ${isc.DocUtils.linkForRef('method:Chart.getValue','getValue()')}) for charting engines.",
        name:"Chart",
        seeAlso:[
        ],
        type:"interface",
        requiresModules:[
            "Charts"
        ]
    },
    "method:TreeGrid.getOpenState":{
        ref:"method:TreeGrid.getOpenState",
        flags:"",
        description:" Returns a snapshot of the current open state of this grid's data as\n a ${isc.DocUtils.linkForRef('type:TreeGridOpenState')} object.<br>\n This object can be passed to ${isc.DocUtils.linkForRef('method:TreeGrid.setOpenState')} to open the same set of folders\n within the treeGrid's data (assuming the nodes are still present in the data).\n",
        name:"getOpenState",
        seeAlso:[
            {
                ref:"method:TreeGrid.setOpenState",
                description:null
            }
        ],
        returns:{
            description:"current open state for the grid.",
            type:"TreeGridOpenState"
        },
        type:"method",
        definingClass:"class:TreeGrid",
        groups:[
            "viewState"
        ]
    },
    "method:DataBoundComponent.shouldIncludeHiliteInSummaryField":{
        ref:"method:DataBoundComponent.shouldIncludeHiliteInSummaryField",
        flags:"",
        description:" When assembling a value for a ${isc.DocUtils.linkForRef('attr:DataBoundComponent.canAddSummaryFields','summary field')}, if a referenced\n field is hilited, should the hilite HTML be included in the summary field value?\n <P>\n Example use case: Consider a grid containing a numeric field, and a summary field\n which contains some string value, plus the contents of the numeric field.\n If a hilite is defined for the grid which turns the numeric field text red when\n the value is negative, this property will govern whether the number will also be\n rendered in red within the summary field cells. Any other text in the summary field\n cells would not be effected by this hilite.\n <P>\n Default implementation returns ${isc.DocUtils.linkForRef('attr:DataBoundComponent.includeHilitesInSummaryFields','includeHilitesInSummaryFields')}.\n <P>\n To control hilites showing in group summaries, see ${isc.DocUtils.linkForRef('attr:ListGrid.showHilitesInGroupSummary','showHilitesInGroupSummary')}.\n\n",
        name:"shouldIncludeHiliteInSummaryField",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the summary field",
                optional:false,
                name:"summaryFieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"name of the field referenced by this summary",
                optional:false,
                name:"usedFieldName",
                defaultValue:null,
                type:"string"
            }
        ],
        returns:{
            description:"Return true to include hilites from the used field in the generated   summary field value.",
            type:"boolean"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "method:DrawPane.setZoomLevel":{
        ref:"method:DrawPane.setZoomLevel",
        flags:"",
        description:" Sets the zoom on this <code>DrawPane</code> to the specified magnification, maintaining the\n current viewport position.\n\n",
        name:"setZoomLevel",
        seeAlso:[
        ],
        params:[
            {
                description:"Desired zoom level as a float where <code>1.0</code> is equivalent to 100% magnification. Must be greater than 0.",
                optional:false,
                name:"zoomLevel",
                defaultValue:null,
                type:"float"
            }
        ],
        type:"method",
        definingClass:"class:DrawPane"
    },
    "attr:EdgedCanvas.edgeSize":{
        ref:"attr:EdgedCanvas.edgeSize",
        flags:"IR",
        description:"Size in pixels for corners and edges",
        name:"edgeSize",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"6",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "group:facetLayout":{
        ref:"group:facetLayout",
        refs:[
            "method:CubeGrid.getFacetValueLayout",
            "method:CubeGrid.getRowFacetLayout",
            "method:CubeGrid.getColumnFacetLayout",
            "method:CubeGrid.addRowFacet",
            "method:CubeGrid.addColumnFacet",
            "method:CubeGrid.removeFacet",
            "method:CubeGrid.setFixedFacetValue",
            "method:CubeGrid.facetValueReordered",
            "method:CubeGrid.facetAdded",
            "method:CubeGrid.facetRemoved",
            "method:CubeGrid.facetMoved",
            "attr:CubeGrid.columnFacets",
            "attr:CubeGrid.rowFacets",
            "attr:CubeGrid.hideEmptyFacetValues",
            "attr:CubeGrid.hideEmptyAxis",
            "attr:CubeGrid.canReorderColumns",
            "attr:CubeGrid.canMoveFacets"
        ],
        description:null,
        name:"facetLayout",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TextAreaItem.showHintInField":{
        ref:"attr:TextAreaItem.showHintInField",
        flags:"IRWA",
        description:"If showing hint for this form item, should it be shown within the field?\n <P>CSS style for the hint is ${isc.DocUtils.linkForRef('attr:TextAreaItem.textBoxStyle')} with the suffix\n \"Hint\" appended to it.",
        name:"showHintInField",
        seeAlso:[
            {
                ref:"attr:FormItem.hint",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextAreaItem",
        groups:[
            "appearance"
        ]
    },
    "attr:Button.selected":{
        ref:"attr:Button.selected",
        flags:"IRW",
        description:"Whether this component is selected.  For some components, selection affects appearance.",
        name:"selected",
        setter:[
            "setSelected"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "state"
        ]
    },
    "attr:Palette.generateNames":{
        ref:"attr:Palette.generateNames",
        flags:"IR",
        description:"Whether created components should have their \"ID\" or \"name\" property automatically set\n to a unique value based on the component's type, eg, \"ListGrid0\".",
        name:"generateNames",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"interface:Palette",
        groups:[
            "devTools"
        ]
    },
    "method:GridRenderer.rowOut":{
        ref:"method:GridRenderer.rowOut",
        flags:"A",
        description:" Called when the mouse pointer leaves a row\n\n",
        name:"rowOut",
        seeAlso:[
        ],
        params:[
            {
                description:"cell record as returned by getCellRecord",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"ListGridRecord"
            },
            {
                description:"row number for the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column number of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"whether to cancel the event",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "events"
        ]
    },
    "attr:Window.modalMaskOpacity":{
        ref:"attr:Window.modalMaskOpacity",
        flags:"IR",
        description:"Controls the opacity of the modal mask displayed behind modal windows.",
        name:"modalMaskOpacity",
        seeAlso:[
            {
                ref:"attr:Window.modalMask",
                description:null
            }
        ],
        valueType:"number",
        defaultValue:"50",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "modal",
            "appearance"
        ]
    },
    "attr:TimeItem.millisecondItemPrompt":{
        ref:"attr:TimeItem.millisecondItemPrompt",
        flags:"IRW",
        description:"The hover prompt to show for the ${isc.DocUtils.linkForRef('attr:TimeItem.millisecondItem','millisecond picker')}.",
        name:"millisecondItemPrompt",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"Choose milliseconds\"",
        type:"attr",
        definingClass:"class:TimeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "type:RowEndEditAction":{
        ref:"type:RowEndEditAction",
        values:[
            {
                description:"navigate to the first editable cell in the same record",
                value:"\"same\""
            },
            {
                description:"navigate to the first editable cell in the next record",
                value:"\"next\""
            },
            {
                description:"complete the edit.",
                value:"\"done\""
            },
            {
                description:"Leave focus in the cell being edited (take no action)",
                value:"\"stop\""
            },
            {
                description:"take no action",
                value:"\"none\""
            }
        ],
        description:"While editing a ListGrid, what cell should we edit when the user attempts to navigate\n  into a cell past the end of an editable row, via a Tab keypress, or a programmatic\n  saveAndEditNextCell() call?",
        name:"RowEndEditAction",
        seeAlso:[
            {
                ref:"attr:ListGrid.rowEndEditAction",
                description:null
            }
        ],
        type:"type",
        groups:[
            "editing"
        ]
    },
    "method:SectionStack.setSectionProperties":{
        ref:"method:SectionStack.setSectionProperties",
        flags:"",
        description:" Set arbitrary properties for a particular section in this SectionStack. Properties will\n be applied to the sectionHeader for the section.\n <P>\n Note that where APIs exist to explicitly manipulate section properties these should be\n used in preference to this method. For example, to add or remove items in a section use\n ${isc.DocUtils.linkForRef('method:SectionStack.addItem')} or ${isc.DocUtils.linkForRef('method:SectionStack.removeItem')}. To change the title of\n a section, use ${isc.DocUtils.linkForRef('method:SectionStack.setSectionTitle')}.\n <P>\n Also note that to modify properties of items within a section, call\n the appropriate setter methods directly on the item you want to modify.\n\n",
        name:"setSectionProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"ID or index of the section to modify",
                optional:false,
                name:"section",
                defaultValue:null,
                type:"String | int"
            },
            {
                description:"properties to apply to the section.",
                optional:false,
                name:"properties",
                defaultValue:null,
                type:"SectionStackSection Properties"
            }
        ],
        type:"method",
        definingClass:"class:SectionStack"
    },
    "classAttr:Operators.greaterThanFieldTitle":{
        ref:"classAttr:Operators.greaterThanFieldTitle",
        flags:"IR",
        description:"Title for the \"greaterThanField\" operator",
        name:"greaterThanFieldTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"greater than field\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DrawOval.setWidth":{
        ref:"method:DrawOval.setWidth",
        flags:"",
        description:" Set the width of the drawOval\n",
        name:"setWidth",
        seeAlso:[
        ],
        params:[
            {
                description:"new width",
                optional:false,
                name:"width",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:DrawOval"
    },
    "attr:FileItem.displayItem":{
        ref:"attr:FileItem.displayItem",
        flags:"RA",
        description:"The ${isc.DocUtils.linkForRef('class:StaticTextItem')} created automatically and displayed in the \n ${isc.DocUtils.linkForRef('attr:FileItem.displayForm')} when ${isc.DocUtils.linkForRef('attr:FormItem.canEdit','canEdit')} is false and the field type is\n \"blob\".\n <P>\n This component is an ${isc.DocUtils.linkForRef('type:AutoChild')} and as such may be customized via \n <code>fileItem.displayItemDefaults</code> and\n <code>fileItem.displayItemProperties</code>. \n <P>",
        name:"displayItem",
        seeAlso:[
        ],
        valueType:"AutoChild StaticTextItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FileItem",
        groups:[
            "upload"
        ]
    },
    "method:FormulaBuilder.getSamplePrompt":{
        ref:"method:FormulaBuilder.getSamplePrompt",
        flags:"",
        description:" Evaluates and returns the dynamic ${isc.DocUtils.linkForRef('attr:FormulaBuilder.samplePrompt')} string which is \n displayed beneath the formulaField and updated when typing pauses.\n \n",
        name:"getSamplePrompt",
        seeAlso:[
        ],
        params:[
            {
                description:"The return value from a call to testFunction().",
                optional:false,
                name:"",
                defaultValue:null,
                type:"TestFunctionResult"
            }
        ],
        returns:{
            description:"Caption displaying dynamic row-title and the result of the formula",
            type:"string"
        },
        type:"method",
        definingClass:"class:FormulaBuilder",
        groups:[
            "i18nMessages"
        ]
    },
    "classMethod:Date.setNormalDatetimeDisplayFormat":{
        ref:"classMethod:Date.setNormalDatetimeDisplayFormat",
        flags:"",
        description:"  Set the default normal format for datetime values. After calling this method, subsequent calls to\n ${isc.DocUtils.linkForRef('method:Date.toNormalDatetime')} will return a string formatted according to this format\n specification. Note that this will be the standard datetime format used by\n SmartClient components.\n <P>\n The <code>format</code> parameter may be a ${isc.DocUtils.linkForRef('type:FormatString')}, a ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} \n string, or a function. If passed a function, this function will be executed in the scope of\n the Date and should return the formatted string.<br>\n\n",
        name:"setNormalDatetimeDisplayFormat",
        seeAlso:[
        ],
        params:[
            {
                description:"new formatter",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"FormatString | DateDisplayFormat | function"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('dateFormat')}",
            "${isc.DocUtils.linkForExampleId('customDateFormat')}"
        ],
        definingClass:"class:Date",
        groups:[
            "dateFormatting"
        ]
    },
    "attr:StatefulCanvas.baseStyle":{
        ref:"attr:StatefulCanvas.baseStyle",
        flags:"IRW",
        description:"Base CSS style className applied to the component. \n <P>\n As the component changes ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state')} and/or is selected, \n suffixes will be added to the base style. In some cases more than one suffix will \n be appended to reflect a combined state (\"Selected\" + \"Disabled\", for example).\n <P>\n See ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of the default set\n of suffixes which may be applied to the baseStyle",
        name:"baseStyle",
        setter:[
            "setBaseStyle"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StatefulCanvas"
    },
    "method:ListGrid.getViewState":{
        ref:"method:ListGrid.getViewState",
        flags:"",
        description:" Returns a snapshot of the current view state of this ListGrid.<br>\n This includes the field, sort, hilite, group, and selected state of the grid, returned\n as a string representation of a ${isc.DocUtils.linkForRef('type:ListGridViewState')} object.<br>\n This string can be passed to ${isc.DocUtils.linkForRef('method:ListGrid.setViewState')} to reset this grid's view state\n to the current state (assuming the same data / fields are present in the grid).<br>\n",
        name:"getViewState",
        seeAlso:[
            {
                ref:"type:ListGridViewState",
                description:null
            },
            {
                ref:"method:ListGrid.setViewState",
                description:null
            }
        ],
        returns:{
            description:"current view state for the grid.",
            type:"ListGridViewState"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "viewState"
        ]
    },
    "attr:DSResponse.data":{
        ref:"attr:DSResponse.data",
        flags:"IR",
        description:"For \"fetch\" operations, this is the array of Records fetched.  For \"update\", \"add\", and\n \"remove\" operations, this is typically an array containing a single Record representing\n the record that was updated, added, or removed.",
        name:"data",
        seeAlso:[
        ],
        valueType:"Array of Record | RecordList",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSResponse",
        groups:[
            "dsResponse"
        ]
    },
    "attr:TextItem.length":{
        ref:"attr:TextItem.length",
        flags:"IRW",
        description:"if set, maximum number of characters for this field",
        name:"length",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TextItem",
        groups:[
            "validation"
        ]
    },
    "attr:Layout.vPolicy":{
        ref:"attr:Layout.vPolicy",
        flags:"IRWA",
        description:"Sizing policy applied to members on vertical axis",
        name:"vPolicy",
        seeAlso:[
        ],
        valueType:"LayoutPolicy",
        defaultValue:"\"fill\"",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "layoutPolicy"
        ]
    },
    "attr:DateChooser.nextMonthIconWidth":{
        ref:"attr:DateChooser.nextMonthIconWidth",
        flags:"IRW",
        description:"Width of the icon for the next month button if ${isc.DocUtils.linkForRef('classMethod:Page.isRTL')} is true.\n If not set, and the page is in RTL mode, the ${isc.DocUtils.linkForRef('attr:DateChooser.nextMonthIcon')} will be\n used in place of the ${isc.DocUtils.linkForRef('attr:DateChooser.prevMonthIcon')} and vice versa.",
        name:"nextMonthIconWidth",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "group:zIndex":{
        ref:"group:zIndex",
        refs:[
            "method:Canvas.getZIndex",
            "method:Canvas.bringToFront",
            "method:Canvas.sendToBack",
            "method:Canvas.moveAbove",
            "method:Canvas.moveBelow"
        ],
        description:"Object's \"stacking order\" above or below other objects",
        name:"zIndex",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:DynamicForm.values":{
        ref:"attr:DynamicForm.values",
        flags:"IRW",
        getter:[
            "getValues"
        ],
        description:"An Object containing the initial values of the form as properties, where each\n propertyName is the name of a ${isc.DocUtils.linkForRef('group:Items','form item')} in the form, and each property\n value is the value held by that form item.\n <P>\n The form's values may contain values that are not managed by any FormItem, and these\n values will be preserved and available when the form values are subsequently retrieved\n via ${isc.DocUtils.linkForRef('method:DynamicForm.getValues')}.\n <P>\n Providing values on initialization is equivalent to calling ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}.\n <P>\n As the user manipulates form items to change values, change events fire\n ${isc.DocUtils.linkForRef('method:FormItem.change','on the items')} and \n ${isc.DocUtils.linkForRef('method:DynamicForm.itemChange','on the form as a whole')}.\n <P>\n Note that form values are logical values, for example, the value of a ${isc.DocUtils.linkForRef('class:DateItem')} is\n a JavaScript Date object, not a String, even if the user enters the date via a text\n input.  Likewise the value of a ${isc.DocUtils.linkForRef('class:TextItem')} or ${isc.DocUtils.linkForRef('class:CheckboxItem')} that started out\n null remains null until the user changes it; the value will not be automatically\n converted to the null string (\"\") or false respectively, as happens with native HTML\n elements.",
        name:"values",
        setter:[
            "setValues"
        ],
        seeAlso:[
        ],
        valueType:"Object",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "method:ValuesManager.clearValues":{
        ref:"method:ValuesManager.clearValues",
        flags:"",
        description:" Clear out all the values managed by this values manager.\n",
        name:"clearValues",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "method:ListGrid.editFailed":{
        ref:"method:ListGrid.editFailed",
        flags:"",
        description:" Called when an attempt to save inline edits fails, due to a validation error or other\n server error.\n <P>\n The default implementation of editFailed does nothing for normal validation errors,\n which are displayed before editFailed() is called.  For any other errors, the default\n implementation will call ${isc.DocUtils.linkForRef('classMethod:RPCManager.handleError')}, which by default\n will result in a warning dialog.\n\n",
        name:"editFailed",
        seeAlso:[
        ],
        params:[
            {
                description:"current index of the row we attempted to save",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"index of the column where the edit failed, if applicable",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new values that we attempted to save",
                optional:false,
                name:"newValues",
                defaultValue:null,
                type:"Object | Record"
            },
            {
                description:"the complete original values from before the save occurred",
                optional:false,
                name:"oldValues",
                defaultValue:null,
                type:"Record"
            },
            {
                description:"Edit completion event that led to the save                                                  attempt",
                optional:false,
                name:"editCompletionEvent",
                defaultValue:null,
                type:"editCompletionEvent"
            },
            {
                description:"DSResponse, for saves through a DataSource",
                optional:true,
                name:"dsResponse",
                defaultValue:null,
                type:"DSResponse"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "type:FieldNamingStrategy":{
        ref:"type:FieldNamingStrategy",
        values:[
            {
                description:"generate names in the format fieldTypeX, where field type might be          \"formulaField\" and X is an index specific to the field-type and component instance",
                value:"\"simple\""
            },
            {
                description:"generates a UUID for all generated field names",
                value:"\"uuid\""
            }
        ],
        description:"The strategy to use when generating field names - for example, for new formula or summary \n fields created using the built-in editors.",
        name:"FieldNamingStrategy",
        seeAlso:[
        ],
        type:"type"
    },
    "attr:ListGridField.defaultFilterValue":{
        ref:"attr:ListGridField.defaultFilterValue",
        flags:"IRWA",
        description:"If this ListGrid is showing a filter row, this property can be used to apply a default\n value to show in the filter editor for this field.",
        name:"defaultFilterValue",
        seeAlso:[
        ],
        valueType:"any",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "filterEditor"
        ]
    },
    "class:StretchImg":{
        methods:[
            "method:StretchImg.setState",
            "method:StretchImg.setSrc",
            "method:StretchImg.setItems",
            "method:StretchImg.setIgnoreRTL"
        ],
        ref:"class:StretchImg",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Foundation"
        ],
        attrs:[
            "attr:StretchImg.vertical",
            "attr:StretchImg.capSize",
            "attr:StretchImg.src",
            "attr:StretchImg.hSrc",
            "attr:StretchImg.vSrc",
            "attr:StretchImg.imageType",
            "attr:StretchImg.items",
            "attr:StretchImg.ignoreRTL",
            "attr:StretchImg.showGrip",
            "attr:StretchImg.gripImgSuffix",
            "attr:StretchImg.showDownGrip",
            "attr:StretchImg.showRollOverGrip",
            "attr:StretchImg.showTitle",
            "attr:StretchImg.itemBaseStyle"
        ],
        description:"The StretchImg widget class implements a widget type that displays a list of multiple images\n  that make up a single image.",
        name:"StretchImg",
        seeAlso:[
        ],
        type:"class"
    },
    "method:FilterBuilder.removeClause":{
        ref:"method:FilterBuilder.removeClause",
        flags:"",
        description:" Remove a clause this FilterBuilder is currently showing.\n",
        name:"removeClause",
        seeAlso:[
        ],
        params:[
            {
                description:"clause as retrieved from filterBuilder.clauses",
                optional:false,
                name:"clause",
                defaultValue:null,
                type:"FilterClause"
            }
        ],
        type:"method",
        definingClass:"class:FilterBuilder"
    },
    "attr:Layout.locateMembersBy":{
        ref:"attr:Layout.locateMembersBy",
        flags:"IRWA",
        description:"Part of the ${isc.DocUtils.linkForRef('group:automatedTesting')} system, strategy to use when generated\n locators for members from within this Layout's members array.",
        name:"locateMembersBy",
        seeAlso:[
        ],
        valueType:"LocatorStrategy",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Layout",
        groups:[
            "autoTest"
        ]
    },
    "attr:DataBoundComponent.showDetailFields":{
        ref:"attr:DataBoundComponent.showDetailFields",
        flags:"IRW",
        description:"Whether to show fields marked <code>detail:true</code> when a DataBoundComponent is \n given a DataSource but no <code>component.fields</code>.\n <p>\n The <code>detail</code> property is used on DataSource fields to mark fields that \n shouldn't appear by default in a view that tries to show many records in a small space.",
        name:"showDetailFields",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "databinding"
        ]
    },
    "method:ListGrid.setShowGroupSummaryInHeader":{
        ref:"method:ListGrid.setShowGroupSummaryInHeader",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.showGroupSummaryInHeader')}\n",
        name:"setShowGroupSummaryInHeader",
        seeAlso:[
        ],
        params:[
            {
                description:"new showGroupSummaryInHeader state",
                optional:false,
                name:"showGroupSummaryInHeader",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:DataSourceField.childrenProperty":{
        ref:"attr:DataSourceField.childrenProperty",
        flags:"IR",
        description:"If true, this property indicates that this field will hold an explicit array of child nodes \n for the current node.\n This has the same effect as specifying ${isc.DocUtils.linkForRef('attr:DataSource.childrenField')} to this field's \n name.",
        name:"childrenProperty",
        seeAlso:[
            {
                ref:"attr:DataSource.childrenField",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('treeLoadXML')}"
        ],
        definingClass:"class:DataSourceField",
        groups:[
            "dataSourceRelations"
        ]
    },
    "method:CellSelection.selectCellList":{
        ref:"method:CellSelection.selectCellList",
        flags:"",
        description:"   select an array of cells\n",
        name:"selectCellList",
        seeAlso:[
        ],
        params:[
            {
                description:"Array of cells to select. Each cell can be specified                                      as a 2 element array <code>[rowNum, colNum]</code>",
                optional:false,
                name:"list",
                defaultValue:null,
                type:"array[]"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:CellSelection",
        groups:[
            "selection"
        ]
    },
    "attr:DrawLabel.fontFamily":{
        ref:"attr:DrawLabel.fontFamily",
        flags:"IR",
        description:"Font family name, similar to the CSS font-family attribute.",
        name:"fontFamily",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Tahoma\"",
        type:"attr",
        definingClass:"class:DrawLabel"
    },
    "method:Calendar.getVisibleEndDate":{
        ref:"method:Calendar.getVisibleEndDate",
        flags:"",
        description:" Returns the last visible date in the currently selected calendar view.\n",
        name:"getVisibleEndDate",
        seeAlso:[
        ],
        returns:{
            description:"last visible date",
            type:"Date"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ListGrid.headerMenuButtonIconWidth":{
        ref:"attr:ListGrid.headerMenuButtonIconWidth",
        flags:"IRA",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderMenuButton')} is true, this property governs the width of the icon\n shown on the auto-generated <code>headerMenuButton</code>",
        name:"headerMenuButtonIconWidth",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"7",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "headerMenuButton"
        ]
    },
    "attr:ListGrid.warnOnRemoval":{
        ref:"attr:ListGrid.warnOnRemoval",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGrid.canRemoveRecords')} is true, when the user clicks the remove icon\n for some record, should we show a warning message\n (defined as ${isc.DocUtils.linkForRef('attr:ListGrid.warnOnRemovalMessage')}) and allow the user to cancel removal?",
        name:"warnOnRemoval",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "classMethod:FileLoader.cacheFiles":{
        ref:"classMethod:FileLoader.cacheFiles",
        flags:"",
        description:"\n Caches the specified list of files.\n\n",
        name:"cacheFiles",
        seeAlso:[
        ],
        params:[
            {
                description:"List of URLs to cache.  These may point to image, js, or css                               files.  This can either be a string with comma separated URLs or an\n                               Array of URLs.",
                optional:false,
                name:"URLs",
                defaultValue:null,
                type:"String or Array"
            },
            {
                description:"Optional code to execute when the last of the specified                                      files has been cached.",
                optional:true,
                name:"onload",
                defaultValue:null,
                type:"String or Function"
            },
            {
                description:"Specifies the type of the files referenced by the URLs.  Valid values are:                        \"js\", \"css\", and \"image\".  If not specified, the type is auto-derived from\n                        the file extension.  If a type cannot be derived, the cache directive\n                        for that specific URL will be ignored and an error will be logged to\n                        the Developer Console. You must specify a type if you use a\n                        non-standard extension for your file - for example if you use a JSP\n                        or a servlet with no extension to generate images.",
                optional:true,
                name:"type",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:FileLoader"
    },
    "attr:ImgButton.hiliteAccessKey":{
        ref:"attr:ImgButton.hiliteAccessKey",
        flags:"IRW",
        description:"If set to true, if the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.title','title')} of this button contains the\n specified ${isc.DocUtils.linkForRef('attr:Canvas.accessKey','accessKey')}, when the title is displayed to the user\n it will be modified to include HTML to underline the accessKey.<br>\n Note that this property may cause titles that include HTML (rather than simple strings)\n to be inappropriately modified, so should be disabled if your title string includes\n HTML characters.",
        name:"hiliteAccessKey",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ImgButton"
    },
    "method:FormItem.getOptionDataSource":{
        ref:"method:FormItem.getOptionDataSource",
        flags:"",
        description:" Returns the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} for this item.  \n <p>\n Always uses <code>item.optionDataSource</code> if specified.  Otherwise, if\n ${isc.DocUtils.linkForRef('attr:DataSourceField.foreignKey')} was specified, uses the target DataSource.  Otherwise,\n uses the DataSource of this item's form (if one is configured).  \n\n",
        name:"getOptionDataSource",
        seeAlso:[
        ],
        returns:{
            description:"the optionDataSource, or null if none is configured",
            type:"DataSource"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "display_values"
        ]
    },
    "attr:DataSource.auditTimeStampFieldName":{
        ref:"attr:DataSource.auditTimeStampFieldName",
        flags:"IR",
        description:"For DataSources with ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing enabled')}, specifies the field name used to store\n the timestamp when the operation was performed (in a field of type \"datetime\").  If empty\n string is specified as the field name, the audit DataSource will not store this field.",
        name:"auditTimeStampFieldName",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"audit_changeTime\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:ComboBoxItem.filterLocally":{
        ref:"attr:ComboBoxItem.filterLocally",
        flags:"IRA",
        description:"If <code>filterLocally</code> is set for this item, and this item is showing options \n from a dataSource, fetch the entire set of options from the server, and use these values\n to map the item value to the appropriate display value. Also use <code>\"local\"</code>\n type filtering on drop down list of options.\n <P>\n This means data will only be fetched once from the server, and then filtered on the\n client.\n <P>\n Note - when this property is set to <code>false</code>, filtering will still be \n performed on the client if a complete set of data for some criteria has been cached\n by a fetch, and a subsequent fetch has more restrictive criteria. To explicitly\n disable client-side filtering set the ${isc.DocUtils.linkForRef('attr:ComboBoxItem.useClientFiltering')} property to false.",
        name:"filterLocally",
        seeAlso:[
            {
                ref:"attr:FormItem.filterLocally",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "attr:FacetChart.labelCollapseMode":{
        ref:"attr:FacetChart.labelCollapseMode",
        flags:"IR",
        description:"What to do when there are too many data points to be able to show labels for every data point\n at the current chart size - see ${isc.DocUtils.linkForRef('type:LabelCollapseMode')}.\n <P>\n Each of the possible strategies is re-applied when the user resizes the chart as a whole, so if\n labels are omitted the user can make them visible via resize or zoom.\n <P>\n If the labelCollapseMode is \"numeric\" then vertical lines will be drawn at gradation\n values automatically chosen by the chart.\n <P>\n If the labelCollapseMode is \"time\" then vertical lines are drawn to represent a\n sequence of significant datetime values on the x-axis, such as the first day of the\n month or week.  The chart automatically chooses the sequence of Dates such that the\n spacing between them expresses the smallest granularity of time possible while still\n allowing the axis labels to make good use of the space.  If, for example, the Date\n values in the data span a few years in time then the chart may select January 1 of the\n same year of the earliest data point and every January 1 thereafter (in range of the\n data) as the sequence of Dates and label each Date by the four-digit year.  If the time\n span of the data values is on the order of minutes then the chart may select multiples\n of 15 minutes as the seqeunce of Dates.  FacetChart currently supports the following\n granularities of time:  years, quarters, months, weeks, days, hours, half-hours,\n quarter-hours, 5 minutes, minutes, 30 seconds, and 15 seconds.\n <P>\n The format of the Date labels is fixed by FacetChart.  In particular,\n ${isc.DocUtils.linkForRef('method:FacetChart.formatAxisValue')} will not be called on values for the x-axis.\n However, FacetChart uses <smartclient>${isc.DocUtils.linkForRef('classAttr:Date.shortMonthNames')}</smartclient>\n <smartgwt>the {@link com.smartgwt.client.util.DateUtil#setShortMonthNames() global array of abbreviated month names}</smartgwt>\n for the time granularities of quarters, months, and weeks, uses the\n <smartclient>${isc.DocUtils.linkForRef('classMethod:Time.setShortDisplayFormat','default short time format')}</smartclient>\n <smartgwt>{@link com.smartgwt.client.util.DateUtil#setShortTimeDisplayFormatter() default short time format}</smartgwt>\n to format labels for time granularities from minutes to hours, and uses the\n <smartclient>${isc.DocUtils.linkForRef('classMethod:Time.setNormalDisplayFormat','default time format')}</smartclient>\n <smartgwt>{@link com.smartgwt.client.util.DateUtil#setNormalTimeDisplayFormatter() default time format}</smartgwt>\n to format labels for the time granularities of 15 seconds and 30 seconds.  The label\n format can be customized by changing these three formatters.  Also note that for the time granularity of weeks the\n sequence of Dates will be the first day of each week, as specified by\n <smartclient>${isc.DocUtils.linkForRef('classMethod:Date.setFirstDayOfWeek')}</smartclient>\n <smartgwt>{@link com.smartgwt.client.util.DateUtil#setFirstDayOfWeek()}</smartgwt>.\n <P>\n Note that if the labelCollapseMode is \"time\" or \"numeric\" then the ${isc.DocUtils.linkForRef('attr:FacetChart.data','data')} must\n be initially sorted with the ${isc.DocUtils.linkForRef('method:FacetChart.getDataLabelFacet','data label facet')}'s values in\n ascending order.",
        name:"labelCollapseMode",
        seeAlso:[
        ],
        valueType:"LabelCollapseMode",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classAttr:NumberUtil.negativeSymbol":{
        ref:"classAttr:NumberUtil.negativeSymbol",
        flags:"IR",
        description:"The negative symbol to use when formatting numbers",
        name:"negativeSymbol",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"-\"",
        type:"classAttr",
        definingClass:"class:NumberUtil",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DateItem.enforceDate":{
        ref:"attr:DateItem.enforceDate",
        flags:"IRWA",
        description:"Can this field be set to a non-date value [other than null]?\n <P>\n When set to true, ${isc.DocUtils.linkForRef('method:FormItem.setValue')} will return false without setting the item value\n and log a warning if passed something other than a valid date value.\n If the dateItem is showing a ${isc.DocUtils.linkForRef('attr:DateItem.useTextField','free-form text entry field')},\n and a user enters a text value which cannot be parsed into a valid date, the item will\n automatically redraw and display the ${isc.DocUtils.linkForRef('attr:DateItem.invalidDateStringMessage')} (though at this\n point calling ${isc.DocUtils.linkForRef('method:FormItem.getValue')} will return the string entered by the user).\n <P>\n When set to false, a user may enter a value that is not a valid date (for example, \"Not\n applicable\") and the value will not immediately be flagged as an error.  However note\n that for the value to actually pass validation you would need to declare the field as\n not of \"date\" type, for example:\n <pre>\n     {name:\"startDate\", type:\"dateOrOther\", editorType:\"DateItem\", useTextField:true },\n </pre>\n The type \"dateOrOther\" could be declared as a ${isc.DocUtils.linkForRef('class:SimpleType')}, with validators that\n will accept either a valid date or certain special Strings (like \"Not Available\").\n <P>\n Only applies to dateItems where ${isc.DocUtils.linkForRef('attr:DateItem.useTextField')} is true. Non-Date values\n are never supported in items where useTextField is false.\n <p>\n This attribute does not have an effect if a native HTML5 date input is being used.\n See ${isc.DocUtils.linkForRef('attr:DateItem.browserInputType')}.",
        name:"enforceDate",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:DateItem"
    },
    "object:PaletteNode":{
        methods:[
        ],
        ref:"object:PaletteNode",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Tools"
        ],
        attrs:[
            "attr:PaletteNode.icon",
            "attr:PaletteNode.title",
            "attr:PaletteNode.type",
            "attr:PaletteNode.defaults",
            "attr:PaletteNode.liveObject"
        ],
        description:"An object representing a component which the user may create dynamically within an\n application.\n <P>\n A PaletteNode expresses visual properties for how the palette will display it (eg\n ${isc.DocUtils.linkForRef('attr:PaletteNode.title','title')}, ${isc.DocUtils.linkForRef('attr:PaletteNode.icon','icon')}) as well as instructions for\n creating the component the paletteNode represents (${isc.DocUtils.linkForRef('attr:PaletteNode.type')},\n ${isc.DocUtils.linkForRef('attr:PaletteNode.defaults')}).\n <P>\n Various types of palettes (${isc.DocUtils.linkForRef('class:ListPalette')}, ${isc.DocUtils.linkForRef('class:TreePalette')}, ${isc.DocUtils.linkForRef('class:MenuPalette')},\n ${isc.DocUtils.linkForRef('class:TilePalette')}) render a PaletteNode in different ways, and allow the user to trigger\n creation in different ways (eg drag and drop, or just click).  All share a common pattern\n for how components are created from palettes.\n <P>\n Note that in a TreePalette, a PaletteNode is essentially a ${isc.DocUtils.linkForRef('object:TreeNode')} and can have\n properties expected for a TreeNode (eg,\n ${isc.DocUtils.linkForRef('attr:TreeGrid.customIconDropProperty','showDropIcon')}.  Likewise\n a PaletteNode in a MenuPalette can have the properties of a ${isc.DocUtils.linkForRef('object:MenuItem')}, such as\n ${isc.DocUtils.linkForRef('method:MenuItem.enableIf')}.",
        name:"PaletteNode",
        seeAlso:[
        ],
        type:"object"
    },
    "attr:EdgedCanvas.edgeOffsetBottom":{
        ref:"attr:EdgedCanvas.edgeOffsetBottom",
        flags:"IRA",
        description:"Amount the contained Canvas should be offset from the bottom.  Defaults to the size for\n the bottom edge.  Set smaller to allow the contained Canvas to overlap the edge and\n corner media.",
        name:"edgeOffsetBottom",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:EdgedCanvas",
        groups:[
            "imageEdges"
        ]
    },
    "attr:FormItem.inputFormat":{
        ref:"attr:FormItem.inputFormat",
        flags:"IRWA",
        description:"For fields of type <code>\"date\"</code>, if this is an editable field such as a\n ${isc.DocUtils.linkForRef('class:TextItem')}, this property \n allows you to specify the ${isc.DocUtils.linkForRef('attr:DateItem.inputFormat','inputFormat')} applied to the item.",
        name:"inputFormat",
        seeAlso:[
            {
                ref:"attr:FormItem.dateFormatter",
                description:null
            }
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "classAttr:FacetChart.polynomialRegressionLinesContextMenuItemTitle":{
        ref:"classAttr:FacetChart.polynomialRegressionLinesContextMenuItemTitle",
        flags:"IRW",
        description:"Title for the <code>\"Polynomial Curve\"</code> option of the <code>\"Regression Lines\"</code>\n option in the context menu for scatter plots.",
        name:"polynomialRegressionLinesContextMenuItemTitle",
        seeAlso:[
        ],
        valueType:"HTML",
        defaultValue:"\"Polynomial Curve\"",
        type:"classAttr",
        definingClass:"class:FacetChart",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:TreeGrid.sortFoldersBeforeLeaves":{
        ref:"attr:TreeGrid.sortFoldersBeforeLeaves",
        flags:"IR",
        description:"If specified, this attribute will override ${isc.DocUtils.linkForRef('attr:Tree.sortFoldersBeforeLeaves')} on\n the data for this treeGrid.\n <P>\n Specifies whether when ${isc.DocUtils.linkForRef('attr:Tree.separateFolders')} is true, folders should be displayed\n before or after their sibling leaves in a sorted tree. If set to true, with\n sortDirection set to Array.ASCENDING, folders are displayed before their sibling leaves\n and with sort direction set to Array.DESCENDING they are displayed after. To invert\n this behavior, set this property to false.",
        name:"sortFoldersBeforeLeaves",
        seeAlso:[
            {
                ref:"attr:TreeGrid.separateFolders",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:TreeGrid",
        groups:[
            "treeField"
        ]
    },
    "attr:MiniDateRangeItem.fromDateOnlyPrefix":{
        ref:"attr:MiniDateRangeItem.fromDateOnlyPrefix",
        flags:"IR",
        description:"The text to prepend to the formatted date when only a ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.fromDate','fromDate')} is supplied.",
        name:"fromDateOnlyPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Since\"",
        type:"attr",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:PickList.displayField":{
        ref:"attr:PickList.displayField",
        flags:"IRW",
        getter:[
            "getDisplayFieldName"
        ],
        description:"Specifies an alternative field from which display values should be retrieved for this\n item.\n <P>\n The display field can be either another field value in the same record or a field that\n must be retrieved from a related ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource','optionDataSource')}.\n <P>\n If this item is not databound (${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} is unset), or bound \n to the same dataSource as the form as a whole, this item will call\n ${isc.DocUtils.linkForRef('method:DynamicForm.getValue','form.getValue()')} \n the form named after is implemented by picking up the\n value of the specified field from the Form's values object.\n <P>\n Otherwise this item will attempt to map its underlying value to a display value\n by retrieving a record from the ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')} where the \n ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} matches this item's value, and displaying the \n <code>displayField</code> value from that record.\n Note that if <code>optionDataSource</code> is set and this value is not\n set, ${isc.DocUtils.linkForRef('method:FormItem.getDisplayFieldName')} will return the dataSource title field by default.\n <P>\n This essentially enables the specified <code>optionDataSource</code> to be used as\n a server based ${isc.DocUtils.linkForRef('group:valueMap')}.",
        name:"displayField",
        seeAlso:[
            {
                ref:"method:FormItem.invalidateDisplayValueCache",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList",
        groups:[
            "display_values"
        ]
    },
    "attr:Window.autoSize":{
        ref:"attr:Window.autoSize",
        flags:"IRW",
        description:"If true, the window is resized automatically to accommodate the contents\n\t\t\tof the body, if they would otherwise require scrolling.",
        name:"autoSize",
        setter:[
            "setAutoSize"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('windowAutosize')}"
        ],
        definingClass:"class:Window",
        groups:[
            "appearance"
        ]
    },
    "method:CubeGrid.setFacetTitle":{
        ref:"method:CubeGrid.setFacetTitle",
        flags:"",
        description:" Set the title of a facet (appears in facet label).\n\n",
        name:"setFacetTitle",
        seeAlso:[
        ],
        params:[
            {
                description:"facet to update",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"title for the facet",
                optional:false,
                name:"newTitle",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "metadata"
        ]
    },
    "attr:Calendar.dateEditingStyle":{
        ref:"attr:Calendar.dateEditingStyle",
        flags:"IR",
        description:"Indicates the type of controls to use in event-windows.  Valid values are those in the \n ${isc.DocUtils.linkForRef('type:DateEditingStyle','DateEditingStyle')} type.\n <P>\n If unset, the editing style will be set to the field-type on the DataSource, if there is one.\n If there's no DataSource, it will be set to \"date\" if the \n ${isc.DocUtils.linkForRef('attr:Calendar.timelineGranularity','granularity')} is \"day\" or larger and \"time\" if granularity \n is \"minute\" or smaller, otherwise \"datetime\".",
        name:"dateEditingStyle",
        seeAlso:[
        ],
        valueType:"DateEditingStyle",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:FormItem.picker":{
        ref:"attr:FormItem.picker",
        flags:"IRW",
        description:"The component that will be displayed when ${isc.DocUtils.linkForRef('method:FormItem.showPicker')} is called due to a click\n on the ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','picker icon')}.\n <P>\n Can be specified directly as a Canvas, or created automatically via the\n ${isc.DocUtils.linkForRef('type:AutoChild')} pattern.\n <P>\n Note that the picker is not automatically destroyed with the FormItem that uses it, in\n order to allow recycling of picker components.  To destroy a single-use picker, override\n ${isc.DocUtils.linkForRef('method:Canvas.destroy')}.",
        name:"picker",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem"
    },
    "attr:Img.imageType":{
        ref:"attr:Img.imageType",
        flags:"IRW",
        description:"Indicates whether the image should be tiled/cropped, stretched, or centered when the\n          size of this widget does not match the size of the image. \n          CENTER shows the image in it's natural size, but can't do so while the \n          transparency fix is active for IE. The transparency fix can be manually disabled\n          by setting ${isc.DocUtils.linkForRef('attr:Img.usePNGFix')} to false.\n          See ImageStyle for further details.",
        name:"imageType",
        setter:[
            "setImageType"
        ],
        seeAlso:[
        ],
        valueType:"ImageStyle",
        defaultValue:"Img.STRETCH",
        type:"attr",
        definingClass:"class:Img",
        groups:[
            "appearance"
        ]
    },
    "classMethod:Page.isLoaded":{
        ref:"classMethod:Page.isLoaded",
        flags:"",
        description:"\t\tHas the page finished loading?\n\n",
        name:"isLoaded",
        seeAlso:[
        ],
        returns:{
            description:"true == page is done loading",
            type:"Boolean"
        },
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:MultiGroupDialog.levelDownButtonTitle":{
        ref:"attr:MultiGroupDialog.levelDownButtonTitle",
        flags:"IR",
        description:"The hover-prompt for the Level Down button.",
        name:"levelDownButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Move Level Down\"",
        type:"attr",
        definingClass:"class:MultiGroupDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Calendar.showPreviousButton":{
        ref:"attr:Calendar.showPreviousButton",
        flags:"IRW",
        description:"Set to false to hide the ${isc.DocUtils.linkForRef('attr:Calendar.previousButton','Previous')} button.",
        name:"showPreviousButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:FacetValue.parentId":{
        ref:"attr:FacetValue.parentId",
        flags:"IRA",
        description:"For tree facets (${isc.DocUtils.linkForRef('attr:Facet.isTree','facet.isTree')}), id of this facetValue's\n parent facetValue.\n <P>\n <b>Note:</b>  This property is specific to ${isc.DocUtils.linkForRef('class:CubeGrid','CubeGrids')}.",
        name:"parentId",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetValue"
    },
    "class:SectionStack":{
        methods:[
            "method:SectionStack.addItem",
            "method:SectionStack.removeItem",
            "method:SectionStack.setSectionProperties",
            "method:SectionStack.addSection",
            "method:SectionStack.removeSection",
            "method:SectionStack.getSections",
            "method:SectionStack.reorderSection",
            "method:SectionStack.moveSection",
            "method:SectionStack.showSection",
            "method:SectionStack.expandSection",
            "method:SectionStack.sectionForItem",
            "method:SectionStack.hideSection",
            "method:SectionStack.collapseSection",
            "method:SectionStack.sectionIsVisible",
            "method:SectionStack.getVisibleSections",
            "method:SectionStack.sectionIsExpanded",
            "method:SectionStack.getExpandedSections",
            "method:SectionStack.setSectionTitle",
            "method:SectionStack.getSectionHeader",
            "method:SectionStack.getSectionNumber",
            "method:SectionStack.sectionHeaderClick"
        ],
        ref:"class:SectionStack",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout"
        ],
        attrs:[
            "attr:SectionStack.locateSectionsBy",
            "attr:SectionStack.locateSectionsType",
            "attr:SectionStack.overflow",
            "attr:SectionStack.styleName",
            "attr:SectionStack.sectionHeaderClass",
            "attr:SectionStack.headerHeight",
            "attr:SectionStack.sections",
            "attr:SectionStack.canResizeSections",
            "attr:SectionStack.canDropComponents",
            "attr:SectionStack.canReorderSections",
            "attr:SectionStack.canTabToHeaders",
            "attr:SectionStack.scrollSectionIntoView",
            "attr:SectionStack.useGlobalSectionIDs",
            "attr:SectionStack.animateSections",
            "attr:SectionStack.visibilityMode",
            "attr:SectionStack.canCollapseAll",
            "attr:SectionStack.itemIndent",
            "attr:SectionStack.itemStartIndent",
            "attr:SectionStack.itemEndIndent",
            "attr:SectionStack.showExpandControls"
        ],
        description:"A container that manages a list of sections of widgets, each with a header.  Sometimes called\n an \"Accordion\".\n <P>\n SectionStack can be configured so that only one section is visible at a time (similar to MS Outlook's\n left-hand Nav), or to allow multiple sections to be visible and share the available space.",
        name:"SectionStack",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('sectionsExpandCollapse')}"
        ]
    },
    "method:WebService.getInputDS":{
        ref:"method:WebService.getInputDS",
        flags:"",
        description:" Get a DataSource representing the input message to a web service operation.\n <P>\n This DataSource is suitable for use as\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dataSource','form.dataSource')} for a form that the user fills out\n when providing inputs to call this web service operation.\n\n",
        name:"getInputDS",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the web service operation whose inputs the                               returned DataSource will represent",
                optional:false,
                name:"operationName",
                defaultValue:null,
                type:"String"
            }
        ],
        returns:{
            description:"DataSource representing the input message of a web service                      operation",
            type:"DataSource"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('wsdlBinding')}"
        ],
        definingClass:"class:WebService"
    },
    "attr:MetricSettings.shadowProperties":{
        ref:"attr:MetricSettings.shadowProperties",
        flags:"IR",
        description:"Properties for shadows.",
        name:"shadowProperties",
        seeAlso:[
        ],
        valueType:"DrawOval Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "class:DrawBlockConnector":{
        methods:[
        ],
        ref:"class:DrawBlockConnector",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Drawing/DrawItem"
        ],
        attrs:[
        ],
        description:"DrawItem subclass to render multi-segment, orthogonal-routing paths.",
        name:"DrawBlockConnector",
        seeAlso:[
        ],
        type:"class",
        inheritsFrom:"DrawCurve"
    },
    "method:ListGrid.setCanExpandRecords":{
        ref:"method:ListGrid.setCanExpandRecords",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.canExpandRecords')}\n",
        name:"setCanExpandRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"new value for listGrid.canExpandRecords.",
                optional:false,
                name:"canExpand",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid"
    },
    "attr:Window.bodyColor":{
        ref:"attr:Window.bodyColor",
        flags:"IRW",
        description:"Color of the Window body. Overrides the background color specified in the style.",
        name:"bodyColor",
        seeAlso:[
            {
                ref:"method:Window.flash",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"#FFFFFF\"",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "attr:MultiSortPanel.initialSort":{
        ref:"attr:MultiSortPanel.initialSort",
        flags:"IR",
        description:"The initial sort configuration to show in the \n ${isc.DocUtils.linkForRef('attr:MultiSortPanel.optionsGrid','optionsGrid')}.",
        name:"initialSort",
        seeAlso:[
        ],
        valueType:"Array of SortSpecifier",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiSortPanel"
    },
    "method:DynamicForm.setValue":{
        ref:"method:DynamicForm.setValue",
        flags:"",
        description:"   Sets the value for some field\n",
        name:"setValue",
        seeAlso:[
        ],
        params:[
            {
                description:"Name of the field being updated. A ${isc.DocUtils.linkForRef('type:DataPath')} may                           be passed to set nested values",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"New value.",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "attr:ColorPicker.selectedColorLabel":{
        ref:"attr:ColorPicker.selectedColorLabel",
        flags:"IR",
        description:"The label shown next to the selected color box.",
        name:"selectedColorLabel",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Selected Color\"",
        type:"attr",
        definingClass:"class:ColorPicker",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Calendar.trailingDateField":{
        ref:"attr:Calendar.trailingDateField",
        flags:"IR",
        description:"The name of the trailing date field for each event.  When this attribute and \n ${isc.DocUtils.linkForRef('attr:Calendar.leadingDateField')} are present in the data, a line extends out from the event showing \n the extent of the leading and trailing dates - useful for visualizing a pipeline of events \n where some can be moved a certain amount without affecting others.",
        name:"trailingDateField",
        seeAlso:[
            {
                ref:"object:CalendarEvent",
                description:null
            }
        ],
        valueType:"String",
        defaultValue:"\"trailingDate\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "calendarEvent"
        ]
    },
    "attr:SplitPane.listToolStrip":{
        ref:"attr:SplitPane.listToolStrip",
        flags:"IR",
        description:"Bar displayed above the ${isc.DocUtils.linkForRef('attr:SplitPane.listPane','listPane')}, if a <code>listPane</code> is present,\n <b>only</b> for ${isc.DocUtils.linkForRef('attr:SplitPane.deviceMode','deviceMode')} \"desktop\".",
        name:"listToolStrip",
        seeAlso:[
        ],
        valueType:"AutoChild NavigationBar",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SplitPane"
    },
    "method:ValuesManager.getOldValues":{
        ref:"method:ValuesManager.getOldValues",
        flags:"",
        description:" Returns the set of values last stored by ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')}.\n Note that <code>rememberValues()</code> is called automatically by\n ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}, and on form initialization, so this typically contains\n all values as they were before the user edited them.\n\n",
        name:"getOldValues",
        seeAlso:[
            {
                ref:"method:ValuesManager.getChangedValues",
                description:null
            }
        ],
        returns:{
            description:"old values in the form",
            type:"Object"
        },
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "formValues"
        ]
    },
    "method:DrawItem.moved":{
        ref:"method:DrawItem.moved",
        flags:"",
        description:" Notification method fired when this component is explicitly moved.\n Note that a component's position on the screen may also be changed due to an ancestor being\n moved. The ${isc.DocUtils.linkForRef('method:Canvas.parentMoved','parentMoved()')} method provides a notification entry point to catch\n that case as well.\n\n",
        name:"moved",
        seeAlso:[
        ],
        params:[
            {
                description:"horizontal difference between current and previous position",
                optional:false,
                name:"deltaX",
                defaultValue:null,
                type:"int"
            },
            {
                description:"vertical difference between current and previous position",
                optional:false,
                name:"deltaY",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawItem"
    },
    "classAttr:NumberUtil.negativeFormat":{
        ref:"classAttr:NumberUtil.negativeFormat",
        flags:"IR",
        description:"The format to use when formatting nagative numbers.  Supported values are: 1 = before, \n 2 = after, 3 = beforeSpace, 4 = afterSpace, 5 = parens",
        name:"negativeFormat",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"1",
        type:"classAttr",
        definingClass:"class:NumberUtil",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:ListGrid.autoFitAllText":{
        ref:"attr:ListGrid.autoFitAllText",
        flags:"IRW",
        description:"If we're showing a ${isc.DocUtils.linkForRef('attr:ListGrid.showHeaderContextMenu','headerContextMenu')} for this grid,\n and ${isc.DocUtils.linkForRef('attr:ListGrid.canAutoFitFields')} is true, this attribute will be shown as the menu\n item title for an item to perform a one-time autoFit of all visible fields via\n the ${isc.DocUtils.linkForRef('method:ListGrid.autoFitField')} method.",
        name:"autoFitAllText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Auto Fit All Columns\"",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "i18nMessages",
            "autoFitFields"
        ]
    },
    "method:DataSource.supportsAdvancedCriteria":{
        ref:"method:DataSource.supportsAdvancedCriteria",
        flags:"",
        description:" Do fetch and filter operations on this dataSource support being passed \n ${isc.DocUtils.linkForRef('object:AdvancedCriteria')}?\n <P>\n For a DataSource to support being passed AdvancedCriteria, it must be \n ${isc.DocUtils.linkForRef('attr:DataSource.clientOnly','clientOnly:true')} or ${isc.DocUtils.linkForRef('attr:DataSource.cacheAllData','cacheAllData:true')}, or have \n server side logic which can process AdvancedCriteria objects passed from the client.\n <P>\n AdvancedCriteria are supported on the server for standard \n ${isc.DocUtils.linkForRef('group:sqlDataSource','SQL')}, ${isc.DocUtils.linkForRef('group:hibernateIntegration','Hibernate')} and \n ${isc.DocUtils.linkForRef('group:jpaIntegration','JPA')} DataSources in SmartClient Enterprise or Power editions\n (not supported in SmartClient Pro).\n <P>\n The framework assumes that custom dataSources support AdvancedCriteria; if you have a \n a custom DataSOurce implementation that does not support AdvancedCriteria, you can set\n the ${isc.DocUtils.linkForRef('attr:DataSource.allowAdvancedCriteria')} property to false.\n \n",
        name:"supportsAdvancedCriteria",
        seeAlso:[
        ],
        returns:{
            description:"true if this dataSource supports being passed AdvancedCriteria in fetch  and filter type operations, false otherwise.",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:Canvas.parentCanvas":{
        ref:"attr:Canvas.parentCanvas",
        flags:"IR",
        getter:[
            "getParentCanvas"
        ],
        description:"This Canvas's immediate parent, if any.\n <BR>\n Can be initialized, but any subsequent manipulation should be via\n ${isc.DocUtils.linkForRef('method:Canvas.addChild','addChild()')} and ${isc.DocUtils.linkForRef('method:Canvas.removeChild','removeChild()')} calls\n on the parent. The parent Canvas should be fetched using\n ${isc.DocUtils.linkForRef('method:Canvas.getParentCanvas','getParentCanvas()')}.",
        name:"parentCanvas",
        seeAlso:[
        ],
        valueType:"Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:DrawLabel.lineColor":{
        ref:"attr:DrawLabel.lineColor",
        flags:"IRW",
        description:"The text color of the label.",
        name:"lineColor",
        setter:[
            "setLineColor"
        ],
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"\"#808080\"",
        type:"attr",
        definingClass:"class:DrawLabel",
        groups:[
            "line"
        ]
    },
    "attr:UserTask.previousElement":{
        ref:"attr:UserTask.previousElement",
        flags:"IR",
        description:"Previous workflow ${isc.DocUtils.linkForRef('attr:Process.sequences','sequence')} or ${isc.DocUtils.linkForRef('attr:Process.elements','element')}\n that is helpful for wizards. This element will be executed if ${isc.DocUtils.linkForRef('method:UserTask.goToPrevious')}\n method of userTask will be invoked. You can get userTask for attached form by using \n ${isc.DocUtils.linkForRef('attr:DynamicForm.userTask','userTask')} property.",
        name:"previousElement",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:UserTask"
    },
    "attr:Canvas.printChildrenAbsolutelyPositioned":{
        ref:"attr:Canvas.printChildrenAbsolutelyPositioned",
        flags:"IRWA",
        description:"Should this canvas print its children absolutely positioned when generating\n ${isc.DocUtils.linkForRef('classMethod:Canvas.getPrintHTML','printable HTML')}.\n <P>\n By default explicitly specified absolute positioning and sizing is ignored when generating\n print HTML. This is done intentionally: there is no way for the framework to predict how\n explicit sizes will translate to a the printed page and if HTML for printing includes\n the same absolute positioning and sizing as is displayed within an application it is very\n common to encounter undesirable effects, such as seeing tables get broken over several\n pages horizontally when there is enough room to print them on a single page of paper.\n <P>\n In some cases, however, a developer may wish to have explicit sizing and positioning\n respected within the print-view.\n Setting this attribute to <code>true</code> will cause this to occur.",
        name:"printChildrenAbsolutelyPositioned",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "printing"
        ]
    },
    "attr:Menu.submenuDirection":{
        ref:"attr:Menu.submenuDirection",
        flags:"IRW",
        description:"Should submenus show up on our left or right. Can validly be set to <code>\"left\"</code>\n or <code>\"right\"</code>. If unset, submenus show up on the right by default in\n Left-to-right text mode, or on the left in Right-to-left text mode (see ${isc.DocUtils.linkForRef('classMethod:Page.isRTL')}).",
        name:"submenuDirection",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:FormItem.setHintStyle":{
        ref:"method:FormItem.setHintStyle",
        flags:"",
        description:" Set the hintStyle for this item\n",
        name:"setHintStyle",
        seeAlso:[
        ],
        params:[
            {
                description:"new style for hint text",
                optional:false,
                name:"hintStyle",
                defaultValue:null,
                type:"CSSStyleName"
            }
        ],
        type:"method",
        definingClass:"class:FormItem"
    },
    "method:HiliteEditor.saveHilites":{
        ref:"method:HiliteEditor.saveHilites",
        flags:"",
        description:" Save the set of Hilites and fire the ${isc.DocUtils.linkForRef('attr:HiliteEditor.callback','callback')}.\n\n",
        name:"saveHilites",
        seeAlso:[
        ],
        params:[
            {
                description:"the function to call when saving is complete",
                optional:false,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        type:"method",
        definingClass:"class:HiliteEditor"
    },
    "attr:NavigationButton.forwardBaseStyle":{
        ref:"attr:NavigationButton.forwardBaseStyle",
        flags:"IRW",
        description:"Base style for navigation buttons where ${isc.DocUtils.linkForRef('type:Direction')} is set to <code>\"forward\"</code>",
        name:"forwardBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"navForwardButton\"",
        type:"attr",
        definingClass:"class:NavigationButton"
    },
    "method:Tree.getChildren":{
        ref:"method:Tree.getChildren",
        flags:"",
        description:"\n Returns all children of a node.  If the node is a leaf, this method returns null.\n <P>\n For databound trees the return value could be a ${isc.DocUtils.linkForRef('class:ResultSet')} rather than a simple\n array - so it's important to access the return value using the ${isc.DocUtils.linkForRef('interface:List')} \n interface instead of as a native Javascript Array.\n <smartclient>\n The case that a ResultSet may be returned can only happen if the tree is a\n ${isc.DocUtils.linkForRef('class:ResultTree')} and the ${isc.DocUtils.linkForRef('attr:ResultTree.fetchMode')} is set to \"paged\".\n </smartclient>\n <smartgwt>\n If the underlying set of children is incomplete then this method will return only those\n nodes that have already been loaded from the server.\n </smartgwt>\n\n",
        name:"getChildren",
        seeAlso:[
            {
                ref:"method:Tree.getChildrenResultSet",
                description:null
            }
        ],
        params:[
            {
                description:"The node whose children you want to fetch.",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"List of children for the node, including an empty List if the                            node has no children.  For a leaf, returns null.",
            type:"List of TreeNode"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "attr:DateChooser.showDoubleYearIcon":{
        ref:"attr:DateChooser.showDoubleYearIcon",
        flags:"IRW",
        description:"If this property is set to true the previous and next year buttons will render out the \n previous and next month button icons twice rather than using the\n ${isc.DocUtils.linkForRef('attr:DateChooser.prevYearIcon')} and ${isc.DocUtils.linkForRef('attr:DateChooser.nextYearIcon')}.\n <P>\n Set to <code>true</code> by default as not all skins contain media for the year icons.",
        name:"showDoubleYearIcon",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:DateChooser"
    },
    "group:dataSourceLocalization":{
        ref:"group:dataSourceLocalization",
        title:"DataSource and Component XML Localization",
        treeLocation:[
            "Concepts/Internationalization and Localization"
        ],
        refs:[
        ],
        description:"<smartclient>\n DataSources can be created in ${isc.DocUtils.linkForRef('group:dataSourceDeclaration','several ways')}.\n DataSources created directly in JavaScript can be \n internationalized via the techniques described in the main ${isc.DocUtils.linkForRef('group:i18n','i18n article')}.\n </smartclient>\n DataSources which are declared in XML (.ds.xml files) and are read by the SmartClient \n server, which are normally loaded <smartclient>into a .jsp page via the \n <code>&lt;isomorphic:loadDS&gt;</code> JSP tag,</smartclient>\n <smartgwt>by the <code>DataSourceLoader</code> servlet,</smartgwt> can instead be \n internationalized using an approach similar to the internationalization of JSP files with\n JSTL tags.  This approach is also supported for screens defined using \n ${isc.DocUtils.linkForRef('group:componentXML','Component XML')}.\n <p>\n <b>Note: </b>The tags we use for internationalizing SmartClient XML files look like \n standard JSTL tags; this is intentional, simply because developers are familiar with JSTL.  \n However, the tags are being processed by SmartClient code, <b>not</b> JSTL, so only the \n specific tags documented here are supported.\n <P>\n Given the following DataSource located in /shared/ds/supplyItem.ds.xml:\n <pre>\n &lt;DataSource ID=\"supplyItem\"&gt;\n     &lt;fields&gt;\n         &lt;field name=\"itemName\"&gt;\n             &lt;title&gt;Item Name&lt;/title&gt;\n             &lt;validators&gt;\n                 &lt;Validator type=\"lengthRange\" max=\"40\"&gt;\n                     &lt;errorMessage&gt;Must be 40 characters or less.&lt;/errorMessage&gt;\n                 &lt;/Validator&gt;\n             &lt;/validators&gt;\n         &lt;/field&gt;\n     &lt;/fields&gt;\n &lt;/DataSource&gt;\n </pre>\n To localize the title and validator error string of the <code>itemName</code> field, \n change the DataSource definition as follows:\n <pre>\n &lt;DataSource ID=\"supplyItem\" xmlns:fmt=\"WEB-INF/\"&gt;\n     &lt;fields&gt;\n         &lt;field name=\"itemName\"&gt;\n             &lt;title&gt;&lt;fmt:message key=\"itemTitle\"/&gt;&lt;/title&gt;\n             &lt;validators&gt;\n                 &lt;Validator type=\"lengthRange\" max=\"40\"&gt;\n                     &lt;errorMessage&gt;&lt;fmt:message key=\"itemLengthRangeValidator\"/&gt;&lt;/errorMessage&gt;\n                 &lt;/Validator&gt;\n             &lt;/validators&gt;\n         &lt;/field&gt;\n     &lt;/fields&gt;\n &lt;/DataSource&gt;\n </pre>\n This will cause SmartClient Server to look for a \n <a href=http://docs.oracle.com/javase/8/docs/api/java/util/ResourceBundle.html#getBundle-java.lang.String-java.util.Locale->ResourceBundle</a> \n called \"supplyItem\", containing keys \"itemTitle\" and \"itemLengthRangeValidator\", and \n replace the <code>&lt;fmt:message&gt;</code> tags with the values from the resource bundle\n in the expected way.  It obtains the user's <code>Locale</code> from the servlet request, \n but you can override this if you want to force an application-specific locale, regardless of \n the user's operating system settings.  To do this, <smartclient> either specify\n a \"locale\" attribute in the &lt;loadDS&gt; tag, like this:<br>\n <code>&lt;loadDS ID=\"myDataSource\" locale=\"es\" /&gt;</code><p>\n or </smartclient> specify a \"locale\" parameter on HTTP requests to the <code>DataSourceLoader</code>\n and <code>IDACall</code> servlets.\n <p>\n <smartclient> In both of these cases, the </smartclient>\n <smartgwt>The </smartgwt> locale parameter should be an underscore-separated string\n conforming to the rules described in \n <a href=https://docs.oracle.com/javase/8/docs/api/java/util/Locale.html>this article</a>\n on Java internationalization.  For example, \"fr\" (French language) or \"en_US\" (English \n language, US location).\n <p>\n As mentioned, SmartClient Server will look for a <code>ResourceBundle</code> called \n \"supplyItem\" in this case because it defaults to the name of the DataSource.  It is \n possible to override this default at both the DataSource and field levels:\n <ul>\n <li>Specify <code>&lt;fmt:bundle&gt;</code> as a top-level DataSource tag, like this:<br>\n <pre>   &lt;DataSource  xmlns:fmt=\"WEB-INF/\" ID=\"supplyItem\"&gt;\n      &lt;fmt:bundle basename=\"com.isomorphic.test.i18n\" /&gt;\n      ...\n &lt;/DataSource&gt;</pre></li>\n <li>Specify the bundle name in the individual <code>&lt;fmt:message&gt;</code> tags, like this:<br>\n <pre>   &lt;title&gt;&lt;fmt:message key='title1' bundle=\"com.mycompany.MyProperties\" /&gt;&lt;/title&gt;</pre></li>\n </ul>\n When you name a resource bundle manually like this, if you qualify the name it influences\n where we expect to find that resource bundle.  In the above example, we would look in the \n <code>com.mycompany</code> package.  For unqualified names (including the default of the \n DataSource name that we use in the absence of an override), we look in the so-called \n \"default package\", which corresponds to the root of your classes directory or the root of \n a .JAR file.\n <p>\n Note that the <code>xmlns:fmt</code> attribute in the DataSource definition is required by \n the XML parser if you intend to use our <code>fmt:message</code> features.  However, the \n actual value you use is unimportant as long as it is present.\n <p>\n Although these examples don't show it, note that it is also possible to internationalize\n DataSource-level values in the same way as field-level values - for example:<pre>\n   &lt;DataSource  xmlns:fmt=\"WEB-INF/\" ID=\"i18nTest\"&gt; \n     &lt;title&gt;&lt;fmt:message key=\"dsTitle\" /&gt;&lt;/title&gt;\n      ...\n &lt;/DataSource&gt;\n </pre>\n <h4>Component XML</h4>\n All of the above applies similarly for localizing screens defined using \n ${isc.DocUtils.linkForRef('group:componentXML','Component XML')}.  For example:<pre>\n &lt;isomorphicXML xmlns:fmt=\"WEB-INF/\"&gt;\n   &lt;fmt:bundle basename=\"com.isomorphic.test.i18n.test\" /&gt;\n   &lt;Window ID=\"testWin1\"&gt;\n     &lt;title&gt;&lt;fmt:message key='title1' /&gt;&lt;/title&gt;\n   &lt;/Window&gt;\n &lt;/isomorphicXML&gt;\n </pre>\n Note the following differences between localizing <code>.ds.xml</code> (DataSource) files and\n localizing <code>.ui.xml</code> (component XML) files: <ul>\n <li>The <code>&lt;isomorphicXML&gt;</code> tag, which is ordinarily only used to wrap \n multiple widget definitions to give a valid XML file, is required if you are using this \n internationalization technique.</li>\n <li>Because there is no concept of an \"ID\" associated with a <code>.ui.xml</code> file, \n there is no default bundle like there is with DataSource definitions.  Instead, you have to\n specify the bundle by hand, either by adding a <code>&lt;fmt:bundle&gt;</code> tag as an \n immediate child of the <code>&lt;isomorphicXML&gt;</code> tag, or by specifying \n <code>bundle</code> attributes in your individual <code>&lt;fmt:message&gt;</code> tags.</li>\n <li>Locale can be overridden, as described for DataSources above, by \n specifying a \"locale\" parameter on HTTP requests to the <code>ScreenLoaderServlet</code> \n (this is done for you when you pass a locale to the ${isc.DocUtils.linkForRef('classMethod:RPCManager.loadScreen')} method).</li>\n </ul>",
        name:"dataSourceLocalization",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:MultiFileItem.pickerCancelButtonTitle":{
        ref:"attr:MultiFileItem.pickerCancelButtonTitle",
        flags:"IR",
        description:"The title of the cancel button in the picker lauched by the\n ${isc.DocUtils.linkForRef('attr:MultiFileItem.editButton','edit button')}.",
        name:"pickerCancelButtonTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Cancel\"",
        type:"attr",
        definingClass:"class:MultiFileItem",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.itemHoverWidth":{
        ref:"attr:DynamicForm.itemHoverWidth",
        flags:"IRW",
        description:"A default width for hovers shown for items",
        name:"itemHoverWidth",
        seeAlso:[
            {
                ref:"attr:FormItem.hoverWidth",
                description:null
            }
        ],
        valueType:"measure",
        defaultValue:"null",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('itemHoverHTML')}"
        ],
        definingClass:"class:DynamicForm",
        groups:[
            "Hovers"
        ]
    },
    "classMethod:isA.Date":{
        ref:"classMethod:isA.Date",
        flags:"",
        description:"\n\tIs <code>object</code> a Date object?\n\n",
        name:"Date",
        seeAlso:[
        ],
        params:[
            {
                description:"object to test",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == <code>object</code> is a Date",
            type:"boolean"
        },
        type:"classMethod",
        definingClass:"object:isA"
    },
    "classMethod:Page.getScrollWidth":{
        ref:"classMethod:Page.getScrollWidth",
        flags:"",
        description:"\t\tGet the width of the window contents as they have been drawn.\n\t\tIf the page scrolls, this may be larger than the page.getWidth().\n",
        name:"getScrollWidth",
        seeAlso:[
        ],
        returns:{
            description:"width of the page as drawn",
            type:"number"
        },
        type:"classMethod",
        definingClass:"class:Page",
        groups:[
            "sizing"
        ]
    },
    "method:DataBoundComponent.transferDragData":{
        ref:"method:DataBoundComponent.transferDragData",
        flags:"A",
        description:"\n During a drag-and-drop interaction, this method is called to transfer a set of records that\n were dropped onto some other component.  This method is called after the set of records has\n been copied to the other component.  Whether or not this component's data is modified is \n determined by the value of ${isc.DocUtils.linkForRef('attr:DataBoundComponent.dragDataAction')}.\n <P>\n With a <code>dragDataAction</code> of \"move\", a databound component will issue \"remove\"\n dsRequests against its DataSource to actually remove the data, via\n ${isc.DocUtils.linkForRef('method:DataSource.removeData')}.\n\n",
        name:"transferDragData",
        seeAlso:[
            {
                ref:"method:DataBoundComponent.getDragData",
                description:null
            },
            {
                ref:"method:ListGrid.willAcceptDrop",
                description:null
            }
        ],
        returns:{
            description:"Array of objects that were dragged out of this ListGrid.",
            type:"Array"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent"
    },
    "attr:ButtonItem.startRow":{
        ref:"attr:ButtonItem.startRow",
        flags:"IRW",
        description:"These items are in a row by themselves by default",
        name:"startRow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:ButtonItem",
        groups:[
            "formLayout"
        ]
    },
    "method:DynamicForm.valuesHaveChanged":{
        ref:"method:DynamicForm.valuesHaveChanged",
        flags:"",
        description:" Compares the current set of values with the values stored by the call to the\n ${isc.DocUtils.linkForRef('method:DynamicForm.rememberValues')} method.  <code>rememberValues()</code> runs when the\n form is initialized and on every call to ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}.\n Returns true if the values have changed, and false otherwise.\n",
        name:"valuesHaveChanged",
        seeAlso:[
            {
                ref:"method:DynamicForm.getChangedValues",
                description:null
            },
            {
                ref:"method:DynamicForm.getOldValues",
                description:null
            }
        ],
        returns:{
            description:"true if current values do not match remembered values",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "formValues"
        ]
    },
    "method:Canvas.getHeight":{
        ref:"method:Canvas.getHeight",
        flags:"",
        description:" Return the height of this object, in pixels.\n",
        name:"getHeight",
        seeAlso:[
        ],
        returns:{
            description:"height",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:ResultSet.allRows":{
        ref:"attr:ResultSet.allRows",
        flags:"IRA",
        description:"If the complete set of records for a resultSet is available when the resultSet is created,\n it can be made available to the resultSet via this property at initialization time.\n This data will then be considered cached meaning sorting and filtering can occur on\n the client (no need for server fetch).\n This cached data can be dropped via a call to ${isc.DocUtils.linkForRef('method:ResultSet.invalidateCache')}.",
        name:"allRows",
        seeAlso:[
        ],
        valueType:"Array of Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ResultSet",
        groups:[
            "fetching",
            "cacheSync"
        ]
    },
    "class:FieldPickerWindow":{
        methods:[
        ],
        ref:"class:FieldPickerWindow",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Data Binding/FieldPicker"
        ],
        attrs:[
            "attr:FieldPickerWindow.title"
        ],
        description:"A dialog for picking fields to display from among the available fields.\n <p>\n This is typically useful in scenarios where there are many more fields than can reasonably\n fit on screen. The application can start off displaying a few of the fields by default (such\n as the most commonly-needed fields), and show a FieldPickerWindow to allow the user to\n customize which fields to display as well as the order in which to display them.",
        name:"FieldPickerWindow",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('fieldPicker')}"
        ]
    },
    "attr:DrawItem.eventOpaque":{
        ref:"attr:DrawItem.eventOpaque",
        flags:"IRA",
        description:"Should events inside this DrawItem be attributed to it regardless of which pixels are\n actually set, if no fill is specified?  If set for DrawItems that aren't closed, will\n capture events occurring in the region that would filled if a fill were specified.\n This property is true by default for closed shapes, and false for paths, lines, etc.",
        name:"eventOpaque",
        seeAlso:[
            {
                ref:"attr:DrawItem.fillColor",
                description:null
            },
            {
                ref:"attr:DrawItem.fillOpacity",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"varies",
        type:"attr",
        definingClass:"class:DrawItem"
    },
    "attr:SVG.pluginsPage":{
        ref:"attr:SVG.pluginsPage",
        flags:"IR",
        description:"This attribute specifies the page the user should go to to get the plugin required to view\n  this SVG.\n  <p>\n  The default pluginsPage is: \"http://www.adobe.com/svg/viewer/install/\"\n  <p>",
        name:"pluginsPage",
        seeAlso:[
        ],
        valueType:"URL",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:SVG"
    },
    "method:CubeGrid.getCellRow":{
        ref:"method:CubeGrid.getCellRow",
        flags:"",
        description:" Given a record in this grid, this method returns the rowNum on which the record is displayed.\n",
        name:"getCellRow",
        seeAlso:[
        ],
        params:[
            {
                description:"record to find coordinates for",
                optional:false,
                name:"cellRecord",
                defaultValue:null,
                type:"CellRecord"
            }
        ],
        returns:{
            description:"Row number for the record. Returns -1 if the record is not found.",
            type:"int"
        },
        type:"method",
        definingClass:"class:CubeGrid"
    },
    "method:Canvas.removePeer":{
        ref:"method:Canvas.removePeer",
        flags:"",
        description:" Remove a peer from this Canvas\n",
        name:"removePeer",
        seeAlso:[
        ],
        params:[
            {
                description:"Peer to be removed from this canvas",
                optional:false,
                name:"peer",
                defaultValue:null,
                type:"Canvas"
            },
            {
                description:"If this peer was assigned a name when added via addPeer(), it should                        be passed in here to ensure no reference is kept to the peer",
                optional:true,
                name:"name",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "containment"
        ]
    },
    "attr:DataBoundComponent.badFormulaResultValue":{
        ref:"attr:DataBoundComponent.badFormulaResultValue",
        flags:"IRW",
        description:"If the result of a formula evaluation is invalid (specifically, if isNaN(result)==true),\n badFormulaResultValue is displayed instead.  The default value is \".\".",
        name:"badFormulaResultValue",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\".\"",
        type:"attr",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "formulaFields"
        ]
    },
    "attr:ComboBoxItem.maskPadChar":{
        ref:"attr:ComboBoxItem.maskPadChar",
        flags:"IRWA",
        description:"Not applicable to a ComboBoxItem.",
        name:"maskPadChar",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\" \"",
        type:"attr",
        definingClass:"class:ComboBoxItem"
    },
    "method:ListGrid.getEditorValueIcons":{
        ref:"method:ListGrid.getEditorValueIcons",
        flags:"",
        description:" Returns the valueIcons for a field when it is displayed in the editor while editing some\n record. Default implementation will return ${isc.DocUtils.linkForRef('attr:ListGridField.editorValueIcons')} if specified\n otherwise ${isc.DocUtils.linkForRef('attr:ListGridField.valueIcons')}\n",
        name:"getEditorValueIcons",
        seeAlso:[
        ],
        params:[
            {
                description:"field definition",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"object"
            },
            {
                description:"current edit values for the record",
                optional:false,
                name:"values",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"valueIcons for the editor",
            type:"object"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "imageColumns"
        ]
    },
    "classMethod:Log.echoAll":{
        ref:"classMethod:Log.echoAll",
        flags:"",
        description:" Like echo(), except that if passed an Array, echoAll() will echo() every element of the\n Array.\n This function is available as a static on every ISC Class and as an instance\n method on every instance of an ISC Class.<br>\n General best practice is to call the method as \"this.echo()\" whenever \"this\" is an\n instance, or call the static classMethod on the ${isc.DocUtils.linkForRef('class:Log')} class otherwise. \n\n",
        name:"echoAll",
        seeAlso:[
            {
                ref:"classMethod:Log.echo",
                description:null
            }
        ],
        params:[
            {
                description:"object to echo",
                optional:false,
                name:"obj",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a short string representation of the object",
            type:"string"
        },
        type:"classMethod",
        definingClass:"class:Log",
        groups:[
            "debug"
        ]
    },
    "attr:DateRangeItem.dateInputFormat":{
        ref:"attr:DateRangeItem.dateInputFormat",
        deprecated:"This property is supported but  the standard ${isc.DocUtils.linkForRef('attr:FormItem.dateFormatter','dateFormatter')} and ${isc.DocUtils.linkForRef('attr:DateRangeItem.inputFormat')} \n may now be used to specify date formatting parsing behavior for dateRangeItems",
        flags:"IR",
        description:"Format for direct user input of date values.\n <P>\n If unset, the input format will be determined based on the specified\n ${isc.DocUtils.linkForRef('type:DateDisplayFormat')} if possible, otherwise picked up from the Date class (see\n ${isc.DocUtils.linkForRef('classMethod:Date.setInputFormat')}).",
        name:"dateInputFormat",
        seeAlso:[
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DateRangeItem"
    },
    "attr:TableView.wholeRecordNavIcon":{
        ref:"attr:TableView.wholeRecordNavIcon",
        flags:"IRW",
        description:"The navigation icon shown next to records when ${isc.DocUtils.linkForRef('attr:TableView.showNavigation')}\n is true and ${isc.DocUtils.linkForRef('type:NavigationMode')} is set to \"wholeRecord\".",
        name:"wholeRecordNavIcon",
        seeAlso:[
        ],
        valueType:"SCImgURL",
        defaultValue:"\"[SKINIMG]/iOS/listArrow.png\"",
        type:"attr",
        definingClass:"class:TableView"
    },
    "attr:PortalLayout.canResizePortlets":{
        ref:"attr:PortalLayout.canResizePortlets",
        flags:"IRW",
        description:"Should the height and width of ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} be drag-resizable?\n <p>\n Note that changing the <b>height</b> of a Portlet will change the height of all\n the Portlets in the same row to match.\n <p>\n If the height of Portlets causes a column to overflow, that column will scroll vertically\n (independent of other columns), depending on the ${isc.DocUtils.linkForRef('attr:PortalLayout.columnOverflow','columnOverflow')} setting.\n <p>\n Changing the <b>width</b> of a Portlet will potentially cause columns to stretch\n and shrink their <u>displayed</u> widths in order to accomodate the Portlets,\n depending on the value of ${isc.DocUtils.linkForRef('attr:PortalLayout.canStretchColumnWidths','canStretchColumnWidths')} and \n ${isc.DocUtils.linkForRef('attr:PortalLayout.canShrinkColumnWidths','canShrinkColumnWidths')}.\n <p>\n However, the <u>instrinsic</u> width of the columns will remain the same,\n so that the columns will resume their former widths when no longer necessary \n to stretch or shrink to accomodate the widths of Portlets. \n To allow drag-resizing of the intrinsic width of columns, see ${isc.DocUtils.linkForRef('attr:PortalLayout.canResizeColumns','canResizeColumns')}.\n <p>\n The net effect is that (by default) PortalLayouts behave like layouts when Portlet sizes do\n not cause overflow, but behave more like stacks when overflow occurs.",
        name:"canResizePortlets",
        setter:[
            "setCanResizePortlets"
        ],
        seeAlso:[
            {
                ref:"attr:PortalLayout.canResizeColumns",
                description:null
            },
            {
                ref:"attr:PortalLayout.canStretchColumnWidths",
                description:null
            },
            {
                ref:"attr:PortalLayout.canShrinkColumnWidths",
                description:null
            },
            {
                ref:"attr:PortalLayout.columnOverflow",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('resizingPortlets')}"
        ],
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "classMethod:Page.scrollTo":{
        ref:"classMethod:Page.scrollTo",
        flags:"",
        description:"\t\tScroll the window to a specified top and left coordinate.\n\n",
        name:"scrollTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate for window",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"number"
            },
            {
                description:"new top coordinate for window",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"classMethod",
        definingClass:"class:Page"
    },
    "attr:Window.showTitle":{
        ref:"attr:Window.showTitle",
        flags:"IRW",
        description:"Show a title (typically just text) on the header for this window.",
        name:"showTitle",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "headerLabel"
        ]
    },
    "attr:ToolbarItem.canvas":{
        ref:"attr:ToolbarItem.canvas",
        flags:"R",
        description:"This item is an autoChild generated ${isc.DocUtils.linkForRef('class:Canvas')} displayed by\n the ToolbarItem and is an instance of ${isc.DocUtils.linkForRef('class:Toolbar')} by defaut, cuztomizeable \n via the ${isc.DocUtils.linkForRef('attr:ToolbarItem.canvasConstructor')} attribute.",
        name:"canvas",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ToolbarItem"
    },
    "method:ValuesManager.removeMembers":{
        ref:"method:ValuesManager.removeMembers",
        flags:"",
        description:" Remove multiple member forms from this valuesManager.\n",
        name:"removeMembers",
        seeAlso:[
            {
                ref:"method:ValuesManager.removeMember",
                description:null
            }
        ],
        params:[
            {
                description:"array of forms to remove",
                optional:false,
                name:"members",
                defaultValue:null,
                type:"Array of DynamicForm"
            }
        ],
        type:"method",
        definingClass:"class:ValuesManager",
        groups:[
            "members"
        ]
    },
    "method:StatefulCanvas.getStateSuffix":{
        ref:"method:StatefulCanvas.getStateSuffix",
        flags:"",
        description:" Returns the suffix that will be appended to the ${isc.DocUtils.linkForRef('attr:StatefulCanvas.baseStyle')}  \n as the component changes ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state')} and/or is selected / focused.\n <P>\n The following table lists out the standard set of suffixes which may be applied \n to the base style:\n <table border=1>\n <tr><td><b>CSS Class Applied</b></td><td><b>Description</b></td></tr>\n <tr><td><code><i>baseStyle</i></code></td><td>Default css style</td></tr>\n <tr><td><code><i>baseStyle</i>+Selected</code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.selected')} is set to true</td></tr>\n <tr><td><code><i>baseStyle</i>+Focused</code></td>\n      <td>Applied when the component has keyboard focus, if \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused')} is true, and \n      ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is not true.</td></tr>\n <tr><td><code><i>baseStyle</i>+Over</code></td>\n      <td>Applied when ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showRollOver')} is set to true and either the user\n      rolls over the component or ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true and the\n      component has keyboard focus.</td></tr>\n <tr><td><code><i>baseStyle</i>+Down</code></td>\n      <td>Applied when the user presses the mouse button on the component if\n          ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDown')} is set to true</td></tr>\n <tr><td><code><i>baseStyle</i>+Disabled</code></td>\n      <td>Applied when the component is ${isc.DocUtils.linkForRef('attr:Canvas.disabled','disabled')}\n       if ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showDisabled')} is true.</td></tr>\n <tr><td colspan=2><i>Combined styles</i></td></tr>\n <tr><td><code><i>baseStyle</i>+SelectedFocused</code></td>\n      <td>Combined Selected and focused styling</td></tr>\n <tr><td><code><i>baseStyle</i>+SelectedOver</code></td>\n      <td>Combined Selected and rollOver styling</td></tr>\n <tr><td><code><i>baseStyle</i>+FocusedOver</code></td>\n      <td>Combined Focused and rollOver styling</td></tr>\n <tr><td><code><i>baseStyle</i>+SelectedFocusedOver</code></td>\n      <td>Combined Selected, Focused and rollOver styling</td></tr>\n <tr><td><code><i>baseStyle</i>+SelectedDown</code></td>\n      <td>Combined Selected and mouse-down styling</td></tr>\n <tr><td><code><i>baseStyle</i>+FocusedDown</code></td>\n      <td>Combined Focused and mouse-down styling</td></tr>\n <tr><td><code><i>baseStyle</i>+SelectedFocusedDown</code></td>\n      <td>Combined Selected, Focused and mouse-down styling</td></tr>\n <tr><td><code><i>baseStyle</i>+SelectedDisabled</code></td>\n      <td>Combined Selected and Disabled styling</td></tr>\n </table>\n\n",
        name:"getStateSuffix",
        seeAlso:[
        ],
        returns:{
            description:"suffix to be appended to the baseStyle",
            type:"String"
        },
        type:"method",
        definingClass:"class:StatefulCanvas"
    },
    "attr:TextItem.formatOnBlur":{
        ref:"attr:TextItem.formatOnBlur",
        flags:"IRW",
        description:"With <code>formatOnBlur</code> enabled, this textItem will format its value\n according to any specified static ${isc.DocUtils.linkForRef('method:FormItem.formatValue','static formatter')}\n as long as the item does not have focus. Once the user puts focus into the item\n the formatter will be removed. This provides a simply way for developers to\n show a nicely formatted display value in a freeform text field, without the need\n for an explicit ${isc.DocUtils.linkForRef('method:FormItem.formatEditorValue')} \n and ${isc.DocUtils.linkForRef('method:FormItem.parseEditorValue')} pair.",
        name:"formatOnBlur",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:TextItem"
    },
    "attr:FormItem.iconHeight":{
        ref:"attr:FormItem.iconHeight",
        flags:"IRWA",
        getter:[
            "getIconHeight"
        ],
        description:"Default height for form item icons",
        name:"iconHeight",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"20",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "formIcons"
        ]
    },
    "method:ToolStripGroup.setTitleAlign":{
        ref:"method:ToolStripGroup.setTitleAlign",
        flags:"",
        description:" This method forcibly sets the text-alignment of this group's title after initial draw.\n \n",
        name:"setTitleAlign",
        seeAlso:[
        ],
        params:[
            {
                description:"the new alignment for the text, left or right",
                optional:false,
                name:"align",
                defaultValue:null,
                type:"Alignment"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "method:Layout.removeMembers":{
        ref:"method:Layout.removeMembers",
        flags:"",
        description:"\n  Removes the specified members from the layout. If any of the removed members have resize\n  bars, the bars will be destroyed.\n\n",
        name:"removeMembers",
        seeAlso:[
        ],
        params:[
            {
                description:"array of members to be removed, or single member",
                optional:false,
                name:"members",
                defaultValue:null,
                type:"Array of Canvas | Canvas"
            }
        ],
        type:"method",
        definingClass:"class:Layout"
    },
    "attr:MultiComboBoxItem.comboBoxProperties":{
        ref:"attr:MultiComboBoxItem.comboBoxProperties",
        flags:"IRA",
        description:"Properties to be used in creating a ${isc.DocUtils.linkForRef('class:ComboBoxItem')}.",
        name:"comboBoxProperties",
        seeAlso:[
        ],
        valueType:"ComboBoxItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiComboBoxItem"
    },
    "class:ImgSectionHeader":{
        methods:[
            "method:ImgSectionHeader.getSectionStack",
            "method:ImgSectionHeader.setIcon",
            "method:ImgSectionHeader.setIconOrientation",
            "method:ImgSectionHeader.setAlign",
            "method:ImgSectionHeader.setPrompt",
            "method:ImgSectionHeader.titleClipped",
            "method:ImgSectionHeader.titleHoverHTML",
            "method:ImgSectionHeader.titleHover"
        ],
        ref:"class:ImgSectionHeader",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Layout/SectionStack"
        ],
        attrs:[
            "attr:ImgSectionHeader.controls",
            "attr:ImgSectionHeader.controlsLayout",
            "attr:ImgSectionHeader.title",
            "attr:ImgSectionHeader.clipTitle",
            "attr:ImgSectionHeader.showClippedTitleOnHover",
            "attr:ImgSectionHeader.icon",
            "attr:ImgSectionHeader.iconAlign",
            "attr:ImgSectionHeader.iconSize",
            "attr:ImgSectionHeader.iconHeight",
            "attr:ImgSectionHeader.iconWidth",
            "attr:ImgSectionHeader.iconOrientation",
            "attr:ImgSectionHeader.prompt",
            "attr:ImgSectionHeader.noDoubleClicks",
            "attr:ImgSectionHeader.background"
        ],
        description:"SectionHeader class based on an HLayout with ${isc.DocUtils.linkForRef('class:StretchImg')} background.",
        name:"ImgSectionHeader",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:ListGrid.showGroupSummary":{
        ref:"attr:ListGrid.showGroupSummary",
        flags:"IRW",
        description:"If this listGrid supports ${isc.DocUtils.linkForRef('attr:ListGrid.canGroupBy','grouping')}, setting this property will cause\n the grid to render an extra row at the end of each group when grouped, containing summary\n information for the fields.\n Summary information will be calculated by the ${isc.DocUtils.linkForRef('method:ListGridField.getGroupSummary')} method\n if specified, otherwise via the specified ${isc.DocUtils.linkForRef('attr:ListGridField.summaryFunction')}.",
        name:"showGroupSummary",
        setter:[
            "setShowGroupSummary"
        ],
        seeAlso:[
            {
                ref:"attr:ListGrid.groupByFieldSummaries",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Mail.cc":{
        ref:"attr:Mail.cc",
        flags:"IR",
        description:"Comma-separated list of \"CC\" recipients.  Like all other <code>String</code> \n properties of <code>Mail</code>, you can use Velocity substitution variables in this property.\n <p>\n If you specify a \"Cc:\" line in the body of your email, recipient addresses will be parsed \n and this property will be ignored.",
        name:"cc",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:Mail",
        groups:[
            "mail"
        ]
    },
    "classMethod:isc.shallowClone":{
        ref:"classMethod:isc.shallowClone",
        flags:"",
        description:" Creates a shallow copy of the passed-in Object or Array of Objects, that is, copies all\n properties of an Object to a new Object, so that the clone now has exactly the same property\n values as the original Object.\n <P>\n If <code>shallowClone()</code> is passed an immutable type such as String and Number, it is returned\n unchanged.  Dates are copied via <code>new Date(originalDate.getTime())</code>.\n <P>\n Note that if an Array is passed, all members of the Array will be cloned.  For a copy of an\n Array that contains exactly the same members (not copies), use Array.duplicate().\n <P>\n Only an Array directly passed to <code>shallowClone()</code> is copied.  Arrays contained\n within Arrays will not be copied.\n\n",
        name:"shallowClone",
        seeAlso:[
        ],
        params:[
            {
                description:"object to be cloned",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"Object or Array of Object"
            }
        ],
        returns:{
            description:"a shallow copy of the passed-in data",
            type:"Object or Array of Object"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "classAttr:Operators.betweenInclusiveTitle":{
        ref:"classAttr:Operators.betweenInclusiveTitle",
        flags:"IR",
        description:"Title for the \"betweenInclusive\" operator",
        name:"betweenInclusiveTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"between (inclusive, match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "classAttr:GroupingMessages.byUpcomingTitle":{
        ref:"classAttr:GroupingMessages.byUpcomingTitle",
        flags:"IRW",
        description:"Title to use for the menu option which groups a date field by upcoming dates.",
        name:"byUpcomingTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"by Upcoming\"",
        type:"classAttr",
        definingClass:"class:GroupingMessages",
        groups:[
            "i18nMessages"
        ]
    },
    "method:DataBoundComponent.getHiliteState":{
        ref:"method:DataBoundComponent.getHiliteState",
        flags:"",
        description:" Get the current hilites encoded as a String, for saving.\n\n",
        name:"getHiliteState",
        seeAlso:[
        ],
        returns:{
            description:"hilites state encoded as a String",
            type:"String"
        },
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "viewState"
        ]
    },
    "attr:MultiSortPanel.otherSortLevelTitle":{
        ref:"attr:MultiSortPanel.otherSortLevelTitle",
        flags:"IR",
        description:"The title-text to appear in the first column for all sort-levels other than the first.",
        name:"otherSortLevelTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Then by\"",
        type:"attr",
        definingClass:"class:MultiSortPanel",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:DynamicForm.titleSuffix":{
        ref:"attr:DynamicForm.titleSuffix",
        flags:"IRW",
        description:"The string appended to the title of every item in this form.  See also +{requiredTitleSuffix} for\n fields that are required.",
        name:"titleSuffix",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;:\"",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "attr:PickListMenu.dataProperties":{
        ref:"attr:PickListMenu.dataProperties",
        flags:"IRWA",
        description:"For databound ListGrids, this attribute can be used to customize the ${isc.DocUtils.linkForRef('class:ResultSet')}\n object created for this grid when data is fetched",
        name:"dataProperties",
        seeAlso:[
        ],
        valueType:"ResultSet",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:PickListMenu",
        groups:[
            "databinding"
        ]
    },
    "method:DynamicForm.editRecord":{
        ref:"method:DynamicForm.editRecord",
        flags:"",
        description:"\n Edit an existing record.  Updates this editors values to match the values of the record \n passed in, via ${isc.DocUtils.linkForRef('method:DynamicForm.setValues')}.\n <P>\n This method will also call ${isc.DocUtils.linkForRef('method:DynamicForm.setSaveOperationType')} to ensure \n subsequent calls to <code>saveData()</code> will use an <code>update</code> rather than\n an <code>add</code> operation.\n\n",
        name:"editRecord",
        seeAlso:[
            {
                ref:"method:DynamicForm.saveData",
                description:null
            }
        ],
        params:[
            {
                description:"the record to be edited as a map of field names to their corresponding values",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        type:"method",
        definingClass:"class:DynamicForm",
        groups:[
            "dataBoundComponentMethods"
        ]
    },
    "attr:RelativeDateItem.showCalculatedDateField":{
        ref:"attr:RelativeDateItem.showCalculatedDateField",
        flags:"IRW",
        description:"Should the Calculated-Date be displayed to the right of the ${isc.DocUtils.linkForRef('attr:RelativeDateItem.pickerIcon')}.",
        name:"showCalculatedDateField",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "group:dragging":{
        ref:"group:dragging",
        refs:[
            "method:DataBoundComponent.dragComplete",
            "method:DataBoundComponent.dropComplete",
            "method:DataBoundComponent.getDragData",
            "method:ListGrid.willAcceptDrop",
            "method:ListGrid.getDragData",
            "method:TreeGrid.transferSelectedData",
            "method:TileLayout.getDragData",
            "method:TileGrid.setCanReorderTiles",
            "method:TileGrid.setCanDragTilesOut",
            "method:TileGrid.setCanAcceptDroppedRecords",
            "method:TileGrid.getDragData",
            "attr:Window.canDragReposition",
            "attr:Window.canDragResize",
            "attr:Window.showResizer",
            "attr:Canvas.canDragScroll",
            "attr:Canvas.dragScrollDelay",
            "attr:DataBoundComponent.addDropValues",
            "attr:DataBoundComponent.dropValues",
            "attr:DataBoundComponent.dragDataAction",
            "attr:ListGrid.canDragRecordsOut",
            "attr:ListGrid.canAcceptDroppedRecords",
            "attr:ListGrid.canReorderRecords",
            "attr:ListGrid.canReorderFields",
            "attr:ListGrid.canResizeFields",
            "attr:ListGrid.resizeFieldsInRealTime",
            "attr:ListGrid.dragDataAction",
            "attr:TileLayout.dragDataAction",
            "attr:TileGrid.canReorderTiles",
            "attr:TileGrid.canDragTilesOut",
            "attr:TileGrid.canAcceptDroppedRecords",
            "attr:TileGrid.dragDataAction"
        ],
        name:"dragging",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Calendar.showDayLanes":{
        ref:"attr:Calendar.showDayLanes",
        flags:"IR",
        description:"If set to true, the ${isc.DocUtils.linkForRef('attr:Calendar.dayView','day view')} uses ${isc.DocUtils.linkForRef('attr:Calendar.lanes')} to render multiple\n vertical \"lanes\" within the day, very much like a vertical ${isc.DocUtils.linkForRef('class:Timeline')}.\n <P>\n Day lanes are useful for showing events for various entities on the same day - agendas for \n various staff members, for example, or delivery schedules for a fleet of trucks.\n <P>\n Each day lane is self-contained, showing in a column with a header and individual events \n are placed in ${isc.DocUtils.linkForRef('attr:CalendarEvent.lane','appropriate lanes')}, respecting padding and \n overlapping.  If ${isc.DocUtils.linkForRef('attr:Calendar.canEditEvents')} is true, events can be drag-moved or drag-resized \n from their top and bottom edges, within the containing lane.  To allow events to be dragged \n from one lane into another, see ${isc.DocUtils.linkForRef('attr:Calendar.canEditLane')}.",
        name:"showDayLanes",
        setter:[
            "setShowDayLanes"
        ],
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:Gauge.numMinorTicks":{
        ref:"attr:Gauge.numMinorTicks",
        flags:"IRW",
        description:"The number of minor tick lines.",
        name:"numMinorTicks",
        setter:[
            "setNumMinorTicks"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:Gauge"
    },
    "attr:FacetChart.radarBackgroundProperties":{
        ref:"attr:FacetChart.radarBackgroundProperties",
        flags:"IR",
        description:"Properties for radar background",
        name:"radarBackgroundProperties",
        seeAlso:[
        ],
        valueType:"DrawOval Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "classMethod:Class.logIsEnabledFor":{
        ref:"classMethod:Class.logIsEnabledFor",
        flags:"",
        description:" Check whether a message logged at the given priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsEnabledFor",
        seeAlso:[
        ],
        params:[
            {
                description:"priority level",
                optional:false,
                name:"priority",
                defaultValue:null,
                type:"LogPriority"
            },
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"classMethod",
        definingClass:"class:Class"
    },
    "type:Cursor":{
        ref:"type:Cursor",
        values:[
            {
                description:"Use the default arrow cursor for this browser/OS.",
                value:"Canvas.DEFAULT"
            },
            {
                description:"Use the default cursor for this element type in this browser/OS",
                value:"Canvas.AUTO"
            },
            {
                description:"Use the wait cursor.",
                value:"Canvas.WAIT"
            },
            {
                description:"Use the hand cursor.",
                value:"Canvas.HAND"
            },
            {
                description:"Use the \"move\" (crosshairs) cursor.",
                value:"Canvas.MOVE"
            },
            {
                description:"Use the 'help' cursor.",
                value:"Canvas.HELP"
            },
            {
                description:"Use the 'text' (i-beam) cursor.",
                value:"Canvas.TEXT"
            },
            {
                description:"Use the normal hand pointer that appears when you hover over a link",
                value:"POINTER"
            },
            {
                description:null,
                value:"\"arrow\""
            },
            {
                description:null,
                value:"\"all-scroll\""
            },
            {
                description:"Use the 'crosshair' ( + ) cursor.",
                value:"\"crosshair\""
            },
            {
                description:"Use the column resize cursor (horizontal double-tipped arrow)",
                value:"\"col-resize\""
            },
            {
                description:"Use the row resize cursor (vertical double-tipped arrow)",
                value:"\"row-resize\""
            },
            {
                description:"Use the \"east resize\" cursor.",
                value:"\"e-resize\""
            },
            {
                description:"Use the \"west resize\" cursor.",
                value:"\"w-resize\""
            },
            {
                description:"Use the \"north resize\" cursor.",
                value:"\"n-resize\""
            },
            {
                description:"Use the \"south resize\" cursor.",
                value:"\"s-resize\""
            },
            {
                description:"Use the \"south-east resize\" cursor.",
                value:"\"se-resize\""
            },
            {
                description:"Use the \"north-east resize\" cursor.",
                value:"\"ne-resize\""
            },
            {
                description:"Use the \"north-west resize\" cursor.",
                value:"\"nw-resize\""
            },
            {
                description:"Use the \"south-west resize\" cursor.",
                value:"\"sw-resize\""
            },
            {
                description:"Use the \"not-allowed\" cursor.",
                value:"\"not-allowed\""
            }
        ],
        description:"You can use whatever cursors are valid for your deployment platforms, but keep in mind that\n visual representation may vary by browser and OS. See the\n <a href='https://developer.mozilla.org/en-US/docs/Web/CSS/cursor' target='_blank'>MDN <code>cursor</code> page</a>\n for a live demonstration.",
        name:"Cursor",
        seeAlso:[
            {
                ref:"attr:Canvas.cursor",
                description:null
            }
        ],
        type:"type",
        examples:[
            "${isc.DocUtils.linkForExampleId('cursors')}"
        ],
        groups:[
            "cues"
        ]
    },
    "type:Alignment":{
        ref:"type:Alignment",
        values:[
            {
                description:"Center within container.",
                value:"Canvas.CENTER"
            },
            {
                description:"Stick to left side of container.",
                value:"Canvas.LEFT"
            },
            {
                description:"Stick to right side of container.",
                value:"Canvas.RIGHT"
            }
        ],
        description:null,
        name:"Alignment",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "appearance"
        ]
    },
    "attr:MiniDateRangeItem.toDateOnlyPrefix":{
        ref:"attr:MiniDateRangeItem.toDateOnlyPrefix",
        flags:"IR",
        description:"The text to prepend to the formatted date when only a ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.toDate','toDate')} is supplied.",
        name:"toDateOnlyPrefix",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Before\"",
        type:"attr",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:List.sortByProperty":{
        ref:"method:List.sortByProperty",
        flags:"",
        description:" Sort a list of objects by a given property of each item.\n <P>\n The optional normalizer, if passed as a function, is called for each item in the List, and\n should return whatever value should be used for sorting, which does not have to agree with\n the property value. By passing a normalizer function you can achieve any kind of sorting\n you'd like, including sorting by multiple properties.\n <P>\n NOTE: string sort is case INsensitive by default\n\n",
        name:"sortByProperty",
        seeAlso:[
        ],
        params:[
            {
                description:"name of the property to sort by",
                optional:false,
                name:"property",
                defaultValue:null,
                type:"string"
            },
            {
                description:"true == sort ascending, false == sort descending",
                optional:false,
                name:"up",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"May be specified as a function, with signature \n              <code>normalize(item, propertyName, context)</code>, where <code>item</code> is\n              a pointer to the item in the array, <code>propertyName</code> is the \n              property by which the array is being sorted, and <code>context</code> is the\n              arbitrary context passed into this method. Normalizer function should return\n              the value normalized for sorting.<br>\n              May also be specified as a ValueMap which maps property values to sortable values.",
                optional:true,
                name:"normalizer",
                defaultValue:null,
                type:"function or ValueMap"
            },
            {
                description:"Callers may pass an arbitrary context into the sort method, which                          will then be made available to the normalizer function",
                optional:true,
                name:"context",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"the list itself",
            type:"List"
        },
        type:"method",
        definingClass:"interface:List",
        groups:[
            "sorting"
        ]
    },
    "attr:TabSet.tabBarControls":{
        ref:"attr:TabSet.tabBarControls",
        flags:"IRA",
        description:"This property determines what controls should show up after the tabBar for this TabSet.\n Standard controls can be included using the strings <code>\"tabScroller\"</code> and \n <code>\"tabPicker\"</code>. These correspond to the ${isc.DocUtils.linkForRef('attr:TabSet.scroller')} and ${isc.DocUtils.linkForRef('attr:TabSet.tabPicker')}\n AutoChildren, respectively. The <code>\"tabScroller\"</code> standard control shows two\n buttons for scrolling through the tabs in order and the <code>\"tabPicker\"</code> standard\n control allows tabs to be picked directly from a menu. The standard controls show up only if\n ${isc.DocUtils.linkForRef('attr:TabSet.showTabScroller')} or ${isc.DocUtils.linkForRef('attr:TabSet.showTabPicker')} is true and there is not\n enough space available to show all of the tabs in the tabBar.\n <P>\n ${isc.DocUtils.linkForExampleId('layout_tabs_custom_controls', 'This sample')} illustrates the usage of this property\n <P>\n Additional controls can be included by adding any widget to this array.  Controls will\n show up in the order in which they are specified.  For example, the following code would\n add a button in the tabBar area, while preserving the normal behavior of the tabScroller\n and tabPicker:\n <smartclient>\n <pre>\n isc.TabSet.create({\n     width:300,\n     tabs : [\n         { title: \"Tab one\" }\n     ],\n     tabBarControls : [\n         isc.ImgButton.create({\n             src:\"[SKINIMG]/actions/add.png\",\n             width:16, height:16,\n             layoutAlign:\"center\"\n         }),\n         \"tabScroller\", \"tabPicker\"\n     ]\n });\n </pre>\n </smartclient>\n <smartgwt>\n <pre>\n\t\tImgButton addButton = new ImgButton();\n\t\taddButton.setSrc(\"[SKINIMG]/actions/add.png\");\n\t\taddButton.setTitle(\"Add\");\n\t\taddButton.setWidth(16);\n\t\taddButton.setHeight(16);\n\t\taddButton.setAlign(Alignment.CENTER);\n\t\tTabSet ts = new TabSet();\n\t\tts.setWidth(300);\n\t\tts.setHeight(32);\n\t\tts.setTabs(new Tab(\"Tab one\"));\n\t\tts.setTabBarControls(addButton, TabBarControls.TAB_SCROLLER, TabBarControls.TAB_PICKER);\n\t\tcontentLayout.addMember(ts);\n </pre>\n </smartgwt>\n You can also refer to the default tabPicker/tabScroll controls\n from Component XML:\n <pre>\n &lt;TabSet width=\"300\"&gt;\n     &lt;tabBarControls&gt;\n         &lt;Button title=\"Custom Button\"/&gt;\n         &lt;value xsi:type=\"string\"&gt;tabPicker&lt;/value&gt;\n         &lt;value xsi:type=\"string\"&gt;tabScroller&lt;/value&gt;\n      &lt;/tabBarControls&gt;\n      &lt;tabs&gt;\n          &lt;tab title=\"Foo\"/&gt;\n          &lt;tab title=\"Bar\"/&gt;\n     &lt;/tabs&gt;\n &lt;/TabSet&gt;\n </pre>",
        name:"tabBarControls",
        seeAlso:[
        ],
        valueType:"Array",
        defaultValue:"[\"tabScroller\", \"tabPicker\"]",
        type:"attr",
        definingClass:"class:TabSet",
        groups:[
            "tabBarControls"
        ]
    },
    "method:FacetChart.getPrintHTML":{
        ref:"method:FacetChart.getPrintHTML",
        flags:"A",
        description:" Retrieves printable HTML for this component and all printable subcomponents.\n <P>\n By default any Canvas with children will simply collect the printable HTML of its\n children by calling getPrintHTML() on each child that is considered\n ${isc.DocUtils.linkForRef('attr:Canvas.shouldPrint','printable')}.\n <P>\n If overriding this method for a custom component, you should <b>either</b> return a String of\n printable HTML string directly <b>or</b> return null, and fire the callback (if provided)\n using ${isc.DocUtils.linkForRef('method:Class.fireCallback')}.\n <P>\n To return an empty print representation, return an empty string (\"\") rather than null.\n <P>\n The <code>printProperties</code> argument, if passed, must be passed to any subcomponents on\n which <code>getPrintHTML()</code> is called.\n <P>\n <b>Notes on printing</b>\n <P>\n To print a <code>FacetChart</code> for export on IE8 and earlier, it is important to pass\n ${isc.DocUtils.linkForRef('object:PrintProperties')} with ${isc.DocUtils.linkForRef('attr:PrintProperties.printForExport','printForExport')}:true:\n <smartclient>\n <pre>var exportHTML = chart.getPrintHTML({ printForExport:true });</pre>\n </smartclient><smartgwt>\n <pre>final PrintProperties pp = new PrintProperties();\npp.setPrintForExport(true);\nfinal String exportHTML = chart.getPrintHTML(pp, null);</pre>\n </smartgwt>\n",
        name:"getPrintHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"properties to configure printing behavior - may be null.",
                optional:true,
                name:"printProperties",
                defaultValue:null,
                type:"PrintProperties"
            },
            {
                description:"optional callback. This is required to handle cases where HTML                  generation is asynchronous - if a method generates HTML asynchronously, it should return\n                  null, and fire the specified callback on completion of HTML generation. The\n                  first parameter <code>HTML</code> should contain the generated print HTML.\n                  The callback is only called if null is returned. Furthermore, the default\n                  getPrintHTML() implementation always returns null and fires the callback\n                  when a callback is provided.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"Callback"
            }
        ],
        returns:{
            description:"null if the print HTML is being generated asynchronously and/or a callback is provided; otherwise, the direct print HTML for this component (but note that returning\n direct print HTML is a deprecated feature).",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:FacetChart",
        groups:[
            "printing"
        ]
    },
    "attr:MiniDateRangeItem.pickerIconPrompt":{
        ref:"attr:MiniDateRangeItem.pickerIconPrompt",
        flags:"IR",
        description:"The prompt to show when the mouse is hovered over the ${isc.DocUtils.linkForRef('attr:MiniDateRangeItem.pickerIcon')}.",
        name:"pickerIconPrompt",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Show Date Chooser\"",
        type:"attr",
        definingClass:"class:MiniDateRangeItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:FacetChart.getDataLabelHoverHTML":{
        ref:"method:FacetChart.getDataLabelHoverHTML",
        flags:"",
        description:" Called when the mouse hovers over a data label, that is, a text label showing values from\n the first facet.  For example, the labels underneath the X-axis of a column chart,\n labelling each column.\n\n",
        name:"getDataLabelHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"facetValue that was hovered",
                optional:false,
                name:"facetValue",
                defaultValue:null,
                type:"FacetValue"
            }
        ],
        returns:{
            description:"hover text to be shown.  Return null to avoid a hover being shown",
            type:"HTMLString"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('drillCharting')}"
        ],
        definingClass:"class:FacetChart"
    },
    "method:ListGridField.sortNormalizer":{
        ref:"method:ListGridField.sortNormalizer",
        flags:"A",
        description:" Optional function to return the value that should be used when sorting this field.\n <P>\n Note that, if the dataset exceeds ${isc.DocUtils.linkForRef('attr:ListGrid.dataPageSize')} and hence paging is\n introduced, the grid relies on the server to provide sorting, and the sortNormalizer\n will no longer be called.\n\n",
        name:"sortNormalizer",
        seeAlso:[
        ],
        params:[
            {
                description:"record to normalize",
                optional:false,
                name:"recordObject",
                defaultValue:null,
                type:"object"
            },
            {
                description:"name of the field on which sorting occurred",
                optional:false,
                name:"fieldName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"A pointer back to the list grid displaying this field will   be available as the <code>context</code> argument. Note that you can also get a pointer\n   to the field definition object by calling <code>context.getField(fieldName)</code>",
                optional:false,
                name:"context",
                defaultValue:null,
                type:"ListGrid"
            }
        ],
        returns:{
            description:"normalized value for sorting",
            type:"any"
        },
        type:"method",
        examples:[
            "${isc.DocUtils.linkForExampleId('dataTypes')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "sorting"
        ]
    },
    "attr:DetailViewerField.decimalPrecision":{
        ref:"attr:DetailViewerField.decimalPrecision",
        flags:"IRW",
        description:"Applies only to fields of type \"float\" and affects how many significant digits are shown.\n <P>\n For example, with decimalPrecision 3, if the field value is 343.672677, 343.673 is shown.\n <P>\n If the value is 125.2, 125.2 is shown - decimalPrecision will not cause extra zeros to be\n added.  Use ${isc.DocUtils.linkForRef('attr:DataSourceField.decimalPad')} for this.\n <P>\n A number is always shown with its original precision when edited.",
        name:"decimalPrecision",
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"object:DetailViewerField",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGrid.iconPadding":{
        ref:"attr:ListGrid.iconPadding",
        flags:"IR",
        description:"When using ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitFieldWidths')}, padding in pixels left on each side of fields that\n show images.",
        name:"iconPadding",
        seeAlso:[
        ],
        valueType:"integer",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:ListGrid"
    },
    "attr:Canvas.groupBorderCSS":{
        ref:"attr:Canvas.groupBorderCSS",
        flags:"IR",
        description:"Sets the style for the grouping frame around the canvas. Only necessary when ${isc.DocUtils.linkForRef('attr:Canvas.isGroup')}\n is set to true.",
        name:"groupBorderCSS",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"2px solid black\"",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "method:DrawRect.moveTo":{
        ref:"method:DrawRect.moveTo",
        flags:"",
        description:" Move the drawRect to the specified position\n",
        name:"moveTo",
        seeAlso:[
        ],
        params:[
            {
                description:"new left coordinate",
                optional:false,
                name:"left",
                defaultValue:null,
                type:"int"
            },
            {
                description:"new top coordinate",
                optional:false,
                name:"top",
                defaultValue:null,
                type:"int"
            }
        ],
        type:"method",
        definingClass:"class:DrawRect"
    },
    "attr:DSRequest.oldValues":{
        ref:"attr:DSRequest.oldValues",
        flags:"IR",
        description:"For an <code>update</code> or <code>remove</code> operation, the original values from the\n record that is being updated or removed.  <code>oldValues</code> is automatically added to\n DSRequests submitted by DataBound Components.  Available on the server via\n <code>DSRequest.getOldValues()</code>.\n <P>\n The server can compare the <code>oldValues</code> to the most recent stored values in order\n to detect that the user was looking at stale values when the user submitted changes (NOTE:\n this means of detecting concurrent edit is sometimes called \"optimistic concurrency\" or\n \"long transactions\").  \n <P>\n In applications where a policy of \"last update wins\" is not appropriate when updating\n certain fields, special UI can be shown for this case.  For example, on detecting concurrent\n edit, the server may send back a special <code>dsResponse.status</code> code that the client\n application detects, offering the user a choice of proceeding with the operation,\n discarding edits, or reconciling new and old values in a special interface.",
        name:"oldValues",
        seeAlso:[
        ],
        valueType:"Record",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest"
    },
    "classMethod:DMI.getURL":{
        ref:"classMethod:DMI.getURL",
        flags:"",
        description:"\n Returns a URL to a server-side DMI method.  At a minimum, you need to specify the appID \n (${isc.DocUtils.linkForRef('group:applicationDeclaration','.app.xml file')}), ${isc.DocUtils.linkForRef('attr:ServerObject.className')}\n or ${isc.DocUtils.linkForRef('attr:ServerObject.ID')} and methodName to call.\n Arguments are optional.  There are two ways to invoke this method:\n <pre>\n DMI.getURL(appID, className, methodName, \n          arg1, arg2 ...argN);\n </pre>\n or:\n <pre>\n DMI.getURL({\n     appID: appID,\n     className: className,\n     methodName: methodName,\n     arguments: [arg1, arg2, ...argN], //optional\n     requestParams: requestProps // optional\n });\n </pre>\n The second signature allows you to specify requestParams that are applied to the\n ${isc.DocUtils.linkForRef('class:RPCRequest')} generated by this DMI call.\n <p>\n Note that because the entirety of the request is encoded in the URL, there is an\n inherent limitation on the amount of data that you can send viat he criteria argument to\n the server.  The actual length depends on your server configuration and other factors\n such as the size of cookies (if any) being sent to the server and other HTTP headers in\n use.  Conservatively, assume that you have about 2 kilobytes to work with.\n\n",
        name:"getURL",
        seeAlso:[
        ],
        params:[
            {
                description:"the appID (.app.xml file to look in) or comprehensive request                          object as documented above.",
                optional:false,
                name:"appID",
                defaultValue:null,
                type:"string or Object"
            },
            {
                description:"${isc.DocUtils.linkForRef('attr:ServerObject.className')} or ${isc.DocUtils.linkForRef('attr:ServerObject.ID')}",
                optional:false,
                name:"className",
                defaultValue:null,
                type:"string"
            },
            {
                description:"the name of the method to call on the serverObject",
                optional:false,
                name:"methodName",
                defaultValue:null,
                type:"string"
            },
            {
                description:"The next N-1 params specify arguments to the server-side method.",
                optional:true,
                name:"args",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"a URL that targets the specified DMI",
            type:"String"
        },
        type:"classMethod",
        definingClass:"class:DMI"
    },
    "method:CubeGrid.setFacetValueTitleAlign":{
        ref:"method:CubeGrid.setFacetValueTitleAlign",
        flags:"",
        description:" Set the align for the title for a facet value.\n\n",
        name:"setFacetValueTitleAlign",
        seeAlso:[
        ],
        params:[
            {
                description:"facet to update",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"facetValue to update",
                optional:false,
                name:"facetValueId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"new alignment for facet value title",
                optional:false,
                name:"align",
                defaultValue:null,
                type:"Alignment"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "gridLayout"
        ]
    },
    "attr:StretchImg.itemBaseStyle":{
        ref:"attr:StretchImg.itemBaseStyle",
        flags:"IRW",
        description:"If specified this css class will be applied to the individual item images within this StretchImg.\n May be overridden by specifying item-specific base styles to each object in the\n ${isc.DocUtils.linkForRef('attr:StretchImg.items','items array')}. This base style will have standard stateful suffixes\n appended to indicate the state of this component (as described in \n ${isc.DocUtils.linkForRef('attr:StatefulCanvas.baseStyle')}).",
        name:"itemBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:StretchImg"
    },
    "attr:DataSource.ignoreTextMatchStyleCaseSensitive":{
        ref:"attr:DataSource.ignoreTextMatchStyleCaseSensitive",
        flags:"IR",
        description:"For fields on this dataSource that specify \n ${isc.DocUtils.linkForRef('attr:DataSourceField.ignoreTextMatchStyle','ignoreTextMatchStyle')} true, the prevailing\n textMatchStyle is ignored and SmartClient matches exact values.  This property dictates\n whether that match is case-sensitive like the \"exactCase\" textMatchStyle, or \n case-insensitive like the \"exact\" textMatchStyle (the default).  Please see the \n ${isc.DocUtils.linkForRef('type:TextMatchStyle','TextMatchStyle documentation')} for a discussion of the nuances\n of case-sensitive matching.",
        name:"ignoreTextMatchStyleCaseSensitive",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "attr:PortalPosition.colNum":{
        ref:"attr:PortalPosition.colNum",
        flags:"IR",
        description:"The column number occupied by a ${isc.DocUtils.linkForRef('class:Portlet')} within a ${isc.DocUtils.linkForRef('class:PortalLayout')}.",
        name:"colNum",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:PortalPosition"
    },
    "attr:SelectItem.openOnDownArrow":{
        ref:"attr:SelectItem.openOnDownArrow",
        flags:"IRW",
        description:"Causes the PickList to open when the down arrow is pressed, default false.  \n <P>\n For native OS widgets, the down arrow changes the value of a select on Windows, but \n opens the select on Macs.  This setting is not recommended unless you are certain that \n all users of your applications will expect the Mac convention.",
        name:"openOnDownArrow",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:SelectItem.textMatchStyle":{
        ref:"attr:SelectItem.textMatchStyle",
        flags:"IR",
        description:"When applying filter criteria to pickList data, what type of matching to use.\n <P>\n For a databound pickList (${isc.DocUtils.linkForRef('attr:SelectItem.optionDataSource')} set), <code>textMatchStyle</code> is\n sent to the server as ${isc.DocUtils.linkForRef('attr:DSRequest.textMatchStyle')}.\n <P>\n For a non-databound pickList, <code>textMatchStyle</code> is applied by \n ${isc.DocUtils.linkForRef('method:PickList.filterClientPickListData','filterClientPickListData()')}.",
        name:"textMatchStyle",
        seeAlso:[
        ],
        valueType:"TextMatchStyle",
        defaultValue:"\"startsWith\"",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:ListGridField.showHilitesInGroupSummary":{
        ref:"attr:ListGridField.showHilitesInGroupSummary",
        flags:"IRW",
        description:"Determines whether hiliting for this field is shown in a group summary.\n Set to false to prevent this field from showing hilite in a group summary.\n <P>\n All hilites in group summary rows can be controlled with the\n ${isc.DocUtils.linkForRef('attr:ListGrid.showHilitesInGroupSummary')} property.",
        name:"showHilitesInGroupSummary",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "attr:FilterBuilder.showRemoveButton":{
        ref:"attr:FilterBuilder.showRemoveButton",
        flags:"IR",
        description:"If set, a button will be shown for each clause allowing it to be removed.",
        name:"showRemoveButton",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:FilterBuilder"
    },
    "attr:FormulaBuilder.instructions":{
        ref:"attr:FormulaBuilder.instructions",
        flags:"IR",
        description:"Label displaying the instruction text above the fieldKey grid.",
        name:"instructions",
        seeAlso:[
        ],
        valueType:"AutoChild Label",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormulaBuilder"
    },
    "method:ListGrid.markRecordsRemoved":{
        ref:"method:ListGrid.markRecordsRemoved",
        flags:"",
        description:" Marks an array of records deleted such that a later call to ${isc.DocUtils.linkForRef('method:ListGrid.saveEdits')} or \n ${isc.DocUtils.linkForRef('method:ListGrid.saveAllEdits')} will cause a \"remove\" ${isc.DocUtils.linkForRef('class:DSRequest')} to be submitted.\n <P>\n This method is similar to ${isc.DocUtils.linkForRef('method:ListGrid.markRecordRemoved')} but should be more efficient\n in avoiding unneeded duplicate refreshes due to the multiple records getting marked.\n\n",
        name:"markRecordsRemoved",
        seeAlso:[
            {
                ref:"method:ListGrid.markRecordRemoved",
                description:null
            }
        ],
        params:[
            {
                description:"records or indices to mark removed",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of ListGridRecord or number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "editing"
        ]
    },
    "attr:DataSource.serviceNamespace":{
        ref:"attr:DataSource.serviceNamespace",
        flags:"IR",
        description:"For an XML DataSource, URN of the WebService to use to invoke operations.  This URN\n comes from the \"targetNamespace\" attribute of the &lt;wsdl:definitions&gt; element in a\n WSDL (Web Service Description Language) document, and serves as the unique identifier of\n the service.\n <P>\n Having loaded a WebService using ${isc.DocUtils.linkForRef('classMethod:XMLTools.loadWSDL')}, setting\n <code>serviceNamespace</code> combined with specifying \n ${isc.DocUtils.linkForRef('class:OperationBinding','operationBindings')}\n that set ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation')} will cause a DataSource to invoke web\n service operations to fulfill DataSource requests (${isc.DocUtils.linkForRef('class:DSRequest','DSRequests')}).\n <P>\n Setting <code>serviceNamespace</code> also defaults\n ${isc.DocUtils.linkForRef('attr:DataSource.dataURL','dataURL')} to the service's location,\n ${isc.DocUtils.linkForRef('attr:DataSource.dataFormat','dataFormat')} to \"xml\" and\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataProtocol','dataProtocol')} to \"soap\".",
        name:"serviceNamespace",
        seeAlso:[
        ],
        valueType:"URN",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        examples:[
            "${isc.DocUtils.linkForExampleId('wsdlBinding')}"
        ],
        definingClass:"class:DataSource",
        groups:[
            "wsdlBinding",
            "clientDataIntegration"
        ]
    },
    "method:ResultSet.filterLocalData":{
        ref:"method:ResultSet.filterLocalData",
        flags:"A",
        description:" Derive the current filtered set of data from the cache of all matching rows.\n <P>\n This method is automatically called by ${isc.DocUtils.linkForRef('method:ResultSet.setCriteria')} when criteria have actually\n changed, as well as in various other situations.  You could only need to call this method\n directly if:\n <ul>\n <li> you know that client-side filtering is enabled (${isc.DocUtils.linkForRef('attr:ResultSet.useClientFiltering')}:true) and\n active ${isc.DocUtils.linkForRef('method:ResultSet.allMatchingRowsCached')}.\n <li> you have directly, programmatically modified data within the ResultSet such that it no\n longer matches the filter criteria\n <li> you want your modified records to disappear from the list of visible records (that is,\n those accessible via ${isc.DocUtils.linkForRef('method:ResultSet.get')})\n </ul>\n \n",
        name:"filterLocalData",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:ResultSet"
    },
    "attr:ListGridField.iconHeight":{
        ref:"attr:ListGridField.iconHeight",
        flags:"IR",
        description:"If ${isc.DocUtils.linkForRef('attr:ListGridField.icon')} is specified, this property can be used to specify the\n height of the icon to be displayed in the ListGrid header button.\n (See ${isc.DocUtils.linkForRef('attr:StatefulCanvas.iconHeight')})<br>\n If this field is editable, and ${isc.DocUtils.linkForRef('attr:ListGridField.editorIconHeight')} is unset, this\n property will be passed onto the editors for this field as ${isc.DocUtils.linkForRef('attr:FormItem.iconWidth')},\n which will effect the default size for ${isc.DocUtils.linkForRef('attr:ListGridField.icons','icons')} displayed\n in the editor.",
        name:"iconHeight",
        seeAlso:[
            {
                ref:"attr:ListGridField.icon",
                description:null
            },
            {
                ref:"attr:ListGridField.icons",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "method:Array.getItems":{
        ref:"method:Array.getItems",
        flags:"",
        description:" Return the items at a list of specified positions.\n\n",
        name:"getItems",
        seeAlso:[
        ],
        params:[
            {
                description:"array of positions",
                optional:false,
                name:"itemList",
                defaultValue:null,
                type:"List of Number"
            }
        ],
        returns:{
            description:"subset of the array, in the same order as itemList",
            type:"array"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "method:Array.isEmpty":{
        ref:"method:Array.isEmpty",
        flags:"",
        description:" Return whether or not this array is empty\n\n",
        name:"isEmpty",
        seeAlso:[
        ],
        returns:{
            description:"true == this array is empty, false == some items in the array",
            type:"boolean"
        },
        type:"method",
        definingClass:"object:Array",
        groups:[
            "access"
        ]
    },
    "attr:Menu.items":{
        ref:"attr:Menu.items",
        flags:"IRW",
        getter:[
            "getItems"
        ],
        description:"Synonym for ${isc.DocUtils.linkForRef('attr:Menu.data')}",
        name:"items",
        setter:[
            "setItems"
        ],
        seeAlso:[
        ],
        valueType:"Array of MenuItem",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu",
        groups:[
            "data"
        ]
    },
    "method:PortalLayout.setCanShrinkColumnWidths":{
        ref:"method:PortalLayout.setCanShrinkColumnWidths",
        flags:"",
        description:" Sets ${isc.DocUtils.linkForRef('attr:PortalLayout.canShrinkColumnWidths')} and reflows to reflect the new setting.\n",
        name:"setCanShrinkColumnWidths",
        seeAlso:[
            {
                ref:"attr:PortalLayout.canShrinkColumnWidths",
                description:null
            },
            {
                ref:"attr:PortalLayout.canStretchColumnWidths",
                description:null
            }
        ],
        params:[
            {
                description:"Whether columns can shrink to avoid overflowing the PortalLayout's width.",
                optional:false,
                name:"canShrink",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:PortalLayout",
        groups:[
            "sizing"
        ]
    },
    "attr:DrawOval.height":{
        ref:"attr:DrawOval.height",
        flags:"IRW",
        description:"Height in pixels.",
        name:"height",
        setter:[
            "setHeight"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DrawOval"
    },
    "method:ComboBoxItem.getValueFieldName":{
        ref:"method:ComboBoxItem.getValueFieldName",
        flags:"",
        description:" Getter method to retrieve the ${isc.DocUtils.linkForRef('attr:FormItem.valueField')} for this item.\n If unset, default behavior will return the ${isc.DocUtils.linkForRef('attr:FormItem.name')} of this field.\n",
        name:"getValueFieldName",
        seeAlso:[
        ],
        returns:{
            description:"fieldName to use a \"value field\" in records from this items               ${isc.DocUtils.linkForRef('attr:FormItem.optionDataSource')}",
            type:"string"
        },
        type:"method",
        definingClass:"class:ComboBoxItem",
        groups:[
            "display_values"
        ]
    },
    "attr:FormItem.pickerIconHeight":{
        ref:"attr:FormItem.pickerIconHeight",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:FormItem.showPickerIcon','showPickerIcon')} is true for this item, this property governs the\n size of the picker icon. If unset, the picker icon will be sized as a square to fit in the\n available height for the icon.\n <p>\n It is not recommended to change the pickerIconHeight from the default value if ${isc.DocUtils.linkForRef('group:skinning','spriting')}\n is enabled because the image sprites are set up assuming specific, fixed dimensions of the picker\n icon. If the pickerIconHeight must be changed, then the ${isc.DocUtils.linkForRef('attr:FormItem.pickerIconStyle','pickerIconStyle')}\n should be changed to a custom CSS style name.",
        name:"pickerIconHeight",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "pickerIcon"
        ]
    },
    "attr:Button.showFocusedIcon":{
        ref:"attr:Button.showFocusedIcon",
        flags:"IR",
        description:"If using an icon for this button, whether to switch the icon image when the button\n receives focus.\n <P>\n If ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocusedAsOver')} is true, the <code>\"Over\"</code> icon will be\n displayed when the canvas has focus, otherwise a separate <code>\"Focused\"</code> icon\n will be displayed",
        name:"showFocusedIcon",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:Button",
        groups:[
            "buttonIcon"
        ]
    },
    "attr:Window.showResizer":{
        ref:"attr:Window.showResizer",
        flags:"IRW",
        description:"If true, show a button in the lower right corner that allows users to resize the Window.\n Note that the resizer will only be displayed if the footer is showing for the window\n (${isc.DocUtils.linkForRef('attr:Window.showFooter')}) and ${isc.DocUtils.linkForRef('attr:Window.canDragResize')} is true.",
        name:"showResizer",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "dragging"
        ]
    },
    "attr:DateChooser.firstDayOfWeek":{
        ref:"attr:DateChooser.firstDayOfWeek",
        flags:"IR",
        description:"Day of the week to show in the first column.  0=Sunday, 1=Monday, ..., 6=Saturday.  The\n default value for this attribute is picked up from the current locale and can also be \n altered system-wide with the ${isc.DocUtils.linkForRef('classMethod:Date.setFirstDayOfWeek','global setter')}.",
        name:"firstDayOfWeek",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"0",
        type:"attr",
        definingClass:"class:DateChooser",
        groups:[
            "i18nMessages",
            "appearance"
        ]
    },
    "method:ListGrid.collapseRecords":{
        ref:"method:ListGrid.collapseRecords",
        flags:"",
        description:" Collapses the passed list of expanded ${isc.DocUtils.linkForRef('object:ListGridRecord','records')}.  Calls\n ${isc.DocUtils.linkForRef('method:ListGrid.collapseRecord','collapseRecord')} for each passed record, but only marks\n the grid for redraw once, after all records have been collapsed.\n\n",
        name:"collapseRecords",
        seeAlso:[
        ],
        params:[
            {
                description:"records to collapse",
                optional:false,
                name:"records",
                defaultValue:null,
                type:"Array of ListGridRecord"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "expansionField"
        ]
    },
    "method:DataSource.getFieldOperatorMap":{
        ref:"method:DataSource.getFieldOperatorMap",
        flags:"",
        description:" Get the list of ${isc.DocUtils.linkForRef('object:Operator')}s available for this field, as a ${isc.DocUtils.linkForRef('type:ValueMap')} from\n ${isc.DocUtils.linkForRef('type:OperatorId')} to the ${isc.DocUtils.linkForRef('attr:Operator.title')} specified for the ${isc.DocUtils.linkForRef('object:Operator')}, or\n the corresponding property in ${isc.DocUtils.linkForRef('class:Operators')} if ${isc.DocUtils.linkForRef('attr:Operator.titleProperty')} is set.\n <P>\n This valueMap is suitable for use in a UI for building queries, similar to the\n ${isc.DocUtils.linkForRef('class:FilterBuilder')}, and optionally omits operators marked ${isc.DocUtils.linkForRef('attr:Operator.hidden')}:true.\n <p>\n It is also possible to have this function return only operators of a given \n ${isc.DocUtils.linkForRef('type:OperatorValueType')}, or everything except operators of that type. This is useful, \n for example, if you want to return all the logical operators (like \"and\"), or everything \n except the logical operators.\n\n",
        name:"getFieldOperatorMap",
        seeAlso:[
            {
                ref:"method:DataSource.getTypeOperatorMap",
                description:null
            }
        ],
        params:[
            {
                description:"Field (or field name) to obtain operator map for.",
                optional:false,
                name:"field",
                defaultValue:null,
                type:"string or DataSourceField"
            },
            {
                description:"whether to include Operators marked hidden:true",
                optional:true,
                name:"includeHidden",
                defaultValue:null,
                type:"boolean"
            },
            {
                description:"If passed, returns only operators of this ${isc.DocUtils.linkForRef('type:OperatorValueType')}",
                optional:true,
                name:"valueType",
                defaultValue:null,
                type:"OperatorValueType"
            },
            {
                description:"If set, reverses the meaning of the <code>valueType</code>         parameter, so operators of that ${isc.DocUtils.linkForRef('type:OperatorValueType')} are the only ones omitted",
                optional:true,
                name:"omitValueType",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"mapping from ${isc.DocUtils.linkForRef('type:OperatorId')} to title, as described above",
            type:"ValueMap"
        },
        type:"method",
        definingClass:"class:DataSource",
        groups:[
            "advancedFilter"
        ]
    },
    "group:serialization":{
        ref:"group:serialization",
        refs:[
            "classMethod:isc.clone"
        ],
        name:"serialization",
        seeAlso:[
        ],
        type:"group"
    },
    "method:Class.setProperty":{
        ref:"method:Class.setProperty",
        flags:"",
        description:" Set a property on this object, calling the setter method if it exists.\n <p>\n Whenever you set a property on an ISC component, you should call either the specific setter\n for that property, or <code>setProperty()/setProperties()</code> if it doesn't have one.\n This future-proofs your code against the later addition of required setters.\n\n",
        name:"setProperty",
        seeAlso:[
            {
                ref:"method:Class.setProperties",
                description:null
            }
        ],
        params:[
            {
                description:"name of the property to set",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String"
            },
            {
                description:"new value for the property",
                optional:false,
                name:"newValue",
                defaultValue:null,
                type:"any"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "method:CubeGrid.addColumnFacet":{
        ref:"method:CubeGrid.addColumnFacet",
        flags:"",
        description:" Add a column facet to the view at index \"index\".  Handles the facet already being in the view\n (does a pivot).<br><br>\n\n The facet being added should currently have a fixed facet value (unless it's already part of the\n view), which will be removed from cubeGrid.fixedFacetValues.\n\n <br><i>methodType</i>  action\n",
        name:"addColumnFacet",
        seeAlso:[
            {
                ref:"method:CubeGrid.removeFacet",
                description:null
            },
            {
                ref:"attr:CubeGrid.fixedFacetValues",
                description:null
            }
        ],
        params:[
            {
                description:"facetId to add.  Definition must have been provided at init time.",
                optional:false,
                name:"facetId",
                defaultValue:null,
                type:"id"
            },
            {
                description:"index to add the facet at.  0 = outermost (default innermost)",
                optional:true,
                name:"index",
                defaultValue:null,
                type:"integer"
            }
        ],
        type:"method",
        definingClass:"class:CubeGrid",
        groups:[
            "facetLayout"
        ]
    },
    "method:Selection.isPartiallySelected":{
        ref:"method:Selection.isPartiallySelected",
        flags:"",
        description:" When using tree-oriented selection modes like ${isc.DocUtils.linkForRef('attr:TreeGrid.cascadeSelection')}, returns true\n if the record is considered partially selected because only some of it's children are\n selected.\n\n",
        name:"isPartiallySelected",
        seeAlso:[
        ],
        params:[
            {
                description:"object to check",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"object"
            }
        ],
        returns:{
            description:"true == object is partially selected                        false == object is not partially selected",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:DetailViewer.emptyCellValue":{
        ref:"attr:DetailViewer.emptyCellValue",
        flags:"IRWA",
        description:"Text to show for an empty cell",
        name:"emptyCellValue",
        seeAlso:[
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        definingClass:"class:DetailViewer",
        groups:[
            "appearance"
        ]
    },
    "type:Criteria":{
        ref:"type:Criteria",
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        description:"Criteria for selecting only a matching set of records from a DataSource.  Criteria can\n be applied on the client and server.  Unless configured otherwise, criteria will generally\n be applied client-side by ${isc.DocUtils.linkForRef('class:ResultSet')}s via ${isc.DocUtils.linkForRef('method:ResultSet.applyFilter')}.  \n <P>\n Client- and server-side systems built into SmartClient understand two criteria formats by\n default: simple key-value pairs (Criteria) or the ${isc.DocUtils.linkForRef('object:AdvancedCriteria')} format.  \n <P>\n <smartclient>\n Simple key-value Criteria are represented via a JavaScript Object where each property\n specifies the name and required value for a field.  Multiple legal values for a field can be\n provided as an Array.  For example:\n <pre>\n var criteria = {\n    field1 : \"value1\",\n    field2 : [\"value2\", \"value3\"]\n }\n </pre>\n Would select all records where field1 has value \"value1\" and where field2 has <i>either</i>\n \"value2\" or \"value3\".\n </smartclient>\n <P>\n Use ${isc.DocUtils.linkForRef('classMethod:DataSource.combineCriteria')} to combine two Criteria objects (including Criteria and\n AdvancedCriteria) or ${isc.DocUtils.linkForRef('classMethod:DataSource.convertCriteria')} to convert simple Criteria to the\n AdvancedCriteria format.\n <P>\n <smartclient>\n When writing custom client and server-side filtering logic, criteria must be a JavaScript\n Object but the properties of that Object can contain whatever data you want.  \n </smartclient>\n When sent to the SmartClient server, the Java representation of the criteria is described\n ${isc.DocUtils.linkForRef('attr:RPCRequest.data','here')}.  When sent to other servers, the\n ${isc.DocUtils.linkForRef('type:DSProtocol','operationBinding.dataProtocol')} affects the format.",
        name:"Criteria",
        seeAlso:[
            {
                ref:"type:CriteriaPolicy",
                description:null
            }
        ],
        type:"type"
    },
    "method:Button.setWrap":{
        ref:"method:Button.setWrap",
        flags:"",
        description:" Set whether the title of this button should be allowed to wrap if too long for the button's\n specified width.\n\n",
        name:"setWrap",
        seeAlso:[
        ],
        params:[
            {
                description:"whether to wrap the title",
                optional:false,
                name:"newWrap",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:Button"
    },
    "attr:CubeGrid.facetValueHoverStyle":{
        ref:"attr:CubeGrid.facetValueHoverStyle",
        flags:"IRWA",
        description:"Allows the developer to override the css class applied to  hover tips shown for\n facet values.  If unspecified, and <code>this.hoverStyle</code> is not null, that \n css class will be applied to facet value hovers instead.",
        name:"facetValueHoverStyle",
        seeAlso:[
            {
                ref:"attr:Canvas.hoverStyle",
                description:null
            }
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:CubeGrid",
        groups:[
            "hoverTips"
        ]
    },
    "attr:Calendar.nextButtonHoverText":{
        ref:"attr:Calendar.nextButtonHoverText",
        flags:"IR",
        description:"The text to be displayed when a user hovers over the ${isc.DocUtils.linkForRef('attr:Calendar.nextButton','next')} \n toolbar button",
        name:"nextButtonHoverText",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Next\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Calendar.removeLane":{
        ref:"method:Calendar.removeLane",
        flags:"",
        description:" Removes a lane from the calendar in ${isc.DocUtils.linkForRef('attr:Calendar.timelineView')}, or in ${isc.DocUtils.linkForRef('attr:Calendar.dayView')} if \n ${isc.DocUtils.linkForRef('attr:Calendar.showDayLanes')} is true.\n <P>\n Accepts either a ${isc.DocUtils.linkForRef('object:Lane','Lane object')} or a string that represents the \n ${isc.DocUtils.linkForRef('attr:Lane.name','name')} of a lane.\n\n",
        name:"removeLane",
        seeAlso:[
        ],
        params:[
            {
                description:"either the actual Lane object or the name of the lane to remove",
                optional:false,
                name:"lane",
                defaultValue:null,
                type:"Lane | String"
            }
        ],
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:ListGridField.enterKeyEditAction":{
        ref:"attr:ListGridField.enterKeyEditAction",
        flags:"IRW",
        description:"What to do when a user hits enter while editing this field?<br>\n Overrides the <code>enterKeyEditAction</code> as specified at the listGrid level while\n focus is in this field.",
        name:"enterKeyEditAction",
        seeAlso:[
        ],
        valueType:"EnterKeyEditAction",
        defaultValue:"\"done\"",
        type:"attr",
        definingClass:"object:ListGridField",
        groups:[
            "editing"
        ]
    },
    "method:ImgButton.isSelected":{
        ref:"method:ImgButton.isSelected",
        flags:"",
        description:" Find out if this object is selected\n",
        name:"isSelected",
        seeAlso:[
        ],
        returns:{
            description:null,
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:ImgButton",
        groups:[
            "state"
        ]
    },
    "class:PresetCriteriaItem":{
        methods:[
            "method:PresetCriteriaItem.getCustomCriteria",
            "method:PresetCriteriaItem.getCriterion"
        ],
        ref:"class:PresetCriteriaItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:PresetCriteriaItem.valueMap",
            "attr:PresetCriteriaItem.options",
            "attr:PresetCriteriaItem.showCustomOption",
            "attr:PresetCriteriaItem.customOptionTitle",
            "attr:PresetCriteriaItem.shouldSaveValue"
        ],
        description:"A FormItem for use with the ${isc.DocUtils.linkForRef('class:FilterBuilder')}, allows the user to pick from a set of \n pre-configured search criteria such as specific ranges in numeric or date data, and provide \n user friendly titles for such criteria, such as \"within the next two weeks\" or \n \"High (0.75 - 0.99)\".",
        name:"PresetCriteriaItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DynamicForm.initialCriteria":{
        ref:"attr:DynamicForm.initialCriteria",
        flags:"IR",
        description:"Criteria to be used when ${isc.DocUtils.linkForRef('attr:DynamicForm.autoFetchData')} is set.",
        name:"initialCriteria",
        seeAlso:[
        ],
        valueType:"Criteria",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm"
    },
    "class:RadioGroupItem":{
        methods:[
            "method:RadioGroupItem.valueHoverHTML",
            "method:RadioGroupItem.setValueDisabled"
        ],
        exampleConfig:"RadioGroupItem.xml",
        ref:"class:RadioGroupItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:RadioGroupItem.vertical",
            "attr:RadioGroupItem.textBoxStyle",
            "attr:RadioGroupItem.wrap",
            "attr:RadioGroupItem.itemProperties",
            "attr:RadioGroupItem.disabledValues"
        ],
        description:"FormItem that shows a set of mutually exclusive options as a group of radio buttons.",
        name:"RadioGroupItem",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:Label.wrap":{
        ref:"attr:Label.wrap",
        flags:"IRW",
        description:"If false, the label text will not be wrapped to the next line.",
        name:"wrap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Label",
        groups:[
            "sizing"
        ]
    },
    "method:FormItem.getFieldName":{
        ref:"method:FormItem.getFieldName",
        flags:"A",
        description:"\t\t\tReturn the name for the this formItem.\n",
        name:"getFieldName",
        seeAlso:[
        ],
        returns:{
            description:"name for this form item",
            type:"string"
        },
        type:"method",
        definingClass:"class:FormItem",
        groups:[
            "drawing"
        ]
    },
    "method:TreeGrid.getOpenIcon":{
        ref:"method:TreeGrid.getOpenIcon",
        flags:"A",
        description:" Get the appropriate open/close opener icon for a node. Returns null if ${isc.DocUtils.linkForRef('attr:TreeGrid.showOpener')} is\n set to false.\n\n",
        name:"getOpenIcon",
        seeAlso:[
        ],
        params:[
            {
                description:"tree node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"URL for the icon to show the node's open state",
            type:"URL"
        },
        type:"method",
        definingClass:"class:TreeGrid"
    },
    "method:ListGrid.deselectRecord":{
        ref:"method:ListGrid.deselectRecord",
        flags:"",
        description:"\n Deselect a ${isc.DocUtils.linkForRef('object:Record')} passed in explicitly, or by index.\n <P>\n Synonym for <code>selectRecord(record, false)</code>\n\n",
        name:"deselectRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"record (or row number) to deselect",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record | number"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "selection"
        ]
    },
    "method:Selection.getSelectedRecord":{
        ref:"method:Selection.getSelectedRecord",
        flags:"",
        description:"\t\t\tReturn the first item in the list that is selected.<br><br>\n\n\t\t\tNote that this should only be used if you know that one only one item\n\t\t\t may be selected, or you really don't care about items after the first one.<br><br>\n\n\t\t\tTo get all selected objects, use <code>${isc.DocUtils.linkForRef('method:Selection.getSelection')}</code>\n",
        name:"getSelectedRecord",
        seeAlso:[
        ],
        returns:{
            description:"first selected record, or null if nothing selected",
            type:"object"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "classMethod:Date.compareDates":{
        ref:"classMethod:Date.compareDates",
        flags:"",
        description:" Compare two dates; returns 0 if equal, -1 if the first date is greater (later), or 1 if\n the second date is greater.  If either value is not a Date object, it is treated as the\n epoch (midnight on Jan 1 1970) for comparison purposes.\n",
        name:"compareDates",
        seeAlso:[
        ],
        params:[
            {
                description:"first date to compare",
                optional:false,
                name:"date1",
                defaultValue:null,
                type:"date"
            },
            {
                description:"second date to compare",
                optional:false,
                name:"date2",
                defaultValue:null,
                type:"date"
            }
        ],
        returns:{
            description:"0 if equal, -1 if first date &gt; second date, 1 if second date &gt; first date",
            type:"int"
        },
        type:"classMethod",
        definingClass:"class:Date"
    },
    "attr:ListPropertiesDialog.title":{
        ref:"attr:ListPropertiesDialog.title",
        flags:"IR",
        description:"The title of this ListPropertiesDialog.",
        name:"title",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"List Properties\"",
        type:"attr",
        definingClass:"class:ListPropertiesDialog",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Portlet.dragType":{
        ref:"attr:Portlet.dragType",
        flags:"IRWA",
        description:"<p>By default, ${isc.DocUtils.linkForRef('attr:PortalLayout.portletDropTypes')} is set so that any component can be\n dragged into a ${isc.DocUtils.linkForRef('class:PortalLayout')}. If the component is not a ${isc.DocUtils.linkForRef('class:Portlet')},\n it will be automatically be wrapped in a newly created ${isc.DocUtils.linkForRef('class:Portlet')}.</p>\n\n <p>If you prefer to only allow real ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} to be dragged into a \n ${isc.DocUtils.linkForRef('class:PortalLayout')}, then you can set ${isc.DocUtils.linkForRef('attr:PortalLayout.portletDropTypes')} to \n <code>[\"Portlet\"]</code>, since <code>Portlet.dragType</code> defaults to \n <code>\"Portlet\"</code>.</p>\n\n <p>if you want to allow some ${isc.DocUtils.linkForRef('class:Portlet','Portlets')} to be dropped on a ${isc.DocUtils.linkForRef('class:PortalLayout')} \n but not others, then you can specify a custom <code>dragType</code> for ${isc.DocUtils.linkForRef('class:Portlet','Portlets')}, \n and then set ${isc.DocUtils.linkForRef('attr:PortalLayout.portletDropTypes')} as appropriate.</p>",
        name:"dragType",
        seeAlso:[
            {
                ref:"attr:Canvas.dragType",
                description:null
            },
            {
                ref:"attr:PortalLayout.portletDropTypes",
                description:null
            }
        ],
        valueType:"string",
        defaultValue:"\"Portlet\"",
        type:"attr",
        definingClass:"class:Portlet",
        groups:[
            "dragdrop"
        ]
    },
    "attr:FilterClause.operatorPickerProperties":{
        ref:"attr:FilterClause.operatorPickerProperties",
        flags:"IR",
        description:"Properties to combine with the ${isc.DocUtils.linkForRef('attr:FilterClause.operatorPicker')} autoChild FormItem.",
        name:"operatorPickerProperties",
        seeAlso:[
        ],
        valueType:"FormItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FilterClause"
    },
    "method:ColorPicker.getHue":{
        ref:"method:ColorPicker.getHue",
        flags:"",
        description:" Returns the Hue of the currently-selected color, as an integer from 0-239\n",
        name:"getHue",
        seeAlso:[
            {
                ref:"method:ColorPicker.setHue",
                description:null
            }
        ],
        returns:{
            description:"hue value",
            type:"int"
        },
        type:"method",
        definingClass:"class:ColorPicker"
    },
    "class:JSON":{
        methods:[
        ],
        ref:"class:JSON",
        classAttrs:[
        ],
        classMethods:[
            "classMethod:JSON.encode",
            "classMethod:JSON.decode"
        ],
        treeLocation:[
            "Client Reference/Data Binding"
        ],
        attrs:[
        ],
        description:"Utilities for working with JSON data.",
        name:"JSON",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:PickList.pickListProperties":{
        ref:"attr:PickList.pickListProperties",
        flags:"IR",
        description:"If specified this properties block will be applied to the ${isc.DocUtils.linkForRef('class:PickListMenu','pickList')}\n created for this FormItem.\n <P>\n <i>Note</i>: Not every ListGrid property is supported when assigned to a pickList.\n Where there is a dedicated API on the form item (such as ${isc.DocUtils.linkForRef('attr:PickList.pickListCellHeight','pickListCellHeight')}),\n we recommend that be used in favor of setting the equivalent property on the \n <code>pickListProperties</code> block. Also note that while setting\n ${isc.DocUtils.linkForRef('attr:ListGrid.showFilterEditor')} is a valid way to create a filterable pickList,\n this setting is not supported on a SelectItem with ${isc.DocUtils.linkForRef('attr:SelectItem.multiple')} set to\n true - this combination of settings can cause a selected value to be filtered out of\n view at which point further selection changes will discard that value. In general\n we recommend the ComboBoxItem class (with ${isc.DocUtils.linkForRef('attr:ComboBoxItem.addUnknownValues')} set\n as appropriate) as a better interface for filtering pickList data.",
        name:"pickListProperties",
        seeAlso:[
        ],
        valueType:"ListGrid Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"interface:PickList"
    },
    "method:Tree.loadChildren":{
        ref:"method:Tree.loadChildren",
        flags:"",
        description:" Load the children of a given node.\n <P>\n For a databound tree this will trigger a fetch against the Tree's DataSource.\n\n\n",
        name:"loadChildren",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            },
            {
                description:"Optional callback (stringMethod) to fire when loading                       completes. Has a single param <code>node</code> - the node whose \n                      children have been loaded, and is fired in the scope of the Tree.",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            }
        ],
        type:"method",
        definingClass:"class:Tree",
        groups:[
            "loadState"
        ]
    },
    "attr:PresetCriteriaItem.customOptionTitle":{
        ref:"attr:PresetCriteriaItem.customOptionTitle",
        flags:"IR",
        description:"The title to show for the ${isc.DocUtils.linkForRef('attr:PresetCriteriaItem.showCustomOption','custom option')}.",
        name:"customOptionTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"Custom...\"",
        type:"attr",
        definingClass:"class:PresetCriteriaItem",
        groups:[
            "i18nMessages"
        ]
    },
    "method:Calendar.backgroundMouseUp":{
        ref:"method:Calendar.backgroundMouseUp",
        flags:"",
        description:" Notification method fired when the mouse button is released over a background-cell, ie, \n one without an event.  Return false to cancel the default behavior of showing a dialog\n to add a new event with the passed dates.\n\n",
        name:"backgroundMouseUp",
        seeAlso:[
        ],
        params:[
            {
                description:"the datetime of the slot where the mouse button was depressed",
                optional:false,
                name:"startDate",
                defaultValue:null,
                type:"Date"
            },
            {
                description:"the datetime of the slot where the mouse button was released",
                optional:false,
                name:"endDate",
                defaultValue:null,
                type:"Date"
            }
        ],
        returns:{
            description:"return false to suppress default behavior of showing a dialog                      to add a new event with the passed dates.",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Calendar"
    },
    "attr:DSRequest.operationId":{
        ref:"attr:DSRequest.operationId",
        flags:"IR",
        description:"When a ${isc.DocUtils.linkForRef('interface:DataBoundComponent')} sends a DSRequest, the\n <code>dsRequest.operationId</code> will be automatically picked up from the\n <code>fetchOperation</code>, <code>addOperation</code>, etc properties of the\n DataBoundComponent.  \n <P>\n The <code>operationId</code> serves as an identifier that you can use to create\n variations on the 4 basic DataSource operations that are used by different components in\n different parts of your application.  For example, you may be using a standard\n <code>fetch</code> operation in one part of your application, however on another screen you\n want to perform a <code>fetch</code> operation on the same DataSource but interpret search\n criteria differently (eg full text search).  \n <P>\n If you declare more than one ${isc.DocUtils.linkForRef('class:OperationBinding')} for the same\n ${isc.DocUtils.linkForRef('attr:OperationBinding.operationType')}, you can specify an <code>operationId</code>\n ${isc.DocUtils.linkForRef('attr:OperationBinding.operationId','on the operationBinding')} which will cause that\n operationBinding to be used for dsRequests containing a matching <code>operationId</code>.\n This allows all the possible settings of an <code>operationBinding</code>, including\n ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation','wsOperation')} or ${isc.DocUtils.linkForRef('group:dmiOverview','DMI')} settings, to be switched on a\n per-component or per-request basis.  \n <P>\n For example, by setting the <code>fetchOperation</code> on a particular ListGrid, you could\n cause it to invoke a different server method via DMI, different\n ${isc.DocUtils.linkForRef('attr:OperationBinding.dataURL','dataURL')} or different \n ${isc.DocUtils.linkForRef('attr:OperationBinding.wsOperation','web service operation')}.\n <P>\n The <code>operationId</code> can also be directly received by the server in order to affect\n behavior.  When using the SmartClient Server, <code>operationId</code> can be accessed via\n dsRequest.getOperationId().  The ${isc.DocUtils.linkForRef('class:RestDataSource')} will also send the\n <code>operationId</code> to the server as part of the\n ${isc.DocUtils.linkForRef('attr:RestDataSource.metaDataPrefix','request metadata')}.  \n <P>\n Note that if you ${isc.DocUtils.linkForRef('method:DataSource.fetchData','manually invoke')} a DataSource operation, you can\n also specify operationId via the <code>requestProperties</code> parameter.\n <P>\n Note that the <code>operationId</code> has special significance in terms of whether two\n DSRequests are considered equivalent for caching and synchronization purposes - see\n ${isc.DocUtils.linkForRef('group:dsRequestEquivalence')}.",
        name:"operationId",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DSRequest",
        groups:[
            "operations"
        ]
    },
    "attr:StatefulCanvas.showFocus":{
        ref:"attr:StatefulCanvas.showFocus",
        deprecated:"as of SmartClient version 6.1 in favor of ${isc.DocUtils.linkForRef('attr:StatefulCanvas.showFocused')}",
        flags:"IRW",
        description:"Should we visibly change state when the canvas receives focus?  Note that by default the\n <code>over</code> state is used to indicate focus.",
        name:"showFocus",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:StatefulCanvas",
        groups:[
            "state"
        ]
    },
    "classMethod:DataSource.convertCriteria":{
        ref:"classMethod:DataSource.convertCriteria",
        flags:"",
        description:" Converts criteria expressed in SmartClient's simple criteria format to an AdvancedCriteria\n object.  \n\n",
        name:"convertCriteria",
        seeAlso:[
        ],
        params:[
            {
                description:"simple criteria",
                optional:false,
                name:"criteria",
                defaultValue:null,
                type:"Criteria"
            },
            {
                description:"default style of matching text.  Defaults to                                          \"substring\"",
                optional:true,
                name:"textMatchStyle",
                defaultValue:null,
                type:"TextMatchStyle"
            }
        ],
        returns:{
            description:"equivalent AdvancedCriteria object",
            type:"AdvancedCriteria"
        },
        type:"classMethod",
        definingClass:"class:DataSource"
    },
    "attr:OperationBinding.progressiveLoading":{
        ref:"attr:OperationBinding.progressiveLoading",
        flags:"IRW",
        description:"Sets ${isc.DocUtils.linkForRef('attr:DataSource.progressiveLoading','progressive loading mode')} for this particular \n operation, overriding the DataSource-level setting.  Note that this setting applies only\n to fetch operations - it has no effect if specified on any other kind of operation.",
        name:"progressiveLoading",
        seeAlso:[
            {
                ref:"attr:DataSource.progressiveLoading",
                description:null
            }
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        serverDS:"only",
        definingClass:"class:OperationBinding",
        groups:[
            "progressiveLoading"
        ]
    },
    "type:ListGridGroupState":{
        ref:"type:ListGridGroupState",
        description:"An object containing the stored grouping information for a listGrid.\n Note that this object is not intended to be interrogated directly, but may be stored\n (for example) as a blob on the server for state persistence across sessions.",
        name:"ListGridGroupState",
        seeAlso:[
        ],
        type:"type",
        groups:[
            "viewState"
        ]
    },
    "classMethod:isc.sortObjectByProperties":{
        ref:"classMethod:isc.sortObjectByProperties",
        flags:"",
        description:" Given a simple javascript object, return that object sorted by properties, such that when \n iterating through the properties of the object, values will show up in sorted order.<br>\n Usage example - may be used to sort a ${isc.DocUtils.linkForRef('attr:FormItem.valueMap','formItem valueMap')} defined\n as an object by display value.\n",
        name:"sortObjectByProperties",
        seeAlso:[
        ],
        params:[
            {
                description:"Object to sort",
                optional:false,
                name:"object",
                defaultValue:null,
                type:"object"
            },
            {
                description:"Comparator function to use when sorting the object properties",
                optional:true,
                name:"comparator",
                defaultValue:null,
                type:"function"
            }
        ],
        returns:{
            description:"sorted version of the object passed in.",
            type:"object"
        },
        type:"classMethod",
        definingClass:"class:isc"
    },
    "attr:ListGrid.exportAlternateRowBGColor":{
        ref:"attr:ListGrid.exportAlternateRowBGColor",
        flags:"IR",
        description:"When exporting data to Excel/OpenOffice format using ${isc.DocUtils.linkForRef('method:ListGrid.exportData','exportData()')} or\n${isc.DocUtils.linkForRef('method:ListGrid.exportClientData','exportClientData()')}, background color to use \nfor even-numbered rows, to create a \"banded\" or \"ledger\" effect.  Odd-numbered rows will \nuse the ${isc.DocUtils.linkForRef('attr:ListGrid.exportDefaultBGColor')}.\n <p>\nSee ${isc.DocUtils.linkForRef('group:exportBGColor')} for an overview.",
        name:"exportAlternateRowBGColor",
        seeAlso:[
        ],
        valueType:"CSSColor",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "exportBackgroundColor"
        ]
    },
    "method:Class.clearLogPriority":{
        ref:"method:Class.clearLogPriority",
        flags:"",
        description:" Clear this object's priority setting for a particular category, so that the category's \n effective priority returns to the specified priority for this category at the Log level\n (or <code>Log.defaultPriority</code> if not set).<br>\n To clear the Page-level priority setting for this log category use \n <code>isc.Log.clearPriority()</code> instead.\n\n",
        name:"clearLogPriority",
        seeAlso:[
            {
                ref:"classMethod:Log.clearPriority",
                description:null
            }
        ],
        params:[
            {
                description:"Category name. If not specified, all logging on this object                              will revert to default priority settings.",
                optional:false,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "method:ResultSet.getAllVisibleRows":{
        ref:"method:ResultSet.getAllVisibleRows",
        flags:"A",
        description:" Returns all rows that match the current criteria.\n <P>\n This method will not trigger a fetch to load more records.  <code>getAllVisibleRows()</code>\n will return null if ${isc.DocUtils.linkForRef('method:ResultSet.lengthIsKnown')} is false.\n <P>\n Records are returned in a new List but the Records within it are the same\n instances that the ResultSet is holding onto.  Hence it's safe to add or remove records from\n the List without affecting the ResultSet but modifying the Records themselves is a direct\n modification of the client-side cache.\n",
        name:"getAllVisibleRows",
        seeAlso:[
        ],
        returns:{
            description:"the records in the cache that match the current criteria, possibly null",
            type:"Array of Record"
        },
        type:"method",
        definingClass:"class:ResultSet"
    },
    "method:TextItem.setMask":{
        ref:"method:TextItem.setMask",
        flags:"",
        description:" Set the mask for this item.  Pass null to clear an existing mask.\n <P>\n Note that the current value of the field is cleared when changing the mask.\n",
        name:"setMask",
        seeAlso:[
            {
                ref:"attr:TextItem.mask",
                description:null
            }
        ],
        params:[
            {
                description:"mask to apply to text item",
                optional:false,
                name:"mask",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:TextItem"
    },
    "method:Canvas.getInnerWidth":{
        ref:"method:Canvas.getInnerWidth",
        flags:"A",
        description:" Returns the amount of space available for absolutely positioned child widget(s) or\n absolutely positioned HTML content, without introducing clipping, scrolling or overflow.\n <P>\n This is the space within the viewport of the widget (including padding, but excluding\n margins, borders or scrollbars) rendered at its specified size.\n\n",
        name:"getInnerWidth",
        seeAlso:[
            {
                ref:"method:Canvas.getInnerHeight",
                description:null
            },
            {
                ref:"method:Canvas.getInnerContentHeight",
                description:null
            },
            {
                ref:"method:Canvas.getInnerContentWidth",
                description:null
            }
        ],
        returns:{
            description:"inner width of the widget in pixels",
            type:"number"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "attr:ListGrid.sortAscendingImage":{
        ref:"attr:ListGrid.sortAscendingImage",
        flags:"IRWA",
        description:"Image to show when sorting ascending. See ${isc.DocUtils.linkForRef('object:ImgProperties')} for format.",
        name:"sortAscendingImage",
        seeAlso:[
        ],
        valueType:"ImgProperties",
        defaultValue:"{...}",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:ListGridField.emptyCellValue":{
        ref:"attr:ListGridField.emptyCellValue",
        flags:"IRW",
        description:"The value to display for a cell whose value is null or the empty string after\n applying ${isc.DocUtils.linkForRef('method:ListGridField.formatCellValue','formatting')} and valueMap (if any).\n <p>\n This is the field-specific attribute.  You may also set the emptyCellValue at the grid\n level to define the emptyCellValue for all empty fields in the grid.",
        name:"emptyCellValue",
        seeAlso:[
            {
                ref:"attr:ListGrid.emptyCellValue",
                description:null
            }
        ],
        valueType:"HTMLString",
        defaultValue:"\"&amp;nbsp;\"",
        type:"attr",
        examples:[
            "${isc.DocUtils.linkForExampleId('emptyValues')}"
        ],
        definingClass:"object:ListGridField",
        groups:[
            "display_values"
        ]
    },
    "attr:DynamicForm.titleWidth":{
        ref:"attr:DynamicForm.titleWidth",
        flags:"IRW",
        description:"The width in pixels allocated to the title of every item in this form.  If you\n          don't specify explicit ${isc.DocUtils.linkForRef('attr:DynamicForm.colWidths')}, you can set this\n          value to the string \"*\" to divide the usable space evenly between titles and\n          fields.",
        name:"titleWidth",
        seeAlso:[
        ],
        valueType:"number or \"*\"",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "formTitles"
        ]
    },
    "method:Calendar.eventAdded":{
        ref:"method:Calendar.eventAdded",
        flags:"",
        description:" Notification fired whenever a user adds an event.\n <P>\n In a calendar with a DataSource, eventAdded() fires <b>after</b> the event has\n been successfully added to the server\n\n",
        name:"eventAdded",
        seeAlso:[
        ],
        params:[
            {
                description:"the event that was added",
                optional:false,
                name:"event",
                defaultValue:null,
                type:"CalendarEvent"
            }
        ],
        type:"method",
        definingClass:"class:Calendar",
        groups:[
            "monthViewEvents"
        ]
    },
    "attr:Validator.type":{
        ref:"attr:Validator.type",
        flags:"IR",
        description:"Type of the validator.\n <p>\n This can be one of the built-in ${isc.DocUtils.linkForRef('type:ValidatorType')}, the string \"custom\" to define\n a custom validator, or the string \"serverCustom\" to define a server-only custom validator.",
        name:"type",
        seeAlso:[
        ],
        valueType:"ValidatorType | String",
        defaultValue:"null",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:Validator"
    },
    "attr:Canvas.snapOffsetTop":{
        ref:"attr:Canvas.snapOffsetTop",
        flags:"IRW",
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.snapTo','snapTo')} is defined for this widget, this property can be used to\n specify an offset in px or percentage for the top coordinate of this widget.\n <P>\n For example if <code>snapTo</code> is specified as <code>\"T\"</code> and\n <code>snapOffsetTop</code> is set to 6, this widget will be rendered 6px below the top\n edge of its parent or master element. . Alternatively if <code>snapTo</code> was set\n to <code>\"B\"</code>, a <code>snapOffsetTop</code> value of -6 would cause the\n component to be rendered 6px inside the bottom edge of its parent or ${isc.DocUtils.linkForRef('method:Canvas.getMasterCanvas','master canvas')}.",
        name:"snapOffsetTop",
        seeAlso:[
            {
                ref:"attr:Canvas.snapTo",
                description:null
            }
        ],
        valueType:"integer",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "sizing"
        ]
    },
    "type:MultipleAppearance":{
        ref:"type:MultipleAppearance",
        values:[
            {
                description:"a drop-down picklist that allows multiple choices by              clicking on a checkbox next to each item",
                value:"\"picklist\""
            },
            {
                description:"a grid that displays all items in-place. Multiple selection is               accomplished by ctrl-click or shift-click.",
                value:"\"grid\""
            }
        ],
        description:"Appearance for a SelectItem that allows multiple selection",
        name:"MultipleAppearance",
        seeAlso:[
        ],
        type:"type"
    },
    "method:DataSource.fetchRecord":{
        ref:"method:DataSource.fetchRecord",
        flags:"",
        description:" Fetch a single record from the DataSource by ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primary key')}.\n This simply calls ${isc.DocUtils.linkForRef('method:DataSource.fetchData')} after creating ${isc.DocUtils.linkForRef('type:Criteria')} that contain the primary\n key field and value.\n <p>\n If you call this method on a DataSource with a composite primary key - ie, one with \n multiple primaryKey fields - this method returns the first record where the first \n defined primary field matches the supplied pkValue; this may or may not be meaningful, \n depending on your use case.  Generally, for DataSources with composite keys, it makes\n more sense to use <code>fetchData()</code> directly, rather than this convenience \n method.\n\n",
        name:"fetchRecord",
        seeAlso:[
        ],
        params:[
            {
                description:"value for the field marked                      ${isc.DocUtils.linkForRef('attr:DataSourceField.primaryKey','primaryKey')}:true in this DataSource\n                      (or the first field so marked if there is more than one)",
                optional:false,
                name:"pkValue",
                defaultValue:null,
                type:"any"
            },
            {
                description:"callback to invoke on completion",
                optional:true,
                name:"callback",
                defaultValue:null,
                type:"DSCallback"
            },
            {
                description:"additional properties to set on the                                                   DSRequest that will be issued",
                optional:true,
                name:"requestProperties",
                defaultValue:null,
                type:"DSRequest Properties"
            }
        ],
        type:"method",
        definingClass:"class:DataSource"
    },
    "attr:Calendar.eventWindowStyle":{
        ref:"attr:Calendar.eventWindowStyle",
        flags:"IRW",
        description:"The base name for the CSS class applied to event windows within calendars.\n This style will have \"Header\", \"HeaderLabel\", and \"Body\" appended to it, according to \n which part of the event window is being styled. For example, to style the header, define\n a css class called 'eventWindowHeader'.",
        name:"eventWindowStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"eventWindow\"",
        type:"attr",
        definingClass:"class:Calendar",
        groups:[
            "appearance"
        ]
    },
    "attr:ImgButton.showClippedTitleOnHover":{
        ref:"attr:ImgButton.showClippedTitleOnHover",
        flags:"IRW",
        description:"If true and the title is clipped, then a hover containing the full title of this button\n is enabled.",
        name:"showClippedTitleOnHover",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:ImgButton",
        groups:[
            "hovers"
        ]
    },
    "method:Tree.getLeaves":{
        ref:"method:Tree.getLeaves",
        flags:"",
        description:"\n Return all the first-level leaves of a node.\n <br><br>\n For load on demand trees (those that only have a partial representation client-side), this\n method will return only nodes that have already been loaded from the server.\n\n",
        name:"getLeaves",
        seeAlso:[
        ],
        params:[
            {
                description:"node in question",
                optional:false,
                name:"node",
                defaultValue:null,
                type:"TreeNode"
            }
        ],
        returns:{
            description:"List of immediate children that are leaves.",
            type:"List"
        },
        type:"method",
        definingClass:"class:Tree"
    },
    "method:DataBoundComponent.addSummaryField":{
        ref:"method:DataBoundComponent.addSummaryField",
        flags:"",
        description:" Convenience method to display a ${isc.DocUtils.linkForRef('class:SummaryBuilder')} to create a new Summary Field.  This \n is equivalent to calling ${isc.DocUtils.linkForRef('method:DataBoundComponent.editSummaryField','editSummaryField()')} with \n no parameter.\n\n",
        name:"addSummaryField",
        seeAlso:[
        ],
        type:"method",
        definingClass:"interface:DataBoundComponent",
        groups:[
            "summaryFields"
        ]
    },
    "attr:SliderItem.sliderConstructor":{
        ref:"attr:SliderItem.sliderConstructor",
        flags:"IR",
        description:"Constructor class for this item's ${isc.DocUtils.linkForRef('class:Slider')}.",
        name:"sliderConstructor",
        seeAlso:[
        ],
        valueType:"Class",
        defaultValue:"Slider",
        type:"attr",
        definingClass:"class:SliderItem"
    },
    "attr:ListGrid.locateColumnsBy":{
        ref:"attr:ListGrid.locateColumnsBy",
        flags:"IRW",
        description:"When ${isc.DocUtils.linkForRef('classMethod:AutoTest.getElement')} is used to parse locator strings generated by\n ${isc.DocUtils.linkForRef('classMethod:AutoTest.getLocator')} for a cell in this grid, how should the column be identified?\n <br>\n Note that getLocator() will actually store all available information about the column in\n the generated string -- this attribute effects how a stored string will be parsed only.\n <P>\n Valid options area:\n <ul>\n <li><code>\"fieldName\"</code> Attempt to identify by fieldName.</li>\n <li><code>\"index\"</code> Attempt to identify by colNum (index in the fields array).</li>\n </ul>\n If unset, default behavior is to identify by fieldName (if available), otherwise by index.",
        name:"locateColumnsBy",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "autoTest"
        ]
    },
    "method:Selection.setSelected":{
        ref:"method:Selection.setSelected",
        flags:"A",
        description:" Select or deselect a particular item.<br><br>\n All other selection routines go through this one, so by observing this routine you can\n monitor all selection changes.\n",
        name:"setSelected",
        seeAlso:[
        ],
        params:[
            {
                description:"object to select",
                optional:false,
                name:"item",
                defaultValue:null,
                type:"object"
            },
            {
                description:"turn selection on or off",
                optional:false,
                name:"newState",
                defaultValue:null,
                type:"boolean"
            }
        ],
        returns:{
            description:"true == selection actually changed, false == no change",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Selection",
        groups:[
            "selection"
        ]
    },
    "attr:SelectItem.saveOnEnter":{
        ref:"attr:SelectItem.saveOnEnter",
        flags:"IRW",
        description:"Select items will submit their containing form on enter keypress \n if ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOnEnter','saveOnEnter')} is true. Setting this property to\n <code>false</code> will disable this behavior.\n <P>\n Note that if the drop down list of options (pickList) is visible an\n <code>Enter</code> keypress is used to select a value from the available set of\n options and will not automatically cause form submission.",
        name:"saveOnEnter",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:SelectItem"
    },
    "attr:Canvas.margin":{
        ref:"attr:Canvas.margin",
        flags:"IRW",
        description:"Set the CSS Margin, in pixels, for this component.  Margin provides blank space outside\n of the border.\n <P>\n This property sets the same thickness of margin on every side.  Differing per-side\n margins can be set in a CSS style and applied via ${isc.DocUtils.linkForRef('attr:Canvas.styleName')}.\n <P>\n Note that the specified size of the widget will be the size <b>including</b> the margin\n thickness on each side.",
        name:"margin",
        setter:[
            "setMargin"
        ],
        seeAlso:[
        ],
        valueType:"number",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "appearance"
        ]
    },
    "attr:DataSource.auditTypeFieldName":{
        ref:"attr:DataSource.auditTypeFieldName",
        flags:"IR",
        description:"For DataSources with ${isc.DocUtils.linkForRef('attr:DataSource.audit','auditing enabled')}, specifies the field name used to store\n the ${isc.DocUtils.linkForRef('type:DSOperationType','operationType')} (in a field of type \"text\").  If empty\n string is specified as the field name, the audit DataSource will not store this field.",
        name:"auditTypeFieldName",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"audit_operationType\"",
        type:"attr",
        serverDS:"only",
        definingClass:"class:DataSource"
    },
    "attr:RPCRequest.allowIE9Leak":{
        ref:"attr:RPCRequest.allowIE9Leak",
        flags:"IRA",
        description:"Advanced flag to avoid a potential memory leak in Internet Explorer 9 for requests\n with JSON formatted responses.\n <P>\n This attribute may be set to <code>false</code> to explicitly enable the \n workaround described ${isc.DocUtils.linkForRef('classAttr:RPCManager.allowIE9Leak','here')} for this request, \n avoiding a potential memory leak in Internet Explorer 9.\n <P>\n This workaround has a limitation in that if parsing the JSON response generates\n certain object types including JavaScript <code>Date</code> or <code>function</code>\n objects, attempts to interact with these objects can subsequently lead to a \n JavaScript error with the message <code>\"Can't execute code from a freed script\"</code>.\n <P>\n This workaround therefore may not be suitable for all transactions or dataSources\n within a given application.\n <P>\n This property may also be set globally within an application (via \n ${isc.DocUtils.linkForRef('classAttr:RPCManager.allowIE9Leak')})_.\n <P>\n Note: This memory leak and workaround is discussed further in the online \n <a href=\"http://forums.smartclient.com/showthread.php?t=8159\">SmartClient FAQ</a>.",
        name:"allowIE9Leak",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RPCRequest"
    },
    "group:Prompting":{
        ref:"group:Prompting",
        treeLocation:[
            "Client Reference/Control"
        ],
        refs:[
            "class:LoginDialog",
            "classAttr:Dialog.Prompt",
            "classAttr:Dialog.Warn",
            "classAttr:Dialog.Ask",
            "classMethod:isc.showPrompt",
            "classMethod:isc.clearPrompt",
            "classMethod:isc.showFadingPrompt",
            "classMethod:isc.warn",
            "classMethod:isc.say",
            "classMethod:isc.ask",
            "classMethod:isc.confirm",
            "classMethod:isc.askForValue",
            "classMethod:isc.showLoginDialog"
        ],
        description:"Objects / methods used for displaying prompts and warnings to the user via (possibly modal)\n  isc Dialog objects.",
        name:"Prompting",
        seeAlso:[
        ],
        type:"group"
    },
    "group:fieldLevelAuth":{
        ref:"group:fieldLevelAuth",
        title:"Field-Level Security",
        refs:[
            "attr:DataSource.creatorOverrides",
            "attr:DataSourceField.viewRequiresAuthentication",
            "attr:DataSourceField.editRequiresAuthentication",
            "attr:DataSourceField.initRequiresAuthentication",
            "attr:DataSourceField.updateRequiresAuthentication",
            "attr:DataSourceField.viewRequiresRole",
            "attr:DataSourceField.editRequiresRole",
            "attr:DataSourceField.initRequiresRole",
            "attr:DataSourceField.updateRequiresRole",
            "attr:DataSourceField.viewRequires",
            "attr:DataSourceField.editRequires",
            "attr:DataSourceField.initRequires",
            "attr:DataSourceField.updateRequires",
            "attr:DataSourceField.creatorOverrides",
            "attr:OperationBinding.creatorOverrides"
        ],
        description:"Properties that provide declarative security features at the level of individual fields",
        name:"fieldLevelAuth",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:TileLayout.tileMargin":{
        ref:"attr:TileLayout.tileMargin",
        flags:"IR",
        description:"Margin in between tiles.  Can be set on a per-axis basis with ${isc.DocUtils.linkForRef('attr:TileLayout.tileHMargin')} and\n ${isc.DocUtils.linkForRef('attr:TileLayout.tileVMargin')}.",
        name:"tileMargin",
        setter:[
            "setTileMargin"
        ],
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"10",
        type:"attr",
        definingClass:"class:TileLayout",
        groups:[
            "layoutMargin"
        ]
    },
    "attr:Calendar.canEditLane":{
        ref:"attr:Calendar.canEditLane",
        flags:"IR",
        description:"Can we edit the lane of the event, specified by the ${isc.DocUtils.linkForRef('attr:Calendar.laneNameField')}?\n If so, the event can be dragged to a different ${isc.DocUtils.linkForRef('attr:Calendar.lanes','lane')} and, when it's editor is\n shown, an additional drop-down widget is provided allowing the user to select a different\n lane.\n <P>\n In either case, the event's ${isc.DocUtils.linkForRef('attr:Calendar.laneNameField')} is updated automatically.\n <P>\n This setting can be overridden on each ${isc.DocUtils.linkForRef('attr:CalendarEvent.canEditLane','event')}.",
        name:"canEditLane",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Calendar"
    },
    "attr:FormItem.titleVAlign":{
        ref:"attr:FormItem.titleVAlign",
        flags:"IRW",
        description:"Vertical alignment of this item's title in its cell. Only applies when\n ${isc.DocUtils.linkForRef('attr:FormItem.titleOrientation')} is <code>\"left\"</code> or <code>\"right\"</code>.",
        name:"titleVAlign",
        seeAlso:[
        ],
        valueType:"VerticalAlignment",
        defaultValue:"Canvas.CENTER",
        type:"attr",
        definingClass:"class:FormItem",
        groups:[
            "title"
        ]
    },
    "attr:SpinnerItem.maskPadChar":{
        ref:"attr:SpinnerItem.maskPadChar",
        flags:"IRWA",
        description:"Not applicable to a SpinnerItem.",
        name:"maskPadChar",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\" \"",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "attr:DynamicForm.fields":{
        ref:"attr:DynamicForm.fields",
        flags:"IRW",
        getter:[
            "getFields"
        ],
        description:"An array of field objects, specifying the order, layout, and types of each field in the\n DynamicForm.\n <p>\n When both <code>dynamicForm.fields</code> and <code>dynamicForm.dataSource</code> are\n set, <code>dynamicForm.fields</code> acts as a set of overrides as explained in\n ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields')}.\n <P>\n See ${isc.DocUtils.linkForRef('group:formLayout','Form Layout')} for information about how flags specified on\n the FormItems control how the form is laid out.",
        name:"fields",
        setter:[
            "setFields"
        ],
        seeAlso:[
            {
                ref:"class:FormItem",
                description:null
            }
        ],
        valueType:"Array of FormItem Properties",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:DynamicForm",
        groups:[
            "items"
        ]
    },
    "method:SelectItem.setValueMap":{
        ref:"method:SelectItem.setValueMap",
        flags:"",
        description:" Set the valueMap for this item.\n",
        name:"setValueMap",
        seeAlso:[
            "attr:valueMap"
        ],
        params:[
            {
                description:"new valueMap",
                optional:false,
                name:"valueMap",
                defaultValue:null,
                type:"Array or Object"
            }
        ],
        type:"method",
        definingClass:"class:SelectItem",
        groups:[
            "valueMap"
        ]
    },
    "attr:HiliteRule.backgroundColorTitle":{
        ref:"attr:HiliteRule.backgroundColorTitle",
        flags:"IR",
        description:"The ${isc.DocUtils.linkForRef('attr:FormItem.title','title')} of the 'Background' color picker.",
        name:"backgroundColorTitle",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"\"Background\"",
        type:"attr",
        definingClass:"class:HiliteRule",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:Menu.submenuConstructor":{
        ref:"attr:Menu.submenuConstructor",
        flags:"IR",
        description:"When using a Tree or hierarchical DataSource as the menu's data, optional subclass of\n Menu that should be used when generating submenus.",
        name:"submenuConstructor",
        seeAlso:[
        ],
        valueType:"SCClassName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Menu"
    },
    "method:ListGrid.setShowHeader":{
        ref:"method:ListGrid.setShowHeader",
        flags:"",
        description:" Show or hide the ListGrid header.\n",
        name:"setShowHeader",
        seeAlso:[
        ],
        params:[
            {
                description:"true to show the header, false to hide it.",
                optional:false,
                name:"show",
                defaultValue:null,
                type:"boolean"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader"
        ]
    },
    "attr:RichTextEditor.moveFocusOnTab":{
        ref:"attr:RichTextEditor.moveFocusOnTab",
        flags:"IRW",
        description:"If the user presses the \"Tab\" key, should focus be taken from this editor?\n If set to <code>false</code> a \"Tab\" keypress will cause a Tab character\n to be inserted into the text, and focus will be left in the edit area.",
        name:"moveFocusOnTab",
        setter:[
            "setMoveFocusOnTab"
        ],
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:RichTextEditor"
    },
    "method:ListGrid.setAutoFitData":{
        ref:"method:ListGrid.setAutoFitData",
        flags:"",
        description:" Setter for ${isc.DocUtils.linkForRef('attr:ListGrid.autoFitData')}.\n",
        name:"setAutoFitData",
        seeAlso:[
        ],
        params:[
            {
                description:"One of <code>\"vertical\"</code>, <code>\"horizontal\"</code>  or <code>\"both\"</code>. To disable auto fit behavior, pass in <code>null</code>.",
                optional:false,
                name:"autoFitData",
                defaultValue:null,
                type:"string"
            }
        ],
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "autoFitData"
        ]
    },
    "classMethod:Date.setInputFormat":{
        ref:"classMethod:Date.setInputFormat",
        flags:"",
        description:" Sets up the default system-wide input format for strings being parsed into dates via\n <code>Date.parseInput()</code>. This will effect how SmartClient components showing editable\n date or datetime fields parse user-entered values into live Date objects.\n <P>\n The input format can be specified as a ${isc.DocUtils.linkForRef('type:DateInputFormat')} - a 3 character string like\n <code>\"MDY\"</code> indicating the order of the Month, Day and Year components of date strings.\n <P>\n As an example - an input format of \"MDY\" would parse \"01/02/1999\" to Jan 2nd 1999<br>\n This standard parsing logic will also handle date-time strings such as \"01/02/1999 08:45\", or\n \"01/02/1999 16:21:05\".\n <P>\n Notes:\n <ul>\n <li>If the inputFormat is not explicitly set,the system automatically determines\n     the standard input format will be based on the specified ${isc.DocUtils.linkForRef('classMethod:Date.setShortDisplayFormat','Date.shortDisplayFormat')}\n     wherever possible.\n     For example if the short display format has been set to \"toEuropeanShortDate\" the input\n     format will default to \"DMY\".</li>\n <li>The default date parsing functionality built into SmartClient will handle dates presented\n     with any separator string, and can handle 1 or 2 digit day and month values and 2 or 4\n     digit year values. This means that in many cases custom date display formats can be parsed\n     back to Date values without the need for a custom parser function. However if more\n     sophisticated parsing logic is required, a function may be passed into this method. In\n     this case the parser function should be able to handle parsing date and datetime values\n     formatted via ${isc.DocUtils.linkForRef('method:Date.toShortDate')} and ${isc.DocUtils.linkForRef('method:Date.toShortDateTime')}.</li>\n <li>Date parsing and formatting logic may be overridden at the component level by setting\n     properties directly on the component or field in question.</li>\n </ul>\n",
        name:"setInputFormat",
        seeAlso:[
            {
                ref:"classMethod:Date.parseInput",
                description:null
            }
        ],
        params:[
            {
                description:"Default format for strings to be parsed into Dates. <smartclient>\n If this method is passed a function, it is expected to take a single parameter\n (the formatted date string), and return the appropriate Javascript Date object (or null if\n appropriate).\n </smartclient>",
                optional:false,
                name:"format",
                defaultValue:null,
                type:"DateInputFormat | function"
            }
        ],
        type:"classMethod",
        examples:[
            "${isc.DocUtils.linkForExampleId('dateFormat')}",
            "${isc.DocUtils.linkForExampleId('customDateFormat')}"
        ],
        definingClass:"class:Date"
    },
    "method:DynamicForm.isNewRecord":{
        ref:"method:DynamicForm.isNewRecord",
        flags:"",
        description:" Returns true if ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOperationType')} is currently \"add\".  See\n ${isc.DocUtils.linkForRef('attr:DynamicForm.saveOperationType')}.\n\n",
        name:"isNewRecord",
        seeAlso:[
        ],
        returns:{
            description:"whether this form will use an \"add\" operation when saving",
            type:"Boolean"
        },
        type:"method",
        definingClass:"class:DynamicForm"
    },
    "attr:PortalLayout.numColumns":{
        ref:"attr:PortalLayout.numColumns",
        flags:"IR",
        getter:[
            "getNumColumns"
        ],
        description:"Initial number of columns to show in this PortalLayout. Note that after initialization\n columns should be added / removed via ${isc.DocUtils.linkForRef('method:PortalLayout.addColumn')} and ${isc.DocUtils.linkForRef('method:PortalLayout.removeColumn')}.\n numColumns is ignored if you initialize the ${isc.DocUtils.linkForRef('attr:PortalLayout.portlets')} attribute, since the portlets\n attribute will imply how many columns to create.",
        name:"numColumns",
        seeAlso:[
            {
                ref:"attr:PortalLayout.portlets",
                description:null
            }
        ],
        valueType:"int",
        defaultValue:"2",
        type:"attr",
        definingClass:"class:PortalLayout"
    },
    "attr:IconButton.largeIconSize":{
        ref:"attr:IconButton.largeIconSize",
        flags:"IRW",
        description:"The size of the large icon for this button.  If ${isc.DocUtils.linkForRef('attr:IconButton.largeIcon')} is not specified, the\n ${isc.DocUtils.linkForRef('attr:IconButton.icon','normal icon')} will be stretched to this size.",
        name:"largeIconSize",
        seeAlso:[
        ],
        valueType:"Number",
        defaultValue:"32",
        type:"attr",
        definingClass:"class:IconButton"
    },
    "attr:ListGrid.printMaxRows":{
        ref:"attr:ListGrid.printMaxRows",
        flags:"IRWA",
        description:"Advanced property - when generating printHTML for a large ListGrid, rows are printed in\n batches in order to avoid triggering a native \"script is running slowly\" browser dialog.\n <P>\n For grids with exceptional numbers of columns or complex formatting logic, this number\n might need to be adjusted downward.",
        name:"printMaxRows",
        seeAlso:[
        ],
        valueType:"int",
        defaultValue:"100",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "printing"
        ]
    },
    "attr:HeaderSpan.align":{
        ref:"attr:HeaderSpan.align",
        flags:"IR",
        description:"Horizontal alignment of the title of this headerSpan.",
        name:"align",
        seeAlso:[
        ],
        valueType:"Alignment",
        defaultValue:"\"center\"",
        type:"attr",
        definingClass:"object:HeaderSpan",
        groups:[
            "headerSpan"
        ]
    },
    "attr:Canvas.dragRepositionAppearance":{
        ref:"attr:Canvas.dragRepositionAppearance",
        flags:"IRWA",
        description:"If ${isc.DocUtils.linkForRef('attr:Canvas.canDragReposition')} is true, this attributes specifies the visual appearance\n to show during drag reposition. If unset ${isc.DocUtils.linkForRef('attr:Canvas.dragAppearance')} will be used.",
        name:"dragRepositionAppearance",
        seeAlso:[
        ],
        valueType:"DragAppearance",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Canvas",
        groups:[
            "dragdrop"
        ]
    },
    "method:ListGrid.getField":{
        ref:"method:ListGrid.getField",
        flags:"",
        description:" Given a column number or field name, return the field definition.\n <P>\n When using ${isc.DocUtils.linkForRef('attr:DataBoundComponent.fields','DataBinding')}, the field definition may be\n a mix of information derived from ${isc.DocUtils.linkForRef('attr:ListGrid.fields')} and ${isc.DocUtils.linkForRef('attr:ListGrid.dataSource')}.\n\n",
        name:"getField",
        seeAlso:[
        ],
        params:[
            {
                description:"number or id of the field.",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"int | ID"
            }
        ],
        returns:{
            description:"field definition",
            type:"ListGridField"
        },
        type:"method",
        definingClass:"class:ListGrid"
    },
    "method:GridRenderer.refreshRow":{
        ref:"method:GridRenderer.refreshRow",
        flags:"A",
        description:" Refresh an entire row of cells without redrawing the grid.\n <P>\n The cells' values, CSS classes, and CSS text will be refreshed, to the current values\n returned by getCellValue(), getCellStyle() and getCellCSSText() respectively.\n\n",
        name:"refreshRow",
        seeAlso:[
            {
                ref:"method:GridRenderer.refreshCellStyle",
                description:"to update just styling"
            },
            {
                ref:"method:GridRenderer.refreshCell",
                description:null
            }
        ],
        params:[
            {
                description:"row number of cell to refresh",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            }
        ],
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "appearance"
        ]
    },
    "attr:ImgButton.baseStyle":{
        ref:"attr:ImgButton.baseStyle",
        flags:"IRW",
        description:"Base CSS style className applied to the component. \n <P>\n As the component changes ${isc.DocUtils.linkForRef('attr:StatefulCanvas.state')} and/or is selected, \n suffixes will be added to the base style. In some cases more than one suffix will \n be appended to reflect a combined state (\"Selected\" + \"Disabled\", for example).\n <P>\n See ${isc.DocUtils.linkForRef('method:StatefulCanvas.getStateSuffix')} for a description of the default set\n of suffixes which may be applied to the baseStyle",
        name:"baseStyle",
        setter:[
            "setBaseStyle"
        ],
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"\"imgButton\"",
        type:"attr",
        definingClass:"class:ImgButton"
    },
    "method:PrintCanvas.print":{
        ref:"method:PrintCanvas.print",
        flags:"",
        description:" Show the native print dialog and allow the user to print the current HTML for\n this printCanvas. Note that the PrintCanvas must be drawn to be printed.\n",
        name:"print",
        seeAlso:[
        ],
        type:"method",
        definingClass:"class:PrintCanvas"
    },
    "method:SpinnerItem.getPreviousValue":{
        ref:"method:SpinnerItem.getPreviousValue",
        flags:"A",
        description:" When ${isc.DocUtils.linkForRef('attr:SpinnerItem.min','min')} and ${isc.DocUtils.linkForRef('attr:SpinnerItem.max','max')} are both null or unspecified,\n this method is called to get the previous lower value from the currentValue. The default\n implementation returns (currentValue&nbsp;<b>+</b>&nbsp;step) because the step parameter\n is based on <em>the opposite</em> of ${isc.DocUtils.linkForRef('attr:SpinnerItem.step','this.step')}.\n <p>\n To indicate that the given currentValue is the minimum value, return currentValue again.\n <p>\n Implementations should expect to be passed any value for currentValue. Also, if\n ${isc.DocUtils.linkForRef('attr:SpinnerItem.step')} is non-negative, getPreviousValue() must induce a\n <a href='http://en.wikipedia.org/wiki/Monotonic_function' target='_blank'>monotonically decreasing (non-increasing) function</a>;\n otherwise, getPreviousValue() must induce a monotonically increasing function.\n",
        name:"getPreviousValue",
        seeAlso:[
            {
                ref:"method:SpinnerItem.getNextValue",
                description:null
            }
        ],
        params:[
            {
                description:"the current value of this SpinnerItem",
                optional:false,
                name:"currentValue",
                defaultValue:null,
                type:"number"
            },
            {
                description:"a suggested step value based on the opposite of ${isc.DocUtils.linkForRef('attr:SpinnerItem.step','this.step')} and how long the user has been continuously decreasing the value.",
                optional:false,
                name:"step",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the next higher value",
            type:"number"
        },
        type:"method",
        definingClass:"class:SpinnerItem"
    },
    "method:FacetChart.getPointHoverHTML":{
        ref:"method:FacetChart.getPointHoverHTML",
        flags:"",
        description:" When ${isc.DocUtils.linkForRef('attr:FacetChart.showDataPoints')} is true and the mouse hovers over a point, this method is called\n and may return HTML to show in a hover.\n\n",
        name:"getPointHoverHTML",
        seeAlso:[
        ],
        params:[
            {
                description:"the value at the point",
                optional:false,
                name:"value",
                defaultValue:null,
                type:"float"
            },
            {
                description:"the record at the point",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"Record"
            }
        ],
        returns:{
            description:"String of HTML to show in a hover",
            type:"HTMLString"
        },
        type:"method",
        definingClass:"class:FacetChart"
    },
    "method:Canvas.dragRepositionStart":{
        ref:"method:Canvas.dragRepositionStart",
        flags:"A",
        description:"\n Executed when dragging first starts. No default implementation.  Create this handler to set\n things up for the drag reposition.\n\n",
        name:"dragRepositionStart",
        seeAlso:[
            {
                ref:"method:Canvas.getOffsetX",
                description:null
            },
            {
                ref:"method:Canvas.getOffsetY",
                description:null
            }
        ],
        returns:{
            description:"false to cancel the drag reposition action",
            type:"boolean"
        },
        type:"method",
        definingClass:"class:Canvas",
        groups:[
            "widgetEvents"
        ]
    },
    "classMethod:EventHandler.getDragTarget":{
        ref:"classMethod:EventHandler.getDragTarget",
        flags:"A",
        description:"\n Returns the current dragTarget.  This is the component on which the drag and drop\n interaction was initiated.  This only returns something meaningful during a drag and drop\n interaction.\n\n",
        name:"getDragTarget",
        seeAlso:[
            {
                ref:"attr:Canvas.dragTarget",
                description:null
            }
        ],
        returns:{
            description:"The dragTarget.",
            type:"Canvas"
        },
        type:"classMethod",
        definingClass:"class:EventHandler",
        groups:[
            "mouseEvents"
        ]
    },
    "attr:FacetChart.colorMutePercent":{
        ref:"attr:FacetChart.colorMutePercent",
        flags:"IR",
        description:"Should be set to a number between -100 and 100.  If set, all colors in the chart are \"muted\" by\n this percentage by shifting them toward white (or for negative numbers, toward black).",
        name:"colorMutePercent",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:FacetChart"
    },
    "method:ResultSet.findIndex":{
        ref:"method:ResultSet.findIndex",
        flags:"",
        description:" Like ${isc.DocUtils.linkForRef('method:List.findIndex')}.  Checks only loaded rows and will not trigger a fetch.\n",
        name:"findIndex",
        seeAlso:[
        ],
        params:[
            {
                description:"property to match, or if an Object is passed, set of                                        properties and values to match",
                optional:false,
                name:"propertyName",
                defaultValue:null,
                type:"String or Object or AdvancedCriteria"
            },
            {
                description:"value to compare against (if propertyName is a string)",
                optional:true,
                name:"value",
                defaultValue:null,
                type:"any"
            }
        ],
        returns:{
            description:"index of the first matching Object or -1 if not found",
            type:"int"
        },
        type:"method",
        definingClass:"class:ResultSet",
        groups:[
            "access",
            "find"
        ]
    },
    "attr:DrawnValue.record":{
        ref:"attr:DrawnValue.record",
        flags:"IR",
        description:"The data record of the data point from which this <code>drawnValue</code> was created.\n <P>\n Note that a chart with an ${isc.DocUtils.linkForRef('attr:Facet.inlinedValues','inlined facet')} or a\n ${isc.DocUtils.linkForRef('attr:FacetChart.extraAxisMetrics','multi-axis chart')} may define multiple data points in\n the same record, each of which will correspond to a different <code>drawnValue</code>.\n The way to uniquely identify the data value of this particular <code>drawnValue</code>\n is to use the ${isc.DocUtils.linkForRef('attr:DrawnValue.facetValues')}.",
        name:"record",
        seeAlso:[
        ],
        valueType:"CellRecord",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:DrawnValue"
    },
    "attr:Window.showBody":{
        ref:"attr:Window.showBody",
        flags:"IRWA",
        description:"If true, draw the body contents when this Window is drawn.",
        name:"showBody",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"true",
        type:"attr",
        definingClass:"class:Window",
        groups:[
            "appearance",
            "body"
        ]
    },
    "attr:MetricSettings.showAxisLine":{
        ref:"attr:MetricSettings.showAxisLine",
        flags:"IR",
        description:"Whether to show an axis line for this extra value axis if it is not placed\n directly adjacent to the chart rect.  The default setting is the value\n of the ${isc.DocUtils.linkForRef('attr:FacetChart.showChartRect','showChartRect')} property of the FacetChart.",
        name:"showAxisLine",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:MetricSettings"
    },
    "attr:MultiFileItem.editButton":{
        ref:"attr:MultiFileItem.editButton",
        flags:"IR",
        description:"Button for launching a picker to add new files for upload.  Supports the properties of a\n ${isc.DocUtils.linkForRef('object:FormItemIcon')}.",
        name:"editButton",
        seeAlso:[
        ],
        valueType:"AutoChild StatefulCanvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:MultiFileItem"
    },
    "group:htmlElement":{
        ref:"group:htmlElement",
        refs:[
            "method:Canvas.setHtmlElement",
            "method:Canvas.setHtmlPosition",
            "attr:Canvas.htmlElement",
            "attr:Canvas.htmlPosition"
        ],
        name:"htmlElement",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:CalendarEvent.description":{
        ref:"attr:CalendarEvent.description",
        flags:"IRW",
        description:"String which represents the description of a ${isc.DocUtils.linkForRef('object:CalendarEvent')}\n The name of this field within the CalendarEvent can be changed via\n ${isc.DocUtils.linkForRef('attr:Calendar.descriptionField')}",
        name:"description",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:CalendarEvent"
    },
    "class:IMenuButton":{
        methods:[
            "method:IMenuButton.setShowMenuButtonImage",
            "method:IMenuButton.setShowMenuBelow"
        ],
        ref:"class:IMenuButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
            "attr:IMenuButton.title",
            "attr:IMenuButton.height",
            "attr:IMenuButton.showMenuButtonImage",
            "attr:IMenuButton.menuButtonImage",
            "attr:IMenuButton.menuButtonImageUp",
            "attr:IMenuButton.hiliteAccessKey",
            "attr:IMenuButton.showMenuBelow",
            "attr:IMenuButton.menu",
            "attr:IMenuButton.menuAnimationEffect",
            "attr:IMenuButton.autoDestroyMenu"
        ],
        description:"StretchImgButton based version of the ${isc.DocUtils.linkForRef('class:MenuButton')} class.",
        name:"IMenuButton",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:DataSource.canMultiSort":{
        ref:"attr:DataSource.canMultiSort",
        flags:"IR",
        description:"When true, indicates that this DataSource supports multi-level sorting.",
        name:"canMultiSort",
        seeAlso:[
        ],
        valueType:"boolean",
        defaultValue:"true",
        type:"attr",
        serverDS:"allowed",
        definingClass:"class:DataSource"
    },
    "method:ListGrid.getCellValue":{
        ref:"method:ListGrid.getCellValue",
        flags:"A",
        description:"          Obtains the display value for a specific cell according to the given input\n          parameters.<br>\n          To format the value displayed in the cell, make use of the\n          ${isc.DocUtils.linkForRef('method:ListGrid.formatCellValue','formatting')} methods rather than \n          overriding this method directly.\n",
        name:"getCellValue",
        seeAlso:[
            {
                ref:"method:ListGrid.formatCellValue",
                description:null
            }
        ],
        params:[
            {
                description:"the current record object",
                optional:false,
                name:"record",
                defaultValue:null,
                type:"object"
            },
            {
                description:"number of the record in the current set of displayed                                      record (e.g. 0 for the first displayed record)",
                optional:false,
                name:"recordNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"number of the field in the listGrid.fields array",
                optional:false,
                name:"fieldNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"display value for this cell",
            type:"string"
        },
        type:"method",
        definingClass:"class:ListGrid",
        groups:[
            "data"
        ]
    },
    "attr:ListGrid.showRollOver":{
        ref:"attr:ListGrid.showRollOver",
        flags:"IRW",
        description:"Should a different styling be shown for the cell that the mouse is over? By default, this is\n <code>true</code>, except on touch devices (${isc.DocUtils.linkForRef('classAttr:Browser.isTouch')} is <code>true</code>)\n for which the default <code>showRollOver</code> setting is <code>false</code>.\n <p>\n If <code>true</code>, the cell style will have an \"Over\" suffix.",
        name:"showRollOver",
        seeAlso:[
            {
                ref:"attr:ListGrid.baseStyle",
                description:null
            }
        ],
        valueType:"Boolean",
        defaultValue:"see below",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "appearance"
        ]
    },
    "attr:GaugeSector.startAngle":{
        ref:"attr:GaugeSector.startAngle",
        flags:"IR",
        description:null,
        name:"startAngle",
        seeAlso:[
        ],
        valueType:"float",
        defaultValue:"0",
        type:"attr",
        definingClass:"object:GaugeSector"
    },
    "method:Callbacks.PrintCanvasCallback":{
        ref:"method:Callbacks.PrintCanvasCallback",
        flags:"",
        description:" Callback executed when a Canvas is being printed. \n\n",
        name:"PrintCanvasCallback",
        seeAlso:[
        ],
        params:[
            {
                description:"The canvas being printed.",
                optional:false,
                name:"printCanvas",
                defaultValue:null,
                type:"PrintCanvas"
            }
        ],
        type:"method",
        definingClass:"class:Callbacks"
    },
    "method:ToolStripGroup.setTitleOrientation":{
        ref:"method:ToolStripGroup.setTitleOrientation",
        flags:"",
        description:" This method forcibly sets the orientation of this group's title after initial draw.\n \n",
        name:"setTitleOrientation",
        seeAlso:[
        ],
        params:[
            {
                description:"the new orientation for the title, either bottom or top",
                optional:false,
                name:"orientation",
                defaultValue:null,
                type:"VerticalAlignment"
            }
        ],
        type:"method",
        definingClass:"class:ToolStripGroup"
    },
    "method:Class.logIsDebugEnabled":{
        ref:"method:Class.logIsDebugEnabled",
        flags:"",
        description:" Check whether a message logged at \"debug\" priority would be visible in the log.\n <P>\n As with logDebug, category is defaulted to the current className.  Use this method to avoid\n putting together expensive log messages if they will never appear in the log.\n\n",
        name:"logIsDebugEnabled",
        seeAlso:[
        ],
        params:[
            {
                description:"category to log in",
                optional:true,
                name:"category",
                defaultValue:null,
                type:"String"
            }
        ],
        type:"method",
        definingClass:"class:Class"
    },
    "classMethod:Log.getDefaultPriority":{
        ref:"classMethod:Log.getDefaultPriority",
        flags:"",
        description:" Retrieves the default priority of messages that will be visible.\n\n",
        name:"getDefaultPriority",
        seeAlso:[
        ],
        params:[
            {
                description:"Optional ISC class or instance - if passed the returns the default priority for \n     the class or instance only.",
                optional:true,
                name:"object",
                defaultValue:null,
                type:"Class or Instance object"
            }
        ],
        returns:{
            description:"default priority for which messages will be logged.",
            type:"LogPriority"
        },
        type:"classMethod",
        definingClass:"class:Log"
    },
    "method:MultiSortDialog.getSort":{
        ref:"method:MultiSortDialog.getSort",
        flags:"",
        description:" Returns all configured sorting levels, as an array of ${isc.DocUtils.linkForRef('object:SortSpecifier')}s.\n\n",
        name:"getSort",
        seeAlso:[
        ],
        returns:{
            description:"the SortSpecifiers for all configured sorting levels",
            type:"Array of SortSpecifier"
        },
        type:"method",
        definingClass:"class:MultiSortDialog"
    },
    "attr:RelativeDateItem.inputFormat":{
        ref:"attr:RelativeDateItem.inputFormat",
        flags:"IR",
        getter:[
            "getInputFormat"
        ],
        description:"Format for direct user input of date values.\n <P>\n If unset, the input format will be determined based on the specified\n ${isc.DocUtils.linkForRef('attr:RelativeDateItem.displayFormat')} if possible, otherwise picked up from the Date class (see\n ${isc.DocUtils.linkForRef('classMethod:Date.setInputFormat')}).\n <smartclient>\n <P>\n Note: if entirely custom date formatting/parsing logic is required for this item, \n this attribute may be set to a function which takes a single parameter (the formatted\n date string) and returns a JavaScript date object.\n </smartclient>",
        name:"inputFormat",
        seeAlso:[
        ],
        valueType:"DateInputFormat",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:RelativeDateItem"
    },
    "attr:ListGrid.headerBaseStyle":{
        ref:"attr:ListGrid.headerBaseStyle",
        flags:"IR",
        description:"${isc.DocUtils.linkForRef('attr:Button.baseStyle')} to apply to the buttons in the header, and the sorter, for\n this ListGrid.\n Note that, depending on the ${isc.DocUtils.linkForRef('attr:ListGrid.headerButtonConstructor','Class')} of the header\n buttons, you may also need to set ${isc.DocUtils.linkForRef('attr:ListGrid.headerTitleStyle')}.",
        name:"headerBaseStyle",
        seeAlso:[
        ],
        valueType:"CSSStyleName",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:ListGrid",
        groups:[
            "gridHeader",
            "appearance"
        ]
    },
    "attr:ColumnTree.customIconProperty":{
        ref:"attr:ColumnTree.customIconProperty",
        flags:"IRW",
        description:"This property allows the developer to customize the icon displayed next to a node.\n Set <code>node[grid.customIconProperty]</code> to the URL of the desired icon to display and\n it will be shown instead of the standard ${isc.DocUtils.linkForRef('attr:ColumnTree.nodeIcon')} for this node.<br>\n Note that if ${isc.DocUtils.linkForRef('attr:ColumnTree.showCustomIconOpen')} \n is true for this grid, customized icons for folder nodes will be appended with the \n ${isc.DocUtils.linkForRef('attr:ColumnTree.openIconSuffix')} suffix on state change,\n as with the standard ${isc.DocUtils.linkForRef('attr:ColumnTree.folderIcon')}.  Also note that for\n custom folder icons, the ${isc.DocUtils.linkForRef('attr:ColumnTree.closedIconSuffix')} will never be appended.",
        name:"customIconProperty",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"icon\"",
        type:"attr",
        definingClass:"class:ColumnTree",
        groups:[
            "treeIcons"
        ]
    },
    "group:inlineFormItems":{
        ref:"group:inlineFormItems",
        refs:[
        ],
        name:"inlineFormItems",
        seeAlso:[
        ],
        type:"group"
    },
    "attr:Window.body":{
        ref:"attr:Window.body",
        flags:"R",
        description:"Body of the Window, where ${isc.DocUtils.linkForRef('group:Items','contained components')} or ${isc.DocUtils.linkForRef('attr:Window.src','loaded content')}\n is shown.",
        name:"body",
        seeAlso:[
        ],
        valueType:"AutoChild Canvas",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:Window"
    },
    "classAttr:Operators.containsTitle":{
        ref:"classAttr:Operators.containsTitle",
        flags:"IR",
        description:"Title for the \"contains\" operator",
        name:"containsTitle",
        seeAlso:[
        ],
        valueType:"String",
        defaultValue:"\"contains (match case)\"",
        type:"classAttr",
        definingClass:"class:Operators",
        groups:[
            "i18nMessages"
        ]
    },
    "attr:LoginDialog.showLostPasswordLink":{
        ref:"attr:LoginDialog.showLostPasswordLink",
        flags:"IR",
        description:"If true, display a ${isc.DocUtils.linkForRef('class:LinkItem')} (${isc.DocUtils.linkForRef('attr:LoginDialog.lostPasswordItem')})\n meant for the user to click if the account's\n credentials are forgotten. The text of the link is controlled by\n ${isc.DocUtils.linkForRef('attr:LoginDialog.lostPasswordItemTitle')}. If clicked, the link will fire\n ${isc.DocUtils.linkForRef('method:LoginDialog.lostPassword')}.",
        name:"showLostPasswordLink",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"false",
        type:"attr",
        definingClass:"class:LoginDialog"
    },
    "attr:ListGridField.wrap":{
        ref:"attr:ListGridField.wrap",
        flags:"IRW",
        description:"Should the field title wrap if there is not enough space horizontally to\n accommodate it. (Note that this is a soft-wrap - if set the title will wrap\n at word boundaries).\n <P>\n If unset, default behavior is derived from ${isc.DocUtils.linkForRef('attr:ListGrid.wrapHeaderTitles')}.",
        name:"wrap",
        seeAlso:[
        ],
        valueType:"Boolean",
        defaultValue:"null",
        type:"attr",
        definingClass:"object:ListGridField"
    },
    "class:IButton":{
        methods:[
        ],
        ref:"class:IButton",
        classAttrs:[
        ],
        classMethods:[
        ],
        treeLocation:[
            "Client Reference/Control"
        ],
        attrs:[
        ],
        description:"The IButton widget class is a class that implements the same APIs as the \n ${isc.DocUtils.linkForRef('class:Button')} class.  Depending on the current skin, <code>IButton</code>s may be\n on the ${isc.DocUtils.linkForRef('class:StretchImgButton')} component, which renders via images, or may be based on the\n ${isc.DocUtils.linkForRef('class:Button')} component, which renders via CSS styles.",
        name:"IButton",
        seeAlso:[
        ],
        type:"class"
    },
    "attr:SpinnerItem.mask":{
        ref:"attr:SpinnerItem.mask",
        flags:"IRWA",
        description:"Not applicable to a SpinnerItem.",
        name:"mask",
        seeAlso:[
        ],
        valueType:"string",
        defaultValue:"null",
        type:"attr",
        definingClass:"class:SpinnerItem"
    },
    "method:GridRenderer.getCellPageRect":{
        ref:"method:GridRenderer.getCellPageRect",
        flags:"A",
        description:" Returns the page offsets and size of the cell at the passed row and column.  If auto-sizing \n is enabled, sizes are not definitive until the grid has finished drawing, so calling this \n method before drawing completes will return the configured column sizes.\n",
        name:"getCellPageRect",
        seeAlso:[
        ],
        params:[
            {
                description:"row index of the cell",
                optional:false,
                name:"rowNum",
                defaultValue:null,
                type:"number"
            },
            {
                description:"column index of the cell",
                optional:false,
                name:"colNum",
                defaultValue:null,
                type:"number"
            }
        ],
        returns:{
            description:"the page rect of the passed cell",
            type:"Array of Integer"
        },
        type:"method",
        definingClass:"class:GridRenderer",
        groups:[
            "sizing",
            "positioning"
        ]
    },
    "class:TextAreaItem":{
        methods:[
            "method:TextAreaItem.getEnteredValue",
            "method:TextAreaItem.getSelectionRange",
            "method:TextAreaItem.setSelectionRange",
            "method:TextAreaItem.selectValue",
            "method:TextAreaItem.deselectValue"
        ],
        exampleConfig:"TextAreaItem.xml",
        ref:"class:TextAreaItem",
        classAttrs:[
        ],
        classMethods:[
        ],
        attrs:[
            "attr:TextAreaItem.wrap",
            "attr:TextAreaItem.width",
            "attr:TextAreaItem.height",
            "attr:TextAreaItem.textBoxStyle",
            "attr:TextAreaItem.emptyStringValue",
            "attr:TextAreaItem.iconVAlign",
            "attr:TextAreaItem.selectOnFocus",
            "attr:TextAreaItem.selectOnClick",
            "attr:TextAreaItem.changeOnKeypress",
            "attr:TextAreaItem.showHintInField",
            "attr:TextAreaItem.printFullText",
            "attr:TextAreaItem.minHeight",
            "attr:TextAreaItem.formatOnBlur"
        ],
        description:"Class for editable multi-line text areas (uses HTML <code>&lt;TEXTAREA&gt;</code> object)",
        name:"TextAreaItem",
        seeAlso:[
        ],
        type:"class",
        examples:[
            "${isc.DocUtils.linkForExampleId('textAreaItem')}"
        ]
    }
};

/*
 Isomorphic SmartClient web presentation layer
 Online documentation data
 Copyright 2000 and beyond Isomorphic Software, Inc. All rights reserved.
*/

