KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > terracotta > dso > editors > chooser > ProjectFolderNavigator


1 /*
2  * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved.
3  */

4 package org.terracotta.dso.editors.chooser;
5
6 import org.eclipse.core.resources.IFolder;
7 import org.eclipse.core.resources.IProject;
8
9 import org.dijon.DialogResource;
10
11 import org.terracotta.dso.editors.tree.ProjectFolderNode;
12 import org.terracotta.dso.editors.tree.ProjectFolderRoot;
13 import org.terracotta.dso.editors.tree.ProjectModel;
14
15 import javax.swing.tree.TreePath JavaDoc;
16
17 public class ProjectFolderNavigator extends ProjectNavigator {
18   public ProjectFolderNavigator(java.awt.Frame JavaDoc frame) {
19     super(frame);
20   }
21   
22   public void load(DialogResource dialogRes) {
23     super.load(dialogRes);
24     setTitle("Project Directory Navigator");
25   }
26   
27   protected ProjectModel createModel(IProject project) {
28     return new ProjectModel(new ProjectFolderRoot(project));
29   }
30   
31   protected ProjectFolderNode[] getSelectedFolderNodes() {
32     TreePath JavaDoc[] paths = m_packageTree.getSelectionPaths();
33     ProjectFolderNode[] nodes = new ProjectFolderNode[paths.length];
34     
35     for(int i = 0; i < paths.length; i++) {
36       nodes[i] = (ProjectFolderNode)paths[i].getLastPathComponent();
37     }
38     
39     return nodes;
40   }
41   
42   public IFolder[] getSelectedFolders() {
43     ProjectFolderNode[] nodes = getSelectedFolderNodes();
44     IFolder[] result;
45     
46     if(nodes != null) {
47       result = new IFolder[nodes.length];
48       
49       for(int i = 0; i < result.length; i++) {
50         result[i] = nodes[i].getFolder();
51       }
52     }
53     else {
54       result = new IFolder[]{};
55     }
56     
57     return result;
58   }
59   
60   public IFolder getSelectedFolder() {
61     IFolder[] folders = getSelectedFolders();
62     return folders != null && folders.length > 0 ? folders[0] : null;
63   }
64 }
65
Popular Tags