// // // Generated by StarUML(tm) Java Add-In // // @ Project : Untitled // @ File Name : IHM_Acteur.java // @ Date : 20/01/2008 // @ Author : // // package IHM; import Documents.Element; import java.io.*; public class IHM_Acteur { public Gestion.Fabrique gestionnaire = Gestion.Fabrique.getInstance(); public void AfficherDoc() { int ref = 0; System.out.println("Entrez le numero du document à afficher:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); try {ref = new Integer(bfr.readLine());} catch(IOException e) {e.printStackTrace();} try{ Documents.Section doc = (Documents.Section) gestionnaire.getElement(ref); System.out.println(doc.afficherFils());} catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!");} } public Documents.Element getDocument() { int ref = 0; System.out.println("Entrez le numero du document:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); try {ref = new Integer(bfr.readLine());} catch(IOException e) {e.printStackTrace();} try{return gestionnaire.getElement(ref);} catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!");} return null; } public void listeDocuments() { for(int j = 0;j<30;j++) {System.out.println("");} for(int i = 1; i < gestionnaire.documents.size();i++) { Element e = gestionnaire.getElement(i); if(e instanceof Documents.Section) { if(e.getNiveau() == 0) System.out.println(e.afficher()); } } try{new BufferedReader(new InputStreamReader(System.in)).readLine();} catch(IOException e) {} } public void noter() { int ref = 0; System.out.println("Entrez le numero du document à noter:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); try {ref = new Integer(bfr.readLine());} catch(IOException e) {e.printStackTrace();} try{ Element el = gestionnaire.getElement(ref); System.out.println("Entrez la note:"); try {int note = new Integer(bfr.readLine()); el.setCoeff(note); } catch(IOException e) {System.out.println("La note entrée n'est pas correcte!");} } catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!"); } } public void annoter() { int ref = 0; System.out.println("Entrez le numero du document à noter:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); try {ref = new Integer(bfr.readLine());} catch(IOException e) {e.printStackTrace();} try{ Element el = gestionnaire.getElement(ref); System.out.println("Entrez l'annotation:"); try { String annot = bfr.readLine(); el.setAnnotation(annot); } catch(IOException e) {System.out.println("Entrée incorrecte!");} } catch(IndexOutOfBoundsException e) {System.out.println("Element inexistant!"); } } public void creerDocument() { System.out.println("Entrez le titre du document :"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); String titre=""; try { /** Lecture d'une ligne : */ titre = bfr.readLine(); this.gestionnaire.CreateElem(titre); } catch( IOException e ) {System.out.println("Titre incorrect");} } public void supprimerDocument() { Documents.Element el = this.getDocument(); System.out.println("Selectionnez le document cible ****"); Documents.Element cbl = this.getDocument(); if(cbl instanceof Documents.Section) { Documents.Section sec = (Documents.Section) cbl; sec.addElement(el); el.Conteneur.removeElement(el); } else { System.out.println("L'element cible n'est pas une section"); } } public int identifier() { int rep = 1; System.out.println("Pour vous logguer en tant que redacteur, entrez votre code de 3 lettres:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); String code=""; try { /** Lecture d'une ligne : */ code = bfr.readLine(); } catch( IOException e ) {e.printStackTrace();} if(code.equals("RED")) {rep = 2;} else if (code.equals("FIN")) {rep = 3;} return rep; } public static void main(String[] args){ IHM_Acteur ihm = new IHM_Acteur(); jeuDeDonnees(ihm); int type = ihm.identifier(); while(type != 3) { if(type == 1) { ihmLecteur(ihm);} else {ihmRedacteur(ihm);} type= ihm.identifier(); } } public static void ihmLecteur(IHM_Acteur ihm) { String ligne = ""; BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); while(!(ligne.equals("FIN"))) { menuLec(); try { System.out.println("Entrez votre choix: "); ligne = bfr.readLine(); }catch( IOException e ) {e.printStackTrace();} int choix = new Integer(ligne); switch(choix) { case 1: ihm.listeDocuments(); break; case 2: ihm.AfficherDoc(); break; case 3: ihm.annoter(); break; case 4: ihm.noter(); break; case 5: ligne = "FIN"; break; } } } public void creerElement(IHM_Acteur ihm) { String ligne =""; BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); menuElem(); try { System.out.println("Entrez votre choix: "); ligne = bfr.readLine(); }catch( IOException e ) {e.printStackTrace();} int choix = new Integer(ligne); switch(choix) { case 1: ihm.listeDocuments(); break; case 2: ihm.creerSection(); break; case 3: ihm.creerTexte(); break; case 4: ihm.creerImage(); break; case 5: ligne = "FIN"; break; } } public static void ihmRedacteur(IHM_Acteur ihm) { String ligne = ""; BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); while(!ligne.equals("FIN")) { menuRed(); try { System.out.println("Entrez votre choix:"); ligne = bfr.readLine(); int choix = new Integer(ligne); switch(choix) { case 1: ihm.listeDocuments(); break; case 2: ihm.AfficherDoc(); break; case 3: ihm.creerDocument(); break; case 4: ihm.creerElement(ihm); break; case 5: ihm.supprimerDocument(); break; case 6: ligne = "FIN"; break; } }catch( IOException e ) {e.printStackTrace();} } } public void creerSection() { Documents.Section el = (Documents.Section) this.getDocument(); System.out.println("Entrez le titre de la section à ajouter:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); try{String titre = bfr.readLine(); Documents.Section sec= this.gestionnaire.CreateElem(titre); if(sec == null) {return;} el.addElement(sec);} catch(IOException e) {System.out.println("Pas bien!");} } public void creerTexte() { Documents.Section el = (Documents.Section) this.getDocument(); System.out.println("Entrez l'auteur du texte:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); try{String auteur = bfr.readLine(); System.out.println("Saisissez le texte:"); String texte = bfr.readLine(); Documents.Texte txt= this.gestionnaire.CreateElem(texte, auteur); if(txt == null) {return;} el.addElement(txt);} catch(IOException e) {System.out.println("Pas bien!");} } public void creerImage() { Documents.Section el = (Documents.Section) this.getDocument(); System.out.println("Entrez la legende de l'image:"); BufferedReader bfr = new BufferedReader(new InputStreamReader(System.in)); try{String legende = bfr.readLine(); System.out.println("Saisissez la hauteur:"); String hauteur = bfr.readLine(); String largeur = bfr.readLine(); Documents.Figure img= this.gestionnaire.CreateElem(new Integer(hauteur),new Integer(largeur), legende); if(img == null) {return;} el.addElement(img);} catch(IOException e) {System.out.println("Pas bien!");} catch(NumberFormatException nfe) {System.out.println("Faut ecrire des chiffres hein...");} } public static void menuLec() { System.out.println("1: Lister les documents"); System.out.println("2: Afficher un document"); System.out.println("3: Annoter un document"); System.out.println("4: Noter un document"); System.out.println("5: Se déconnecter"); } public static void menuRed() { System.out.println("1: Lister les documents"); System.out.println("2: Afficher un document"); System.out.println("3: Créer un document"); System.out.println("4: Créer un element et l'ajouter"); System.out.println("5: Deplacer un element"); System.out.println("6: Se déconnecter"); } public static void menuElem() { System.out.println("1: Lister les documents"); System.out.println("2: Créer et ajouter une section"); System.out.println("3: Créer et ajouter un texte"); System.out.println("4: Créer et ajouter une image"); System.out.println("5: Revenir au menu"); } /** **/ public static void jeuDeDonnees(IHM_Acteur ihm){ /* Creation du document */ Documents.Section el = ihm.gestionnaire.CreateElem("Chasse à la mouche"); /* Creation d'une section */ Documents.Section el2 = ihm.gestionnaire.CreateElem("Chapitre 1"); el.addElement(el2); /* Ajout de texte */ el2.addElement(ihm.gestionnaire.CreateElem("Prenez un morceau de tissu vaudoux fraîchement récupéré d'un cadavre.","DOSSMANN")); /* Ajout d'image */ el2.addElement(ihm.gestionnaire.CreateElem(150,150,"Image d'un cadavre vaudoux")); Documents.Section el3 = ihm.gestionnaire.CreateElem("Chapitre 2"); el.addElement(el3); el3.addElement(ihm.gestionnaire.CreateElem("Trouvez une mouche")); Documents.Section el4 = ihm.gestionnaire.CreateElem("Chapitre 3"); el.addElement(el4); el4.addElement(ihm.gestionnaire.CreateElem("Lancez le tissu vaudoux au dessus de la mouche et patientez que la mouche vienne se loger dans le tissu, après quoi le tissu prend pleine possession de ladite mouche.","LEVAL")); /* Création d'un autre document */ Documents.Section doc = ihm.gestionnaire.CreateElem("Javana Split"); Documents.Section doc2 = ihm.gestionnaire.CreateElem("Chapitre 1"); doc.addElement(doc2); doc2.addElement(ihm.gestionnaire.CreateElem("Faites une application Java, lancez, cela plante ! Beau Javana Split que nous avons là !","DIVOUX")); } }