Demineur
Demineur
Demineur
jui 17, 09 15:51 Aide.java Page 1/3 jui 17, 09 15:51 Aide.java Page 2/3
import java.lang.Object;
import java.io.*; return panel;
import javax.xml.parsers.*; }
import org.xml.sax.*;
import javax.swing.tree.*; private JPanel bouton(){
import javax.swing.*; JPanel panel = new JPanel();
import org.xml.sax.helpers.*; btnFermer = new JButton("Fermer");
import java.awt.*;
panel.setLayout(new FlowLayout(FlowLayout.RIGHT));
public class Aide{ panel.add(btnFermer);
SAXParserFactory saxParserFactory;
SAXParser saxParser; return panel;
DefaultMutableTreeNode racine; }
DefaultTreeModel dtm;
JTree tree; public Aide(File rep){
HandlerArbre handler;
XMLReader r; // creation de l’arboresence
JFrame maFen; creerArbo(rep);
JEditorPane jep;
JButton btnFermer; // ajout de l’arbre dans la fenetre
AideListener ecouteur; dtm = new DefaultTreeModel(racine);
tree = new JTree(dtm);
private void creerArbo(File rep){
Reader unReader; maFen = new JFrame("Aide");
racine = new DefaultMutableTreeNode("Aide"); JScrollPane jsp = new JScrollPane(tree);
Container c = maFen.getContentPane();
File dossier[] = rep.listFiles(); c.setLayout(new BorderLayout());
for(int i=0; i<dossier.length; i++){ c.add(jsp, BorderLayout.WEST);
try{
c.add(centerPanel(), BorderLayout.CENTER);
saxParserFactory = SAXParserFactory.newInstance(); c.add(bouton(), BorderLayout.SOUTH);
saxParser = saxParserFactory.newSAXParser();
// ecouteur
File fichier = dossier[i]; ecouteur = new AideListener(this);
unReader = new FileReader(fichier); btnFermer.addActionListener(ecouteur);
r = saxParser.getXMLReader(); tree.addTreeSelectionListener(ecouteur);
handler = new HandlerArbre(fichier);
r.setContentHandler(handler); maFen.setSize(400, 500);
maFen.setVisible(true);
r.parse(new InputSource(unReader)); }
}catch(Exception e){}; }
racine.add(handler.getBranche()); class HandlerArbre extends DefaultHandler{
} DefaultMutableTreeNode branche;
} File fichier;
//creer pile
public void chargerEditor(String url){
public HandlerArbre(File f){
fichier = f;
try{ branche = new DefaultMutableTreeNode(fichier.getName());
}
jep.setContentType("text/html");
//System.out.println("−−−> Passe"); public DefaultMutableTreeNode getBranche(){
jep.read(new FileReader(url), null); return branche;
jep.setEditable(false); }
}catch(Exception ioe){/*System.out.println("Erreur");*/}
} public void startDocument(){
//System.out.println("Les balises de " + fichier.getName() + " s
private JPanel centerPanel(){ ont ");
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout()); }
jep = new JEditorPane(); public void endDocument(){
chargerEditor("./Aide/Conseil.htm"); }
JScrollPane jsp = new JScrollPane(jep);
panel.add(jsp, BorderLayout.CENTER); public void startElement(String uri, String locName, String qName, Attri
} /* en haut a gauche */
minesRestantes = new JLabel("00");
public JMenuItem getNouvelle(){ //nord.add(minesRestantes, BorderLayout.WEST);
return nouvelle; nord.add(minesRestantes, gbc);
} /* centre */
go = new JButton();
public JMenuItem getDebutant(){
return debutant; goCool();
} nord.add(go, gbc);
jtp2.add(panelDebutant(), "Debutant");
jtp2.add(panelConfirme(), "Confirme");
jtp2.add(panelExpert(), "Expert");
jtp.add(jtp1, "jtp1");
jtp.add(jtp2, "jtp2");
c.add(jtp, BorderLayout.CENTER);
partie.nouvellePartie(hauteur,largeur,mines);
fenetre.connecterPartie(partie);
}
else{
validation = false;
}
}
public void focusGained(FocusEvent e){ }
public void focusLost(FocusEvent e){
JTextField jtf = (JTextField)e.getSource();
int val = Integer.parseInt(jtf.getText());
if(jtf.equals(jtfMines)){
if(val<NB_MINES_MIN)
jtf.setText(Integer.toString(NB_MINES_MIN));
if(val>NB_MINES_MAX)
jtf.setText(Integer.toString(NB_MINES_MAX));
}
else{
if(val<DIMENSION_MIN)
jtf.setText(Integer.toString(DIMENSION_MIN));
if(val>DIMENSION_MAX)
jtf.setText(Integer.toString(DIMENSION_MAX));
}
}
public boolean getValidation(){return validation;}
public int getLargeur(){return largeur; }