# &rocs;i käsiraamat

## Sissejuhatus

&rocs;i eesmärk on olla graafiteooria arenduskeskkond, mis aitab professoritel kuvada graafialgoritmi tulemusi ning tudengitel iseseisvalt algoritme koostada.

&rocs;il on oma skriptimoodul, mille aluseks on Qt Script, mis teeb koostööd kujutatud graafiga, nii et iga graafiga seotud skriptis tehtud muudatus kajastub kohe ka näidataval graafil.

## &rocs;i kasutamine

Kasutajaliides jaguneb kaheks:

- ülal paremal kuvatakse graafi, all paremal aga saab luua algoritmi,

- vasakul külgribal on näha kõik avatud graafid (graafe võib ühes failis olla ka mitu).

### &rocs;i globaalsed seadistused

Vasakul külgribal leiab valikud kõigi avatud graafide jaoks. Kõik need on globaalsed iga graafi jaoks ning neid võib muuda tipu või seose jaoks vastavalt tipu või seose omaduste dialoogis.

- Graafi nimi

- Tipu värv uute tippude jaoks: klõpsuga nupule Kõik saab muuta kõigi aktiivsete tippude värvi

- Seose värv

Valikute viimane rida sisaldab klõpsatavaid nuppe:

- Nimede näitamise koht Tipud või Seosed

- Väärtuste näitamise koht Tipud või Seosed

### &rocs;i tööriistaribad

Ülal asub kaks tööriistariba. Peamisel tööriistaribal on järgmised tööriistad:

- Liiguta tippu: võimaldab liigutada tippu joonistusalal.

- Lisa tipp Node: loob uue tipu kohta, kus joonistusalal klõpsad.

- Lisa seos: loob uue seose kahe tipu vahele.

- Vali: võimaldab valida elemente neil klõpsates.

- Kustuta: võimaldab kustutada elemente neil klõpsates.

- Joondamistööriistadega saab asetada valitud tippe.

Hiire parema nupuga tipul või seosel klõpsates saab avada selle tipu või seose omaduste dialoogi.

Paigutusriba koosneb mitmest joondamisikoonist.

Tippude joondamiseks vali tööriist Vali, klõpsa ja joonista lohistades ristkülik ning seejärel vali vajalik joondus.

## &rocs;i skriptimine

Kui graaf on juba ekraanil, saab hakata selle jaoks skripti looma. Vastav keel kasutab JavaScripti süntaksit. Järgnevalt on ära toodud graafi, tipu ja seose objektid.

### Graaf

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

Graafi muutujad, mida saab muuta:

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

### Tipud

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

Tipu muutujad:

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

### Seosed

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

        node start();
        node  end();

        void self_remove();

### Näide

Selle on lihtne näidisskript, mis määrab kindlaks esimese graafi nelja esimese tipu värvi:

    /* A simple example that sets the color of the 4 first nodes in the first
    graph: */

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

    /* graphs is an array of graphs, you can access a graph by its index in the
    array or by its name, so if the first graph's name is Untitled0, the following
    sentence are right  */
    var list1= graphs[0].list_nodes(); //  1st form.
    var list2=Untitled0.list_nodes();              // 2nd form

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

## Käskude seletused

### Menüüd ja kiirklahvid

#### Menüü Fail

&Ctrl;Q Fail Välju

- Lõpetab &rocs;i töö

#### Menüü Seadistused

Seadistused Näidatavad tööriistaribad

- Lülitab peamise ja paigutuse tööriistariba näitamise sisse ja välja.

Seadistused Olekuriba näitamine

- Lülitab olekuriba näitamise sisse ja välja.

Seadistused Kiirklahvide seadistamine...

- Avab &kde; standardse kiirklahvide seadistamise dialoogi, kus saab määrata toimingutele kiirklahve.

Seadistused Tööriistaribade seadistamine...

- Võimaldab seadistada tööriistaribade välimust.

#### Menüü Abi

&help.menu.documentation;

## Autorid ja litsents

&rocs;

Rakenduse autoriõigus 2009: Tomaz Canabrava tcanabrava at kde dot org

Dokumentatsiooni autoriõigus 2009: &Anne-Marie.Mahfouf; &Anne-Marie.Mahfouf.mail; ja Tomaz Canabrava tcanabrava at kde dot org

Tõlge eesti keelde: Marek Laane bald@smail.ee

&underFDL; &underGPL;

## Paigaldamine

### &rocs;i hankimine

&install.intro.documentation;

### Kompileerimine ja paigaldamine

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