com.smartgwt.client.widgets

## Class FieldPicker

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.smartgwt.client.widgets.BaseWidget
      - - com.smartgwt.client.widgets.Canvas
        - - com.smartgwt.client.widgets.layout.Layout
          - - com.smartgwt.client.widgets.layout.VLayout
            - - com.smartgwt.client.widgets.FieldPicker

- All Implemented Interfaces:
    HasAttachHandlers, HasHandlers, EventListener, HasVisibility, IsWidget, LogicalStructure, HasClickHandlers, HasDoubleClickHandlers, HasDragMoveHandlers, HasDragRepositionMoveHandlers, HasDragRepositionStartHandlers, HasDragRepositionStopHandlers, HasDragResizeMoveHandlers, HasDragResizeStartHandlers, HasDragResizeStopHandlers, HasDragStartHandlers, HasDragStopHandlers, HasDropHandlers, HasDropMoveHandlers, HasDropOutHandlers, HasDropOverHandlers, HasFocusChangedHandlers, HasHoverHandlers, HasHoverHiddenHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseStillDownHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasMovedHandlers, HasParentMovedHandlers, HasResizedHandlers, HasRightMouseDownHandlers, HasScrolledHandlers, HasShowContextMenuHandlers, HasVisibilityChangedHandlers, HasMembersChangedHandlers

      public class FieldPicker
      extends VLayout

  FieldPicker provides a configuration dialog that displays, side-by-side, the available and currently-displayed fields of a `DataBoundComponent`. It allows for easy customization of the order in which the fields of a `DataBoundComponent` are displayed, and of which are visible. If so configured, it also allows for convenient launching of the HiliteEditor, FormulaBuilder, and SummaryBuilder. A FieldPicker instance runs in its own window, a `FieldPickerWindow`.

  NOTE: the FieldPicker is documented only for skinning purposes and cannot be used on it's own.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

  - ### Field Summary

    - ### Fields inherited from class com.smartgwt.client.widgets.BaseWidget

      `config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassName`

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FieldPicker()`
    `FieldPicker(JavaScriptObject jsObj)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)` Changes the defaults for Canvas AutoChildren named `autoChildName`.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)` Changes the defaults for FormItem AutoChildren named `autoChildName`.
    `protected JavaScriptObject` | `create()`
    `java.lang.String` | `getAddCustomFieldsButtonTitle()` The title displayed for the Add Custom Fields Button
    `ListGrid` | `getAvailableFieldsGrid()` A `ListGrid` showing the list of available fields.
    `Canvas[]` | `getAvailableFieldsHeaderControls()` Provides a set of controls to appear as `section header controls` above the available fields grid.
    `java.lang.String` | `getAvailableFieldsTitle()`
    `java.lang.String` | `getAvailableTitleTitle()` The title displayed for the title property of the available fields
    `HLayout` | `getButtonLayout()` A `horizontal layout` used to show the `Save` and `Cancel` buttons.
    `java.lang.String` | `getCancelButtonTitle()` The title shown on the Cancel button
    `IButton` | `getCancelChangesButton()` An AutoChild `button` that saves the current field-set and exits the Field Picker.
    `java.lang.String` | `getConfirmText()`
    `ListGrid` | `getCurrentFieldsGrid()` A `ListGrid` showing the list of currently selected fields.
    `java.lang.String` | `getCurrentFieldsTitle()`
    `java.lang.String` | `getCurrentTitleTitle()` The title displayed for the title property of the current fields
    `Canvas` | `getDataBoundComponent()` The component whose fields should be edited.
    `DataSource` | `getDataSource()` An optional DataSource that is used to create a disposable `dataBoundComponent` if none is provided.
    `java.lang.String` | `getEmptyTitleHint()` The hint shown when editing a field with no title defined.
    `java.lang.String` | `getHilitesText()`
    `Label` | `getInstructionLabel()` A `label` displaying the text assigned as the FieldPicker's `instructions`.
    `java.lang.String` | `getInstructions()`
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `getLogicalStructure()` Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `static FieldPicker` | `getOrCreateRef(JavaScriptObject jsObj)`
    `java.lang.String` | `getRemoveItemTitle()` The title shown on the 'Visible Fields' grid's context menu item, whose click handler puts the selected item back in the 'Available Fields' collection.
    `java.lang.String` | `getRemoveText()`
    `Record` | `getSampleRecord()` If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
    `DefaultSampleRecord` | `getSampleRecordAsDefaultSampleRecord()` If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
    `java.lang.String` | `getSampleValueTitle()` The title displayed for the sample value property of the current fields
    `IButton` | `getSaveAndExitButton()` An AutoChild `button` that saves the current field-set and exits the Field Picker.
    `java.lang.String` | `getSaveAndExitButtonTitle()` The title shown on the Save and Exit button
    `boolean` | `getShowFieldOrderButtons()` When set to false, hides the right-most set of buttons, used for re-ordering fields in the Visible Fields list.
    `boolean` | `getShowHilitesButton()` Shows a "Highlights..." button that shows an interface for editing hilites in the attached DataBoundComponent.
    `void` | `setAddCustomFieldsButtonTitle(java.lang.String addCustomFieldsButtonTitle)` The title displayed for the Add Custom Fields Button
    `void` | `setAvailableFields(DataSourceField... newFields)` Provides a new set of available fields.
    `void` | `setAvailableFieldsHeaderControls(Canvas... availableFieldsHeaderControls)` Provides a set of controls to appear as `section header controls` above the available fields grid.
    `void` | `setAvailableFieldsTitle(java.lang.String availableFieldsTitle)`
    `void` | `setAvailableTitleTitle(java.lang.String availableTitleTitle)` The title displayed for the title property of the available fields
    `void` | `setCallbackCustomizer(FieldPickerCallbackCustomizer customizer)` This method is called during rendering for all events in the visible range - those which would be rendered by default.
    `void` | `setCancelButtonTitle(java.lang.String cancelButtonTitle)` The title shown on the Cancel button
    `void` | `setConfirmText(java.lang.String confirmText)`
    `void` | `setCurrentFieldsTitle(java.lang.String currentFieldsTitle)`
    `void` | `setCurrentTitleTitle(java.lang.String currentTitleTitle)` The title displayed for the title property of the current fields
    `void` | `setDataBoundComponent(Canvas dataBoundComponent)` The component whose fields should be edited.
    `void` | `setDataSource(DataSource dataSource)` An optional DataSource that is used to create a disposable `dataBoundComponent` if none is provided.
    `static void` | `setDefaultProperties(FieldPicker fieldPickerProperties)` Class level method to set the default properties of this class.
    `void` | `setEmptyTitleHint(java.lang.String emptyTitleHint)` The hint shown when editing a field with no title defined.
    `void` | `setHilitesText(java.lang.String hilitesText)`
    `void` | `setInstructions(java.lang.String instructions)`
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `setLogicalStructure(com.smartgwt.logicalstructure.widgets.FieldPickerLogicalStructure s)` Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `void` | `setRemoveItemTitle(java.lang.String removeItemTitle)` The title shown on the 'Visible Fields' grid's context menu item, whose click handler puts the selected item back in the 'Available Fields' collection.
    `void` | `setRemoveText(java.lang.String removeText)`
    `void` | `setSampleRecord(DefaultSampleRecord sampleRecord)` If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
    `void` | `setSampleRecord(Record sampleRecord)` If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
    `void` | `setSampleValueTitle(java.lang.String sampleValueTitle)` The title displayed for the sample value property of the current fields
    `void` | `setSaveAndExitButtonTitle(java.lang.String saveAndExitButtonTitle)` The title shown on the Save and Exit button
    `void` | `setShowFieldOrderButtons(boolean showFieldOrderButtons)` When set to false, hides the right-most set of buttons, used for re-ordering fields in the Visible Fields list.
    `void` | `setShowHilitesButton(boolean showHilitesButton)` Shows a "Highlights..." button that shows an interface for editing hilites in the attached DataBoundComponent.

    - ### Methods inherited from class com.smartgwt.client.widgets.layout.VLayout

      `setDefaultProperties, setLogicalStructure`

    - ### Methods inherited from class com.smartgwt.client.widgets.layout.Layout

      `addMember, addMember, addMember, addMember, addMemberPostCreate, addMemberPostCreate, addMemberPreCreate, addMemberPreCreate, addMembers, addMembers, addMembersChangedHandler, getAnimateMembers, getAnimateMemberTime, getCanDropComponents, getDefaultResizeBars, getDropComponent, getDropLine, getDropLineThickness, getDropPosition, getEditProxyConstructor, getEnforcePolicy, getHPolicy, getLayoutBottomMargin, getLayoutLeftMargin, getLayoutMargin, getLayoutRightMargin, getLayoutTopMargin, getLeaveScrollbarGap, getLocateMembersBy, getLocateMembersType, getManagePercentBreadth, getMember, getMember, getMemberDefaultBreadth, getMemberNumber, getMemberNumber, getMemberOverlap, getMembers, getMembersMargin, getMinMemberSize, getOverflow, getPaddingAsLayoutMargin, getResizeBar, getResizeBarClass, getResizeBarSize, getReverseOrder, getShowDragPlaceHolder, getShowDropLines, getStackZIndex, getVertical, getVPolicy, hasMember, hideDropLine, hideMember, hideMember, onInit_Layout, onInit, reflow, reflow, reflowNow, removeMember, removeMembers, removeMembers, reorderMember, reorderMembers, setAlign, setAlign, setAnimateMembers, setAnimateMemberTime, setCanDropComponents, setDefaultLayoutAlign, setDefaultLayoutAlign, setDefaultProperties, setDefaultResizeBars, setDropLineProperties, setDropLineThickness, setEditProxyConstructor, setEnforcePolicy, setHPolicy, setLayoutBottomMargin, setLayoutLeftMargin, setLayoutMargin, setLayoutRightMargin, setLayoutTopMargin, setLeaveScrollbarGap, setLocateMembersBy, setLocateMembersType, setLogicalStructure, setManagePercentBreadth, setMemberOverlap, setMembers, setMembersMargin, setMinMemberSize, setOverflow, setPaddingAsLayoutMargin, setPlaceHolderDefaults, setPlaceHolderProperties, setResizeBarClass, setResizeBarSize, setReverseOrder, setShowDragPlaceHolder, setShowDropLines, setStackZIndex, setVertical, setVisibleMember, setVPolicy, showMember, showMember`

    - ### Methods inherited from class com.smartgwt.client.widgets.Canvas

      `addChild, addChild, addChild, addChild, addChild, addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragRepositionMoveHandler, addDragRepositionStartHandler, addDragRepositionStopHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDropHandler, addDropMoveHandler, addDropOutHandler, addDropOverHandler, addFocusChangedHandler, addHoverHandler, addHoverHiddenHandler, addKeyDownHandler, addKeyPressHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseStillDownHandler, addMouseUpHandler, addMouseWheelHandler, addMovedHandler, addParentMovedHandler, addPeer, addPeer, addPeer, addPeer, addResizedHandler, addRightMouseDownHandler, addScrolledHandler, addShowContextMenuHandler, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsFocus, containsPoint, containsPoint, deparent, depeer, disable, enable, encloses, focus, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaRole, getAutoDraw, getAutoMaskComponents, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanFocus, getCanHover, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContents, getContextMenu, getCursor, getDataPath, getDefaultHeight, getDefaultWidth, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragType, getDropTypes, getDropTypesAsString, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getElement, getElement, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFormItemAutoChild, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverComponent, getHoverDelay, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapOrigin, getHSnapOrigin, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getKeepInParentRect, getLayoutAlign, getLeavePageSpace, getLeft, getLeftAsString, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMaxHeight, getMaxWidth, getMenuConstructor, getMinHeight, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getNextZIndex, getNoDoubleClicks, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getParentCanvas, getParentElement, getPeers, getPercentBox, getPercentSource, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowDepth, getShadowImage, getShadowOffset, getShadowSoftness, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSkinImgDir, getSnapAxis, getSnapEdge, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapResizeToGrid, getSnapTo, getSnapToGrid, getSnapVDirection, getSnapVGap, getStyleName, getTabIndex, getTestInstance, getTitle, getTooltip, getTop, getTopAsString, getTopElement, getUseBackMask, getUseDragMask, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWidth, getVSnapOrigin, getVSnapOrigin, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, intersects, isDirty, isDisabled, isDrawn, isFocused, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, parentResized, printComponents, redraw, redraw, removeChild, removeChild, removePeer, removePeer, resizeBy, resizeTo, resizeTo, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAllowExternalFilters, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoDraw, setAutoHeight, setAutoMaskComponents, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBottom, setCanAcceptDrop, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setCanSelectText, setChildren, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContents, setContextMenu, setCursor, setDataPath, setDefaultHeight, setDefaultPageSpace, setDefaultProperties, setDefaultWidth, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragType, setDropTypes, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setElement, setExtraSpace, setFacetId, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverDelay, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeavePageSpace, setLeft, setLeft, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLogicalStructure, setMargin, setMatchElement, setMaxHeight, setMaxWidth, setMenuConstructor, setMinHeight, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setNeverUseFilters, setNoDoubleClicks, setOpacity, setPadding, setPageLeft, setPageTop, setParentCanvas, setParentElement, setPeers, setPercentBox, setPercentSource, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setRect, setRect, setRedrawOnResize, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setScrollbarConstructor, setScrollbarSize, setShadowDepth, setShadowImage, setShadowOffset, setShadowSoftness, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSkinImgDir, setSmoothFade, setSnapAxis, setSnapEdge, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToGrid, setSnapTo, setSnapToGrid, setSnapVDirection, setSnapVGap, setStyleName, setTabIndex, setTitle, setTooltip, setTop, setTop, setUseBackMask, setUseDragMask, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setVisibility, setVisible, setWidth, setWidth, setWidth, setWidth100, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, updateEditNode, updateHover, updateHover, updateShadow, visibleAtPoint, willAcceptDrop`

    - ### Methods inherited from class com.smartgwt.client.widgets.BaseWidget

      `addDrawHandler, applyFactoryProperties, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isFactoryCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent, unsinkEvents`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

      `fireEvent`

