@Override public void doActivate() { super.doActivate(); final Procedure1<Text> _function = (Text it) -> { String _name = this.getName(); it.setText(_name); TooltipExtensions.setTooltip(it, "Zoom to reveal content"); }; ObjectExtensions.<Text>operator_doubleArrow(this.label, _function); boolean _equals = Objects.equal(this.innerDiagram, null); if (_equals) { String _name = this.getName(); String _plus = ("No inner diagram set on node " + _name); String _plus_1 = (_plus + ". LOD behavior deactivated"); LevelOfDetailDiagramNode.LOG.severe(_plus_1); } else { XDiagram _diagram = CoreExtensions.getDiagram(this); ViewportTransform _viewportTransform = _diagram.getViewportTransform(); ReadOnlyDoubleProperty _scaleProperty = _viewportTransform.scaleProperty(); final ChangeListener<Number> _function_1 = (ObservableValue<? extends Number> prop, Number oldVal, Number newVal) -> { Bounds _boundsInLocal = this.getBoundsInLocal(); final Bounds bounds = this.localToScene(_boundsInLocal); double _width = bounds.getWidth(); double _height = bounds.getHeight(); final double area = (_width * _height); if ((area <= 100000)) { this.label.setVisible(true); this.innerDiagramGroup.setVisible(false); this.pane.setBackgroundPaint(RectangleBorderPane.DEFAULT_BACKGROUND); } else { this.label.setVisible(false); this.innerDiagramGroup.setVisible(true); this.innerDiagram.activate(); final Procedure1<DiagramScaler> _function_2 = (DiagramScaler it) -> { Bounds _layoutBounds = this.label.getLayoutBounds(); double _width_1 = _layoutBounds.getWidth(); double _plus_2 = (_width_1 + 40); it.setWidth(_plus_2); Bounds _layoutBounds_1 = this.label.getLayoutBounds(); double _height_1 = _layoutBounds_1.getHeight(); double _plus_3 = (_height_1 + 20); it.setHeight(_plus_3); it.activate(); }; ObjectExtensions.<DiagramScaler>operator_doubleArrow(this.diagramScaler, _function_2); Paint _backgroundPaint = this.innerDiagram.getBackgroundPaint(); this.pane.setBackgroundPaint(_backgroundPaint); } }; _scaleProperty.addListener(_function_1); } }
public <T extends Object, U extends Object> XDiagram createDiagram( final T diagramObject, final DiagramMapping<T> diagramMapping, final boolean isOnDemand, final InterpreterContext context) { XDiagram _xblockexpression = null; { boolean _isApplicable = diagramMapping.isApplicable(diagramObject); boolean _not = (!_isApplicable); if (_not) { return null; } final IMappedElementDescriptor<T> descriptor = this.<T>getDescriptor(diagramObject, diagramMapping); boolean _equals = Objects.equal(descriptor, null); if (_equals) { return null; } XDiagram _diagram = context.getDiagram(); DomainObjectDescriptor _domainObjectDescriptor = _diagram.getDomainObjectDescriptor(); final boolean replaceDiagram = (!Objects.equal(_domainObjectDescriptor, descriptor)); context.setIsReplaceRootDiagram(replaceDiagram); XDiagram _xifexpression = null; if (replaceDiagram) { _xifexpression = diagramMapping.createDiagram(descriptor); } else { _xifexpression = context.getDiagram(); } final XDiagram diagram = _xifexpression; InterpreterContext _xifexpression_1 = null; if (replaceDiagram) { _xifexpression_1 = new InterpreterContext(diagram, context); } else { _xifexpression_1 = context; } final InterpreterContext newContext = _xifexpression_1; if (isOnDemand) { diagram.setLayoutOnActivate(true); final Procedure1<XDiagram> _function = (XDiagram it) -> { final Function1<T, Object> _function_1 = (T domainObject) -> { Object _xblockexpression_1 = null; { this.<T>populateDiagram(diagramMapping, domainObject, newContext); newContext.directlyApplyChanges(); XRoot _root = CoreExtensions.getRoot(diagram); final CommandStack commandStack = _root.getCommandStack(); newContext.executeCommands(commandStack); _xblockexpression_1 = null; } return _xblockexpression_1; }; descriptor.<Object>withDomainObject(_function_1); }; diagram.setContentsInitializer(_function); } else { this.<T>populateDiagram(diagramMapping, diagramObject, newContext); } _xblockexpression = diagram; } return _xblockexpression; }
public FXDiagramTab(final FXDiagramView view, final CTabFolder tabFolder, final XRoot root) { FXCanvas _fXCanvas = new FXCanvas(tabFolder, SWT.NONE); this.canvas = _fXCanvas; CTabItem _cTabItem = new CTabItem(tabFolder, SWT.CLOSE); this.tab = _cTabItem; this.tab.setControl(this.canvas); SwtToFXGestureConverter _swtToFXGestureConverter = new SwtToFXGestureConverter(this.canvas); this.gestureConverter = _swtToFXGestureConverter; final IChangeListener _function = (IWorkbenchPart it) -> { if ((it instanceof IEditorPart)) { this.refreshUpdateState(); } }; this.changeListener = _function; ModelChangeBroker _modelChangeBroker = view.getModelChangeBroker(); _modelChangeBroker.addListener(this.changeListener); this.root = root; Scene _scene = new Scene(root); final Procedure1<Scene> _function_1 = (Scene it) -> { PerspectiveCamera _perspectiveCamera = new PerspectiveCamera(); it.setCamera(_perspectiveCamera); root.activate(); }; Scene _doubleArrow = ObjectExtensions.<Scene>operator_doubleArrow(_scene, _function_1); this.canvas.setScene(_doubleArrow); final DisposeListener _function_2 = (DisposeEvent it) -> { this.gestureConverter.dispose(); ModelChangeBroker _modelChangeBroker_1 = view.getModelChangeBroker(); _modelChangeBroker_1.removeListener(this.changeListener); view.removeTab(this.tab); }; this.tab.addDisposeListener(_function_2); StringProperty _fileNameProperty = root.fileNameProperty(); InitializingListener<String> _initializingListener = new InitializingListener<String>(); final Procedure1<InitializingListener<String>> _function_3 = (InitializingListener<String> it) -> { final Procedure1<String> _function_4 = (String it_1) -> { String _tabName = this.getTabName(); this.tab.setText(_tabName); }; it.setSet(_function_4); }; InitializingListener<String> _doubleArrow_1 = ObjectExtensions.<InitializingListener<String>>operator_doubleArrow( _initializingListener, _function_3); CoreExtensions.<String>addInitializingListener(_fileNameProperty, _doubleArrow_1); BooleanProperty _needsSaveProperty = root.needsSaveProperty(); final ChangeListener<Boolean> _function_4 = (ObservableValue<? extends Boolean> p, Boolean o, Boolean n) -> { String _tabName = this.getTabName(); this.tab.setText(_tabName); }; _needsSaveProperty.addListener(_function_4); this.canvas.addFocusListener( new FocusListener() { @Override public void focusGained(final FocusEvent e) { IWorkbenchPartSite _site = view.getSite(); IBindingService _service = _site.<IBindingService>getService(IBindingService.class); ((IBindingService) _service).setKeyFilterEnabled(false); } @Override public void focusLost(final FocusEvent e) { IWorkbenchPartSite _site = view.getSite(); IBindingService _service = _site.<IBindingService>getService(IBindingService.class); ((IBindingService) _service).setKeyFilterEnabled(true); } }); }