List of usage examples for org.eclipse.jface.viewers TableViewer getControl
@Override
public Control getControl()
From source file:uk.ac.gda.epics.client.pixium.views.PixiumView.java
License:Open Source License
private void setSelectionValue(final TableViewer control, final ISelection selection) { if (control != null && !control.getControl().isDisposed()) { control.getControl().getDisplay().asyncExec(new Runnable() { @Override/*from ww w .j a va 2 s . c o m*/ public void run() { if (!control.getControl().isDisposed()) { control.setSelection(selection); } } }); } }
From source file:v9t9.gui.client.swt.shells.disk.DiskCatalogDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { Composite composite = (Composite) super.createDialogArea(parent); ((GridLayout) composite.getLayout()).numColumns = 2; Label label = new Label(composite, SWT.WRAP); label.setText(catalog.deviceName + "\n\nName: " + catalog.volumeName + "; Total: " + catalog.totalSectors + "; Used: " + catalog.usedSectors); GridDataFactory.fillDefaults().grab(true, false).span(2, 1).applyTo(label); final TableViewer viewer = new TableViewer(composite, SWT.FULL_SELECTION | SWT.BORDER | SWT.MULTI); viewer.setContentProvider(new ArrayContentProvider()); viewer.setLabelProvider(new CatalogLabelProvider()); final CatalogSorter comparator = new CatalogSorter(); viewer.setComparator(comparator);//from w w w. ja v a2 s . c o m final Table table = viewer.getTable(); table.setHeaderVisible(true); GridDataFactory.fillDefaults().grab(true, true).applyTo(viewer.getControl()); TableColumn fileColumn = new TableColumn(table, SWT.LEFT); fileColumn.setText("Filename"); setSortListener(viewer, fileColumn, COLUMN_NAME); TableColumn sizeColumn = new TableColumn(table, SWT.LEFT); sizeColumn.setText("Sectors"); setSortListener(viewer, sizeColumn, COLUMN_SIZE); TableColumn typeColumn = new TableColumn(table, SWT.LEFT); typeColumn.setText("Type"); setSortListener(viewer, typeColumn, COLUMN_TYPE); TableColumn lenColumn = new TableColumn(table, SWT.LEFT); lenColumn.setText("RecLen"); setSortListener(viewer, lenColumn, COLUMN_RECLEN); TableColumn protColumn = new TableColumn(table, SWT.CENTER); protColumn.setText("Prot?"); setSortListener(viewer, protColumn, COLUMN_PROT); TableColumn commentColumn = new TableColumn(table, SWT.LEFT); commentColumn.setText("Comment"); setSortListener(viewer, commentColumn, COLUMN_COMMENT); viewer.setInput(entries); fileColumn.pack(); sizeColumn.pack(); typeColumn.pack(); lenColumn.pack(); commentColumn.pack(); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); if (sel.isEmpty()) { selectedEntry = null; } else { selectedEntry = (CatalogEntry) sel.getFirstElement(); } pastePathButton.setEnabled(selectedEntry != null); pasteFileNameButton.setEnabled(selectedEntry != null); viewContentButton.setEnabled(selectedEntry != null); } }); /// Composite buttons = new Composite(composite, SWT.NONE); GridLayoutFactory.fillDefaults().applyTo(buttons); GridDataFactory.fillDefaults().applyTo(buttons); pastePathButton = new Button(buttons, SWT.PUSH); pastePathButton.setText("Paste Path"); GridDataFactory.fillDefaults().applyTo(pastePathButton); pasteFileNameButton = new Button(buttons, SWT.PUSH); pasteFileNameButton.setText("Paste Filename"); GridDataFactory.fillDefaults().applyTo(pasteFileNameButton); viewContentButton = new Button(buttons, SWT.PUSH); GridDataFactory.fillDefaults().applyTo(viewContentButton); viewContentButton.setText("View Content"); pastePathButton.setEnabled(selectedEntry != null); pasteFileNameButton.setEnabled(selectedEntry != null); viewContentButton.setEnabled(selectedEntry != null); pastePathButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (selectedEntry == null) return; doPaste(selectedEntry, true); } }); pasteFileNameButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (selectedEntry == null) return; doPaste(selectedEntry, false); } }); viewContentButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (selectedEntry == null) return; doViewContent(selectedEntry.getFile()); } }); table.addMenuDetectListener(new MenuDetectListener() { @Override public void menuDetected(MenuDetectEvent e) { final Item item = viewer.getTable().getItem(viewer.getControl().toControl(new Point(e.x, e.y))); if (item == null) return; Menu menu = new Menu(viewer.getControl()); if (item.getData() instanceof CatalogEntry) { final CatalogEntry entry = (CatalogEntry) item.getData(); final MenuItem pasteFullPathItem; pasteFullPathItem = new MenuItem(menu, SWT.NONE); pasteFullPathItem.setText("Paste path into emulator"); pasteFullPathItem.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { doPaste(entry, true); } }); final MenuItem pasteNameItem; pasteNameItem = new MenuItem(menu, SWT.NONE); pasteNameItem.setText("Paste filename into emulator"); pasteNameItem.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { doPaste(entry, false); } }); final MenuItem viewItem; viewItem = new MenuItem(menu, SWT.NONE); viewItem.setText("View content"); viewItem.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { doViewContent(entry.getFile()); } }); } if (menu.getItemCount() == 0) { menu.dispose(); return; } menu.setLocation(e.x, e.y); menu.setVisible(true); while (!menu.isDisposed() && menu.isVisible()) { if (!getShell().getDisplay().readAndDispatch()) getShell().getDisplay().sleep(); } } }); return composite; }