public void actionPerformed(ActionEvent ae) { if (nodes != null && nodes.size() > 0) { final SVNData cd = new SVNData(); List<String> paths = new ArrayList<String>(); boolean has_directory = false; for (VPTNode node : nodes) { if (node != null && node.getNodePath() != null) { paths.add(node.getNodePath()); if (node.isDirectory() || node.isProject()) { has_directory = true; } } } cd.setPaths(paths); if (has_directory) { int answer = JOptionPane.showConfirmDialog( view, "One or more of the items selected is a directory.\nWould you like to see status for subdirectories and files?", "Show Child Status?", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); if (JOptionPane.CANCEL_OPTION == answer) { return; } cd.setRecursive(JOptionPane.YES_OPTION == answer); } if (username != null && password != null) { cd.setUsername(username); cd.setPassword(password); } cd.setOut(new ConsolePrintStream(view)); StatusAction action = new StatusAction(view, cd); action.actionPerformed(null); } }