Introduzione alle azioni e ai tipi di datiLeazioniintroduzionetipi di datiintroduzione azioni e i tipi di
dati sono componenti importanti per l'integrazione delle applicazioni
nel desktop. Essi permettono di creare un'interfaccia utente per l'avvio delle
applicazioni e per la gestione dei file di dati.Questo capitolo contiene un'introduzione ai concetti di azione e di
tipo di dati. In particolare, esso descrive:Le ragioni per cui è utile creare azioni e tipi di
dati per le applicazioni.Le relazioni reciproche tra azioni e tipi di dati.Le relazioni tra azioni e tipi di dati e le operazioni di
stampa del desktop.Vedere ancheLe procedure e le regole per la creazione delle azioni e dei tipi di
dati sono trattate in tre capitoli di questo manuale.Il
spiega come creare azioni e tipi di dati usando l'applicazione del desktop
Creare azione.Questa applicazione può essere usata per creare azioni e tipi
di dati per la maggior parte delle applicazioni senza bisogno di conoscere
la sintassi per la loro definizione.Il e il
spiegano come creare azioni e tipi di dati manualmente creando ed editando
i file di configurazione.La procedura di creazione deve essere eseguita manualmente quando si
desidera usare le funzioni avanzate non supportate da Creare azione.Introduzione alle azioniazioniintroduzioneLe azioni sono istruzioni scritte per automatizzare alcune operazioni
del desktop, come l'avvio delle applicazioni e l'apertura dei file di dati.
Il loro funzionamento è molto simile a quello delle macro o delle funzioni
di programmazione. Ogni azione è associata a un nome che viene usato
per eseguirla.In generale, si definisce un'azione per semplificare l'esecuzione di
un'operazione dall'interfaccia utente del desktop. Il desktop permette di
associare alle azioni vari componenti dell'interfaccia utente, come icone,
controlli del Pannello principale e opzioni dei menu.Possibili usi delle azioniAd esempio, il gruppo Strumenti_desktop della Gestione di applicazioni
contiene varie icone per l'avvio di utility del desktop.Icone di azioni nel gruppo di applicazioni Strumenti_desktopFacendo doppio clic su una di queste icone viene eseguita l'azione
corrispondente. L'esempio seguente riporta una parte della definizione dell'azione
che viene eseguita facendo doppio clic sull'icona Xwd Display. Questa azione
è definita nel file di configurazione /usr/dt/appconfig/types/lingua/xclients.dt:
ACTION Xwud
{
LABEL Visualizzazione Xwd
TYPE COMMAND
EXEC_STRING /usr/bin/X11/xwud -noclick -in \
%(File)Arg_1“File xwd da visualizzare:“%
…
}Facendo doppio clic sull'icona verrà eseguito il comando specificato
nella riga EXEC_STRING.azioniuso nel Pannello principalePannello principaleuso delle azioniAnche il Pannello principale
utilizza le azioni. L'esempio seguente riporta una parte della definizione
del controllo Terminale del pannello secondario Applicazioni personali. Il
controllo è definito nel file di configurazione /usr/dt/appconfig/types/lingua/dtwm.fp:
CONTROL Term
{
ICON Fpterm
LABEL Terminale
PUSH_ACTION Dtterm
…
}Facendo clic sul controllo Terminale verrà eseguita l'azione
specificata nel campo PUSH_ACTION — in questo caso,
l'azione di nome Dtterm.azioniuso nei menumenuuso delle azioniIn molti casi, le azioni vengono usate anche nei menu.
I file di dati sono normalmente associati ad azioni che compaiono nel relativo
menu Selezioni nella Gestione di file. Ad esempio, i file XWD (cioè
i file che terminano con il suffisso .xwd o .wd) sono associati a un'azione Aprire che visualizza la loro
immagine sullo schermo eseguendo l'azione Xwud.L'azione Aprire per il file di tipo XWDLe azioni che compaiono nel menuSelezioni, menu Selezioni sono specificate nella definizione del tipo
di dati per i file XWD. Questa definizione si trova nel file di configurazione /usr/dt/appconfig/types/lingua/xclients.dt.DATA_ATTRIBUTES XWD
{
ACTIONS Open,Print
ICON Dtxwd
…
}Il tipo di dati XWD, e le relative azioni Aprire e Stampare, sono descritti
in .azionicreazione di icone per
le applicazioniapplicazionicreazione di iconeiconedi applicazioniCome le azioni
creano le icone per le applicazioniSi consideri l'icona “Visualizzazione Xwd” nel gruppo Strumenti_desktop
della Gestione di applicazioni. Facendo doppio clic su questa icona viene
eseguito il client X xwud. Tuttavia, questa icona non rappresenta
direttamente l'eseguibile /usr/bin/X11/xwud.L'icona “Visualizzazione Xwd” compare nel gruppo di applicazioni
perché la directory contiene un file di nome Xwud
(vedere la ). Questo file rappresenta un'azione sottostante
con lo stesso nome — Xwud. Nella definizione dell'azione, il nome dell'azione
è quello che segue la parola chiave ACTION:ACTION Xwud
{
LABEL Visualizzazione Xwd
TYPE COMMAND
WINDOW_TYPE NO_STDIO
EXEC_STRING /usr/bin/X11/xwud -noclick -in \
%(File)Arg_1"File Xwd da visualizzare:"%
DESCRIPTION L'azione Visualizzazione Xwd (Xwud) visualizza \
un file xwd creato con l'azione Catturare Xwd \
(Xwd). Utilizza il comando 'xwud'.
}file delle azionidefinizioneazionifile,
Vedere file delle azioni<$nopage>Il file viene detto file dell'azione perché
rappresenta l'azione. Si definiscono in questo modo i file eseguibili con
lo stesso nome dell'azione che rappresentano. La sua icona nella Gestione
di applicazioni (o nella Gestione di file) viene dettaiconedi azioniazioniiconeicona dell'azione, oapplicazioniicone,
creazioneiconecreazione per le applicazioniicona dell'applicazione, perché permette di avviare l'applicazione che rappresenta
con un doppio clic.Icona dell'applicazione (o dell'azione) che rappresenta
il file dell'azioneQuando la Gestione di applicazioni individua un file eseguibile, essa
verifica se il database delle azioni contiene un'azione con un nome corrispondente.
In caso affermativo, il file viene identificato come file dell'azione.file delle azionicontenutoIl contenuto del file dell'azione è irrilevante;
in genere, i file delle azioni contengono un testo di commento che descrive
la loro funzione nel desktop.Il file dell'azione non deve essere confuso con
il file di definizione dell'azione. Il primo è
un file con lo stesso nome dell'azione, usato per creare l'icona
dell'applicazione nella Gestione di file o nella Gestione di applicazioni.
Il secondo è un file di nome nome.dt contenente la definizione dell'azione.Quando il desktop identifica un file di un'azione, esso ne determina
l'aspetto e il comportamento utilizzando la definizione di quell'azione.Il campo EXEC_STRING specifica il comportamento
dell'icona dell'applicazione. Nel caso dell'icona “Visualizzazione Xwd”,
il campo EXEC_STRING specifica l'esecuzione del client
X xwud con determinati argomenti.Il campo LABEL specifica l'etichetta usata
per l'icona dell'applicazione.Il campo DESCRIPTION contiene il testo
che verrà visualizzato richiedendo l'aiuto sull'elemento.L'icona dell'applicazione Xwud utilizza l'immagine predefinita
per le azioni perché la sua definizione non contiene un campo ICON che specifichi un'immagine diversa.Al contrario, l'icona “Comprimere File” utilizza un'immagine
diversa perché la definizione dell'azione sottostante contiene un campo ICON:Ad esempio:ACTION Compress
{
LABEL Comprimere File
ICON Dtcmprs
…
}Icona specificata dal campo ICON nella definizione dell'azioneL'azione Xwud viene detta un'azione di comando,
perché la sua definizione contiene il comando da eseguire ( EXEC_STRING). Il campo TYPE nella definizione
dell'azione specifica a quale tipo appartiene l'azione.Inizialmente, l'icona “Visualizzazione Xwd” appare solo
nel gruppo di applicazioni Strumenti_desktop. Tuttavia, è possibile
creare altre copie dell'icona ed inserirle in qualsiasi directory alla quale
si abbia accesso in scrittura. Finché la definizione dell'azione Xwud
farà parte del database, qualsiasi file eseguibile creato con il nome Xwud rappresenterà quell'azione, e la sua icona nella Gestione
di file o nella Gestione di applicazioni potrà essere usata per eseguirla.
Come le azioni utilizzano i file di dati comeazioniuso dei file come argomentiargomentidelle azioni argomentiUn argomento di un comando è un oggetto,
solitamente unargomentiper l'indicazione di file nelle azioni file, su cui il comando viene eseguito. Un'azione può essere
scritta in modo da accettare un file come argomento.Ad esempio, il campo EXEC_STRING dell'azione Xwud
specifica che è richiesto un file come argomento:EXEC_STRING /usr/bin/X11/xwud -noclick -in \
%(File)Arg_1"File Xwd da visualizzare:"%Il termine Arg indica l' argomento. La sintassiArg_1, sintassiArg_1 significa che si tratta del primo argomento,
mentre (File) indica che l'azione tratterà quell'argomento
come un file.iconerilascio dei fileazioniaccettazione del
rilascio di un fileiconedoppio clicIl modo più semplice
per specificare un file come argomento consiste nel rilasciare un file di
dati sull'icona dell'applicazione. Il desktop determina il percorso del file
rilasciato e lo inserisce nella riga di comando al posto del testo tra i due
simboli % (%(File)Arg_1“File Xwd
da visualizzare:"%). In questo modo, il comando che viene
eseguito è:/usr/bin/X11/xwud -noclick -in percorso_fileFacendo doppio clic sull'icona dell'applicazione, il desktop determina
dal campo EXEC_STRING che è richiesto un file
come argomento, e visualizza un riquadro di dialogo che chiede all'utente
di inserire un percorso o un nome per il file. Nel caso dell'azione Xwud,
la richiesta sarà:File Xwd da visualizzare:Il percorso o il nome del file inserito dall'utente verrà usato
come argomento del comando.Altri impieghi delle azioniazioniusiOltre all'impiego descritto per l'avvio delle applicazioni, le azioni
vengono utilizzate per creare funzionalità per altre aree del desktop:
Pannello principale.La definizione di un controllo del Pannello principale comprende campi
che specificano le azioni da eseguire quando l'utente fa clic sul controllo
o vi rilascia un file. Per maggiori informazioni, vedere .Menu.La sintassi per la definizione dei menu di controllo delle finestre
o degli spazi di lavoro permette di specificare l'azione da eseguire quando
l'utente seleziona un'opzione. Per maggiori informazioni, vedere e la pagina di spiegazioni
dtwmrc(4).Comunicazioni tra le applicazioni.Un'applicazione può essere realizzata in modo da inviare e ricevere
informazioni usando un tipo speciale di azione, detta messaggio di ToolTalk
(TT_MSG). Le azioni TT_MSG sono
descritte nella documentazione dell'ambiente di sviluppo per il desktop.Introduzione ai tipi di datitipi di datiintroduzioneQuando si crea un nuovo file di dati, l'aspetto e il comportamento della
sua icona nella Gestione di file varia a seconda del tipo di dati associati
a quel file. Il desktop comprende un meccanismo di gestione dei tipi di dati
che offre la possibilità di personalizzare l'aspetto e il comportamento
di file e directory.Creare azionecreazione dei
tipi di datitipi di daticreazione con Creare azioneCos'è
un tipo di dati?Un tipo di dati è un costrutto definito all'interno del database
del desktop. L'esempio seguente riporta la definizione del tipo di dati XWD.
La definizione è contenuta nel file di configurazione /usr/dt/appconfig/types/lingua/xclients.dt:
DATA_ATTRIBUTES XWD
{
ACTIONS Open,Print
ICON Dtxwd
NAME_TEMPLATE %s.xwd
MIME_TYPE application/octet-stream
SUNV3_TYPE xwd-file
DESCRIPTION Questo file contiene un'immagine grafica in \
formato XWD. In genere questi file vengono \
creati catturando un'immagine dallo schermo \
con l'azione Catturare Xwd. Il suo tipo di dati \
è denominato XWD. I file XWD terminano con \
l'estensione '.xwd' o '.wd'.
}
DATA_CRITERIA XWD1
{
DATA_ATTRIBUTES_NAME XWD
MODE f
NAME_PATTERN *.xwd
}
DATA_CRITERIA XWD2
{
DATA_ATTRIBUTES_NAME XWD
MODE f
NAME_PATTERN *.wd
}Ogni definizione di un tipo di dati comprende due parti:DATA_ATTRIBUTESGli attributi dei dati descrivono l'aspetto
e il comportamento del tipo di dati.DATA_CRITERIAI criteri specificano le regole (basate
sul nome o sul contenuto) per l'assegnazione del file a un determinato tipo
di dati.Il campo DATA_ATTRIBUTES_NAME collega i criteri
agli attributi.Per ogni attributo (DATA_ATTRIBUTE) possono essere
definiti più criteri (DATA_CRITERIA). Ad esempio,
il tipo di dati XWD possiede due criteri diversi per i nomi dei file ( NAME_PATTERN) che specificano la possibilità di
usare i suffissi .xwd o .wd.tipi di datirelazioni con le azioniazionirelazioni con i tipi di datiCome
i tipi di dati collegano i file di dati alle azioniSi consideri il tipo di dati XWD. Per creare un file di tipo XWD, l'utente
assegna al file un nome che termini con uno dei due suffissi (o estensioni)
accettati: .xwd o.wd. Il desktop
utilizza questo nome come criterio per designare il tipo
di file.Il tipo di dati XWD assegna ad ogni file le seguenti caratteristiche:
Un'icona caratteristica che permette di riconoscere facilmente
il tipo di file.Un testo di aiuto che fornisce informazioni sul tipo di dati.
Un menu Selezioni personalizzato nella Gestione di file contenente
le azioni Aprire e Stampare. L'azione Aprire associata ai file XWD esegue
l'azione Xwud.Esecuzione delle azioni dal menu SelezioniSelezioni,
menuIl menu Selezioni della Gestione di file è attivo solo quando
è stato selezionato un file o una directory. I comandi che compaiono
nella parte inferiore del menu variano a seconda del tipo di dati. Nel caso
dei file XWD, il menu Selezioni presenterà le opzioni Aprire e Stampare.
Il campo ACTIONS nella definizione del tipo di dati
specifica i comandi che verranno aggiunti al menu Selezioni per quel tipo
di dati.DATA_ATTRIBUTES XWD
{
ACTIONS Open,Print
…
}Selezioni, menuIl contenuto
del menu Selezioni della Gestione di file dipende dal tipo di dati dell'oggetto
selezionato. Tuttavia, l'azione Aprire è comune a molti tipi di dati
diversi.Il menu Selezioni associato a un file XWDIn genere, l'azione AprireAprire, azione avvia l'applicazione a cui è associato il file di dati.
Ad esempio, aprendo un file XWD si esegue l'azione Xwud, che a sua volta
eseguirà il client X xwud per visualizzare l'immagine del file sullo
schermo. In altre parole, per il tipo di dati XWD l'azione Aprire coincide
con l'azione Xwud. Allo stesso modo, aprendo un file di dati di tipo TEXTFILE
verrà avviato l'Editor di testo, mentre aprendo un file BM (a mappa
di bit) o PM (a mappa di pixel) verrà avviato l'Editor delle icone.
La possibilità di creare una serie di azioni Aprire che eseguono
operazioni diverse si basa su due caratteristiche delle definizioni delle
azioni:azionimappaturamappatura delle azioniLa
mappatura delle azioni.La mappatura delle azioni permette di creare un'azione che esegua un'altra
azione anziché eseguire direttamente un comando. Ad esempio, è
possibile creare un'azione Aprire che sia mappata per (cioè che esegua)
l'azione Xwud.azionirestrizione
dei tipi di datiLa restrizione dei tipi di dati associati
alle azioni.Le definizioni delle azioni possono includere un campo ARG_TYPE che limiti l'esecuzione dell'azione a certi tipi di dati. Ad esempio,
si può specificare che l'azione Aprire mappata per l'azione Xwud venga
applicata solo ai file di dati di tipo XWD.Qui di seguito è riportata la definizione che mappa l'azione
Aprire dell'azione Xwud per il tipo di dati XWD. La definizione si trova nel
file di configurazione /usr/dt/appconfig/types/lingua/xclients.dt
del database:ACTION Open
{
LABEL Aprire
ARG_TYPE XWD
TYPE MAP
MAP_ACTION Xwud
}Il campo TYPE specifica che si tratta di un'azione
di mappatura; il campo MAP_ACTION specifica che questa
azione dovrà eseguire l'azione Xwud. Il campo ARG_TYPE
specifica che questa azione verrà applicata solo ai file associati
al tipo di dati XWD.Si confronti ora la definizione precedente dell'azione Aprire con la
definizione riportata qui di seguito, contenuta nel file del database /usr/dt/appconfig/types/lingua/dt.dt:ACTION Open
{
LABEL Aprire
ARG_TYPE BM
TYPE MAP
MAP_ACTION Dticon
}Questa definizione si applica ai file associati al tipo di dati ( ARG_TYPE) BM (file a mappa di bit). La definizione mappa l'azione
Aprire sull'azione Dticon, cioè sull'azione che avvia l'Editor delle
icone.tipi di datirisposta al doppio
clicDefinizione dell'effetto del doppio clic in base
al tipo di datiL'effetto del doppio clic associato al tipo di dati è definito
dalla prima voce del campo ACTIONS. Nel caso del tipo di
dati XWD, il doppio clic esegue l'azione Aprire, che a sua volta eseguirà
l'azione Xwud.tipi di datirisposta al rilascio
su un'iconaRilascio
di un file di dati sull'icona di un'azioneQuando si rilascia un file di dati sull'icona di un'azione, il sistema
esegue quell'azione usando il file di dati come argomento (vedere ).Ad esempio, rilasciando un file di dati XWD sull'icona “Visualizzazione
Xwd” verrà eseguita l'azione Xwud utilizzando come argomento
il file rilasciato. Il client X xwud verrà quindi
eseguito con quel file di dati.tipi di datistampastampaconfigurazione
per un tipo di datiCreazione di azioni di stampa associate
ai tipi di datiPer stampare un file di dati dal desktop si possono usare i seguenti
metodi:Usare il comando Stampare del menu Selezioni della Gestione
di file.Rilasciare un file di dati su un'area appropriata del desktop
(il controllo della stampante del Pannello principale o l'icona di una stampante
nella Gestione della stampa).Oltre a questi metodi generali, in molti casi è possibile stampare
i file dall'interno delle applicazioni.I metodi di stampa del desktop utilizzano azioni di nome Stampare. Come
nel caso di Aprire, il nome Stampare viene usato per molti tipi di dati diversi.
Ciò significa che anche le azioni Stampare utilizzano la mappatura
delle azioni e il campo ARG_TYPE per personalizzare la
stampa per ogni tipo di dati.L'esempio seguente riporta l'azione Stampare associata al tipo di dati
XWD. La definizione si trova in /usr/dt/appconfig/types/lingua/xclients.dt:ACTION Print
{
LABEL Stampare
ARG_TYPE XWD
TYPE MAP
MAP_ACTION NoPrint
}Questa azione Stampare, specifica per i file XWD, è mappata su
un'azione NoPrint. NoPrint è un'azione speciale definita in /usr/dt/appconfig/types/lingua/dt.dt, cheNoPrint, azione visualizza
un messaggio di avvertimento indicante che il tipo di dati dell'oggetto non
può essere stampato.Si confronti ora l'azione Stampare associata ai file XWD con la seguente
azione Stampare per i file PCL:ACTION Print
{
LABEL Stampare
ARG_TYPE PCL
TYPE MAP
MAP_ACTION PrintRaw
}L'azione PrintRaw, definita nel file di configurazione /usr/dt/appconfig/types/lingua/print.dt,
contiene la riga comandi per la stampa dei file PCL.ACTION PrintRaw
{
TYPE COMMAND
WINDOW_TYPE NO_STDIO
EXEC_STRING /usr/dt/bin/dtlp -w %(File)Arg_1%
}