[jboss-svn-commits] JBL Code SVN: r26248 - labs/jbossrules/trunk/drools-eclipse/org.guvnor.tools/src/org/guvnor/tools/wizards.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Apr 24 14:31:14 EDT 2009


Author: john.graham at jboss.org
Date: 2009-04-24 14:31:14 -0400 (Fri, 24 Apr 2009)
New Revision: 26248

Modified:
   labs/jbossrules/trunk/drools-eclipse/org.guvnor.tools/src/org/guvnor/tools/wizards/SelectGuvnorResourcesPage.java
Log:
JBRULES-2026

Modified: labs/jbossrules/trunk/drools-eclipse/org.guvnor.tools/src/org/guvnor/tools/wizards/SelectGuvnorResourcesPage.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.guvnor.tools/src/org/guvnor/tools/wizards/SelectGuvnorResourcesPage.java	2009-04-24 16:14:56 UTC (rev 26247)
+++ labs/jbossrules/trunk/drools-eclipse/org.guvnor.tools/src/org/guvnor/tools/wizards/SelectGuvnorResourcesPage.java	2009-04-24 18:31:14 UTC (rev 26248)
@@ -4,7 +4,11 @@
 import java.util.List;
 
 import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jface.action.Action;
 import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.DoubleClickEvent;
+import org.eclipse.jface.viewers.IDoubleClickListener;
+import org.eclipse.jface.viewers.ISelection;
 import org.eclipse.jface.viewers.ISelectionChangedListener;
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.SelectionChangedEvent;
@@ -31,6 +35,8 @@
 	private TreeViewer viewer;
 	private String previousSelection;
 	
+	private Action doubleClickAction;
+	
 	public SelectGuvnorResourcesPage(String pageName) {
 		super(pageName);
 	}
@@ -51,9 +57,38 @@
 				updateModel();	
 			}
 		});
+		hookDoubleClickAction();
 		super.setControl(composite);
 	}
 	
+	private void hookDoubleClickAction() {
+		doubleClickAction = new Action() {
+			public void run() {
+				ISelection selection = viewer.getSelection();
+				Object obj = ((IStructuredSelection)selection).getFirstElement();
+				if (obj instanceof TreeObject) {
+					doubleClick((TreeObject)obj);
+				}
+			}
+		};
+		
+		viewer.addDoubleClickListener(new IDoubleClickListener() {
+			public void doubleClick(DoubleClickEvent event) {
+				doubleClickAction.run();
+			}
+		});
+	}
+	
+	private void doubleClick(TreeObject node) {
+		if (node.getNodeType() == TreeObject.Type.PACKAGE
+			|| node.getNodeType() == TreeObject.Type.REPOSITORY) {
+			if (viewer.getExpandedState(node)) {
+				viewer.collapseToLevel(node, 1);
+			} else {
+				viewer.expandToLevel(node, 1);
+			}
+		}
+	}
 	private void handleRepositoryCreation() {
 		// First we'll see if the repository already exists
 		GuvWizardModel model = ((IGuvnorWizard)super.getWizard()).getModel();




More information about the jboss-svn-commits mailing list