/** * {@inheritDoc} * * @see * org.eclipse.emf.eef.runtime.impl.components.StandardPropertiesEditionComponent#updatePart(org.eclipse.emf.common.notify.Notification) */ public void updatePart(Notification msg) { if (editingPart.isVisible()) { StatePropertiesEditionPart basePart = (StatePropertiesEditionPart) editingPart; if (StatemachinePackage.eINSTANCE.getState_Name().equals(msg.getFeature()) && basePart != null && isAccessible(StatemachineViewsRepository.State.Properties.name)) { if (msg.getNewValue() != null) { basePart.setName( EcoreUtil.convertToString(EcorePackage.Literals.ESTRING, msg.getNewValue())); } else { basePart.setName(""); } } if (StatemachinePackage.eINSTANCE.getState_Actions().equals(msg.getFeature()) && isAccessible(StatemachineViewsRepository.State.Properties.actions)) basePart.updateActions(); if (StatemachinePackage.eINSTANCE.getState_Transitions().equals(msg.getFeature()) && isAccessible(StatemachineViewsRepository.State.Properties.transitions)) basePart.updateTransitions(); } }
/** * {@inheritDoc} * * @see * org.eclipse.emf.eef.runtime.api.component.IPropertiesEditionComponent#initPart(java.lang.Object, * int, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.resource.ResourceSet) */ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource) { setInitializing(true); if (editingPart != null && key == partKey) { editingPart.setContext(elt, allResource); final State state = (State) elt; final StatePropertiesEditionPart basePart = (StatePropertiesEditionPart) editingPart; // init values if (state.getName() != null && isAccessible(StatemachineViewsRepository.State.Properties.name)) basePart.setName( EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, state.getName())); if (isAccessible(StatemachineViewsRepository.State.Properties.actions)) { actionsSettings = new ReferencesTableSettings(state, StatemachinePackage.eINSTANCE.getState_Actions()); basePart.initActions(actionsSettings); } if (isAccessible(StatemachineViewsRepository.State.Properties.transitions)) { transitionsSettings = new ReferencesTableSettings( state, StatemachinePackage.eINSTANCE.getState_Transitions()); basePart.initTransitions(transitionsSettings); } // init filters if (isAccessible(StatemachineViewsRepository.State.Properties.actions)) { basePart.addFilterToActions( new ViewerFilter() { /** * {@inheritDoc} * * @see * org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer, * java.lang.Object, java.lang.Object) */ public boolean select(Viewer viewer, Object parentElement, Object element) { if (element instanceof EObject) return (!basePart.isContainedInActionsTable((EObject) element)); return element instanceof Resource; } }); basePart.addFilterToActions(new EObjectFilter(StatemachinePackage.Literals.COMMAND)); // Start of user code for additional businessfilters for actions // End of user code } if (isAccessible(StatemachineViewsRepository.State.Properties.transitions)) { basePart.addFilterToTransitions( new ViewerFilter() { /** * {@inheritDoc} * * @see * org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer, * java.lang.Object, java.lang.Object) */ public boolean select(Viewer viewer, Object parentElement, Object element) { return (element instanceof String && element.equals("")) || (element instanceof Transition); // $NON-NLS-1$ } }); // Start of user code for additional businessfilters for transitions // End of user code } // init values for referenced views // init filters for referenced views } setInitializing(false); }