Package sc.bind
Class ArrayElementBinding
- java.lang.Object
-
- sc.bind.AbstractListener
-
- sc.bind.DestinationListener
-
- sc.bind.VariableBinding
-
- sc.bind.ArrayElementBinding
-
public class ArrayElementBinding extends VariableBinding
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface sc.bind.IListener
IListener.SyncType
-
-
Field Summary
-
Fields inherited from interface sc.bind.IListener
ARRAY_ELEMENT_CHANGED, ARRAY_ELEMENT_INVALIDATED, ARRAY_ELEMENT_VALIDATED, LISTENER_ADDED, PENDING_VALUE_SENTINEL, UNSET_VALUE_SENTINEL, VALUE_CHANGED, VALUE_CHANGED_MASK, VALUE_INVALIDATED, VALUE_REQUESTED, VALUE_VALIDATED
-
-
Constructor Summary
Constructors Constructor Description ArrayElementBinding(java.lang.Object srcObj, java.lang.Object[] parameterBindings, IBinding[] arrayElementBindings)
ArrayElementBinding(java.lang.Object dstObject, IBinding dstBinding, java.lang.Object srcObj, java.lang.Object[] parameterBindings, IBinding[] arrayElementBindings, BindingDirection dir, int flags, BindOptions opts)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
applyBinding(java.lang.Object obj, java.lang.Object value, IBinding src, boolean refresh, boolean pendingChild)
protected boolean
applyReverseBinding()
void
applyReverseBinding(java.lang.Object obj, java.lang.Object value, IBinding src)
boolean
arrayElementInvalidated(java.lang.Object srcObject, java.lang.Object srcProp, java.lang.Object dims, boolean apply)
For the array element changed case, only trigger a firing if the array element matches.boolean
arrayElementValidated(java.lang.Object srcObject, java.lang.Object srcProp, java.lang.Object dims, boolean apply)
protected boolean
equalValues(int index, java.lang.Object newValue)
protected java.lang.Object
getBoundValue(boolean pendingChild)
protected void
initBinding()
Call setBindingParent on the arrayBindings- they'll take care of listening and invalidating us when they change automatically then.protected void
reactivate(java.lang.Object obj)
void
removeListener()
protected boolean
sameValues(int index, java.lang.Object newValue)
java.lang.String
toString(java.lang.String operation, boolean displayValue)
protected boolean
validateBinding()
-
Methods inherited from class sc.bind.VariableBinding
accessBinding, activate, addBindingListener, applyPendingChildValue, applyReverseBinding, bindingInvalidated, cacheValue, getBoundParent, getBoundProperty, getBoundProperty, getBoundValueForChild, getChainElement, getNumInChain, getPropertyValue, getReads, getWrites, initFlagsOnChildren, initializeBinding, invalidateBinding, isConstant, isReversible, isValid, refreshBinding, removeBindingListener, setBindingParent, validateBinding, valueInvalidated, valueRequested, valueValidated
-
Methods inherited from class sc.bind.DestinationListener
accessObj, addCurrentScopeContext, getCurrentScopeContexts, getTrace, getUnsetOrPending, getVerbose, initFlags, isCrossScope, isDefinedObject, isValidObject, toString, toString
-
Methods inherited from class sc.bind.AbstractListener
arrayElementChanged, getPriority, getSync, listenerAdded, parentBindingChanged, performCast, valueChanged, valueRequested
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface sc.bind.IBinding
parentBindingChanged, performCast
-
-
-
-
Constructor Detail
-
ArrayElementBinding
public ArrayElementBinding(java.lang.Object srcObj, java.lang.Object[] parameterBindings, IBinding[] arrayElementBindings)
-
ArrayElementBinding
public ArrayElementBinding(java.lang.Object dstObject, IBinding dstBinding, java.lang.Object srcObj, java.lang.Object[] parameterBindings, IBinding[] arrayElementBindings, BindingDirection dir, int flags, BindOptions opts)
-
-
Method Detail
-
initBinding
protected void initBinding()
Call setBindingParent on the arrayBindings- they'll take care of listening and invalidating us when they change automatically then.- Overrides:
initBinding
in classVariableBinding
-
getBoundValue
protected java.lang.Object getBoundValue(boolean pendingChild)
- Overrides:
getBoundValue
in classVariableBinding
-
reactivate
protected void reactivate(java.lang.Object obj)
- Overrides:
reactivate
in classVariableBinding
-
applyBinding
public boolean applyBinding(java.lang.Object obj, java.lang.Object value, IBinding src, boolean refresh, boolean pendingChild)
- Specified by:
applyBinding
in interfaceIBinding
- Overrides:
applyBinding
in classVariableBinding
-
removeListener
public void removeListener()
- Specified by:
removeListener
in interfaceIBinding
- Overrides:
removeListener
in classVariableBinding
-
toString
public java.lang.String toString(java.lang.String operation, boolean displayValue)
- Overrides:
toString
in classVariableBinding
-
equalValues
protected boolean equalValues(int index, java.lang.Object newValue)
- Overrides:
equalValues
in classVariableBinding
-
sameValues
protected boolean sameValues(int index, java.lang.Object newValue)
- Overrides:
sameValues
in classVariableBinding
-
arrayElementInvalidated
public boolean arrayElementInvalidated(java.lang.Object srcObject, java.lang.Object srcProp, java.lang.Object dims, boolean apply)
For the array element changed case, only trigger a firing if the array element matches. Optimizing 1D only now- Specified by:
arrayElementInvalidated
in interfaceIListener
- Overrides:
arrayElementInvalidated
in classAbstractListener
-
validateBinding
protected boolean validateBinding()
- Overrides:
validateBinding
in classVariableBinding
-
arrayElementValidated
public boolean arrayElementValidated(java.lang.Object srcObject, java.lang.Object srcProp, java.lang.Object dims, boolean apply)
- Specified by:
arrayElementValidated
in interfaceIListener
- Overrides:
arrayElementValidated
in classAbstractListener
-
applyReverseBinding
protected boolean applyReverseBinding()
- Overrides:
applyReverseBinding
in classVariableBinding
-
applyReverseBinding
public void applyReverseBinding(java.lang.Object obj, java.lang.Object value, IBinding src)
-
-