| // SEIRRelativeValueColorProviderAdapterFactory.java |
| package org.eclipse.stem.ui.adapters.color; |
| |
| /******************************************************************************* |
| * Copyright (c) 2006 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| |
| import org.eclipse.emf.common.notify.Adapter; |
| import org.eclipse.stem.core.graph.Node; |
| import org.eclipse.stem.core.model.Decorator; |
| import org.eclipse.stem.ui.preferences.PreferenceConstants; |
| import org.eclipse.stem.ui.widgets.ColorProviderPropertiesComposite; |
| import org.eclipse.stem.ui.widgets.ColorProviderPropertiesComposite.PropertySelectionEvent; |
| import org.eclipse.swt.widgets.Composite; |
| |
| /** |
| * This factory create adapters that adapt {@link Node}s to |
| * {@link SEIRRelativeValueColorProvider}s. |
| */ |
| public class SEIRRelativeValueColorProviderAdapterFactory extends |
| AbstractRelativeValueColorProviderAdapterFactory { |
| |
| /** |
| * @see org.eclipse.stem.core.graph.util.GraphAdapterFactory#createNodeAdapter() |
| */ |
| @Override |
| public Adapter createNodeAdapter() { |
| final SEIRRelativeValueColorProviderAdapter adapter = |
| new SEIRRelativeValueColorProviderAdapter(selectedProperty); |
| addPropertySelectionListener(adapter); |
| adapter.propertySelected(selectedProperty); |
| return adapter; |
| } // createNodeAdapter |
| |
| /** |
| * @see org.eclipse.stem.ui.adapters.color.AbstractRelativeValueColorProviderAdapterFactory#isFactoryForType(java.lang.Object) |
| */ |
| @Override |
| public boolean isFactoryForType(final Object type) { |
| return type == SEIRRelativeValueColorProvider.class; |
| } // isFactoryForType |
| |
| /** |
| * @see org.eclipse.stem.ui.adapters.color.IColorProviderAdapterFactory#createPropertiesComposite(org.eclipse.swt.widgets.Composite, int, org.eclipse.stem.core.model.Decorator) |
| */ |
| public Composite createPropertiesComposite(final Composite parent, final int style, final Decorator selectedDecorator, final String populationIdentifier) |
| { |
| final ColorProviderPropertiesComposite propertiesComposite = new ColorProviderPropertiesComposite( |
| parent, style); |
| propertiesComposite.setInitialPropertyName(getPreferenceValue(PreferenceConstants.INITIAL_ATTRIBUTE_NAME_STRING_PREFERENCE)); |
| propertiesComposite.initialize(selectedDecorator, populationIdentifier); |
| selectedProperty = propertiesComposite.getSelectedProperty(); |
| propertiesComposite |
| .addPropertySelectionListener(new ColorProviderPropertiesComposite.PropertySelectionListener() { |
| public void propertySelected( |
| final PropertySelectionEvent propertySelectionEvent) { |
| firePropertySelectionListener(propertySelectionEvent.getProperty()); |
| } |
| }); |
| this.propertiesComposite = propertiesComposite; |
| return propertiesComposite; |
| } |
| |
| /** |
| * @see org.eclipse.stem.ui.adapters.color.AbstractRelativeValueColorProviderAdapterFactory#createColorsLegendComposite(org.eclipse.swt.widgets.Composite, |
| * int) |
| */ |
| @Override |
| public Composite createColorsLegendComposite(final Composite parent, |
| final int style) { |
| final ColorsLegendComposite colorsLegendComposite = new ColorsLegendComposite( |
| parent, style); |
| colorsLegendComposite |
| .addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_ZERO_RELATIVE_VALUE_ID, |
| "Relative value is 0"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_1_ID, |
| "Relative value between 0 and 0.1"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_2_ID, |
| "Relative value between 0.1 and 0.2"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_3_ID, |
| "Relative value between 0.2 and 0.3"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_4_ID, |
| "Relative value between 0.3 and 0.4"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_5_ID, |
| "Relative value between 0.4 and 0.5"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_6_ID, |
| "Relative value between 0.5 and 0.6"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_7_ID, |
| "Relative value between 0.6 and 0.7"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_8_ID, |
| "Relative value between 0.7 and 0.8"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_9_ID, |
| "Relative value between 0.8 and 0.9"); |
| colorsLegendComposite.addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_RANGE_10_ID, |
| "Relative value between 0.9 and 1.0"); |
| colorsLegendComposite |
| .addColorEntry( |
| RelativeValueColorPreferences.FOREGROUND_COLOR_MAXIMUM_RELATIVE_VALUE_ID, |
| "Relative value is 1 (maximum)"); |
| return colorsLegendComposite; |
| } // createColorsLegendComposite |
| |
| } // SEIRRelativeValueColorProviderAdapterFactory |