KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > enhydra > dods > editor > Doml > provider > PackageTypeItemProvider


1 /**
2  * <copyright>
3  * </copyright>
4  *
5  * $Id$
6  */

7 package org.enhydra.dods.editor.Doml.provider;
8
9
10 import java.util.Collection JavaDoc;
11 import java.util.List JavaDoc;
12
13 import org.eclipse.emf.common.notify.AdapterFactory;
14 import org.eclipse.emf.common.notify.Notification;
15
16 import org.eclipse.emf.common.util.ResourceLocator;
17
18 import org.eclipse.emf.ecore.EStructuralFeature;
19
20 import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
21 import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
22 import org.eclipse.emf.edit.provider.IItemLabelProvider;
23 import org.eclipse.emf.edit.provider.IItemPropertySource;
24 import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
25 import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
26 import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
27 import org.eclipse.emf.edit.provider.ItemProviderAdapter;
28 import org.eclipse.emf.edit.provider.ViewerNotification;
29
30 import org.enhydra.dods.editor.Doml.DomlFactory;
31 import org.enhydra.dods.editor.Doml.DomlPackage;
32 import org.enhydra.dods.editor.Doml.PackageType;
33
34 /**
35  * This is the item provider adpater for a {@link org.enhydra.dods.editor.Doml.PackageType} object.
36  * <!-- begin-user-doc -->
37  * <!-- end-user-doc -->
38  * @generated
39  */

40 public class PackageTypeItemProvider
41     extends ItemProviderAdapter
42     implements
43         IEditingDomainItemProvider,
44         IStructuredItemContentProvider,
45         ITreeItemContentProvider,
46         IItemLabelProvider,
47         IItemPropertySource {
48     /**
49      * This constructs an instance from a factory and a notifier.
50      * <!-- begin-user-doc -->
51      * <!-- end-user-doc -->
52      * @generated
53      */

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

64     public List JavaDoc getPropertyDescriptors(Object JavaDoc object) {
65         if (itemPropertyDescriptors == null) {
66             super.getPropertyDescriptors(object);
67
68             addIdPropertyDescriptor(object);
69         }
70         return itemPropertyDescriptors;
71     }
72
73     /**
74      * This adds a property descriptor for the Id feature.
75      * <!-- begin-user-doc -->
76      * <!-- end-user-doc -->
77      * @generated
78      */

79     protected void addIdPropertyDescriptor(Object JavaDoc object) {
80         itemPropertyDescriptors.add
81             (new ItemPropertyDescriptor
82                 (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
83                  getResourceLocator(),
84                  getString("_UI_PackageType_id_feature"),
85                  getString("_UI_PropertyDescriptor_description", "_UI_PackageType_id_feature", "_UI_PackageType_type"),
86                  DomlPackage.eINSTANCE.getPackageType_Id(),
87                  true,
88                  ItemPropertyDescriptor.GENERIC_VALUE_IMAGE));
89     }
90
91     /**
92      * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
93      * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
94      * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
95      * <!-- begin-user-doc -->
96      * <!-- end-user-doc -->
97      * @generated
98      */

99     public Collection JavaDoc getChildrenFeatures(Object JavaDoc object) {
100         if (childrenFeatures == null) {
101             super.getChildrenFeatures(object);
102             childrenFeatures.add(DomlPackage.eINSTANCE.getPackageType_Package());
103             childrenFeatures.add(DomlPackage.eINSTANCE.getPackageType_Table());
104         }
105         return childrenFeatures;
106     }
107
108     /**
109      * <!-- begin-user-doc -->
110      * <!-- end-user-doc -->
111      * @generated
112      */

113     protected EStructuralFeature getChildFeature(Object JavaDoc object, Object JavaDoc child) {
114         // Check the type of the specified child object and return the proper feature to use for
115
// adding (see {@link AddCommand}) it as a child.
116

117         return super.getChildFeature(object, child);
118     }
119
120     /**
121      * This returns PackageType.gif.
122      * <!-- begin-user-doc -->
123      * <!-- end-user-doc -->
124      * @generated
125      */

126     public Object JavaDoc getImage(Object JavaDoc object) {
127         return getResourceLocator().getImage("full/obj16/PackageType");
128     }
129
130     /**
131      * This returns the label text for the adapted class.
132      * <!-- begin-user-doc -->
133      * <!-- end-user-doc -->
134      * @generated
135      */

136     public String JavaDoc getText(Object JavaDoc object) {
137         String JavaDoc label = ((PackageType)object).getId();
138         return label == null || label.length() == 0 ?
139             getString("_UI_PackageType_type") :
140             getString("_UI_PackageType_type") + " " + label;
141     }
142
143     /**
144      * This handles model notifications by calling {@link #updateChildren} to update any cached
145      * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
146      * <!-- begin-user-doc -->
147      * <!-- end-user-doc -->
148      * @generated
149      */

150     public void notifyChanged(Notification notification) {
151         updateChildren(notification);
152
153         switch (notification.getFeatureID(PackageType.class)) {
154             case DomlPackage.PACKAGE_TYPE__ID:
155                 fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
156                 return;
157             case DomlPackage.PACKAGE_TYPE__PACKAGE:
158             case DomlPackage.PACKAGE_TYPE__TABLE:
159                 fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
160                 return;
161         }
162         super.notifyChanged(notification);
163     }
164
165     /**
166      * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s
167      * describing all of the children that can be created under this object.
168      * <!-- begin-user-doc -->
169      * <!-- end-user-doc -->
170      * @generated
171      */

172     protected void collectNewChildDescriptors(Collection JavaDoc newChildDescriptors, Object JavaDoc object) {
173         super.collectNewChildDescriptors(newChildDescriptors, object);
174
175         newChildDescriptors.add
176             (createChildParameter
177                 (DomlPackage.eINSTANCE.getPackageType_Package(),
178                  DomlFactory.eINSTANCE.createPackageType()));
179
180         newChildDescriptors.add
181             (createChildParameter
182                 (DomlPackage.eINSTANCE.getPackageType_Table(),
183                  DomlFactory.eINSTANCE.createTableType()));
184     }
185
186     /**
187      * Return the resource locator for this item provider's resources.
188      * <!-- begin-user-doc -->
189      * <!-- end-user-doc -->
190      * @generated
191      */

192     public ResourceLocator getResourceLocator() {
193         return DomlEditPlugin.INSTANCE;
194     }
195
196 }
197
Popular Tags