# Glade - Manuale di riferimento

2000
Michael Vance

È permesso copiare, distribuire e/o modificare questo documento secondo i termini della GNU Free Documentation License, Versione 1.1 o qualsiasi altra versione successiva pubblicata dalla Free Software Foundation, senza Sezioni non modificabili, senza nessun Testo Copertina e senza nessun Testo di retro copertina. È possibile ottenere una copia della GNU Free Documentation License dalla Free Software Foundation visitando il loro sito web oppure scrivendo a: Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

Molti dei nomi usati dalle compagnie per identificare i loro prodotti e servizi sono dichiarati marchi registrati. Quando tali nomi appaiono in un qualsiasi documento GNOME, e qualora tali nomi siano noti ai membri dello GNOME Documentation Project, essi vengono stampati in maiuscolo o con iniziali maiuscole.

Prima versione del Manuale di riferimento di Glade.

## Introduzione

Glade è un'applicazione per creare interfacce utente grafiche che fanno uso delle librerie Gtk+ e GNOME. Glade vi permette di sviluppare rapidamente tali interfacce ed è in grado di creare il codice sorgente in diversi linguaggi che costruiranno le interfacce per voi. Glade può anche essere usato, insieme a libglade, per creare le interfacce utente dinamicamente, dal file di descrizione XML che crea Glade stesso.

Glade può essere preso qui. Ci sono dei link per i vari formati di pacchetto. Glade è anche disponibile sul server CVS di GNOME. Per maggiori informazioni su come prendere Glade dal CVS vedete la pagina GNOME CVS.

Per usare il supporto a GNOME di Glade dovete avere una versione molto recente di GNOME, oppure dovete compilare Glade con `--disable-gnome`.

Una volta installato, Glade può essere avviato dalla riga di comando battendo `glade`.

## Usare Glade

Glade è composto da diverse finestre, ognuna delle quali serve ad un preciso scopo. La finestra principale contiene il menu, la barra degli strumenti e un elenco delle finestre di primo livello. La palette elenca i vari oggetti che è possibile usare per costruire l'interfaccia. L'editor delle proprietà permette di modificare le proprietà dei widget, come la dimensione, il colore, le maschere dei segnali, ecc.

Tipicamente un progetto Glade inizia con la costruzione della interfaccia utente. Usando la palette componete ed inserite widget fino a che non ottenete l'interfaccia desiderata; nel far ciò sarete soliti usare l'editor delle proprietà per manipolare le diverse impostazioni di raggruppamento, le dimensioni dei widget, ecc.

Terminata l'interfaccia salverete il progetto e creerete i file sorgente in C che verranno usati per generare l'interfaccia utente. Quindi segue la fase di integrazione della logica del vostro progetto. Alcune altre cose che potete fare:

- usare libgade per costruire l'interfaccia

- usare Glade per impostare i gestori di segnale dei vostri widget

- emettere il codice in Perl o in Eiffel piuttosto che in C

Le diverse parti di Glade verranno descritte in dettaglio nelle sezioni seguenti.

## Menu

### I menu di Glade

### Il menu File

#### menu File

#### Nuovo progetto

Crea un nuovo progetto Glade. Glade vi chiederà conferma; se non avete salvato un progetto aperto, scegliete `Annulla` e salvatelo, altrimenti scegliete `OK`.

#### Apri

Apre un progetto Glade esistente. Apparirà una finestra di dialogo Gtk+ standard in cui è possibile indicare il file del progetto. Osservate che le finestre di dialogo Gtk+ di apertura di file permettono, nel campo in cui va inserito il nome del file, il completamento del nome tramite tasto tab.

#### Salva

Salva il vostro progetto. Se è la prima volta che salvate il progetto corrente apparirà la finestra di dialogo Opzioni del progetto, in cui i vari campi conterranno dei valori predefiniti. Se invece in passato avevate già specificato tali opzioni del progetto, Glade salverà semplicemente il vostro progetto senza fare commenti.

#### Genera codice sorgente

Genera il codice sorgente desiderato (C, Perl, Ada, ecc.). Se non avete mai salvato il progetto corrente apparirà la finestra di dialogo Opzioni del progetto, in cui i vari campi conterranno dei valori predefiniti. Se invece in passato avevate già specificato tali opzioni, Glade genererà il codice sorgente senza fare commenti.

#### Opzioni del progetto

La finestra di dialogo Opzioni del progetto è descritta qui.

