ear_70-[v4-compatible]

Page 59

v a l e n t e della funzione. C r e a t e MenusA per il passaggio di parametri mediante un array Tagltem. mentre la prima permette di specificare i tag direttamente nella chiamata:

dove "menu" è il puntatore alla struttura Menu costruita dalla funzione. "nuovomenu" è il puntatore al vettore di strutture NewMenu che contengono la definizione del menu; "listatag" k il puntatore ad un vettore di

strutture TagItem contenente i tag e relativi parametri: "tagl" è il codice identificativo del parametro. "valorel" è il valore del parametro tagl e così via. I parametri utilizzabili nella funzione sono i seguenti:

ne se le strutture NewMenu non forniscono una descrizione completa del menu (vale a dire che alcune strutture vengono saltate perché non presenti in una posizione logica corretta): il default è FALSE

GTMN-FrontPen V a l o r e U L O N G c h e specifica il numero della penna da usare per il testo del menu: il default è 0.

GTMN-SecondaryError Utilizzabile dalla V37. è un puntatore ad una variabile ULONG: se la funzione fallisce. questa variabile conterrà il codice dell'errore verificato che può valere una di queste costanti:

GTMN-FullMenu Utilizzabile solo dalla V37 del sistema. 2 una BOOL che indica (se impostata a T R U E ) di far fallire la funzio-

Struttura IntuiText Descrizione della struttura IntuiText e dei suoi campi: struct IntuiText {

. . . . . .

UBYTE FrontPen, BackPen; UBYTE DrawMode; WORD LeftEdga, TopEdge: struct TextAttr *ITextFont; UBYTE *IText; struct IntuiText *NextText;

1;

FrontPen, BatkPen indicano rispettivamente i colori di primo piano e di sfondo per la scritta DrawMode specifica la modalità di disegno e può valere: - JAM1. il testo verrà disegnato con colore FrontPen; lo sfondo è lasciato inalterato - JAMZ, il testo verrà disegnato con i1 colore FrontPen; lo sfondo verrà colorato cori BackPen - COMPLEMENT, il testo verrà disegnato con il colore complementato rispetto a quello dei pixeI presenti sotto di lui - INVERSVID, inverte le modalità prima spiegate; ad esempio con JAM1 verrà disegnato solo lo sfondo del testo con colore BackPen

LeftEdge, TopEdge posizione della scritta relativa alle coordinate prefissate ITextPont puntatore ad una struttura TextAttr contenente le informazioni per il font utilizzato dal testo; s e questo campo vale NULL verrà utilizzato il font di default IText puntatore aiia stringa di caratteri che costituisce il testo d a visuaiiuzare NextText puntatore alla prossima struttura IntuiText; durante l'operazione di disegno verranno visualizzati contemporaneamente tutti i testi della lista.

- G T M E N U - I N V A L I D , invalida struttura NewMenu (vi s o n o delle scorrettezze logiche nella descrizione del menu) - GTMENU-NOMEM. non è stato possibile allocare la memoria necessaria per la costruzione del menu - GTMENU-TRIMMED. il numero di menu, opzioni o opzioni del sottomenu eccede il massimo valore consentito (vedere articolo sui menu) I1 valore ritornato è il puntatore alla struttura Menu principale creata dalla f u n z i o n e : t u t t e le a l t r e s t r u t t u r e (MenuItem. IntuiText e Image) sono collegate insieme a quella del menu, per cui è possibile risalire a queste strutture nel caso di necessità. Le strutture ritornate dalla funzione C r e a t e M e n u s n o n c o n t e n g o n o le informazioni sulle coordinate. posizione e grandezza degli elementi del menu; queste informazioni vengono calcolate c o n u n ' a l t r a f u n z i o n e : LayoutMenus: anche in questo caso è presente la corrispettiva per il passagg i o d e i t a g in v e t t o r e , L a y o u t MenusA: ris = LayoutMenusA(menu, visualinfo, listatag); ris = LayoutMenus(menu, visualinfo, tagl, valorel, tag2

.....

);

dove "ris" è una variabile B O O L che indica se l'operazione ha avuto successo ( T R U E ) o è fallita (FALSE): "menu" 2 il puntatore alla struttura Menu ritornata da CreateMenusO; "visualinfo" i? il puntatore alla strutt u r a VisualInfo p r e c e d e n t e m e n t e d e t e r m i n a t a con la funzione G e t VisualInfo(): i parametri che possono essere passati mediante i tag sono i seguenti: GTMN-TextAttr P u n t a t o r e a d una valida s t r u t t u r a TextAttr indicante il font da utilizza-


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.