com.smartgwt.client.widgets
Interface DataBoundComponent

All Known Implementing Classes:
Calendar, ColumnTree, DetailViewer, DynamicForm, ListGrid, Menu, PropertySheet, SearchForm, TileGrid, TreeGrid

public interface DataBoundComponent

A DataBoundComponent is a widget that can configure itself for viewing or editing objects which share a certain schema by "binding" to the schema for that object (called a "DataSource").

A schema (or DataSource) describes an object as consisting of a set of properties (or "fields").

DataBoundComponents have a dataSource for dealing with binding to DataSources, fields the schema information provided by a DataSource, and manipulating objects or sets of object from the DataSource.

The following visual components currently support databinding:

   DynamicForm
   DetailViewer
   ListGrid
   TreeGrid
   TileGrid
   ColumnTree
   com.smartgwt.client..CubeGrid
 
The following non-visual components also support databinding:
   ValuesManager
   com.smartgwt.client.data.ResultSet
   com.smartgwt.client..ResultTree
 


Method Summary
 void addFormulaField()
          Convenience method to display a com.smartgwt.client..FormulaBuilder to create a new Formula Field.
 void addSummaryField()
          Convenience method to display a com.smartgwt.client..SummaryBuilder to create a new Summary Field.
 java.lang.Boolean anySelected()
          Whether at least one item is selected
 void deselectAllRecords()
           Deselect all records
 void deselectRecord(int record)
          Deselect a Record passed in explicitly, or by index.
 void deselectRecord(Record record)
          Deselect a Record passed in explicitly, or by index.
 void deselectRecords(int[] records)
          Deselect a list of Records passed in explicitly, or by index.
 void deselectRecords(Record[] records)
          Deselect a list of Records passed in explicitly, or by index.
 void disableHilite(java.lang.String hiliteID)
          Disable a hilite
 void disableHiliting()
          Disable all hilites.
 void enableHilite(java.lang.String hiliteID)
          Enable / disable a hilites
 void enableHilite(java.lang.String hiliteID, boolean enable)
          Enable / disable a hilites
 void enableHiliting()
          Enable all hilites.
 void enableHiliting(boolean enable)
          Enable all hilites.
 void fetchData()
          Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.
 void fetchData(Criteria criteria)
          Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.
 void fetchData(Criteria criteria, DSCallback callback)
          Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.
 void fetchData(Criteria criteria, DSCallback callback, DSRequest requestProperties)
          Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.
 void filterData()
          Retrieves data that matches the provided criteria and displays the matching data in this component.
 void filterData(Criteria criteria)
          Retrieves data that matches the provided criteria and displays the matching data in this component.
 void filterData(Criteria criteria, DSCallback callback)
          Retrieves data that matches the provided criteria and displays the matching data in this component.
 void filterData(Criteria criteria, DSCallback callback, DSRequest requestProperties)
          Retrieves data that matches the provided criteria and displays the matching data in this component.
 java.lang.Boolean getAddDropValues()
          Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key.
 java.lang.String getAddFormulaFieldText()
          Text for a menu item allowing users to add a formula field
 java.lang.String getAddOperation()
          Operation ID this component should use when performing add operations.
 java.lang.String getAddSummaryFieldText()
          Text for a menu item allowing users to add a formula field
 java.lang.Boolean getAutoFetchAsFilter()
          If setAutoFetchData(Boolean) is true, this attribute determines whether the initial fetch operation should be performed via fetchData() or filterData()
 java.lang.Boolean getAutoFetchData()
          If true, when this component is first drawn, automatically call fetchData() or filterData() depending on getAutoFetchAsFilter() .
 java.lang.Boolean getCanAddFormulaFields()
          Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the com.smartgwt.client..FormulaBuilder.
 java.lang.Boolean getCanAddSummaryFields()
          Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the com.smartgwt.client..SummaryBuilder.
 int getDataPageSize()
          When using data paging, how many records to fetch at a time.
 DataSource getDataSource()
          The DataSource that this component should bind to for default fields and for performing DSRequest.
 Record[] getDragData()
           During a drag-and-drop interaction, this method returns the set of records being dragged out of the component.
 DragDataAction getDragDataAction()
          Indicates what to do with data dragged into another DataBoundComponent.
 java.lang.String getDragTrackerStyle()
          CSS Style to apply to the drag tracker when dragging occurs on this component.
 java.util.Map getDropValues()
          When an item is dropped on this component, and addDropValues is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that SmartGWT will apply to the dropped object before updating it.
 java.lang.String getDuplicateDragMessage()
          Message to show when a user attempts to transfer duplicate records into this component, and preventDuplicates is enabled.
 java.lang.String getEditFormulaFieldText()
          Text for a menu item allowing users to edit a formula field
 java.lang.String getEditSummaryFieldText()
          Text for a menu item allowing users to edit the formatter for a field
 java.lang.Boolean getExportAll()
          Setting exportAll to true prevents the component from passing it's list of fields to the export call.
 java.lang.String[] getExportFields()
          The list of field-names to export.
 java.lang.String getFetchOperation()
          Operation ID this component should use when performing fetch operations.
 java.lang.String getHiliteProperty()
          Marker that can be set on a record to flag that record as hilited.
 Criteria getInitialCriteria()
          Criteria to use when setAutoFetchData(Boolean) is used.
 com.google.gwt.core.client.JavaScriptObject getOrCreateJsObj()
           
 java.lang.Boolean getPreventDuplicates()
          If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent).
 int getRecordIndex(Record record)
          Get the index of the provided record.
 java.lang.String getRemoveOperation()
          Operation ID this component should use when performing remove operations.
 java.lang.Boolean getShowComplexFields()
          Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no component.fields.
 java.lang.Boolean getShowDetailFields()
          Whether to show fields marked detail:true when a DataBoundComponent is given a DataSource but no component.fields.
 java.lang.Boolean getShowHiddenFields()
          Whether to show fields marked hidden:true when a DataBoundComponent is given a DataSource but no component.fields.
 java.lang.String getTitleField()
          Method to return the fieldName which represents the "title" for records in this Component.
