/** * Creates the inner controls * * @param parent the parent composite */ public void createControl(Composite parent) { // An swt canvas and lws drawing the figure. overview = new Canvas(parent, SWT.NONE); overview.setLayoutData(new GridData(GridData.FILL_BOTH)); // A draw2d object linking swt and draw2d LightweightSystem lightweightSystem = new LightweightSystem(overview); // create the thumbnail thumbnail = new ScrollableThumbnail((Viewport) rootEditPart.getFigure()); thumbnail.setBorder(new MarginBorder(3)); thumbnail.setSource( rootEditPart.getLayer(LayerConstants.PRINTABLE_LAYERS /* SCALABLE_LAYERS */)); lightweightSystem.setContents(thumbnail); }
/** Initialize overview. */ protected void initializeOverview() { LightweightSystem lws = new J2DLightweightSystem(overview); RootEditPart rep = editor.getGraphicalViewer().getRootEditPart(); if (rep instanceof MainDesignerRootEditPart) { ScalableFreeformRootEditPart root = (ScalableFreeformRootEditPart) rep; thumbnail = new JSSScrollableThumbnail( (Viewport) root.getFigure(), (MRoot) getViewer().getContents().getModel()); thumbnail.setSource(root.getLayer(LayerConstants.PRINTABLE_LAYERS)); lws.setContents(thumbnail); disposeListener = new DisposeListener() { public void widgetDisposed(DisposeEvent e) { if (thumbnail != null) { thumbnail.deactivate(); thumbnail = null; } } }; editor.getEditor().addDisposeListener(disposeListener); } lws.setControl(overview); }