<!--
  <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd">

 -->

  <sect1 id="designing-forms">
    <title
>Progettare i moduli</title>

    <sect2 id="most-important-terms">
      <title
>Termini più importanti</title>
      <glosslist>
        <glossentry id="gloss-form">
          <glossterm
>Modulo</glossterm>
          <glossdef>
            <para
>Una finestra per inserire dei dati e presentarli sullo schermo del computer in modo facile. </para>
          </glossdef>
        </glossentry>
        <glossentry id="gloss-form-data-source">
          <glossterm
>Sorgente di dati per un modulo</glossterm>
          <glossdef>
            <para
>Tabelle di banche dati o interrogazioni che forniscono i dati mostrati nel modulo. La sorgente di dati è necessaria poiché i moduli stessi sono solo degli <emphasis
>strumenti</emphasis
> per la visualizzazione e l'inserimento di dati, mentre le tabelle e le interrogazioni sono fonti di dati. I moduli nuovi e vuoti non hanno alcuna sorgente di dati assegnata, per questo non mostrano alcun dato dalla vostra banca dati finché non ne assegnate loro una. </para>
          </glossdef>
        </glossentry>
        <glossentry id="gloss-form-field">
          <glossterm
>Campo di un modulo</glossterm>
          <glossdef>
            <para
>Equivalente diretto di una colonna in una tabella o in una interrogazione. I campi più utilizzati sono quelli per la visualizzazione di testo e numeri. L'inserimento di un nuovo valore o la modifica di uno esistente in un campo di questo tipo provoca una modifica nella colonna della tabella o interrogazione ad esso legata (dopo aver confermato la modifica). </para>
          </glossdef>
        </glossentry>
        <glossentry id="gloss-form-design">
          <glossterm
>Design di un modulo</glossterm>
          <glossdef>
            <para
>Insieme di operazioni che stai compiendo per definire l'aspetto e le funzioni di un modulo. Per fare questo, devi fornire una <glossterm linkend="gloss-form-data-source"
>sorgente di dati</glossterm
>, inserire dei <glossterm linkend="gloss-form-field"
>campi di un modulo</glossterm
> di diversi tipi e collocarli nella posizione appropriata. </para>
          </glossdef>
        </glossentry>
        <glossentry id="gloss-form-widget">
          <glossterm
>Oggetto modulo</glossterm>
          <glossdef>
            <para
>Elemento di un modulo. I tipi di oggetti principali sono:</para>
            <itemizedlist>
              <listitem>
                <para
>Oggetti che mostrano informazioni, &eg; una casella di testo o una casella immagine. Ogni oggetto di questo tipo può essere <emphasis
>legato</emphasis
> ad un campo di una sorgente dati (la colonna di una tabella o di una interrogazione). Perciò, essi sono chiamati in breve <glossterm linkend="gloss-form-field"
>campi di un modulo</glossterm
>. </para>
              </listitem>
              <listitem>
                <para
>Oggetti in grado di eseguire azioni specifiche, &eg; un pulsante per chiudere il modulo corrente. All'interno di altre applicazioni, esso è chiamato a volte <firstterm
>controllo di un modulo</firstterm
> poiché può eseguire un'azione definita in precedenza per <emphasis
>controllare</emphasis
> il comportamento della tua applicazione per banche dati. </para>
              </listitem>
              <listitem>
                <para
>Altri oggetti che permettono di arricchire l'aspetto di un modulo, come &eg; un <quote
>oggetto linea</quote
> può separare visivamente due aree del modulo. </para>
              </listitem>
            </itemizedlist>
          </glossdef>
        </glossentry>
        <glossentry id="gloss-container-widget">
          <glossterm
>Oggetto contenitore</glossterm>
          <glossdef>
            <para
>Un oggetto che può <emphasis
>contenere</emphasis
> altri oggetti all'interno della sua area. Ad esempio, un riquadro o una scheda sono contenitori. La superficie del modulo è essa stessa un contenitore. Un pulsante di comando non può essere chiamato contenitore poiché non è possibile inserire oggetti al suo interno. In casi più complicati, degli oggetti contenitore possono essere inseriti all'interno di un altro contenitore, quindi l'annidamento è possibile. </para>
            <!--
            <screenshot>
              <screeninfo
>Example container widgets</screeninfo>
              <mediaobject>
                <imageobject>
                  <imagedata fileref="img/05_04_01_widget_containers.png" format="PNG"/>
                </imageobject>
                <textobject>
                  <phrase
>Example container widgets</phrase>
                </textobject>
              </mediaobject>
            </screenshot
>-->
          </glossdef>
        </glossentry>
      </glosslist>
    </sect2>

    <sect2 id="forms-versus-tables">
      <title
>I moduli contro le tabelle</title>
      <para
>Nel capitolo 5.2 hai imparato come inserire dati direttamente nelle tabelle usando la loro vista a foglio di calcolo. Tuttavia, in molti casi i moduli sono più adatti all'inserimento dei dati: </para>
      <itemizedlist>
        <listitem>
          <para
>Una tabella può contenere troppe colonne per mostrarle sul tuo schermo. Un modulo può mostrare tali dati usando righe multiple. </para>
        </listitem>
        <listitem>
          <para
>Un modulo permettere di suddividere visivamente i <glossterm linkend="gloss-form-field"
>campi</glossterm
> di dati in gruppi logici, aumentando quindi la leggibilità. È possibile inserire etichette con informazioni aggiuntive per dare agli utente ulteriori suggerimenti su come usare il modulo o sul significato dei <glossterm linkend="gloss-form-field"
>campi</glossterm
> di dati forniti. </para>
        </listitem>
        <listitem>
          <para
>I pulsanti di comando possono essere usati all'interno dei moduli per i comandi più comuni, così che gli utenti possono usare i moduli in un modo simile alle applicazioni che conoscono. </para>
        </listitem>
        <listitem>
          <para
>Nella vista a foglio di calcolo, mostrare <glossterm linkend="gloss-form-field"
>campi</glossterm
> di testo con dati su più righe oppure immagini è tanto semplice quanto farlo nei moduli. </para>
        </listitem>
      </itemizedlist>
    </sect2>

    <sect2>
      <title
>Lavorare con il design dei moduli</title>
      <para
>Come con il design delle tabelle o delle interrogazioni, puoi utilizzare la <interface
>Vista dati</interface
> e la <interface
>Vista design</interface
>. Il design di un modulo viene eseguito nella <interface
>Vista design</interface
>. Ci riferiremo spesso alla finestra per il design dei moduli con il termine <interface
>Designer dei moduli</interface
>. </para>
      <procedure>
        <step>
          <para
>Per creare un nuovo modulo vuoto, seleziona <menuchoice
><guimenu
>Inserisci</guimenu
><guimenuitem
>Modulo</guimenuitem
></menuchoice
> dalla barra dei menu. In alternativa, puoi usare il comando <menuchoice
><guimenuitem
>Nuovo modulo</guimenuitem
></menuchoice
> dal pulsante a discesa nella barra degli strumenti del <interface
>navigatore di progetto</interface
> oppure il comando <menuchoice
><guimenuitem
>Crea oggetto: modulo</guimenuitem
></menuchoice
> dal menu contestuale. </para>
        </step>
        <step>
          <para
>Apparirà un nuovo riquadro: puoi ridimensionare il modulo spostando i bordi. Il modulo è ricoperto da una griglia che semplifica il posizionamento accurato degli oggetti. </para>
          <!--<screenshot>
            <screeninfo