If this.titleField is explicitly specified it will always be used. Otherwise, default implementation will check titleField for databound compounds.
For non databound components returns the first defined field name of "title", "name", or "id".
 java.lang.String getTitleFieldValue(Record record)
          Get the value of the titleField for the passed record
 java.lang.String getUpdateOperation()
          Operation ID this component should use when performing update operations.
 java.lang.Boolean getUseAllDataSourceFields()
          If true, the set of fields given by the "default binding" (see fields) is used, with any fields specified in component.fields acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.
 java.lang.Boolean getUseFlatFields()
          The useFlatFields flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.
 void invalidateCache()
          Invalidate the current data cache for this databound component via a call to this.data.invalidateCache().
 void selectAllRecords()
          Select all records
 void selectRecord(int record)
          Select/deselect a Record passed in explicitly, or by index.
 void selectRecord(int record, boolean newState)
          Select/deselect a Record passed in explicitly, or by index.
 void selectRecord(Record record)
          Select/deselect a Record passed in explicitly, or by index.
 void selectRecord(Record record, boolean newState)
          Select/deselect a Record passed in explicitly, or by index.
 void selectRecords(int[] records)
          Select/deselect a list of Records passed in explicitly, or by index.
 void selectRecords(int[] records, boolean newState)
          Select/deselect a list of Records passed in explicitly, or by index.
 void selectRecords(Record[] records)
          Select/deselect a list of Records passed in explicitly, or by index.
 void selectRecords(Record[] records, boolean newState)
          Select/deselect a list of Records passed in explicitly, or by index.
 void setAddDropValues(java.lang.Boolean addDropValues)
          Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key.
 void setAddFormulaFieldText(java.lang.String addFormulaFieldText)
          Text for a menu item allowing users to add a formula field
 void setAddOperation(java.lang.String addOperation)
          Operation ID this component should use when performing add operations.
 void setAddSummaryFieldText(java.lang.String addSummaryFieldText)
          Text for a menu item allowing users to add a formula field
 void setAutoFetchAsFilter(java.lang.Boolean autoFetchAsFilter)
          If setAutoFetchData(Boolean) is true, this attribute determines whether the initial fetch operation should be performed via fetchData() or filterData()
 void setAutoFetchData(java.lang.Boolean autoFetchData)
          If true, when this component is first drawn, automatically call fetchData() or filterData() depending on getAutoFetchAsFilter() .
 void setCanAddFormulaFields(java.lang.Boolean canAddFormulaFields)
          Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the com.smartgwt.client..FormulaBuilder.
 void setCanAddSummaryFields(java.lang.Boolean canAddSummaryFields)
          Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the com.smartgwt.client..SummaryBuilder.
 void setDataPageSize(int dataPageSize)
          When using data paging, how many records to fetch at a time.
 void setDataSource(DataSource dataSource)
          The DataSource that this component should bind to for default fields and for performing DSRequest.
 void setDragDataAction(DragDataAction dragDataAction)
          Indicates what to do with data dragged into another DataBoundComponent.
 void setDragTrackerStyle(java.lang.String dragTrackerStyle)
          CSS Style to apply to the drag tracker when dragging occurs on this component.
 void setDropValues(java.util.Map dropValues)
          When an item is dropped on this component, and addDropValues is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that SmartGWT will apply to the dropped object before updating it.
 void setDuplicateDragMessage(java.lang.String duplicateDragMessage)
          Message to show when a user attempts to transfer duplicate records into this component, and preventDuplicates is enabled.
 void setEditFormulaFieldText(java.lang.String editFormulaFieldText)
          Text for a menu item allowing users to edit a formula field
 void setEditSummaryFieldText(java.lang.String editSummaryFieldText)
          Text for a menu item allowing users to edit the formatter for a field
 void setExportAll(java.lang.Boolean exportAll)
          Setting exportAll to true prevents the component from passing it's list of fields to the export call.
 void setExportFields(java.lang.String[] exportFields)
          The list of field-names to export.
 void setFetchOperation(java.lang.String fetchOperation)
          Operation ID this component should use when performing fetch operations.
 void setHiliteProperty(java.lang.String hiliteProperty)
          Marker that can be set on a record to flag that record as hilited.
 void setInitialCriteria(Criteria initialCriteria)
          Criteria to use when setAutoFetchData(Boolean) is used.
 void setPreventDuplicates(java.lang.Boolean preventDuplicates)
          If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent).
 void setRemoveOperation(java.lang.String removeOperation)
          Operation ID this component should use when performing remove operations.
 void setShowComplexFields(java.lang.Boolean showComplexFields)
          Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no component.fields.
 void setShowDetailFields(java.lang.Boolean showDetailFields)
          Whether to show fields marked detail:true when a DataBoundComponent is given a DataSource but no component.fields.
 void setShowHiddenFields(java.lang.Boolean showHiddenFields)
          Whether to show fields marked hidden:true when a DataBoundComponent is given a DataSource but no component.fields.
 void setTitleField(java.lang.String titleField)
           
 void setUpdateOperation(java.lang.String updateOperation)
          Operation ID this component should use when performing update operations.
 void setUseAllDataSourceFields(java.lang.Boolean useAllDataSourceFields)
          If true, the set of fields given by the "default binding" (see fields) is used, with any fields specified in component.fields acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.
 void setUseFlatFields(java.lang.Boolean useFlatFields)
          The useFlatFields flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.
 void transferSelectedData(DataBoundComponent source)
          Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction.
 void transferSelectedData(DataBoundComponent source, int index)
          Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction.
 

Method Detail

getOrCreateJsObj

com.google.gwt.core.client.JavaScriptObject getOrCreateJsObj()

setDataPageSize

void setDataPageSize(int dataPageSize)
When using data paging, how many records to fetch at a time. The value of this attribute is passed on to the auto-constructed com.smartgwt.client.data.ResultSet object for this component. In effect, this gives you control over the resultSize attribute for this component.

Note that regardless of the dataPageSize setting, a component will always fetch all of data that it needs to draw. Settings such as showAllRecords, drawAllMaxCells and drawAheadRatio can cause more rows than the configured dataPageSize to be fetched.

Parameters:
dataPageSize - dataPageSize Default value is 75

