List of usage examples for javax.swing.tree DefaultMutableTreeNode getChildAt
public TreeNode getChildAt(int index)
From source file:org.olivier.ihm.FramePUMLCleanerControler.java
/** * Analyser le fichier PUML et initialiser le filtre * * @param jTextAreaFichier Le contenu du fichier PUML * @param jTreeFiltre Le filtre initialiser *//*ww w. j a v a2 s . c om*/ private void analyserFichier(JTextArea jTextAreaFichier, JTree jTreeFiltre) { lines = jTextAreaFichier.getText().split("[\\r\\n]+"); final DefaultMutableTreeNode newFilter = initaliserNodes(); // parcours de chaque ligne du fichier pour analyse for (String line : lines) { if (line.contains(">")) { break; } else { String categ = ""; String noeud = null; // recherche de la catgorie for (String categorie : categories) { if (line.contains(categorie)) { categ = categorie; noeud = line.replaceFirst(categorie, "").replaceAll(" ", ""); // ajout du noeud dans la bonne catgorie de l'arbre for (int i = 0; i < newFilter.getChildCount(); i++) { final DefaultMutableTreeNode dmtr = (DefaultMutableTreeNode) newFilter.getChildAt(i); if (dmtr.toString().equals(categ)) { final DefaultMutableTreeNode node = new DefaultMutableTreeNode(new NodeInfo(noeud)); dmtr.add(node); } } break; } } } } jTreeFiltre.setModel(new DefaultTreeModel(newFilter)); jTextAreaFichier.requestFocus(); }
From source file:org.olivier.ihm.FramePUMLCleanerControler.java
/** * Analyse une ligne et dtermine si elle est imprimable ou pas * * @param line La ligne analyser/* w w w . j a v a 2 s .com*/ * @param nodeToDelete Liste des noeuds supprimer * @return True si la ligne doit etre imprime, false sinon */ private boolean isLinePrintable(String line, DefaultMutableTreeNode nodeToDelete) { boolean isPrintable = true; // parcours des catgories for (int i = 0; i < nodeToDelete.getChildCount(); i++) { final TreeNode categ = nodeToDelete.getChildAt(i); // parcours des noeuds supprimer for (int j = 0; j < categ.getChildCount(); j++) { final DefaultMutableTreeNode noeudToDelete = (DefaultMutableTreeNode) categ.getChildAt(j); final String nomNoeudToDelete = noeudToDelete.toString(); if (line.contains(nomNoeudToDelete)) { isPrintable = false; break; } } if (!isPrintable) { break; } } return isPrintable; }
From source file:org.olivier.ihm.FramePUMLCleanerControler.java
/** * Renvoi la liste des noeuds non slectionns * * @param allTreeNode Liste de tous les noeuds * @param selectedPath Chemins slectionns * @return Liste des noeuds non slectionns *//*from w w w . j a v a 2 s . c om*/ private DefaultMutableTreeNode getNodeToDelete(DefaultMutableTreeNode allTreeNode, TreePath[] selectedPath) { final DefaultMutableTreeNode nodeToDelete = new DefaultMutableTreeNode("Node to delete"); // Parcours de l'arbre pour supprimer les noeuds slectionns // Parcours des catgories for (int i = 0; i < allTreeNode.getChildCount(); i++) { final DefaultMutableTreeNode tnCateg = (DefaultMutableTreeNode) allTreeNode.getChildAt(i); // les catgories sont systmatiquement ajoutes final DefaultMutableTreeNode newTnCateg = new DefaultMutableTreeNode(tnCateg.toString());//) allTreeNode.getChildAt(i); nodeToDelete.add(newTnCateg); // parcours des noeuds for (int j = 0; j < tnCateg.getChildCount(); j++) { final DefaultMutableTreeNode tnNoeud = (DefaultMutableTreeNode) tnCateg.getChildAt(j); // Ajout du noeud s'il n'est pas slectionn if (!isNoeudSelected(tnNoeud, selectedPath)) { /* Il est impratif de crer un nouveau noeud ! Si on se contente d'ajouter tnNoeud dans newTnCateg, celui-ci est supprim de tnCateg ! Visiblement, un noeud ne peut pas appartenir 2 arbres diffrents. Cela semble logique car la dfinition des anctres risque de poser problme. A approfondir quand j'aurai le temps ... */ final DefaultMutableTreeNode newTnNoeud = new DefaultMutableTreeNode( new NodeInfo(tnNoeud.toString())); newTnCateg.add(newTnNoeud); } } } return nodeToDelete; }
From source file:org.olivier.ihm.FramePUMLCleanerControler.java
/** * Indique si un noeud est slectionn ou pas * * @param noeudATester Le noeud tester//from www . ja v a 2 s .com * @param selectedPath La liste des noeuds slectionns * @return True si le noeud est slectionn, false sinon */ private boolean isNoeudSelected(final DefaultMutableTreeNode noeudATester, final TreePath[] selectedPath) { boolean isSelected = false; // parcours des categories for (TreePath path : selectedPath) { try { // Cette ligne plante quand on slectionne une catgorie complte d'ou le try-catch ! final DefaultMutableTreeNode unNoeudSelectionner = (DefaultMutableTreeNode) path.getPath()[2]; isSelected = noeudATester.toString().equals(unNoeudSelectionner.toString()); } catch (ArrayIndexOutOfBoundsException ex) { // Quand on choisit une catgorie complte, il faut parcourir les noeuds de cette manire : // recup de la categorie final DefaultMutableTreeNode categ = (DefaultMutableTreeNode) path.getLastPathComponent(); // parcours des noeuds dans la catgorie for (int j = 0; j < categ.getChildCount(); j++) { final TreeNode unNoeudSelectionner = categ.getChildAt(j); isSelected = noeudATester.toString().equals(unNoeudSelectionner.toString()); if (isSelected) { break; } } } // on sort de la boucle ds qu'on a la rponse if (isSelected) { break; } } return isSelected; }
From source file:org.olivier.ihm.FramePUMLCleanerControler.java
/** * Slectionne les noeuds dans l'arbre de filtrage corespondant au motif * @param motif Le motif pour slectionner les noeuds * @param jTreeFiltre L'arbre de filtrage *//*from w w w . j a v a 2s . c o m*/ public void selectionnerNoeud(String motif, JTree jTreeFiltre) { // TODO : finir TreePath[] allPath = Util.getPaths(jTreeFiltre, true); // parcours des categories for (TreePath path : allPath) { // recup de la racine final DefaultMutableTreeNode root = (DefaultMutableTreeNode) path.getLastPathComponent(); // parcours des catgories for (int j = 0; j < root.getChildCount(); j++) { final TreeNode categ = root.getChildAt(j); // parcours des noeuds for (j = 0; j < categ.getChildCount(); j++) { final TreeNode unNoeudSelectionner = categ.getChildAt(j); if (!unNoeudSelectionner.toString().contains(motif)) { } } } } checkTreeManager.getSelectionModel().setSelectionPaths(allPath); }
From source file:org.openehealth.coms.cc.web_frontend.consentcreator.service.ConsentCreatorUtilities.java
/** * Sorts all Nodes and children of these Nodes by the name of their OIDObjects * // w ww . ja v a 2s . c o m * @param root */ public void sortTree(DefaultMutableTreeNode root) { Vector<DefaultMutableTreeNode> childrenV = new Vector<DefaultMutableTreeNode>(); if (root.getChildCount() > 1) { for (int i = 0; i < root.getChildCount(); i++) { childrenV.add((DefaultMutableTreeNode) root.getChildAt(i)); } root.removeAllChildren(); boolean swapped = true; while (swapped) { swapped = false; for (int i = 0; i < childrenV.size() - 1; i++) { if (childrenV.elementAt(i).getChildCount() > 0) { sortTree(childrenV.elementAt(i)); } OIDObject oo1 = (OIDObject) childrenV.elementAt(i).getUserObject(); OIDObject oo2 = (OIDObject) childrenV.elementAt(i + 1).getUserObject(); DefaultMutableTreeNode node1 = childrenV.elementAt(i); DefaultMutableTreeNode node2 = childrenV.elementAt(i + 1); if (oo1.getName().compareTo(oo2.getName()) > 0) { childrenV.setElementAt(node2, i); childrenV.setElementAt(node1, i + 1); swapped = true; } } } for (int i = 0; i < childrenV.size(); i++) { root.add(childrenV.elementAt(i)); } } }
From source file:org.openengsb.ui.admin.testClient.TestClient.java
private DefaultMutableTreeNode findService(DefaultMutableTreeNode node, ServiceId jumpToService) { if (node.isLeaf()) { Object userObject = node.getUserObject(); if (jumpToService.equals(userObject)) { return node; }/* w ww .j a v a 2s . co m*/ } else { for (int i = 0; i < node.getChildCount(); i++) { DefaultMutableTreeNode result = findService((DefaultMutableTreeNode) node.getChildAt(i), jumpToService); if (result != null) { return result; } } } return null; }
From source file:org.parosproxy.paros.extension.scanner.ExtensionScanner.java
public void sessionChanged(Session session) { AlertTreeModel tree = (AlertTreeModel) getAlertPanel().getTreeAlert().getModel(); DefaultMutableTreeNode root = (DefaultMutableTreeNode) tree.getRoot(); while (root.getChildCount() > 0) { tree.removeNodeFromParent((MutableTreeNode) root.getChildAt(0)); }/*from w w w .j ava 2s . c o m*/ try { refreshAlert(session); } catch (SQLException e) { e.printStackTrace(); } }
From source file:seleniumAutomation.flowControls.java
public static void parseNodes(javax.swing.tree.DefaultMutableTreeNode nodes) { for (int i = 0; i < nodes.getChildCount(); i++) { parseNodes((javax.swing.tree.DefaultMutableTreeNode) nodes.getChildAt(i)); }//from ww w . j av a 2s .c o m if (nodes.getChildCount() == 0) { if (!testStep.isEmpty()) { if (!((javax.swing.tree.DefaultMutableTreeNode) nodes.getParent()).getLastChild().equals(nodes)) { testStep.add(nodes.getUserObject().toString()); } else { testStep.add(nodes.getUserObject().toString()); testSuite.put(testStep.get(0), testStep); testStep = new ArrayList<String>(); } } else { testStep = new ArrayList(); testStep.add(nodes.getUserObject().toString()); testSuite.put(testStep.get(0), testStep); } } }