>A window with design of a new form</screeninfo>
            <mediaobject>
              <imageobject>
                <imagedata fileref="img/05_04_03_new_empty_form.png" format="PNG"/>
              </imageobject>
              <textobject>
                <phrase
>A window with design of a new form</phrase>
              </textobject>
            </mediaobject>
          </screenshot
>-->
        </step>
      </procedure>
      <para
>Così come con il design delle tabelle, il <interface
>designer dei moduli</interface
> fornisce un <interface
>pannello delle proprietà</interface
>. Per risparmiare un po' di spazio sullo schermo, il pannello hatre schede relative al modulo attualmente selezionato: </para>
      <variablelist>
        <varlistentry>
          <term
>La scheda <guilabel
>Proprietà</guilabel
></term>
          <listitem>
            <para
>Contiene una lista di proprietà dell'oggetto attualmente selezionato.</para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term
>La scheda <guilabel
>Sorgente dati</guilabel
> </term>
          <listitem>
            <para
>Contiene le proprietà relative in modo specifico alla <glossterm linkend="gloss-form-data-source"
>sorgente dati</glossterm
> dell'oggetto attualmente selezionato o del modulo stesso. </para>
          </listitem>
        </varlistentry>
        <varlistentry>
          <term
>La scheda <guilabel
>Oggetti</guilabel
> </term>
          <listitem>
            <para
>Contiene una gerarchia di tutti gli oggetti del modulo. La lista semplifica la ricerca per nome e la navigazione tra gli oggetti. </para>
          </listitem>
        </varlistentry>
      </variablelist>
      <para
>Vengono mostrate informazioni circa il nome ed il tipo dell'oggetto attualmente selezionato nella prima e nella seconda scheda. </para>
      <para
>Sono disponibili anche barre degli strumenti aggiuntive:</para>
      <itemizedlist>
        <listitem>
          <para
>La barra degli strumenti <guilabel
>Oggetti</guilabel
>, utilizzata per l'inserimento di nuovi oggetti nel modulo </para>
        </listitem>
        <listitem>
          <para
>La barra degli strumenti <guilabel
>Formato</guilabel
> utilizzata per la formattazione degli elementi di un modulo (&eg; per regolare la dimensione dell'oggetto, il raggruppamento). I comandi di formattazione sono anche disponibili nel menu <guimenu
>Formato</guimenu
>. Ulteriori informazioni su questi comandi possono essere trovate in <xref linkend="formatmenu"/>. </para>
        </listitem>
      </itemizedlist>
    </sect2>

    <sect2 id="using-the-widgets-tab">
      <title
>Usare la scheda <guilabel
>Oggetti</guilabel
></title>
      <para
>La scheda <guilabel
>Oggetti</guilabel
> nel <interface
>pannello delle proprietà</interface
> fornisce una lista di oggetti del modulo e la loro gerarchia. Ogni oggetto viene presentato all'interno della gerarchia accanto agli altri oggetti che si trovano allo stesso livello (che hanno lo stesso contenitore come genitore). Gli oggetti figli (all'interno dei contenitori) vengono presentati utilizzando nomi indentati. </para>
      <!--<para
>In the picture below, the form (a container) contains two widgets:
        <guilabel
>groupBox2</guilabel
> and <guibutton
>options</guibutton
> command button. In
        turn, <guilabel
>groupBox2</guilabel
> (being a container itself) contains two check box
        widgets.
      </para>
      <screenshot>
        <screeninfo
>Using the <quote
>Widgets</quote
> tab</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_04_widgets_tab.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>Using the <quote
>Widgets</quote
> tab</phrase>
          </textobject>
        </mediaobject>
      </screenshot
>-->
      <para
>Per ogni oggetto viene mostrato il nome ed il tipo. Al tipo è associata anche un'icona - la stessa che viene mostrata nella barra degli strumenti usata durante il design del modulo. </para>
      <note>
        <itemizedlist>
          <listitem
> 
            <para
>Cambiando la selezione corrente nella lista verrà attivata la selezione corrispondente nel modulo che si sta progettando. Ciò permette di cercare più facilmente gli oggetti tramite i nomi ed una navigazione più semplice. Ad esempio, è possibile selezionare un oggetto tramite il nome, e poi passare alla scheda <guilabel
>Proprietà</guilabel
> per modificare le proprietà dell'oggetto.</para>
          </listitem>
          <listitem>
            <para
>Tenere premuto il tasto <keycap
>Ctrl</keycap
> mentre si seleziona un elemento dalla lista degli oggetti permette di selezionare oggetti multipli in una sola volta. Tenere premuto il tasto <keycap
>Shift</keycap
> permette di selezionare l'intera lista di oggetti.</para>
          </listitem>
          <!--<listitem>
            <para>
              When widget is inserted, it is recommended to give it a reasonable name.
              For example, <guilabel
>green</guilabel
> check box widget has been named specifically
              for its meaning, using the <guilabel
>Properties</guilabel
> tab
              (<guilabel
>Name</guilabel
> property has been used to do that). Such change
              can make it easier to find a widget within the list.
            </para>
            <screenshot>
              <screeninfo
>Naming the widget as <guilabel
>green</guilabel
></screeninfo>
              <mediaobject>
                <imageobject>
                  <imagedata fileref="img/05_04_04_renaming_widgets.png" format="PNG"/>
                </imageobject>
                <textobject>
                  <phrase
>Naming the widget as <guilabel
>green</guilabel
></phrase>
                </textobject>
              </mediaobject>
            </screenshot>
          </listitem
>-->
        </itemizedlist>
      </note>
      <para
>Dare nomi ragionevoli agli oggetti può essere utile, ma non è obbligatorio. Nota che il nome di un oggetto è una proprietà non visibile all'utente del modulo. Gli utenti vedranno solamente un testo dell'oggetto, fornito dalla proprietà <varname
>Testo</varname
> o simili. </para>
    </sect2>
    
    <sect2 id="inserting-widgets-text-fields">
      <title
>Inserire oggetti - campi di testo</title>
      <para
>Creiamo un modulo che fornisce informazioni su alcune persone, cioè un modulo collegato alla tabella <literal
>Persone</literal
>. </para>
      <para
>Se il modulo che si sta progettando deve presentare dei dati ottenuti da una banca dati, devi posizionare <glossterm linkend="gloss-form-field"
>campi</glossterm
> appropriati al suo interno. Per farlo, usa i pulsanti sulla barra degli strumenti <guilabel
>Oggetti</guilabel
>. Ogni pulsante corrisponde ad un singolo tipo di oggetti. </para>
      <procedure>
        <step>
          <para
>Fai clic sul pulsante <guibutton
>Casella di testo</guibutton
> nella barra degli strumenti <guilabel
>Oggetti</guilabel
>. </para>
        </step>
        <step>
          <para
>Fai clic sulla superficie del modulo con il pulsante <mousebutton
>sinistro</mousebutton
> del mouse. Un nuovo oggetto casella di testo verrà posizionato nel punto in cui hai fatto clic. Prima di rilasciare il pulsante puoi trascinare il mouse per specificare la dimensione desiderata dell'oggetto. </para>
        </step>
        <step>
          <para
>Se necessario, sposta l'oggetto inserito trascinandolo nella posizione desiderata. In seguito puoi ridimensionarlo trascinando uno dei piccoli quadrati che compaiono negli angoli. Nota che i quadrati sono visibili solamente quanto l'oggetto viene selezionato. Se ne selezioni un altro oppure la superficie del modulo, i quadrati spariscono. </para>
        </step>
        <step>
          <para
