use of org.obeonetwork.dsl.statemachine.AbstractState in project InformationSystem by ObeoNetwork.
the class StateMachineServices method evaluateLabel.
public String evaluateLabel(EObject context) {
// ['State_' + container.oclAsType(statemachine::StateMachine).states->filter(statemachine::State)->size()/]
String label = "State_";
List<AbstractState> abstractStates = null;
if (context.eContainer() instanceof StateMachine) {
abstractStates = ((StateMachine) context.eContainer()).getStates();
} else if (context.eContainer() instanceof Region) {
abstractStates = ((Region) context.eContainer()).getStates();
}
List<State> states = new ArrayList<State>();
for (AbstractState absState : abstractStates) {
if (absState instanceof State) {
states.add((State) absState);
}
}
return label + states.size();
}
use of org.obeonetwork.dsl.statemachine.AbstractState in project InformationSystem by ObeoNetwork.
the class TransitionTransitionPropertiesEditionComponent method initPart.
/**
* {@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 Transition transition = (Transition) elt;
final TransitionPropertiesEditionPart transitionPart = (TransitionPropertiesEditionPart) editingPart;
// init values
if (isAccessible(StatemachineViewsRepository.Transition.Properties.description))
transitionPart.setDescription(EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, transition.getDescription()));
if (isAccessible(StatemachineViewsRepository.Transition.Properties.keywords))
transitionPart.setKeywords(transition.getKeywords());
if (isAccessible(StatemachineViewsRepository.Transition.Properties.guard))
transitionPart.setGuard(EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, transition.getGuard()));
if (isAccessible(StatemachineViewsRepository.Transition.Properties.from)) {
// init part
fromSettings = new EObjectFlatComboSettings(transition, StateMachinePackage.eINSTANCE.getTransition_From());
transitionPart.initFrom(fromSettings);
// set the button mode
transitionPart.setFromButtonMode(ButtonsModeEnum.BROWSE);
}
if (isAccessible(StatemachineViewsRepository.Transition.Properties.to)) {
// init part
toSettings = new EObjectFlatComboSettings(transition, StateMachinePackage.eINSTANCE.getTransition_To());
transitionPart.initTo(toSettings);
// set the button mode
transitionPart.setToButtonMode(ButtonsModeEnum.BROWSE);
}
if (isAccessible(StatemachineViewsRepository.Transition.Properties.from)) {
transitionPart.addFilterToFrom(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 AbstractState);
}
});
// Start of user code for additional businessfilters for from
// End of user code
}
if (isAccessible(StatemachineViewsRepository.Transition.Properties.to)) {
transitionPart.addFilterToTo(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 AbstractState);
}
});
// Start of user code for additional businessfilters for to
// End of user code
}
// init values for referenced views
// init filters for referenced views
}
setInitializing(false);
}
Aggregations