@Override public void init(final Metadata metadata, final Command callback) { init(s -> s.registerCanvasControl(ZoomControl.class) .registerCanvasControl(PanControl.class) .registerCanvasHandlerControl(SelectionControl.class, MultipleSelection.class) .registerCanvasControl(ExpressionGridCache.class) .registerCanvasControl(DMNGridLayerControl.class) //The order of the following registrations is important. Do not re-order! .registerCanvasControl(CellEditorControl.class) .registerCanvasControl(MousePanMediatorControl.class) .registerCanvasControl(DMNGridPanelControl.class) .registerCanvasControl(ExpressionEditorControl.class), metadata, callback); }
@Override public PanControl<AbstractCanvas> getPanControl() { return (PanControl<AbstractCanvas>) session.getCanvasControl(PanControl.class); }
@Override public void destroy() { session.destroy(); }
private void registerCanvasControlEntry(final ControlRegistrationEntry<AbstractCanvas> entry, final Annotation qualifier) { if (isControlActive(entry.type)) { registerCanvasControl(entry, lookupCanvasControl(canvasControlInstances, entry, qualifier)); } }
private void registerCanvasHandlerControlEntry(final ControlRegistrationEntry<AbstractCanvasHandler> entry, final Annotation qualifier) { if (isControlActive(entry.type)) { registerCanvasHandlerControl(entry, lookupCanvasHandlerControl(canvasHandlerControlInstances, entry, qualifier)); } }
@SuppressWarnings("unchecked") public ManagedSession registerCanvasHandlerControl(final Class<? extends CanvasControl> type) { return registerCanvasHandlerControl(type, null); }
@SuppressWarnings("unchecked") public ManagedSession registerCanvasControl(final Class<? extends CanvasControl> type) { return registerCanvasControl(type, null); }
@Override public void open() { if (null == shapeListener) { shapeListener = new DefaultCanvasShapeListener(canvasControls); elementListener = new DefaultCanvasElementListener(canvasHandlerControls); registerListeners(); enableControls(); } }
@SuppressWarnings("unchecked") public ManagedSession registerCanvasControl(final Class<? extends CanvasControl> type, final Class<? extends Annotation> qualifier) { canvasControlRegistrationEntries.add(new ControlRegistrationEntry<>((Class<? extends CanvasControl<AbstractCanvas>>) type, null != qualifier ? buildQualifier(qualifier) : null)); return this; }
@Override public AbstractCanvas getCanvas() { return session.getCanvas(); }
@SuppressWarnings("unchecked") private static CanvasControl<AbstractCanvasHandler> lookupCanvasHandlerControl(final ManagedInstance instance, final ControlRegistrationEntry<AbstractCanvasHandler> entry, final Annotation qualifier) { return (CanvasControl<AbstractCanvasHandler>) doLookup(instance, entry, qualifier); }
@Override public AbstractCanvasHandler getCanvasHandler() { return session.getCanvasHandler(); }
@SuppressWarnings("unchecked") public ManagedSession registerCanvasHandlerControl(final Class<? extends CanvasControl> type, final Class<? extends Annotation> qualifier) { canvasHandlerControlRegistrationEntries.add(new ControlRegistrationEntry<>((Class<? extends CanvasControl<AbstractCanvasHandler>>) type, null != qualifier ? buildQualifier(qualifier) : null)); return this; }
@Override public AbstractCanvas getCanvas() { return session.getCanvas(); }
@SuppressWarnings("unchecked") private static CanvasControl<AbstractCanvas> lookupCanvasControl(final ManagedInstance instance, final ControlRegistrationEntry<AbstractCanvas> entry, final Annotation qualifier) { return (CanvasControl<AbstractCanvas>) doLookup(instance, entry, qualifier); }
@Override public AbstractCanvasHandler getCanvasHandler() { return session.getCanvasHandler(); }
@Override public void init(final Metadata metadata, final Command callback) { init(s -> s.registerCanvasControl(ZoomControl.class) .registerCanvasControl(PanControl.class) .registerCanvasHandlerControl(SelectionControl.class, MultipleSelection.class), metadata, callback); }
@Override public KeyboardControl<AbstractCanvas, ClientSession> getKeyboardControl() { return (KeyboardControl<AbstractCanvas, ClientSession>) session.getCanvasControl(KeyboardControl.class); }
@Override public void destroy() { commandRegistry.clear(); session.destroy(); }
@Override public void init(final Metadata metadata, final Command callback) { super.init(s -> s.registerCanvasControl(ZoomControl.class) .registerCanvasControl(PanControl.class) .registerCanvasHandlerControl(SelectionControl.class, SingleSelection.class), metadata, callback); } }