#### Esci

Esce da Glade. Attualmente Glade non chiede se deve salvare un progetto che non è stato salvato (sebbene chieda conferma per uscire); quindi ricordatevi di salvare il vostro progetto prima di uscire.

### Il menu Modifica

#### menu Modifica

#### Taglia

Rimuove un widget e lo mette negli appunti.

#### Copia

Copia un widget negli appunti. Il widget originale rimane al suo posto.

#### Incolla

Se negli appunti c'è un widget, questo viene copiato nella selezione.

#### Cancella

Rimuove il widget selezionato senza spostarlo negli appunti.

### Il menu Vista

#### Menu Vista

#### Mostra Palette

Mostra la palette, se era nascosta, oppure la porta in primo piano se era visibile ma coperta.

#### Mostra Editor delle proprietà

Mostra la finestra di dialogo delle proprietà, se era nascosta, oppure la porta in primo piano se era visibile ma coperta.

#### Mostra Albero dei widget

Mostra la finestra di dialogo con l'albero dei widget, se era nascosta, oppure la porta in primo piano se era visibile ma coperta.

#### Mostra Appunti

Mostra gli appunti con i widget, se erano nascosti, oppure li porta in primo piano se erano visibili ma coperti.

### Il menu Opzioni

#### Menu Opzioni

#### Mostra griglia

Glade deve mostrare una griglia, per facilitare l'allineamanto dei widget quando li si mette in un contenitore GtkFixed?

#### Aggancia alla griglia

Volete che Glade agganci i widget alla griglia quando li posizionate in un contenitore GtkFixed?

#### Mostra Suggerimenti dei widget

Quando il puntatore indugia su un widget, deve essere mostrato un suggerimento che descrive quel particolare widget?

#### Opzioni della griglia

##### Opzioni griglia

- Spaziatura orizzontale: numero di pixel da saltare, orizzontalmente, prima di tracciare una linea.

- Spaziatura verticale: numero di pixel da saltare, verticalmente, prima di tracciare una linea.

- Stile griglia: la griglia deve essere tracciata con una serie di puntini o con delle linee?

#### Opzioni di aggancio

##### Opzioni di aggancio

- Aggancio orizzontale: Glade deve agganciare alla griglia il bordo sinistro e/o destro di un widget?

- Aggancio verticale: Glade deve agganciare alla griglia il bordo superiore e/o inferiore di un widget?

### Il menu Aiuto

#### Menu Aiuto

#### Informazioni su...

Visualizza la finestra di dialogo Informazioni su, che mostra il logo di Glade, gli autori e informazioni per contattare il Team di Glade.

### La barra degli strumenti

#### Barra degli strumenti

#### Apri

Corrisponde a `File:Apri`.

#### Salva

Corrisponde a `File:Salva`.

#### Opzioni

Corrisponde a `File:Opzioni progetto`.

#### Crea sorgente

Corrisponde a `File:Genera codice sorgente`.

## Opzioni del progetto

### Generale

#### Opzioni generali

#### Opzioni principali

Directory del progetto

  La directory in cui si trovano i progetti Glade. Potete sceglierla usando una finestra di dialogo per la selezione di file, richiamabile cliccando su `Sfoglia`.

Nome del progetto

  Il nome del vostro progetto. Modificandolo cambieranno il nome del progetto e quello del file contenente il progetto.

Nome dell'applicazione

  Il nome dell'eseguibile che verrà generato da Glade per il vostro progetto. Modificandolo il nome del file del progetto cambierà automaticamente.

File del progetto

  Il nome del file del progetto Glade. E' il file in cui verranno memorizzate tutte le informazioni riguardanti il vostro progetto.

#### Sottodirectory

Directory dei sorgenti

  La directory in cui Glade metterà il suo codice sorgente (quando gli verrà detto di farlo).

Directory delle immagini

  La directory in cui Glade cercherà tutte le immagini usate nel progetto.

#### Linguaggio

Selezionate il linguaggio di programmazione in cui Glade scriverà il codice. Al momento della scrittura di questo documento le opzioni possibili sono: C, C++, Ada95, Perl ed Eiffel.

#### GNOME

Glade deve scrivere codice che usa le librerie GNOME?

### Opzioni C

#### Opzioni C

#### Opzioni generali

Supporto per Gettext

  Glade deve scrivere codice che supporti lo GNU gettext per l'internazionalizzazione?

