Skip to content
Snippets Groups Projects
Commit 3fc394bf authored by Tiziano Munaro's avatar Tiziano Munaro
Browse files

Enable root models other than the edited object in model factories

parent eeb2c302
No related branches found
No related tags found
1 merge request!88[3873] Ellipses and Bezier curves
......@@ -7,6 +7,6 @@ KernelServiceBasedModelChangeProviderBase.java 18e48f17ea8dfba90de024a8959fc5a4b
LayoutModelChangeProvider.java b5449d02eaf39086909720c43e21bd061005fc9e GREEN
LayoutedContentAnchorageController.java 3794b41d76e9ce14ead0bd812cde5c1a6d348d5c GREEN
LayoutedDiagramAnchorageController.java 1e1ac7c5fa26c632736f5023e90f05d09bc0710d GREEN
LayoutedEllipticResizableContentController.java 7f6f9a11f9bcb1e78cf8c95c69a9a26c5d4adf42 YELLOW
LayoutedEllipticResizableContentController.java b2c9c48190b9ff69a175bbe5f89761c1b08621ab YELLOW
LayoutedLinkBendPointController.java a8372485ae96f2abf773d1baeb1f8c7b2b25985f GREEN
LayoutedRectangularResizableContentController.java 1e18af3ee10dd3754325ed389fed664da65a0b61 GREEN
......@@ -18,11 +18,16 @@ package org.fortiss.tooling.base.ui.editor.fx.controller;
import static java.lang.Math.toRadians;
import static java.util.Objects.requireNonNull;
import static org.fortiss.tooling.base.ui.utils.LayoutDataUIUtils.setConnectorAngle;
import static org.fortiss.tooling.base.utils.LayoutDataUtils.getNodeSize;
import static org.fortiss.tooling.base.utils.LayoutDataUtils.moveNode;
import static org.fortiss.tooling.base.utils.LayoutDataUtils.setNodeSize;
import org.eclipse.systemfocus.kernel.common.ui.javafx.lwfxef.FeedbackChange;
import org.eclipse.systemfocus.kernel.common.ui.javafx.lwfxef.controller.IController;
import org.eclipse.systemfocus.kernel.common.ui.javafx.lwfxef.mvc.IContentAnchorageMVCBundle;
import org.eclipse.systemfocus.kernel.common.ui.javafx.lwfxef.mvc.IContentMVCBundle;
import org.fortiss.tooling.base.model.element.IConnector;
import org.fortiss.tooling.base.model.layout.Dimension;
import org.fortiss.tooling.base.model.layout.ILayoutedModelElement;
/**
......@@ -54,4 +59,20 @@ public class LayoutedEllipticResizableContentController<T extends ILayoutedModel
setConnectorAngle(conn, toRadians(angleInDegree));
}
}
/** {@inheritDoc} */
@Override
protected void move(FeedbackChange deltaChange) {
moveNode(getModelElement(), (int)deltaChange.getDeltaX(), (int)deltaChange.getDeltaY());
}
/** {@inheritDoc} */
@Override
protected void resize(FeedbackChange delta) {
T element = getModelElement();
Dimension d = getNodeSize(element);
int w = d.getWidth() + (int)delta.getDeltaW();
int h = d.getHeight() + (int)delta.getDeltaH();
setNodeSize(element, w, h);
}
}
DelegatingControllerFactory.java ad214d83b5821b39862b7c382c91a13c3dfddbd0 GREEN
DelegatingFactoryBase.java f421742267610f41bb6196346026d2f239d90ed0 GREEN
DelegatingModelFactory.java 717b706781879efe9efcb5ce4bf53723e39a3e1b GREEN
DelegatingModelFactory.java 015ec36c9ca7e06235a0769e940c30b366c64075 YELLOW
DelegatingVisualFactory.java 7e834acd12ae4d1c2b2b32a5456dc9f2b6d4e466 GREEN
......@@ -109,7 +109,8 @@ public class DelegatingModelFactory extends DelegatingFactoryBase<IModelFactory>
/** {@inheritDoc} */
@Override
public Object getRootModel() {
return editedObject;
return getDelegateFactories().stream().map(f -> f.getRootModel()).filter(cc -> cc != null)
.findFirst().orElse(null);
}
/** {@inheritDoc} */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment