package org.vaadin.smartgwt.server.grid;
/*
* Smart GWT (GWT for SmartClient)
* Copyright 2008 and beyond, Isomorphic Software, Inc.
*
* Smart GWT is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License version 3
* as published by the Free Software Foundation. Smart GWT is also
* available under typical commercial license terms - see
* http://smartclient.com/license
*
* This software is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*/
import java.util.Date;
import java.util.Map;
import org.vaadin.smartgwt.client.ui.grid.VListGridField;
import org.vaadin.smartgwt.server.core.DataClass;
import org.vaadin.smartgwt.server.form.fields.FormItem;
import org.vaadin.smartgwt.server.types.Alignment;
import org.vaadin.smartgwt.server.types.AutoFitWidthApproach;
import org.vaadin.smartgwt.server.types.DateDisplayFormat;
import org.vaadin.smartgwt.server.types.EnterKeyEditAction;
import org.vaadin.smartgwt.server.types.EscapeKeyEditAction;
import org.vaadin.smartgwt.server.types.ListGridFieldType;
import org.vaadin.smartgwt.server.types.OperatorId;
import org.vaadin.smartgwt.server.types.RecordSummaryFunctionType;
import org.vaadin.smartgwt.server.types.SummaryFunctionType;
import org.vaadin.smartgwt.server.types.TextMatchStyle;
import org.vaadin.smartgwt.server.types.TimeDisplayFormat;
import org.vaadin.smartgwt.server.util.EnumUtil;
import com.vaadin.ui.ClientWidget;
/**
* An ordinary JavaScript object containing properties that configures the display of and interaction with the columns of a
* {@link com.smartgwt.client.widgets.grid.ListGrid}.
* @see com.smartgwt.client.widgets.grid.ListGrid#getFields
* @see com.smartgwt.client.widgets.grid.ListGrid#setFields
*/
@ClientWidget(value=VListGridField.class)
public class ListGridField extends DataClass
{ // implements com.smartgwt.client.widgets.grid.events.HasCellSavedHandlers, com.smartgwt.client.widgets.grid.events.HasChangeHandlers,
// com.smartgwt.client.widgets.grid.events.HasChangedHandlers, com.smartgwt.client.widgets.grid.events.HasEditorEnterHandlers,
// com.smartgwt.client.widgets.grid.events.HasEditorExitHandlers, com.smartgwt.client.widgets.grid.events.HasRecordClickHandlers {
// public static ListGridField getOrCreateRef(JavaScriptObject jsObj) {
// if(jsObj == null) return null;
// return new ListGridField(jsObj);
// }
public ListGridField(){
}
// public ListGridField(JavaScriptObject jsObj){
// super(jsObj);
// }
public ListGridField(String name) {
setName(name);
}
public ListGridField(String name, int width) {
setName(name);
setWidth(width);
}
public ListGridField(String name, String title) {
setName(name);
setTitle(title);
}
public ListGridField(String name, String title, int width) {
setName(name);
setTitle(title);
setWidth(width);
}
// ********************* Properties / Attributes ***********************
/**
* If true, automatically fetches records and derives a valueMap from {@link
* com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource}. <p> Same as {@link
* com.smartgwt.client.widgets.grid.ListGrid#getAutoFetchDisplayMap autoFetchDisplayMap}, but defined on a per-field basis.
*
* @param autoFetchDisplayMap autoFetchDisplayMap Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#setAutoFetchDisplayMap
*/
public void setAutoFetchDisplayMap(Boolean autoFetchDisplayMap) {
setAttribute("autoFetchDisplayMap", autoFetchDisplayMap);
}
/**
* If true, automatically fetches records and derives a valueMap from {@link
* com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource}. <p> Same as {@link
* com.smartgwt.client.widgets.grid.ListGrid#getAutoFetchDisplayMap autoFetchDisplayMap}, but defined on a per-field basis.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGrid#getAutoFetchDisplayMap
*/
public Boolean getAutoFetchDisplayMap() {
return getAttributeAsBoolean("autoFetchDisplayMap");
}
/**
* Enables autofitting to values or titles for this field.. This overrides the {@link
* com.smartgwt.client.widgets.grid.ListGrid#getAutoFitFieldWidths autoFitFieldWidths} attribute on a per-field basis.
*
* @param autoFitWidth autoFitWidth Default value is null
*/
public void setAutoFitWidth(Boolean autoFitWidth) {
setAttribute("autoFitWidth", autoFitWidth);
}
/**
* Enables autofitting to values or titles for this field.. This overrides the {@link
* com.smartgwt.client.widgets.grid.ListGrid#getAutoFitFieldWidths autoFitFieldWidths} attribute on a per-field basis.
*
*
* @return Boolean
*/
public Boolean getAutoFitWidth() {
return getAttributeAsBoolean("autoFitWidth");
}
/**
* When a user requests column autofitting via the {@link
* com.smartgwt.client.widgets.grid.ListGridField#getGetHeaderContextMenuItems header contextmenu} or via a {@link
* com.smartgwt.client.widgets.grid.ListGridField#getHeaderAutoFitEvent mouse gesture}, what autofit approach is used. If
* set, this setting overrides the autoFitWidthApproach specified at the ListGrid level.
*
* @param autoFitWidthApproach autoFitWidthApproach Default value is null
*/
public void setAutoFitWidthApproach(AutoFitWidthApproach autoFitWidthApproach) {
setAttribute("autoFitWidthApproach", autoFitWidthApproach.getValue());
}
/**
* When a user requests column autofitting via the {@link
* com.smartgwt.client.widgets.grid.ListGridField#getGetHeaderContextMenuItems header contextmenu} or via a {@link
* com.smartgwt.client.widgets.grid.ListGridField#getHeaderAutoFitEvent mouse gesture}, what autofit approach is used. If
* set, this setting overrides the autoFitWidthApproach specified at the ListGrid level.
*
*
* @return AutoFitWidthApproach
*/
public AutoFitWidthApproach getAutoFitWidthApproach() {
return EnumUtil.getEnum(AutoFitWidthApproach.values(), getAttribute("autoFitWidthApproach"));
}
/**
* Whether this field should be automatically frozen when other fields are frozen. When true, the field will be
* automatically frozen to the extreme of the grid. The automatically generated {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCheckboxField checkbox}, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getExpansionField expansion} and {@link
* com.smartgwt.client.widgets.grid.ListGrid#getRowNumberField rowNumber} fields are examples of fields that specify
* <code>autoFreeze: true</code>. <P> You can control the position of this field in the array of frozen fields by providing
* a {@link com.smartgwt.client.widgets.grid.ListGridField#getAutoFreezePosition ListGridField.getAutoFreezePosition}
* implementation.
*
* @param autoFreeze autoFreeze Default value is null
* @see com.smartgwt.client.docs.FrozenFields FrozenFields overview and related methods
*/
public void setAutoFreeze(Boolean autoFreeze) {
setAttribute("autoFreeze", autoFreeze);
}
/**
* Whether this field should be automatically frozen when other fields are frozen. When true, the field will be
* automatically frozen to the extreme of the grid. The automatically generated {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCheckboxField checkbox}, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getExpansionField expansion} and {@link
* com.smartgwt.client.widgets.grid.ListGrid#getRowNumberField rowNumber} fields are examples of fields that specify
* <code>autoFreeze: true</code>. <P> You can control the position of this field in the array of frozen fields by providing
* a {@link com.smartgwt.client.widgets.grid.ListGridField#getAutoFreezePosition ListGridField.getAutoFreezePosition}
* implementation.
*
*
* @return Boolean
* @see com.smartgwt.client.docs.FrozenFields FrozenFields overview and related methods
*/
public Boolean getAutoFreeze() {
return getAttributeAsBoolean("autoFreeze");
}
/**
* Custom base style to apply to all cells in this field instead of {@link
* com.smartgwt.client.widgets.grid.ListGrid#getBaseStyle baseStyle} To override the baseStyle at the row level, use
* {@link com.smartgwt.client.widgets.grid.ListGrid#getRecordBaseStyleProperty record[listGrid.recordBaseStyleProperty]}
* instead.
*
* @param baseStyle baseStyle Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#setRecordBaseStyleProperty
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#effects_lf_grid_cells" target="examples">Grid cells Example</a>
*/
public void setBaseStyle(String baseStyle) {
setAttribute("baseStyle", baseStyle);
}
/**
* Custom base style to apply to all cells in this field instead of {@link
* com.smartgwt.client.widgets.grid.ListGrid#getBaseStyle baseStyle} To override the baseStyle at the row level, use
* {@link com.smartgwt.client.widgets.grid.ListGrid#getRecordBaseStyleProperty record[listGrid.recordBaseStyleProperty]}
* instead.
*
*
* @return String
* @see com.smartgwt.client.widgets.grid.ListGrid#getRecordBaseStyleProperty
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#effects_lf_grid_cells" target="examples">Grid cells Example</a>
*/
public String getBaseStyle() {
return getAttributeAsString("baseStyle");
}
/**
* Whether this field can be dragResized using the mouse. If unset, the default behavior is governed by {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanResizeFields canResizeFields}.
*
* @param canDragResize canDragResize Default value is null
*/
public void setCanDragResize(Boolean canDragResize) {
setAttribute("canDragResize", canDragResize);
}
/**
* Whether this field can be dragResized using the mouse. If unset, the default behavior is governed by {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanResizeFields canResizeFields}.
*
*
* @return Boolean
*/
public Boolean getCanDragResize() {
return getAttributeAsBoolean("canDragResize");
}
/**
* Can this field be edited? May be overridden by setting the 'canEdit' property at the listGrid level. <p> For more
* dynamic control over whether fields can be edited, see {@link com.smartgwt.client.widgets.grid.ListGrid#canEditCell
* ListGrid.canEditCell}.
*
* @param canEdit canEdit Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#setCanEdit
* @see com.smartgwt.client.widgets.grid.ListGrid#setRecordEditProperty
* @see com.smartgwt.client.widgets.grid.ListGrid#canEditCell
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_editing_disable" target="examples">Disable editing Example</a>
*/
public void setCanEdit(Boolean canEdit) {
setAttribute("canEdit", canEdit);
}
/**
* Can this field be edited? May be overridden by setting the 'canEdit' property at the listGrid level. <p> For more
* dynamic control over whether fields can be edited, see {@link com.smartgwt.client.widgets.grid.ListGrid#canEditCell
* ListGrid.canEditCell}.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGrid#getCanEdit
* @see com.smartgwt.client.widgets.grid.ListGrid#getRecordEditProperty
* @see com.smartgwt.client.widgets.grid.ListGrid#canEditCell
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_editing_disable" target="examples">Disable editing Example</a>
*/
public Boolean getCanEdit() {
return getAttributeAsBoolean("canEdit");
}
/**
* Dictates whether the data in this field be exported. Explicitly set this to false to prevent exporting. Has no effect
* if the underlying {@link com.smartgwt.client.data.DataSourceField#getCanExport dataSourceField} is explicitly set to
* canExport: false.
*
* @param canExport canExport Default value is null
*/
public void setCanExport(Boolean canExport) {
setAttribute("canExport", canExport);
}
/**
* Dictates whether the data in this field be exported. Explicitly set this to false to prevent exporting. Has no effect
* if the underlying {@link com.smartgwt.client.data.DataSourceField#getCanExport dataSourceField} is explicitly set to
* canExport: false.
*
*
* @return Boolean
*/
public Boolean getCanExport() {
return getAttributeAsBoolean("canExport");
}
/**
* If showing a filter row for this ListGrid, should the filter criteria for this field be editable
*
* @param canFilter canFilter Default value is null
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_sortfilter_disable_filter" target="examples">Disable filter Example</a>
*/
public void setCanFilter(Boolean canFilter) {
setAttribute("canFilter", canFilter);
}
/**
* If showing a filter row for this ListGrid, should the filter criteria for this field be editable
*
*
* @return Boolean
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_sortfilter_disable_filter" target="examples">Disable filter Example</a>
*/
public Boolean getCanFilter() {
return getAttributeAsBoolean("canFilter");
}
/**
* Whether this field should display freezing/unfreezing options in its header context menu. See {@link
* com.smartgwt.client.docs.FrozenFields}.
*
* @param canFreeze canFreeze Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#getHeaderContextMenuItems
* @see com.smartgwt.client.docs.FrozenFields FrozenFields overview and related methods
*/
public void setCanFreeze(Boolean canFreeze) {
setAttribute("canFreeze", canFreeze);
}
/**
* Whether this field should display freezing/unfreezing options in its header context menu. See {@link
* com.smartgwt.client.docs.FrozenFields}.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGrid#getHeaderContextMenuItems
* @see com.smartgwt.client.docs.FrozenFields FrozenFields overview and related methods
*/
public Boolean getCanFreeze() {
return getAttributeAsBoolean("canFreeze");
}
/**
* Determines whether this field will be groupable in the header context menu.
*
* @param canGroupBy canGroupBy Default value is true
* @see com.smartgwt.client.widgets.grid.ListGrid#groupBy
*/
public void setCanGroupBy(Boolean canGroupBy) {
setAttribute("canGroupBy", canGroupBy);
}
/**
* Determines whether this field will be groupable in the header context menu.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGrid#groupBy
*/
public Boolean getCanGroupBy() {
return getAttributeAsBoolean("canGroupBy");
}
/**
* Whether this field can be hidden via the header context menu.
*
* @param canHide canHide Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#getHeaderContextMenuItems
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setCanHide(Boolean canHide) {
setAttribute("canHide", canHide);
}
/**
* Whether this field can be hidden via the header context menu.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGrid#getHeaderContextMenuItems
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public Boolean getCanHide() {
return getAttributeAsBoolean("canHide");
}
/**
* Determines whether this field can be hilited. Set to false to prevent this field from appearing in HiliteEditor.
*
* @param canHilite canHilite Default value is null
*/
public void setCanHilite(Boolean canHilite) {
setAttribute("canHilite", canHilite);
}
/**
* Determines whether this field can be hilited. Set to false to prevent this field from appearing in HiliteEditor.
*
*
* @return Boolean
*/
public Boolean getCanHilite() {
return getAttributeAsBoolean("canHilite");
}
/**
* Whether this field can be reordered using the mouse. If unset, the default behavior is governed by {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanReorderFields canReorderFields}. Note that setting this property to
* <code>false</code> will lock this field from being moved - that is, the user is prevented from moving this field
* directly by dragging with the mouse, or by dropping another field onto this field. However, unless this field is at
* the extreme edge of the grid, or all fields between it and the extreme edge of the grid are also <code>canReorder:
* false</code>, (ie, if there are unlocked fields on either side of this field), then it is possible that this locked
* field may be reordered automatically, as a result of the user dragging one unlocked field onto another unlocked field.
*
* @param canReorder canReorder Default value is null
*/
public void setCanReorder(Boolean canReorder) {
setAttribute("canReorder", canReorder);
}
/**
* Whether this field can be reordered using the mouse. If unset, the default behavior is governed by {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanReorderFields canReorderFields}. Note that setting this property to
* <code>false</code> will lock this field from being moved - that is, the user is prevented from moving this field
* directly by dragging with the mouse, or by dropping another field onto this field. However, unless this field is at
* the extreme edge of the grid, or all fields between it and the extreme edge of the grid are also <code>canReorder:
* false</code>, (ie, if there are unlocked fields on either side of this field), then it is possible that this locked
* field may be reordered automatically, as a result of the user dragging one unlocked field onto another unlocked field.
*
*
* @return Boolean
*/
public Boolean getCanReorder() {
return getAttributeAsBoolean("canReorder");
}
/**
* Enables or disables sorting by this column. If false, neither interactive nor scripted (via the sort() method)
* instructions will sort the listGrid by this column.
*
* @param canSort canSort Default value is true
* @see com.smartgwt.client.widgets.grid.ListGrid#sort
* @see com.smartgwt.client.widgets.grid.ListGrid#setCanSort
*/
public void setCanSort(Boolean canSort) {
setAttribute("canSort", canSort);
}
/**
* Enables or disables sorting by this column. If false, neither interactive nor scripted (via the sort() method)
* instructions will sort the listGrid by this column.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGrid#sort
* @see com.smartgwt.client.widgets.grid.ListGrid#getCanSort
*/
public Boolean getCanSort() {
return getAttributeAsBoolean("canSort");
}
/**
* When true, this field can only be used for sorting if the data is entirely client-side.
*
* @param canSortClientOnly canSortClientOnly Default value is false
*/
public void setCanSortClientOnly(Boolean canSortClientOnly) {
setAttribute("canSortClientOnly", canSortClientOnly);
}
/**
* When true, this field can only be used for sorting if the data is entirely client-side.
*
*
* @return Boolean
*/
public Boolean getCanSortClientOnly() {
return getAttributeAsBoolean("canSortClientOnly");
}
/**
* Allows a boolean or valueMapped field to be edited without going into edit mode. When this attribute is set, clicking
* on the field will change the value - for boolean fields toggling between <code>true</code> and <code>false</code>, and
* for valueMapped fields, advancing the value to the next option in the valueMap. <P> To enable this feature, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanEdit canEdit} must be set to true. For boolean type fields
* <code>canToggle</code> is true by default, meaning setting <code>canEdit</code> to true implies the user can toggle the
* value via a single click without going into edit mode. You can disable this by explicitly setting <code>canToggle</code>
* to false for a boolean field.<br> Note that you can enable toggling only (without allowing the user to edit other
* fields) by just setting {@link com.smartgwt.client.widgets.grid.ListGrid#getEditEvent grid.editEvent:"none"}. <P> If
* {@link com.smartgwt.client.widgets.grid.ListGrid#getEditEvent editEvent} is set to "click", when the user clicks on the
* field, the value will be toggled, and inline editing will be triggered as usual. Otherwise the toggled value will be
* saved immediately to the server, or if {@link com.smartgwt.client.widgets.grid.ListGrid#getAutoSaveEdits autoSaveEdits}
* has been set to false, will be stored as an edit value for the record.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param canToggle canToggle Default value is varies
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setCanToggle(Boolean canToggle) {
setAttribute("canToggle", canToggle);
}
/**
* Allows a boolean or valueMapped field to be edited without going into edit mode. When this attribute is set, clicking
* on the field will change the value - for boolean fields toggling between <code>true</code> and <code>false</code>, and
* for valueMapped fields, advancing the value to the next option in the valueMap. <P> To enable this feature, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanEdit canEdit} must be set to true. For boolean type fields
* <code>canToggle</code> is true by default, meaning setting <code>canEdit</code> to true implies the user can toggle the
* value via a single click without going into edit mode. You can disable this by explicitly setting <code>canToggle</code>
* to false for a boolean field.<br> Note that you can enable toggling only (without allowing the user to edit other
* fields) by just setting {@link com.smartgwt.client.widgets.grid.ListGrid#getEditEvent grid.editEvent:"none"}. <P> If
* {@link com.smartgwt.client.widgets.grid.ListGrid#getEditEvent editEvent} is set to "click", when the user clicks on the
* field, the value will be toggled, and inline editing will be triggered as usual. Otherwise the toggled value will be
* saved immediately to the server, or if {@link com.smartgwt.client.widgets.grid.ListGrid#getAutoSaveEdits autoSaveEdits}
* has been set to false, will be stored as an edit value for the record.
*
*
* @return Boolean
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public Boolean getCanToggle() {
return getAttributeAsBoolean("canToggle");
}
/**
* Horizontal alignment for cells in this field's column: "left", "right" or "center".<br> If null, alignment is derived
* from {@link com.smartgwt.client.widgets.grid.ListGridField#getAlign align}. If this field is editable, the alignment of
* cells in the body will also be reflected in any editors for the field.
*
* @param cellAlign cellAlign Default value is null
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setCellAlign(Alignment cellAlign) {
setAttribute("cellAlign", cellAlign.getValue());
}
/**
* Horizontal alignment for cells in this field's column: "left", "right" or "center".<br> If null, alignment is derived
* from {@link com.smartgwt.client.widgets.grid.ListGridField#getAlign align}. If this field is editable, the alignment of
* cells in the body will also be reflected in any editors for the field.
*
*
* @return Alignment
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public Alignment getCellAlign() {
return EnumUtil.getEnum(Alignment.values(), getAttribute("cellAlign"));
}
/**
* For a field of type:"icon" only, set the icon that appears in body cells. Unless setting {@link
* com.smartgwt.client.widgets.grid.ListGridField#getIcon field.icon}, setting field.cellIcon will not show an icon in the
* header.
*
* @param cellIcon cellIcon Default value is null
*/
public void setCellIcon(String cellIcon) {
setAttribute("cellIcon", cellIcon);
}
/**
* For a field of type:"icon" only, set the icon that appears in body cells. Unless setting {@link
* com.smartgwt.client.widgets.grid.ListGridField#getIcon field.icon}, setting field.cellIcon will not show an icon in the
* header.
*
*
* @return String
*/
public String getCellIcon() {
return getAttributeAsString("cellIcon");
}
/**
* dataPath for this field. This property allows the grid to display details of nested data structures in a flat list of
* columns.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param dataPath dataPath Default value is null
*/
public void setDataPath(String dataPath) {
setAttribute("dataPath", dataPath);
}
/**
* dataPath for this field. This property allows the grid to display details of nested data structures in a flat list of
* columns.
*
*
* @return String
*/
public String getDataPath() {
return getAttributeAsString("dataPath");
}
/**
* Display format to use for date type values within this field. <P> The {@link
* com.smartgwt.client.widgets.grid.ListGridField#getTimeFormatter timeFormatter} may also be used to format underlying
* Date values as times (ommitting the date part entirely). If both <code>dateFormatter</code> and
* <code>timeFormatter</code> are specified on a field, for fields specified as {@link
* com.smartgwt.client.widgets.grid.ListGridField#getType type "time"} the <code>timeFormatter</code> will be used,
* otherwise the <code>dateFormatter</code> <P> If <code>field.dateFormatter</code> and <code>field.timeFormatter</code> is
* unspecified, date display format may be defined at the component level via {@link
* com.smartgwt.client.widgets.grid.ListGrid#getDateFormatter dateFormatter}, or for fields of type <code>"datetime"</code>
* {@link com.smartgwt.client.widgets.grid.ListGrid#getDatetimeFormatter datetimeFormatter}. Otherwise the default is to
* use the system-wide default short date format, configured via Date.setShortDisplayFormat. Specify any valid {@link
* com.smartgwt.client.types.DateDisplayFormat} to change the format used by this item. <P> If this field is editable the
* dateFormatter will also be passed to the editor created to edit this field. Note that you can also specify an explicit
* {@link com.smartgwt.client.widgets.grid.ListGridField#getInputFormat inputFormat} which will be passed through to the
* editor as well, though this is not typically required as the input format should be automatically derived by the Smart
* GWT system for standard DateDisplayFormats.
*
* @param dateFormatter dateFormatter Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#setDateFormatter
* @see com.smartgwt.client.widgets.grid.ListGrid#setDatetimeFormatter
* @see com.smartgwt.client.widgets.grid.ListGridField#setTimeFormatter
*/
public void setDateFormatter(DateDisplayFormat dateFormatter) {
setAttribute("dateFormatter", dateFormatter.getValue());
}
/**
* Display format to use for date type values within this field. <P> The {@link
* com.smartgwt.client.widgets.grid.ListGridField#getTimeFormatter timeFormatter} may also be used to format underlying
* Date values as times (ommitting the date part entirely). If both <code>dateFormatter</code> and
* <code>timeFormatter</code> are specified on a field, for fields specified as {@link
* com.smartgwt.client.widgets.grid.ListGridField#getType type "time"} the <code>timeFormatter</code> will be used,
* otherwise the <code>dateFormatter</code> <P> If <code>field.dateFormatter</code> and <code>field.timeFormatter</code> is
* unspecified, date display format may be defined at the component level via {@link
* com.smartgwt.client.widgets.grid.ListGrid#getDateFormatter dateFormatter}, or for fields of type <code>"datetime"</code>
* {@link com.smartgwt.client.widgets.grid.ListGrid#getDatetimeFormatter datetimeFormatter}. Otherwise the default is to
* use the system-wide default short date format, configured via Date.setShortDisplayFormat. Specify any valid {@link
* com.smartgwt.client.types.DateDisplayFormat} to change the format used by this item. <P> If this field is editable the
* dateFormatter will also be passed to the editor created to edit this field. Note that you can also specify an explicit
* {@link com.smartgwt.client.widgets.grid.ListGridField#getInputFormat inputFormat} which will be passed through to the
* editor as well, though this is not typically required as the input format should be automatically derived by the Smart
* GWT system for standard DateDisplayFormats.
*
*
* @return DateDisplayFormat
* @see com.smartgwt.client.widgets.grid.ListGrid#getDateFormatter
* @see com.smartgwt.client.widgets.grid.ListGrid#getDatetimeFormatter
* @see com.smartgwt.client.widgets.grid.ListGridField#getTimeFormatter
*/
public DateDisplayFormat getDateFormatter() {
return EnumUtil.getEnum(DateDisplayFormat.values(), getAttribute("dateFormatter"));
}
/**
* Default groupingMode used when the user does not specify a mode or grouping is triggered programmatically and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getGroupingMode field.groupingMode} is unset. See {@link
* com.smartgwt.client.widgets.grid.ListGridField#getGroupingModes field.groupingModes}.
*
* @param defaultGroupingMode defaultGroupingMode Default value is null
*/
public void setDefaultGroupingMode(String defaultGroupingMode) {
setAttribute("defaultGroupingMode", defaultGroupingMode);
}
/**
* Default groupingMode used when the user does not specify a mode or grouping is triggered programmatically and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getGroupingMode field.groupingMode} is unset. See {@link
* com.smartgwt.client.widgets.grid.ListGridField#getGroupingModes field.groupingModes}.
*
*
* @return String
*/
public String getDefaultGroupingMode() {
return getAttributeAsString("defaultGroupingMode");
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getDefaultIconSrc defaultIconSrc}.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param defaultIconSrc defaultIconSrc Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setDefaultIconSrc(String defaultIconSrc) {
setAttribute("defaultIconSrc", defaultIconSrc);
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getDefaultIconSrc defaultIconSrc}.
*
*
* @return String
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public String getDefaultIconSrc() {
return getAttributeAsString("defaultIconSrc");
}
/**
* Specifies the {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} field used to
* retrieve the display values that are to be mapped from the internal values specified by {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueField valueField}. <P> If no <code>optionDataSource</code> is
* defined for the field, the cell will display the displayField value for the current record instead of the underlying
* value for this field. This approach can be used for situations where field values need a stored value to displayed
* value mapping, but the set of all possible values is too large to load as a ValueMap - see {@link
* com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} for more details on this approach.
* Note that if this field is editable this will also be applied to this field's editors. <a
* href="http://www.smartclient.com/smartgwtee/showcase/#large_valuemap_sql" target="examples">This sample</a> illustrates
* this approach achieved via a server-side SQL join. <p> The display value for a record with a specified
* <code>displayField</code> can be picked up via {@link com.smartgwt.client.widgets.grid.ListGrid#getDisplayValue
* ListGrid.getDisplayValue}.
*
* @param displayField displayField Default value is null
*/
public void setDisplayField(String displayField) {
setAttribute("displayField", displayField);
}
/**
* Specifies the {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} field used to
* retrieve the display values that are to be mapped from the internal values specified by {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueField valueField}. <P> If no <code>optionDataSource</code> is
* defined for the field, the cell will display the displayField value for the current record instead of the underlying
* value for this field. This approach can be used for situations where field values need a stored value to displayed
* value mapping, but the set of all possible values is too large to load as a ValueMap - see {@link
* com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} for more details on this approach.
* Note that if this field is editable this will also be applied to this field's editors. <a
* href="http://www.smartclient.com/smartgwtee/showcase/#large_valuemap_sql" target="examples">This sample</a> illustrates
* this approach achieved via a server-side SQL join. <p> The display value for a record with a specified
* <code>displayField</code> can be picked up via {@link com.smartgwt.client.widgets.grid.ListGrid#getDisplayValue
* ListGrid.getDisplayValue}.
*
*
* @return String
*/
public String getDisplayField() {
return getAttributeAsString("displayField");
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getIconHeight iconHeight}.<br> If this property unset, the iconHeight
* property from the editor can be picked up from {@link com.smartgwt.client.widgets.grid.ListGridField#getIconHeight
* iconHeight} instead.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param editorIconHeight editorIconHeight Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setEditorIconHeight(Integer editorIconHeight) {
setAttribute("editorIconHeight", editorIconHeight);
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getIconHeight iconHeight}.<br> If this property unset, the iconHeight
* property from the editor can be picked up from {@link com.smartgwt.client.widgets.grid.ListGridField#getIconHeight
* iconHeight} instead.
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public Integer getEditorIconHeight() {
return getAttributeAsInt("editorIconHeight");
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getIconWidth iconWidth}.<br> If this property unset, the iconWidth
* property from the editor can be picked up from {@link com.smartgwt.client.widgets.grid.ListGridField#getIconWidth
* iconWidth} instead.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param editorIconWidth editorIconWidth Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setEditorIconWidth(Integer editorIconWidth) {
setAttribute("editorIconWidth", editorIconWidth);
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getIconWidth iconWidth}.<br> If this property unset, the iconWidth
* property from the editor can be picked up from {@link com.smartgwt.client.widgets.grid.ListGridField#getIconWidth
* iconWidth} instead.
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public Integer getEditorIconWidth() {
return getAttributeAsInt("editorIconWidth");
}
/**
* When some cell in this field is being edited, this property can be used to apply an explicit {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getImageURLPrefix imageURLPrefix} to the editor in question. This can
* be used to modify the valueIcons within the editor.<br> If unset, but {@link
* com.smartgwt.client.widgets.grid.ListGridField#getImageURLPrefix imageURLPrefix} is specified, that will be used
* instead.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param editorImageURLPrefix editorImageURLPrefix Default value is null
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setEditorImageURLPrefix(String editorImageURLPrefix) {
setAttribute("editorImageURLPrefix", editorImageURLPrefix);
}
/**
* When some cell in this field is being edited, this property can be used to apply an explicit {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getImageURLPrefix imageURLPrefix} to the editor in question. This can
* be used to modify the valueIcons within the editor.<br> If unset, but {@link
* com.smartgwt.client.widgets.grid.ListGridField#getImageURLPrefix imageURLPrefix} is specified, that will be used
* instead.
*
*
* @return String
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public String getEditorImageURLPrefix() {
return getAttributeAsString("editorImageURLPrefix");
}
/**
* When some cell in this field is being edited, this property can be used to apply an explicit {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getImageURLSuffix imageURLSuffix} to the editor in question. This can
* be used to modify the valueIcons within the editor.<br> If unset, but {@link
* com.smartgwt.client.widgets.grid.ListGridField#getImageURLPrefix imageURLPrefix} is specified, that will be used
* instead.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param editorImageURLSuffix editorImageURLSuffix Default value is null
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setEditorImageURLSuffix(String editorImageURLSuffix) {
setAttribute("editorImageURLSuffix", editorImageURLSuffix);
}
/**
* When some cell in this field is being edited, this property can be used to apply an explicit {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getImageURLSuffix imageURLSuffix} to the editor in question. This can
* be used to modify the valueIcons within the editor.<br> If unset, but {@link
* com.smartgwt.client.widgets.grid.ListGridField#getImageURLPrefix imageURLPrefix} is specified, that will be used
* instead.
*
*
* @return String
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public String getEditorImageURLSuffix() {
return getAttributeAsString("editorImageURLSuffix");
}
/**
* When some cell in this field is being edited, setting this property will specify the height for value icons in the
* cell's editor. If unset, the editor's valueIcon width and height will be determined in the same way as it would be for a
* static cell.
*
* @param editorValueIconHeight editorValueIconHeight Default value is null
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setEditorValueIconHeight(Integer editorValueIconHeight) {
setAttribute("editorValueIconHeight", editorValueIconHeight);
}
/**
* When some cell in this field is being edited, setting this property will specify the height for value icons in the
* cell's editor. If unset, the editor's valueIcon width and height will be determined in the same way as it would be for a
* static cell.
*
*
* @return Integer
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Integer getEditorValueIconHeight() {
return getAttributeAsInt("editorValueIconHeight");
}
/**
* When some cell in this field is being edited, setting this property will specify the width for value icons in the cell's
* editor. If unset, the editor's valueIcon width and height will be determined in the same way as it would be for a static
* cell.
*
* @param editorValueIconWidth editorValueIconWidth Default value is null
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setEditorValueIconWidth(Integer editorValueIconWidth) {
setAttribute("editorValueIconWidth", editorValueIconWidth);
}
/**
* When some cell in this field is being edited, setting this property will specify the width for value icons in the cell's
* editor. If unset, the editor's valueIcon width and height will be determined in the same way as it would be for a static
* cell.
*
*
* @return Integer
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Integer getEditorValueIconWidth() {
return getAttributeAsInt("editorValueIconWidth");
}
/**
* The value to display for a cell whose value is null or the empty string after applying formatCellValue and valueMap (if
* any). <p> This is the field-specific attribute. You may also set the emptyCellValue at the grid level to define the
* emptyCellValue for all empty fields in the grid.
*
* @param emptyCellValue emptyCellValue Default value is " "
* @see com.smartgwt.client.widgets.grid.ListGrid#setEmptyCellValue
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_appearance_empty_values" target="examples">Empty values Example</a>
*/
public void setEmptyCellValue(String emptyCellValue) {
setAttribute("emptyCellValue", emptyCellValue);
}
/**
* The value to display for a cell whose value is null or the empty string after applying formatCellValue and valueMap (if
* any). <p> This is the field-specific attribute. You may also set the emptyCellValue at the grid level to define the
* emptyCellValue for all empty fields in the grid.
*
*
* @return String
* @see com.smartgwt.client.widgets.grid.ListGrid#getEmptyCellValue
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_appearance_empty_values" target="examples">Empty values Example</a>
*/
public String getEmptyCellValue() {
return getAttributeAsString("emptyCellValue");
}
/**
* What to do when a user hits enter while editing this field?<br> Overrides the <code>enterKeyEditAction</code> as
* specified at the listGrid level while focus is in this field.
*
* @param enterKeyEditAction enterKeyEditAction Default value is "done"
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setEnterKeyEditAction(EnterKeyEditAction enterKeyEditAction) {
setAttribute("enterKeyEditAction", enterKeyEditAction.getValue());
}
/**
* What to do when a user hits enter while editing this field?<br> Overrides the <code>enterKeyEditAction</code> as
* specified at the listGrid level while focus is in this field.
*
*
* @return EnterKeyEditAction
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public EnterKeyEditAction getEnterKeyEditAction() {
return EnumUtil.getEnum(EnterKeyEditAction.values(), getAttribute("enterKeyEditAction"));
}
/**
* By default HTML values in ListGrid cells will be interpreted by the browser. Setting this flag to true will causes HTML
* characters to be escaped, meaning the raw value of the field (for example <code>"<b>AAA</b>"</code>) is
* displayed to the user rather than the interpreted HTML (for example <code>"<b>AAA</b>"</code>)
*
* @param escapeHTML escapeHTML Default value is null
*/
public void setEscapeHTML(Boolean escapeHTML) {
setAttribute("escapeHTML", escapeHTML);
}
/**
* By default HTML values in ListGrid cells will be interpreted by the browser. Setting this flag to true will causes HTML
* characters to be escaped, meaning the raw value of the field (for example <code>"<b>AAA</b>"</code>) is
* displayed to the user rather than the interpreted HTML (for example <code>"<b>AAA</b>"</code>)
*
*
* @return Boolean
*/
public Boolean getEscapeHTML() {
return getAttributeAsBoolean("escapeHTML");
}
/**
* What to do when a user hits escape while editing this field?<br> Overrides the <code>escapeKeyEditAction</code> as
* specified at the listGrid level while focus is in this field.
*
* @param escapeKeyEditAction escapeKeyEditAction Default value is "cancel"
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setEscapeKeyEditAction(EscapeKeyEditAction escapeKeyEditAction) {
setAttribute("escapeKeyEditAction", escapeKeyEditAction.getValue());
}
/**
* What to do when a user hits escape while editing this field?<br> Overrides the <code>escapeKeyEditAction</code> as
* specified at the listGrid level while focus is in this field.
*
*
* @return EscapeKeyEditAction
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public EscapeKeyEditAction getEscapeKeyEditAction() {
return EnumUtil.getEnum(EscapeKeyEditAction.values(), getAttribute("escapeKeyEditAction"));
}
/**
* Dictates whether the data in this field should be exported raw by {@link
* com.smartgwt.client.widgets.DataBoundComponent#exportClientData exportClientData()}. If set to true for a field, the
* values in the field-formatters will not be executed for data in this field. Decreases the time taken for large exports.
*
* @param exportRawValues exportRawValues Default value is null
*/
public void setExportRawValues(Boolean exportRawValues) {
setAttribute("exportRawValues", exportRawValues);
}
/**
* Dictates whether the data in this field should be exported raw by {@link
* com.smartgwt.client.widgets.DataBoundComponent#exportClientData exportClientData()}. If set to true for a field, the
* values in the field-formatters will not be executed for data in this field. Decreases the time taken for large exports.
*
*
* @return Boolean
*/
public Boolean getExportRawValues() {
return getAttributeAsBoolean("exportRawValues");
}
/**
* If we're showing the filterEditor (listGrid.showFilterEditor is true), this property determines whether this list
* should be filtered every time the user edits the value of the filter editor for this field.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param filterOnKeypress filterOnKeypress Default value is null
*/
public void setFilterOnKeypress(Boolean filterOnKeypress) {
setAttribute("filterOnKeypress", filterOnKeypress);
}
/**
* If we're showing the filterEditor (listGrid.showFilterEditor is true), this property determines whether this list
* should be filtered every time the user edits the value of the filter editor for this field.
*
*
* @return Boolean
*/
public Boolean getFilterOnKeypress() {
return getAttributeAsBoolean("filterOnKeypress");
}
/**
* With the {@link com.smartgwt.client.widgets.grid.ListGrid#getShowFilterEditor FilterEditor} showing, the Operator to
* use when matching values for this field. <P> Note that you can set all FilterEditor fields to default to either
* substring or exact match via {@link com.smartgwt.client.widgets.grid.ListGrid#getAutoFetchAsFilter autoFetchAsFilter},
* but if you want a mix of exact vs substring match on different fields, you need to use this property, and your ListGrid
* will produce {@link com.smartgwt.client.data.AdvancedCriteria} rather than the simpler {@link
* com.smartgwt.client.data.Criteria} format. This is automatically and transparently handled by the Smart GWT Server's
* SQLDataSource and HibernateDataSource in Power Edition or above, but if you have your own filtering implementation, it
* will need to be able to handle AdvancedCriteria.
*
* @param filterOperator filterOperator Default value is null
*/
public void setFilterOperator(OperatorId filterOperator) {
setAttribute("filterOperator", filterOperator.getValue());
}
/**
* With the {@link com.smartgwt.client.widgets.grid.ListGrid#getShowFilterEditor FilterEditor} showing, the Operator to
* use when matching values for this field. <P> Note that you can set all FilterEditor fields to default to either
* substring or exact match via {@link com.smartgwt.client.widgets.grid.ListGrid#getAutoFetchAsFilter autoFetchAsFilter},
* but if you want a mix of exact vs substring match on different fields, you need to use this property, and your ListGrid
* will produce {@link com.smartgwt.client.data.AdvancedCriteria} rather than the simpler {@link
* com.smartgwt.client.data.Criteria} format. This is automatically and transparently handled by the Smart GWT Server's
* SQLDataSource and HibernateDataSource in Power Edition or above, but if you have your own filtering implementation, it
* will need to be able to handle AdvancedCriteria.
*
*
* @return OperatorId
*/
public OperatorId getFilterOperator() {
return EnumUtil.getEnum(OperatorId.values(), getAttribute("filterOperator"));
}
/**
* Whether this field should be "frozen" for the purposes of horizontal scrolling. See {@link
* com.smartgwt.client.docs.FrozenFields}.
*
* @param frozen frozen Default value is null
* @see com.smartgwt.client.docs.FrozenFields FrozenFields overview and related methods
*/
public void setFrozen(Boolean frozen) {
setAttribute("frozen", frozen);
}
/**
* Whether this field should be "frozen" for the purposes of horizontal scrolling. See {@link
* com.smartgwt.client.docs.FrozenFields}.
*
*
* @return Boolean
* @see com.smartgwt.client.docs.FrozenFields FrozenFields overview and related methods
*/
public Boolean getFrozen() {
return getAttributeAsBoolean("frozen");
}
/**
* Granularity of grouping for numeric fields. <P> Groups will be formed based on ranges of values of size
* <code>groupGranularity</code>. For example, if groupGranularity were 1000, groups would be 0-1000, 1000-2000, etc.
*
* @param groupGranularity groupGranularity Default value is null
*/
public void setGroupGranularity(Integer groupGranularity) {
setAttribute("groupGranularity", groupGranularity);
}
/**
* Granularity of grouping for numeric fields. <P> Groups will be formed based on ranges of values of size
* <code>groupGranularity</code>. For example, if groupGranularity were 1000, groups would be 0-1000, 1000-2000, etc.
*
*
* @return Integer
*/
public Integer getGroupGranularity() {
return getAttributeAsInt("groupGranularity");
}
/**
* For a field that allows multiple {@link com.smartgwt.client.widgets.grid.ListGridField#getGroupingModes grouping modes},
* the current grouping mode. <P> This property is set when a user chooses a particular grouping mode, and may be set on
* ListGrid creation to affect the initial grouping.
*
* @param groupingMode groupingMode Default value is null
*/
public void setGroupingMode(String groupingMode) {
setAttribute("groupingMode", groupingMode);
}
/**
* For a field that allows multiple {@link com.smartgwt.client.widgets.grid.ListGridField#getGroupingModes grouping modes},
* the current grouping mode. <P> This property is set when a user chooses a particular grouping mode, and may be set on
* ListGrid creation to affect the initial grouping.
*
*
* @return String
*/
public String getGroupingMode() {
return getAttributeAsString("groupingMode");
}
/**
* For fields of type:"float" or derived from float, number of digits after the decimal point to consider when grouping.
* <P> For example, <code>groupPrecision:2</code> indicates that 45.238 and 45.231 group together, but 45.22 and 45.27 are
* separate. <P> See also {@link com.smartgwt.client.widgets.grid.ListGridField#getGroupGranularity groupGranularity} for
* grouping by broader ranges.
*
* @param groupPrecision groupPrecision Default value is null
*/
public void setGroupPrecision(Integer groupPrecision) {
setAttribute("groupPrecision", groupPrecision);
}
/**
* For fields of type:"float" or derived from float, number of digits after the decimal point to consider when grouping.
* <P> For example, <code>groupPrecision:2</code> indicates that 45.238 and 45.231 group together, but 45.22 and 45.27 are
* separate. <P> See also {@link com.smartgwt.client.widgets.grid.ListGridField#getGroupGranularity groupGranularity} for
* grouping by broader ranges.
*
*
* @return Integer
*/
public Integer getGroupPrecision() {
return getAttributeAsInt("groupPrecision");
}
/**
* Custom base style to apply to this field's header button instead of {@link
* com.smartgwt.client.widgets.grid.ListGrid#getHeaderBaseStyle headerBaseStyle}.<br> Note that depending on the header
* button constructor, you may have to override {@link com.smartgwt.client.widgets.grid.ListGridField#getHeaderTitleStyle
* headerTitleStyle} as well.
*
* @param headerBaseStyle headerBaseStyle Default value is null
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setHeaderBaseStyle(String headerBaseStyle) {
setAttribute("headerBaseStyle", headerBaseStyle);
}
/**
* Custom base style to apply to this field's header button instead of {@link
* com.smartgwt.client.widgets.grid.ListGrid#getHeaderBaseStyle headerBaseStyle}.<br> Note that depending on the header
* button constructor, you may have to override {@link com.smartgwt.client.widgets.grid.ListGridField#getHeaderTitleStyle
* headerTitleStyle} as well.
*
*
* @return String
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public String getHeaderBaseStyle() {
return getAttributeAsString("headerBaseStyle");
}
/**
* Custom titleStyle to apply to this field's header button instead of {@link
* com.smartgwt.client.widgets.grid.ListGrid#getHeaderTitleStyle headerTitleStyle}.<br> Note that this will typically only
* have an effect if {@link com.smartgwt.client.widgets.grid.ListGrid#getHeaderButtonConstructor headerButtonConstructor}
* is set to {@link com.smartgwt.client.widgets.StretchImgButton} or a subclass thereof.
*
* @param headerTitleStyle headerTitleStyle Default value is null
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setHeaderTitleStyle(String headerTitleStyle) {
setAttribute("headerTitleStyle", headerTitleStyle);
}
/**
* Custom titleStyle to apply to this field's header button instead of {@link
* com.smartgwt.client.widgets.grid.ListGrid#getHeaderTitleStyle headerTitleStyle}.<br> Note that this will typically only
* have an effect if {@link com.smartgwt.client.widgets.grid.ListGrid#getHeaderButtonConstructor headerButtonConstructor}
* is set to {@link com.smartgwt.client.widgets.StretchImgButton} or a subclass thereof.
*
*
* @return String
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public String getHeaderTitleStyle() {
return getAttributeAsString("headerTitleStyle");
}
/**
* Optional icon to show next to the title for this field. Should be set to a URL to an image. Relative paths will be
* evaluated starting at the imgDir of this component. This URL is partial - it may be updated to indicate the current
* disabled (etc) state of the field. <P> If {@link com.smartgwt.client.widgets.grid.ListGridField#getType field.type} is
* set to "icon", this icon will also be shown in every cell of this field - see also {@link
* com.smartgwt.client.widgets.grid.ListGridField#getCellIcon field.cellIcon}.
*
* @param icon icon Default value is null
*/
public void setIcon(String icon) {
setAttribute("icon", icon);
}
/**
* Optional icon to show next to the title for this field. Should be set to a URL to an image. Relative paths will be
* evaluated starting at the imgDir of this component. This URL is partial - it may be updated to indicate the current
* disabled (etc) state of the field. <P> If {@link com.smartgwt.client.widgets.grid.ListGridField#getType field.type} is
* set to "icon", this icon will also be shown in every cell of this field - see also {@link
* com.smartgwt.client.widgets.grid.ListGridField#getCellIcon field.cellIcon}.
*
*
* @return String
*/
// public String getIcon() {
// return getAttributeAsString("icon");
// }
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getIcon icon} is specified, this property can be used to
* specify the height of the icon to be displayed in the ListGrid header button. (See {@link
* com.smartgwt.client.widgets.StatefulCanvas#getIconHeight iconHeight})<br> If this field is editable, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getEditorIconHeight editorIconHeight} is unset, this property will be
* passed onto the editors for this field as {@link com.smartgwt.client.widgets.form.fields.FormItem#getIconWidth
* iconWidth}, which will effect the default size for {@link com.smartgwt.client.widgets.grid.ListGridField#getIcons
* icons} displayed in the editor.
*
* @param iconHeight iconHeight Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcons
*/
public void setIconHeight(Integer iconHeight) {
setAttribute("iconHeight", iconHeight);
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getIcon icon} is specified, this property can be used to
* specify the height of the icon to be displayed in the ListGrid header button. (See {@link
* com.smartgwt.client.widgets.StatefulCanvas#getIconHeight iconHeight})<br> If this field is editable, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getEditorIconHeight editorIconHeight} is unset, this property will be
* passed onto the editors for this field as {@link com.smartgwt.client.widgets.form.fields.FormItem#getIconWidth
* iconWidth}, which will effect the default size for {@link com.smartgwt.client.widgets.grid.ListGridField#getIcons
* icons} displayed in the editor.
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcons
*/
public Integer getIconHeight() {
return getAttributeAsInt("iconHeight");
}
/**
* If this field is showing an icon, should it appear to the left or right of the title?<br> Valid options are
* <code>"left"</code> or <code>"right"</code>
*
* @param iconOrientation iconOrientation Default value is "left"
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
*/
public void setIconOrientation(String iconOrientation) {
setAttribute("iconOrientation", iconOrientation);
}
/**
* If this field is showing an icon, should it appear to the left or right of the title?<br> Valid options are
* <code>"left"</code> or <code>"right"</code>
*
*
* @return String
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
*/
public String getIconOrientation() {
return getAttributeAsString("iconOrientation");
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getIcon icon} is specified, this property can be used to
* specify the size of the icon to be displayed in the ListGrid header button. (See {@link
* com.smartgwt.client.widgets.StatefulCanvas#getIconSize iconSize})
*
* @param iconSize iconSize Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
*/
public void setIconSize(Integer iconSize) {
setAttribute("iconSize", iconSize);
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getIcon icon} is specified, this property can be used to
* specify the size of the icon to be displayed in the ListGrid header button. (See {@link
* com.smartgwt.client.widgets.StatefulCanvas#getIconSize iconSize})
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
*/
public Integer getIconSize() {
return getAttributeAsInt("iconSize");
}
/**
* Pixels between icon and title text.
*
* @param iconSpacing iconSpacing Default value is 6
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public void setIconSpacing(int iconSpacing) {
setAttribute("iconSpacing", iconSpacing);
}
/**
* Pixels between icon and title text.
*
*
* @return int
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public int getIconSpacing() {
return getAttributeAsInt("iconSpacing");
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getIconVAlign iconVAlign}.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param iconVAlign iconVAlign Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public void setIconVAlign(String iconVAlign) {
setAttribute("iconVAlign", iconVAlign);
}
/**
* If this field is editable, this property will be passed to editors displayed for cells within this field as {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getIconVAlign iconVAlign}.
*
*
* @return String
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcons
* @see com.smartgwt.client.docs.Editing Editing overview and related methods
*/
public String getIconVAlign() {
return getAttributeAsString("iconVAlign");
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getIcon icon} is specified, this property can be used to
* specify the width of the icon to be displayed in the ListGrid header button. (See {@link
* com.smartgwt.client.widgets.StatefulCanvas#getIconWidth iconWidth})<br> If this field is editable, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getEditorIconWidth editorIconWidth} is unset, this property will be
* passed onto the editors for this field as {@link com.smartgwt.client.widgets.form.fields.FormItem#getIconWidth
* iconWidth}, which will effect the default size for {@link com.smartgwt.client.widgets.grid.ListGridField#getIcons
* icons} displayed in the editor.
*
* @param iconWidth iconWidth Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcons
*/
public void setIconWidth(Integer iconWidth) {
setAttribute("iconWidth", iconWidth);
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getIcon icon} is specified, this property can be used to
* specify the width of the icon to be displayed in the ListGrid header button. (See {@link
* com.smartgwt.client.widgets.StatefulCanvas#getIconWidth iconWidth})<br> If this field is editable, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getEditorIconWidth editorIconWidth} is unset, this property will be
* passed onto the editors for this field as {@link com.smartgwt.client.widgets.form.fields.FormItem#getIconWidth
* iconWidth}, which will effect the default size for {@link com.smartgwt.client.widgets.grid.ListGridField#getIcons
* icons} displayed in the editor.
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcons
*/
public Integer getIconWidth() {
return getAttributeAsInt("iconWidth");
}
/**
* Height of image shown for fieldTypes image and imageFile in this field. <P> If set to a String, assumed to be a property
* on each record that specifies the image height. For example, if <code>field.imageHeight</code> is "logoHeight",
* <code>record.logoHeight</code> will control the height of the image.
*
* @param imageHeight imageHeight Default value is 16
* @see com.smartgwt.client.widgets.grid.ListGrid#setImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#setImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#setImageWidth
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setImageHeight(int imageHeight) {
setAttribute("imageHeight", imageHeight);
}
/**
* Height of image shown for fieldTypes image and imageFile in this field. <P> If set to a String, assumed to be a property
* on each record that specifies the image height. For example, if <code>field.imageHeight</code> is "logoHeight",
* <code>record.logoHeight</code> will control the height of the image.
*
*
* @return int
* @see com.smartgwt.client.widgets.grid.ListGrid#getImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#getImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#getImageWidth
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public int getImageHeight() {
return getAttributeAsInt("imageHeight");
}
/**
* Size of images shown for fieldTypes image and imageFile in this field. This setting overrides the global ListGrid
* default {@link com.smartgwt.client.widgets.grid.ListGrid#getImageSize imageSize}. <P> If set to a String, assumed to be
* a property on each record that specifies the image height. For example, if <code>field.imageSize</code> is "logoSize",
* <code>record.logoSize</code> will control the size of the image.
*
* @param imageSize imageSize Default value is 16
* @see com.smartgwt.client.widgets.grid.ListGridField#setImageWidth
* @see com.smartgwt.client.widgets.grid.ListGridField#setImageHeight
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setImageSize(int imageSize) {
setAttribute("imageSize", imageSize);
}
/**
* Size of images shown for fieldTypes image and imageFile in this field. This setting overrides the global ListGrid
* default {@link com.smartgwt.client.widgets.grid.ListGrid#getImageSize imageSize}. <P> If set to a String, assumed to be
* a property on each record that specifies the image height. For example, if <code>field.imageSize</code> is "logoSize",
* <code>record.logoSize</code> will control the size of the image.
*
*
* @return int
* @see com.smartgwt.client.widgets.grid.ListGridField#getImageWidth
* @see com.smartgwt.client.widgets.grid.ListGridField#getImageHeight
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public int getImageSize() {
return getAttributeAsInt("imageSize");
}
/**
* If this field has type [{@link com.smartgwt.client.types.ListGridFieldType}] set to <code>"image"</code> and the URL for
* the image displayed is not absolute, the path of the URL will be relative to this string<br> Alternatively, if this
* field displays any valueIcons, this prefix will be applied to the beginning of any {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIcons valueIcons} when determining the URL for the image.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param imageURLPrefix imageURLPrefix Default value is null
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_datatypes_image" target="examples">Image Example</a>
*/
public void setImageURLPrefix(String imageURLPrefix) {
setAttribute("imageURLPrefix", imageURLPrefix);
}
/**
* If this field has type [{@link com.smartgwt.client.types.ListGridFieldType}] set to <code>"image"</code> and the URL for
* the image displayed is not absolute, the path of the URL will be relative to this string<br> Alternatively, if this
* field displays any valueIcons, this prefix will be applied to the beginning of any {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIcons valueIcons} when determining the URL for the image.
*
*
* @return String
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_datatypes_image" target="examples">Image Example</a>
*/
public String getImageURLPrefix() {
return getAttributeAsString("imageURLPrefix");
}
/**
* If any cells in this field are showing a value icon (see: {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIcons valueIcons}) or this is has {@link
* com.smartgwt.client.types.ListGridFieldType} set to <code>"image"</code>, this the value of this property will be
* appended to the end of the URL for the icon displayed.<br> Typical usage might be to append a file type such as
* <code>".gif"</code> to the filename of the image.<br> For editable fields, this property will also be passed through to
* any editors as {@link com.smartgwt.client.widgets.form.fields.FormItem#getImageURLSuffix imageURLSuffix}.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param imageURLSuffix imageURLSuffix Default value is null
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_datatypes_image" target="examples">Image Example</a>
*/
public void setImageURLSuffix(String imageURLSuffix) {
setAttribute("imageURLSuffix", imageURLSuffix);
}
/**
* If any cells in this field are showing a value icon (see: {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIcons valueIcons}) or this is has {@link
* com.smartgwt.client.types.ListGridFieldType} set to <code>"image"</code>, this the value of this property will be
* appended to the end of the URL for the icon displayed.<br> Typical usage might be to append a file type such as
* <code>".gif"</code> to the filename of the image.<br> For editable fields, this property will also be passed through to
* any editors as {@link com.smartgwt.client.widgets.form.fields.FormItem#getImageURLSuffix imageURLSuffix}.
*
*
* @return String
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_datatypes_image" target="examples">Image Example</a>
*/
public String getImageURLSuffix() {
return getAttributeAsString("imageURLSuffix");
}
/**
* Width of images shown for fieldTypes image and imageFile in this field. <P> If set to a String, assumed to be a property
* on each record that specifies the image width. For example, if <code>field.imageWidth</code> is "logoWidth",
* <code>record.logoWidth</code> will control the width of the image.
*
* @param imageWidth imageWidth Default value is 16
* @see com.smartgwt.client.widgets.grid.ListGrid#setImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#setImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#setImageHeight
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setImageWidth(int imageWidth) {
setAttribute("imageWidth", imageWidth);
}
/**
* Width of images shown for fieldTypes image and imageFile in this field. <P> If set to a String, assumed to be a property
* on each record that specifies the image width. For example, if <code>field.imageWidth</code> is "logoWidth",
* <code>record.logoWidth</code> will control the width of the image.
*
*
* @return int
* @see com.smartgwt.client.widgets.grid.ListGrid#getImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#getImageSize
* @see com.smartgwt.client.widgets.grid.ListGridField#getImageHeight
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public int getImageWidth() {
return getAttributeAsInt("imageWidth");
}
/**
* If a listGrid is showing a field of type summary, should this field be passed to the recordSummaryFunction when
* calculating the summary value to display. If unset, fields are included if they are of type "integer" or "float" only
* (since most summary functions perform numeric calculations). See also {@link
* com.smartgwt.client.widgets.grid.ListGridField#getIncludeInRecordSummaryFields includeInRecordSummaryFields}.
*
* @param includeInRecordSummary includeInRecordSummary Default value is null
*/
public void setIncludeInRecordSummary(Boolean includeInRecordSummary) {
setAttribute("includeInRecordSummary", includeInRecordSummary);
}
/**
* If a listGrid is showing a field of type summary, should this field be passed to the recordSummaryFunction when
* calculating the summary value to display. If unset, fields are included if they are of type "integer" or "float" only
* (since most summary functions perform numeric calculations). See also {@link
* com.smartgwt.client.widgets.grid.ListGridField#getIncludeInRecordSummaryFields includeInRecordSummaryFields}.
*
*
* @return Boolean
*/
public Boolean getIncludeInRecordSummary() {
return getAttributeAsBoolean("includeInRecordSummary");
}
/**
* If set to true and {@link com.smartgwt.client.widgets.grid.ListGrid#getCanRemoveRecords canRemoveRecords} is true, this
* field will be rendered as the remove-field for this grid. In most common usage scenarios this field will essentially be
* a placeholder indicating where the remove field should be rendered, meaning properties other than
* <code>isRemoveField</code>, such as <code>name</code> or <code>title</code>, may be left unset.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param isRemoveField isRemoveField Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#setCanRemoveRecords
*/
public void setIsRemoveField(Boolean isRemoveField) {
setAttribute("isRemoveField", isRemoveField);
}
/**
* If set to true and {@link com.smartgwt.client.widgets.grid.ListGrid#getCanRemoveRecords canRemoveRecords} is true, this
* field will be rendered as the remove-field for this grid. In most common usage scenarios this field will essentially be
* a placeholder indicating where the remove field should be rendered, meaning properties other than
* <code>isRemoveField</code>, such as <code>name</code> or <code>title</code>, may be left unset.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGrid#getCanRemoveRecords
*/
public Boolean getIsRemoveField() {
return getAttributeAsBoolean("isRemoveField");
}
/**
* The HTML to display in cells of this field if the fieldType is set to link. <P> This property sets linkText that will
* be the same for all records. You can set linkText on a per-record basis via {@link
* com.smartgwt.client.widgets.grid.ListGridRecord#getLinkText linkText}.
*
* @param linkText linkText Default value is null
* @see com.smartgwt.client.types.ListGridFieldType
* @see com.smartgwt.client.types.FieldType
* @see com.smartgwt.client.widgets.grid.ListGridRecord#setLinkText
* @see com.smartgwt.client.widgets.grid.ListGrid#setLinkTextProperty
* @see com.smartgwt.client.widgets.grid.ListGridField#setLinkTextProperty
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_datatypes_link_image" target="examples">Link (image) Example</a>
*/
public void setLinkText(String linkText) {
setAttribute("linkText", linkText);
}
/**
* The HTML to display in cells of this field if the fieldType is set to link. <P> This property sets linkText that will
* be the same for all records. You can set linkText on a per-record basis via {@link
* com.smartgwt.client.widgets.grid.ListGridRecord#getLinkText linkText}.
*
*
* @return String
* @see com.smartgwt.client.types.ListGridFieldType
* @see com.smartgwt.client.types.FieldType
* @see com.smartgwt.client.widgets.grid.ListGridRecord#getLinkText
* @see com.smartgwt.client.widgets.grid.ListGrid#getLinkTextProperty
* @see com.smartgwt.client.widgets.grid.ListGridField#getLinkTextProperty
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_datatypes_link_image" target="examples">Link (image) Example</a>
*/
public String getLinkText() {
return getAttributeAsString("linkText");
}
/**
* Name of the property in a ListGridRecord that holds the HTML to display in cells of this field if the fieldType is set
* to "link".
*
* @param linkTextProperty linkTextProperty Default value is null
* @see com.smartgwt.client.types.ListGridFieldType
* @see com.smartgwt.client.types.FieldType
* @see com.smartgwt.client.widgets.grid.ListGridRecord#setLinkText
* @see com.smartgwt.client.widgets.grid.ListGridField#setLinkText
* @see com.smartgwt.client.widgets.grid.ListGrid#setLinkTextProperty
*/
public void setLinkTextProperty(String linkTextProperty) {
setAttribute("linkTextProperty", linkTextProperty);
}
/**
* Name of the property in a ListGridRecord that holds the HTML to display in cells of this field if the fieldType is set
* to "link".
*
*
* @return String
* @see com.smartgwt.client.types.ListGridFieldType
* @see com.smartgwt.client.types.FieldType
* @see com.smartgwt.client.widgets.grid.ListGridRecord#getLinkText
* @see com.smartgwt.client.widgets.grid.ListGridField#getLinkText
* @see com.smartgwt.client.widgets.grid.ListGrid#getLinkTextProperty
*/
public String getLinkTextProperty() {
return getAttributeAsString("linkTextProperty");
}
/**
* If this field has type [{@link com.smartgwt.client.types.ListGridFieldType}] set to <code>"link"</code>, setting this
* property will apply a standard prefix to the link URL for cells in this field.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param linkURLPrefix linkURLPrefix Default value is null
*/
public void setLinkURLPrefix(String linkURLPrefix) {
setAttribute("linkURLPrefix", linkURLPrefix);
}
/**
* If this field has type [{@link com.smartgwt.client.types.ListGridFieldType}] set to <code>"link"</code>, setting this
* property will apply a standard prefix to the link URL for cells in this field.
*
*
* @return String
*/
public String getLinkURLPrefix() {
return getAttributeAsString("linkURLPrefix");
}
/**
* If this field has type [{@link com.smartgwt.client.types.ListGridFieldType}] set to <code>"link"</code>, setting this
* property will apply a standard suffix to the link URL for cells in this field.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param linkURLSuffix linkURLSuffix Default value is null
*/
public void setLinkURLSuffix(String linkURLSuffix) {
setAttribute("linkURLSuffix", linkURLSuffix);
}
/**
* If this field has type [{@link com.smartgwt.client.types.ListGridFieldType}] set to <code>"link"</code>, setting this
* property will apply a standard suffix to the link URL for cells in this field.
*
*
* @return String
*/
public String getLinkURLSuffix() {
return getAttributeAsString("linkURLSuffix");
}
/**
* Name of this field. Must be unique within this ListGrid. <P> The name of field is also the property in each record
* which holds the value for that field. <P> If a {@link com.smartgwt.client.widgets.grid.ListGrid#getDataSource
* dataSource} is specified and the DataSource has a field with the same name, the ListGridField and DataSourceField are
* merged so that properties on the ListGridField
*
* @param name name Default value is null
*/
public void setName(String name) {
setAttribute("name", name);
}
/**
* Name of this field. Must be unique within this ListGrid. <P> The name of field is also the property in each record
* which holds the value for that field. <P> If a {@link com.smartgwt.client.widgets.grid.ListGrid#getDataSource
* dataSource} is specified and the DataSource has a field with the same name, the ListGridField and DataSourceField are
* merged so that properties on the ListGridField
*
*
* @return String
*/
public String getName() {
return getAttributeAsString("name");
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} is set for this
* ListGridField, criteria specified in this attribute will be passed to the dataSource when performing the fetch operation
* to determine data-value to display-value mappings
*
* @param optionCriteria optionCriteria Default value is null
*/
// public void setOptionCriteria(Criteria optionCriteria) {
// setAttribute("optionCriteria", optionCriteria.getJsObj());
// }
/**
* If {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} is set for this
* ListGridField, criteria specified in this attribute will be passed to the dataSource when performing the fetch operation
* to determine data-value to display-value mappings
*
*
* @return Criteria
*/
// public Criteria getOptionCriteria() {
// return new Criteria(getAttributeAsJavaScriptObject("optionCriteria"));
// }
/**
* If this field has an optionDataSource specified and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getAutoFetchDisplayMap autoFetchDisplayMap} is set, this attribute
* provides a way to customize the {@link com.smartgwt.client.data.DSRequest#getOperationId operationId} passed to
* <code>dataSource.fetchData()</code> when retrieving the display map from the option dataSource.
*
* @param optionOperationId optionOperationId Default value is null
*/
public void setOptionOperationId(String optionOperationId) {
setAttribute("optionOperationId", optionOperationId);
}
/**
* If this field has an optionDataSource specified and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getAutoFetchDisplayMap autoFetchDisplayMap} is set, this attribute
* provides a way to customize the {@link com.smartgwt.client.data.DSRequest#getOperationId operationId} passed to
* <code>dataSource.fetchData()</code> when retrieving the display map from the option dataSource.
*
*
* @return String
*/
public String getOptionOperationId() {
return getAttributeAsString("optionOperationId");
}
/**
* For fields with an {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource}, where
* {@link com.smartgwt.client.widgets.grid.ListGridField#getAutoFetchDisplayMap autoFetchDisplayMap} is true, this property
* will govern the <code>textMatchStyle</code> attribute of the {@link com.smartgwt.client.data.DSRequest} parameter passed
* to {@link com.smartgwt.client.data.DataSource#fetchData DataSource.fetchData} when retrieving the remote data set to be
* used as a basis for this field's valueMap.
*
* @param optionTextMatchStyle optionTextMatchStyle Default value is null
*/
public void setOptionTextMatchStyle(TextMatchStyle optionTextMatchStyle) {
setAttribute("optionTextMatchStyle", optionTextMatchStyle.getValue());
}
/**
* For fields with an {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource}, where
* {@link com.smartgwt.client.widgets.grid.ListGridField#getAutoFetchDisplayMap autoFetchDisplayMap} is true, this property
* will govern the <code>textMatchStyle</code> attribute of the {@link com.smartgwt.client.data.DSRequest} parameter passed
* to {@link com.smartgwt.client.data.DataSource#fetchData DataSource.fetchData} when retrieving the remote data set to be
* used as a basis for this field's valueMap.
*
*
* @return TextMatchStyle
*/
public TextMatchStyle getOptionTextMatchStyle() {
return EnumUtil.getEnum(TextMatchStyle.values(), getAttribute("optionTextMatchStyle"));
}
/**
* Only applies to fields of type <code>"summary"</code>. This attribute is set on a summary field, when calculating the
* summary value from some record, the summary function will only be passed the fields before this summary field. This may
* be useful for displaying running totals across a record. <P> Note that this feature would typically be used with {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanReorderFields canReorderFields:false}
*
* @param partialSummary partialSummary Default value is null
*/
public void setPartialSummary(Boolean partialSummary) {
setAttribute("partialSummary", partialSummary);
}
/**
* Only applies to fields of type <code>"summary"</code>. This attribute is set on a summary field, when calculating the
* summary value from some record, the summary function will only be passed the fields before this summary field. This may
* be useful for displaying running totals across a record. <P> Note that this feature would typically be used with {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanReorderFields canReorderFields:false}
*
*
* @return Boolean
*/
public Boolean getPartialSummary() {
return getAttributeAsBoolean("partialSummary");
}
/**
* Causes a tooltip hover to appear on the header generated for this field (effectively sets {@link
* com.smartgwt.client.widgets.Canvas#getPrompt prompt} for the header).
*
* @param prompt prompt Default value is null
*/
public void setPrompt(String prompt) {
setAttribute("prompt", prompt);
}
/**
* Causes a tooltip hover to appear on the header generated for this field (effectively sets {@link
* com.smartgwt.client.widgets.Canvas#getPrompt prompt} for the header).
*
*
* @return String
*/
public String getPrompt() {
return getAttributeAsString("prompt");
}
/**
* When the user edits cells in this field, is this value required to be non-empty in order for validation to pass.<br>
* Note: for databound listGrids, this property may be specified on the {@link com.smartgwt.client.data.DataSourceField},
* enabling both client and server side validation.
*
* @param required required Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setValidators
* @see com.smartgwt.client.docs.GridValidation GridValidation overview and related methods
*/
public void setRequired(Boolean required) {
setAttribute("required", required);
}
/**
* When the user edits cells in this field, is this value required to be non-empty in order for validation to pass.<br>
* Note: for databound listGrids, this property may be specified on the {@link com.smartgwt.client.data.DataSourceField},
* enabling both client and server side validation.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getValidators
* @see com.smartgwt.client.docs.GridValidation GridValidation overview and related methods
*/
public Boolean getRequired() {
return getAttributeAsBoolean("required");
}
/**
* Whether this field should be included in the printable representation of the grid.
*
* @param shouldPrint shouldPrint Default value is null
* @see com.smartgwt.client.docs.Printing Printing overview and related methods
*/
public void setShouldPrint(Boolean shouldPrint) {
setAttribute("shouldPrint", shouldPrint);
}
/**
* Whether this field should be included in the printable representation of the grid.
*
*
* @return Boolean
* @see com.smartgwt.client.docs.Printing Printing overview and related methods
*/
public Boolean getShouldPrint() {
return getAttributeAsBoolean("shouldPrint");
}
/**
* When set to false, don't apply alternate-row styling to this field.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param showAlternateStyle showAlternateStyle Default value is null
*/
public void setShowAlternateStyle(Boolean showAlternateStyle) {
setAttribute("showAlternateStyle", showAlternateStyle);
}
/**
* When set to false, don't apply alternate-row styling to this field.
*
*
* @return Boolean
*/
public Boolean getShowAlternateStyle() {
return getAttributeAsBoolean("showAlternateStyle");
}
/**
* When set to false, this field will not show a context menu in it's header.
*
* @param showDefaultContextMenu showDefaultContextMenu Default value is true
*/
public void setShowDefaultContextMenu(Boolean showDefaultContextMenu) {
setAttribute("showDefaultContextMenu", showDefaultContextMenu);
}
/**
* When set to false, this field will not show a context menu in it's header.
*
*
* @return Boolean
*/
public Boolean getShowDefaultContextMenu() {
return getAttributeAsBoolean("showDefaultContextMenu");
}
/**
* If using an icon for this button, whether to switch the icon image if the button becomes disabled.
*
* @param showDisabledIcon showDisabledIcon Default value is true
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public void setShowDisabledIcon(Boolean showDisabledIcon) {
setAttribute("showDisabledIcon", showDisabledIcon);
}
/**
* If using an icon for this button, whether to switch the icon image if the button becomes disabled.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public Boolean getShowDisabledIcon() {
return getAttributeAsBoolean("showDisabledIcon");
}
/**
* If using an icon for this button, whether to switch the icon image when the mouse goes down on the button.
*
* @param showDownIcon showDownIcon Default value is false
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public void setShowDownIcon(Boolean showDownIcon) {
setAttribute("showDownIcon", showDownIcon);
}
/**
* If using an icon for this button, whether to switch the icon image when the mouse goes down on the button.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public Boolean getShowDownIcon() {
return getAttributeAsBoolean("showDownIcon");
}
/**
* For a field of type:"imageFile", indicates whether to stream the image and display it inline or to display the View and
* Download icons.
*
* @param showFileInline showFileInline Default value is null
*/
public void setShowFileInline(Boolean showFileInline) {
setAttribute("showFileInline", showFileInline);
}
/**
* For a field of type:"imageFile", indicates whether to stream the image and display it inline or to display the View and
* Download icons.
*
*
* @return Boolean
*/
public Boolean getShowFileInline() {
return getAttributeAsBoolean("showFileInline");
}
/**
* If using an icon for this button, whether to switch the icon image when the button receives focus. <P> If {@link
* com.smartgwt.client.widgets.StatefulCanvas#getShowFocusedAsOver showFocusedAsOver} is true, the <code>"Over"</code> icon
* will be displayed when the canvas has focus, otherwise a separate <code>"Focused"</code> icon will be displayed
*
* @param showFocusedIcon showFocusedIcon Default value is false
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public void setShowFocusedIcon(Boolean showFocusedIcon) {
setAttribute("showFocusedIcon", showFocusedIcon);
}
/**
* If using an icon for this button, whether to switch the icon image when the button receives focus. <P> If {@link
* com.smartgwt.client.widgets.StatefulCanvas#getShowFocusedAsOver showFocusedAsOver} is true, the <code>"Over"</code> icon
* will be displayed when the canvas has focus, otherwise a separate <code>"Focused"</code> icon will be displayed
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public Boolean getShowFocusedIcon() {
return getAttributeAsBoolean("showFocusedIcon");
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} is true, should this field show
* a summary value. If unset, this field will show a summary value in the summary row if an explicit {@link
* com.smartgwt.client.widgets.grid.ListGridField#getSummaryFunction summaryFunction} is specified or if a {@link
* com.smartgwt.client.data.SimpleType#getDefaultSummaryFunction default summary function} is defined for the specified
* field type.
*
* @param showGridSummary showGridSummary Default value is null
*/
public void setShowGridSummary(Boolean showGridSummary) {
setAttribute("showGridSummary", showGridSummary);
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} is true, should this field show
* a summary value. If unset, this field will show a summary value in the summary row if an explicit {@link
* com.smartgwt.client.widgets.grid.ListGridField#getSummaryFunction summaryFunction} is specified or if a {@link
* com.smartgwt.client.data.SimpleType#getDefaultSummaryFunction default summary function} is defined for the specified
* field type.
*
*
* @return Boolean
*/
public Boolean getShowGridSummary() {
return getAttributeAsBoolean("showGridSummary");
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true, should this field
* show a summary value in a summary row when the grid is grouped? If unset, this field will show a summary value in the
* summary row if an explicit {@link com.smartgwt.client.widgets.grid.ListGridField#getSummaryFunction summaryFunction} is
* specified or if a {@link com.smartgwt.client.data.SimpleType#getDefaultSummaryFunction default summary function} is
* defined for the specified field type.
*
* @param showGroupSummary showGroupSummary Default value is null
*/
public void setShowGroupSummary(Boolean showGroupSummary) {
setAttribute("showGroupSummary", showGroupSummary);
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true, should this field
* show a summary value in a summary row when the grid is grouped? If unset, this field will show a summary value in the
* summary row if an explicit {@link com.smartgwt.client.widgets.grid.ListGridField#getSummaryFunction summaryFunction} is
* specified or if a {@link com.smartgwt.client.data.SimpleType#getDefaultSummaryFunction default summary function} is
* defined for the specified field type.
*
*
* @return Boolean
*/
public Boolean getShowGroupSummary() {
return getAttributeAsBoolean("showGroupSummary");
}
/**
* Whether to show hovers for this field. The default hover will be the contents of the cell the user is hovering over,
* and can be customized via {@link com.smartgwt.client.widgets.grid.ListGridField#hoverHTML field.hoverHTML()}. <P> {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanHover canHover} can be set to true to cause hovers to be shown for all
* fields by default. In this case, <code>field.showHover</code> can be set to false to suppress hovers for an individual
* field. <P> All hovers can be disabled, regardless of other settings, by setting {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowHover showHover} to false.
*
* @param showHover showHover Default value is null
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_interaction_value_hover" target="examples">Value hover tips Example</a>
*/
public void setShowHover(Boolean showHover) {
setAttribute("showHover", showHover);
}
/**
* Whether to show hovers for this field. The default hover will be the contents of the cell the user is hovering over,
* and can be customized via {@link com.smartgwt.client.widgets.grid.ListGridField#hoverHTML field.hoverHTML()}. <P> {@link
* com.smartgwt.client.widgets.grid.ListGrid#getCanHover canHover} can be set to true to cause hovers to be shown for all
* fields by default. In this case, <code>field.showHover</code> can be set to false to suppress hovers for an individual
* field. <P> All hovers can be disabled, regardless of other settings, by setting {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowHover showHover} to false.
*
*
* @return Boolean
* @see <a href="http://www.smartclient.com/smartgwt/showcase/#grid_interaction_value_hover" target="examples">Value hover tips Example</a>
*/
public Boolean getShowHover() {
return getAttributeAsBoolean("showHover");
}
/**
* If using an icon for this button, whether to switch the icon image on mouse rollover.
*
* @param showRollOverIcon showRollOverIcon Default value is false
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public void setShowRollOverIcon(Boolean showRollOverIcon) {
setAttribute("showRollOverIcon", showRollOverIcon);
}
/**
* If using an icon for this button, whether to switch the icon image on mouse rollover.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public Boolean getShowRollOverIcon() {
return getAttributeAsBoolean("showRollOverIcon");
}
/**
* If using an icon for this button, whether to switch the icon image when the button becomes selected.
*
* @param showSelectedIcon showSelectedIcon Default value is false
* @see com.smartgwt.client.widgets.grid.ListGridField#setIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public void setShowSelectedIcon(Boolean showSelectedIcon) {
setAttribute("showSelectedIcon", showSelectedIcon);
}
/**
* If using an icon for this button, whether to switch the icon image when the button becomes selected.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getIcon
* @see com.smartgwt.client.docs.ButtonIcon ButtonIcon overview and related methods
*/
public Boolean getShowSelectedIcon() {
return getAttributeAsBoolean("showSelectedIcon");
}
/**
* If this field has a valueIcons property specified, setting this property causes the valueIcon for each value to be
* displayed in the cell without also showing the record's value for the field. <P> If unset the default behavior is to
* show the icon only if an explicit valueMap is specified as well in addition to a valueIcons map, otherwise show both the
* valueIcon and value for the cell. <P> Note that if this field is editable {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getShowValueIconOnly showValueIconOnly} will be passed through to
* editors displayed in this field.
*
* @param showValueIconOnly showValueIconOnly Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setValueIcons
* @see com.smartgwt.client.widgets.grid.ListGridField#setSuppressValueIcon
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setShowValueIconOnly(Boolean showValueIconOnly) {
setAttribute("showValueIconOnly", showValueIconOnly);
}
/**
* If this field has a valueIcons property specified, setting this property causes the valueIcon for each value to be
* displayed in the cell without also showing the record's value for the field. <P> If unset the default behavior is to
* show the icon only if an explicit valueMap is specified as well in addition to a valueIcons map, otherwise show both the
* valueIcon and value for the cell. <P> Note that if this field is editable {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getShowValueIconOnly showValueIconOnly} will be passed through to
* editors displayed in this field.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getValueIcons
* @see com.smartgwt.client.widgets.grid.ListGridField#getSuppressValueIcon
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Boolean getShowValueIconOnly() {
return getAttributeAsBoolean("showValueIconOnly");
}
/**
* For a field with <code>displayField</code> configured, should client-side sorting be performed on the display field
* value? Unless explicitly set to <code>false</code> the display field value is used.
*
* @param sortByDisplayField sortByDisplayField Default value is null
*/
public void setSortByDisplayField(Boolean sortByDisplayField) {
setAttribute("sortByDisplayField", sortByDisplayField);
}
/**
* For a field with <code>displayField</code> configured, should client-side sorting be performed on the display field
* value? Unless explicitly set to <code>false</code> the display field value is used.
*
*
* @return Boolean
*/
public Boolean getSortByDisplayField() {
return getAttributeAsBoolean("sortByDisplayField");
}
/**
* Optional long summary title for this field, provided in addition to {@link
* com.smartgwt.client.widgets.grid.ListGridField#getTitle title}. This gives the developer an option to use a very short,
* or empty title for the ListGrid column (where space may be a factor), but have a longer value available to be used
* elsewhere.<br> By default this value will be used for the title of the context-menu item for showing/hiding the listGrid
* field when the user right-clicks on the ListGrid header.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param summaryTitle summaryTitle Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setTitle
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setSummaryTitle(String summaryTitle) {
setAttribute("summaryTitle", summaryTitle);
}
/**
* Optional long summary title for this field, provided in addition to {@link
* com.smartgwt.client.widgets.grid.ListGridField#getTitle title}. This gives the developer an option to use a very short,
* or empty title for the ListGrid column (where space may be a factor), but have a longer value available to be used
* elsewhere.<br> By default this value will be used for the title of the context-menu item for showing/hiding the listGrid
* field when the user right-clicks on the ListGrid header.
*
*
* @return Optional string method to return a long summary title for this field, if a dynamic summary title is required for this
* field.
* @see com.smartgwt.client.widgets.grid.ListGridField#getTitle
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public String getSummaryTitle() {
return getAttributeAsString("summaryTitle");
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true and the {@link
* com.smartgwt.client.widgets.grid.ListGridField#getSummaryFunction summaryFunction} is set to <code>"title"</code>, this
* attribute may be set to a string to display in the group and/or grid summary. If unspecified the {@link
* com.smartgwt.client.widgets.grid.ListGridField#getTitle title} will show up in the summary.
*
* @param summaryValueTitle summaryValueTitle Default value is null
*/
public void setSummaryValueTitle(String summaryValueTitle) {
setAttribute("summaryValueTitle", summaryValueTitle);
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true and the {@link
* com.smartgwt.client.widgets.grid.ListGridField#getSummaryFunction summaryFunction} is set to <code>"title"</code>, this
* attribute may be set to a string to display in the group and/or grid summary. If unspecified the {@link
* com.smartgwt.client.widgets.grid.ListGridField#getTitle title} will show up in the summary.
*
*
* @return String
*/
public String getSummaryValueTitle() {
return getAttributeAsString("summaryValueTitle");
}
/**
* If this field has a valueIcons property specified, setting this property to true will prevent the valueIcon being
* written out into this field's cells.
*
* @param suppressValueIcon suppressValueIcon Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setValueIcons
* @see com.smartgwt.client.widgets.grid.ListGridField#setShowValueIconOnly
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setSuppressValueIcon(Boolean suppressValueIcon) {
setAttribute("suppressValueIcon", suppressValueIcon);
}
/**
* If this field has a valueIcons property specified, setting this property to true will prevent the valueIcon being
* written out into this field's cells.
*
*
* @return Boolean
* @see com.smartgwt.client.widgets.grid.ListGridField#getValueIcons
* @see com.smartgwt.client.widgets.grid.ListGridField#getShowValueIconOnly
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Boolean getSuppressValueIcon() {
return getAttributeAsBoolean("suppressValueIcon");
}
/**
* By default, clicking a link rendered by this item opens it in a new browser window. You can alter this behavior by
* setting this property. The value of this property will be passed as the value to the <code>target</code> attribute of
* the anchor tag used to render the link. <P> If you set listGridField.target to "javascript", the default behavior is to
* catch and consume mouse-clicks that would result in the link being followed. Instead, the {@link
* com.smartgwt.client.widgets.grid.ListGrid#addCellClickHandler ListGrid.cellClick} event is fired for the containing
* cell.
*
* @param target target Default value is "_blank"
*/
public void setTarget(String target) {
setAttribute("target", target);
}
/**
* By default, clicking a link rendered by this item opens it in a new browser window. You can alter this behavior by
* setting this property. The value of this property will be passed as the value to the <code>target</code> attribute of
* the anchor tag used to render the link. <P> If you set listGridField.target to "javascript", the default behavior is to
* catch and consume mouse-clicks that would result in the link being followed. Instead, the {@link
* com.smartgwt.client.widgets.grid.ListGrid#addCellClickHandler ListGrid.cellClick} event is fired for the containing
* cell.
*
*
* @return String
*/
public String getTarget() {
return getAttributeAsString("target");
}
/**
* Time-format to apply to date type values within this field. If specified, any dates displayed in this field will be
* formatted as times using the appropriate format. This is most commonly only applied to fields specified as type
* <code>"time"</code> though if no explicit {@link com.smartgwt.client.widgets.grid.ListGridField#getDateFormatter
* dateFormatter} is specified it will be respected for other fields as well. <P> If unspecified, a timeFormatter may be
* defined {@link com.smartgwt.client.widgets.grid.ListGrid#getTimeFormatter at the component level} and will be respected
* by fields of type <code>"time"</code>. <P> If this field is editable, the timeFormatter will also be passed to the
* editor created to edit this field as {@link com.smartgwt.client.widgets.form.fields.FormItem#getTimeFormatter
* timeFormatter}.
* <p><b>Note : </b> This is an advanced setting</p>
*
* @param timeFormatter timeFormatter Default value is null
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setTimeFormatter(TimeDisplayFormat timeFormatter) {
setAttribute("timeFormatter", timeFormatter.getValue());
}
/**
* Time-format to apply to date type values within this field. If specified, any dates displayed in this field will be
* formatted as times using the appropriate format. This is most commonly only applied to fields specified as type
* <code>"time"</code> though if no explicit {@link com.smartgwt.client.widgets.grid.ListGridField#getDateFormatter
* dateFormatter} is specified it will be respected for other fields as well. <P> If unspecified, a timeFormatter may be
* defined {@link com.smartgwt.client.widgets.grid.ListGrid#getTimeFormatter at the component level} and will be respected
* by fields of type <code>"time"</code>. <P> If this field is editable, the timeFormatter will also be passed to the
* editor created to edit this field as {@link com.smartgwt.client.widgets.form.fields.FormItem#getTimeFormatter
* timeFormatter}.
*
*
* @return TimeDisplayFormat
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public TimeDisplayFormat getTimeFormatter() {
return EnumUtil.getEnum(TimeDisplayFormat.values(), getAttribute("timeFormatter"));
}
/**
* A title for this field, to display in the header of the listGrid object. Alternately you can specify a {@link
* com.smartgwt.client.widgets.grid.ListGridField#getFieldTitle ListGridField.getFieldTitle} method on the field to return
* the HTML for the field title.
*
* @param title title Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#getFieldTitle
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setTitle(String title) {
setAttribute("title", title);
}
/**
* A title for this field, to display in the header of the listGrid object. Alternately you can specify a {@link
* com.smartgwt.client.widgets.grid.ListGridField#getFieldTitle ListGridField.getFieldTitle} method on the field to return
* the HTML for the field title.
*
*
* @return String
* @see com.smartgwt.client.widgets.grid.ListGridField#getFieldTitle
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public String getTitle() {
return getAttributeAsString("title");
}
/**
* ListGrids picks a renderer for the view and edit mode of a field based on this attribute.
*
* @param type type Default value is "text"
* @see com.smartgwt.client.types.ListGridFieldType
* @see com.smartgwt.client.types.FieldType
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public void setType(ListGridFieldType type) {
setAttribute("type", type.getValue());
}
/**
* ListGrids picks a renderer for the view and edit mode of a field based on this attribute.
*
*
* @return ListGridFieldType
* @see com.smartgwt.client.types.ListGridFieldType
* @see com.smartgwt.client.types.FieldType
* @see com.smartgwt.client.docs.Appearance Appearance overview and related methods
*/
public ListGridFieldType getType() {
return EnumUtil.getEnum(ListGridFieldType.values(), getAttribute("type"));
}
/**
* If set to true, any {@link com.smartgwt.client.widgets.grid.ListGridField#getValidators validators} for this field will
* be run whenever the value of the field is changed. <P> Analogous to the {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getValidateOnChange validateOnChange} property.
*
* @param validateOnChange validateOnChange Default value is null
* @see com.smartgwt.client.docs.GridValidation GridValidation overview and related methods
*/
public void setValidateOnChange(Boolean validateOnChange) {
setAttribute("validateOnChange", validateOnChange);
}
/**
* If set to true, any {@link com.smartgwt.client.widgets.grid.ListGridField#getValidators validators} for this field will
* be run whenever the value of the field is changed. <P> Analogous to the {@link
* com.smartgwt.client.widgets.form.fields.FormItem#getValidateOnChange validateOnChange} property.
*
*
* @return Boolean
* @see com.smartgwt.client.docs.GridValidation GridValidation overview and related methods
*/
public Boolean getValidateOnChange() {
return getAttributeAsBoolean("validateOnChange");
}
/**
* Specifies the {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} field used to
* retrieve the stored values that are to be mapped to the display values (specified by {@link
* com.smartgwt.client.widgets.grid.ListGridField#getDisplayField displayField}). Note that if this field is editable this
* will also be applied to this field's editors.
*
* @param valueField valueField Default value is null
*/
public void setValueField(String valueField) {
setAttribute("valueField", valueField);
}
/**
* Specifies the {@link com.smartgwt.client.widgets.grid.ListGridField#getOptionDataSource optionDataSource} field used to
* retrieve the stored values that are to be mapped to the display values (specified by {@link
* com.smartgwt.client.widgets.grid.ListGridField#getDisplayField displayField}). Note that if this field is editable this
* will also be applied to this field's editors.
*
*
* @return String
*/
public String getValueField() {
return getAttributeAsString("valueField");
}
/**
* Height for value icons for this listGrid field. Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconSize valueIconSize}, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconHeight valueIconHeight}, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconSize valueIconSize}.
*
* @param valueIconHeight valueIconHeight Default value is null
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setValueIconHeight(Integer valueIconHeight) {
setAttribute("valueIconHeight", valueIconHeight);
}
/**
* Height for value icons for this listGrid field. Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconSize valueIconSize}, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconHeight valueIconHeight}, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconSize valueIconSize}.
*
*
* @return Integer
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Integer getValueIconHeight() {
return getAttributeAsInt("valueIconHeight");
}
/**
* How much padding should there be on the left of valueIcons for this field Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconLeftPadding valueIconLeftPadding}
*
* @param valueIconLeftPadding valueIconLeftPadding Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setValueIcons
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setValueIconLeftPadding(Integer valueIconLeftPadding) {
setAttribute("valueIconLeftPadding", valueIconLeftPadding);
}
/**
* How much padding should there be on the left of valueIcons for this field Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconLeftPadding valueIconLeftPadding}
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGridField#getValueIcons
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Integer getValueIconLeftPadding() {
return getAttributeAsInt("valueIconLeftPadding");
}
/**
* If we're showing a valueIcon for this field should it appear to the left or the right of the text? By default the icon
* will appear to the left of the textual value - set this to "right" to show the icon on the right of the text. Has no
* effect if {@link com.smartgwt.client.widgets.grid.ListGridField#getShowValueIconOnly showValueIconOnly} is true
*
* @param valueIconOrientation valueIconOrientation Default value is null
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setValueIconOrientation(String valueIconOrientation) {
setAttribute("valueIconOrientation", valueIconOrientation);
}
/**
* If we're showing a valueIcon for this field should it appear to the left or the right of the text? By default the icon
* will appear to the left of the textual value - set this to "right" to show the icon on the right of the text. Has no
* effect if {@link com.smartgwt.client.widgets.grid.ListGridField#getShowValueIconOnly showValueIconOnly} is true
*
*
* @return String
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public String getValueIconOrientation() {
return getAttributeAsString("valueIconOrientation");
}
/**
* How much padding should there be on the right of valueIcons for this field Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconRightPadding valueIconRightPadding}
*
* @param valueIconRightPadding valueIconRightPadding Default value is null
* @see com.smartgwt.client.widgets.grid.ListGridField#setValueIcons
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setValueIconRightPadding(Integer valueIconRightPadding) {
setAttribute("valueIconRightPadding", valueIconRightPadding);
}
/**
* How much padding should there be on the right of valueIcons for this field Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconRightPadding valueIconRightPadding}
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGridField#getValueIcons
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Integer getValueIconRightPadding() {
return getAttributeAsInt("valueIconRightPadding");
}
/**
* Default width and height of value icons in this field. Takes precedence over valueIconWidth, valueIconHeight and
* valueIconSize specified at the ListGrid level. Can be overridden via {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconWidth valueIconWidth} and {ListGridField.valueIconHeight}
*
* @param valueIconSize valueIconSize Default value is null
* @see com.smartgwt.client.widgets.grid.ListGrid#setValueIconSize
* @see com.smartgwt.client.widgets.grid.ListGridField#setValueIconWidth
* @see com.smartgwt.client.widgets.grid.ListGridField#setValueIconHeight
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setValueIconSize(Integer valueIconSize) {
setAttribute("valueIconSize", valueIconSize);
}
/**
* Default width and height of value icons in this field. Takes precedence over valueIconWidth, valueIconHeight and
* valueIconSize specified at the ListGrid level. Can be overridden via {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconWidth valueIconWidth} and {ListGridField.valueIconHeight}
*
*
* @return Integer
* @see com.smartgwt.client.widgets.grid.ListGrid#getValueIconSize
* @see com.smartgwt.client.widgets.grid.ListGridField#getValueIconWidth
* @see com.smartgwt.client.widgets.grid.ListGridField#getValueIconHeight
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Integer getValueIconSize() {
return getAttributeAsInt("valueIconSize");
}
/**
* Width for value icons for this listGrid field. Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconSize valueIconSize}, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconWidth valueIconWidth}, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconSize valueIconSize}.
*
* @param valueIconWidth valueIconWidth Default value is null
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public void setValueIconWidth(Integer valueIconWidth) {
setAttribute("valueIconWidth", valueIconWidth);
}
/**
* Width for value icons for this listGrid field. Overrides {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconSize valueIconSize}, {@link
* com.smartgwt.client.widgets.grid.ListGrid#getValueIconWidth valueIconWidth}, and {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconSize valueIconSize}.
*
*
* @return Integer
* @see com.smartgwt.client.docs.ImageColumns ImageColumns overview and related methods
*/
public Integer getValueIconWidth() {
return getAttributeAsInt("valueIconWidth");
}
// ********************* Methods ***********************
// /**
// * Add a editorEnter handler.
// * <p>
// * Callback fired when the user first starts editing a cell. <P> This callback is typically used to establish dynamic
// * default values via {@link com.smartgwt.client.widgets.grid.ListGrid#setEditValue ListGrid.setEditValue} or {@link
// * com.smartgwt.client.widgets.grid.ListGrid#setEditValues ListGrid.setEditValues}.
// *
// * @param handler the editorEnter handler
// * @return {@link HandlerRegistration} used to remove this handler
// */
// public HandlerRegistration addEditorEnterHandler(com.smartgwt.client.widgets.grid.events.EditorEnterHandler handler) {
// if(getHandlerCount(com.smartgwt.client.widgets.grid.events.EditorEnterEvent.getType()) == 0) setupEditorEnterEvent();
// return doAddHandler(handler, com.smartgwt.client.widgets.grid.events.EditorEnterEvent.getType());
// }
//
// private native void setupEditorEnterEvent() /*-{
// var obj = null;
// obj = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// var selfJ = this;
// obj.editorEnter = $entry(function(){
// var param = {"record" : arguments[0], "value" : arguments[1], "rowNum" : arguments[2], "colNum" : arguments[3], "grid" : arguments[4]};
// var event = @com.smartgwt.client.widgets.grid.events.EditorEnterEvent::new(Lcom/google/gwt/core/client/JavaScriptObject;)(param);
// selfJ.@com.smartgwt.client.core.DataClass::fireEvent(Lcom/google/gwt/event/shared/GwtEvent;)(event);
// });
// }-*/;
// /**
// * Add a editorExit handler.
// * <p>
// * Callback fired when the user attempts to navigate away from the current edit cell, or complete the current edit.<br>
// * Call {@link com.smartgwt.client.widgets.grid.events.EditorExitEvent#cancel()} from within {@link EditorExitHandler#onEditorExit} from this method to cancel the default behavior (Saving / cancelling the current edit / moving to the next
// * edit cell)
// *
// * @param handler the editorExit handler
// * @return {@link HandlerRegistration} used to remove this handler
// */
// public HandlerRegistration addEditorExitHandler(com.smartgwt.client.widgets.grid.events.EditorExitHandler handler) {
// if(getHandlerCount(com.smartgwt.client.widgets.grid.events.EditorExitEvent.getType()) == 0) setupEditorExitEvent();
// return doAddHandler(handler, com.smartgwt.client.widgets.grid.events.EditorExitEvent.getType());
// }
//
// private native void setupEditorExitEvent() /*-{
// var obj = null;
// obj = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// var selfJ = this;
// obj.editorExit = $debox($entry(function(){
// var param = {"editCompletionEvent" : arguments[0], "record" : arguments[1], "newValue" : arguments[2], "rowNum" : arguments[3], "colNum" : arguments[4], "grid" : arguments[5]};
// var event = @com.smartgwt.client.widgets.grid.events.EditorExitEvent::new(Lcom/google/gwt/core/client/JavaScriptObject;)(param);
// selfJ.@com.smartgwt.client.core.DataClass::fireEvent(Lcom/google/gwt/event/shared/GwtEvent;)(event);
// var ret = event.@com.smartgwt.client.event.Cancellable::isCancelled()();
// return !ret;
// }));
// }-*/;
//
// /**
// * If your derivation of the field title is more complex than specifying a static string, you can specify a getFieldTitle()
// * method on your field to return the title string. Otherwise you can use the {@link
// * com.smartgwt.client.widgets.grid.ListGridField#getTitle title} attribute on the field to specify the title. <P> You can
// * use {@link com.smartgwt.client.widgets.grid.ListGrid#setFieldProperties setFieldProperties()} to dynamically update the
// * title.
// * @param viewer pointer back to the ListGrid
// * @param fieldNum index of this field in the grid's fields array.
// */
// public native void getFieldTitle(ListGrid viewer, int fieldNum) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.getFieldTitle(viewer.@com.smartgwt.client.widgets.BaseWidget::getOrCreateJsObj()(), fieldNum);
// }-*/;
// /**
// * Add a recordClick handler.
// * <p>
// * Executed when this field is clicked on. Note that if {@link
// * com.smartgwt.client.widgets.grid.ListGrid#addRecordClickHandler ListGrid.recordClick} is also defined, it will be fired
// * for fields that define a recordClick handler if the field-level handler returns true. Call {@link com.smartgwt.client.widgets.grid.events.RecordClickEvent#cancel()} from within {@link RecordClickHandler#onRecordClick} to prevent the
// * grid-level handler from firing.
// *
// * @param handler the recordClick handler
// * @return {@link HandlerRegistration} used to remove this handler
// */
// public HandlerRegistration addRecordClickHandler(com.smartgwt.client.widgets.grid.events.RecordClickHandler handler) {
// if(getHandlerCount(com.smartgwt.client.widgets.grid.events.RecordClickEvent.getType()) == 0) setupRecordClickEvent();
// return doAddHandler(handler, com.smartgwt.client.widgets.grid.events.RecordClickEvent.getType());
// }
//
// private native void setupRecordClickEvent() /*-{
// var obj = null;
// obj = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// var selfJ = this;
// obj.recordClick = $debox($entry(function(){
// var param = {"viewer" : arguments[0], "record" : arguments[1], "recordNum" : arguments[2], "field" : arguments[3], "fieldNum" : arguments[4], "value" : arguments[5], "rawValue" : arguments[6]};
// var event = @com.smartgwt.client.widgets.grid.events.RecordClickEvent::new(Lcom/google/gwt/core/client/JavaScriptObject;)(param);
// selfJ.@com.smartgwt.client.core.DataClass::fireEvent(Lcom/google/gwt/event/shared/GwtEvent;)(event);
// var ret = event.@com.smartgwt.client.event.Cancellable::isCancelled()();
// return !ret;
// }));
// }-*/;
// ********************* Static Methods ***********************
// ***********************************************************
/**
* If this ListGrid is showing a filter row, this property can be used to apply a default value to show in the filter editor for this field.
*
* @param defaultFilterValue the default filter value
*/
public void setDefaultFilterValue(String defaultFilterValue) {
setAttribute("defaultFilterValue", defaultFilterValue);
}
/**
* If this ListGrid is showing a filter row, this property can be used to apply a default value to show in the filter editor for this field.
*
* @param defaultFilterValue the default filter value
*/
public void setDefaultFilterValue(Integer defaultFilterValue) {
setAttribute("defaultFilterValue", defaultFilterValue);
}
/**
* If this ListGrid is showing a filter row, this property can be used to apply a default value to show in the filter editor for this field.
*
* @param defaultFilterValue the default filter value
*/
public void setDefaultFilterValue(Float defaultFilterValue) {
setAttribute("defaultFilterValue", defaultFilterValue);
}
/**
* If this ListGrid is showing a filter row, this property can be used to apply a default value to show in the filter editor for this field.
*
* @param defaultFilterValue the default filter value
*/
public void setDefaultFilterValue(Boolean defaultFilterValue) {
setAttribute("defaultFilterValue", defaultFilterValue);
}
/**
* If this ListGrid is showing a filter row, this property can be used to apply a default value to show in the filter editor for this field.
*
* @param defaultFilterValue the default filter value
*/
public void setDefaultFilterValue(Date defaultFilterValue) {
setAttribute("defaultFilterValue", defaultFilterValue);
}
/**
* If this field is editable, this property can be used to specify {@link com.smartgwt.client.widgets.form.fields.FormItem#getIcons
* icons} to be displayed in the editors displayed for this field <p><b>Note : </b> This is an advanced setting</p>
*
* @param icons icons Default value is null
*/
// public void setIcons(FormItemIcon... icons) {
// setAttribute("icons", icons);
// }
//
// /**
// * If set, provides several possible styles of grouping that are valid for this field. For
example, a field of type:"date" might be able to be grouped by week, month, or by day of
week.
<P>
If <code>groupingModes</code> are present and
{@link com.smartgwt.client.widgets.grid.ListGrid#getCanGroupBy canGroupBy}, the menu for this field includes a
submenu of possible grouping modes generated from the <code>groupingModes</code> valueMap.
When the user selects a particular grouping mode,
{@link com.smartgwt.client.widgets.grid.ListGridField#getGroupingMode groupingMode} is set to the user's chosen mode,
and this choice can be detected via the <code>field</code> parameter to
{@link com.smartgwt.client.widgets.grid.ListGridField#getGroupValue} in order to provide different modes of grouping.
<P>
The user may also choose to group records without specifying a grouping mode, in this case,
the {@link com.smartgwt.client.widgets.grid.ListGridField#getDefaultGroupingMode defaultGroupingMode} is used.
<P>
Note that <code>getGroupValue</code>, <code>groupingModes</code> et al can be specified on
{@link com.smartgwt.client.data.SimpleType} declaration, and the different grouping modes that are offered
automatically for various common types are defined this way.
// *
// * @param groupingModes groupingModes Default value is null
// */
// public void setGroupingModes(Map groupingModes) {
// setAttribute("groupingModes", groupingModes);
// }
//
// /**
// * If set, provides several possible styles of grouping that are valid for this field. For
example, a field of type:"date" might be able to be grouped by week, month, or by day of
week.
<P>
If <code>groupingModes</code> are present and
{@link com.smartgwt.client.widgets.grid.ListGrid#getCanGroupBy canGroupBy}, the menu for this field includes a
submenu of possible grouping modes generated from the <code>groupingModes</code> valueMap.
When the user selects a particular grouping mode,
{@link com.smartgwt.client.widgets.grid.ListGridField#getGroupingMode groupingMode} is set to the user's chosen mode,
and this choice can be detected via the <code>field</code> parameter to
{@link com.smartgwt.client.widgets.grid.ListGridField#getGroupValue} in order to provide different modes of grouping.
<P>
The user may also choose to group records without specifying a grouping mode, in this case,
the {@link com.smartgwt.client.widgets.grid.ListGridField#getDefaultGroupingMode defaultGroupingMode} is used.
<P>
Note that <code>getGroupValue</code>, <code>groupingModes</code> et al can be specified on
{@link com.smartgwt.client.data.SimpleType} declaration, and the different grouping modes that are offered
automatically for various common types are defined this way.
// *
// * @return the value map
// */
// public Map getGroupingModes() {
// return getAttributeAsMap("groupingModes");
// }
//
// /**
// * Return the HTML to display in cells of this field. <P> Given the raw value for this field as taken from the
// * record Formatter to apply to the static values displayed in cells for this field. <P> <i>Example usage</i>:
// * formatting a currency value stored in cents (so "100" to "$1.00")<br> The value passed to this method is the raw
// * value for the cell.<br> Takes precedence over <code>formatCellValue</code> defined at the grid level for cells in
// * this field. <P> Note: this formatter will not be applied to the values displayed in cells being edited. The
// * {@link com.smartgwt.client.widgets.grid.ListGridField#setEditValueFormatter} is provided for that purpose.
// *
// * @param formatter the formatter
// */
// public native void setCellFormatter(CellFormatter formatter) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.formatCellValue = $debox($entry(function(value, record, rowNum, colNum) {
// var recordJ = @com.smartgwt.client.widgets.grid.ListGridRecord::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(record);
// var valueJ = $wnd.SmartGWT.convertToJavaType(value);
// return formatter.@com.smartgwt.client.widgets.grid.CellFormatter::format(Ljava/lang/Object;Lcom/smartgwt/client/widgets/grid/ListGridRecord;II)(valueJ, recordJ, rowNum, colNum);
// }));
// }-*/;
//
// /**
// * Return the value to display in cells of this field which are being edited. <P> <i>Example usage</i>: converting a stored
// * value in cents (100) to a dollar-and-cents value in the editor (1.00) <P> The value passed to this method is the raw
// * value for the cell.<P> To convert the formatted value displayed within an editor back to a raw value, implement {@link
// * com.smartgwt.client.widgets.grid.ListGridField#setEditorValueParser} as well.
// * @see com.smartgwt.client.docs.Editing Editing overview and related methods
// *
// * @param formatter the CellEditValueFormatter
// */
// public native void setEditValueFormatter(CellEditValueFormatter formatter) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.formatEditorValue = $debox($entry(function(value, record, rowNum, colNum) {
// var recordJ = @com.smartgwt.client.widgets.grid.ListGridRecord::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(record);
// var valueJ = $wnd.SmartGWT.convertToJavaType(value);
// var val = formatter.@com.smartgwt.client.widgets.grid.CellEditValueFormatter::format(Ljava/lang/Object;Lcom/smartgwt/client/widgets/grid/ListGridRecord;II)(valueJ, recordJ, rowNum, colNum);
// return $wnd.SmartGWT.convertToPrimitiveType(val);
// }));
// }-*/;
//
//
// /**
// * Method used to convert the value displayed in an editor for some cell in this field into a raw value for saving.
// * @see com.smartgwt.client.docs.Editing Editing overview and related methods
// *
// * @param parser the CellEditValueParser
// */
// public native void setEditValueParser(CellEditValueParser parser) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.parseEditorValue = $debox($entry(function(value, record, rowNum, colNum) {
// var recordJ = @com.smartgwt.client.widgets.grid.ListGridRecord::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(record);
// var valueJ = $wnd.SmartGWT.convertToJavaType(value);
// var val = parser.@com.smartgwt.client.widgets.grid.CellEditValueParser::parse(Ljava/lang/Object;Lcom/smartgwt/client/widgets/grid/ListGridRecord;II)(valueJ, recordJ, rowNum, colNum);
// return $wnd.SmartGWT.convertToPrimitiveType(val);
// }));
// }-*/;
//
//
// /**
// * Optional function to return the value that should be used when sorting this field. <P> Note that, if the dataset
// * exceeds {@link com.smartgwt.client.widgets.grid.ListGrid#getDataPageSize dataPageSize} and hence paging is
// * introduced, the grid relies on the server to provide sorting, and the sortNormalizer will no longer be called.
// *
// * @param normalizer the sort normalizer
// */
// public native void setSortNormalizer(SortNormalizer normalizer) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.sortNormalizer = $debox($entry(function(record, fieldName) {
// var recordJ = @com.smartgwt.client.widgets.grid.ListGridRecord::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(record);
// var val = normalizer.@com.smartgwt.client.widgets.grid.SortNormalizer::normalize(Lcom/smartgwt/client/widgets/grid/ListGridRecord;Ljava/lang/String;)(recordJ, fieldName);
// return $wnd.SmartGWT.convertToPrimitiveType(val);
// }));
// }-*/;
//
// /**
// * * HTML to be shown in hovers over cells in the column described by this field.
// *
// * @param hoverCustomizer the hover customizer
// */
// public native void setHoverCustomizer(HoverCustomizer hoverCustomizer) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.hoverHTML = $debox($entry(function(record, value, rowNum, colNum, grid) {
// var recordJ = @com.smartgwt.client.widgets.grid.ListGridRecord::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(record);
// var valueJ = $wnd.SmartGWT.convertToJavaType(value);
// return hoverCustomizer.@com.smartgwt.client.widgets.grid.HoverCustomizer::hoverHTML(Ljava/lang/Object;Lcom/smartgwt/client/widgets/grid/ListGridRecord;II)(valueJ, recordJ, rowNum, colNum);
// }));
// }-*/;
/**
* Horizontal alignment for field's column header: "left", "right" or "center". Applied to the column header title
* and cells by default. A separate alignment for cells can be specified via {@link
* com.smartgwt.client.widgets.grid.ListGridField#getCellAlign cellAlign}.<br> If null, values are left-aligned. If
* this field is editable, the alignment of cells in the body will also be reflected in any editors for the field.
*
* @param align align Default value is null
*/
public void setAlign(Alignment align) {
setAttribute("align", align.getValue());
}
/**
* Horizontal alignment for field's column header: "left", "right" or "center". Applied to the column header title
* and cells by default. A separate alignment for cells can be specified via {@link
* com.smartgwt.client.widgets.grid.ListGridField#getCellAlign cellAlign}.<br> If null, values are left-aligned. If
* this field is editable, the alignment of cells in the body will also be reflected in any editors for the field.
*
* @return String
*/
public Alignment getAlign() {
return EnumUtil.getEnum(Alignment.values(), getAttribute("align"));
}
/**
* The width of this field, specified as either an absolute number of pixels, a percentage of the remaining space,
* or "*" to allocate an equal portion of the remaining space. <br> ListGrid field widths may also be set when the
* fields are instantiated via the listGrid.setFields() method by passing an array of numbers (absolute pixel
* sizes only) as the second parameter
*
* @param width width Default value is "*"
*/
public void setWidth(int width) {
setAttribute("width", width);
}
/**
* The width of this field, specified as either an absolute number of pixels, a percentage of the remaining space,
* or "*" to allocate an equal portion of the remaining space. <br> ListGrid field widths may also be set when the
* fields are instantiated via the listGrid.setFields() method by passing an array of numbers (absolute pixel
* sizes only) as the second parameter
*
* @param width width Default value is "*"
*/
public void setWidth(String width) {
setAttribute("width", width);
}
/**
* Return the width of the field.
*
* @return the field width as a String
*/
// public String getWidth() {
// return getAttribute("width");
// }
/**
* Control the list grid fields header wrap properties
*
* @param wrap true to wrap
*/
public void setWrap(boolean wrap) {
setAttribute("wrap", wrap);
}
/**
* Marks a field as initially hidden for this ListGrid. The user will be able to show the field via a context menu (unless canPickFields has been set false).
* <p><br>
* To mark a field as completely hidden (not shown to a user at all, in any component), set {@link com.smartgwt.client.data.DataSourceField#setHidden(Boolean) dataSourceField.hidden} instead.
*
* @param hidden true to mark the field as initially hidden
*/
public void setHidden(boolean hidden) {
setAttribute("showIf", hidden ? "false" : "true");
}
public void setImgDir(String imgDir) {
setAttribute("imgDir", imgDir);
}
public void setDefaultValue(String defaultValue) {
setAttribute("defaultValue", defaultValue);
}
public void setDefaultValue(Integer defaultValue) {
setAttribute("defaultValue", defaultValue);
}
public void setDefaultValue(Boolean defaultValue) {
setAttribute("defaultValue", defaultValue);
}
public void setDefaultValue(Float defaultValue) {
setAttribute("defaultValue", defaultValue);
}
public void setDefaultValue(Date defaultValue) {
setAttribute("defaultValue", defaultValue);
}
/**
* FormItem properties to use as a template for the form item created to edit this field. (Only used if this field is
* editable). Note: If this is not specified, the edit-form item type be the appropriate form item for
* the data-type of the field.
* <p>
* The {@link ListGrid#setEditorCustomizer()} API allows the developer to supply dynamic properties for the
* item based on the row as well as the field being edited.
* <p><br>
* Note: the FormItem passed to setEditorType() is used as a "template" to create a FormItem whenever
* the ListGrid needs to show an interface for editing this field. See
* {@link com.smartgwt.client.data.DataSourceField#setEditorType} for a discussion of the limitations this
* pattern imposes upon event handling within the passed in item.
*
* @param editorType the editor type
*/
// public void setEditorType(FormItem editorType) {
// //only set the editorType attribute if the passed editorType is a concrete subclass of FormItem
// if(!editorType.getClass().getName().equals(FormItem.class.getName())) {
// String fiEditorType = editorType.getAttribute("editorType");
// //fallback to type if editorType is not specified
// if(fiEditorType == null) fiEditorType = editorType.getType();
// if (fiEditorType != null) setAttribute("editorType", fiEditorType);
// }
// JavaScriptObject editorConfig = editorType.getConfig();
// setAttribute("editorProperties", editorConfig);
// }
//
// /**
// * If this ListGrid is showing a filter row, this property can be used to specify the form item class to use
// * for the filter form item associated with this field (Only used if this field is not canFilter:false).
// * <br>
// * <p/>
// * <b>Note</b>: If this is not specified, the edit-form item type may be derived from the 'editorType' property,
// * typically inherited from datasource fields, or from the 'type' of the field (showing the appropriate form item for the data-type).
// *
// * @param filterEditorType the filter editor type
// */
// public void setFilterEditorType(FormItem filterEditorType) {
// String type = filterEditorType.getAttribute("editorType");
// if (type == null) type = filterEditorType.getType();
// setAttribute("filterEditorType", type);
// JavaScriptObject editorConfig = filterEditorType.getConfig();
// setAttribute("filterEditorProperties", editorConfig);
// }
//
// /**
// * If this ListGrid is showing a filter row (showFilterEditor : true), this property can be used to specify properties for the
// * appropriate filter form item.
// *
// * @param filterEditorProperties the filter editor properties
// */
// public void setFilterEditorProperties(FormItem filterEditorProperties) {
// JavaScriptObject editorConfig = filterEditorProperties.getConfig();
// setAttribute("filterEditorProperties", editorConfig);
// }
//
// /**
// * If this listGrid is showing a filter row, this property can be used to specify a mapping of internal data to/from display
// * values to be in the appropriate filter row form item.
// *
// * @param filterEditorValueMap the filter editor value map
// */
// public void setFilterEditorValueMap(Map filterEditorValueMap) {
// setAttribute("filterEditorValueMap", filterEditorValueMap);
// }
/**
* When using a valueMap, set multiple to true if a select list box is desired instead of a combobox when editing the cell.
*
* @param multiple true for select list
*/
public void setMultiple(boolean multiple) {
setAttribute("multiple", multiple);
}
/**
* A valueMap to use for editors shown for this field. By default if this is not specified field.valueMap will be used instead.
* <p/>
* <p/>
* Dynamic valueMaps can be provided by implementing ListGrid.getEditorValueMap().
*
* @param editorValueMap the editor value map
*/
public void setEditorValueMap(Map editorValueMap) {
setAttribute("editorValueMap", editorValueMap);
}
/**
* Array of {@link com.smartgwt.client.widgets.form.validator.Validator} objects for this field. When the user
* edits cells in this field, these validators will be applied to the edited value.<br> Note: for databound
* listGrids, this property may be specified on the {@link com.smartgwt.client.data.DataSourceField}, enabling both
* client and server side validation.
*
* @param validators validators Default value is null
*/
// public void setValidators(Validator... validators) {
// setAttribute("validators", validators);
// }
/**
* Array of legal values for this field, or an Object where each property maps a stored value to a user-displayable
* value.<br> Note that if this field is editable (see {@link com.smartgwt.client.widgets.grid.ListGrid#getCanEdit
* canEdit}, {@link com.smartgwt.client.widgets.grid.ListGridField#getCanEdit canEdit}), editors displayed for this
* field will pick up their valueMap either from this value or from {@link com.smartgwt.client.widgets.grid.ListGridField#getEditorValueMap
* editorValueMap}. <P> See also {@link com.smartgwt.client.data.DataSourceField#getValueMap valueMap}.
*
* @param valueMap valueMap Default value is null
*/
public void setValueMap(Map valueMap) {
setAttribute("valueMap", valueMap);
}
/**
* Array of legal values for this field, or an Object where each property maps a stored value to a user-displayable
* value.<br> Note that if this field is editable (see {@link com.smartgwt.client.widgets.grid.ListGrid#getCanEdit
* canEdit}, {@link com.smartgwt.client.widgets.grid.ListGridField#getCanEdit canEdit}), editors displayed for this
* field will pick up their valueMap either from this value or from {@link com.smartgwt.client.widgets.grid.ListGridField#getEditorValueMap
* editorValueMap}. <P> See also {@link com.smartgwt.client.data.DataSourceField#getValueMap valueMap}.
*
* @param valueMap valueMap Default value is null
*/
public void setValueMap(String... valueMap) {
setAttribute("valueMap", valueMap);
}
/**
* This property is a mapping between data values and URLs of icons to display. If specified, for every cell in this
* field where the data value matches an entry in the valueIcons map, an icon with the appropriate URL will be
* displayed.<br> By default any editors displayed for this field will have the same valueIcons object applied to
* them. This may be overridden by explicitly setting {@link com.smartgwt.client.widgets.grid.ListGridField#getEditorValueIcons
* editorValueIcons}.<br> Note that the following attributes related to valueIcon styling will also be picked up by
* the editor from the ListGridField object unless explicitly specified via the equivalent <code>editor_</code>
* attributes:<br> {@link com.smartgwt.client.widgets.grid.ListGridField#getValueIconWidth valueIconWidth}<br>
* {@link com.smartgwt.client.widgets.grid.ListGridField#getValueIconHeight valueIconHeight}<br> {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconSize valueIconSize}<br> {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconLeftPadding valueIconLeftPadding}<br> {@link
* com.smartgwt.client.widgets.grid.ListGridField#getValueIconRightPadding valueIconRightPadding}<br>
* {@link com.smartgwt.client.widgets.grid.ListGridField#getImageURLPrefix imageURLPrefix}<br> {@link
* com.smartgwt.client.widgets.grid.ListGridField#getImageURLSuffix imageURLSuffix}
*
* @param valueIcons valueIcons Default value is null
*/
public void setValueIcons(Map<String, String> valueIcons) {
setAttribute("valueIcons", valueIcons);
}
/**
* When some cell in this field is being edited, setting this property will specify the value icons to display in
* the cell's editor. If unset, the editor's valueIcons will be determined in the same way as it would be for a
* static cell.
*
* @param editorValueIcons editorValueIcons Default value is null
*/
public void setEditorValueIcons(Map<String, String> editorValueIcons) {
setAttribute("editorValueIcons", editorValueIcons);
}
/**
* Derive a ValueMap by fetching records from another DataSource and extracting the
* {@link com.smartgwt.client.widgets.grid.ListGridField#getValueField valueField} and
* {@link com.smartgwt.client.widgets.grid.ListGridField#getDisplayField displayField} in the loaded records,
* to derive one valueMap entry per record loaded from the optionDataSource. <P> Unlike the similar use of
* {@link com.smartgwt.client.widgets.form.fields.PickList#getOptionDataSource optionDataSource} for
* pickLists used during editing or filtering, <code>listGridField.optionDataSource</code> causes the entire set of
* records from the optionDataSource to be fetched, without paging. Hence listGridField.optionDataSource is
* appropriate only for smaller valueMaps. For very large valueMap situations, such as an accountId field that should be
* displayed as an accountName where there are thousands of accounts, the recommended approach is: <ul> <li> do not set
* listGridField.optionDataSource <li> declare two fields in the DataSource, eg "accountId" and "accountName". <li>
* Set the {@link com.smartgwt.client.widgets.grid.ListGridField#getDisplayField displayField} attribute on the data field to the
* name of the display field. <li> When fetching records for display in a grid, have your server send back values for both fields,
* but show only the data field ("accountId") in the grid. </ul> In this case the cells in the accountId field will show the record
* value from the accountName field. This approach means the valueMap will never be loaded in its entirety, instead, each loaded
* record contains the valueMapping for that one record, as a pair of fields within the record. <P> Note that it is key that the server
* return <b>both</b> the underlying stored value <b>and</b> the display value, as suggested above, because this approach allows the
* {@link com.smartgwt.client.widgets.form.fields.PickList#getOptionDataSource optionDataSource} property to be used to provide paged valueMaps during inline
* editing and {@link com.smartgwt.client.widgets.grid.ListGrid#getShowFilterEditor showFilterEditor}. Note that pickList.optionDataSource
* is a distinct setting from listGridField.optionDataSource, settable via {@link com.smartgwt.client.widgets.grid.ListGridField#getEditorProperties editorProperties}
* (for editing) and {@link com.smartgwt.client.widgets.grid.ListGridField#getFilterEditorProperties filterEditorProperties} (for filtering).
*
* @param optionDataSource optionDataSource Default value is null
*/
// public void setOptionDataSource(DataSource optionDataSource) {
// optionDataSource.getOrCreateJsObj();
// setAttribute("optionDataSource", optionDataSource.getID());
// }
// /**
// * A function, if provided, is evaluated to conditionally determine whether this field should be displayed. Evaluated on initial draw,
// * then reevaluated on explicit calls to listGrid.refreshFields() or listGrid.setFields().
// * <p/>
// * Use 'showIf:"false"' to set a ListGrid field to initially hidden.
// * <p/>
// * Note that explicit calls to grid.showField() or hideField() will wipe out the showIf expression, as will the end
// * user showing and hiding columns via the header contextMenu.
// * <p/>
// * Also note that fields marked as detail:true will be hidden by default even if ListGrid.showDetailFields is true. To show detail fields inherited from a DataSource, include an explicit field definition for the field and set this property to return true.
// *
// * @param showIf showIf criteria
// */
// public native void setShowIfCondition(ListGridFieldIfFunction showIf) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.showIf = $debox($entry(function(grid, field, fieldNum) {
// var gridJ = @com.smartgwt.client.widgets.grid.ListGrid::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(grid);
// var fieldJ = @com.smartgwt.client.widgets.grid.ListGridField::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(field);
// return showIf.@com.smartgwt.client.widgets.grid.ListGridFieldIfFunction::execute(Lcom/smartgwt/client/widgets/grid/ListGrid;Lcom/smartgwt/client/widgets/grid/ListGridField;I)(gridJ, fieldJ, fieldNum);
// }));
// }-*/;
//
// /**
// * Specifies the default sorting direction for this column. If specified on the {@link com.smartgwt.client.widgets.grid.ListGrid#getSortField sortField} for the listGrid, sorting occurs automatically, otherwise this will be the default direction when the user clicks the field header, or calls {@link com.smartgwt.client.widgets.grid.ListGrid#sort} without specifying an explicit sort direction. <P> Overrides ListGrid.sortDirection
// *
// * @param sortDirection sortDirection Default value is null
// */
// public void setSortDirection(SortDirection sortDirection) {
// if (sortDirection == null) {
// setAttribute("sortDirection", (Boolean) null);
// } else {
// setAttribute("sortDirection", sortDirection == SortDirection.ASCENDING);
// }
// }
//
// /**
// * Specifies the default sorting direction for this column. If specified on the {@link com.smartgwt.client.widgets.grid.ListGrid#getSortField sortField} for the listGrid, sorting occurs automatically, otherwise this will be the default direction when the user clicks the field header, or calls {@link com.smartgwt.client.widgets.grid.ListGrid#sort} without specifying an explicit sort direction. <P> Overrides ListGrid.sortDirection
// *
// * @return SortDirection
// */
// public SortDirection getSortDirection() {
// Boolean sortDir = getAttributeAsBoolean("sortDirection");
// if (sortDir == null) return null;
// return sortDir ? SortDirection.ASCENDING : SortDirection.DESCENDING;
// }
//
// /**
// * If this field has an optionDataSource specified and
{@link com.smartgwt.client.widgets.grid.ListGridField#getAutoFetchDisplayMap autoFetchDisplayMap} is set, this attribute
provides a way to customize the dataSource request issued to fetch the display map from
the option dataSource.
// *
// * @param optionFilterContext optionFilterContext Default value is null
// */
// public void setOptionFilterContext(DSRequest optionFilterContext) {
// setAttribute("optionFilterContext", optionFilterContext);
// }
//
// /**
// * If this field has an optionDataSource specified and
{@link com.smartgwt.client.widgets.grid.ListGridField#getAutoFetchDisplayMap autoFetchDisplayMap} is set, this attribute
provides a way to customize the dataSource request issued to fetch the display map from
the option dataSource.
// *
// * @return DSRequest Properties
// */
// public DSRequest getOptionFilterContext() {
// JavaScriptObject jsObj = getAttributeAsJavaScriptObject("optionFilterContext");
// return jsObj == null ? null : new DSRequest(jsObj);
// }
//
// /**
// * Add a cellSaved handler.
// * <p/>
// * Callback fired when field changes value as the result of a cell edit. Fired only on
successful save of edit, when the new value doesn't match the value before editing.<br>
<p>
Same signature as {@link com.smartgwt.client.widgets.grid.ListGrid#addCellChangedHandler}, but defined on a per-field basis.
// *
// * @param handler the cellSaved handler
// * @return {@link com.google.gwt.event.shared.HandlerRegistration} used to remove this handler
// */
// public HandlerRegistration addCellSavedHandler(com.smartgwt.client.widgets.grid.events.CellSavedHandler handler) {
// if (getHandlerCount(com.smartgwt.client.widgets.grid.events.CellSavedEvent.getType()) == 0)
// setupCellSavedEvent();
// return doAddHandler(handler, com.smartgwt.client.widgets.grid.events.CellSavedEvent.getType());
// }
//
// private native void setupCellSavedEvent() /*-{
// var obj = null;
// obj = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// var selfJ = this;
// obj.cellChanged = $debox($entry(function(){
// var param = {"record" : arguments[0], "newValue" : arguments[1], "oldValue" : arguments[2], "rowNum" : arguments[3], "colNum" : arguments[4]};
// var event = @com.smartgwt.client.widgets.grid.events.CellSavedEvent::new(Lcom/google/gwt/core/client/JavaScriptObject;)(param);
// selfJ.@com.smartgwt.client.core.DataClass::fireEvent(Lcom/google/gwt/event/shared/GwtEvent;)(event);
// }));
// }-*/;
//
// /**
// * Add a change handler.
// * <p>
// * If this field is editable, any {@link com.smartgwt.client.widgets.form.fields.FormItem#addChangeHandler change} handler
// * specified on the ListGridField will be passed onto the editors for this field. <P> Note that if {@link
// * com.smartgwt.client.widgets.grid.ListGridField#getCanToggle canToggle} is true, the user may change the value of a
// * boolean field without going into edit mode by single clicking on the field. In this case the {@link
// * com.smartgwt.client.widgets.grid.ListGridField#addChangeHandler ListGridField.change} and {@link
// * com.smartgwt.client.widgets.grid.ListGridField#addChangedHandler ListGridField.changed} handlers will fire but the
// * <code>form</code> and <code>item</code> parameters will be null.
// *
// * @param handler the change handler
// * @return {@link HandlerRegistration} used to remove this handler
// */
// public HandlerRegistration addChangeHandler(com.smartgwt.client.widgets.grid.events.ChangeHandler handler) {
// if(getHandlerCount(com.smartgwt.client.widgets.grid.events.ChangeEvent.getType()) == 0) setupChangeEvent();
// return doAddHandler(handler, com.smartgwt.client.widgets.grid.events.ChangeEvent.getType());
// }
//
// private native void setupChangeEvent() /*-{
// var obj = null;
// obj = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// var selfJ = this;
// obj.change = $debox($entry(function(){
// var param = {"form" : arguments[0], "item" : arguments[1], "value" : arguments[2], "oldValue" : arguments[3], "sourceJSO" : this};
// var event = @com.smartgwt.client.widgets.grid.events.ChangeEvent::new(Lcom/google/gwt/core/client/JavaScriptObject;)(param);
// selfJ.@com.smartgwt.client.core.DataClass::fireEvent(Lcom/google/gwt/event/shared/GwtEvent;)(event);
// var ret = event.@com.smartgwt.client.event.Cancellable::isCancelled()();
// return !ret;
// }));
// }-*/;
// /**
// * Add a changed handler.
// * <p>
// * If this field is editable, any {@link com.smartgwt.client.widgets.form.fields.FormItem#addChangedHandler changed}
// * handler specified on the ListGridField will be passed onto the editors for this field. Note that if {@link
// * com.smartgwt.client.widgets.grid.ListGridField#getCanToggle canToggle} is true, the user may change the value of a
// * boolean field without going into edit mode by single clicking on the field. In this case the {@link
// * com.smartgwt.client.widgets.grid.ListGridField#addChangeHandler ListGridField.change} and {@link
// * com.smartgwt.client.widgets.grid.ListGridField#addChangedHandler ListGridField.changed} handlers will fire but the
// * <code>form</code> and <code>item</code> parameters will be null.
// *
// * @param handler the changed handler
// * @return {@link HandlerRegistration} used to remove this handler
// */
// public HandlerRegistration addChangedHandler(com.smartgwt.client.widgets.grid.events.ChangedHandler handler) {
// if(getHandlerCount(com.smartgwt.client.widgets.grid.events.ChangedEvent.getType()) == 0) setupChangedEvent();
// return doAddHandler(handler, com.smartgwt.client.widgets.grid.events.ChangedEvent.getType());
// }
//
// private native void setupChangedEvent() /*-{
// var obj = null;
// obj = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// var selfJ = this;
// obj.changed = $entry(function(){
// var param = {"form" : arguments[0], "item" : arguments[1], "value" : arguments[2], "sourceJSO" : this};
// var event = @com.smartgwt.client.widgets.grid.events.ChangedEvent::new(Lcom/google/gwt/core/client/JavaScriptObject;)(param);
// selfJ.@com.smartgwt.client.core.DataClass::fireEvent(Lcom/google/gwt/event/shared/GwtEvent;)(event);
// });
// }-*/;
//
// /**
// * Renderer that returns the title that should be shown to the user for the group with the groupValue passed as a parameter.
// * <p/>
// * Default title is the groupValue itself.
// *
// * @param groupTitleRenderer the group title renderer
// */
// public native void setGroupTitleRenderer(GroupTitleRenderer groupTitleRenderer) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.getGroupTitle = $debox($entry(function(groupValue, groupNode, field, fieldName, grid) {
// var groupValueJ = $wnd.SmartGWT.convertToJavaType(groupValue);
// var groupNodeJ = @com.smartgwt.client.widgets.grid.GroupNode::new(Lcom/google/gwt/core/client/JavaScriptObject;)(groupNode);
// var fieldJ = @com.smartgwt.client.widgets.grid.ListGridField::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(field);
// var gridJ = @com.smartgwt.client.widgets.grid.ListGrid::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(grid);
// return groupTitleRenderer.@com.smartgwt.client.widgets.grid.GroupTitleRenderer::getGroupTitle(Ljava/lang/Object;Lcom/smartgwt/client/widgets/grid/GroupNode;Lcom/smartgwt/client/widgets/grid/ListGridField;Ljava/lang/String;Lcom/smartgwt/client/widgets/grid/ListGrid;)(groupValueJ, groupNodeJ, fieldJ, fieldName, gridJ);
// }));
// }-*/;
//
// /**
// * Function that returns the value which records should be grouped by.
// * <p/>
// * All records that for which getGroupValue() returns the same value appear in the same group. Default is the result
// * of ListGrid.getCellValue().
// * <p/>
// * While any type of value may be returned, avoiding the use of string values may result in improved performance.
// * In this case, {@link GroupTitleRenderer#getGroupTitle(Object, GroupNode, ListGridField, String, ListGrid)} may be implemented to map a numeric group value into a
// * legible string.
// *
// * @param groupValueFunction the group value function
// */
// public native void setGroupValueFunction(GroupValueFunction groupValueFunction) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.getGroupValue = $debox($entry(function(value, record, field, fieldName, grid) {
// var valueJ = $wnd.SmartGWT.convertToJavaType(value);
// var recordJ = @com.smartgwt.client.widgets.grid.ListGridRecord::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(record);
// var fieldJ = @com.smartgwt.client.widgets.grid.ListGridField::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(field);
// var gridJ = @com.smartgwt.client.widgets.grid.ListGrid::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(grid);
// var val = groupValueFunction.@com.smartgwt.client.widgets.grid.GroupValueFunction::getGroupValue(Ljava/lang/Object;Lcom/smartgwt/client/widgets/grid/ListGridRecord;Lcom/smartgwt/client/widgets/grid/ListGridField;Ljava/lang/String;Lcom/smartgwt/client/widgets/grid/ListGrid;)(valueJ, recordJ, fieldJ, fieldName, gridJ);
// return $wnd.SmartGWT.convertToPrimitiveType(val);
// }));
// }-*/;
//
// /**
// * This function method will be called from ListGrid.getEditorValueMap() and the resulting valueMap will be used instead of any static specified valueMap for the field.
// *
// * @param editorValueMapFunction the editor value map function
// */
// public native void setEditorValueMapFunction(EditorValueMapFunction editorValueMapFunction) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.getEditorValueMap = $entry(function(values, field, grid) {
// var valuesJ = @com.smartgwt.client.util.JSOHelper::convertToMap(Lcom/google/gwt/core/client/JavaScriptObject;)(values);
// var fieldJ = @com.smartgwt.client.widgets.grid.ListGridField::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(field);
// var gridJ = @com.smartgwt.client.widgets.grid.ListGrid::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(grid);
// var map = editorValueMapFunction.@com.smartgwt.client.widgets.grid.EditorValueMapFunction::getEditorValueMap(Ljava/util/Map;Lcom/smartgwt/client/widgets/grid/ListGridField;Lcom/smartgwt/client/widgets/grid/ListGrid;)(valuesJ, fieldJ, gridJ);
// return @com.smartgwt.client.util.JSOHelper::convertMapToJavascriptObject(Ljava/util/Map;)(map);
// });
// }-*/;
//
// /**
// * Set the properties of the header button used for this field.
// *
// * @param buttonProperties the header button properties
// */
// public void setHeaderButtonProperties(Button buttonProperties) {
// buttonProperties.setConfigOnly(true);
// JSOHelper.addProperties(getJsObj(), buttonProperties.getConfig());
// }
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true,
* this method can be used to
* specify a {@link com.smartgwt.client.types#SummaryFunctionType}
* for calculating the summary value to display.
*
* @param summaryFunction summaryFunction
*/
public void setSummaryFunction(SummaryFunctionType summaryFunction) {
setAttribute("summaryFunction", summaryFunction);
}
/**
* If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true,
* this method can be used to
* specify the name of a summary function registered via {@link com.smartgwt.client.data.SimpleType#registerSummaryFunction()}
* for calculating the summary value to display.
*
* @param summaryFunction summaryFunction
*/
public void setSummaryFunction(String summaryFunction) {
setAttribute("summaryFunction", summaryFunction);
}
// /**
// * If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
// * com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true,
// * this method can be used to
// * specify a {@link com.smartgwt.client.widgets.grid#SummaryFunction}
// * for calculating the summary value to display.
// *
// * @param summaryFunction summaryFunctio
// */
// public native void setSummaryFunction(SummaryFunction summaryFunction) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// if (summaryFunction == null) self.summaryFunction = null;
// else {
//
// self.summaryFunction = $debox($entry(function(records, field) {
// var recordsJ = @com.smartgwt.client.data.Record::convertToRecordArray(Lcom/google/gwt/core/client/JavaScriptObject;)(records);
// var fieldJ = @com.smartgwt.client.widgets.grid.ListGridField::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(field);
// var val = summaryFunction.@com.smartgwt.client.widgets.grid.SummaryFunction::getSummaryValue([Lcom/smartgwt/client/data/Record;Lcom/smartgwt/client/widgets/grid/ListGridField;)(recordsJ, fieldJ);
// if(val == null || $wnd.isc.isA.String(val) || $wnd.isc.isA.Number(val)) return val;
// if(@com.smartgwt.client.util.JSOHelper::isJavaNumber(Ljava/lang/Object;)(val)) return val.@java.lang.Number::doubleValue()();
// if(@com.smartgwt.client.util.JSOHelper::isJavaDate(Ljava/lang/Object;)(val)) return @com.smartgwt.client.util.JSOHelper::convertToJavaScriptDate(Ljava/util/Date;)(val);
// $wnd.isc.logWarn('Unrecognized type of value ' + val + ' returned by the summaryFunction');
// }));
// }
// }-*/;
//
// /**
// * If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
// * com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true,
// * this method can be used to specify a {@link com.smartgwt.client.widgets.grid#SummaryFunction}
// * for calculating the summary value to display.
// * Note that by calling this method repeatedly, you can apply more than one summary function to a field. This allows
// * the developer to set up multi-line summaries - each specified summary function result will show up in a separate
// * summary row (either at the bottom of the grid or at the end of each group).
// * <P>
// * Note also that multiple-line summary functions are not compatible with the
// * {@link com.smartgwt.client.widgets.grid#setShowGroupSummaryInHeader()} feature. If this property is set only the
// * first summary value will be visible to the user (displayed in the group header node).
// *
// * @param summaryFunction
// */
// public native void addSummaryFunction(SummaryFunction summaryFunction) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// if (self.summaryFunction == null) {
// self.summaryFunction = new $wnd.Array(self.summaryFunction);
// } else if (!$wnd.isc.isAn.Array(self.summaryFunction)) {
// self.summaryFunction = new $wnd.Array(self.summaryFunction);
// }
// // support being passed null - this will allow multi line summaries with gaps in some rows for some fields.
// if (summaryFunction == null) {
// self.summaryFunction[self.summaryFunction.length] = null;
// } else {
// self.summaryFunction[self.summaryFunction.length] = $debox($entry(function(records, field) {
// var recordsJ = @com.smartgwt.client.data.Record::convertToRecordArray(Lcom/google/gwt/core/client/JavaScriptObject;)(records);
// var fieldJ = @com.smartgwt.client.widgets.grid.ListGridField::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(field);
// var val = summaryFunction.@com.smartgwt.client.widgets.grid.SummaryFunction::getSummaryValue([Lcom/smartgwt/client/data/Record;Lcom/smartgwt/client/widgets/grid/ListGridField;)(recordsJ, fieldJ);
// if(val == null || $wnd.isc.isA.String(val) || $wnd.isc.isA.Number(val)) return val;
// if(@com.smartgwt.client.util.JSOHelper::isJavaNumber(Ljava/lang/Object;)(val)) return val.@java.lang.Number::doubleValue()();
// if(@com.smartgwt.client.util.JSOHelper::isJavaDate(Ljava/lang/Object;)(val)) return @com.smartgwt.client.util.JSOHelper::convertToJavaScriptDate(Ljava/util/Date;)(val);
// $wnd.isc.logWarn('Unrecognized type of value ' + val + ' returned by the summaryFunction');
// }));
// }
// }-*/;
//
// /**
// * If {@link com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
// * com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true,
// * this method can be used to specify a {@link com.smartgwt.client.types#SummaryFunctionType}
// * for calculating the summary value to display.
// * Note that by calling this method repeatedly, you can apply more than one summary function to a field. This allows
// * the developer to set up multi-line summaries - each specified summary function result will show up in a separate
// * summary row (either at the bottom of the grid or at the end of each group).
// * <P>
// * Note also that multiple-line summary functions are not compatible with the
// * {@link com.smartgwt.client.widgets.grid#setShowGroupSummaryInHeader()} feature. If this property is set only the
// * first summary value will be visible to the user (displayed in the group header node).
// *
// * @param summaryFunction
// */
// public native void addSummaryFunction(SummaryFunctionType summaryFunction) /*-{
//
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
//
// if (self.summaryFunction == null) {
// self.summaryFunction = new $wnd.Array(self.summaryFunction);
// } else if (!$wnd.isc.isAn.Array(self.summaryFunction)) {
// self.summaryFunction = new $wnd.Array(self.summaryFunction);
// }
// // support being passed null - this will allow multi line summaries with gaps in some rows for some fields.
// if (summaryFunction == null) {
// self.summaryFunction[self.summaryFunction.length] = null;
// } else {
// self.summaryFunction[self.summaryFunction.length] = summaryFunction.@com.smartgwt.client.types.SummaryFunctionType::value;
// }
//
// }-*/;
/**
* Only applies to fields of type <code>"summary"</code>. Fields of this type will display a calculated value based on the
* other field values within the current record. <P> This attribute specifies how the summary field value will be
* calculated. See {@link com.smartgwt.client.types.RecordSummaryFunctionType} for valid options. <P> A subset of the
* ListGrid's fields will be passed to the RecordSummaryFunction. Which fields to include is determined based on {@link
* com.smartgwt.client.widgets.grid.ListGridField#getIncludeInRecordSummary includeInRecordSummary} <P> If {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true, this field's value in the
* summary row[s] will still be calculated by calling this method. In this case, the record object passed in will contain
* summary values for each field. If custom handling is required for this case, it may be detected by checking the record
* object's {@link com.smartgwt.client.widgets.grid.ListGridRecord#getIsGroupSummary isGroupSummary} and {@link
* com.smartgwt.client.widgets.grid.ListGridRecord#getIsGridSummary isGridSummary} attributes.
*
* @param recordSummaryFunction recordSummaryFunction Default value is null
*/
public void setRecordSummaryFunction(RecordSummaryFunctionType recordSummaryFunction) {
setAttribute("recordSummaryFunction", recordSummaryFunction.getValue());
}
// /**
// * Only applies to fields of type <code>"summary"</code>. Fields of this type will display a calculated value based on the
// * other field values within the current record. <P> This attribute specifies how the summary field value will be
// * calculated. See {@link com.smartgwt.client.types.RecordSummaryFunctionType} for valid options. <P> A subset of the
// * ListGrid's fields will be passed to the RecordSummaryFunction. Which fields to include is determined based on {@link
// * com.smartgwt.client.widgets.grid.ListGridField#getIncludeInRecordSummary includeInRecordSummary} <P> If {@link
// * com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
// * com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true, this field's value in the
// * summary row[s] will still be calculated by calling this method. In this case, the record object passed in will contain
// * summary values for each field. If custom handling is required for this case, it may be detected by checking the record
// * object's {@link com.smartgwt.client.widgets.grid.ListGridRecord#getIsGroupSummary isGroupSummary} and {@link
// * com.smartgwt.client.widgets.grid.ListGridRecord#getIsGridSummary isGridSummary} attributes.
// *
// * @param recordSummaryFunction recordSummaryFunction Default value is null
// */
// public native void setRecordSummaryFunction(RecordSummaryFunction recordSummaryFunction) /*-{
// var self = this.@com.smartgwt.client.core.DataClass::getJsObj()();
// self.recordSummaryFunction = $debox($entry(function(record, fields, summaryField) {
// var recordJ = @com.smartgwt.client.data.Record::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(record);
// var fieldsJ = @com.smartgwt.client.widgets.grid.ListGrid::convertToListGridFieldArray(Lcom/google/gwt/core/client/JavaScriptObject;)(fields);
// var summaryFieldJ = @com.smartgwt.client.widgets.grid.ListGridField::getOrCreateRef(Lcom/google/gwt/core/client/JavaScriptObject;)(summaryField);
// var val = recordSummaryFunction.@com.smartgwt.client.widgets.grid.RecordSummaryFunction::getSummaryValue(Lcom/smartgwt/client/data/Record;[Lcom/smartgwt/client/widgets/grid/ListGridField;Lcom/smartgwt/client/widgets/grid/ListGridField;)(recordJ, fieldsJ, summaryFieldJ);
// return $wnd.SmartGWT.convertToPrimitiveType(val);
// }));
// }-*/;
/**
* Only applies to fields of type <code>"summary"</code>. Fields of this type will display a calculated value based on the
* other field values within the current record. <P> This attribute specifies how the summary field value will be
* calculated. See {@link com.smartgwt.client.types.RecordSummaryFunctionType} for valid options. <P> A subset of the
* ListGrid's fields will be passed to the RecordSummaryFunction. Which fields to include is determined based on {@link
* com.smartgwt.client.widgets.grid.ListGridField#getIncludeInRecordSummary includeInRecordSummary} <P> If {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGridSummary showGridSummary} or {@link
* com.smartgwt.client.widgets.grid.ListGrid#getShowGroupSummary showGroupSummary} is true, this field's value in the
* summary row[s] will still be calculated by calling this method. In this case, the record object passed in will contain
* summary values for each field. If custom handling is required for this case, it may be detected by checking the record
* object's {@link com.smartgwt.client.widgets.grid.ListGridRecord#getIsGroupSummary isGroupSummary} and {@link
* com.smartgwt.client.widgets.grid.ListGridRecord#getIsGridSummary isGridSummary} attributes.
*
*
* @return RecordSummaryFunction
*/
public RecordSummaryFunctionType getRecordSummaryFunction() {
return EnumUtil.getEnum(RecordSummaryFunctionType.values(), getAttribute("recordSummaryFunction"));
}
// vaadin integration
public void setEditorType(FormItem editorType) {
//only set the editorType attribute if the passed editorType is a concrete subclass of FormItem
if(!editorType.getClass().getName().equals(FormItem.class.getName())) {
String fiEditorType = editorType.getAttribute("editorType");
//fallback to type if editorType is not specified
if(fiEditorType == null) fiEditorType = editorType.getType();
if (fiEditorType != null) setAttribute("editorType", fiEditorType);
}
setAttribute("editorProperties", editorType);
}
public void setCellFormatter(String formatter)
{
setAttribute("*cellFormatter", formatter);
}
}