getDataPageSize

int getDataPageSize()
When using data paging, how many records to fetch at a time. The value of this attribute is passed on to the auto-constructed com.smartgwt.client.data.ResultSet object for this component. In effect, this gives you control over the resultSize attribute for this component.

Note that regardless of the dataPageSize setting, a component will always fetch all of data that it needs to draw. Settings such as showAllRecords, drawAllMaxCells and drawAheadRatio can cause more rows than the configured dataPageSize to be fetched.

Returns:
int

setUseAllDataSourceFields

void setUseAllDataSourceFields(java.lang.Boolean useAllDataSourceFields)
If true, the set of fields given by the "default binding" (see fields) is used, with any fields specified in component.fields acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.

If component.fields contains fields that are not found in the DataSource, they will be shown after the most recently referred to DataSource field. If the new fields appear first, they will be shown first.

${isc.DocUtils.linkForExampleId('validationFieldBinding', 'This example')} shows a mixture of component fields and DataSource fields, and how they interact for validation.

Parameters:
useAllDataSourceFields - useAllDataSourceFields Default value is false

getUseAllDataSourceFields

java.lang.Boolean getUseAllDataSourceFields()
If true, the set of fields given by the "default binding" (see fields) is used, with any fields specified in component.fields acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.

If component.fields contains fields that are not found in the DataSource, they will be shown after the most recently referred to DataSource field. If the new fields appear first, they will be shown first.

${isc.DocUtils.linkForExampleId('validationFieldBinding', 'This example')} shows a mixture of component fields and DataSource fields, and how they interact for validation.

Returns:
Boolean

setShowHiddenFields

void setShowHiddenFields(java.lang.Boolean showHiddenFields)
Whether to show fields marked hidden:true when a DataBoundComponent is given a DataSource but no component.fields.

The hidden property is used on DataSource fields to mark fields that are never of meaning to an end user.

Parameters:
showHiddenFields - showHiddenFields Default value is false

getShowHiddenFields

java.lang.Boolean getShowHiddenFields()
Whether to show fields marked hidden:true when a DataBoundComponent is given a DataSource but no component.fields.

The hidden property is used on DataSource fields to mark fields that are never of meaning to an end user.

Returns:
Boolean

setShowDetailFields

void setShowDetailFields(java.lang.Boolean showDetailFields)
Whether to show fields marked detail:true when a DataBoundComponent is given a DataSource but no component.fields.

The detail property is used on DataSource fields to mark fields that shouldn't appear by default in a view that tries to show many records in a small space.

Parameters:
showDetailFields - showDetailFields Default value is false

getShowDetailFields

java.lang.Boolean getShowDetailFields()
Whether to show fields marked detail:true when a DataBoundComponent is given a DataSource but no component.fields.

The detail property is used on DataSource fields to mark fields that shouldn't appear by default in a view that tries to show many records in a small space.

Returns:
Boolean

setShowComplexFields

void setShowComplexFields(java.lang.Boolean showComplexFields)
Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no component.fields.

If true, the component will show fields that declare a complex type, for example, a field 'shippingAddress' that declares type 'Address', where 'Address' is the ID of a DataSource that declares the fields of a shipping address (city, street name, etc).

Such fields may need custom formatters or editors in order to create a usable interface, for example, an Address field in a ListGrid might use a custom formatter to combine the relevant fields of an address into one column, and might use a pop-up dialog for editing.

Note : This is an advanced setting

Parameters:
showComplexFields - showComplexFields Default value is true

getShowComplexFields

java.lang.Boolean getShowComplexFields()
Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no component.fields.

If true, the component will show fields that declare a complex type, for example, a field 'shippingAddress' that declares type 'Address', where 'Address' is the ID of a DataSource that declares the fields of a shipping address (city, street name, etc).

Such fields may need custom formatters or editors in order to create a usable interface, for example, an Address field in a ListGrid might use a custom formatter to combine the relevant fields of an address into one column, and might use a pop-up dialog for editing.

Returns:
Boolean

setFetchOperation

void setFetchOperation(java.lang.String fetchOperation)
Operation ID this component should use when performing fetch operations.

Parameters:
fetchOperation - fetchOperation Default value is null

getFetchOperation

java.lang.String getFetchOperation()
Operation ID this component should use when performing fetch operations.

Returns:
String

setUpdateOperation

void setUpdateOperation(java.lang.String updateOperation)
Operation ID this component should use when performing update operations.

Parameters:
updateOperation - updateOperation Default value is null

getUpdateOperation

java.lang.String getUpdateOperation()
Operation ID this component should use when performing update operations.

Returns:
String

setAddOperation

void setAddOperation(java.lang.String addOperation)
Operation ID this component should use when performing add operations.

Parameters:
addOperation - addOperation Default value is null

getAddOperation

java.lang.String getAddOperation()
Operation ID this component should use when performing add operations.

Returns:
String

setRemoveOperation

void setRemoveOperation(java.lang.String removeOperation)
Operation ID this component should use when performing remove operations.

Parameters:
removeOperation - removeOperation Default value is null

getRemoveOperation

java.lang.String getRemoveOperation()
Operation ID this component should use when performing remove operations.

Returns:
String

setExportFields

void setExportFields(java.lang.String[] exportFields)
The list of field-names to export. If provided, the field-list in the exported output is limited and sorted as per the list.

If exportFields is not provided, the exported output includes all visible fields from this component, sorted as they appear.

Parameters:
exportFields - exportFields Default value is null

getExportFields

java.lang.String[] getExportFields()
The list of field-names to export. If provided, the field-list in the exported output is limited and sorted as per the list.

If exportFields is not provided, the exported output includes all visible fields from this component, sorted as they appear.

Returns:
the list of field-names to export.

setExportAll

void setExportAll(java.lang.Boolean exportAll)
Setting exportAll to true prevents the component from passing it's list of fields to the export call. The result is the export of all visible fields from fields.

If exportAll is false, an export operation will first consider exportFields, if it's set, and fall back on all visible fields from fields otherwise.

Parameters:
exportAll - exportAll Default value is false

getExportAll

java.lang.Boolean getExportAll()
Setting exportAll to true prevents the component from passing it's list of fields to the export call. The result is the export of all visible fields from fields.

If exportAll is false, an export operation will first consider exportFields, if it's set, and fall back on all visible fields from fields otherwise.

Returns:
Boolean

setPreventDuplicates

void setPreventDuplicates(java.lang.Boolean preventDuplicates)
                          throws java.lang.IllegalStateException
If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent). When a duplicate transfer is detected, a dialog will appear showing the duplicateDragMessage.

If the component either does not have a DataSource or has a DataSource with no primaryKey declared, duplicate checking is off by default. If duplicate checking is enabled, it looks for an existing record in the dataset that has all of the properties of the dragged record, and considers that a duplicate.

For DragDataAction:"copy" where the target DataSource is related to the source DataSource by foreignKey, a duplicate means that the target list, as filtered by the current criteria, already has a record whose value for the foreignKey field matches the primaryKey of the record being transferred.

For example, consider dragging "employees" to "teams", where "teams" has a field "teams.employeeId" which is a foreignKey pointing to "employees.id", and the target grid has search criteria causing it to show all the members of one team. A duplicate - adding an employee to the same team twice - is when the target grid's dataset contains an record with "employeeId" matching the "id" field of the dropped employee.

Parameters:
preventDuplicates - preventDuplicates Default value is null
Throws:
java.lang.IllegalStateException - this property cannot be changed after the component has been created

getPreventDuplicates

java.lang.Boolean getPreventDuplicates()
If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent). When a duplicate transfer is detected, a dialog will appear showing the duplicateDragMessage.

If the component either does not have a DataSource or has a DataSource with no primaryKey declared, duplicate checking is off by default. If duplicate checking is enabled, it looks for an existing record in the dataset that has all of the properties of the dragged record, and considers that a duplicate.

For DragDataAction:"copy" where the target DataSource is related to the source DataSource by foreignKey, a duplicate means that the target list, as filtered by the current criteria, already has a record whose value for the foreignKey field matches the primaryKey of the record being transferred.

For example, consider dragging "employees" to "teams", where "teams" has a field "teams.employeeId" which is a foreignKey pointing to "employees.id", and the target grid has search criteria causing it to show all the members of one team. A duplicate - adding an employee to the same team twice - is when the target grid's dataset contains an record with "employeeId" matching the "id" field of the dropped employee.

Returns:
Boolean

setDuplicateDragMessage

void setDuplicateDragMessage(java.lang.String duplicateDragMessage)
                             throws java.lang.IllegalStateException
Message to show when a user attempts to transfer duplicate records into this component, and preventDuplicates is enabled.

Parameters:
duplicateDragMessage - duplicateDragMessage Default value is "Duplicates not allowed"
Throws:
java.lang.IllegalStateException - this property cannot be changed after the component has been created

getDuplicateDragMessage

java.lang.String getDuplicateDragMessage()
Message to show when a user attempts to transfer duplicate records into this component, and preventDuplicates is enabled.

Returns:
String

setAddDropValues

void setAddDropValues(java.lang.Boolean addDropValues)
Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key. "Drop values" are properties of the dropped item that you wish to change (and persist) as a result of the item being dropped on this grid.

If this value is true and this component is databound, getDropValues() will be called for every databound item dropped on this grid, and an update performed on the item

Parameters:
addDropValues - addDropValues Default value is true

getAddDropValues

java.lang.Boolean getAddDropValues()
Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key. "Drop values" are properties of the dropped item that you wish to change (and persist) as a result of the item being dropped on this grid.

If this value is true and this component is databound, getDropValues() will be called for every databound item dropped on this grid, and an update performed on the item

Returns:
Boolean

setDropValues

void setDropValues(java.util.Map dropValues)
When an item is dropped on this component, and addDropValues is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that SmartGWT will apply to the dropped object before updating it.

If this property is not defined, SmartGWT defaults to returning the selection criteria currently in place for this component. Thus, any databound items (for example, rows from other grids bound to the same DataSource) dropped on the grid will, by default, be subjected to an update that makes them conform to the grid's current filter criteria.

Note : This is an advanced setting

Parameters:
dropValues - dropValues Default value is null

getDropValues

java.util.Map getDropValues()
When an item is dropped on this component, and addDropValues is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that SmartGWT will apply to the dropped object before updating it.

If this property is not defined, SmartGWT defaults to returning the selection criteria currently in place for this component. Thus, any databound items (for example, rows from other grids bound to the same DataSource) dropped on the grid will, by default, be subjected to an update that makes them conform to the grid's current filter criteria.

Returns:
Returns the "drop values" to apply to a record dropped on this component prior to update. Only applicable to databound components - see dropValues for more details. If multiple records are being dropped, this method is called for each of them in turn.

This method returns the following:

  • Nothing, if addDropValues is false
  • dropValues, if that property is set. If the component's criteria object is applicable (as explained in the next item), it is merged into dropValues, with properties in dropValues taking precedence.
  • The component's criteria object, if the most recent textMatchStyle for the component was "exact" and it is simple criteria (ie, not an AdvancedCriteria object)
  • Otherwise nothing

You can override this method if you need more complex setting of drop values than can be provided by simply supplying a dropValues object.


setUseFlatFields

void setUseFlatFields(java.lang.Boolean useFlatFields)
                      throws java.lang.IllegalStateException
The useFlatFields flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.

useFlatFields is typically used with imported metadata, such as XMLTools.loadXMLSchema(java.lang.String, com.smartgwt.client.data.XSDLoadCallback) from a XMLTools.loadWSDL(java.lang.String, com.smartgwt.client.data.WSDLLoadCallback), as a means of eliminating levels of XML nesting that aren't meaningful in a user interface, without the cumbersome and fragile process of mapping form fields to XML structures.

For example, having called WebService.getInputDS(java.lang.String) to retrieve the input message schema for a web service operation whose input message looks like this:

 <FindServices>
     <searchFor>search text</searchFor>
     <Options>
         <caseSensitive>false</caseSensitive>
     </Options>
     <IncludeInSearch>
         <serviceName>true</serviceName>
         <documentation>true</documentation>
         <keywords>true</keywords>
     </IncludeInSearch>
 </FindServices>
 
