KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > eclipse > emf > codegen > ecore > genmodel > provider > GenDataTypeItemProvider


1 /**
2  * <copyright>
3  *
4  * Copyright (c) 2002-2004 IBM Corporation and others.
5  * All rights reserved. This program and the accompanying materials
6  * are made available under the terms of the Eclipse Public License v1.0
7  * which accompanies this distribution, and is available at
8  * http://www.eclipse.org/legal/epl-v10.html
9  *
10  * Contributors:
11  * IBM - Initial API and implementation
12  *
13  * </copyright>
14  *
15  * $Id: GenDataTypeItemProvider.java,v 1.7 2005/06/08 06:17:51 nickb Exp $
16  */

17 package org.eclipse.emf.codegen.ecore.genmodel.provider;
18
19
20 import java.util.List JavaDoc;
21
22 import org.eclipse.emf.codegen.ecore.genmodel.GenDataType;
23 import org.eclipse.emf.codegen.ecore.genmodel.GenEnum;
24 import org.eclipse.emf.codegen.ecore.genmodel.GenModelPackage;
25 import org.eclipse.emf.common.notify.AdapterFactory;
26 import org.eclipse.emf.common.notify.Notification;
27 import org.eclipse.emf.common.util.ResourceLocator;
28 import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
29 import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
30 import org.eclipse.emf.edit.provider.IItemLabelProvider;
31 import org.eclipse.emf.edit.provider.IItemPropertySource;
32 import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
33 import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
34
35 import org.eclipse.emf.edit.provider.ViewerNotification;
36
37 // import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
38

39
40 /**
41  * This is the item provider adapter for a {@link org.eclipse.emf.codegen.ecore.genmodel.GenDataType} object.
42  * <!-- begin-user-doc -->
43  * <!-- end-user-doc -->
44  * @generated
45  */

46 public class GenDataTypeItemProvider
47   extends GenBaseItemProvider
48   implements
49     IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource
50 {
51   /**
52    * This constructs an instance from a factory and a notifier.
53    * <!-- begin-user-doc -->
54    * <!-- end-user-doc -->
55    * @generated
56    */

57   public GenDataTypeItemProvider(AdapterFactory adapterFactory)
58   {
59     super(adapterFactory);
60   }
61
62   /**
63    * This returns the property descriptors for the adapted class.
64    * <!-- begin-user-doc -->
65    * <!-- end-user-doc -->
66    * @generated
67    */

68   public List JavaDoc getPropertyDescriptors(Object JavaDoc object)
69   {
70     if (itemPropertyDescriptors == null)
71     {
72       super.getPropertyDescriptors(object);
73
74       addEcoreDataTypePropertyDescriptor(object);
75     }
76     return itemPropertyDescriptors;
77   }
78
79   /**
80    * This adds a property descriptor for the Ecore Data Type feature.
81    * <!-- begin-user-doc -->
82    * <!-- end-user-doc -->
83    * @generated NOT
84    */

85   protected void addEcoreDataTypePropertyDescriptor(Object JavaDoc object)
86   {
87     if (object instanceof GenEnum) return;
88
89     itemPropertyDescriptors.add
90       (createItemPropertyDescriptor
91         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
92          getResourceLocator(),
93          getString("_UI_GenDataType_ecoreDataType_feature"),
94          getString("_UI_GenDataType_ecoreDataType_description"),
95          GenModelPackage.eINSTANCE.getGenDataType_EcoreDataType(),
96          false,
97          null,
98          getString("_UI_EcorePropertyCategory"),
99          null));
100   }
101
102   /**
103    */

104   public Object JavaDoc getImage(Object JavaDoc object)
105   {
106     return new UnderlayedImage(getResourceLocator().getImage("full/obj16/EDataType"));
107   }
108
109   /**
110    * This returns the label text for the adapted class.
111    */

112   public String JavaDoc getText(Object JavaDoc object)
113   {
114     GenDataType genDataType = (GenDataType)object;
115     return
116       genDataType.getName() +
117         (genDataType.getQualifiedInstanceClassName() == null ? "" : " <" + genDataType.getQualifiedInstanceClassName() + ">");
118   }
119
120   /**
121    * This handles model notifications by calling {@link #updateChildren} to update any cached
122    * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
123    * <!-- begin-user-doc -->
124    * <!-- end-user-doc -->
125    * @generated
126    */

127   public void notifyChanged(Notification notification)
128   {
129     updateChildren(notification);
130
131     switch (notification.getFeatureID(GenDataType.class))
132     {
133       case GenModelPackage.GEN_DATA_TYPE__GEN_PACKAGE:
134       case GenModelPackage.GEN_DATA_TYPE__ECORE_DATA_TYPE:
135         fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
136         return;
137     }
138     super.notifyChanged(notification);
139   }
140
141   /**
142    * Return the resource locator for this item provider's resources.
143    * <!-- begin-user-doc -->
144    * <!-- end-user-doc -->
145    * @generated
146    */

147   public ResourceLocator getResourceLocator()
148   {
149     return GenModelEditPlugin.INSTANCE;
150   }
151
152 }
153
Popular Tags