1 17 package org.eclipse.emf.ecore.provider; 18 19 20 import java.util.Collection ; 21 import java.util.List ; 22 23 import org.eclipse.emf.common.notify.AdapterFactory; 24 import org.eclipse.emf.common.notify.Notification; 25 import org.eclipse.emf.common.util.ResourceLocator; 26 import org.eclipse.emf.ecore.EDataType; 27 import org.eclipse.emf.ecore.EcorePackage; 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 import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; 35 36 37 import org.eclipse.emf.edit.provider.ViewerNotification; 38 39 45 public class EDataTypeItemProvider 46 extends EClassifierItemProvider 47 implements 48 IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource 49 { 50 56 public EDataTypeItemProvider(AdapterFactory adapterFactory) 57 { 58 super(adapterFactory); 59 } 60 61 67 public List getPropertyDescriptors(Object object) 68 { 69 if (itemPropertyDescriptors == null) 70 { 71 super.getPropertyDescriptors(object); 72 73 addSerializablePropertyDescriptor(object); 74 } 75 return itemPropertyDescriptors; 76 } 77 78 84 protected void addSerializablePropertyDescriptor(Object object) 85 { 86 itemPropertyDescriptors.add 87 (createItemPropertyDescriptor 88 (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), 89 getResourceLocator(), 90 getString("_UI_EDataType_serializable_feature"), 91 getString("_UI_PropertyDescriptor_description", "_UI_EDataType_serializable_feature", "_UI_EDataType_type"), 92 EcorePackage.eINSTANCE.getEDataType_Serializable(), 93 true, 94 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, 95 null, 96 null)); 97 } 98 99 105 public Object getImage(Object object) 106 { 107 return getResourceLocator().getImage("full/obj16/EDataType"); 108 } 109 110 116 public String getText(Object object) 117 { 118 EDataType eDataType = (EDataType)object; 119 StringBuffer result = new StringBuffer (); 120 result.append(eDataType.getName()); 121 result.append(" <"); 122 result.append(eDataType.getInstanceClassName()); 123 result.append(">"); 124 return result.toString(); 125 } 126 127 134 public void notifyChanged(Notification notification) 135 { 136 updateChildren(notification); 137 138 switch (notification.getFeatureID(EDataType.class)) 139 { 140 case EcorePackage.EDATA_TYPE__SERIALIZABLE: 141 fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); 142 return; 143 } 144 super.notifyChanged(notification); 145 } 146 147 154 protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) 155 { 156 super.collectNewChildDescriptors(newChildDescriptors, object); 157 } 158 159 165 public ResourceLocator getResourceLocator() 166 { 167 return EcoreEditPlugin.INSTANCE; 168 } 169 170 } 171 | Popular Tags |