Setting useFlatFields on a DynamicForm that is bound to this input message schema would result in 5 FormItem reflecting the 5 simple type fields in the message.

For this form, the result of DynamicForm.getValues() might look like:

{
    searchFor: "search text",
    caseSensitive: false,
    serviceName: true,
    documentation : true,
    keywords : true
 }
When contacting a WebService, these values can be automatically mapped to the structure of the input message for a web service operation by setting useFlatFields (for use with WebService.callOperation(java.lang.String, java.util.Map, java.lang.String, com.smartgwt.client.data.WebServiceCallback)) or by setting useFlatFields (for use with a DataSource that is 'bound to a WSDL web service' via wsOperation).

Using these two facilities in conjunction (component.useFlatFields and request.useFlatFields) allows gratuitous nesting to be consistently bypassed in both the user presentation and when providing the data for XML messages.

You can also set useFlatFields to automatically enable "flattened" XML serialization (request.useFlatFields) for all DataSource requests of a particular operationType.

Note that useFlatFields is not generally recommended for use with structures where multiple simple type fields exist with the same name, however if used with such a structure, the first field to use a given name wins. "first" means the first field encountered in a depth first search. "wins" means only the first field will be present as a field when data binding.

Parameters:
useFlatFields - useFlatFields Default value is null
Throws:
java.lang.IllegalStateException - this property cannot be changed after the component has been created

getUseFlatFields

java.lang.Boolean getUseFlatFields()
The useFlatFields flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.

useFlatFields is typically used with imported metadata, such as XMLTools.loadXMLSchema(java.lang.String, com.smartgwt.client.data.XSDLoadCallback) from a XMLTools.loadWSDL(java.lang.String, com.smartgwt.client.data.WSDLLoadCallback), as a means of eliminating levels of XML nesting that aren't meaningful in a user interface, without the cumbersome and fragile process of mapping form fields to XML structures.

For example, having called WebService.getInputDS(java.lang.String) to retrieve the input message schema for a web service operation whose input message looks like this:

 <FindServices>
     <searchFor>search text</searchFor>
     <Options>
         <caseSensitive>false</caseSensitive>
     </Options>
     <IncludeInSearch>
         <serviceName>true</serviceName>
         <documentation>true</documentation>
         <keywords>true</keywords>
     </IncludeInSearch>
 </FindServices>
 
Setting useFlatFields on a DynamicForm that is bound to this input message schema would result in 5 FormItem reflecting the 5 simple type fields in the message.

For this form, the result of DynamicForm.getValues() might look like:

{
    searchFor: "search text",
    caseSensitive: false,
    serviceName: true,
    documentation : true,
    keywords : true
 }
When contacting a WebService, these values can be automatically mapped to the structure of the input message for a web service operation by setting useFlatFields (for use with WebService.callOperation(java.lang.String, java.util.Map, java.lang.String, com.smartgwt.client.data.WebServiceCallback)) or by setting useFlatFields (for use with a DataSource that is 'bound to a WSDL web service' via wsOperation).

Using these two facilities in conjunction (component.useFlatFields and request.useFlatFields) allows gratuitous nesting to be consistently bypassed in both the user presentation and when providing the data for XML messages.

You can also set useFlatFields to automatically enable "flattened" XML serialization (request.useFlatFields) for all DataSource requests of a particular operationType.

Note that useFlatFields is not generally recommended for use with structures where multiple simple type fields exist with the same name, however if used with such a structure, the first field to use a given name wins. "first" means the first field encountered in a depth first search. "wins" means only the first field will be present as a field when data binding.

Returns:
Boolean

setHiliteProperty

void setHiliteProperty(java.lang.String hiliteProperty)
Marker that can be set on a record to flag that record as hilited. Should be set to a value that matches id for a hilite defined on this component.

Parameters:
hiliteProperty - hiliteProperty Default value is "_hilite"

getHiliteProperty

java.lang.String getHiliteProperty()
Marker that can be set on a record to flag that record as hilited. Should be set to a value that matches id for a hilite defined on this component.

Returns:
String

setDragDataAction

void setDragDataAction(DragDataAction dragDataAction)
Indicates what to do with data dragged into another DataBoundComponent. See DragDataAction type for details.

Parameters:
dragDataAction - dragDataAction Default value is Canvas.MOVE

getDragDataAction

DragDataAction getDragDataAction()
Indicates what to do with data dragged into another DataBoundComponent. See DragDataAction type for details.

Returns:
DragDataAction

setDragTrackerStyle

void setDragTrackerStyle(java.lang.String dragTrackerStyle)
CSS Style to apply to the drag tracker when dragging occurs on this component.

Parameters:
dragTrackerStyle - dragTrackerStyle Default value is "gridDragTracker"

getDragTrackerStyle

java.lang.String getDragTrackerStyle()
CSS Style to apply to the drag tracker when dragging occurs on this component.

Returns:
String

setCanAddFormulaFields

void setCanAddFormulaFields(java.lang.Boolean canAddFormulaFields)
Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the com.smartgwt.client..FormulaBuilder.

User-added formula fields can be persisted via ListGrid.getFieldState() and ListGrid.setFieldState(java.lang.String).

Parameters:
canAddFormulaFields - canAddFormulaFields Default value is false

addSummaryField

void addSummaryField()
Convenience method to display a com.smartgwt.client..SummaryBuilder to create a new Summary Field. This is equivalent to calling DataBoundComponentGen#editSummaryField with no paramater.


addFormulaField

void addFormulaField()
Convenience method to display a com.smartgwt.client..FormulaBuilder to create a new Formula Field. This is equivalent to calling DataBoundComponentGen#editFormulaField with no paramater.


getCanAddFormulaFields

java.lang.Boolean getCanAddFormulaFields()
Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the com.smartgwt.client..FormulaBuilder.

User-added formula fields can be persisted via ListGrid.getFieldState() and ListGrid.setFieldState(java.lang.String).

Returns:
Boolean

setAddFormulaFieldText

void setAddFormulaFieldText(java.lang.String addFormulaFieldText)
Text for a menu item allowing users to add a formula field

