public class ERXJSPopUpRelationPicker extends ERXStatelessComponent
This WOComponent displays two pop-up buttons. One pop-up displays a list of what can be thought of as parent entities. The second pop-up displays a list of what can be thought of as children entities. When a user selects an entity in the parent list, the child list is instantly modified to reflect the children entities available to the user through that parent. This is done through client-side Javascript. Also handles to-many selections both on the parent and the children.
For example:
parent1(child1,child2,child3)
parent2(child4,child5)
parent3(child2,child5)
When the user selects parent1, its appropriate children are displayed in the second popup.
If the user selects child2 in the children pop-up this is the value that is returned to the
user through the childrenSelection variable. This is either an NSArray if multiple
is true
or the single selected object.
For the display of the parent popup, if we aren't passed in a parentSelection, then we default to
parentPopUpStringForAll. If we aren't given that either, then we default to the first parent in the array.
For the display of the child popup, if we aren't passed in a childrenSelection, then we default to childPopUpStringForAll.
If we aren't given that either, then we default to the first child in the array.Name | Description |
---|---|
multiple | boolean the defines if there can multiple parents and children selected. |
parentEntitiesList | array of the parent objects that appear in the first pop-up. |
parentToChildrenRelationshipName | name of the relationship from the parent to its possible children. This is used to fill the values that appear in the children popup. |
parentSelection | currently selected parent(s) in the parent pop-up. This can be null, but will return the user-selected parent. |
childrenSelection | returns the user-selected child(ren). |
parentDisplayValueName | keypath of the parent displayed in the parent pop-up |
parentLabel | value displayed in the table interface for the parent popup. |
childLabel | value displayed in the table interface for the child popup. |
defaultChildKey | keypath of the parent for the default child (eg, largest city) |
childrenSortKey | keypath to sort the children on |
childDisplayValueName | keypath of the child displayed in the child pop-up |
parentPopUpStringForAll | to display if no parent is chosen ("- all -") |
childPopUpStringForAll | to display if no child is chosen ("- all -") |
size | number of rows in select boxes |
possibleChildren | shows only these values for children |
com.webobjects.appserver.WOComponent._EventLoggingEnabler, com.webobjects.appserver.WOComponent.Event
com.webobjects.foundation.NSKeyValueCodingAdditions.DefaultImplementation, com.webobjects.foundation.NSKeyValueCodingAdditions.Utility
com.webobjects.foundation.NSKeyValueCoding._BooleanFieldBinding, com.webobjects.foundation.NSKeyValueCoding._BooleanMethodBinding, com.webobjects.foundation.NSKeyValueCoding._FieldBinding, com.webobjects.foundation.NSKeyValueCoding._ForwardingBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding._MethodBinding, com.webobjects.foundation.NSKeyValueCoding._NumberFieldBinding, com.webobjects.foundation.NSKeyValueCoding._NumberMethodBinding, com.webobjects.foundation.NSKeyValueCoding._ReflectionKeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding.ErrorHandling, com.webobjects.foundation.NSKeyValueCoding.MapImplementation, com.webobjects.foundation.NSKeyValueCoding.Null<T>, com.webobjects.foundation.NSKeyValueCoding.UnknownKeyException, com.webobjects.foundation.NSKeyValueCoding.ValueAccessor
com.webobjects.foundation.NSValidation._MethodBinding, com.webobjects.foundation.NSValidation._ValidationBinding, com.webobjects.foundation.NSValidation.DefaultImplementation, com.webobjects.foundation.NSValidation.Utility, com.webobjects.foundation.NSValidation.ValidationException
Modifier and Type | Field and Description |
---|---|
protected String |
_childDisplayValueName |
protected String |
_childLabel |
protected String |
_childPopUpStringForAll |
protected NSArray |
_childrenSelection |
protected String |
_childrenSortKey |
protected String |
_defaultChildKey |
protected Boolean |
_multiple |
protected String |
_parentDisplayValueName |
protected NSArray |
_parentEntitiesList |
protected String |
_parentLabel |
protected String |
_parentPopUpStringForAll |
protected NSArray |
_parentSelection |
protected String |
_parentToChildrenRelationshipName |
protected NSArray |
_possibleChildren |
protected Integer |
_size |
protected String |
childSelectName |
protected String |
objectsArrayName |
protected String |
parentSelectName |
protected String |
pickerName |
_dynamicBindings
_Extension, _IsEventLoggingEnabled, _keyAssociations
Constructor and Description |
---|
ERXJSPopUpRelationPicker(com.webobjects.appserver.WOContext aContext) |
isStateless
appendToResponse, invokeAction, resetCachedBindingsInStatefulComponent, synchronizesVariablesWithBindings
_awakeInContext, _checkAccess, _frameworkName, _includeCSSResources, _includeJavascriptResources, additionalCSSFiles, additionalJavascriptFiles, arrayValueForBinding, arrayValueForBinding, booleanValueForBinding, booleanValueForBinding, booleanValueForBinding, browser, checkAccess, clickToOpenEnabled, componentName, defaultCSSPath, defaultJavascriptPath, dynamicBindings, floatValueForBinding, intValueForBinding, isPageAccessAllowed, localizer, objectValueForBinding, objectValueForBinding, pageWithName, postAppendToResponse, preAppendToResponse, primaryCSSFile, primaryJavascriptFile, shouldCheckAccess, stringValueForBinding, stringValueForBinding, useDefaultComponentCSS, useDefaultComponentJavascript
__valueForBinding, _associationWithName, _childTemplate, _cleanUpStatelessComponent, _componentDefinition, _componentUnroll, _isPage, _setContext, _setIsPage, _setParent, _setSubcomponent, _sleepInContext, _subcomponentForElementWithID, _templateNameForClass, _unroll, application, baseURL, bindingKeys, canAccessFieldsDirectly, canGetValueForBinding, canSetValueForBinding, clone, context, debugString, descriptionForResponse, ensureAwakeInContext, frameworkName, generateResponse, handleQueryWithUnboundKey, handleTakeValueForUnboundKey, hasBinding, hasSession, isCachingEnabled, isEventLoggingEnabled, logString, name, pageWithName, parent, path, pathURL, performParentAction, pullValuesFromParent, pushValuesToParent, session, set_componentUnroll, set_unroll, setCachingEnabled, setValueForBinding, setVariableValueForName, sleep, takeValueForKey, takeValueForKeyPath, template, templateWithHTMLString, templateWithHTMLString, templateWithHTMLString, templateWithName, toString, unableToSetNullForKey, validateTakeValueForKeyPath, validateValueForKey, validationFailedWithException, valueForBinding, valueForBooleanBinding, valueForIntegerBinding, valueForKey, valueForKeyPath, valueForNSArrayBindings, valueForNSDictionaryBindings, valueForNumberBinding, valueForStringBinding, variableValueForName, variableWithName
protected Integer _size
protected String _childDisplayValueName
protected String _parentDisplayValueName
protected NSArray _parentEntitiesList
protected String _parentToChildrenRelationshipName
protected NSArray _parentSelection
protected NSArray _childrenSelection
protected String _parentPopUpStringForAll
protected String _childPopUpStringForAll
protected String _parentLabel
protected String _childLabel
protected String _childrenSortKey
protected String _defaultChildKey
protected Boolean _multiple
protected NSArray _possibleChildren
protected String parentSelectName
protected String childSelectName
protected String pickerName
protected String objectsArrayName
public ERXJSPopUpRelationPicker(com.webobjects.appserver.WOContext aContext)
public void awake()
awake
in class com.webobjects.appserver.WOComponent
protected void updateVarNames()
protected int offsetForID(String id)
public void takeValuesFromRequest(com.webobjects.appserver.WORequest request, com.webobjects.appserver.WOContext context)
ERXNonSynchronizingComponent
ERXNonSynchronizingComponent.resetCachedBindingsInStatefulComponent()
prior to super.takeValuesFromRequest.takeValuesFromRequest
in class ERXNonSynchronizingComponent
request
- from which the values will be takencontext
- of the requestprotected NSArray possibleChildren()
public String jsString()
public String hiddenFormElementStrings()
public String parentPopUpString()
public String formName()
public String childPopUpString()
<select name="children_select"> <option value=4>poodle <option selected value=5>puli <option value=6>greyhound </select>
protected StringBuffer selectHeader(String nm, String onChange)
public String objectArrayCreationString()
public NSArray parentEntitiesList()
public NSArray parentSelection()
public void setSelectedParents(NSArray value)
public NSArray childrenSelection()
public void setChildrenSelection(NSArray value)
public String defaultChildKey()
public String childrenSortKey()
public String childLabel()
public String parentLabel()
public String childDisplayValueName()
public String parentDisplayValueName()
public String parentToChildrenRelationshipName()
public String parentPopUpStringForAll()
public String childPopUpStringForAll()
public int size()
public boolean multiple()
public void reset()
ERXComponent
reset
in class ERXStatelessComponent
Copyright © 2002 – 2020 Project Wonder.