/************************************************************************
* Copyright (C) 19aa Claudio Reggiani alias Nophiq *
* Questo programma è software libero; è lecito ridistribuirlo e/o *
* modificarlo secondo i termini della Licenza Pubblica Generica GNU *
* come pubblicata dalla Free Software Foundation; o la versione 2 *
* della licenza o (a scelta) una versione successiva. *
* *
* Questo programma è distribuito nella speranza che sia utile, ma *
* SENZA ALCUNA GARANZIA; senza neppure la garanzia implicita di *
* COMMERCIABILITÀ o di APPLICABILITÀ PER UN PARTICOLARE SCOPO. Si *
* veda la Licenza Pubblica Generica GNU per avere maggiori dettagli. *
* *
* Ognuno dovrebbe avere ricevuto una copia della Licenza Pubblica *
* Generica GNU insieme a questo programma; in caso contrario, la si *
* può ottenere dalla Free Software Foundation, Inc., 675 Mass Ave, *
* Cambridge, MA 02139, Stati Uniti. *
* *
* Per contattarmi attraverso posta elettronica: nophiq@virgilio.it *
************************************************************************/
package albero;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
/**
*
* @author nophiq
*/
/** Creates a new instance of Guide */
public Guide() {
this.setTitle("Tutorial");
panel.setEditable(false);
panel.setLineWrap(true);
panel.setWrapStyleWord(true);
barrePanel.
setVerticalScrollBarPolicy(JScrollPane.
VERTICAL_SCROLLBAR_ALWAYS);
barrePanel.
setHorizontalScrollBarPolicy(JScrollPane.
HORIZONTAL_SCROLLBAR_NEVER);
barrePanel.
setMinimumSize(new Dimension(600, 500
));
barrePanel.
setPreferredSize(new Dimension(600, 500
));
chiudi.addActionListener(this);
this.addTextTutorial(panel);
this.pack();
this.setVisible(true);
}
jt.append("Questo programma (beta) è il risultato dell'intenzione di realizzare un programma " +
"che apprenda nuove conoscenze. Il suo ambito sono le gerarchie famigliari. I linguaggi di programmazione " +
"utilizzati sono stati Java e Prolog (integrato a Java attraverso le librerie tuProlog).\n\n" +
"In questo tutorial spiegherò brevemente come utilizzare il programma:\n" +
"- File > Nuovo => Svuota il programma da qualsiasi dato che l'utente ha inserito e vengono caricate le funzioni base presenti nel database.\n" +
"- File > Carica => Permette di caricare un file .pl dove sono presenti le regole della vostra gerarchia.\n" +
"- File > Salva => Permette di salvare in un file il database del programma. Deve avere necessariamente estensione .pl\n" +
"- File > Exit => Esce dal programma.\n\n" +
"- Aggiungi > Aggiungi Membro => Inserisci nel database un nuovo membro della famiglia.\n" +
"- Aggiungi > Aggiungi Relazione => Metti in relazioni i membri della famiglia con altri.\n" +
"- Aggiungi > Crea Relazione => Permette di creare delle nuove relazioni parentali, il programma conosce all'inizio " +
"solamente le relazioni 'padre', 'madre', 'marito', la vostra sarà in relazione a queste tre basilari. Potete dare il " +
"nome che volete alla nuova relazione. Per dare una miglior definizione della vostra nuova relazione, potete creare" +
"la stessa relazione più volte ma con membri differenti, in questo modo verranno elaborati diversi percorsi che" +
"soddisferanno la nuova relazione.\n\n" +
"- Visualizza > Elabora Gerarchia => Rappresenta il grafico delle parentele; ogni riga della virtuale tabella " +
"corrisponde ad una determinata generazione. La lettura del grafico è intuitivo.\n" +
"- Query > Esegui Query => La parte più interessante del programma; qui potete letteralmente porre delle domande " +
"al programma. Esempio: la query 'father X Y' mi riporta ogni relazione in cui X è padre di Y. Potete notare come X " +
"ed Y siano variabili, potete sostituire queste con dei nomi presenti nelle vostre parentele. Esempio: la query " +
"'father giovanni Y', riporta tutte le relazioni in cui giovanni è padre di qualcuno. Ovviamente potete eseguire " +
"delle query anche sulle relazioni che avete realizzato voi. Attenzione però perchè la relazione, per esempio, " +
"'nonno' ad una prima elaborazione può essere intesa come il nonno del padre! E non della madre!\n\n" +
"Buon divertimento\n\n" +
"Autore: Claudio Reggiani\n" +
"Alias: Nophiq\n" +
"Mail: nophiq@virgilio.it");
}
if (src == chiudi) this.dispose();
}
int src = e.getKeyCode();
if (src
== KeyEvent.
VK_ENTER) this.
dispose();
}
}