Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.jgoodies.binding.adapter
Class SpinnerToValueModelConnector

    java.lang.Object
      com.jgoodies.binding.adapter.SpinnerToValueModelConnector

    public final class SpinnerToValueModelConnector

extends Object

Synchronizes a SpinnerModel with a ValueModel.

Since:
  1.1
Version:
  $Revision: 1.15 $
Author:
  Karsten Lentzsch
See Also:
  `SpinnerModel`, `ValueModel`

Constructor Summary
`SpinnerToValueModelConnector(SpinnerModel spinnerModel, ValueModel valueModel, Object defaultValue)` Constructs a SpinnerToValueModelConnector that establishes a Synchronization between the SpinnerModel and ValueModel.

Method Summary
`static void` | `connect(SpinnerModel spinnerModel, ValueModel valueModel, Object defaultValue)` Establishes a synchronization between the SpinnerModel and ValueModel.
`void` | `release()` Removes the internal listener from the SpinnerModel and ValueModel.
`void` | `updateSpinnerModel()` Sets the subject value as spinner value.
`void` | `updateValueModel()` Sets the spinner value as value model's value.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SpinnerToValueModelConnector

    public SpinnerToValueModelConnector(SpinnerModel spinnerModel,
                                        ValueModel valueModel,
                                        Object defaultValue)

  Constructs a SpinnerToValueModelConnector that establishes a Synchronization between the SpinnerModel and ValueModel. This constructor does not synchronize the SpinnerModel and ValueModel now. You may update the spinner model or value model using `#updateSpinnerModel` or `#updateValueModel`.

  In case you don't need the connector instance, you better use the static method `connect(SpinnerModel, ValueModel, Object)`. This constructor may confuse developers if you just use the side effects performed in the constructor; this is because it is quite unconventional to instantiate an object that you never use.

  Parameters:
    `spinnerModel` - the SpinnerModel to be synchronized
    `valueModel` - the ValueModel to be synchronized
    `defaultValue` - the value that will be used to update the spinnerModel, if the valueModel's value is `null`
  Throws:
    `NullPointerException` - if the spinnerModel, valueModel or defaultValue is `null`

Method Detail

### connect

    public static void connect(SpinnerModel spinnerModel,
                               ValueModel valueModel,
                               Object defaultValue)

  Establishes a synchronization between the SpinnerModel and ValueModel. This method does not synchronize the SpinnerModel and ValueModel now. You may update the spinner model or value model using `#updateSpinnerModel` or `#updateValueModel`.

  Parameters:
    `spinnerModel` - the SpinnerModel to be synchronized
    `valueModel` - the ValueModel to be synchronized
    `defaultValue` - the value used if the valueModel's value is `null`
  Throws:
    `NullPointerException` - if the spinnerModel or valueModel is `null`

### updateSpinnerModel

    public void updateSpinnerModel()

  Sets the subject value as spinner value.

### updateValueModel

    public void updateValueModel()

  Sets the spinner value as value model's value.

### release

    public void release()

  Removes the internal listener from the SpinnerModel and ValueModel. This connector must not be used after calling `#release`.

  To avoid memory leaks it is recommended to invoke this method, if the ValueModel lives much longer than the text component. Instead of releasing this connector, you typically make the ValueModel obsolete by releasing the PresentationModel or BeanAdapter that has created the ValueModel.

  As an alternative you may use ValueModels that in turn use event listener lists implemented using `WeakReference`.

  See Also:
    `PresentationModel.release()`, `BeanAdapter.release()`, `WeakReference`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2011 JGoodies Karsten Lentzsch. All Rights Reserved.