List of usage examples for org.eclipse.jface.viewers ColumnViewer update
@Override
public void update(Object element, String[] properties)
From source file:au.gov.ga.earthsci.application.parts.layer.LayerTreeLabelProvider.java
License:Apache License
private void refreshCallers(final IRetrieval retrieval) { //don't queue up multiple updates for the same retrieval, as this floods the UI thread with asyncExec's if (refreshingRetrievals.contains(retrieval)) { return;//from w w w . java2 s .c om } List<Object> elements = new ArrayList<Object>(); Object[] callers = retrieval.getCallers(); for (Object caller : callers) { if (caller instanceof ILayerTreeNode) { elements.add(caller); } else if (caller instanceof Layer) { WeakReference<LayerNode> weak = delegate.weakLayerToNodeMap.get(caller); if (weak != null) { LayerNode node = weak.get(); if (node != null) { elements.add(node); } } } } if (!elements.isEmpty()) { final Object[] array = elements.toArray(); final ColumnViewer viewer = getViewer(); if (viewer != null && !viewer.getControl().isDisposed()) { refreshingRetrievals.add(retrieval); viewer.getControl().getDisplay().asyncExec(new Runnable() { @Override public void run() { if (!viewer.getControl().isDisposed()) { viewer.update(array, null); } refreshingRetrievals.remove(retrieval); } }); } } }
From source file:au.gov.ga.earthsci.layer.ui.LayerTreeLabelProvider.java
License:Apache License
private void refreshCallers(final IRetrieval retrieval) { //don't queue up multiple updates for the same retrieval, as this floods the UI thread with asyncExec's if (refreshingRetrievals.contains(retrieval)) { return;//from ww w .j a v a 2 s . c om } List<Object> elements = new ArrayList<Object>(); Object[] callers = retrieval.getCallers(); for (Object caller : callers) { if (caller instanceof ILayerTreeNode) { elements.add(caller); } else if (caller instanceof Layer || caller instanceof ElevationModel) { ILayerNode node = delegate.getNodeForLayerOrElevationModel(caller); if (node != null) { elements.add(node); } } } if (!elements.isEmpty()) { final Object[] array = elements.toArray(); final ColumnViewer viewer = getViewer(); if (viewer != null && !viewer.getControl().isDisposed()) { refreshingRetrievals.add(retrieval); viewer.getControl().getDisplay().asyncExec(new Runnable() { @Override public void run() { if (!viewer.getControl().isDisposed()) { viewer.update(array, null); } refreshingRetrievals.remove(retrieval); } }); } } }
From source file:org.eclipse.rap.nebula.jface.gridviewer.snippets.GridViewerSnippet.java
License:Open Source License
private void createGridColumns() { final TextCellEditor textCellEditor = new TextCellEditor(viewer.getGrid()); for (int i = 0; i < COLUMN_COUNT; i++) { final int index = i; GridViewerColumn column = new GridViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(260); column.getColumn().setText("Column " + index); column.setLabelProvider(new ColumnLabelProvider() { @Override//from www.jav a 2 s . c om protected void initialize(ColumnViewer viewer, ViewerColumn column) { // CellToolTipProvider is not compatible with Grid viewers } @Override public String getText(Object element) { return "Column " + index + " => " + element.toString(); } }); column.setEditingSupport(new EditingSupport(viewer) { @Override protected boolean canEdit(Object element) { return true; } @Override protected CellEditor getCellEditor(Object element) { return textCellEditor; } @Override protected Object getValue(Object element) { return ((Model) element).counter + ""; } @Override protected void setValue(Object element, Object value) { try { ((Model) element).counter = Integer.parseInt(value.toString()); viewer.update(element, null); } catch (NumberFormatException exception) { // ignore if not a number } } }); } }