package fenetres; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.Enumeration; import java.util.regex.Matcher; import java.util.regex.Pattern; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JPopupMenu; import javax.swing.JScrollPane; import javax.swing.JSplitPane; import javax.swing.JToggleButton; import javax.swing.JToolBar; import javax.swing.JTree; import javax.swing.UnsupportedLookAndFeelException; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultTreeCellRenderer; import javax.swing.tree.TreeNode; import javax.swing.tree.TreePath; import javax.swing.tree.TreeSelectionModel; import calc.commandes; import fenetres.create_act.actAPropos; import fenetres.create_act.actAbout; import fenetres.create_act.actAddMenuFalse; import fenetres.create_act.actAddMenuTrue; import fenetres.create_act.actAfficheInformationFichierAnalyse; import fenetres.create_act.actAttribut; import fenetres.create_act.actCoefficient; import fenetres.create_act.actCollapseAll; import fenetres.create_act.actCollapseNode; import fenetres.create_act.actDeleteNode; import fenetres.create_act.actDocumentation; import fenetres.create_act.actDownNode; import fenetres.create_act.actEvalNameNodeNon; import fenetres.create_act.actEvalNameNodeOui; import fenetres.create_act.actEvalNamePageNon; import fenetres.create_act.actEvalNamePageOui; import fenetres.create_act.actEvalueFalse; import fenetres.create_act.actEvalueTrue; import fenetres.create_act.actEvaluer; import fenetres.create_act.actEvaluerTousEnfantsFalse; import fenetres.create_act.actEvaluerTousEnfantsTrue; import fenetres.create_act.actExit; import fenetres.create_act.actExpandAll; import fenetres.create_act.actExpandNode; import fenetres.create_act.actNewFichierAnalyse; import fenetres.create_act.actNodeFichier; import fenetres.create_act.actOpen; import fenetres.create_act.actSave; import fenetres.create_act.actSaveAs; import fenetres.create_act.actSetting; import fenetres.create_act.actSupprimeTitre; import fenetres.create_act.actTitre1; import fenetres.create_act.actTitre2; import fenetres.create_act.actTitre3; import fenetres.create_act.actTitrePrincipal; import fenetres.create_act.actTotalPoint; import fenetres.create_act.actTotalPointNode; import fenetres.create_act.actTousLesNodesEvaluer; import fenetres.create_act.actTutoriels; import fenetres.create_act.actUpNode; import fenetres.create_act.actsautfalse; import fenetres.create_act.actsauttrue; import nodeAC.nodeAC; public final class create extends JFrame { private static final long serialVersionUID = 1L; // les élément de create private static JTree tree = new JTree(); private static DefaultMutableTreeNode selectNode; private static afficheText textNodeSelect = new afficheText(); private JToolBar toolBarPrincipal; private JMenuBar menuBar = new JMenuBar(); private static JButton buttonEvaluate; private static JToggleButton tglbtnTousLesNodes; private JPanel panelPrincipal; private static create instance; /** * Create the application. */ public create() { try { initialize(); } catch (UnsupportedLookAndFeelException e) { e.printStackTrace(); } setVisible(true); } public static create getInstance() { if (instance == null) { instance = new create(); } instance.setVisible(true); return instance; } /** * Initialize the contents of the frame. * @throws UnsupportedLookAndFeelException */ private void initialize() throws UnsupportedLookAndFeelException { setSize(1200,800); int screenWidth = (int) java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().getWidth(); int screenHeight = (int) java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().getHeight(); setLocation(( (screenWidth) - getWidth()) / 2, (screenHeight - getHeight()) / 2); ImageIcon img = new ImageIcon(mainApp.class.getResource("/resources/evalcalc.png")); setTitle(commandes.Titre + " " + commandes.version + " " + commandes.branch); setIconImage(img.getImage()); setLocationRelativeTo( null ); setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); // Construction et injection de la barre de menu setJMenuBar( this.createMenuBar() ); tree.setVisibleRowCount(30); // Ajoute le menu contextuel de la tree tree.setComponentPopupMenu(null); this.createToolBar(); panelPrincipal = new JPanel(); getContentPane().add(panelPrincipal, BorderLayout.NORTH); this.createPopupMenuTree(null); // The content of the window if(commandes.fichierAnalyseValide) tree = commandes.tree; JScrollPane leftScrollPane = new JScrollPane( ); leftScrollPane.setPreferredSize( new Dimension(400, 0) ); JScrollPane rightScrollPane = new JScrollPane( ); JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, leftScrollPane, rightScrollPane ); splitPane.setBounds(10, 10, 1364, 783); rightScrollPane.setViewportView(textNodeSelect); textNodeSelect.setFont(new Font("Monospaced", Font.PLAIN, 15)); leftScrollPane.setViewportView(tree); tree.setFont(new Font("Tahoma", Font.PLAIN, 14)); getContentPane().add(splitPane, BorderLayout.CENTER); panelPrincipal.setLayout(new GridLayout(1, 1, 0, 0)); panelPrincipal.add(toolBarPrincipal); // panelPrincipal.add(bRecherche, "cell 0 1,alignx left,aligny top"); // panelPrincipal.add(bRecherche2, "cell 0 1,alignx left,aligny top"); // panelPrincipal.add(label, "cell 2 1,alignx left,aligny center"); if(commandes.fichierAnalyseValide) constructionTree(); this.setExtendedState(MAXIMIZED_BOTH); ListenerAction(); } /** * Selection du nodeAC du tree et d'un nodeAC CXML */ private void ListenerAction() { /** * Selection d'un nodeAC dans le JTree. */ tree.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { if(tree.getSelectionPath()!=null) { selectNode = (DefaultMutableTreeNode) tree.getSelectionPath().getLastPathComponent(); nodeAC nod = (nodeAC) selectNode.getUserObject(); createPopupMenuTree(nod); textNodeSelect.refreshAffichage(nod); } } }); /** * Fermeture de la fenêtre. */ addWindowListener(new java.awt.event.WindowAdapter() { @Override public void windowClosing(java.awt.event.WindowEvent windowEvent) { if(JOptionPane.showConfirmDialog(null,"Voulez-vous quitter analyseWriter?", "Quitter", JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE)==JOptionPane.YES_OPTION) { dispose(); }; } }); // chckbxtoolBarRecherche.addChangeListener(new ChangeListener() { // public void stateChanged(ChangeEvent e) { // if(chckbxtoolBarRecherche.isSelected()) { //// panelPrincipal.add(bRecherche); // panelPrincipal.add(bRecherche, "cell 0 1,alignx left,aligny top"); // bRecherche.setVisible(true); // bRecherche.setEnabled(true); // }else { // bRecherche.setVisible(false); // bRecherche.setEnabled(false); // panelPrincipal.remove(bRecherche); // } // } // }); } /** * Création du menu contextuel du tree * @return */ private void createPopupMenuTree(nodeAC nod) { if(nod!=null) { boolean nodeSetting = false; boolean nodeFormatageDirectePasDeTitrePasAddMenu = false; nodeAC nodStyleParent = nod.retourneParentAyantLAttribut("style:name"); if(nodStyleParent!=null) { String nomDuStle = nodStyleParent.getAttributs().get("style:name"); Pattern p = Pattern.compile("^P[0-9]{1,}$|^T[0-9]{1,}$"); Matcher m = p.matcher(nomDuStle); if(m.find()) { nodeFormatageDirectePasDeTitrePasAddMenu = true; } } //Menu Evaluer JMenu mnEvaluer = new JMenu("Evaluer"); mnEvaluer.add(new actEvalueTrue()); mnEvaluer.add(new actEvalueFalse()); //Menu arbre JMenu mnManageTree = new JMenu("Arbre"); mnManageTree.add(new actUpNode()); mnManageTree.add(new actDownNode()); mnManageTree.addSeparator(); mnManageTree.add(new actExpandAll()); mnManageTree.add(new actExpandNode()); mnManageTree.addSeparator(); mnManageTree.add(new actCollapseAll()); mnManageTree.add(new actCollapseNode()); //Menu Saut niveau >1 JMenu mnSaut = new JMenu("Saut de ligne avant"); mnSaut.setIcon( new ImageIcon(create.class.getResource("/resources/sautmini.png"))); mnSaut.add(new actsauttrue()); mnSaut.add(new actsautfalse()); //Menu saut niveau = 1 //Menu Saut JMenu mnSautNiveau1 = new JMenu("Saut de ligne avant"); mnSautNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/sautmini.png"))); mnSautNiveau1.add(new actsauttrue()); mnSautNiveau1.add(new actsautfalse()); //Menu Titre niveau > 1 JMenu mnTitre = new JMenu("Titre"); mnTitre.setIcon( new ImageIcon(create.class.getResource("/resources/titremini.png"))); mnTitre.add(new actTitrePrincipal()); mnTitre.add(new actTitre1()); mnTitre.add(new actTitre2()); mnTitre.add(new actTitre3()); mnTitre.addSeparator(); mnTitre.add(new actSupprimeTitre()); //Menu Titre niveau = 1 JMenu mnTitreNiveau1 = new JMenu("Titre"); mnTitreNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/titremini.png"))); mnTitreNiveau1.add(new actTitrePrincipal()); mnTitreNiveau1.add(new actTitre1()); mnTitreNiveau1.add(new actTitre2()); mnTitreNiveau1.add(new actTitre3()); mnTitreNiveau1.addSeparator(); mnTitreNiveau1.add(new actSupprimeTitre()); //Menu ajoute un lien de menu niveau 1 JMenu mnAddMenuNiveau1= new JMenu("Lien"); //addMenu mnAddMenuNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/addmenumini.png"))); mnAddMenuNiveau1.add(new actAddMenuTrue()); mnAddMenuNiveau1.add(new actAddMenuFalse()); //Menu ajoute un lien de menu niveau sup 1 JMenu mnAddMenuNiveauSup1= new JMenu("Lien"); //addMenu mnAddMenuNiveauSup1.setIcon( new ImageIcon(create.class.getResource("/resources/addmenumini.png"))); mnAddMenuNiveauSup1.add(new actAddMenuTrue()); mnAddMenuNiveauSup1.add(new actAddMenuFalse()); //Menu Evaluer présence d'un nodeAC pour les nodes de niveau > 1 JMenu mnEvalNameNode = new JMenu("Evaluer la présence du nodeAC"); mnEvalNameNode.setIcon(new ImageIcon(create.class.getResource("/resources/evalnodemini.png"))); mnEvalNameNode.add(new actEvalNameNodeOui()); mnEvalNameNode.add(new actEvalNameNodeNon()); //Menu evalNamePage (pour les nodes page) JMenu mnEvalNamePage = new JMenu("Evaluer le nom de la page"); mnEvalNamePage.setIcon(new ImageIcon(create.class.getResource("/resources/evalnamepagemini.png"))); mnEvalNamePage.add(new actEvalNamePageOui()); mnEvalNamePage.add(new actEvalNamePageNon()); //Menu Représentation dans le feedback JMenu mnPourFeedback = new JMenu("Pour représentation feedback"); mnPourFeedback.add(mnSaut); if(!nodeFormatageDirectePasDeTitrePasAddMenu) { mnPourFeedback.addSeparator(); mnPourFeedback.add(mnTitre); mnPourFeedback.addSeparator(); mnPourFeedback.add(mnAddMenuNiveauSup1); } //*************************** //** Menu nodeAC niveau = 1 *** //*************************** JMenu mnNiveau1 = new JMenu("Attributs aW, niveau 1 "); mnNiveau1.setIcon( new ImageIcon(create.class.getResource("/resources/attributanalysewritermini.png"))); mnNiveau1.add(new actCoefficient()); mnNiveau1.addSeparator(); mnNiveau1.add(mnSautNiveau1); mnNiveau1.addSeparator(); mnNiveau1.add(mnTitreNiveau1); mnNiveau1.addSeparator(); mnNiveau1.add(mnAddMenuNiveau1); //********************************************* //** La popupMenu qui s'affiche sur le tree *** //********************************************* JPopupMenu mnPopupTree = new JPopupMenu(); if(!nodeSetting) { mnPopupTree.add(mnEvaluer); } if(nod.getLevel()==1 ) { mnPopupTree.addSeparator(); mnPopupTree.add(mnNiveau1); } //Pour les nodes de niveau supérieur à 1 if(nod.getLevel()>1 ) { mnPopupTree.addSeparator(); mnPopupTree.add(mnPourFeedback); mnPopupTree.addSeparator(); mnPopupTree.add(new actAttribut()); } mnPopupTree.addSeparator(); mnPopupTree.add(mnManageTree); mnPopupTree.addSeparator(); mnPopupTree.add(new actDeleteNode()); tree.setComponentPopupMenu(mnPopupTree); } } /* Methode de construction de la barre de menu */ private JMenuBar createMenuBar() { // La barre de menu à proprement parler menuBar = new JMenuBar(); // Définition du menu déroulant "File" et de son contenu JMenu mnuFile = new JMenu( "Fichier" ); mnuFile.setMnemonic( 'F' ); /*JMenuItem mnuNewFile =*/ mnuFile.add( new actOpen() ); mnuFile.add( new actNewFichierAnalyse() ); mnuFile.addSeparator(); mnuFile.add( new actSave() ); mnuFile.add( new actSaveAs() ); mnuFile.addSeparator(); mnuFile.add( new actExit() ); menuBar.add(mnuFile); // Définition du menu déroulant "Edit" et de son contenu JMenu mnuEdit = new JMenu( "Edition" ); mnuEdit.setMnemonic( 'E' ); // mnuEdit.add( actUndo ); // mnuEdit.add( actRedo ); // mnuEdit.addSeparator(); // mnuEdit.add( actCopy ); // mnuEdit.add( actCut ); // mnuEdit.add( actPaste ); menuBar.add(mnuEdit); JMenu mnAffiche = new JMenu("Affichage"); menuBar.add(mnAffiche); // chckbxtoolBarRecherche = new JCheckBoxMenuItem("Barre outils recherche nodeAC"); // chckbxtoolBarRecherche.setSelected(true); // mnAffiche.add(chckbxtoolBarRecherche); // Définition du menu Node JMenu mnNode = new JMenu("Modifier"); mnNode.add( new actNodeFichier() ); mnNode.addSeparator(); menuBar.add(mnNode); //Menu arbre JMenu mnManageTree = new JMenu("Arbre"); mnManageTree.add(new actUpNode()); mnManageTree.add(new actDownNode()); mnManageTree.addSeparator(); mnManageTree.add(new actExpandAll()); mnManageTree.add(new actExpandNode()); mnManageTree.addSeparator(); mnManageTree.add(new actCollapseAll()); mnManageTree.add(new actCollapseNode()); mnNode.add(mnManageTree); mnNode.addSeparator(); //Définition Evaluer JMenu mnEvaluer = new JMenu("Evaluer"); mnEvaluer.add(new actEvalueTrue()); mnEvaluer.add(new actEvalueFalse()); mnNode.add(mnEvaluer); // Définition du menu déroulant "Création évaluation" et de son contenu JMenu mnuExercice = new JMenu( "Création évaluation" ); mnuExercice.setMnemonic( 'N' ); mnuExercice.add(new actEvaluer()); menuBar.add(mnuExercice); // Définition du menu déroulant "Help" et de son contenu JMenu mnuHelp = new JMenu( "Aide" ); mnuHelp.setMnemonic( 'H' ); mnuHelp.add( new actAPropos()); mnuHelp.add( new actDocumentation()); menuBar.add( mnuHelp ); return menuBar; } /* Methode de construction de la barre d'outils */ private void createToolBar() { toolBarPrincipal = new JToolBar(); toolBarPrincipal.setFloatable(false); toolBarPrincipal.setRollover(true); toolBarPrincipal.setName("outils principaux"); JButton buttonLoadFile = toolBarPrincipal.add( new actOpen() ); buttonLoadFile.setIcon(new ImageIcon(create.class.getResource("/resources/fichierAnalyse.png"))); buttonLoadFile.setHideActionText(true); toolBarPrincipal.add(buttonLoadFile); JButton btnNewFichierAnalyse = toolBarPrincipal.add( new actNewFichierAnalyse() ); btnNewFichierAnalyse.setIcon(new ImageIcon(create.class.getResource("/resources/fichierODF.png"))); btnNewFichierAnalyse.setHideActionText(true); toolBarPrincipal.add(btnNewFichierAnalyse); toolBarPrincipal.addSeparator(); buttonEvaluate = toolBarPrincipal.add( new actEvaluer() ); buttonEvaluate.setIcon(new ImageIcon(create.class.getResource("/resources/evaluate.png"))); toolBarPrincipal.addSeparator(); JButton btnAfficheInformationFichierAnalyse = toolBarPrincipal.add( new actAfficheInformationFichierAnalyse() ); btnAfficheInformationFichierAnalyse.setIcon(new ImageIcon(create.class.getResource("/resources/fichierAnalyseInfo.png"))); btnAfficheInformationFichierAnalyse.setHideActionText(true); toolBarPrincipal.add(btnAfficheInformationFichierAnalyse); JButton btnNodeFichier = toolBarPrincipal.add( new actNodeFichier() ); btnNodeFichier.setIcon(new ImageIcon(create.class.getResource("/resources/nodeFichier.png"))); btnNodeFichier.setHideActionText(true); toolBarPrincipal.add(btnNodeFichier); JButton btnSetting = toolBarPrincipal.add( new actSetting()); btnSetting.setIcon(new ImageIcon(create.class.getResource("/resources/setting.png"))); toolBarPrincipal.add(btnSetting); toolBarPrincipal.addSeparator(); JButton btnEvaluerTrue = toolBarPrincipal.add( new actEvalueTrue() ); btnEvaluerTrue.setIcon(new ImageIcon(create.class.getResource("/resources/evaluertrue.png"))); btnEvaluerTrue.setHideActionText(true); toolBarPrincipal.add(btnEvaluerTrue); JButton btnEvaluerFalse = toolBarPrincipal.add(new actEvalueFalse() ); btnEvaluerFalse.setIcon(new ImageIcon(create.class.getResource("/resources/evaluerfalse.png"))); btnEvaluerFalse.setHideActionText(true); toolBarPrincipal.add(btnEvaluerFalse); JButton btnEvaluerTouteLaBrancheEtLesEnfantTrue = toolBarPrincipal.add( new actEvaluerTousEnfantsTrue() ); btnEvaluerTouteLaBrancheEtLesEnfantTrue.setIcon(new ImageIcon(create.class.getResource("/resources/evaluertouslesenfants.png"))); btnEvaluerTouteLaBrancheEtLesEnfantTrue.setHideActionText(true); toolBarPrincipal.add(btnEvaluerTouteLaBrancheEtLesEnfantTrue); JButton btnEvaluerTouteLaBrancheEtLesEnfantFalse = toolBarPrincipal.add( new actEvaluerTousEnfantsFalse() ); btnEvaluerTouteLaBrancheEtLesEnfantFalse.setIcon(new ImageIcon(create.class.getResource("/resources/evaluertouslesenfantsfaux.png"))); btnEvaluerTouteLaBrancheEtLesEnfantTrue.setHideActionText(true); toolBarPrincipal.add(btnEvaluerTouteLaBrancheEtLesEnfantFalse); toolBarPrincipal.addSeparator(); JButton btnAttribut = new JButton(new actAttribut()); btnAttribut.setText(""); btnAttribut.setIcon(new ImageIcon(create.class.getResource("/resources/attribut.png"))); toolBarPrincipal.add(btnAttribut); toolBarPrincipal.addSeparator(); JButton btnTotalPoint = new JButton(new actTotalPoint()); btnTotalPoint.setToolTipText("Nombre de point total dans l'exercice."); btnTotalPoint.setText(""); btnTotalPoint.setIcon(new ImageIcon(create.class.getResource("/resources/totalpoint.png"))); toolBarPrincipal.add(btnTotalPoint); JButton btnTotalPointNode = toolBarPrincipal.add( new actTotalPointNode() ); btnTotalPointNode.setIcon(new ImageIcon(create.class.getResource("/resources/totalpointnode.png"))); btnTotalPointNode.setHideActionText(true); toolBarPrincipal.add(btnTotalPointNode); toolBarPrincipal.addSeparator(); tglbtnTousLesNodes = new JToggleButton(""); tglbtnTousLesNodes.setAction(new actTousLesNodesEvaluer()); tglbtnTousLesNodes.setIcon(new ImageIcon(create.class.getResource("/resources/lesnodesevaluer.png"))); toolBarPrincipal.add(tglbtnTousLesNodes); toolBarPrincipal.addSeparator(); JButton btnAbout = toolBarPrincipal.add( new actAbout() ); btnAbout.setIcon(new ImageIcon(create.class.getResource("/resources/apropos.png"))); btnAbout.setHideActionText( true ); toolBarPrincipal.add(btnAbout); JButton btnNewButton = toolBarPrincipal.add( new actTutoriels()); btnNewButton.setIcon(new ImageIcon(create.class.getResource("/resources/tutoriel.png"))); btnNewButton.setHideActionText(true); toolBarPrincipal.add(btnNewButton); toolBarPrincipal.addSeparator(); JButton buttonExit = toolBarPrincipal.add( new actExit() ); buttonExit.setHideActionText( true ); } public void closeWindows() { if(JOptionPane.showConfirmDialog(null,"Voulez-vous quitter analyseWriter?", "Quitter", JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE)==JOptionPane.YES_OPTION) { dispose(); } } public void closeDirectlyWindows() { this.dispose(); } // public static void expandOrCollapsePath (JTree tree,TreePath treePath,int level,int currentLevel,boolean expand) { // System.out.println("Exp level="+currentLevel+", exp="+expand + ", level=" + level); // if (expand && level<=currentLevel && level>0) return; // // TreeNode treeNode = ( TreeNode ) treePath.getLastPathComponent(); // TreeModel treeModel=tree.getModel(); // if ( treeModel.getChildCount(treeNode) >= 0 ) { // for ( int i = 0; i < treeModel.getChildCount(treeNode); i++ ) { // TreeNode n = ( TreeNode )treeModel.getChild(treeNode, i); // TreePath path = treePath.pathByAddingChild( n ); // expandOrCollapsePath(tree,path,level,currentLevel+1,expand); // } // if (!expand && currentLevel topLevelNodes = ((TreeNode) tree.getModel().getRoot()).children(); while(topLevelNodes.hasMoreElements()) { DefaultMutableTreeNode N = (DefaultMutableTreeNode) topLevelNodes.nextElement(); tree.expandPath(new TreePath(N.getPath())); expandNode( N); } } public static void collapseAll() { Enumeration topLevelNodes = ((TreeNode) tree.getModel().getRoot()).children(); while(topLevelNodes.hasMoreElements()) { DefaultMutableTreeNode N = (DefaultMutableTreeNode) topLevelNodes.nextElement(); tree.collapsePath(new TreePath(N.getPath())); collapseNode(N); } } public static void expandNode(DefaultMutableTreeNode N) { Enumeration topLevelNodes = ((TreeNode) N).children(); while(topLevelNodes.hasMoreElements()) { DefaultMutableTreeNode N1 = (DefaultMutableTreeNode) topLevelNodes.nextElement(); tree.expandPath(new TreePath(N1.getPath())); expandNode(N1); } } public static void collapseNode(DefaultMutableTreeNode N) { Enumeration topLevelNodes = ((TreeNode) N).children(); while(topLevelNodes.hasMoreElements()) { DefaultMutableTreeNode N1 = (DefaultMutableTreeNode) topLevelNodes.nextElement(); tree.collapsePath(new TreePath(N1.getPath())); collapseNode( N1 ); } tree.collapsePath(new TreePath(N.getPath())); } // void saySomething(String eventDescription, TreeExpansionEvent e) { // System.out.println(eventDescription + "; " + "path = " + e.getPath()); // } // // // // Required by TreeExpansionListener interface. // public void treeExpanded(TreeExpansionEvent e) { // saySomething("Tree-expanded event detected", e); // } // // // Required by TreeExpansionListener interface. // public void treeCollapsed(TreeExpansionEvent e) { // saySomething("Tree-collapsed event detected", e); // } } //class MyTreeWillExpandListener implements TreeWillExpandListener { // // // public void treeWillExpand(TreeExpansionEvent evt) throws ExpandVetoException { // JTree tree = (JTree) evt.getSource(); // // TreePath path = evt.getPath(); // boolean veto = false; // if (veto) { // throw new ExpandVetoException(evt); // } // } // // public void treeWillCollapse(TreeExpansionEvent evt) throws ExpandVetoException { // JTree tree = (JTree) evt.getSource(); // // TreePath path = evt.getPath(); // boolean veto = false; // if (veto) { // throw new ExpandVetoException(evt); // } // } //} //class MyTreeExpansionListener implements TreeExpansionListener { // // public ArrayList Chemin = new ArrayList(); // // public ArrayList getChemin() { // return Chemin; // } // // public void setChemin(ArrayList chemin) { // Chemin = chemin; // } // // public void treeExpanded(TreeExpansionEvent evt) { // TreePath path = evt.getPath(); // Chemin.add(path); // System.out.println("treeExpanded"); // } // // public void treeCollapsed(TreeExpansionEvent evt) { // TreePath path = evt.getPath(); // Chemin.remove(path); // System.out.println("treeCollapsed"); // // } //}