>Fai nuovamente clic sul pulsante <guibutton
>Casella di testo</guibutton
> nella barra degli strumenti e fai clic sulla superficie del modulo per inserire un altro oggetto.Ripeta questa azione un'altra volta finché non ottieni tre caselle di testo nel tuo modulo. Per semplicità ci limitiamo a tre <glossterm linkend="gloss-form-field"
>campi</glossterm
> di dati. </para>
        </step>
      </procedure>
      <note>
        <itemizedlist>
          <listitem>
            <para
>È disponibile un menu contestuale nella modalità design di moduli, attivato facendo clic con il pulsante <mousebutton
>destro</mousebutton
> del mouse sull'oggetto desiderato oppure sulla superficie del modulo. Il menu offre comandi come <guimenuitem
>Taglia</guimenuitem
>, <guimenuitem
>Copia</guimenuitem
>, <guimenuitem
>Incolla</guimenuitem
>, <guimenuitem
>Elimina</guimenuitem
> ed altri, più complessi. Molti di essi sono anche forniti dalla <guilabel
>Barra dei menu</guilabel
>, tipicamente <guimenuitem
>Modifica</guimenuitem
>. Sono disponibili anche scorciatoie da tastiera per questi comandi. Alcuni di essi sono solo disponibili per certi tipi di oggetti. </para>
          </listitem>
          <listitem>
            <para
>I comandi <guimenuitem
>Taglia</guimenuitem
>, <guimenuitem
>Copia</guimenuitem
> e <guimenuitem
>Incolla</guimenuitem
> rendono possibile spostare o copiare degli oggetti tra moduli, addirittura tra progetti di banche dati separati. </para>
          </listitem>
          <listitem>
            <para
>Tenere premuto il tasto <keycap
>Ctrl</keycap
> mentre si fa clic su un oggetto permette di selezionare diversi oggetti. </para>
          </listitem>
          <listitem>
            <para
>Invece di utilizzare i comandi <guimenuitem
>Copia</guimenuitem
> e <guimenuitem
>Incolla</guimenuitem
>, per duplicare un oggetto all'interno dello stesso modulo puoi tenere premuto il tasto <keycap
>Ctrl</keycap
> mentre sposti l'oggetto. Dopo aver rilasciato il tasto <keycap
>Ctrl</keycap
> l'oggetto trascinato non verrà spostato ma copiato nella nuova posizione. </para>
          </listitem>
        </itemizedlist>
      </note>
    </sect2>

    <sect2 id="assigning-data-sources">
      <title
>Assegnare sorgenti di dati</title>
      <para
>I <glossterm linkend="gloss-form-field"
>campi</glossterm
> inseriti non hanno ancora nessuna <emphasis
>sorgente di dati</emphasis
> assegnata, quindi non sono in grado di mostrare informazioni dalla banca dati. Per assegnare una sorgente di dati usa la scheda <guilabel
>Sorgente dati</guilabel
> del <interface
>pannello delle proprietà</interface
>. </para>
      <para
>Il primo passo consiste nello specificare la <glossterm linkend="gloss-form-data-source"
>sorgente dati del modulo</glossterm
>, cioè il posto dal quale vengono raccolti i dati visualizzati. Come detto in precedenza, userai la tabella <literal
>persone</literal
> come <glossterm linkend="gloss-form-data-source"
>sorgente dati</glossterm
> per il tuo nuovo modulo. </para>
      <procedure>
        <step>
          <para
>Fai clic sulla superficie del modulo, poiché modificherai le sue proprietà.</para>
        </step>
        <step>
          <para
>Passa alla scheda <guilabel
>Sorgente dati</guilabel
> ed inserisci il nome <literal
>persone</literal
> dal menu a discesa <guilabel
>Sorgente dati per il modulo</guilabel
>. Altrimenti, puoi selezionare quel nome dal menu a discesa. </para>
          <!--<screenshot>
            <screeninfo
>Entering <glossterm linkend="gloss-form-data-source"
>form's data source</glossterm
> name</screeninfo>
            <mediaobject>
              <imageobject>
                <imagedata fileref="img/05_04_05_entering_form_data_source.png" format="PNG"/>
              </imageobject>
              <textobject>
                <phrase
>Entering <glossterm linkend="gloss-form-data-source"
>form's data source</glossterm
> name</phrase>
              </textobject>
            </mediaobject>
          </screenshot
>-->
        </step>
      </procedure>
      <para
>Hai assegnato la <glossterm linkend="gloss-form-data-source"
>sorgente dati per il modulo</glossterm
>. Ora devi specificare la sorgente dati per ogni campo degli oggetti. </para>
      <procedure>
        <step>
          <para
>Fai clic sul primo oggetto campo di testo nella parte alta del modulo.</para>
        </step>
        <step>
          <para
>Nella scheda <guilabel
>Sorgente dati</guilabel
> del pannello delle proprietà inserisci il nome del campo <varname
>nome</varname
> nel menu a discesa <emphasis
>sorgente dati dell'oggetto</emphasis
>. Altrimenti puoi selezionare quel nome dal menu a discesa. </para>
          <!--<screenshot>
            <screeninfo
>Entering widget's data source name</screeninfo>
            <mediaobject>
              <imageobject>
                <imagedata fileref="img/05_04_05_entering_text_field_data_source.png" format="PNG"/>
              </imageobject>
              <textobject>
                <phrase
>Entering widget's data source name</phrase>
              </textobject>
            </mediaobject>
          </screenshot
>-->
        </step>
        <step>
          <para
>Fai clic sul prossimo oggetto casella di testo ed inserisci <varname
>cognome</varname
> come sorgente dati.</para>
        </step>
        <step>
          <para
>Inserisci le sorgenti dati per i <glossterm linkend="gloss-form-field"
>campi</glossterm
> di testo <varname
>via</varname
>, <varname
>numero_di_casa</varname
> e <varname
>città</varname
> in modo simile. </para>
        </step>
      </procedure>
      <para
>Puoi ora salvare il design del modulo (non è obbligatorio per verificare il modulo in azione). Per salvarlo, fai clic su pulsante della barra degli strumenti <guilabel
>Salva i cambiamenti dell'oggetto</guilabel
> oppure usa il comando <menuchoice
><shortcut
><keycombo action="simul"
><keycap
>Ctrl</keycap
><keycap
>S</keycap
></keycombo
></shortcut
><guimenu
>File</guimenu
><guimenuitem
>Salva</guimenuitem
></menuchoice
>. Al momento del salvataggio ti verrà chiesto di inserire il nome del modulo. Inserisci <literal
>Persone</literal
> come didascalia e fai clic sul pulsante <guibutton
>OK</guibutton
>. Il nome del modulo verrà riempito automaticamente. </para>
      <para
>Questo è il momento giusto per controllare il tuo modulo. Fai clic sul pulsante della barra degli strumenti <guibutton
>Passa alla vista dati</guibutton
>. A meno che tu non abbia commesso un errore durante l'inserimento delle sorgenti dati, dovresti vedere i <glossterm linkend="gloss-form-field"
>campi del modulo</glossterm
> riempiti con i dati proveniente dalla tabella <literal
>persone</literal
>. </para>
      <!--<screenshot>
        <screeninfo
>The <literal
>Persons</literal
> form in data view after inserting text fields and assigning data sources</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_06_form_with_text_fields.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>The <literal
>Persons</literal
> form in data view after inserting text fields and assigning data sources</phrase>
          </textobject>
        </mediaobject>
      </screenshot
>-->
      <note>
        <itemizedlist>
          <listitem>
            <para
>Se vuoi rimuovere l'associazione di una <glossterm linkend="gloss-form-data-source"
>sorgente dati</glossterm
> per un oggetto del modulo, puoi usare il pulsante <guibutton
>Pulisci sorgente dei dati per l'oggetto</guibutton
> vicino al menu a discesa <guilabel
>Sorgente dati dell'oggetto</guilabel
>. In maniera simile, puoi usare il pulsante <guibutton
>Pulisci sorgente dei dati del modulo</guibutton
> vicino al menu a discesa <guilabel
>Sorgente dati del modulo</guilabel
>. </para>
          </listitem>
          <listitem>
            <para
>Usa il pulsante <guibutton
>Vai alla sorgente dei dati selezionata</guibutton
> per selezionare la tabella o interrogazione appropriata nel <interface
>navigatore progetti</interface
>, così puoi aprire velocemente una tabella o una interrogazione che rappresenta la <glossterm linkend="gloss-form-data-source"
>sorgente dati</glossterm
> del modulo. </para>
          </listitem>
        </itemizedlist>
        <!-- TODO: mention about creating Auto Fields by using drag & drop -->
      </note>
    </sect2>

    <sect2 id="inserting-text-labels">
      <title
>Inserire etichette di testo</title>
      <para
>Per rendere più semplice agli utenti del modulo la comprensione del significato di ogni oggetto, sarebbe necessario aggiungere delle etichette di testo ad essi con titoli appropriati. Per creare delle etichette di testo viene utilizzato l'oggetto <literal
>etichetta</literal
>. </para>
      <para
>Inserisci tre oggetti etichetta nel modulo, posizionandoli alla sinistra dei campi di testo (oppure alla destra se il tuo sistema operativo usa uno schema da destra a sinistra). All'inserimento di una nuova etichetta, apparirà un cursore di testo dove puoi inserire il titolo desiderato. Inserisci in sequenza: <literal
>Nome</literal
>, <literal
>Cognome</literal
> e <literal
>Indirizzo</literal
>. In aggiunta, inseriscine un'altra nella parte alta del modulo per mostrare il suo nome, cioè <literal
>Persone</literal
>. Allarga la dimensione dell'etichetta ed aumenta la dimensione del carattere usando il comando <menuchoice
><guimenu
>Formato</guimenu
><guimenuitem
>Tipo di carattere</guimenuitem
></menuchoice
>. </para>
      <!--<screenshot>
        <screeninfo
>Ready to use form after adding text labels</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_06_form_with_labels.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>Ready to use form after adding text labels</phrase>
          </textobject>
        </mediaobject>
      </screenshot
>-->
    </sect2>

    <sect2 id="actions">
      <title
>Azioni</title>
      <para
>Una <literal
>azione</literal
> è una singola attività isolata nell'applicazione, disponibile agli utenti per essere eseguita. Può anche essere eseguita automaticamente come reazione ad un dato evento (&eg; dopo l'apertura di un modulo). </para>

      <sect3 id="assigning-actions-to-form-buttons">
        <title
>Assegnare delle azioni ai pulsanti del modulo</title>
        <para
>È possibile assegnare molte azioni ai pulsanti del modulo. L'azione assegnata viene eseguita dopo aver premuto il pulsante. </para>
        <para
>Per assegnare un'azione:</para>
        <procedure>
          <step>
            <para
>Passa alla vista <interface
>design del modulo</interface
> se non lo hai ancora fatto.</para>
          </step>
          <step>
            <para
>Seleziona l'oggetto pulsante esistente facendo clic su di esso o mettine uno nuovo nel modulo. Se hai inserito un nuovo pulsante, inserisci il suo titolo e premi il tasto <keycombo action="press"
><keycap
>Invio</keycap
></keycombo
>. </para>
          </step>
          <step>
            <para
>Fai clic sull'oggetto pulsante con il tasto <mousebutton
>destro</mousebutton
> del mouse per visualizzare il menu contestuale. </para>
          </step>
          <step>
            <para
>Seleziona il comando <guimenuitem
>Assegna azione...</guimenuitem
> dal menu contestuale. </para>
          </step>
          <step>
            <para
>Apparirà una finestra di dialogo <guilabel
>Assegna azione al pulsante di comando</guilabel
> che presenta una lista di azioni disponibili. Una di esse sarà già selezionata se l'oggetto ne aveva una assegnata. Altrimenti nel menu a discesa <guilabel
>Tipo di azione</guilabel
> sarà selezionato l'elemento <guilabel
>Nessuna azione</guilabel
>. </para>
          </step>
          <step>
            <para
>Dal menu a discesa <guilabel
>Tipo di azione</guilabel
> seleziona l'elemento <guilabel
>Applicazione</guilabel
>. Verranno elencate le azioni disponibili per le applicazioni. </para>
          </step>
          <step>
            <para
>Seleziona una delle azioni dalla lista (&eg; <guilabel
>Elimina riga</guilabel
>).</para>
          </step>
          <step>
            <para
>Fai clic sul pulsante <guibutton
>OK</guibutton
> o premi il tasto <keycombo action="press"
><keycap
>Invio</keycap
></keycombo
> per confermare la selezione. </para>
          </step>
        </procedure>
        <!--<screenshot>
          <screeninfo
>Assigning <guilabel
>Delete Row</guilabel
> action to a form's button</screeninfo>
          <mediaobject>
            <imageobject>
              <imagedata fileref="img/05_04_07_assigning_action_to_button.png" format="PNG"/>
            </imageobject>
            <textobject>
              <phrase
>Assigning <guilabel
>Delete Row</guilabel
> action to a form's button</phrase>
            </textobject>
          </mediaobject>
        </screenshot
>-->
        <para
