it.csi.mddtools.guigen

## Interface EventHandler

- All Superinterfaces:
    org.eclipse.emf.ecore.EObject, org.eclipse.emf.common.notify.Notifier

      public interface EventHandler
      extends org.eclipse.emf.ecore.EObject

  A representation of the model object 'Event Handler'. Gestore di un evento di User Interaction.

  The following features are supported:

  - `Command`
  - `Event Type`
  - `Skip Validation`
  - `Method Protection`
  - `Event Specifiers`
  See Also:
    `GuigenPackage.getEventHandler()`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `Command` | `getCommand()` Returns the value of the 'Command' containment reference
    `org.eclipse.emf.common.util.EList<java.lang.String>` | `getEventSpecifiers()` Returns the value of the 'Event Specifiers' attribute list.
    `EventTypes` | `getEventType()` Returns the value of the 'Event Type' attribute.
    `MethodProtectionTypes` | `getMethodProtection()` Returns the value of the 'Method Protection' attribute.
    `boolean` | `isSkipValidation()` Returns the value of the 'Skip Validation' attribute
    `void` | `setCommand(Command value)` Sets the value of the '`Command`' containment reference
    `void` | `setEventType(EventTypes value)` Sets the value of the '`Event Type`' attribute
    `void` | `setMethodProtection(MethodProtectionTypes value)` Sets the value of the '`Method Protection`' attribute
    `void` | `setSkipValidation(boolean value)` Sets the value of the '`Skip Validation`' attribute

    - ### Methods inherited from interface org.eclipse.emf.ecore.EObject

      `eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset`

    - ### Methods inherited from interface org.eclipse.emf.common.notify.Notifier

      `eAdapters, eDeliver, eNotify, eSetDeliver`

- - ### Method Detail

    - #### getCommand

          Command getCommand()

      Returns the value of the 'Command' containment reference.

      If the meaning of the 'Command' containment reference isn't clear, there really should be more of a description here...

      A fronte dell'evento specificato in eventType sarà eseguito il comando specificato in questo elemento.
      Returns:
        the value of the 'Command' containment reference.
      See Also:
        `setCommand(Command)`, `GuigenPackage.getEventHandler_Command()`

    - #### setCommand

          void setCommand(Command value)

      Sets the value of the '`Command`' containment reference.
      Parameters:
        `value` - the new value of the 'Command' containment reference.
      See Also:
        `getCommand()`

    - #### getEventType

          EventTypes getEventType()

      Returns the value of the 'Event Type' attribute. The literals are from the enumeration `EventTypes`.

      If the meaning of the 'Event Type' attribute isn't clear, there really should be more of a description here...

      Specifica il tipo di evento per cui è definito questo event handler.
      Returns:
        the value of the 'Event Type' attribute.
      See Also:
        `EventTypes`, `setEventType(EventTypes)`, `GuigenPackage.getEventHandler_EventType()`

    - #### setEventType

          void setEventType(EventTypes value)

      Sets the value of the '`Event Type`' attribute.
      Parameters:
        `value` - the new value of the 'Event Type' attribute.
      See Also:
        `EventTypes`, `getEventType()`

    - #### isSkipValidation

          boolean isSkipValidation()

      Returns the value of the 'Skip Validation' attribute.

      If the meaning of the 'Skip Validation' attribute isn't clear, there really should be more of a description here...

      Se impostato a true non saranno eseguite le logiche automatiche di conversione/validazione a fronte dell'occorrenza dell'evento specificato. Serve per gestire casi in cui la non conformità dei dati immessi non è importante, anzi deve essere ignorata (es. il tasto "indietro" o "annulla").
      Returns:
        the value of the 'Skip Validation' attribute.
      See Also:
        `setSkipValidation(boolean)`, `GuigenPackage.getEventHandler_SkipValidation()`

    - #### setSkipValidation

          void setSkipValidation(boolean value)

      Sets the value of the '`Skip Validation`' attribute.
      Parameters:
        `value` - the new value of the 'Skip Validation' attribute.
      See Also:
        `isSkipValidation()`

    - #### getMethodProtection

          MethodProtectionTypes getMethodProtection()

      Returns the value of the 'Method Protection' attribute. The default value is `"REJECT_SAME"`. The literals are from the enumeration `MethodProtectionTypes`. Permette di proteggere l'esecuzione del metodo associato all'EventHandler da effetti indesiderati derivanti dal'eventuale esecuzione contemporanea di altri metodi. Le possibili protezioni sono:
      1. allowAll: permette l'esecuzione contemporanea di qualsiasi metodo (nessuna protezione)
      2. rejectSame (default): evita l'esecuzione contemporanea di altre istanze dello stesso metodo (protezione tipica del doppio click su uno stesso pulsante)
      3. rejectAll: evita l'esecuzione contemporanea di altre istanze di qualsiasi metodo (protezione cautelativa globale)
      Returns:
        the value of the 'Method Protection' attribute.
      See Also:
        `MethodProtectionTypes`, `setMethodProtection(MethodProtectionTypes)`, `GuigenPackage.getEventHandler_MethodProtection()`

    - #### setMethodProtection

          void setMethodProtection(MethodProtectionTypes value)

      Sets the value of the '`Method Protection`' attribute.
      Parameters:
        `value` - the new value of the 'Method Protection' attribute.
      See Also:
        `MethodProtectionTypes`, `getMethodProtection()`

    - #### getEventSpecifiers

          org.eclipse.emf.common.util.EList<java.lang.String> getEventSpecifiers()

      Returns the value of the 'Event Specifiers' attribute list. The list contents are of type `String`.

      If the meaning of the 'Event Specifiers' attribute list isn't clear, there really should be more of a description here...

      Permette di specificare ulteriormente la gestione dell'evento. E' possibile inserire 0, 1 o molti specificatori:
      - lo specificatore viene scritto in formato testo e la sintassi di ciascun specificatore è tipicamente del tipo: <cod_specificatore>=<val_specificatore> (esempio: min_chars=3)
      - le possibili valorizzazioni dipendono fortemente dal tipo di evento gestito. Attualmente le possibiità sono:
        - evento KEYPRESSED:
          - min_chars=<numero>: permette di specificare il numero di caratteri minimo affinchè scatti la query di suggestion (il default è 4)
      Returns:
        the value of the 'Event Specifiers' attribute list.
      See Also:
        `GuigenPackage.getEventHandler_EventSpecifiers()`