- - ### Constructor Detail

    - #### FieldPicker

          public FieldPicker()

    - #### FieldPicker

          public FieldPicker(JavaScriptObject jsObj)

  - ### Method Detail

    - #### getOrCreateRef

          public static FieldPicker getOrCreateRef(JavaScriptObject jsObj)

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                     Canvas defaults)

      Changes the defaults for Canvas AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties.
      See Also:
        `AutoChildUsage`

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                     FormItem defaults)

      Changes the defaults for FormItem AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties.
      See Also:
        `AutoChildUsage`

    - #### create

          protected JavaScriptObject create()

      Overrides:
        `create` in class `VLayout`

    - #### setAddCustomFieldsButtonTitle

          public void setAddCustomFieldsButtonTitle(java.lang.String addCustomFieldsButtonTitle)
                                             throws java.lang.IllegalStateException

      The title displayed for the Add Custom Fields Button
      Parameters:
        `addCustomFieldsButtonTitle` - Default value is "Add Custom Fields"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAddCustomFieldsButtonTitle

          public java.lang.String getAddCustomFieldsButtonTitle()

      The title displayed for the Add Custom Fields Button
      Returns:
        String

    - #### getAvailableFieldsGrid

          public ListGrid getAvailableFieldsGrid()
                                          throws java.lang.IllegalStateException

      A `ListGrid` showing the list of available fields.

      For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ListGrid
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setAvailableFieldsHeaderControls

          public void setAvailableFieldsHeaderControls(Canvas... availableFieldsHeaderControls)
                                                throws java.lang.IllegalStateException

      Provides a set of controls to appear as `section header controls` above the available fields grid.
      Parameters:
        `availableFieldsHeaderControls` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAvailableFieldsHeaderControls

          public Canvas[] getAvailableFieldsHeaderControls()

      Provides a set of controls to appear as `section header controls` above the available fields grid.
      Returns:
        Canvas...

    - #### setAvailableFieldsTitle

          public void setAvailableFieldsTitle(java.lang.String availableFieldsTitle)
                                       throws java.lang.IllegalStateException

      Parameters:
        `availableFieldsTitle` - Default value is "Available Fields"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAvailableFieldsTitle

          public java.lang.String getAvailableFieldsTitle()

      Returns:
        String

    - #### setAvailableTitleTitle

          public void setAvailableTitleTitle(java.lang.String availableTitleTitle)
                                      throws java.lang.IllegalStateException

      The title displayed for the title property of the available fields
      Parameters:
        `availableTitleTitle` - Default value is "Name"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAvailableTitleTitle

          public java.lang.String getAvailableTitleTitle()

      The title displayed for the title property of the available fields
      Returns:
        String

    - #### getButtonLayout

          public HLayout getButtonLayout()
                                  throws java.lang.IllegalStateException

      A `horizontal layout` used to show the `Save` and `Cancel` buttons.

      For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        HLayout
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setCancelButtonTitle

          public void setCancelButtonTitle(java.lang.String cancelButtonTitle)
                                    throws java.lang.IllegalStateException

      The title shown on the Cancel button
      Parameters:
        `cancelButtonTitle` - Default value is "Cancel"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCancelButtonTitle

          public java.lang.String getCancelButtonTitle()

      The title shown on the Cancel button
      Returns:
        String

    - #### getCancelChangesButton

          public IButton getCancelChangesButton()
                                         throws java.lang.IllegalStateException

      An AutoChild `button` that saves the current field-set and exits the Field Picker.

      For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        IButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setConfirmText

          public void setConfirmText(java.lang.String confirmText)
                              throws java.lang.IllegalStateException

      Parameters:
        `confirmText` - Default value is "Must save pending changes to proceed. OK?"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getConfirmText

          public java.lang.String getConfirmText()

      Returns:
        String

    - #### getCurrentFieldsGrid

          public ListGrid getCurrentFieldsGrid()
                                        throws java.lang.IllegalStateException

      A `ListGrid` showing the list of currently selected fields.

      For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ListGrid
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setCurrentFieldsTitle

          public void setCurrentFieldsTitle(java.lang.String currentFieldsTitle)
                                     throws java.lang.IllegalStateException

      Parameters:
        `currentFieldsTitle` - Default value is "Visible Fields"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCurrentFieldsTitle

          public java.lang.String getCurrentFieldsTitle()

      Returns:
        String

    - #### setCurrentTitleTitle

          public void setCurrentTitleTitle(java.lang.String currentTitleTitle)
                                    throws java.lang.IllegalStateException

      The title displayed for the title property of the current fields
      Parameters:
        `currentTitleTitle` - Default value is "Field Title"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCurrentTitleTitle

          public java.lang.String getCurrentTitleTitle()

      The title displayed for the title property of the current fields
      Returns:
        String

    - #### setDataBoundComponent

          public void setDataBoundComponent(Canvas dataBoundComponent)
                                     throws java.lang.IllegalStateException

      The component whose fields should be edited.

      Note that if `useAllDataSourceFields` is set on the component, it will be cleared when the FieldPicker applies the requested ordering since that setting imposes a fixed ordering on the fields.

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

    - #### getDataBoundComponent

          public Canvas getDataBoundComponent()

      The component whose fields should be edited.

      Note that if `useAllDataSourceFields` is set on the component, it will be cleared when the FieldPicker applies the requested ordering since that setting imposes a fixed ordering on the fields.

      Returns:
        Canvas

    - #### setDataSource

          public void setDataSource(DataSource dataSource)
                             throws java.lang.IllegalStateException

      An optional DataSource that is used to create a disposable `dataBoundComponent` if none is provided. Has no effect if a `dataBoundComponent` is specified.
      Parameters:
        `dataSource` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDataSource

          public DataSource getDataSource()

      An optional DataSource that is used to create a disposable `dataBoundComponent` if none is provided. Has no effect if a `dataBoundComponent` is specified.
      Returns:
        DataSource

    - #### setEmptyTitleHint

          public void setEmptyTitleHint(java.lang.String emptyTitleHint)
                                 throws java.lang.IllegalStateException

      The hint shown when editing a field with no title defined.
      Parameters:
        `emptyTitleHint` - Default value is "[No title specified]"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEmptyTitleHint

          public java.lang.String getEmptyTitleHint()

      The hint shown when editing a field with no title defined.
      Returns:
        String

    - #### setHilitesText

          public void setHilitesText(java.lang.String hilitesText)
                              throws java.lang.IllegalStateException

      Parameters:
        `hilitesText` - Default value is "Highlights..."
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getHilitesText

          public java.lang.String getHilitesText()

      Returns:
        String

    - #### getInstructionLabel

          public Label getInstructionLabel()
                                    throws java.lang.IllegalStateException

      A `label` displaying the text assigned as the FieldPicker's `instructions`. Shown across the top of the widget.

      For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Label
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setInstructions

          public void setInstructions(java.lang.String instructions)
                               throws java.lang.IllegalStateException

      Parameters:
        `instructions` - Default value is "Drag and drop or use arrows to move fields. Drag reorder to change field order."
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getInstructions

          public java.lang.String getInstructions()

      Returns:
        String

    - #### setRemoveItemTitle

          public void setRemoveItemTitle(java.lang.String removeItemTitle)
                                  throws java.lang.IllegalStateException

      The title shown on the 'Visible Fields' grid's context menu item, whose click handler puts the selected item back in the 'Available Fields' collection.
      Parameters:
        `removeItemTitle` - Default value is "Remove"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getRemoveItemTitle

          public java.lang.String getRemoveItemTitle()

      The title shown on the 'Visible Fields' grid's context menu item, whose click handler puts the selected item back in the 'Available Fields' collection.
      Returns:
        String

    - #### setRemoveText

          public void setRemoveText(java.lang.String removeText)
                             throws java.lang.IllegalStateException

      Parameters:
        `removeText` - Default value is "You are about to remove the field. Are you sure?"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getRemoveText

          public java.lang.String getRemoveText()

      Returns:
        String

    - #### setSampleRecord

          public void setSampleRecord(Record sampleRecord)
                               throws java.lang.IllegalStateException

      If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
      A value of "first" means the first record. If the underlying `dataBoundComponent` is a `TreeGrid`, you can specify "firstOpenLeaf" to use the first open leaf as the sampleRecord (this is often desirable in trees where the first record may be a folder that's used for organizational purposes only and hence would have no actual data for columns other than the tree column).
      Parameters:
        `sampleRecord` - Default value is "first"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSampleRecord

          public Record getSampleRecord()

      If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
      A value of "first" means the first record. If the underlying `dataBoundComponent` is a `TreeGrid`, you can specify "firstOpenLeaf" to use the first open leaf as the sampleRecord (this is often desirable in trees where the first record may be a folder that's used for organizational purposes only and hence would have no actual data for columns other than the tree column).
      Returns:
        Record

    - #### setSampleRecord

          public void setSampleRecord(DefaultSampleRecord sampleRecord)
                               throws java.lang.IllegalStateException

      If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
      A value of "first" means the first record. If the underlying `dataBoundComponent` is a `TreeGrid`, you can specify "firstOpenLeaf" to use the first open leaf as the sampleRecord (this is often desirable in trees where the first record may be a folder that's used for organizational purposes only and hence would have no actual data for columns other than the tree column).
      Parameters:
        `sampleRecord` - Default value is "first"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSampleRecordAsDefaultSampleRecord

          public DefaultSampleRecord getSampleRecordAsDefaultSampleRecord()

      If a `sampleRecord` is provided, the FieldPicker will show a second column in the Current Fields dialog showing the cell value that will appear for that field given the provided sample record.
      A value of "first" means the first record. If the underlying `dataBoundComponent` is a `TreeGrid`, you can specify "firstOpenLeaf" to use the first open leaf as the sampleRecord (this is often desirable in trees where the first record may be a folder that's used for organizational purposes only and hence would have no actual data for columns other than the tree column).
      Returns:
        DefaultSampleRecord

    - #### setSampleValueTitle

          public void setSampleValueTitle(java.lang.String sampleValueTitle)
                                   throws java.lang.IllegalStateException

      The title displayed for the sample value property of the current fields
      Parameters:
        `sampleValueTitle` - Default value is "Sample Value"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSampleValueTitle

          public java.lang.String getSampleValueTitle()

      The title displayed for the sample value property of the current fields
      Returns:
        String

    - #### getSaveAndExitButton

          public IButton getSaveAndExitButton()
                                       throws java.lang.IllegalStateException

      An AutoChild `button` that saves the current field-set and exits the Field Picker.

      For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        IButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setSaveAndExitButtonTitle

          public void setSaveAndExitButtonTitle(java.lang.String saveAndExitButtonTitle)
                                         throws java.lang.IllegalStateException

      The title shown on the Save and Exit button
      Parameters:
        `saveAndExitButtonTitle` - Default value is "Apply"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSaveAndExitButtonTitle

          public java.lang.String getSaveAndExitButtonTitle()

      The title shown on the Save and Exit button
      Returns:
        String

    - #### setShowFieldOrderButtons

          public void setShowFieldOrderButtons(boolean showFieldOrderButtons)
                                        throws java.lang.IllegalStateException

      When set to false, hides the right-most set of buttons, used for re-ordering fields in the Visible Fields list.
      Parameters:
        `showFieldOrderButtons` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowFieldOrderButtons

          public boolean getShowFieldOrderButtons()

      When set to false, hides the right-most set of buttons, used for re-ordering fields in the Visible Fields list.
      Returns:
        boolean

    - #### setShowHilitesButton

          public void setShowHilitesButton(boolean showHilitesButton)
                                    throws java.lang.IllegalStateException

      Shows a "Highlights..." button that shows an interface for editing hilites in the attached DataBoundComponent.
      Parameters:
        `showHilitesButton` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowHilitesButton

          public boolean getShowHilitesButton()

      Shows a "Highlights..." button that shows an interface for editing hilites in the attached DataBoundComponent.
      Returns:
        boolean

    - #### setAvailableFields

          public void setAvailableFields(DataSourceField... newFields)

      Provides a new set of available fields.
      Parameters:
        `newFields` -

    - #### setDefaultProperties

          public static void setDefaultProperties(FieldPicker fieldPickerProperties)

      Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

      Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

      Parameters:
        `fieldPickerProperties` - properties that should be used as new defaults when instances of this class are created

    - #### setCallbackCustomizer

          public void setCallbackCustomizer(FieldPickerCallbackCustomizer customizer)

      This method is called during rendering for all events in the visible range - those which would be rendered by default. The customizer should return false to prevent the passed event from appearing in the passed view.
      Parameters:
        `customizer` - the customizer to execute.

    - #### setLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject setLogicalStructure(com.smartgwt.logicalstructure.widgets.FieldPickerLogicalStructure s)

      Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.

    - #### getLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject getLogicalStructure()

      Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
      Specified by:
        `getLogicalStructure` in interface `LogicalStructure`
      Overrides:
        `getLogicalStructure` in class `VLayout`