/* * Copyright 2009-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.codehaus.groovy.eclipse.dsl.classpath; import org.codehaus.groovy.eclipse.dsl.GroovyDSLCoreActivator; import org.eclipse.jdt.internal.ui.packageview.ClassPathContainer; import org.eclipse.jface.viewers.IDecoration; import org.eclipse.jface.viewers.ILightweightLabelDecorator; import org.eclipse.jface.viewers.LabelProvider; public class DSLDClasspathContainerDecorator extends LabelProvider implements ILightweightLabelDecorator { public void decorate(Object element, IDecoration decoration) { // decorate the class path container and add the originating target runtime if (element instanceof ClassPathContainer) { ClassPathContainer container = (ClassPathContainer) element; if (container.getClasspathEntry().getPath().equals(GroovyDSLCoreActivator.CLASSPATH_CONTAINER_ID)) { if (container.getJavaProject().getProject().isAccessible() && GroovyDSLCoreActivator.getDefault().isDSLDDisabled()) { decoration.addSuffix(" (Disabled)"); } } } } }