Examples of DefaultTreeModel


Examples of javax.swing.tree.DefaultTreeModel

    rootContent.add(demoContent, BorderLayout.CENTER);
    rootContent.add(placeHolder, BorderLayout.NORTH);

    final DemoSelectorTreeNode root = new DemoSelectorTreeNode(null,
        demoSelector);
    final DefaultTreeModel model = new DefaultTreeModel(root);
    final JTree demoTree = new JTree(model);
    demoTree.addTreeSelectionListener(new TreeSelectionHandler());

    JSplitPane rootSplitPane =
        new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

    }

    private void createTreePanel() {
        rootNode = new TaskTreeBaseNode();

        model = new DefaultTreeModel(rootNode);
        tree = new JTree(model);

        tree.setRootVisible(false);
        tree.setShowsRootHandles(true);
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

                int module;
                String id = null;
                String key = null;
                String filename = null;

                DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
               
                DefaultMutableTreeNode current;
                DefaultMutableTreeNode parent;
                DefaultMutableTreeNode previous;
                boolean exists = false;
               
                Collection<String> keys = DataFilters.isFilterActive(getModule()) ?
                              DataManager.getKeyList(DataFilters.getCurrent(getModule())) : null;
               
                while (rs.next() && !stop) {
                    int level = 0;
                    parent = top;
                   
                    id = rs.getString(1);
                    module = rs.getInt(2);
                    filename = rs.getString(3);
                   
                    if (keys != null && !keys.contains(id)) continue;
                   
                    StringTokenizer st = new StringTokenizer(filename, (filename.indexOf("/") > -1 ? "/" : "\\"));
                    while (st.hasMoreElements()) {
                      key = (String) st.nextElement();
                     
                        if (stop) break;
                       
                        // check the whole last leaf
                        top.getLastLeaf();
                       
                        previous = parent.getChildCount() == 0 ? null : ((DefaultMutableTreeNode) parent.getChildAt(parent.getChildCount() - 1));
                        exists = previous != null && ((NodeElementprevious.getUserObject()).getComparableKey().equals(key.toLowerCase());
                       
                        if (!exists) {
                            ne = new FileNodeElement(key, new File(filename));
                            ne.addItem(id, module);
                            current = new DcDefaultMutableTreeNode(ne);
                            model.insertNodeInto(current, parent, parent.getChildCount());
                            parent = current;
                          
                        } else { // exists
                            existingNe =( NodeElement) previous.getUserObject();
                            existingNe.addItem(id, module);
                            model.nodeChanged(previous);
                            parent = previous;   
                        }
                        level++;
                  }
                }
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

                DcImageIcon icon = null;
                String iconBase64 = null;
                DcField field = null;
                int module;

                DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
               
                DefaultMutableTreeNode current;
                DefaultMutableTreeNode parent;
                DefaultMutableTreeNode previous;
                boolean exists = false;
               
                Map<String, Integer> items = DataManager.getKeys(DataFilters.getCurrent(getModule()));
               
                Collection<String> keys = null;
                if (DataFilters.isFilterActive(getModule())) {
                    keys = new ArrayList<String>(items.keySet());
                }
               
                while (rs.next() && !stop) {
                    int level = 0;
                    parent = top;
                   
                    for (int idx = 0; idx < fields.length; idx++) {
                     
                      field = DcModules.get(getModule()).getField(fields[idx]);
                      if (field.isUiOnly() &&
                          field.getIndex() != DcObject._SYS_MODULE &&
                          field.getValueType() != DcRepository.ValueTypes._DCOBJECTCOLLECTION &&
                          field.getFieldType() != ComponentFactory._REFERENCEFIELD)
                        continue;
                     
                       
                        if (stop) break;
                       
                        // for each level the field index is shifted to the end.
                        id = rs.getString(1);
                        module = rs.getInt(2);
                        key = field.getIndex() == DcObject._SYS_MODULE ? DcModules.get(module).getLabel() : rs.getObject((level * 3) + 3);
                        value =  field.getIndex() == DcObject._SYS_MODULE ? DcModules.get(module).getLabel() : rs.getString((level * 3) + 4);
                        iconBase64 = field.getIndex() != DcObject._SYS_MODULE ? rs.getString((level * 3) + 5) : null;
                       
                        icon = field.getIndex() == DcObject._SYS_MODULE ?
                                new DcImageIcon(DcModules.get(module).getIcon16().getImage()) :
                                iconBase64 != null ? DataManager.addIcon(String.valueOf(key), iconBase64) : null;
                       
                        if (keys != null && !keys.contains(id)) continue;
                       
                        previous = parent.getChildCount() == 0 ? null : ((DefaultMutableTreeNode) parent.getChildAt(parent.getChildCount() - 1));
                        exists = previous == null || (((NodeElementprevious.getUserObject()).getKey() == null && key != null) ? false :
                                ((NodeElementprevious.getUserObject()).getKey() == key || // empty key
                                ((NodeElementprevious.getUserObject()).getKey().equals(key);
                       
                        if (!exists) {
                            if (key == null) {
                                ne = new NodeElement(null, empty, null);
                            } else {
                                ne = new NodeElement(key, value, icon);
                            }
                           
                            ne.addItem(id, module);
                            current = new DcDefaultMutableTreeNode(ne);
                            parent.add(current);
                            parent = current;
                          
                        } else { // exists
                            existingNe =(NodeElement) previous.getUserObject();
                            existingNe.addItem(id, module);
                            model.nodeChanged(previous);
                            parent = previous;   
                        }
                       
                        if (field.getIndex() != DcObject._SYS_MODULE)
                            level++;
                    }
                }
               
                rs.close();
               
                NodeElement topElem = (NodeElement) top.getUserObject();
                topElem.setItems(items);
                model.nodeChanged(top);
               
            } catch (Exception e) {
                logger.error(e, e);
            }
        }
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

           
            if (icon != null) icons.put(id, Utilities.base64ToImage(icon));
            all.put(id, name);
          }
         
          DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
          int counter = 0;
          for (String parentKey : parents.keySet()) {
           
            if (stop) break;
           
            ContainerNodeElement ne = new ContainerNodeElement(parentKey, (String) parents.get(parentKey), icons.get(parentKey));
            DcDefaultMutableTreeNode current = new DcDefaultMutableTreeNode(ne);
            model.insertNodeInto(current, top, counter++);
            top.addItem(parentKey, Integer.valueOf(module.getIndex()));
            createChildren(model, parentKey, current, relations, all, icons);
          }
         
        } catch (Exception e) {
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

     * @param parent Existing parent
     */
    private void add(String item, int module, DcDefaultMutableTreeNode node, DcDefaultMutableTreeNode parent) {
      DcDefaultMutableTreeNode existingChild;

      DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
     
      // need to add to a collection as nodes will be removed once placed in the actual tree (!)
      Collection<DcDefaultMutableTreeNode> nodes = new ArrayList<DcDefaultMutableTreeNode>();
      for (int i = 0; i < node.getChildCount(); i++)
        nodes.add((DcDefaultMutableTreeNode) node.getChildAt(i));
     
      DcDefaultMutableTreeNode actualParent;
      for (DcDefaultMutableTreeNode child : nodes) {
          existingChild = findNode(child, parent, false);
         
          actualParent = findNode((DcDefaultMutableTreeNode) child.getParent(), getTopNode(), true);
          actualParent = actualParent == null ? parent : actualParent;
          if (existingChild == null) {
            // will be removed from the node as well:
              child.addItem(item, Integer.valueOf(module));
              insertNode(child, actualParent);
              existingChild = child;
          } else {
              existingChild.addItem(item, Integer.valueOf(module));
              model.nodeChanged(existingChild);
             
          }
          add(item, module, child, existingChild);
      }
    }
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

    protected void build() {
        clear();
       
        createTopNode();
       
        tree = new DcTree(new DefaultTreeModel(top));
        tree.setFont(ComponentFactory.getStandardFont());
        tree.addTreeSelectionListener(this);
       
        scroller = new JScrollPane(tree);
       
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

    public void reset() {
        createTree();
    }
   
    protected void setSelected(DefaultMutableTreeNode node) {
        DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
        TreePath treePath = new TreePath(model.getPathToRoot(node));
        tree.setSelectionPath(treePath);
        tree.expandPath(treePath);
        tree.scrollPathToVisible(treePath);
       
        currentUserObject = node.getUserObject();
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

    /**
     * Inserts a node. The node needs to have a valid user object defined
     * to insert it at the right position (ordering)
     */
    protected void insertNode(DefaultMutableTreeNode node, DefaultMutableTreeNode parent) {
        DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
       
        NodeElement ne = (NodeElement) node.getUserObject();
       
        List<String> elements = new ArrayList<String>();
        NodeElement child;
        for (int i = 0; i < parent.getChildCount(); i++) {
            child = ((NodeElement) ((DefaultMutableTreeNode) parent.getChildAt(i)).getUserObject());
            elements.add(child.getComparableKey());
        }
       
        elements.add(ne.getComparableKey());
        Collections.sort(elements);
        int idx = elements.indexOf(ne.getComparableKey());
       
        model.insertNodeInto(node, parent, parent.getChildCount() == 0 ? 0 : idx);
       
        tree.expandPath(new TreePath(model.getPathToRoot(node)));
        tree.revalidate();
    }
View Full Code Here

Examples of javax.swing.tree.DefaultTreeModel

    }

    public abstract void groupBy();
   
    private void removeNode(DefaultMutableTreeNode child) {
       DefaultTreeModel model = (DefaultTreeModel) tree.getModel();
       model.removeNodeFromParent(child);
   
       // remove empty branches above (needed for the file tree panel)
       DefaultMutableTreeNode parent = (DefaultMutableTreeNode) child.getParent();
       NodeElement ne;
       while (parent != null) {
         ne = ((NodeElement) child.getUserObject());
         if (ne.getCount() == 0 && parent.getChildCount() == 0) {
           DefaultMutableTreeNode newParent = null;

           try {
             newParent = (DefaultMutableTreeNode) parent.getParent();
           } catch (Exception e) {}
            
           try {
             model.removeNodeFromParent(parent);
             parent = newParent;
           } catch (IllegalArgumentException iae) {
                 parent = null;
           }
         } else {
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.