Author: scabanovich
Date: 2011-09-09 12:22:00 -0400 (Fri, 09 Sep 2011)
New Revision: 34606
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java
Log:
JBIDE-9347
https://issues.jboss.org/browse/JBIDE-9347
Initial implementation of Assignable Beans dialog.
Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF 2011-09-09 15:18:47
UTC (rev 34605)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/META-INF/MANIFEST.MF 2011-09-09 16:22:00
UTC (rev 34606)
@@ -11,6 +11,7 @@
org.eclipse.jdt.core;bundle-version="3.7.0",
org.eclipse.core.resources;bundle-version="3.7.100",
org.jboss.tools.common.model,
+ org.jboss.tools.common.model.ui,
org.eclipse.wst.common.project.facet.core;bundle-version="1.4.200",
org.eclipse.wst.common.modulecore;bundle-version="1.2.100",
org.eclipse.wst.common.frameworks;bundle-version="1.2.0",
@@ -26,7 +27,8 @@
org.apache.ant;bundle-version="1.7.1",
org.jboss.tools.jst.web,
org.jboss.tools.common.validation,
- org.jboss.tools.cdi.xml
+ org.jboss.tools.cdi.xml,
+ org.eclipse.ui.ide;bundle-version="3.7.0"
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-Vendor: JBoss by Red Hat
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java 2011-09-09
15:18:47 UTC (rev 34605)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/IBean.java 2011-09-09
16:22:00 UTC (rev 34606)
@@ -198,4 +198,10 @@
* value, and <tt>false</tt> otherwise
*/
boolean isNullable();
+
+ /**
+ * Opens this bean in editor.
+ *
+ */
+ void open();
}
\ No newline at end of file
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2011-09-09
15:18:47 UTC (rev 34605)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/AbstractBeanElement.java 2011-09-09
16:22:00 UTC (rev 34606)
@@ -22,7 +22,16 @@
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jdt.core.IMember;
import org.eclipse.jdt.core.IType;
+import org.eclipse.jdt.core.JavaModelException;
import org.eclipse.jdt.core.Signature;
+import org.eclipse.jdt.ui.JavaUI;
+import org.eclipse.jface.text.TextSelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.ide.IDE;
+import org.eclipse.ui.texteditor.ITextEditor;
import org.jboss.tools.cdi.core.CDIConstants;
import org.jboss.tools.cdi.core.CDICoreNature;
import org.jboss.tools.cdi.core.CDICorePlugin;
@@ -38,12 +47,16 @@
import org.jboss.tools.cdi.internal.core.impl.definition.AbstractMemberDefinition;
import org.jboss.tools.cdi.internal.core.impl.definition.AbstractTypeDefinition;
import org.jboss.tools.cdi.internal.core.impl.definition.AnnotationDefinition;
+import org.jboss.tools.common.CommonPlugin;
+import org.jboss.tools.common.editor.ObjectMultiPageEditor;
import org.jboss.tools.common.java.IAnnotated;
import org.jboss.tools.common.java.IAnnotationDeclaration;
+import org.jboss.tools.common.java.IJavaMemberReference;
import org.jboss.tools.common.java.IParametedType;
import org.jboss.tools.common.java.ITypeDeclaration;
import org.jboss.tools.common.java.ParametedType;
import org.jboss.tools.common.java.TypeDeclaration;
+import org.jboss.tools.common.model.ui.editor.EditorPartWrapper;
import org.jboss.tools.common.text.ITextSourceReference;
/**
@@ -356,5 +369,44 @@
}
return result;
}
+
+ public void open() {
+ if(getDefinition().getOriginalDefinition() != null) {
+ IEditorPart part = null;
+ ITextSourceReference source = getDefinition().getOriginalDefinition();
+ IFile resource = (IFile)source.getResource();
+ IWorkbenchWindow window =
CDICorePlugin.getDefault().getWorkbench().getActiveWorkbenchWindow();
+ if (window == null) return;
+ IWorkbenchPage page = window.getActivePage();
+ try {
+ part = IDE.openEditor(page, resource);
+ } catch (PartInitException e) {
+ CDICorePlugin.getDefault().logError(e);
+ }
+ if(part instanceof EditorPartWrapper) {
+ part = ((EditorPartWrapper)part).getEditor();
+ }
+ if(part instanceof ObjectMultiPageEditor) {
+ ObjectMultiPageEditor mpe = (ObjectMultiPageEditor)part;
+ ITextEditor textEditor = (ITextEditor)mpe.getAdapter(ITextEditor.class);
+ if(textEditor != null) {
+ mpe.setActiveEditor(textEditor);
+ part = textEditor;
+ }
+ }
+ if(part != null) {
+ part.getEditorSite().getSelectionProvider().setSelection(new
TextSelection(source.getStartPosition(), source.getLength()));
+ }
+ } else if (this instanceof IJavaMemberReference) {
+ IMember member = ((IJavaMemberReference)this).getSourceMember();
+ try {
+ JavaUI.openInEditor(member);
+ } catch (PartInitException e) {
+ CommonPlugin.getDefault().logError(e);
+ } catch (JavaModelException e) {
+ CommonPlugin.getDefault().logError(e);
+ }
+ }
+ }
}
Modified:
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java
===================================================================
---
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java 2011-09-09
15:18:47 UTC (rev 34605)
+++
trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/impl/EventBean.java 2011-09-09
16:22:00 UTC (rev 34606)
@@ -181,4 +181,10 @@
}
return "";
}
+
+ @Override
+ public void open() {
+ // TODO Auto-generated method stub
+
+ }
}
\ No newline at end of file