use of org.kie.workbench.common.stunner.client.lienzo.canvas.LienzoPanel in project kie-wb-common by kiegroup.
the class LienzoPanelMediators method init.
public LienzoPanelMediators init(final Supplier<LienzoCanvas> canvas) {
CanvasPanel panel = canvas.get().getView().getPanel();
if (panel instanceof LienzoPanel) {
focusHandler = new LienzoPanelFocusHandler().listen((LienzoPanel) canvas.get().getView().getPanel(), this::enable, this::disable);
mediators.init(canvas);
selector.init(canvas);
setZoomFactor(ZOOM_FACTOR);
setMinScale(MIN_SCALE);
setMaxScale(MAX_SCALE);
enable();
}
return this;
}
use of org.kie.workbench.common.stunner.client.lienzo.canvas.LienzoPanel in project kie-wb-common by kiegroup.
the class LienzoCanvasNotification method show.
public void show(final String text) {
final LienzoPanel p = panel.get();
final int absoluteLeft = p.getView().getAbsoluteLeft();
final int absoluteTop = p.getView().getAbsoluteTop();
final int width = p.getWidthPx();
final double x = absoluteLeft + (width / 2) - (5 * text.length());
final double y = absoluteTop + 50;
view.at(x, y);
view.setText(text);
view.show();
}
use of org.kie.workbench.common.stunner.client.lienzo.canvas.LienzoPanel in project kie-wb-common by kiegroup.
the class LienzoCanvasMediators method init.
public void init(final Supplier<LienzoCanvas> canvas) {
keyEventHandler.setTimerDelay(150).addKeyShortcutCallback(new KeyboardControl.KeyShortcutCallback() {
@Override
public void onKeyShortcut(Key... keys) {
if (doKeysMatch(keys, Key.CONTROL)) {
enableZoom();
} else if (doKeysMatch(keys, Key.ALT)) {
enablePan();
} else if (doKeysMatch(keys, Key.CONTROL, Key.ALT) || doKeysMatch(keys, Key.ALT, Key.CONTROL)) {
enablePreview();
}
}
@Override
public void onKeyUp(Key key) {
clear();
}
});
cursor = c -> canvas.get().getView().setCursor(c);
final LienzoPanel panel = (LienzoPanel) canvas.get().getView().getPanel();
this.mediators = mediatorsBuilder.apply(panel.getView());
this.notification.init(() -> panel);
setScaleAboutPoint(false);
}
use of org.kie.workbench.common.stunner.client.lienzo.canvas.LienzoPanel in project kie-wb-common by kiegroup.
the class ZoomLevelSelectorPresenter method reposition.
private void reposition() {
final LienzoPanel panel = getPanel();
onPanelResize(panel.getView().getWidthPx(), panel.getView().getHeightPx());
}
use of org.kie.workbench.common.stunner.client.lienzo.canvas.LienzoPanel in project kie-wb-common by kiegroup.
the class ZoomLevelSelectorPresenter method init.
public ZoomLevelSelectorPresenter init(final Supplier<LienzoCanvas> canvas) {
this.canvas = canvas;
final Layer layer = getLayer();
final LienzoPanel panel = getPanel();
selector.setText(parseLevel(1)).dropUp().onReset(this::reset).onIncreaseLevel(this::increaseLevel).onDecreaseLevel(this::decreaseLevel).add(LEVEL_25, () -> setLevel(0.25)).add(LEVEL_50, () -> setLevel(0.5)).add(LEVEL_75, () -> setLevel(0.75)).add(LEVEL_100, () -> setLevel(1)).add(LEVEL_150, () -> setLevel(1.5)).add(LEVEL_200, () -> setLevel(2)).add(translationService.getNotNullValue(CoreTranslationMessages.FIT), () -> setLevel(computeZoomLevelFitToWidth(panel.getView())));
floatingView.add(selector);
if (panel.getView() instanceof ScrollablePanel) {
ScrollablePanel scrollablePanel = (ScrollablePanel) panel.getView();
panelResizeHandlerRegistration = scrollablePanel.addLienzoPanelResizeEventHandler(event -> onPanelResize(event.getWidth(), event.getHeight()));
}
reposition();
transformChangedHandler = layer.getViewport().addViewportTransformChangedHandler(event -> onViewportTransformChanged());
selectorOverHandler = selector.asWidget().addDomHandler(mouseOverEvent -> cancelHide(), MouseOverEvent.getType());
return this;
}
Aggregations