Parameters:
addFormulaFieldText - addFormulaFieldText Default value is "Add formula column..."

getAddFormulaFieldText

java.lang.String getAddFormulaFieldText()
Text for a menu item allowing users to add a formula field

Returns:
String

setEditFormulaFieldText

void setEditFormulaFieldText(java.lang.String editFormulaFieldText)
Text for a menu item allowing users to edit a formula field

Parameters:
editFormulaFieldText - editFormulaFieldText Default value is "Edit formula..."

getEditFormulaFieldText

java.lang.String getEditFormulaFieldText()
Text for a menu item allowing users to edit a formula field

Returns:
String

setCanAddSummaryFields

void setCanAddSummaryFields(java.lang.Boolean canAddSummaryFields)
Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the com.smartgwt.client..SummaryBuilder.

User-added summary fields can be persisted via ListGrid.getFieldState() and ListGrid.setFieldState(java.lang.String).

Parameters:
canAddSummaryFields - canAddSummaryFields Default value is false

getCanAddSummaryFields

java.lang.Boolean getCanAddSummaryFields()
Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the com.smartgwt.client..SummaryBuilder.

User-added summary fields can be persisted via ListGrid.getFieldState() and ListGrid.setFieldState(java.lang.String).

Returns:
Boolean

setAddSummaryFieldText

void setAddSummaryFieldText(java.lang.String addSummaryFieldText)
Text for a menu item allowing users to add a formula field

Parameters:
addSummaryFieldText - addSummaryFieldText Default value is "Add summary column..."

getAddSummaryFieldText

java.lang.String getAddSummaryFieldText()
Text for a menu item allowing users to add a formula field

Returns:
String

setEditSummaryFieldText

void setEditSummaryFieldText(java.lang.String editSummaryFieldText)
Text for a menu item allowing users to edit the formatter for a field

Parameters:
editSummaryFieldText - editSummaryFieldText Default value is "Edit summary format..."

getEditSummaryFieldText

java.lang.String getEditSummaryFieldText()
Text for a menu item allowing users to edit the formatter for a field

Returns:
String

selectRecord

void selectRecord(Record record)
Select/deselect a Record passed in explicitly, or by index.

Parameters:
record - record (or row number) to select

selectRecord

void selectRecord(int record)
Select/deselect a Record passed in explicitly, or by index.

Parameters:
record - record (or row number) to select

selectRecord

void selectRecord(int record,
                  boolean newState)
Select/deselect a Record passed in explicitly, or by index.

Parameters:
record - record (or row number) to select
newState - new selection state (if null, defaults to true)

selectRecord

void selectRecord(Record record,
                  boolean newState)
Select/deselect a Record passed in explicitly, or by index.

Parameters:
record - record (or row number) to select
newState - new selection state (if null, defaults to true)

selectRecords

void selectRecords(int[] records)
Select/deselect a list of Records passed in explicitly, or by index.

Parameters:
records - records (or row numbers) to select

selectRecords

void selectRecords(int[] records,
                   boolean newState)
Select/deselect a list of Records passed in explicitly, or by index.

Parameters:
records - records (or row numbers) to select
newState - new selection state

selectRecords

void selectRecords(Record[] records)
Select/deselect a list of Records passed in explicitly, or by index.

Parameters:
records - records (or row numbers) to select

selectRecords

void selectRecords(Record[] records,
                   boolean newState)
Select/deselect a list of Records passed in explicitly, or by index.

Parameters:
records - records (or row numbers) to select
newState - new selection state (if null, defaults to true)

deselectRecord

void deselectRecord(Record record)
Deselect a Record passed in explicitly, or by index.

Synonym for selectRecord(record, false)

Parameters:
record - record (or row number) to deselect

deselectRecord

void deselectRecord(int record)
Deselect a Record passed in explicitly, or by index.

Synonym for selectRecord(record, false)

Parameters:
record - record (or row number) to deselect

deselectRecords

void deselectRecords(int[] records)
Deselect a list of Records passed in explicitly, or by index.

Synonym for selectRecords(records, false)

Parameters:
records - records (or row numbers) to deselect

deselectRecords

void deselectRecords(Record[] records)
Deselect a list of Records passed in explicitly, or by index.

Synonym for selectRecords(records, false)

Parameters:
records - records (or row numbers) to deselect

selectAllRecords

void selectAllRecords()
Select all records


deselectAllRecords

void deselectAllRecords()
Deselect all records


anySelected

java.lang.Boolean anySelected()
Whether at least one item is selected

Returns:
true == at least one item is selected false == nothing at all is selected

enableHilite

void enableHilite(java.lang.String hiliteID)
Enable / disable a hilites

Parameters:
hiliteID - ID of hilite to enable

enableHilite

void enableHilite(java.lang.String hiliteID,
                  boolean enable)
Enable / disable a hilites

Parameters:
hiliteID - ID of hilite to enable
enable - new enabled state to apply - if null, defaults to true

disableHilite

void disableHilite(java.lang.String hiliteID)
Disable a hilite

Parameters:
hiliteID - ID of hilite to disable

enableHiliting

void enableHiliting()
Enable all hilites.


enableHiliting

void enableHiliting(boolean enable)
Enable all hilites.

Parameters:
enable - new enabled state to apply - if null, defaults to true

disableHiliting

void disableHiliting()
Disable all hilites.


getDragData

Record[] getDragData()
During a drag-and-drop interaction, this method returns the set of records being dragged out of the component. In the default implementation, this is the list of currently selected records.

This method is generally called by com.smartgwt.client.widgets.DataBoundComponent#transferDragData and is consulted by ListGrid.willAcceptDrop().

Returns:
Array of Records that are currently selected.

transferSelectedData

void transferSelectedData(DataBoundComponent source)
Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction. This method acts on the dropped records exactly as if they had been dropped in an actual drag / drop interaction, including any special databound behavior invoked by calling getDropValues() for each dropped record.

To transfer all data in, for example, a ListGrid, call grid.selection.selectAll() first.

See the Dragging documentation for an overview of list grid drag/drop data transfer.

Parameters:
source - source component from which the records will be tranferred