Imposta nomi dei widget

  Glade deve scrivere nel codice i nomi di tutti i widget? Questa opzione è utile se avete intenzione di usare le chiamate Gtk+ come `gtk_widget_path()`. Vedete anche `gtk_widget_set_name()`.

Crea copie di backup dei file sorgente

  Glade deve creare delle copie di backup di tutti i vostri file sorgente quando ne create di nuovi?

#### Opzioni File in uscita

Crea file `main.c`

  Glade deve creare un file `main.c` contenente un semplice codice d'inizializzazione? Se avete abilitato il supporto per GNOME, allora chiamerà `gnome_init()`, altimenti chiamerà `gtk_init()`.

Crea Funzioni di supporto

  Glade deve creare il file `support.c`, contenente delle funzioni di servizio per compiti quali la creazione di immagini, o la ricerca di un widget noto il nome?

Crea file di supporto per la compilazione

  Glade deve creare dei file utili per supportare la configurazione del vostro progetto tramite automake/autoconf? Abilitando questa opzione verranno creati diversi file:

  - `AUTHORS`: File per registrare i nomi dei collaboratori.
  - `ChangeLog`: File con il log delle modifiche da voi fatte al progetto.
  - `Makefile.am`: template del progetto per Automake.
  - `NEWS`: Annunci delle nuove versioni rilasciate al pubblico.
  - `README`: Informazioni generiche sul progetto.
  - `acconfig.h`: Definisce i simboli predefiniti del preprocessore per autoconf.
  - `autogen.sh`: Script per la creazione di uno script di configurazione.
  - `configure.in`: Template per la scrittura di uno script configure.
  - `macros/`: Directory contenente le macro di automake per Glade, GNOME, etc.
  - `stamp-h.in`: File Timestamp.
  - `src/Makefile.am`: Template di automake per la directory src/.

#### Funzioni di creazione dell'interfaccia

File sorgente

  Memorizza in questo file il codice che genera l'interfaccia utente.

Nome file header

  Quando scrive il codice che serve a generare l'interfaccia utente, memorizza in questo file i prototipi di funzione, ecc.

#### Gestori di segnale e funzioni di callback

File sorgente

  Memorizza in questo file il codice dei gestori di segnale.

Nome file header

  Quando scrive il codice dei gestori di segnale, memorizza in questo file i prototipi di funzione, ecc.

#### Funzioni di supporto

File sorgente

  Memorizza in questo file il codice delle funzioni di supporto.

Nome file header

  Quando scrive il codice delle funzioni di supporto, memorizza in questo file i prototipi di funzione, ecc.

### Opzioni per LibGlade

#### Opzioni per LibGlade

#### Salva le stringhe traducibili

Se volete permettere l'internazionalizzazione della vostra applicazione e volete usare libglade per costruirne l'interfaccia, allora probabilemte vorrete che le stringhe traducibili siano salvate in un file. Se è così abilitate questa opzione per dirlo a Glade.

## Finestre

### Finestra principale

#### Finestra principale

#### Menu

I menu sono descritti qui.

#### Barra degli strumenti

La barra degli strumenti è descritta qui.

#### Elenco delle finestre di primo livello

La finestra principale mostra un elenco delle finestre di primo livello, Gtk+ o GNOME, che sono definite nel progetto corrente. Vengono incluse:

- GtkWindow

- GtkDialog

- GtkFileSelection

- GtkColorSelectionDialog

- GtkFontSelectionDialog

- GtkInputDialog

- GnomeApp

- GnomeDialog

- GnomeMessageBox

- GnomeAbout

- GnomePropertyBox

### Palette

La palette consente di prendere i widget che si vogliono aggiungere al progetto Glade corrente. La palette ha tre modi d'uso fondamentali. Il primo modo è la selezione, e può essere usato cliccando sulla grande freccia nera contraddistinta dall'etichetta "Selettore". In questa modalità, cliccando con il mouse, potete selezionare i widget già esistenti nel vostro progetto, in modo da poterli modificare usando l'editor delle proprietà. Il modo "selezione" è anche indicato dal puntatore a freccia.

Il secondo modo d'uso è quello di posizionamento dei widget. Selezionando un widget (la maggior parte delle volte) Glade trasforma il puntatore in una croce e vi permette di posizionare il widget scelto all'interno di contenitori, widget di primo livello, ecc. Dopo aver posizionato il widget Glade torna in modo selezione.

