use of org.whole.lang.ui.requests.DnDOverCompositeRequest in project whole by wholeplatform.
the class AbstractConnectedFreeformRootPart method createEditPolicies.
// public IFigure getContentPane() {
// return pane;
// }
protected void createEditPolicies() {
installEditPolicy(EditPolicy.CONTAINER_ROLE, new WholeContainerEditPolicy(getCommandFactory()));
installEditPolicy(EditPolicy.COMPONENT_ROLE, new WholeComponentEditPolicy(getCommandFactory()));
installEditPolicy(EditPolicy.LAYOUT_ROLE, new WholeFreeformLayoutEditPolicy((XYLayout) getContentPane().getLayoutManager(), getCommandFactory()) {
protected DnDOverCompositeRequest createDnDOverCompositeRequest(IEntity entity) {
return new DnDOverCompositeRequest(PartRequest.MOVE_ADD_CHILD, (IEntityPart) getHost(), entity, null) {
@Override
public IEntity getModelEntity() {
// FIXME workaround to get nodes composite
IEntity modelEntity = super.getModelEntity().wGet(0);
return modelEntity;
}
};
}
});
installEditPolicy("Snap Feedback", new SnapFeedbackPolicy());
}
use of org.whole.lang.ui.requests.DnDOverCompositeRequest in project whole by wholeplatform.
the class WholeFlowLayoutEditPolicy method getCreateCommand.
protected Command getCreateCommand(CreateRequest request) {
Object newObject = request.getNewObject();
if (newObject instanceof IEntity) {
IEntityPart compositePart = (IEntityPart) getHost();
IEntityPart afterPart = (IEntityPart) getInsertionReference(request);
return commandFactory.create(new DnDOverCompositeRequest(PartRequest.MOVE_ADD_CHILD, compositePart, (IEntity) newObject, afterPart));
// CompositeAddCommand cmd = new CompositeAddCommand();
// cmd.setComposite(compositePart.getModelEntity());
// cmd.setNewChild((IEntity) newObject);
// cmd.setPrevChild(afterPart == null ? null : afterPart.getModelEntity());
// return cmd;
}
return UnexecutableCommand.INSTANCE;
}
Aggregations