[jboss-cvs] jbosside/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/providers ...

Robert Stryker rawblem at gmail.com
Mon Dec 4 12:46:39 EST 2006


  User: rawb    
  Date: 06/12/04 12:46:39

  Modified:    as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/providers 
                        DescriptorXPathViewProvider.java
  Log:
  Changes to dialog allow you to turn a selection from an xml file into an xpath to be used in the properties view. Added action which allows you to open file directly in editor
  
  Revision  Changes    Path
  1.4       +40 -5     jbosside/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/providers/DescriptorXPathViewProvider.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: DescriptorXPathViewProvider.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbosside/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/views/server/providers/DescriptorXPathViewProvider.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -b -r1.3 -r1.4
  --- DescriptorXPathViewProvider.java	30 Nov 2006 16:11:42 -0000	1.3
  +++ DescriptorXPathViewProvider.java	4 Dec 2006 17:46:39 -0000	1.4
  @@ -27,6 +27,8 @@
   import java.util.Arrays;
   import java.util.HashMap;
   
  +import org.eclipse.core.filesystem.EFS;
  +import org.eclipse.core.filesystem.IFileStore;
   import org.eclipse.core.runtime.IProgressMonitor;
   import org.eclipse.jface.action.Action;
   import org.eclipse.jface.action.IMenuListener;
  @@ -75,7 +77,14 @@
   import org.eclipse.swt.widgets.TreeColumn;
   import org.eclipse.swt.widgets.TreeItem;
   import org.eclipse.ui.IActionBars;
  +import org.eclipse.ui.IEditorDescriptor;
  +import org.eclipse.ui.IEditorInput;
  +import org.eclipse.ui.IWorkbench;
  +import org.eclipse.ui.IWorkbenchPage;
   import org.eclipse.ui.IWorkbenchPart;
  +import org.eclipse.ui.IWorkbenchWindow;
  +import org.eclipse.ui.PlatformUI;
  +import org.eclipse.ui.internal.editors.text.JavaFileEditorInput;
   import org.eclipse.ui.views.properties.IPropertySheetPage;
   import org.eclipse.wst.server.core.IServer;
   import org.jboss.ide.eclipse.as.core.JBossServerCore;
  @@ -103,7 +112,8 @@
   	private XPathTreeLabelProvider labelProvider;
   	private DescriptorXPathPropertySheetPage propertyPage;
   
  -	private Action newXPathCategoryAction, deleteXPathCategoryAction, newXPathAction, editXPathAction, deleteXPathAction;
  +	private Action newXPathCategoryAction, deleteXPathCategoryAction, newXPathAction, 
  +					editXPathAction, deleteXPathAction, editFileAction;
   
   	private IServer server;
   	private JBossServer jbServer;
  @@ -242,7 +252,7 @@
   				Object o = getActiveCategory();
   				if( o != null && o instanceof SimpleXPathPreferenceTreeItem) {
   					String category = (String)  ((SimpleXPathPreferenceTreeItem)o).getData();
  -					XPathDialog d = new XPathDialog(Display.getCurrent().getActiveShell(), tree, category, jbServer);
  +					XPathDialog d = new XPathDialog(Display.getCurrent().getActiveShell(), jbServer, category);
   					if( d.open() == Window.OK ) {
   						SimpleTreeItem[] categories = tree.getChildren();
   						SimpleTreeItem categoryItem = null;
  @@ -265,14 +275,13 @@
   
   		editXPathAction = new Action() {
   			public void run() {
  -				SimpleTreeItem tree = getRoot();
   				Object o = getPropertySelection();
   				if( o != null && o instanceof XPathPreferenceTreeItem) {
   					XPathPreferenceTreeItem original = (XPathPreferenceTreeItem)o;
   					String category = (String)  original.getParent().getData();
   					
  -					XPathDialog d = new XPathDialog(Display.getCurrent().getActiveShell(), tree, 
  -													category, jbServer, original.getName());
  +					XPathDialog d = new XPathDialog(Display.getCurrent().getActiveShell(), 
  +							jbServer, category, original.getName());
   					d.setAttribute(original.getAttributeName());
   					d.setXpath(original.getXPath());
   					
  @@ -303,6 +312,27 @@
   			}
   		};
   		deleteXPathAction.setText(Messages.DescriptorXPathDeleteXPath);
  +		
  +		editFileAction = new Action() {
  +			public void run() {
  +				try {
  +					Object o = getPropertySelection();
  +					File file = ((XPathTreeItem)o).getFile();
  +					IWorkbench wb = PlatformUI.getWorkbench();
  +					IWorkbenchWindow win = wb.getActiveWorkbenchWindow();
  +					IWorkbenchPage page = win.getActivePage();
  +					IFileStore fileStore= EFS.getLocalFileSystem().fromLocalFile(file);
  +					if( fileStore != null ) {
  +						IEditorInput input = new JavaFileEditorInput(fileStore);
  +						IEditorDescriptor desc = PlatformUI.getWorkbench().
  +							getEditorRegistry().getDefaultEditor(file.getName());
  +					   page.openEditor(input, desc.getId());
  +					}
  +				} catch( Exception exc ) {
  +				}
  +			}
  +		};
  +		editFileAction.setText("Edit File");
   	}
   
   	public void fillContextMenu(Shell shell, IMenuManager menu, Object selection) {
  @@ -313,6 +343,7 @@
   		}
   		
   		if( selection instanceof SimpleXPathPreferenceTreeItem ) {
  +			setActiveCategory(((SimpleXPathPreferenceTreeItem)selection));
   			menu.add(this.newXPathAction);
   			menu.add(this.deleteXPathCategoryAction);
   			menu.add(new Separator());
  @@ -529,6 +560,10 @@
   				menu.add(editXPathAction);
   				menu.add(deleteXPathAction);
   			}
  +			if( getPropertySelection() != null && getPropertySelection() instanceof XPathTreeItem 
  +					&& ((XPathTreeItem)getPropertySelection()).getFile() != null ) {
  +				menu.add(editFileAction);
  +			}
   		}
   
   		
  
  
  



More information about the jboss-cvs-commits mailing list