# Class "guigen :: ComboBox"

Defined in package : guigen

MultiDataWidget che permette la selezione di uno o più valori all'interno di un elenco di possibili opzioni. Se il value-binding è impostato su un ApplicationData di tipo Simple la combo sarà a selezione singola; se il value-binding è impostato su un ApplicationData di tipo TypedArray (con component type Simple) la combo sarà a selezione multipla. Alla combo è possibile associare un event handler relativo all'evento VALUE_CHANGED, che viene scatenato nel momento un cui viene modificata la selezione.

Annotations

- logicpkg
- uiwidgetdoc

Super and Sub Types

- guigen :: Widget
  - guigen :: DataWidget
    - guigen :: Widget
      - guigen :: MultiDataWidget
        - guigen :: ComboBox

Direct Attributes ecore :: EInt fieldLength ecore :: EString keySelector ecore :: EBoolean omitHeaderValue ecore :: EString valueSelector ecore :: EInt visibleLines |
Inherited Attributes ecore :: EString dataTypeModifier ecore :: EBoolean required ecore :: EBoolean defaultEnabled ecore :: EBoolean defaultVisible ecore :: EBooleanObject enableEnrichment ecore :: EString label ecore :: EString name ecore :: EString tooltip | Inherited References guigen :: Type dataType guigen :: AppDataBinding databinding guigen :: AppDataBinding multiDataBinding guigen :: EventHandler eventHandlers guigen :: WidgetLayoutSpecifier layoutSpec guigen :: UISecurityConstraint securityConstraints

## Attribute ecore :: EInt fieldLength

Dimensione in caratteri dell area visibile del campo.

Property | Description
--- | ---
type | ecore :: EInt
changeable | true
defaultValueLiteral | 15
derived | false
iD | false
lowerBound | 0
name | fieldLength
ordered | true
transient | false
unique | true
unsettable | false
upperBound | 1
volatile | false

## Attribute ecore :: EString keySelector

nome del campo che deve essere considerato come "key". Il campo deve corrispondere ad un field del complex type di cui è costituito l'array collegato alla combo (tramite multi-data-binding).

Property | Description
--- | ---
type | ecore :: EString
changeable | true
defaultValueLiteral | null
derived | false
iD | false
lowerBound | 0
name | keySelector
ordered | true
transient | false
unique | true
unsettable | false
upperBound | 1
volatile | false

## Attribute ecore :: EBoolean omitHeaderValue

Se impostato a true non viene inserita la entry relativa allo stato di selezione nulla.

Property | Description
--- | ---
type | ecore :: EBoolean
changeable | true
defaultValueLiteral | false
derived | false
iD | false
lowerBound | 0
name | omitHeaderValue
ordered | true
transient | false
unique | true
unsettable | false
upperBound | 1
volatile | false

## Attribute ecore :: EString valueSelector

nome del campo che deve essere utilizzato come descrizione visualizzata. Il campo deve corrispondere ad un field del complex type di cui è costituito l'array collegato alla combo (tramite multi-data-binding).

Property | Description
--- | ---
type | ecore :: EString
changeable | true
defaultValueLiteral | null
derived | false
iD | false
lowerBound | 0
name | valueSelector
ordered | true
transient | false
unique | true
unsettable | false
upperBound | 1
volatile | false

## Attribute ecore :: EInt visibleLines

numero di linee visibili senza bisogno di utilizzare la scrollbar in caso di ComboBox a selezione multipla. Se impostato a zero il numero di linee visualizzabili non è predicibile. Nel caso di selezione singola invece l'attributo non ha effetto.

Property | Description
--- | ---
type | ecore :: EInt
changeable | true
defaultValueLiteral | null
derived | false
iD | false
lowerBound | 0
name | visibleLines
ordered | true
transient | false
unique | true
unsettable | false
upperBound | 1
volatile | false

## Annotation logicpkg

Key | Value
--- | ---
pkg | ui.widgets

## Annotation uiwidgetdoc

Key | Value
--- | ---
description | E' il widget di selezione di uno (o più) dati a partire da una lista di dati precaricata. Il widget completo prevede una label ed il campo di immissione associato. La label può essere, in casi particolari, vuota. Il ComboBox può essere utilizzato all'interno di: WidgetsPanel, con layout Verticale, Orizzontale, Griglia Prevede due modalità di funzionamento, una standard ed una ricca. #### modalità standard Il funzionamento di base del TextField prevede: la possibilità di specificare per ogni elemento della lista, un valore visualizzato e la corrispondente chiave, utilizzata come valore effettivamente seleizonato e utilizzabile dalla logica applicativa la scelta tra selezione singola o multipla la possibilità di effettuare, al momento del submit della form, la validazione dell'input immesso a seconda del tipo di dato associato al campo e di alcuni ulteriori specifiche la possibilità di essere disabilitato a comando la possibilità di essere reso invisibile a comando la possibilità di essere disabilitato/invisibile a fronte di regole associate al profilo dell'utente collegato la visualizzazione di un marcatore di errore in prossimità della label, in caso di fallita validazione #### modalità ricca La modalità ricca prevede di default i seguenti comportamenti aggiuntivi: funzione di autocomplete (restrizione dell'elenco di opzioni a fronte dell'immissione progressiva dei caratteri iniziali della selezione stessa) tooltip al passaggio del cursore sulla label del widget
event-value-changed | E'possibile, a fronte della selezione da parte dell'utente di una delle opzioni presenti nella lista, scatenare una logica applicativa e modificare di conseguenza la schermata visualizzata. Esistono due modalità di esecuzione della logica associata: standard e ricca. ##### modalità standard Alla selezione di una opzione dalla lista viene eseguita la logica applicativa associata e, al termine dell'esecuzione viene ricaricata l'intera schermata oppure il flusso passa ad una schermata differente. ##### modalità ricca Alla selezione di una opzione dalla lista viene eseguita la logica applicativa associata. Durante l'esecuzione viene sospesa l'interazione utente e viene visualizzato un indicatore di "operazione in corso". Al termine dell'esecuzione i possibili effetti sono: il refresh dell'intera schermata corrente, con mantenimento della posizione delle eventuali scrollbar il refresh di una porzione specifica di schermata il passaggio del flusso ad una schermata differente

generated on 5-set-2016 at 16.27.37 by metamodeldoc