public void save_Event() { FileDialog fd = new FileDialog(ZestDebuggerView.this.getSite().getShell(), SWT.SAVE); fd.setText("Save"); fd.setFilterPath("C:/"); String[] filterExt = {"*.jpg"}; fd.setFilterExtensions(filterExt); String selected = fd.open(); System.out.println(selected); if (selected != null) { GC gc = new GC(viewer.getControl()); org.eclipse.swt.graphics.Rectangle bounds = viewer.getControl().getBounds(); Image image = new Image(viewer.getControl().getDisplay(), bounds); try { gc.copyArea(image, 0, 0); ImageLoader imageLoader = new ImageLoader(); imageLoader.data = new ImageData[] {image.getImageData()}; imageLoader.save(selected, SWT.IMAGE_JPEG); MessageDialog.openInformation( ZestDebuggerView.this.getSite().getShell(), "Success", "The image has been saved successfully"); } catch (Exception e) { e.printStackTrace(); MessageDialog.openError( ZestDebuggerView.this.getSite().getShell(), "Failure", "The image can't be saved"); } finally { image.dispose(); gc.dispose(); } } }
public void createPartControl(Composite parent) { parent.setLayout(new FillLayout()); parent.addControlListener( new ControlListener() { public void controlResized(ControlEvent e) { viewer.applyLayout(); } public void controlMoved(ControlEvent e) {} }); viewer = new GraphViewer(parent, SWT.NONE); viewer.setContentProvider(new XLogFlowContentProvider()); viewer.setLabelProvider(new XLogFlowLabelProvider()); viewer.setLayoutAlgorithm( new HorizontalTreeLayoutAlgorithm(LayoutStyles.NO_LAYOUT_NODE_RESIZING)); viewer.addDoubleClickListener( new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { StructuredSelection sel = (StructuredSelection) event.getSelection(); if (sel.getFirstElement() instanceof XLogConnection) { XLogData d = ((XLogConnection) sel.getFirstElement()).destXlog; String date = DateUtil.yyyymmdd(d.p.endTime); ArrayList<AgentObject> objList = agentProxy.getObjectList(date, d.serverId); for (AgentObject obj : objList) { if (obj.getObjHash() == d.p.objHash) { new OpenXLogProfileJob( XLogCallView.this.getViewSite().getShell().getDisplay(), d, d.serverId) .schedule(); break; } } } } }); }
@Override public void createPartControl(Composite parent) { viewer = new GraphViewer(parent, SWT.NONE); viewer.setContentProvider(new ViewContentProvider()); viewer.setLabelProvider(new ViewLabelProvider()); viewer.setInput(getViewSite()); viewer.setLayoutAlgorithm(new TreeLayoutAlgorithm(LayoutStyles.NO_LAYOUT_NODE_RESIZING)); ResourcesPlugin.getWorkspace() .addResourceChangeListener( new IResourceChangeListener() { public void resourceChanged(IResourceChangeEvent event) { Display.getDefault() .asyncExec( new Runnable() { public void run() { viewer.refresh(); viewer.applyLayout(); } }); } }); getSite().setSelectionProvider(viewer); // Create the help context id for the viewer's control PlatformUI.getWorkbench() .getHelpSystem() .setHelp(viewer.getControl(), "com.javadude.dependencies2.viewer"); }
private void testWith(IGraphContentProvider contentProvider) { viewer.setContentProvider(contentProvider); viewer.setLabelProvider(new CustomLabelProvider()); viewer.setInput(new Object()); StringBuffer buffer = new StringBuffer(); for (int i = 0; i < viewer.getGraphControl().getNodes().size(); i++) { CGraphNode n = (CGraphNode) viewer.getGraphControl().getNodes().get(i); buffer.append(((Label) n.getNodeFigure().getChildren().get(0)).getText()); } String string = buffer.toString(); assertTrue("Label 1 should be in figure labels", string.indexOf("1") >= 0); assertTrue("Label 2 should be in figure labels", string.indexOf("2") >= 0); assertTrue("Label 3 should be in figure labels", string.indexOf("3") >= 0); }
@SuppressWarnings("restriction") private void updateViewer(ModelManagerEvent event) { // Use the setRedraw method to reduce flicker // when adding or removing multiple items in a table. viewer.getGraphControl().setRedraw(false); try { for (IChange change : event.getNewChanges()) { viewer.addNode((Change) change); } } finally { viewer.getGraphControl().setRedraw(true); viewer.refresh(); viewer.applyLayout(); } }
public void updateAndRefresh() { viewer.refresh(); viewer.applyLayout(); }
@Override public void refresh() { viewer.refresh(); }
@Override public void setFocus() { viewer.getControl().setFocus(); }