org.eclipse.eef.core.internal.controllers

## Class EEFListController

- java.lang.Object
- - org.eclipse.eef.core.api.controllers.AbstractEEFController
  - - org.eclipse.eef.core.api.controllers.AbstractEEFWidgetController
    - - org.eclipse.eef.core.api.controllers.AbstractEEFOnClickController
      - - org.eclipse.eef.core.internal.controllers.EEFListController

All Implemented Interfaces:
  IEEFController, IEEFListController, IEEFOnClickController, IEEFWidgetController

    public class EEFListController
    extends AbstractEEFOnClickController
    implements IEEFListController

This class will be used in order to manage the behavior of the list widget.

### Field Summary

### Fields inherited from class org.eclipse.eef.core.api.controllers.AbstractEEFWidgetController

`newHelpConsumer, newLabelConsumer`

### Fields inherited from class org.eclipse.eef.core.api.controllers.AbstractEEFController

`editingContextAdapter, interpreter, variableManager`

### Constructor Summary

Constructors
Constructor and Description
`EEFListController(org.eclipse.sirius.common.interpreter.api.IVariableManager variableManager, org.eclipse.sirius.common.interpreter.api.IInterpreter interpreter, EEFListDescription description, EditingContextAdapter editingContextAdapter)` The constructor.

### Method Summary

All Methods Instance Methods Concrete Methods
`org.eclipse.core.runtime.IStatus` `action(EEFWidgetAction action, java.util.List<java.lang.Object> elements)` Invoked when the user clicks on an action button.
`protected EEFWidgetDescription` `getDescription()` Returns the widget description.
`protected java.lang.String` `getOnClickExpression()` Returns the on click expression.
`void` `onNewValue(java.util.function.Consumer<java.lang.Object> consumer)` Register a consumer which will be called with the new value of the text when it will change.
`void` `refresh()` Refresh the controller.
`void` `removeNewValueConsumer()` Remove the consumer of the new value of the text.

### Methods inherited from class org.eclipse.eef.core.api.controllers.AbstractEEFOnClickController

`onClick`

### Methods inherited from class org.eclipse.eef.core.api.controllers.AbstractEEFWidgetController

`computeHelp, getValidationRulesContainer, getValidationRulesReference, onNewHelp, onNewLabel, removeNewHelpConsumer, removeNewLabelConsumer`

### Methods inherited from class org.eclipse.eef.core.api.controllers.AbstractEEFController

`newEval, onValidation, removeValidationConsumer`

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.eclipse.eef.core.api.controllers.IEEFOnClickController

`onClick`

### Methods inherited from interface org.eclipse.eef.core.api.controllers.IEEFWidgetController

`computeHelp, onNewHelp, onNewLabel, removeNewHelpConsumer, removeNewLabelConsumer`

### Methods inherited from interface org.eclipse.eef.core.api.controllers.IEEFController

`onValidation, removeValidationConsumer`

### Constructor Detail

#### EEFListController

    public EEFListController(org.eclipse.sirius.common.interpreter.api.IVariableManager variableManager,
                             org.eclipse.sirius.common.interpreter.api.IInterpreter interpreter,
                             EEFListDescription description,
                             EditingContextAdapter editingContextAdapter)

The constructor.

Parameters:
  `description` - The description
  `variableManager` - The variable manager
  `interpreter` - The interpreter
  `editingContextAdapter` - The editing context adapter

### Method Detail

#### refresh

    public void refresh()

Refresh the controller.

Specified by:
  `refresh` in interface `IEEFController`
Overrides:
  `refresh` in class `AbstractEEFWidgetController`
See Also:
  `org.eclipse.eef.core.internal.controllers.AbstractEEFCustomWidgetController#refresh()`

#### onNewValue

    public void onNewValue(java.util.function.Consumer<java.lang.Object> consumer)

Register a consumer which will be called with the new value of the text when it will change.

Specified by:
  `onNewValue` in interface `IEEFListController`
Parameters:
  `consumer` - The consumer of the new value of the text
See Also:
  `org.eclipse.eef.core.api.controllers.IEEFListController#onNewValue(org.eclipse.eef.core.api.controllers.IConsumer)`

#### removeNewValueConsumer

    public void removeNewValueConsumer()

Remove the consumer of the new value of the text.

Specified by:
  `removeNewValueConsumer` in interface `IEEFListController`
See Also:
  `IEEFListController.removeNewValueConsumer()`

#### getDescription

    protected EEFWidgetDescription getDescription()

Returns the widget description.

Specified by:
  `getDescription` in class `AbstractEEFWidgetController`
Returns:
  The widget description
See Also:
  `AbstractEEFWidgetController.getDescription()`

#### action

    public org.eclipse.core.runtime.IStatus action(EEFWidgetAction action,
                                                   java.util.List<java.lang.Object> elements)

Invoked when the user clicks on an action button.

Specified by:
  `action` in interface `IEEFListController`
Parameters:
  `action` - Widget action
  `elements` - The selected elements
Returns:
  the status of the action execution
See Also:
  `IEEFListController.action(org.eclipse.eef.EEFWidgetAction, java.util.List)`

#### getOnClickExpression

    protected java.lang.String getOnClickExpression()

Returns the on click expression.

Specified by:
  `getOnClickExpression` in class `AbstractEEFOnClickController`
Returns:
  The on click expression
See Also:
  `AbstractEEFOnClickController.getOnClickExpression()`