transferSelectedData

void transferSelectedData(DataBoundComponent source,
                          int index)
Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction. This method acts on the dropped records exactly as if they had been dropped in an actual drag / drop interaction, including any special databound behavior invoked by calling getDropValues() for each dropped record.

To transfer all data in, for example, a ListGrid, call grid.selection.selectAll() first.

See the Dragging documentation for an overview of list grid drag/drop data transfer.

Parameters:
source - source component from which the records will be tranferred
index - target index (drop position) of the rows within this grid.

getRecordIndex

int getRecordIndex(Record record)
Get the index of the provided record.

Override in subclasses to provide more specific behaviour, for instance, when data holds a large number of records

Parameters:
record - the record whose index is to be retrieved
Returns:
indexindex of the record, or -1 if not found

getTitleFieldValue

java.lang.String getTitleFieldValue(Record record)
Get the value of the titleField for the passed record

Override in subclasses

Parameters:
record - the record whose index is to be retrieved
Returns:
valuethe value of the titleField for the passed record

getTitleField

java.lang.String getTitleField()
Method to return the fieldName which represents the "title" for records in this Component.
If this.titleField is explicitly specified it will always be used. Otherwise, default implementation will check titleField for databound compounds.
For non databound components returns the first defined field name of "title", "name", or "id". If we dont find any field-names that match these titles, the first field in the component will be used instead.

Returns:
fieldName for title field for this component.

setTitleField

void setTitleField(java.lang.String titleField)

setDataSource

void setDataSource(DataSource dataSource)
The DataSource that this component should bind to for default fields and for performing DSRequest.

Can be specified as either a DataSource instance or the String ID of a DataSource. Bind to a new DataSource.

Like passing the "dataSource" property on creation, binding to a DataSource means that the component will use the DataSource to provide default data for its fields.

When binding to a new DataSource, if the component has any existing "fields" or has a dataset, these will be discarded by default, since it is assumed the new DataSource may represent a completely unrelated set of objects. If the old "fields" are still relevant, pass them to setDataSource().

Parameters:
dataSource - DataSource to bind to. Default value is null

getDataSource

DataSource getDataSource()
The DataSource that this component should bind to for default fields and for performing DSRequest.

Can be specified as either a DataSource instance or the String ID of a DataSource.

Returns:
DataSource

fetchData

void fetchData()
Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.

If there are a large number of matching records, paging will automatically be enabled, so that initially a smaller number of records will be retrieved and further records will be fetched as the user navigates the dataset.

When first called, this method will create a com.smartgwt.client.data.ResultSet, which will be configured based on component settings such as fetchOperation and dataPageSize, as well as the general purpose dataProperties. The ResultSet is then available as component.data.

Subsequent calls to fetchData() will simply call com.smartgwt.client.data.ResultSet#setCriteria on the created ResultSet with the passed criteria.

In some cases fetchData() will not need to context the server as the new criteria can be satisfied by performing a client-side filter against the currently cached set of data. You can determine whether criteria will cause a fetch by calling com.smartgwt.client.data.ResultSet#willFetchData.

If you need to force a server fetch, you can call com.smartgwt.client.data.ResultSet#invalidateCache via component.data.invalidateCache() to do so.

This method takes an optional callback parameter (set to a DSCallback) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary we recomment using com.smartgwt.client.data.ResultSet#willFetchData before calling this method to determine whether or not a server fetch will occur.

In addition to the callback parameter for this method, developers can use com.smartgwt.client.data.ResultSet#dataArrived to be notified every time ResultSet data is loaded. A dataArrived method can be installed in the automatically created ResultSet by adding it to dataProperties.


fetchData

void fetchData(Criteria criteria)
Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.

If there are a large number of matching records, paging will automatically be enabled, so that initially a smaller number of records will be retrieved and further records will be fetched as the user navigates the dataset.

When first called, this method will create a com.smartgwt.client.data.ResultSet, which will be configured based on component settings such as fetchOperation and dataPageSize, as well as the general purpose dataProperties. The ResultSet is then available as component.data.

Subsequent calls to fetchData() will simply call com.smartgwt.client.data.ResultSet#setCriteria on the created ResultSet with the passed criteria.

In some cases fetchData() will not need to context the server as the new criteria can be satisfied by performing a client-side filter against the currently cached set of data. You can determine whether criteria will cause a fetch by calling com.smartgwt.client.data.ResultSet#willFetchData.

If you need to force a server fetch, you can call com.smartgwt.client.data.ResultSet#invalidateCache via component.data.invalidateCache() to do so.

This method takes an optional callback parameter (set to a DSCallback) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary we recomment using com.smartgwt.client.data.ResultSet#willFetchData before calling this method to determine whether or not a server fetch will occur.

In addition to the callback parameter for this method, developers can use com.smartgwt.client.data.ResultSet#dataArrived to be notified every time ResultSet data is loaded. A dataArrived method can be installed in the automatically created ResultSet by adding it to dataProperties.

Parameters:
criteria - Search criteria. If a DynamicForm is passed in as this argument instead of a raw criteria object, will be derived by calling DynamicForm.getValuesAsCriteria()

fetchData

void fetchData(Criteria criteria,
               DSCallback callback)
Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.

If there are a large number of matching records, paging will automatically be enabled, so that initially a smaller number of records will be retrieved and further records will be fetched as the user navigates the dataset.

When first called, this method will create a com.smartgwt.client.data.ResultSet, which will be configured based on component settings such as fetchOperation and dataPageSize, as well as the general purpose dataProperties. The ResultSet is then available as component.data.

Subsequent calls to fetchData() will simply call com.smartgwt.client.data.ResultSet#setCriteria on the created ResultSet with the passed criteria.

In some cases fetchData() will not need to context the server as the new criteria can be satisfied by performing a client-side filter against the currently cached set of data. You can determine whether criteria will cause a fetch by calling com.smartgwt.client.data.ResultSet#willFetchData.

If you need to force a server fetch, you can call com.smartgwt.client.data.ResultSet#invalidateCache via component.data.invalidateCache() to do so.

