Personal tools
You are here: Home Development Documents gvSIG desktop 1.0 / 1.1 gvSIG Andami Plugins y extensiones Extensiones Il meccanismo ExclusiveUIExtension
Document Actions

Il meccanismo ExclusiveUIExtension

by Mario Carrera last modified 2010-06-01 22:45

Il meccanismo fornito da ExclusiveUIExtension permette di realizzare qualcosa di simile a quello ottenibile dal meccanismo di ExtensionDecorator. Differentemente da quest'ultimo però, vi è una particolare estensione che decide lo stato di tutte le altre. In altre parole, con qualsiasi estensione ExtensionDecorator è possibile modificare lo stato delle altre, mentre con ExclusiveUIExtension, vi è un'unica estensione che governa la visibilità (visibile/nascosto) e lo stato (abilitato/disabilitato) di tutte le altre estensioni.

In ogni caso, tali meccanismi possono essere usati contemporaneamente e ExclusiveUIExtension obbedirà al meccanismo dell' ExtensionDecorator. Quindi, se si definisse tramite ExtensionDecorator una visibilità ALWAYS_VISIBLE (sempre visibile), l'estensione sarebbe effettivamente sempre visibile (indipendentemente dallo stato di visibilità assegnatali dall'ExclusiveUIExtension). In caso di presenza contemporanea di questi due meccanismi di gestione delle estensioni, l'ExclusiveUIExtension agirebbe solo ed esclusivamente nel caso in cui l' ExtensionDecorator fosse inattivo (modalità ExtensionDecorator.INACTIVE). In ogni caso, ExtensionDecorator agisce solo sulla visibilità dell'estensione, mentre il meccanismo ExclusiveUIExtension fornisce anche la possibilità di definire lo stato (abilitata/disabilitata) dell'estensione.

Per utilizzare ExclusiveUIExtension si necessita di:

  • un'estensione che implementi correttamente i metodi isEnabled e isVisible (interfaccia IExtension). Tale estensione fungerà da ExclusiveUIExtension e decidererà la visibilità (visibile/invisibile) e lo stato (abilitato/disabilitato) delle altre estensioni.
  • registrarsi come ExclusiveUIExtension in Andami, all'interno del metodo initialize() della nostra estensione, utilizzando il metodo PluginServices.setExclusiveUIExtension().
  • equivalentemente all'utilizzo del metodo setExclusiveUIExtension è il passaggio di un parametro al launcher di gvSIG . Il parametro è il seguente: ExclusiveUIExtension=NomeEstensione, dove NomeEstensione dovrebbe essere sostituito dal nome dell'estensione precedentemente mezionata .
    • In Linux, questo potrebbe essere realizzato modificando il launcher gvSIG.sh aggiungendo il suddetto parametro prima del simbolo "$@", o passando il parametro da riga di comando.
    • In Windows è possibile modificare il file gvSIG.ini, nella riga che inizia con command, aggiungendo il parametro appena prima del simbolo #ARGS#. E 'inoltre possibile passare il parametro da riga di comando al momento dell'invocazione del file gvSIG.exe

View source document Get permanent link


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: