# Manuale di &rocs;

## Introduzione

&rocs; punta ad essere uno strumento di sviluppo per la teoria dei grafi, ad aiutare i docenti a mostrare i risultati di un algoritmo su un grafo, e gli studenti a realizzare gli algoritmi.

&rocs; utilizza un modulo per gli script, realizzato in Qt Script, che interagisce con il grafo tracciato; ogni cambiamento apportato al grafo tramite uno script è riportato su quello tracciato.

## Uso di &rocs;

L'interfaccia utente si divide in due parti:

- la parte in alto a destra è dove tracci i grafi, quella in basso a destra è dove crei gli algoritmi,

- la barra laterale sinistra contiene i grafi aperti; ne puoi aprire diversi per ogni file.

### Impostazioni globali di &rocs;

La barra laterale sinistra contiene delle opzioni di ogni grafo aperto; tutte queste opzioni sono globali per il grafo e possono essere cambiate per ogni nodo o arco con la finestra Proprietà del nodo e Proprietà dell'arco.

- Nome del grafo

- Il Colore dei nodi si applica ai nuovi nodi creati; puoi cambiare il colore di tutti nodi presenti facendo clic sul pulsante Tutti.

- Colore degli archi

In fondo ci sono delle caselle:

- Mostra i nomi in: Nodi o Archi.

- Mostra i valori in: Nodi o Archi.

### Barre degli strumenti di &rocs;

In alto ci sono due barre degli strumenti. La principale contiene gli strumenti seguenti:

- Sposta nodo: sposta il nodo nell'area di disegno.

- Aggiungi nodo: aggiunge un nuovo nodo dove si fa clic nell'area di disegno.

- Aggiungi arco: crea un nuovo arco tra due nodi.

- Seleziona: seleziona gli elementi facendoci clic.

- Elimina: elimina gli elementi facendoci clic.

- Usa gli strumenti di allineamento per posizionare i nodi selezionati.

Un clic con il &RMB; su un nodo o un arco presenta la sua finestra delle proprietà.

La barra di disposizione contiene diverse icone per l'allineamento.

Per allineare i nodi, usa lo strumento Seleziona, traccia un rettangolo e scegli l'allineamento che vuoi.

## Script in &rocs;

Una volta che il grafo è sullo schermo, puoi incominciare a creare degli script per manipolarlo. Il linguaggio usa la sintassi di Javascript, e di seguito sono presentati gli oggetti Grafo, Nodo ed Arco.

### Grafo

    array list_nodes();
         array list_edges();
         node add_node(name);
         edge add_edge(da, a);
         node node_byname(QString& name);
         node begin_node();
         array end_nodes();

Variabili modificabili dei grafi:

    bool directed
         bool automate
         string name
         string nodeDefaultColor // in esadecimale
         string edgeDefaultColor  // in esadecimale

### Nodi

    array adj_nodes();
         array adj_edges();
         array  input_edges();
         array output_edges();
         array loop_edges();
         array connected_edges(Node *n);
         void self_remove();

Variabili dei nodi:

    double x
        double y
        double width
        string value
        string name
        string color  // in esadecimale
        bool begin
        bool end

### Archi

    string color ( em hexa )
        string value
        string name
        double width
        string style ( dot, dash, dash dot, solid )

        node start();
        node  end();

        void self_remove();

### Esempio

Qui di seguito un semplice script di esempio che imposta il colore dei primi quattro nodi del primo grafo:

    /* Un semplice esempio che imposta il colore dei primi 4 nodi del primo
    grafo: */

    var colours = new Array("red", "green", "blue", "yellow");

    /* graphs è un array di grafi; puoi accedere ad un grafo con l'indice
    dell'array o il suo nome. Se il grafo si chiama SenzaNome0, le istruzioni
    seguenti sono corrette */
    var list1= graphs[0].list_nodes(); //  prima forma.
    var list2=SenzaNome0.list_nodes();              // seconda forma

     for ( var i = 0; i < colours.length; i++){
            if (i
    > list2.length) break;
            list2[i].color = colours[i]
     }

## Guida ai comandi

### Menu e scorciatoie da tastiera

#### Il menu File

&Ctrl;Q File Esci

- Esce da &rocs;.

#### Il menu Impostazioni

Impostazioni Barre mostrate

- Commuta la visualizzazione delle barre degli strumenti Principale e di Disposizione.

Impostazioni Mostra la barra di stato

- Commuta la visualizzazione della barra di stato.

Impostazioni Configura le scorciatoie

- Apri la finestra standard delle impostazioni di &kde; che permette di scegliere diverse scorciatoie da tastiera per diverse azioni.

Impostazioni Configura le barre degli strumenti

- Configura gli elementi che vuoi mettere nelle barre degli strumenti.

#### Il menu Aiuto

&help.menu.documentation;

## Riconoscimenti e licenza

&rocs;

Copyright del programma 2009 di Tomaz Canabrava, tcanabrava@kde.org

Copyright della documentazione 2009 di &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail; e Tomaz Canabrava tcanabrava@kde.org

Traduzione di Francesco Nigro e Federico Zenithfederico.zenith@member.fsf.org

&underFDL; &underGPL;

## Installazione

### Come ottenere &rocs;

&install.intro.documentation;

### Compilazione e installazione

&install.compile.documentation;
&documentation.index;