Fondamenti di una applicazione Gnome

Questo capitolo descrive gli aspetti più basilari di una applicazione Gnome, come l'inizializzazione delle librerie, rendere le stringhe internazionalizzabili, interpretare gli argomenti della riga di comando, salvare i file di configurazione e rispondere alle richieste del gestore di sessione. Da questo momento il libro assume la capacità di scrivere una semplice applicazione in GTK+.

Inizializzazione delle librerie

All'avvio, la vostra applicazione deve inizializzare le librerie di GTK+ e Gnome attraverso la chiamata a gnome_init(). gnome_init() (Figura 1) prende il posto di gtk_init() nelle applicazioni Gnome (chiama automaticamente gtk_init() per voi).

Il primo argomento per la funzione gnome_init() è il nome breve della vostra applicazione, mentre il secondo è una stringa che rappresenta il numero della versione. Queste vengono utilizzate internamente alla libreria principale di Gnome (in alcuni messaggi automatici per la riga di comando, ad esempio).

	  #include <libgnomeui/gnome-init.h>
	

int gnome_init(const char* app_id, const char* app_version, int argc, char** argv);

Figura 1. Inizializzare Gnome

Come gtk_init(), gnome_init() legge gli argomenti della riga di comando; a differenza di gtk_init(), questa non cambierà argc e argv. Se desiderate utilizzare argomenti specifici per la vostra applicazione, allora dovrete utilizzre gnome_init_with_popt_table(), descritta più avanti, nella prossima sezione.

Il valore restituito da gnome_init() dovrebbe essere zero se l'inizializzazione fallisce, ma l'implementazione corrente restituisce sempre 0. (gnome_init() semplicemente uscirà se ci sono problemi, come ad esempio la mancanza del server X.) Pratica comune è quella di ignorare il valore restituito, almeno in Gnome 1.0, ma è buona idea verificarlo comunque, nel caso che le prossime versioni restituissero l'errore.