List of usage examples for org.eclipse.jdt.core ElementChangedEvent getDelta
public IJavaElementDelta getDelta()
From source file:com.blackducksoftware.integration.eclipseplugin.internal.listeners.ProjectDependenciesChangedListener.java
License:Apache License
@Override public void elementChanged(final ElementChangedEvent event) { visit(event.getDelta()); }
From source file:com.crispico.flower.mp.codesync.code.java.JavaElementChangedListener.java
License:Open Source License
@Override public void elementChanged(ElementChangedEvent event) { processDelta(event.getDelta()); }
From source file:com.google.gdt.eclipse.core.java.ClasspathChangedListener.java
License:Open Source License
public void elementChanged(ElementChangedEvent event) { for (IJavaElementDelta delta : event.getDelta().getChangedChildren()) { int flags = delta.getFlags(); if ((flags & IJavaElementDelta.F_CLASSPATH_CHANGED) != 0) { IJavaElement element = delta.getElement(); if (element.getElementType() != IJavaElement.JAVA_PROJECT) { continue; }//from ww w .ja va 2 s . c o m classpathChanged((IJavaProject) element); } } }
From source file:com.google.gdt.eclipse.core.reference.ElementChangeListener.java
License:Open Source License
public void elementChanged(ElementChangedEvent event) { final Map<IJavaElement, IJavaElementDelta> changedElements = new HashMap<IJavaElement, IJavaElementDelta>(); JavaModelSearch.visitJavaElementDelta(event.getDelta(), new IJavaElementDeltaVisitor() { public boolean visit(IJavaElementDelta delta) { IJavaElement element = delta.getElement(); /*// w ww. j av a 2 s . co m * We care about packages being only added or removed because if we * called the change listeners on a change to a package, any change * to any file in that package will cause all ui.xml files that * reference that package (say with xmlns urn imports) to be * revalidated. Some projects end up having hundreds of ui.xml files * referencing a package, and then saving any change in that package * ends up taking tens of seconds. */ int type = element.getElementType(); if (type == IJavaElement.PACKAGE_FRAGMENT && delta.getKind() == IJavaElementDelta.CHANGED) { return true; } Set<IReference> references = referenceManager.getReferencesWithMatchingJavaElement(element, EnumSet.of(ReferenceLocationType.TARGET)); if (references != null && references.size() > 0) { changedElements.put(element, delta); } return true; } }); if (changedElements.size() > 0) { callReferenceChangeListeners(changedElements); } }
From source file:com.google.gdt.eclipse.managedapis.impl.ManagedApiChangeListener.java
License:Open Source License
/** * Implements the standard elementChanged method defined by the * IElementChangedListener, this method identifies events of importance to a * specific ManagedApiProject and calls the appropriate abstract method on a * match./*from w w w . ja v a 2s . com*/ */ public void elementChanged(ElementChangedEvent event) { if (managedApiProject == null) { throw new IllegalStateException("managedApiProject must be set prior to registering the listener"); } for (IJavaElementDelta delta : event.getDelta().getRemovedChildren()) { int flags = delta.getFlags(); if (flags == 0) { IJavaElement element = delta.getElement(); IJavaProject javaProject = (IJavaProject) element.getAdapter(IJavaProject.class); if (javaProject != null) { IProject project = javaProject.getProject(); if (project.equals(managedApiProject.getJavaProject().getProject())) { managedApiProjectRemoved(); } } } } for (IJavaElementDelta delta : event.getDelta().getChangedChildren()) { int flags = delta.getFlags(); if ((flags & IJavaElementDelta.F_CLASSPATH_CHANGED) != 0) { IJavaElement element = delta.getElement(); if (element.getElementType() == IJavaElement.JAVA_PROJECT && element.equals(managedApiProject.getJavaProject())) { Set<ManagedApi> managedApiRemovalSet = new HashSet<ManagedApi>( delta.getChangedChildren().length); List<String> managedApiFolderNames = new ArrayList(); for (IJavaElementDelta childDelta : delta.getChangedChildren()) { if ((childDelta.getFlags() & IJavaElementDelta.F_REMOVED_FROM_CLASSPATH) != 0) { IJavaElement childElement = childDelta.getElement(); if (childElement.getElementType() == IJavaElement.PACKAGE_FRAGMENT_ROOT && managedApiProject.isPackageFragmentRootInManagedApi( (IPackageFragmentRoot) childElement)) { String managedApiFolderName = managedApiProject .getPathRelativeToManagedApiRoot((IPackageFragmentRoot) childElement); if (!managedApiFolderNames.contains(managedApiFolderName)) { managedApiFolderNames.add(managedApiFolderName); managedApiRemovalSet .add(managedApiProject.createManagedApi(managedApiFolderName)); } } } } if (managedApiRemovalSet.size() > 0) { managedApiRemoved( managedApiRemovalSet.toArray(new ManagedApiImpl[managedApiRemovalSet.size()])); } } } else if ((flags & IJavaElementDelta.F_CLOSED) != 0) { IJavaElement element = delta.getElement(); if (element.getElementType() == IJavaElement.JAVA_PROJECT && element.equals(managedApiProject.getJavaProject())) { managedApiProjectClosed(); } } } }
From source file:com.google.gdt.eclipse.suite.launch.processors.LaunchConfigAffectingChangesListener.java
License:Open Source License
public void elementChanged(ElementChangedEvent event) { for (IJavaElementDelta delta : event.getDelta().getAffectedChildren()) { int flags = delta.getFlags(); if ((flags & IJavaElementDelta.F_CLASSPATH_CHANGED) != 0) { IJavaElement element = delta.getElement(); if (element.getElementType() != IJavaElement.JAVA_PROJECT) { continue; }/*from w w w. ja va 2 s .c om*/ updateLaunchConfigs((IJavaProject) element); } } }
From source file:com.ifedorenko.m2e.sourcelookup.internal.JavaProjectSources.java
License:Open Source License
@Override public void elementChanged(ElementChangedEvent event) { try {/*from w w w. jav a2 s . com*/ final Set<IJavaProject> remove = new HashSet<IJavaProject>(); final Set<IJavaProject> add = new HashSet<IJavaProject>(); processDelta(event.getDelta(), remove, add); for (IJavaProject project : remove) { removeJavaProject(project); } for (IJavaProject project : add) { addJavaProject(project); } } catch (CoreException e) { // maybe do something about it? } }
From source file:com.javadude.dependencies.editparts.WorkspaceRootEditPart.java
License:Open Source License
public WorkspaceRootEditPart() { JavaCore.addElementChangedListener(new IElementChangedListener() { public void elementChanged(final ElementChangedEvent event) { Display.getDefault().asyncExec(new Runnable() { public void run() { //get the workspace changes from the ElementChangedEvent IJavaElementDelta[] changedChildren = event.getDelta().getAffectedChildren(); boolean refreshProjects = false; for (int i = 0; i < changedChildren.length; i++) { IJavaElementDelta delta = changedChildren[i]; //If the changed element is a java project if (delta.getElement() instanceof IJavaProject) { refreshProjects = true; }/*from w w w . j ava2 s . com*/ } refresh(); if (refreshProjects) { for (@SuppressWarnings("rawtypes") Iterator iter = getChildren().iterator(); iter.hasNext();) { AbstractGraphicalEditPart editPart = (AbstractGraphicalEditPart) iter.next(); editPart.refresh(); } } } }); } }); }
From source file:com.microsoftopentechnologies.acsfilter.ui.classpath.WAACSStartUp.java
License:Open Source License
@Override public void earlyStartup() { IElementChangedListener listener = new IElementChangedListener() { public void elementChanged(final ElementChangedEvent event) { if (event.getSource().toString().contains(Messages.sdkJar) && event.getDelta().getAffectedChildren()[0].getAffectedChildren()[0] .getFlags() == IJavaElementDelta.F_REMOVED_FROM_CLASSPATH) { IProject proj = event.getDelta().getAffectedChildren()[0].getResourceDeltas()[0].getResource() .getProject();//ww w .ja v a 2 s. co m removeACSEntries(proj); } } }; JavaCore.addElementChangedListener(listener, ElementChangedEvent.POST_CHANGE); }
From source file:com.redhat.ceylon.eclipse.code.explorer.PackageExplorerContentProvider.java
License:Open Source License
public void elementChanged(final ElementChangedEvent event) { final ArrayList<Runnable> runnables = new ArrayList<Runnable>(); try {//ww w .ja v a 2s. co m // 58952 delete project does not update Package Explorer [package explorer] // if the input to the viewer is deleted then refresh to avoid the display of stale elements if (inputDeleted(runnables)) return; processDelta(event.getDelta(), runnables); } catch (JavaModelException e) { JavaPlugin.log(e); } finally { executeRunnables(runnables); } }