public class DataBindingContext extends Object
bindings, and aggregates validation statuses of its
bindings, or more generally, its validation status providers.
A DataBindingContext provides the following abilities:
observable values.observable lists.
Multiple contexts can be used at any point in time. One strategy for the
management of contexts is the aggregation of validation statuses. For example
an IWizardPage could use a single context and the statuses
could be aggregated to set the page status and fulfillment. Each page in the
IWizard would have its own context instance.
| Constructor and Description |
|---|
DataBindingContext()
Creates a data binding context, using the current default realm for the
validation observables.
|
DataBindingContext(Realm validationRealm)
Creates a data binding context using the given realm for the validation
observables.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addBinding(Binding binding)
Adds the given binding to this data binding context.
|
void |
addValidationStatusProvider(ValidationStatusProvider validationStatusProvider)
Adds the given validation status provider to this data binding context.
|
Binding |
bindList(IObservableList targetObservableList,
IObservableList modelObservableList)
Creates a
Binding to synchronize the values of two
observable lists. |
Binding |
bindList(IObservableList targetObservableList,
IObservableList modelObservableList,
UpdateListStrategy targetToModel,
UpdateListStrategy modelToTarget)
Creates a
Binding to synchronize the values of two
observable lists. |
Binding |
bindSet(IObservableSet targetObservableSet,
IObservableSet modelObservableSet)
Creates a
Binding to synchronize the values of two
observable sets. |
Binding |
bindSet(IObservableSet targetObservableSet,
IObservableSet modelObservableSet,
UpdateSetStrategy targetToModel,
UpdateSetStrategy modelToTarget)
Creates a
Binding to synchronize the values of two
observable sets. |
Binding |
bindValue(IObservableValue targetObservableValue,
IObservableValue modelObservableValue)
Creates a
Binding to synchronize the values of two
observable values. |
Binding |
bindValue(IObservableValue targetObservableValue,
IObservableValue modelObservableValue,
UpdateValueStrategy targetToModel,
UpdateValueStrategy modelToTarget)
Creates a
Binding to synchronize the values of two
observable values. |
protected UpdateListStrategy |
createModelToTargetUpdateListStrategy(IObservableList modelObservableList,
IObservableList targetObservableList) |
protected UpdateSetStrategy |
createModelToTargetUpdateSetStrategy(IObservableSet modelObservableSet,
IObservableSet targetObservableSet) |
protected UpdateValueStrategy |
createModelToTargetUpdateValueStrategy(IObservableValue fromValue,
IObservableValue toValue)
Returns an update value strategy to be used for copying values from the
from value to the to value.
|
protected UpdateListStrategy |
createTargetToModelUpdateListStrategy(IObservableList targetObservableList,
IObservableList modelObservableList) |
protected UpdateSetStrategy |
createTargetToModelUpdateSetStrategy(IObservableSet targetObservableSet,
IObservableSet modelObservableSet) |
protected UpdateValueStrategy |
createTargetToModelUpdateValueStrategy(IObservableValue fromValue,
IObservableValue toValue)
Returns an update value strategy to be used for copying values from the
from value to the to value.
|
void |
dispose()
Disposes of this data binding context and all bindings and validation
status providers that were added to this context.
|
IObservableList |
getBindings()
Returns an unmodifiable
IObservableList < Binding >
of all bindings in order by time of addition. |
Realm |
getValidationRealm()
Returns the validation realm.
|
IObservableMap |
getValidationStatusMap()
Deprecated.
as of 1.1, please use
getValidationStatusProviders() |
IObservableList |
getValidationStatusProviders()
Returns an unmodifiable an unmodifiable
IObservableList <
ValidationStatusProvider > of all validation status providers
in order by time of addition. |
boolean |
removeBinding(Binding binding)
Removes the given binding.
|
boolean |
removeValidationStatusProvider(ValidationStatusProvider validationStatusProvider)
Removes the validation status provider.
|
void |
updateModels()
Updates all model observable objects to reflect the current state of the
target observable objects.
|
void |
updateTargets()
Updates all target observable objects to reflect the current state of the
model observable objects.
|
public DataBindingContext()
Realmpublic final Binding bindValue(IObservableValue targetObservableValue, IObservableValue modelObservableValue)
Binding to synchronize the values of two
observable values. This method is an alias for
bindValue(targetObservableValue, modelObservableValue, null,
null).targetObservableValue - target value, commonly a UI widgetmodelObservableValue - model valuepublic final Binding bindValue(IObservableValue targetObservableValue, IObservableValue modelObservableValue, UpdateValueStrategy targetToModel, UpdateValueStrategy modelToTarget)
Binding to synchronize the values of two
observable values. During synchronization
validation and conversion can be employed to customize the process. For
specifics on the customization of the process see
UpdateValueStrategy.targetObservableValue - target value, commonly a UI widgetmodelObservableValue - model valuetargetToModel - strategy to employ when the target is the source of the change
and the model is the destinationmodelToTarget - strategy to employ when the model is the source of the change
and the target is the destinationUpdateValueStrategyprotected UpdateValueStrategy createModelToTargetUpdateValueStrategy(IObservableValue fromValue, IObservableValue toValue)
fromValue - toValue - protected UpdateValueStrategy createTargetToModelUpdateValueStrategy(IObservableValue fromValue, IObservableValue toValue)
fromValue - toValue - public final Binding bindList(IObservableList targetObservableList, IObservableList modelObservableList)
Binding to synchronize the values of two
observable lists. This method is an alias for
bindList(targetObservableList, modelObservableList, null,
null).targetObservableList - target list, commonly a list representing a list in the UImodelObservableList - model listUpdateListStrategypublic final Binding bindList(IObservableList targetObservableList, IObservableList modelObservableList, UpdateListStrategy targetToModel, UpdateListStrategy modelToTarget)
Binding to synchronize the values of two
observable lists. During synchronization
validation and conversion can be employed to customize the process. For
specifics on the customization of the process see
UpdateListStrategy.targetObservableList - target list, commonly a list representing a list in the UImodelObservableList - model listtargetToModel - strategy to employ when the target is the source of the change
and the model is the destinationmodelToTarget - strategy to employ when the model is the source of the change
and the target is the destinationUpdateListStrategyprotected UpdateListStrategy createModelToTargetUpdateListStrategy(IObservableList modelObservableList, IObservableList targetObservableList)
modelObservableList - targetObservableList - protected UpdateListStrategy createTargetToModelUpdateListStrategy(IObservableList targetObservableList, IObservableList modelObservableList)
targetObservableList - modelObservableList - public final Binding bindSet(IObservableSet targetObservableSet, IObservableSet modelObservableSet)
Binding to synchronize the values of two
observable sets. This method is an alias for
bindSet(targetObservableValue, modelObservableValue, null,
null).targetObservableSet - target set, commonly a set representing a set in the UImodelObservableSet - model setpublic final Binding bindSet(IObservableSet targetObservableSet, IObservableSet modelObservableSet, UpdateSetStrategy targetToModel, UpdateSetStrategy modelToTarget)
Binding to synchronize the values of two
observable sets. During synchronization
validation and conversion can be employed to customize the process. For
specifics on the customization of the process see
UpdateSetStrategy.targetObservableSet - target set, commonly a set representing a set in the UImodelObservableSet - model settargetToModel - strategy to employ when the target is the source of the change
and the model is the destinationmodelToTarget - strategy to employ when the model is the source of the change
and the target is the destinationprotected UpdateSetStrategy createTargetToModelUpdateSetStrategy(IObservableSet targetObservableSet, IObservableSet modelObservableSet)
targetObservableSet - modelObservableSet - protected UpdateSetStrategy createModelToTargetUpdateSetStrategy(IObservableSet modelObservableSet, IObservableSet targetObservableSet)
modelObservableSet - targetObservableSet - public final void dispose()
validation realm.public final IObservableList getBindings()
IObservableList < Binding >
of all bindings in order by time of addition.IObservableList < Binding >
of all bindingspublic final IObservableList getValidationStatusProviders()
IObservableList <
ValidationStatusProvider > of all validation status providers
in order by time of addition.IObservableList <
ValidationStatusProvider > of all validation status
providerspublic final IObservableMap getValidationStatusMap()
getValidationStatusProviders()IObservableMap < Binding, IStatus
> mapping from bindings to current validation statuses. The keys of the
map are the bindings returned by getBindings(), and the values
are the current IStatus objects for each binding.public void addBinding(Binding binding)
binding - The binding to add.addValidationStatusProvider(ValidationStatusProvider),
getValidationStatusProviders()public void addValidationStatusProvider(ValidationStatusProvider validationStatusProvider)
validationStatusProvider - The validation status provider to add.public final void updateModels()
public final void updateTargets()
public boolean removeBinding(Binding binding)
binding - true if was associated with the context,
false if notpublic boolean removeValidationStatusProvider(ValidationStatusProvider validationStatusProvider)
validationStatusProvider - true if was associated with the context,
false if not
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.