This method takes an optional callback parameter (set to a DSCallback) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary we recomment using com.smartgwt.client.data.ResultSet#willFetchData before calling this method to determine whether or not a server fetch will occur.

In addition to the callback parameter for this method, developers can use com.smartgwt.client.data.ResultSet#dataArrived to be notified every time ResultSet data is loaded. A dataArrived method can be installed in the automatically created ResultSet by adding it to dataProperties.

Parameters:
criteria - Search criteria. If a DynamicForm is passed in as this argument instead of a raw criteria object, will be derived by calling DynamicForm.getValuesAsCriteria()
callback - callback to invoke when a fetch is complete. Fires only if server contact was required

fetchData

void fetchData(Criteria criteria,
               DSCallback callback,
               DSRequest requestProperties)
Uses a "fetch" operation on the current DataSource to retrieve data that matches the provided criteria, and displays the matching data in this component.

If there are a large number of matching records, paging will automatically be enabled, so that initially a smaller number of records will be retrieved and further records will be fetched as the user navigates the dataset.

When first called, this method will create a com.smartgwt.client.data.ResultSet, which will be configured based on component settings such as fetchOperation and dataPageSize, as well as the general purpose dataProperties. The ResultSet is then available as component.data.

Subsequent calls to fetchData() will simply call com.smartgwt.client.data.ResultSet#setCriteria on the created ResultSet with the passed criteria.

In some cases fetchData() will not need to context the server as the new criteria can be satisfied by performing a client-side filter against the currently cached set of data. You can determine whether criteria will cause a fetch by calling com.smartgwt.client.data.ResultSet#willFetchData.

If you need to force a server fetch, you can call com.smartgwt.client.data.ResultSet#invalidateCache via component.data.invalidateCache() to do so.

This method takes an optional callback parameter (set to a DSCallback) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary we recomment using com.smartgwt.client.data.ResultSet#willFetchData before calling this method to determine whether or not a server fetch will occur.

In addition to the callback parameter for this method, developers can use com.smartgwt.client.data.ResultSet#dataArrived to be notified every time ResultSet data is loaded. A dataArrived method can be installed in the automatically created ResultSet by adding it to dataProperties.

Parameters:
criteria - Search criteria. If a DynamicForm is passed in as this argument instead of a raw criteria object, will be derived by calling DynamicForm.getValuesAsCriteria()
callback - callback to invoke when a fetch is complete. Fires only if server contact was required
requestProperties - additional properties to set on the DSRequest that will be issued

filterData

void filterData()
Retrieves data that matches the provided criteria and displays the matching data in this component.

This method behaves exactly like ListGrid.fetchData() except that textMatchStyle is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

Parameters:
criteria - Search criteria. If a DynamicForm is passed in as this argument instead of a raw criteria object, will be derived by calling DynamicForm.getValuesAsCriteria()

filterData

void filterData(Criteria criteria)
Retrieves data that matches the provided criteria and displays the matching data in this component.

This method behaves exactly like ListGrid.fetchData() except that textMatchStyle is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

Parameters:
criteria - Search criteria. If a DynamicForm is passed in as this argument instead of a raw criteria object, will be derived by calling DynamicForm.getValuesAsCriteria()
callback - callback to invoke when a fetch is complete. Fires only if server contact was required; see fetchData() for details

filterData

void filterData(Criteria criteria,
                DSCallback callback)
Retrieves data that matches the provided criteria and displays the matching data in this component.

This method behaves exactly like ListGrid.fetchData() except that textMatchStyle is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

Parameters:
criteria - Search criteria. If a DynamicForm is passed in as this argument instead of a raw criteria object, will be derived by calling DynamicForm.getValuesAsCriteria()
callback - callback to invoke when a fetch is complete. Fires only if server contact was required; see fetchData() for details

filterData

void filterData(Criteria criteria,
                DSCallback callback,
                DSRequest requestProperties)
Retrieves data that matches the provided criteria and displays the matching data in this component.

This method behaves exactly like ListGrid.fetchData() except that textMatchStyle is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

Parameters:
criteria - Search criteria. If a DynamicForm is passed in as this argument instead of a raw criteria object, will be derived by calling DynamicForm.getValuesAsCriteria()
callback - callback to invoke when a fetch is complete. Fires only if server contact was required; see fetchData() for details
requestProperties - for databound components only - optional additional properties to set on the DSRequest that will be issued

setAutoFetchData

void setAutoFetchData(java.lang.Boolean autoFetchData)
If true, when this component is first drawn, automatically call fetchData() or filterData() depending on getAutoFetchAsFilter() . Criteria for this fetch may be picked up from initialCriteria.

Parameters:
autoFetchData - autoFetchData

getAutoFetchData

java.lang.Boolean getAutoFetchData()
If true, when this component is first drawn, automatically call fetchData() or filterData() depending on getAutoFetchAsFilter() . Criteria for this fetch may be picked up from initialCriteria.

Returns:
auto fetch data

setAutoFetchAsFilter

void setAutoFetchAsFilter(java.lang.Boolean autoFetchAsFilter)
If setAutoFetchData(Boolean) is true, this attribute determines whether the initial fetch operation should be performed via fetchData() or filterData()

Parameters:
autoFetchAsFilter - autoFetchAsFilter

getAutoFetchAsFilter

java.lang.Boolean getAutoFetchAsFilter()
If setAutoFetchData(Boolean) is true, this attribute determines whether the initial fetch operation should be performed via fetchData() or filterData()

Returns:
auto fetch as filter

setInitialCriteria

void setInitialCriteria(Criteria initialCriteria)
                        throws java.lang.IllegalStateException
Criteria to use when setAutoFetchData(Boolean) is used.

Parameters:
initialCriteria - the initial criteria
Throws:
java.lang.IllegalStateException - this property cannot be changed after the component has been created

getInitialCriteria

Criteria getInitialCriteria()
Criteria to use when setAutoFetchData(Boolean) is used.

Returns:
the criteria

invalidateCache

void invalidateCache()
Invalidate the current data cache for this databound component via a call to this.data.invalidateCache(). If necessary, this will cause a new fetch to be performed with the current set of criteria for this component.

Has no effect if this component is not showing a set of filtered data.