>Dopo essere passato alla <emphasis
>vista dati</emphasis
> puoi vedere se le azioni funzionano o meno. Ad esempio, se ha assegnato l'azione <guilabel
>Elimina riga</guilabel
>, facendo clic sul pulsante la riga corrente della banca dati verrà eliminata, come se stessi eseguendo il comando <menuchoice
><shortcut
><keycombo action="simul"
><keycap
>Ctrl</keycap
><keycap
>Canc</keycap
></keycombo
></shortcut
><guimenu
>Modifica</guimenu
><guimenuitem
>Elimina riga</guimenuitem
></menuchoice
> (in base alle tue impostazioni, ti potrebbe venir chiesto di confermare l'eliminazione). </para>

      <note>
        <itemizedlist>
          <listitem>
            <para
>Per eliminare l'assegnazione di un'azione, seleziona l'elemento <guilabel
>Nessuna azione</guilabel
> dal menu a discesa <guilabel
>Tipo di azione</guilabel
> della finestra di dialogo <guilabel
>Assegna azione al pulsante di comando</guilabel
>. </para>
          </listitem>
          <listitem>
            <para
>Le azioni funzionano solamente nella <emphasis
>vista dati</emphasis
> di un modulo. Non tutti le assegnazioni di azioni hanno senso. Ad esempio, l'azione <guimenuitem
>Tipo carattere...</guimenuitem
> è disponibile nella vista dati, ma solo se ne hai selezionato uno nella <interface
>Vista dati</interface
>. Se fai delle modifiche alle impostazioni del carattere, esse verranno applicate al testo dell'oggetto selezionato. </para>
          </listitem>
        </itemizedlist>
      </note>
      </sect3>
    </sect2>

    <sect2 id="widget-layouts">
      <title
>Disposizione degli oggetti</title>
      <para
>Nella maggior parte dei casi, gli oggetti di un modulo dovrebbero essere organizzati ed allineati in modo conveniente. Posizionare, allineare e ridimensionare gli oggetti a mano non è facile e questi parametri non vengono regolati quando l'utente ridimensiona il modulo. Effettivamente la situazione è anche peggiore, poiché non puoi assumere che un dato modulo richieda un dato spazio perché gli utenti utilizzano diverse dimensioni dei caratteri e risoluzioni dello schermo. </para>
      <!--
      <para>
        The following example presents a form where text fields and labels were
        placed by hand. Some of them cannot fit in the form's window.
      </para>
      <screenshot>
        <screeninfo
>An example form with widgets that cannot not fit in the window</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_08_form_no_fit.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>An example form with widgets that cannot not fit in the window</phrase>
          </textobject>
        </mediaobject>
      </screenshot
>-->
      <para
>L'uso di strumenti speciali chiamati disposizioni degli oggetti, può aiutare a disporre gli oggetti del modulo. La disposizione degli oggetti è un'azione che prevede il raggruppamento di due o più oggetti in modo tale che essi siano ben posizionati ed abbiamo dimensioni appropriate. </para>
      <para
>L'uso di schemi di disposizione in un modulo migliora l'allineamento. Inoltre, lo spazio è utilizzato in maniera migliore. I campi di testo sono più vicini tra di loro, la spaziatura è costante. </para>
      <!--<screenshot>
        <screeninfo
>Example form with layout used</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_08_form_well_fit.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>Example form with layout used</phrase>
          </textobject>
        </mediaobject>
      </screenshot
>-->
      <para
>Ci sono due metodi per creare una disposizione degli oggetti.</para>
      <itemizedlist>
        <listitem>
          <para
>Seleziona due o più oggetti che dovrebbero essere posizionati nella stessa disposizione, e selezionane una dalla voce <guilabel
>Disponi gli oggetti</guilabel
> nel menu contestuale. </para>
        </listitem>
        <listitem>
          <para
>Fai clic su un oggetto contenitore (o la superficie stessa di un modulo) dove sono inseriti gli oggetti e seleziona una delle disposizioni dal menu contestuale Disponi gli oggetti. Tutti gli oggetti che esistono all'interno del contenitore o del modulo, che si trovano allo stesso livello, verranno collocati nello stesso schema di disposizione. </para>
        </listitem>
      </itemizedlist>
      <para
>In ognuno di questi casi puoi anche usare il menu <menuchoice
><guimenu
>Formato</guimenu
><guimenuitem
>Disponi gli oggetti</guimenuitem
></menuchoice
>. </para>
      <!--<screenshot>
        <screeninfo
>Selecting widgets that will be put into a layout</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_08_form_layout_selecting.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>Selecting widgets that will be put into a layout</phrase>
          </textobject>
        </mediaobject>
      </screenshot>
      <screenshot>
        <screeninfo
>Four widgets are selected</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_08_form_layout_selected.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>Four widgets are selected</phrase>
          </textobject>
        </mediaobject>
      </screenshot>
      <screenshot>
        <screeninfo
>Using the context menu for putting the widgets into a grid layout</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_08_form_layout_popup.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>Using the context menu for putting the widgets into a grid layout</phrase>
          </textobject>
        </mediaobject>
      </screenshot
>-->
      <para
>La disposizione degli oggetti viene presentata nella vista design usando un riquadro con bordi tratteggiati di colore blu, verde o rossi. Questa linea viene mostrata solamente nella vista design del modulo. </para>
      <!--<screenshot>
        <screeninfo
>Widgets within a grid layout</screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="img/05_04_08_form_layout_grid.png" format="PNG"/>
          </imageobject>
          <textobject>
            <phrase
>Widgets within a grid layout</phrase>
          </textobject>
        </mediaobject>
      </screenshot
>-->
      <para
>Oltre alla tipologia a griglia, ci sono altri due tipi di disposizione degli oggetti.</para>
      <variablelist>
        <varlistentry>
          <term
>verticale</term>
          <listitem>
            <para
>Disposizione verticale degli oggetti</para>
            <!--<screenshot>
              <screeninfo
>Vertical widget layout</screeninfo>
              <mediaobject>
                <imageobject>
                  <imagedata fileref="img/05_04_08_form_layout_vertical.png" format="PNG"/>
                </imageobject>
                <textobject>
                  <phrase
>Vertical widget layout</phrase>
                </textobject>
              </mediaobject>
            </screenshot
>-->
          </listitem>
        </varlistentry>
        <varlistentry>
          <term
>orizzontale</term>
          <listitem>
            <para
>Disposizione orizzontale degli oggetti</para>
            <!--<screenshot>
              <screeninfo
>Horizontal widget layout</screeninfo>
              <mediaobject>
                <imageobject>
                  <imagedata fileref="img/05_04_08_form_layout_horizontal.png" format="PNG"/>
                </imageobject>
                <textobject>
                  <phrase
>Horizontal widget layout</phrase>
                </textobject>
              </mediaobject>
            </screenshot
>-->
          </listitem>
        </varlistentry>
        <!-- TODO podzia poziomy / pionowy 
         <br
><img src="img/05_04_08_form_layout_vertical_splitter.png">
         <br
><br>
         <br
><img src="img/05_04_08_form_layout_horizontal_splitter.png">
         <br
><br>
        </li
> -->
      </variablelist>

      <sect3 id="springs-in-widget-layouts">
        <title
>Molle nelle disposizioni di oggetti</title>
        <para
>Una <emphasis
>molla</emphasis
> in una disposizione di oggetti è un elemento speciale ed invisibile che permette di regolare la posizione e la dimensione di un oggetto all'interno della disposizione. Tale molla allunga o comprime un oggetto nella parte destra, alta, bassa o sinistra del modulo, in modo tale che abbia la dimensione e posizione desiderate. </para>
        <para
>Per usare una molla:</para>
        <procedure>
          <step>
            <para
>Seleziona l'icona della molla dalla barra degli strumenti <guilabel
>Oggetti</guilabel
>. </para>
          </step>
          <step>
            <para
>Fai clic su un punto del modulo per inserire la molla.</para>
          </step>
        </procedure>
        <!--<para>
          For the following example, the spring has been inserted on the left
          hand of the text label "Persons". The label is thus displayed on the
          right hand of the form. To make the spring work, it has been put into
          a common horizontal layout with the label.
        </para>
        <screenshot>
          <screeninfo
>Horizontal layout containing a spring and a text label</screeninfo>
          <mediaobject>
            <imageobject>
              <imagedata fileref="img/05_04_08_form_spring.png" format="PNG"/>
            </imageobject>
            <textobject>
              <phrase
>Horizontal layout containing a spring and a text label</phrase>
            </textobject>
          </mediaobject>
        </screenshot
>-->
        <para
>Per far funzionare le molle devi creare un oggetto disposizione globale, cioè una disposizione per lo stesso modulo. A questo punto, le molle possono usare i bordi del modulo come limite per l'espansione. </para>
      </sect3>
      <!--
      
      TODO: The entire text in this section is built around a screenshot
            example, so it's commented out for now.

      <sect3 id="advanced-widget-layouts">
        <title
>Advanced widget layouts</title>
        <para>
          Widget layouts can be combined (or nested). On the following example
          you can identify two nested layouts:
        </para>
        <orderedlist>
          <listitem>
            <para>
              Horizontal layout with a spring, aligning the <literal
>Persons</literal>
              text label to the right.
            </para>
          </listitem>
          <listitem>
            <para
>Grid layout grouping widgets on the whole form.</para>
          </listitem>
        </orderedlist>
        <screenshot>
          <screeninfo
>Two widget layouts combined: horizontal layout inside of a grid layout</screeninfo>
          <mediaobject>
            <imageobject>
              <imagedata fileref="img/05_04_08_form_advanced_layout.png" format="PNG"/>
            </imageobject>
            <textobject>
              <phrase
>Two widget layouts combined: horizontal layout inside of a grid layout</phrase>
            </textobject>
          </mediaobject>
        </screenshot>
        <para>
          The horizontal layout is treated in the example as a single widget by
          the grid layout - it takes exactly one <quote
>cell</quote
> of the grid.
          After opening a form designed this way in the data view, you can notice
          (by resizing the form) that:
        </para>
        <itemizedlist>
          <listitem>
            <para>
              <literal
>Persons</literal
> text label thanks to the spring used is constantly
              aligned to the to the right side of the form.
            </para>
          </listitem>
          <listitem>
            <para>
              Text fields take all of the available width thanks to putting them
              into the grid layout.
            </para>
          </listitem>
          <listitem>
            <para>
              All the form's widgets are pushed to the top thanks to the spring
              used at the bottom of the form.
            </para>
          </listitem>
        </itemizedlist>
        <screenshot>
          <screeninfo
>The form using the two layouts displayed in data view</screeninfo>
          <mediaobject>
            <imageobject>
              <imagedata fileref="img/05_04_08_form_advanced_layout_view.png" format="PNG"/>
            </imageobject>
            <textobject>
              <phrase
>The form using the two layouts displayed in data view</phrase>
            </textobject>
          </mediaobject>
        </screenshot>
      </sect3
>-->

      <sect3 id="removing-widget-layouts">
        <title
>Rimuovere le disposizioni degli oggetti</title>
        <para
>Per rimuovere la disposizione degli oggetti senza rimuovere gli oggetti, esegui una delle seguenti azioni: </para>
        <itemizedlist>
          <listitem>
            <para
>Fai clic con il pulsante <mousebutton
>destro</mousebutton
> del mouse sul bordo della schema di disposizione e seleziona il comando <guimenuitem
>Spezza la disposizione</guimenuitem
> dal menu contestuale. </para>
          </listitem>
          <listitem>
            <para
>Fai clic con il pulsante <mousebutton
>sinistro</mousebutton
> del mouse sul bordo dello schema di disposizione e seleziona <menuchoice
><guimenu
>Formato</guimenu
><guimenuitem
>Spezza la disposizione</guimenuitem
></menuchoice
> dal menu dei comandi. </para>
          </listitem>
        </itemizedlist>
        <note>
          <para
>Rimuovendo la disposizione degli oggetti usando il comando <guimenuitem
>Spezza la disposizione</guimenuitem
> non verranno rimossi gli oggetti in essa contenuti. Se vuoi rimuovere anche gli oggetti, seleziona semplicemente lo schema di disposizione facendo clic sul suo bordo e premi il tasto <keycap
>Canc</keycap
> oppure usa il comando <menuchoice
><guimenu
>Modifica</guimenu
><guimenuitem
>Elimina</guimenuitem
></menuchoice
> o il comando del menu contestuale. </para>
        </note>
      </sect3>

      <sect3 id="size-policies-for-widgets-within-a-layout">
        <title
>Politiche di ridimensionamento degli oggetti in una disposizione</title>
        <para
>Invece di impostare una dimensione fissa per gli oggetti, in &kexi; puoi scegliere tra varie linee guida delle dimensioni degli oggetti. Le <emphasis
>linee guida delle dimensioni</emphasis
> rappresentano una strategia flessibile per controllare come un oggetto viene allungato (o ristretto) in base agli oggetti vicini o allo spazio disponibile nel modulo. </para>
        <para
>Dopo aver posizionato un oggetto in una <emphasis
>disposizione</emphasis
>, in genere vengono assegnate ad ognuno di essi delle linee guida delle dimensioni proporzionali (<guilabel
>Preferita</guilabel
>). Questi oggetti verranno ridimensionati automaticamente con impostazioni preferite, in base al loro tipo ed alla dimensione dell'intero schema di disposizione. Ad esempio, tre pulsanti sistemati in una disposizione orizzontale verranno ridimensionati in modo tale da adattarsi al proprio testo visibile. </para>
        <para
>Per ogni oggetto inserito nel modulo, esistono delle impostazioni per le linee guida delle dimensioni disponibili nell'<interface
>Editor di proprietà</interface
>. Queste impostazioni vengono presentate come un gruppo di proprietà chiamato <guilabel
>Linee guida delle dimensioni</guilabel
>. </para>
        <!--<screenshot>
          <screeninfo
>A group of properties for defining a widget's size policy</screeninfo>
          <mediaobject>
            <imageobject>
              <imagedata fileref="img/05_04_09_size_policy_properties.png" format="PNG"/>
            </imageobject>
            <textobject>
              <phrase
>A group of properties for defining a widget's size policy</phrase>
            </textobject>
          </mediaobject>
        </screenshot
>-->
        <para
>Questo gruppo di proprietà contiene:</para>
        <variablelist>
          <varlistentry>
            <term
><guilabel
>Tipo grandezza orizzontale</guilabel
></term>
            <listitem>
              <para
>che definisce la dimensione orizzontale dell'oggetto,</para>
            </listitem>
          </varlistentry>
          <varlistentry>
            <term
><guilabel
>Tipo grandezza verticale</guilabel
></term>
            <listitem>
              <para
>che definisce la dimensione verticale dell'oggetto,</para>
            </listitem>
          </varlistentry>
          <varlistentry>
            <term
><guilabel
>Allungamento orizzontale</guilabel
></term>
            <listitem>
              <para
>che definisce il grado di attività del <guilabel
>Tipo grandezza orizzontale</guilabel
>, </para>
            </listitem>
          </varlistentry>
          <varlistentry>
            <term
><guilabel
>Allungamento verticale</guilabel
></term>
            <listitem>
              <para
>che definisce il grado di attività del <guilabel
>Tipo grandezza orizzontale</guilabel
> </para>
            </listitem>
          </varlistentry>
        </variablelist>

        <sect4>
          <title
>Valori delle linee guida delle dimensioni</title>
          <para
>I seguenti valori sono disponibili nel menu a discesa per le proprietà <guilabel
>Tipo grandezza orizzontale</guilabel
> e <guilabel
>Tipo grandezza verticale</guilabel
> nell'<interface
>editor di proprietà</interface
>: </para>
          <variablelist>
            <varlistentry>
              <term
><guilabel
>Fisso</guilabel
></term>
              <listitem>
                <para
>questo valore significa che l'oggetto non potrà essere ridimensionato automaticamente; dovrebbe mantenere le dimensioni costanti definite al momento del design (larghezza o altezza), </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><guilabel
>Minimo</guilabel
></term>
              <listitem>
                <para
>questo valore significa che la dimensione originale dell'oggetto è impostato al minimo possibile, è sufficiente e non c'è bisogno di espandere l'oggetto, ma verrà ridimensionato se necessario. Questo tipo di linee guida può essere utilizzato per forzare l'espansione di un oggetto all'intera larghezza o altezza, specialmente se hai impostato un valore per l'allungamento maggiore di 0. </para>
                <!--<screenshot>
                  <screeninfo
>Text field and two buttons within a grid layout (Minimum horizontal size policy is set for both buttons, so these are slightly wider than needed)</screeninfo>
                  <mediaobject>
                    <imageobject>
                      <imagedata fileref="img/05_04_09_size_policy_minimum.png" format="PNG"/>
                    </imageobject>
                    <textobject>
                      <phrase
>Text field and two buttons within a grid layout (Minimum horizontal size policy is set for both buttons, so these are slightly wider than needed)</phrase>
                    </textobject>
                  </mediaobject>
                </screenshot
>-->
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><guilabel
>Massimo</guilabel
></term>
              <listitem>
                <para
>questo valore significa che le dimensioni originali dell'oggetto vengono impostate al massimo possibile e che possono essere ridotte senza annullare l'usabilità e la leggibilità dell'oggetto, se altri oggetti hanno bisogno di più spazio, </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><guilabel
>Preferito</guilabel
></term>
              <listitem>
                <para
>questo valore significa che le dimensioni originali dell'oggetto sono le migliori e le preferite; l'oggetto può essere ridotto o espanso, tuttavia, e rimarrà leggibile, </para>
                <!--<screenshot>
                  <screeninfo
>Text field and two buttons within a grid layout (Preferred horizontal size policy is set for both buttons)</screeninfo>
                  <mediaobject>
                    <imageobject>
                      <imagedata fileref="img/05_04_09_size_policy_preferred.png" format="PNG"/>
                    </imageobject>
                    <textobject>
                      <phrase
>Text field and two buttons within a grid layout (Preferred horizontal size policy is set for both buttons)</phrase>
                    </textobject>
                  </mediaobject>
                </screenshot
>-->
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><guilabel
>Espansione</guilabel
></term>
              <listitem>
                <para
>questo valore significa che le dimensioni originali dell'oggetto sono ragionevoli ma che l'oggetto può essere anche ridotto; può anche essere espanso per occupare tutto lo spazio possibile, </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><guilabel
>Espansione minima</guilabel
></term>
              <listitem>
                <para
>questo valore significa che le dimensioni originali dell'oggetto sono permesse; può essere espanso per occupare tutto lo spazio possibile, </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><guilabel
>Ignorato</guilabel
></term>
              <listitem>
                <para
>questo valore significa che le dimensioni originali dell'oggetto vengono ignorate; l'oggetto può essere espanso per occupare tutto lo spazio possibile ma gli altri oggetti in genere non glielo permetteranno </para>
              </listitem>
            </varlistentry>
          </variablelist>
          <para
>Tipi di oggetti diversi hanno diverse linee guida delle dimensioni predefinite; ad esempio, gli oggetti pulsante hanno linee guida delle dimensioni impostate a <guilabel
>Minimo</guilabel
> (in entrambe le direzioni), mentre gli oggetti campo di testo hanno le linee guida delle dimensioni verticali impostate a <guilabel
>Fisso</guilabel
>. </para>
          <para
>Le linee guida delle dimensioni più utilizzate sono <guilabel
>Preferito</guilabel
>, <guilabel
>Minimo</guilabel
> e <guilabel
>Massimo</guilabel
>. </para>
        </sect4>

        <sect4>
          <title
>Allungamento verticale e orizzontale</title>
          <para
>Le proprietà <guilabel
>Allungamento verticale</guilabel
> e <guilabel
>Allungamento orizzontale</guilabel
> accettano valori interi maggiori od uguali a 0. Queste proprietà permettono di regolare il comportamento delle linee guida delle dimensioni. Il valore predefinito per esse è 0. Un valore più alto di allungamento significa che l'oggetto verrà espanso più di oggetti che hanno valori di allungamento inferiori. </para>
          <!--<screenshot>
            <screeninfo
>Size of button widgets affected by setting Vertical Stretch property of the second button to 1</screeninfo>
            <mediaobject>
              <imageobject>
                <imagedata fileref="img/05_04_09_size_policy_vertical_stretch.png" format="PNG"/>
              </imageobject>
              <textobject>
                <phrase
>Size of button widgets affected by setting Vertical Stretch property of the second button to 1</phrase>
              </textobject>
            </mediaobject>
          </screenshot
>-->
        </sect4>
      </sect3>
    </sect2>

    <sect2 id="setting-widgets-size-and-position-by-hand">
      <title
>Impostare la dimensione degli oggetti e posizionarli a mano</title>
      <para
>Nel caso in cui il tuo modulo non abbia una disposizione principale impostata per il posizionamento ed il ridimensionamento automatico degli oggetti, vorrai probabilmente modificare la posizione e la dimensione degli oggetti in modo tale che il modulo appaia più ordinato e sia più facile da usare. Il designer dei moduli di &kexi; semplifica questo compito offrendo i seguenti gruppi di comandi: </para>
      <itemizedlist>
        <listitem>
          <para
>Regolare le dimensioni degli oggetti selezionati. Questi comandi sono disponibili nel sottomenu <menuchoice
><guimenu
>Formato</guimenu
><guisubmenu
>Regola la dimensione degli oggetti</guisubmenu
></menuchoice
> della barra dei menu e nel sottomenu <menuchoice
><guisubmenu
>Regola la dimensione degli oggetti</guisubmenu
></menuchoice
> del menu contestuale. È anche disponibile il menu a discesa <guibutton
>Regola la dimensione degli oggetti</guibutton
> nella barra degli strumenti. </para>
          <variablelist>
            <varlistentry>
              <term
><!--<img src="img/aofit.png" class="icon"
>--><guilabel
>Adatta</guilabel
></term>
              <listitem>
                <para
>Le dimensioni degli oggetti selezionati verranno alterate in modo tale che ognuno di essi sia adattato alla sua dimensione preferita e ad i suoi contenuti; ad esempio, la dimensione del testo di un'etichetta verrà modificata per adattarsi al suo testo. La posizione dell'oggetto non verrà modificata. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aogrid.png" class="icon"
>--><guilabel
>Alla griglia</guilabel
></term>
              <listitem>
                <para
>Le dimensioni degli oggetti selezionati verranno alterate in modo tale che un angolo di ogni oggetto sia posizionato su un punto della griglia del modulo (o di un altro contenitore). La posizione dell'oggetto può essere modificata leggermente. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aoshortest.png" class="icon"
>--><guilabel
>Al più corto</guilabel
></term>
              <listitem>
                <para
>L'altezza degli oggetti selezionati verrà alterata in modo tale che ognuno di essi abbia altezza pari a quello più corto. La posizione degli oggetti non verrà modificata. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aotallest.png" class="icon"
>--><guilabel
>Al più alto</guilabel
></term>
              <listitem>
                <para
>L'altezza degli oggetti selezionati verrà alterata in modo tale che ognuno di essi abbia altezza pari a quello più alto. La posizione degli oggetti non verrà modificata. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aonarrowest.png" class="icon"
>--><guilabel
>Al più stretto</guilabel
></term>
              <listitem>
                <para
>La larghezza degli oggetti selezionati verrà alterata in modo tale che ognuno di essi abbia larghezza pari a quello più stretto. La posizione degli oggetti non verrà modificata. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aowidest.png" class="icon"
>--><guilabel
>Al più largo</guilabel
></term>
              <listitem>
                <para
>La larghezza degli oggetti selezionati verrà alterata in modo tale che ognuno di essi abbia larghezza pari a quello più largo. La posizione degli oggetti non verrà modificata. </para>
              </listitem>
            </varlistentry>
          </variablelist>
        </listitem>
        <listitem>
          <para
>Allineare le posizioni degli oggetti selezionati. I comandi sono disponibili nel sottomenu <menuchoice
><guimenu
>Formato</guimenu
><guisubmenu
>Allinea la posizione degli oggetti</guisubmenu
></menuchoice
> della barra dei menu e nel sottomenu <menuchoice
><guisubmenu
>Allinea la posizione degli oggetti</guisubmenu
></menuchoice
> del menu contestuale. È anche disponibile il pulsante a discesa <guibutton
>Allinea la posizione degli oggetti</guibutton
> nella barra degli strumenti. </para>
          <variablelist>
            <varlistentry>
              <term
><!--<img src="img/aoleft.png" class="icon"
>--><guilabel
>A sinistra</guilabel
></term>
              <listitem>
                <para
>Tutte le posizioni sinistre degli oggetti selezionati verranno spostate alla posizione del bordo sinistro dell'oggetto più a sinistra. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aoright.png" class="icon"
>--><guilabel
>A destra</guilabel
></term>
              <listitem>
                <para
>Tutte le posizioni destre degli oggetti selezionati verranno spostate alla posizione del bordo destro dell'oggetto più a destra. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aotop.png" class="icon"
>--><guilabel
>In alto</guilabel
></term>
              <listitem>
                <para
>Tutte le posizioni in alto degli oggetti selezionati verranno spostate alla posizione del bordo superiore dell'oggetto più in alto. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aobottom.png" class="icon"
>--><guilabel
>In basso</guilabel
></term>
              <listitem>
                <para
>Tutte le posizioni in basso degli oggetti selezionati verranno spostate alla posizione del bordo inferiore dell'oggetto più in basso. </para>
              </listitem>
            </varlistentry>
            <varlistentry>
              <term
><!--<img src="img/aopos2grid.png" class="icon"
>--><guilabel
>Alla griglia</guilabel
></term>
              <listitem>
                <para
>Gli angoli in alto a sinistra di tutti gli oggetti selezionati verranno spostati in modo tale che si trovino posizionati sul punto più vicino della griglia. </para>
              </listitem>
            </varlistentry>
          </variablelist>
          <para
>Nessuno dei comandi precedenti ridimensiona gli oggetti.</para>
        </listitem>
      </itemizedlist>
      <para
>Sono disponibili anche comandi aggiuntivi: <guimenuitem
>Porta l'oggetto in primo piano</guimenuitem
> (cioè sopra gli altri) e <guimenuitem
>Manda l'oggetto in fondo</guimenuitem
> (cioè dietro gli altri). Questi due comandi vengono usati raramente, poiché non è comune posizionare un oggetto sopra un altro (eccetto quando un contenitore racchiude altri oggetti al suo interno). Nota anche che è sufficiente fare clic su un oggetto con il mouse per portarlo in primo piano. </para>
    </sect2>

    <sect2 id="setting-the-tab-order">
      <title
>Impostare l'ordine delle tabulazioni</title>
      <para
>Il fuoco dell'oggetto determina la disponibilità di attivarlo usando la tastiera. Il fuoco è legato agli oggetti mostrati nella vista dati del modulo. Esattamente un solo oggetto può ottenere il fuoco in un determinato momento. L'uso più frequente del fuoco è l'inserimento di un testo (quando un dato campo di testo è attivo, cioè ha ottenuto il fuoco). Un altro esempio è un oggetto pulsante - quando è attivato, è possibile <quote
>premerlo</quote
> usando il tasto <keycombo action="press"
><keycap
>Invio</keycap
></keycombo
> oppure <keycombo action="press"
><keycap
>Spazio</keycap
></keycombo
> al posto di un pulsante del mouse. </para>
      <para
>Ci sono alcuni metodi per rendere attivi degli oggetti (spostando il fuoco sull'oggetto): fare clic con un pulsante del mouse, usando la rotella del mouse sull'oggetto, oppure usando il tasto <keycombo action="press"
><keycap
>Tab</keycap
></keycombo
>. L'ultimo metodo è spesso usato per la sua velocità e convenienza per gli utenti. La disponibilità dei metodi di acquisizione del fuoco è controllata dalla proprietà <guilabel
>Linee guida di fuoco</guilabel
> di un dato oggetto. </para>
      <para
>C'è una relazione tra la consegna del fuoco (attivazione) agli oggetti usando il tasto <keycombo action="press"
><keycap
>Tab</keycap
></keycombo
> e l'impostazione dell'ordine delle tabulazioni di un modulo. Dopo aver premuto il tasto <keycombo action="press"
><keycap
>Tab</keycap
></keycombo
>, il prossimo oggetto dovrebbe essere attivo, quindi il modulo dovrebbe conoscere l'ordine delle schede. </para>
      <para
>Per modificare l'ordine delle tabulazioni per un oggetto di un modulo:</para>
      <procedure>
        <step>
          <para
>Passa alla vista design del modulo.</para>
        </step>
        <step>
          <para
>Esegui il comando <menuchoice
><guimenu
>Modifica</guimenu
><guimenuitem
>Modifica l'ordine delle tabulazioni</guimenuitem
></menuchoice
>. Apparirà la finestra di dialogo <guilabel
>Modifica l'ordine delle tabulazioni</guilabel
> con le impostazioni per questo modulo. </para>
          <!--<screenshot>
            <screeninfo
>A window for editing tab order for a form</screeninfo>
            <mediaobject>
              <imageobject>
                <imagedata fileref="img/05_04_11_tab_stop_dialog.png" format="PNG"/>
              </imageobject>
              <textobject>
                <phrase
>A window for editing tab order for a form</phrase>
              </textobject>
            </mediaobject>
          </screenshot
>-->
          <para
>La finestra contiene una lista con due colonne: la prima colonna mostra i nomi degli oggetti, la seconda i tipi di oggetti. Per rendere più semplice per l'utente il riconoscimento del significato dei nomi e dei tipi, vengono mostrate anche delle icone relative ai tipi. La lista contiene solo oggetti che hanno linee guida del fuoco che permettono l'uso del tasto <keycap
>Tab</keycap
>. La finestra ti permette di modificare l'ordine delle tabulazioni o di impostare un ordine automatico. </para>
        </step>
        <step>
          <para
>Per modificare l'ordine delle tabulazioni puoi:</para>
          <itemizedlist>
            <listitem>
              <para
>Fare clic sul nome dell'oggetto selezionato nella lista degli oggetti e trascinarlo in una posizione desiderata (in alto o in basso) usando il mouse. </para>
            </listitem>
            <listitem>
              <para
>Fare clic sul nome dell'oggetto selezionato nella lista degli oggetti ed usare i pulsanti <guibutton
>Sposta in alto</guibutton
> o <guibutton
>Spostai in basso</guibutton
>, per spostare gli oggetti in una posizione desiderata. </para>
            </listitem>
            <listitem>
              <para
>Fai clic sulla casella a scelta <guilabel
>Gestisci automaticamente i tabulatori</guilabel
> per impostare un ordine automatico delle tabulazioni nel modulo. Se questa opzione è stata attivata, qualsiasi modifica apportata a mano alla lista di oggetti non viene presa in considerazione - &kexi; gestirà l'ordine delle tabulazioni da solo. L'ordinamento automatico significa che l'oggetto in alto a sinistra verrà attivato per primo (oppure quello in altro a destra se il tuo sistema operativo usa uno schema da destra a sinistra), e l'ordine va da sinistra a destra (o da destra a sinistra, rispettivamente) e dall'alto verso il basso. </para>
              <!--<screenshot>
                <screeninfo
>Automatic tab order for a form</screeninfo>
                <mediaobject>
                  <imageobject>
                    <imagedata fileref="img/05_04_11_auto_tab_stop.png" format="PNG"/>
                  </imageobject>
                  <textobject>
                    <phrase
>Automatic tab order for a form</phrase>
                  </textobject>
                </mediaobject>
              </screenshot
>-->
            </listitem>
          </itemizedlist>
        </step>
        <step>
          <para
>Fai clic sul pulsante <guibutton
>OK</guibutton
> per confermare le modifiche o sul pulsante <guibutton
>Annulla</guibutton
> per annullarle. </para>
        </step>
      </procedure>
    </sect2>
  </sect1>
