public boolean isLocal() { return isLocalRoot() || getParent() != null && ((CategoryTreeNode) getParent()).isLocal(); }
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) { JLabel label = (JLabel) super.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus); if (value instanceof CategoryTreeNode) { CategoryTreeNode categoryTreeNode = (CategoryTreeNode) value; String name = categoryTreeNode.getName(); if (name == null) name = RouteConverter.getBundle().getString("no-name"); else if (categoryTreeNode.isRemoteRoot()) name = RouteConverter.getBundle().getString("remote-catalog"); label.setText(name); if (categoryTreeNode.isLocal()) setClosedIcon(OPEN_ICON); else setClosedIcon(OPEN_REMOTE_ICON); setLeafIcon(getClosedIcon()); } else label.setText(RouteConverter.getBundle().getString("loading")); return label; } }
public void run() throws IOException { for (int i = 0; i < categories.size(); i++) { CategoryTreeNode category = categories.get(i); CategoryTreeNode parent = parents.get(i); if (category.isLocal() && parent.isRemote()) throw new IOException("cannot move local category " + category.getName() + " to remote parent " + parent.getName()); if (category.isRemote() && parent.isLocal()) throw new IOException("cannot move remote category " + category.getName() + " to local parent " + parent.getName()); category.getCategory().update(parent.getCategory(), category.getCategory().getName()); } invokeLater(new Runnable() { public void run() { for (int i = 0; i < categories.size(); i++) { CategoryTreeNode category = categories.get(i); CategoryTreeNode parent = parents.get(i); categoryTreeModel.removeNodeFromParent(category); categoryTreeModel.insertNodeInto(category, parent, 0); } if (invokeLaterRunnable != null) invokeLaterRunnable.run(); } }); } });
public void run() throws IOException { for (int i = 0; i < routes.size(); i++) { RouteModel route = routes.get(i); CategoryTreeNode parent = parents.get(i); CategoryTreeNode category = route.getCategory(); if (category.isLocal() && parent.isRemote()) throw new IOException("cannot move local route " + route.getName() + " to remote parent " + parent.getName()); if (category.isRemote() && parent.isLocal()) throw new IOException("cannot move remote route " + route.getName() + " to local parent " + parent.getName()); route.getRoute().update(parent.getCategory(), route.getDescription() != null ? route.getDescription() : route.getName()); } invokeLater(new Runnable() { public void run() { for (CategoryTreeNode parent : parents) { setCurrentCategory(parent); } if (invokeLaterRunnable != null) invokeLaterRunnable.run(); } }); } });