# Class "guigen :: Slider"

Defined in package : guigen

Widget che permette di selezionare uno o due valori in un range numerico continuo.

aspetto grafico

- E' dotato di etichetta come tutti gli altri widget a lato del widget;
- appare come un classico slider, ad orientamento orizzontale
- contestualmente allo slider è visualizzato il valore correntemente selezionato
- in caso di slider a selezione singola appare solo un elemento spostabile che determinerà il valore selezionato
- in caso di slider a selezione multipla appaiono due elementi spostabili,uno per l'estremo inferiore ed uno per l'estremo superiore del range e le due posizioni determineranno la coppia di valori che rappresenteranno gli estremi del range

binding con dati

- lo slider è un DataWidget, pertanto il suo valore sarà sincronizzato con un ApplicationData tramite data-binding:
  - se il tipo dell'application data collegato è un tipo semplice (non array) lo slider sarà da considerarsi a selezione puntuale, e il valore selezionato sarà sincronizzato con il valore di tale application data
  - se il tipo dell'application data collegato è un array di tipi semplici lo slider sarà da considerarsi a selezione di intervallo e il range selezionato darà origine ad un array di due elementi che conterranno l'estremo inferiore e l'estremo superiore dell'intervallo
- può essere definito un collection binding, che viene interpretato diversamente a seconda del valore dell'opzione useCollectionDataAs
  - se useCollectionBindingAs="values": gli elementi dell'application data collegato saranno presi come valori discreti selezionabili (e saranno considerati ordinati secondo l'ordinamento dell'array) N.B: FEATURE NON ANCORA IMPLEMENTATA
  - se useCollectionDataAs="range": gli elementi 0 e 1 dell'array (che devono essere necessariamente numerici ed ordinati in modo crescente) rappresentano gli estremi inferiore e superiore del range selezionabile

opzioni di configurazione

- il tipo del binding determina se lo slider è da considerarsi puntuale o di intervallo
- l'opzione useCollectionDataAs determina come considerare i dati del collection binding:
  - "values": valori discreti selezionabili verrà implementato in futuro
  - "range": estremi dell'intervallo (continuo/numerico) selezionabile

Super and Sub Types

- guigen :: Widget
  - guigen :: DataWidget
    - guigen :: Widget
      - guigen :: MultiDataWidget
        - guigen :: Slider

Direct Attributes ecore :: EFloatObject staticLowerBound ecore :: EFloatObject staticStep ecore :: EFloatObject staticUpperBound guigen :: SliderCollectionValuesUsageTypes useCollectionDataAs |
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 :: EFloatObject staticLowerBound

Nel caso di range staticamente definito a tempo di modellazione il valore di questa property viene utilizzato come estremo inferiore del range di valori selezionabili

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

## Attribute ecore :: EFloatObject staticStep

se configurato definisce di quanto aumenta/diminuisce il valore selezionato a fronte di uno spostamento unitario del selettore

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

## Attribute ecore :: EFloatObject staticUpperBound

Nel caso di range staticamente definito a tempo di modellazione il valore di questa property viene utilizzato come estremo superiore del range di valori selezionabili

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

## Attribute guigen :: SliderCollectionValuesUsageTypes useCollectionDataAs

Permette di decidere come utilizzare il contenuto del collection data binding. Attualmente l'unico valore ammissibile è "range" e indica al generatore di utilizzare i primi due elementi (numerici) dell'array collegato tramite collection data binding come estremi inferiore e superiore del range di valori selezionabili. N.B: serve nei casi in cui sia necessario un range dinamico; nel caso in cui invece sia sufficiente un range statico definito a tempo di modellazione è necessario modellare le due property staticLowerBound e staticUpperBound

Property | Description
--- | ---
type | guigen :: SliderCollectionValuesUsageTypes
changeable | true
defaultValueLiteral | null
derived | false
iD | false
lowerBound | 0
name | useCollectionDataAs
ordered | true
transient | false
unique | true
unsettable | false
upperBound | 1
volatile | false

generated on 5-set-2016 at 16.27.37 by metamodeldoc