| /** |
| * <copyright> |
| * </copyright> |
| * |
| * $Id$ |
| */ |
| package org.eclipse.gmf.tooldef.provider; |
| |
| import java.util.ArrayList; |
| import java.util.Collection; |
| |
| import org.eclipse.emf.common.notify.Adapter; |
| import org.eclipse.emf.common.notify.Notification; |
| import org.eclipse.emf.common.notify.Notifier; |
| import org.eclipse.emf.edit.provider.ChangeNotifier; |
| import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; |
| import org.eclipse.emf.edit.provider.ComposedAdapterFactory; |
| import org.eclipse.emf.edit.provider.IChangeNotifier; |
| import org.eclipse.emf.edit.provider.IDisposable; |
| import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; |
| import org.eclipse.emf.edit.provider.IItemLabelProvider; |
| import org.eclipse.emf.edit.provider.IItemPropertySource; |
| import org.eclipse.emf.edit.provider.INotifyChangedListener; |
| import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; |
| import org.eclipse.emf.edit.provider.ITreeItemContentProvider; |
| import org.eclipse.gmf.tooldef.util.GMFToolAdapterFactory; |
| |
| /** |
| * This is the factory that is used to provide the interfaces needed to support Viewers. |
| * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}. |
| * The adapters also support Eclipse property sheets. |
| * Note that most of the adapters are shared among multiple instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public class GMFToolItemProviderAdapterFactory extends GMFToolAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { |
| |
| /** |
| * This keeps track of the root adapter factory that delegates to this adapter factory. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected ComposedAdapterFactory parentAdapterFactory; |
| |
| /** |
| * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected IChangeNotifier changeNotifier = new ChangeNotifier(); |
| |
| /** |
| * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected Collection<Object> supportedTypes = new ArrayList<Object>(); |
| |
| /** |
| * This constructs an instance. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public GMFToolItemProviderAdapterFactory() { |
| supportedTypes.add(IEditingDomainItemProvider.class); |
| supportedTypes.add(IStructuredItemContentProvider.class); |
| supportedTypes.add(ITreeItemContentProvider.class); |
| supportedTypes.add(IItemLabelProvider.class); |
| supportedTypes.add(IItemPropertySource.class); |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.ToolRegistry} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected ToolRegistryItemProvider toolRegistryItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.ToolRegistry}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createToolRegistryAdapter() { |
| if (toolRegistryItemProvider == null) { |
| toolRegistryItemProvider = new ToolRegistryItemProvider(this); |
| } |
| |
| return toolRegistryItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.PaletteSeparator} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected PaletteSeparatorItemProvider paletteSeparatorItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.PaletteSeparator}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createPaletteSeparatorAdapter() { |
| if (paletteSeparatorItemProvider == null) { |
| paletteSeparatorItemProvider = new PaletteSeparatorItemProvider(this); |
| } |
| |
| return paletteSeparatorItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.ToolGroup} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected ToolGroupItemProvider toolGroupItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.ToolGroup}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createToolGroupAdapter() { |
| if (toolGroupItemProvider == null) { |
| toolGroupItemProvider = new ToolGroupItemProvider(this); |
| } |
| |
| return toolGroupItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.Palette} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected PaletteItemProvider paletteItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.Palette}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createPaletteAdapter() { |
| if (paletteItemProvider == null) { |
| paletteItemProvider = new PaletteItemProvider(this); |
| } |
| |
| return paletteItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.StandardTool} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected StandardToolItemProvider standardToolItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.StandardTool}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createStandardToolAdapter() { |
| if (standardToolItemProvider == null) { |
| standardToolItemProvider = new StandardToolItemProvider(this); |
| } |
| |
| return standardToolItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.CreationTool} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected CreationToolItemProvider creationToolItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.CreationTool}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createCreationToolAdapter() { |
| if (creationToolItemProvider == null) { |
| creationToolItemProvider = new CreationToolItemProvider(this); |
| } |
| |
| return creationToolItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.GenericTool} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected GenericToolItemProvider genericToolItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.GenericTool}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createGenericToolAdapter() { |
| if (genericToolItemProvider == null) { |
| genericToolItemProvider = new GenericToolItemProvider(this); |
| } |
| |
| return genericToolItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.Separator} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected SeparatorItemProvider separatorItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.Separator}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createSeparatorAdapter() { |
| if (separatorItemProvider == null) { |
| separatorItemProvider = new SeparatorItemProvider(this); |
| } |
| |
| return separatorItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.PredefinedItem} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected PredefinedItemItemProvider predefinedItemItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.PredefinedItem}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createPredefinedItemAdapter() { |
| if (predefinedItemItemProvider == null) { |
| predefinedItemItemProvider = new PredefinedItemItemProvider(this); |
| } |
| |
| return predefinedItemItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.PredefinedMenu} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected PredefinedMenuItemProvider predefinedMenuItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.PredefinedMenu}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createPredefinedMenuAdapter() { |
| if (predefinedMenuItemProvider == null) { |
| predefinedMenuItemProvider = new PredefinedMenuItemProvider(this); |
| } |
| |
| return predefinedMenuItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.MenuAction} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected MenuActionItemProvider menuActionItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.MenuAction}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createMenuActionAdapter() { |
| if (menuActionItemProvider == null) { |
| menuActionItemProvider = new MenuActionItemProvider(this); |
| } |
| |
| return menuActionItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.ItemRef} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected ItemRefItemProvider itemRefItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.ItemRef}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createItemRefAdapter() { |
| if (itemRefItemProvider == null) { |
| itemRefItemProvider = new ItemRefItemProvider(this); |
| } |
| |
| return itemRefItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.ContextMenu} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected ContextMenuItemProvider contextMenuItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.ContextMenu}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createContextMenuAdapter() { |
| if (contextMenuItemProvider == null) { |
| contextMenuItemProvider = new ContextMenuItemProvider(this); |
| } |
| |
| return contextMenuItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.PopupMenu} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected PopupMenuItemProvider popupMenuItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.PopupMenu}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createPopupMenuAdapter() { |
| if (popupMenuItemProvider == null) { |
| popupMenuItemProvider = new PopupMenuItemProvider(this); |
| } |
| |
| return popupMenuItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.MainMenu} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected MainMenuItemProvider mainMenuItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.MainMenu}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createMainMenuAdapter() { |
| if (mainMenuItemProvider == null) { |
| mainMenuItemProvider = new MainMenuItemProvider(this); |
| } |
| |
| return mainMenuItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.Toolbar} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected ToolbarItemProvider toolbarItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.Toolbar}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createToolbarAdapter() { |
| if (toolbarItemProvider == null) { |
| toolbarItemProvider = new ToolbarItemProvider(this); |
| } |
| |
| return toolbarItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.DefaultImage} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected DefaultImageItemProvider defaultImageItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.DefaultImage}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createDefaultImageAdapter() { |
| if (defaultImageItemProvider == null) { |
| defaultImageItemProvider = new DefaultImageItemProvider(this); |
| } |
| |
| return defaultImageItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.BundleImage} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected BundleImageItemProvider bundleImageItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.BundleImage}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createBundleImageAdapter() { |
| if (bundleImageItemProvider == null) { |
| bundleImageItemProvider = new BundleImageItemProvider(this); |
| } |
| |
| return bundleImageItemProvider; |
| } |
| |
| /** |
| * This keeps track of the one adapter used for all {@link org.eclipse.gmf.tooldef.GenericStyleSelector} instances. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| protected GenericStyleSelectorItemProvider genericStyleSelectorItemProvider; |
| |
| /** |
| * This creates an adapter for a {@link org.eclipse.gmf.tooldef.GenericStyleSelector}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter createGenericStyleSelectorAdapter() { |
| if (genericStyleSelectorItemProvider == null) { |
| genericStyleSelectorItemProvider = new GenericStyleSelectorItemProvider(this); |
| } |
| |
| return genericStyleSelectorItemProvider; |
| } |
| |
| /** |
| * This returns the root adapter factory that contains this factory. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public ComposeableAdapterFactory getRootAdapterFactory() { |
| return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory(); |
| } |
| |
| /** |
| * This sets the composed adapter factory that contains this factory. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) { |
| this.parentAdapterFactory = parentAdapterFactory; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public boolean isFactoryForType(Object type) { |
| return supportedTypes.contains(type) || super.isFactoryForType(type); |
| } |
| |
| /** |
| * This implementation substitutes the factory itself as the key for the adapter. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Adapter adapt(Notifier notifier, Object type) { |
| return super.adapt(notifier, this); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Object adapt(Object object, Object type) { |
| if (isFactoryForType(type)) { |
| Object adapter = super.adapt(object, type); |
| if (!(type instanceof Class<?>) || (((Class<?>) type).isInstance(adapter))) { |
| return adapter; |
| } |
| } |
| |
| return null; |
| } |
| |
| /** |
| * This adds a listener. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void addListener(INotifyChangedListener notifyChangedListener) { |
| changeNotifier.addListener(notifyChangedListener); |
| } |
| |
| /** |
| * This removes a listener. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void removeListener(INotifyChangedListener notifyChangedListener) { |
| changeNotifier.removeListener(notifyChangedListener); |
| } |
| |
| /** |
| * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void fireNotifyChanged(Notification notification) { |
| changeNotifier.fireNotifyChanged(notification); |
| |
| if (parentAdapterFactory != null) { |
| parentAdapterFactory.fireNotifyChanged(notification); |
| } |
| } |
| |
| /** |
| * This disposes all of the item providers created by this factory. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void dispose() { |
| if (toolRegistryItemProvider != null) |
| toolRegistryItemProvider.dispose(); |
| if (paletteSeparatorItemProvider != null) |
| paletteSeparatorItemProvider.dispose(); |
| if (toolGroupItemProvider != null) |
| toolGroupItemProvider.dispose(); |
| if (paletteItemProvider != null) |
| paletteItemProvider.dispose(); |
| if (standardToolItemProvider != null) |
| standardToolItemProvider.dispose(); |
| if (creationToolItemProvider != null) |
| creationToolItemProvider.dispose(); |
| if (genericToolItemProvider != null) |
| genericToolItemProvider.dispose(); |
| if (separatorItemProvider != null) |
| separatorItemProvider.dispose(); |
| if (predefinedItemItemProvider != null) |
| predefinedItemItemProvider.dispose(); |
| if (predefinedMenuItemProvider != null) |
| predefinedMenuItemProvider.dispose(); |
| if (menuActionItemProvider != null) |
| menuActionItemProvider.dispose(); |
| if (itemRefItemProvider != null) |
| itemRefItemProvider.dispose(); |
| if (contextMenuItemProvider != null) |
| contextMenuItemProvider.dispose(); |
| if (popupMenuItemProvider != null) |
| popupMenuItemProvider.dispose(); |
| if (mainMenuItemProvider != null) |
| mainMenuItemProvider.dispose(); |
| if (toolbarItemProvider != null) |
| toolbarItemProvider.dispose(); |
| if (defaultImageItemProvider != null) |
| defaultImageItemProvider.dispose(); |
| if (bundleImageItemProvider != null) |
| bundleImageItemProvider.dispose(); |
| if (genericStyleSelectorItemProvider != null) |
| genericStyleSelectorItemProvider.dispose(); |
| } |
| |
| } |