Il terzo modo d'uso è il posizinamento di primo livello. Selezionando dalla palette alcuni widget di primo livello, questi appariranno istantaneamente sul desktop, pronti per essere modificati. Questo modo è differente dal solito modo di posizionamento dei widget. Dopo aver selezionato un widget di primo livello, si torna automaticamente al modo di selezione.

Nella palette i widget sono raggruppati in tre sezioni distinte: Gtk+ Basic, Gtk+ Additional e Gnome. La categoria Gtk+ Basic contiene i widget Gtk+ usati più spesso, come GtkWindow, GtkLabel, ecc. Gtk+ Additional contiene widget come GtkAlignment, GtkPacker e GtkCalendar. La categoria Gnome comprende tutti widget GNOME supportati da Glade.

Qui sotto è riportata una lista di tutti i widget supportati. Per capire esattamente cos'è un certo widget nella palette (cioè quando la figura che lo rappresenta non è chiara) potete indugiare con il puntatore sopra al widget in questione per veder apparire un suggerimento che lo descrive.

#### Gtk+ Basic

##### Gtk+ Basic

GtkWindow | GtkMenuBar | GtkToolbar | GtkHandleBox
GtkLabel | GtkEntry | GtkCombo | GtkText
GtkButton | GtkToggleButton | GtkCheckButton | GtkRadioButton
GtkList | GtkTree | GtkCList | GtkCTree
GtkOptionMenu | GtkSpinButton | GtkProgressBar | GtkStatusbar
GtkHSeparator | GtkVSeparator | GtkPixmap | GtkDrawingArea
GtkDialog | GtkFileSelection | GtkColorSelectionDialog | GtkFontSelectionDialog
GtkHBox | GtkVBox | GtkTable | GtkFixed
GtkHButtonBox | GtkVButtonBox | GtkHPaned | GtkVPaned
GtkNotebook | GtkFrame | GtkScrolledWindow | GtkViewport

#### Gtk+ Additional

##### Gtk+ Additional

GtkHScale | GtkVScale | GtkHRuler | GtkVRuler
GtkAlignment | GtkEventBox | GtkAccelLabel | GtkCalendar
GtkLayout | GtkPacker | GtkAspectFrame | GtkPopopMenu
GtkCurve | GtkGammaCurve | GtkHScrollbar | GtkVScrollbar
GtkImage | GtkPreview | GtkColorSelection | GtkFontSelection
GtkInputDialog | Widget personalizzate | GtkArrow

#### GNOME

##### Gnome

GnomeApp | GnomeDialog | GnomeMessageBox | GnomeAbout
GnomeColorPicker | GnomeFontPicker | GnomeIconEntry | GnomeHRef
GnomeEntry | GnomeFileEntry | GnomeNumberEntry | GnomePixmapEntry
GnomeDateEdit | GtkDial | GtkClock | GnomeAppBar
GnomeCalculator | GnomeLess | GnomePaperSelector | GnomeSpell (deprecato)
GnomeCanvas | GnomeIconList | GnomeIconSelection | GnomePropertyBox
GnomeDruid | GnomePixmap | GnomeAnimator

### Editor delle proprietà

FIXME

### Albero dei widget

FIXME

### Appunti

FIXME

## Output

Per favore scrivimi.

## Libglade

Per favore scrivimi.

## Quick Start

Per favore scrivimi.

## Ciao mondo - Un semplice progetto

Per favore scrivimi.

## Autori

Glade è stato scritto da Damon Chaplin glade@glade.gnome.org. Per maggiori informazioni su Glade, visitate la pagina web di glade.

Per favore, mandate commenti, suggerimenti e rapporti sui bug alla mailing list di Glade. Informazioni su come iscriversi a questa lista si possono trovare in questa pagina.

Questo manuale di riferimento è curato da Michael Vance briareos@lokigames.com. Inviate commenti, suggerimenti e rapporti sui bug, riguardanti questo manuale, al suo indirizzo.

Traduzione italiana di Fabrizio Stefani (fstef@it.gnome.org). Per favore, inviate commenti e suggerimenti riguardanti questa traduzione al suddetto indirizzo.

### Contributi

Ray Barker fatray@home.com

  Ha contribuito con la finestra di dialogo dei menu e con la documentazione sui file di output.

Paul J. Drongowski pjd@ives.lkg.dec.com

  Ha contribuito con la guida "quick start".

Potete anche aggiungere i vostri commenti online usando la GNOME Documentation Status Table.