/** * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that * can be created under this object. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @generatedNOT */ @Override protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) { super.collectNewChildDescriptors(newChildDescriptors, object); // newChildDescriptors.add(createChildParameter( // AnnotationsmodelPackage.Literals.ANNOTATED_EENUM_LITERAL__EENUM_LITERAL_ANNOTATIONS, // AnnotationsmodelFactory.eINSTANCE.createEEnumLiteralAnnotation())); final AnnotatedEEnumLiteral aEnum = (AnnotatedEEnumLiteral) object; for (EClass eClass : AnnotationsModelRegistry.getInstance() .getSubEClasses(AnnotationsmodelPackage.Literals.EENUM_LITERAL_ANNOTATION)) { if (eClass.isAbstract()) { continue; } boolean isUsed = false; for (EEnumLiteralAnnotation annotation : aEnum.getEEnumLiteralAnnotations()) { if (annotation.eClass() == eClass) { isUsed = true; break; } } if (!isUsed && !eClass.isAbstract()) { newChildDescriptors.add( createChildParameter( AnnotationsmodelPackage.Literals.ANNOTATED_EENUM_LITERAL__EENUM_LITERAL_ANNOTATIONS, EcoreUtil.create(eClass))); } } }
/** * This returns the property descriptors for the adapted class. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @generated */ @Override public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) { if (itemPropertyDescriptors == null) { super.getPropertyDescriptors(object); addEEnumLiteralPropertyDescriptor(object); } return itemPropertyDescriptors; }
/** * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate * feature for an {@link org.eclipse.emf.edit.command.AddCommand}, {@link * org.eclipse.emf.edit.command.RemoveCommand} or {@link org.eclipse.emf.edit.command.MoveCommand} * in {@link #createCommand}. * <!-- begin-user-doc --> * <!-- * end-user-doc --> * * @generated */ @Override public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) { if (childrenFeatures == null) { super.getChildrenFeatures(object); childrenFeatures.add( AnnotationsmodelPackage.Literals.ANNOTATED_EENUM_LITERAL__EENUM_LITERAL_ANNOTATIONS); } return childrenFeatures; }
/** * This handles model notifications by calling {@link #updateChildren} to update any cached * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @generated */ @Override public void notifyChanged(Notification notification) { updateChildren(notification); switch (notification.getFeatureID(AnnotatedEEnumLiteral.class)) { case AnnotationsmodelPackage.ANNOTATED_EENUM_LITERAL__EENUM_LITERAL_ANNOTATIONS: fireNotifyChanged( new ViewerNotification(notification, notification.getNotifier(), true, false)); return; } super.notifyChanged(notification); }