List of usage examples for org.eclipse.jface.resource JFaceResources getResources
public static ResourceManager getResources()
From source file:org.csstudio.trends.databrowser2.propsheet.AxesTableHandler.java
License:Open Source License
/** Initialize * @param parent//from w w w.j a v a 2 s .c o m * @param table_layout * @param operations_manager */ public AxesTableHandler(final Composite parent, final TableColumnLayout table_layout, final UndoableActionManager operations_manager) { color_registry = new LocalResourceManager(JFaceResources.getResources(), parent); this.operations_manager = operations_manager; axes_table = new TableViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION | SWT.VIRTUAL); final Table table = axes_table.getTable(); table.setHeaderVisible(true); table.setLinesVisible(true); createColumns(table_layout); axes_table.setContentProvider(this); createContextMenu(); }
From source file:org.csstudio.trends.databrowser2.propsheet.TraceTableHandler.java
License:Open Source License
/** Create table columns: Auto-sizable, with label provider and editor * @param table_layout/*from w w w . j ava2s . co m*/ * @param operations_manager * @param table_viewer */ public void createColumns(final TableColumnLayout table_layout, final UndoableActionManager operations_manager, final TableViewer table_viewer) { color_registry = new LocalResourceManager(JFaceResources.getResources(), table_viewer.getTable()); final Shell shell = table_viewer.getTable().getShell(); // Visible Column ---------- TableViewerColumn view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceVisibility, 45, 1); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setImage(item.isVisible() ? Activator.getDefault().getImage(Activator.ICON_CHECKED) : Activator.getDefault().getImage(Activator.ICON_UNCHECKED)); } @Override public String getToolTipText(Object element) { return Messages.TraceVisibilityTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { final int v1 = item1.isVisible() ? 1 : 0; final int v2 = item2.isVisible() ? 1 : 0; final int cmp = v1 - v2; if (cmp != 0) return cmp; return item1.getName().compareTo(item2.getName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; return new CheckboxCellEditor(((TableViewer) getViewer()).getTable()); } @Override protected Object getValue(final Object element) { return ((ModelItem) element).isVisible(); } @Override protected void setValue(final Object element, final Object value) { final ModelItem item = (ModelItem) element; final boolean visible = ((Boolean) value).booleanValue(); if (!visible && !store.getBoolean(Preferences.ALLOW_HIDE_TRACE)) { MessageDialogWithToggle md = MessageDialogWithToggle.openOkCancelConfirm(shell, Messages.HideTraceWarning, Messages.HideTraceWarningDetail, Messages.DoNotShowAgain, false, null, null); if (md.getToggleState()) store.setValue(Preferences.ALLOW_HIDE_TRACE, true); if (md.getReturnCode() != MessageDialog.OK) return; } new ChangeVisibilityCommand(operations_manager, item, visible); editing = false; } }); // Trace PV/Formula Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.ItemName, 70, 70); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getName()); } @Override public String getToolTipText(Object element) { return Messages.ItemNameTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { return item1.getName().compareTo(item2.getName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return ((ModelItem) element).getName(); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { final String new_name = value.toString().trim(); final ModelItem item = (ModelItem) element; if (new_name.equals(item.getName())) return; new ChangeNameCommand(shell, operations_manager, item, new_name); editing = false; } }); // Display Name Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceDisplayName, 70, 70); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getDisplayName()); } @Override public String getToolTipText(Object element) { return Messages.TraceDisplayNameTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { return item1.getDisplayName().compareTo(item2.getDisplayName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return ((ModelItem) element).getDisplayName(); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { final String new_name = value.toString().trim(); final ModelItem item = (ModelItem) element; if (new_name.equals(item.getDisplayName())) return; new ChangeDisplayNameCommand(operations_manager, item, new_name); editing = false; } }); // Color Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.Color, 40, 10); view_col.setLabelProvider(new ColorCellLabelProvider<ModelItem>() { @Override protected Color getColor(ModelItem item) { return color_registry.createColor(item.getColor()); } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; return new RGBCellEditor(table_viewer.getTable()); } @Override protected Object getValue(final Object element) { return ((ModelItem) element).getColor(); } @Override protected void setValue(final Object element, final Object value) { new ChangeColorCommand(operations_manager, (ModelItem) element, (RGB) value); editing = false; } }); // Selected sample time stamp and value view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.CursorTimestamp, 150, 30); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); final Optional<PlotDataItem<Instant>> sample = item.getSelectedSample(); if (sample.isPresent()) cell.setText(TimeHelper.format(sample.get().getPosition())); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(Object element) { return Messages.CursorTimestampTT; } }); view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.CursorValue, 40, 30); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); final Optional<PlotDataItem<Instant>> sample = item.getSelectedSample(); if (sample.isPresent()) { final PlotSample plot_sample = (PlotSample) sample.get(); String text = DefaultVTypeFormat.get().format(plot_sample.getVType()); final String units = item.getUnits(); if (units != null) text += " " + units; //$NON-NLS-1$ cell.setText(text); } else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(Object element) { return Messages.CursorValueTT; } }); // Scan Period Column (only applies to PVItems) ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.ScanPeriod, 70, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); if (item instanceof PVItem) cell.setText(Double.toString(((PVItem) item).getScanPeriod())); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(final Object element) { if (!(element instanceof PVItem)) return null; return Messages.ScanPeriodTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected boolean canEdit(Object element) { return element instanceof PVItem; } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected Object getValue(final Object element) { if (element instanceof PVItem) return Double.toString(((PVItem) element).getScanPeriod()); else return Messages.NotApplicable; } @Override protected void setValue(final Object element, final Object value) { if (!(element instanceof PVItem)) return; final PVItem pv = (PVItem) element; try { final double period = Double.parseDouble(value.toString().trim()); if (period != pv.getScanPeriod()) new ChangeSamplePeriodCommand(shell, operations_manager, pv, period); editing = false; } catch (NumberFormatException ex) { // Display will revert to original value return; } } }); // Buffer size Column (only applies to PVItems) ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.LiveSampleBufferSize, 70, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); if (item instanceof PVItem) cell.setText(Integer.toString(((PVItem) item).getLiveCapacity())); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(final Object element) { if (!(element instanceof PVItem)) return null; final PVItem pv = (PVItem) element; return NLS.bind(Messages.LiveBufferSizeInfoFmt, pv.getLiveCapacity(), new RelativeTime(pv.getLiveCapacity()).toString()); } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected boolean canEdit(Object element) { return element instanceof PVItem; } @Override protected Object getValue(final Object element) { if (element instanceof PVItem) return Integer.toString(((PVItem) element).getLiveCapacity()); else return Messages.NotApplicable; } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { if (!(element instanceof PVItem)) return; final PVItem pv = (PVItem) element; try { final int size = Integer.parseInt(value.toString().trim()); if (size != pv.getLiveCapacity()) new ChangeLiveCapacityCommand(shell, operations_manager, pv, size); editing = false; } catch (NumberFormatException ex) { // Display will revert to original value return; } } }); // Axis Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.Axis, 60, 30); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getAxis().getName()); } @Override public String getToolTipText(Object element) { return Messages.AxisTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { final int cmp = item1.getAxis().getName().compareTo(item2.getAxis().getName()); if (cmp != 0) return cmp; return item1.getDisplayName().compareTo(item2.getDisplayName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { // Thread-safe copy of model axes as this editor is invoked final List<AxisConfig> axes = new ArrayList<>(); @Override protected CellEditor getCellEditor(final Object element) { editing = true; final List<String> axis_names = new ArrayList<>(); axes.clear(); for (AxisConfig axis : model.getAxes()) { axes.add(axis); axis_names.add(axis.getName()); } final ComboBoxCellEditor combo = new ComboBoxCellEditor(table_viewer.getTable(), axis_names.toArray(new String[axis_names.size()]), SWT.READ_ONLY); combo.setValue(getValue(element)); return combo; } @Override protected Object getValue(final Object element) { return model.getAxisIndex(((ModelItem) element).getAxis()); } @Override protected void setValue(final Object element, final Object value) { final int axis_index = ((Integer) value).intValue(); final AxisConfig axis = axes.get(axis_index); final ModelItem item = (ModelItem) element; if (axis != item.getAxis()) new ChangeAxisCommand(operations_manager, item, axis); editing = false; } }); // Trace Type Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceType, 75, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getTraceType().toString()); } @Override public String getToolTipText(Object element) { return Messages.TraceTypeTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; final ComboBoxCellEditor combo = new ComboBoxCellEditor(table_viewer.getTable(), TraceType.getDisplayNames(), SWT.READ_ONLY); combo.setValue(getValue(element)); return combo; } @Override protected Object getValue(final Object element) { return ((ModelItem) element).getTraceType().ordinal(); } @Override protected void setValue(final Object element, final Object value) { final TraceType trace_type = TraceType.fromOrdinal(((Integer) value).intValue()); final ModelItem item = (ModelItem) element; if (trace_type != item.getTraceType()) new ChangeTraceTypeCommand(operations_manager, item, trace_type); editing = false; } }); // Line Width Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceLineWidth, 40, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(Integer.toString(item.getLineWidth())); } @Override public String getToolTipText(Object element) { return Messages.TraceLineWidthTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return Integer.toString(((ModelItem) element).getLineWidth()); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { int width; try { width = Integer.parseInt(value.toString().trim()); } catch (NumberFormatException ex) { width = 0; } final ModelItem item = (ModelItem) element; if (width != item.getLineWidth()) new ChangeLineWidthCommand(operations_manager, item, width); editing = false; } }); // Point Type Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.PointType, 75, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getPointType().toString()); } @Override public String getToolTipText(Object element) { return Messages.PointTypeTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; final ComboBoxCellEditor combo = new ComboBoxCellEditor(table_viewer.getTable(), PointType.getDisplayNames(), SWT.READ_ONLY); combo.setValue(getValue(element)); return combo; } @Override protected Object getValue(final Object element) { return ((ModelItem) element).getPointType().ordinal(); } @Override protected void setValue(final Object element, final Object value) { final PointType point_type = PointType.fromOrdinal(((Integer) value).intValue()); final ModelItem item = (ModelItem) element; if (point_type != item.getPointType()) new ChangePointTypeCommand(operations_manager, item, point_type); editing = false; } }); // Point Size Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.PointSize, 40, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(Integer.toString(item.getPointSize())); } @Override public String getToolTipText(Object element) { return Messages.PointSizeTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return Integer.toString(((ModelItem) element).getPointSize()); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { int size; try { size = Integer.parseInt(value.toString().trim()); } catch (NumberFormatException ex) { size = 0; } final ModelItem item = (ModelItem) element; if (size != item.getPointSize()) new ChangePointSizeCommand(operations_manager, item, size); editing = false; } }); // Request Type Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.RequestType, 75, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); if (item instanceof PVItem) cell.setText(((PVItem) item).getRequestType().toString()); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(Object element) { return Messages.RequestTypeTT; } }); // Edit as boolean: Raw == false, Optimized == true view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected boolean canEdit(final Object element) { return element instanceof PVItem; } @Override protected CellEditor getCellEditor(final Object element) { editing = true; return new CheckboxCellEditor(((TableViewer) getViewer()).getTable()); } @Override protected Object getValue(final Object element) { return ((PVItem) element).getRequestType() == RequestType.OPTIMIZED; } @Override protected void setValue(final Object element, final Object value) { final PVItem item = (PVItem) element; final RequestType request_type = ((Boolean) value).booleanValue() ? RequestType.OPTIMIZED : RequestType.RAW; if (request_type == RequestType.RAW && !store.getBoolean(Preferences.ALLOW_REQUEST_RAW)) { MessageDialogWithToggle md = MessageDialogWithToggle.openOkCancelConfirm(shell, Messages.RequestTypeWarning, Messages.RequestTypeWarningDetail, Messages.DoNotShowAgain, false, null, null); if (md.getToggleState()) store.setValue(Preferences.ALLOW_REQUEST_RAW, true); if (md.getReturnCode() == MessageDialog.OK) return; } new ChangeRequestTypeCommand(operations_manager, item, request_type); editing = false; } }); // Waveform Index Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.WaveformIndexCol, 40, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(Integer.toString(item.getWaveformIndex())); } @Override public String getToolTipText(Object element) { return Messages.WaveformIndexColTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return Integer.toString(((ModelItem) element).getWaveformIndex()); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { int index; try { index = Integer.parseInt(value.toString().trim()); if (index < 0) return; final ModelItem item = (ModelItem) element; if (index != item.getWaveformIndex()) new ChangeWaveformIndexCommand(operations_manager, item, index); } catch (NumberFormatException ex) { return; } finally { editing = false; } } }); ColumnViewerToolTipSupport.enableFor(table_viewer); }
From source file:org.csstudio.trends.databrowser3.propsheet.TraceTableHandler.java
License:Open Source License
/** Create table columns: Auto-sizable, with label provider and editor * @param table_layout//w w w . jav a2s. c o m * @param operations_manager * @param table_viewer */ public void createColumns(final TableColumnLayout table_layout, final UndoableActionManager operations_manager, final TableViewer table_viewer) { color_registry = new LocalResourceManager(JFaceResources.getResources(), table_viewer.getTable()); final Shell shell = table_viewer.getTable().getShell(); // Visible Column ---------- TableViewerColumn view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceVisibility, 45, 1); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setImage(item.isVisible() ? Activator.getDefault().getImage(Activator.ICON_CHECKED) : Activator.getDefault().getImage(Activator.ICON_UNCHECKED)); } @Override public String getToolTipText(Object element) { return Messages.TraceVisibilityTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { final int v1 = item1.isVisible() ? 1 : 0; final int v2 = item2.isVisible() ? 1 : 0; final int cmp = v1 - v2; if (cmp != 0) return cmp; return item1.getName().compareTo(item2.getName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; return new CheckboxCellEditor(((TableViewer) getViewer()).getTable()); } @Override protected Object getValue(final Object element) { return ((ModelItem) element).isVisible(); } @Override protected void setValue(final Object element, final Object value) { final ModelItem item = (ModelItem) element; final boolean visible = ((Boolean) value).booleanValue(); if (!visible && prompt_for_not_visible) { if (!MessageDialog.openQuestion(shell, Messages.HideTraceWarning, Messages.HideTraceWarningDetail)) return; prompt_for_not_visible = false; } new ChangeVisibilityCommand(operations_manager, item, visible); editing = false; } }); // Trace PV/Formula Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.ItemName, 70, 70); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getName()); } @Override public String getToolTipText(Object element) { return Messages.ItemNameTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { return item1.getName().compareTo(item2.getName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return ((ModelItem) element).getName(); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { final String new_name = value.toString().trim(); final ModelItem item = (ModelItem) element; if (new_name.equals(item.getName())) return; new ChangeNameCommand(shell, operations_manager, item, new_name); editing = false; } }); // Display Name Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceDisplayName, 70, 70); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getDisplayName()); } @Override public String getToolTipText(Object element) { return Messages.TraceDisplayNameTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { return item1.getDisplayName().compareTo(item2.getDisplayName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return ((ModelItem) element).getDisplayName(); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { final String new_name = value.toString().trim(); final ModelItem item = (ModelItem) element; if (new_name.equals(item.getDisplayName())) return; new ChangeDisplayNameCommand(operations_manager, item, new_name); editing = false; } }); // Color Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.Color, 40, 10); view_col.setLabelProvider(new ColorCellLabelProvider<ModelItem>() { @Override protected Color getColor(ModelItem item) { return color_registry.createColor(SWTMediaPool.getRGB(item.getPaintColor())); } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; return new RGBCellEditor(table_viewer.getTable()); } @Override protected Object getValue(final Object element) { return ((ModelItem) element).getRGBColor(); } @Override protected void setValue(final Object element, final Object value) { new ChangeColorCommand(operations_manager, (ModelItem) element, SWTMediaPool.getJFX((RGB) value)); editing = false; } }); // Selected sample time stamp and value view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.CursorTimestamp, 150, 30); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); final Optional<PlotDataItem<Instant>> sample = item.getSelectedSample(); if (sample.isPresent()) cell.setText(TimeHelper.format(sample.get().getPosition())); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(Object element) { return Messages.CursorTimestampTT; } }); view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.CursorValue, 40, 30); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); final Optional<PlotDataItem<Instant>> sample = item.getSelectedSample(); if (sample.isPresent()) { final PlotSample plot_sample = (PlotSample) sample.get(); String text = DefaultVTypeFormat.get().format(plot_sample.getVType()); final String units = item.getUnits(); if (units != null) text += " " + units; //$NON-NLS-1$ cell.setText(text); } else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(Object element) { return Messages.CursorValueTT; } }); // Scan Period Column (only applies to PVItems) ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.ScanPeriod, 70, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); if (item instanceof PVItem) cell.setText(Double.toString(((PVItem) item).getScanPeriod())); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(final Object element) { if (!(element instanceof PVItem)) return null; return Messages.ScanPeriodTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected boolean canEdit(Object element) { return element instanceof PVItem; } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected Object getValue(final Object element) { if (element instanceof PVItem) return Double.toString(((PVItem) element).getScanPeriod()); else return Messages.NotApplicable; } @Override protected void setValue(final Object element, final Object value) { if (!(element instanceof PVItem)) return; final PVItem pv = (PVItem) element; try { final double period = Double.parseDouble(value.toString().trim()); if (period != pv.getScanPeriod()) new ChangeSamplePeriodCommand(shell, operations_manager, pv, period); editing = false; } catch (NumberFormatException ex) { // Display will revert to original value return; } } }); // Buffer size Column (only applies to PVItems) ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.LiveSampleBufferSize, 70, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); if (item instanceof PVItem) cell.setText(Integer.toString(((PVItem) item).getLiveCapacity())); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(final Object element) { if (!(element instanceof PVItem)) return null; final PVItem pv = (PVItem) element; return NLS.bind(Messages.LiveBufferSizeInfoFmt, pv.getLiveCapacity(), new RelativeTime(pv.getLiveCapacity()).toString()); } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected boolean canEdit(Object element) { return element instanceof PVItem; } @Override protected Object getValue(final Object element) { if (element instanceof PVItem) return Integer.toString(((PVItem) element).getLiveCapacity()); else return Messages.NotApplicable; } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { if (!(element instanceof PVItem)) return; final PVItem pv = (PVItem) element; try { final int size = Integer.parseInt(value.toString().trim()); if (size != pv.getLiveCapacity()) new ChangeLiveCapacityCommand(shell, operations_manager, pv, size); editing = false; } catch (NumberFormatException ex) { // Display will revert to original value return; } } }); // Axis Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.Axis, 60, 30); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getAxis().getName()); } @Override public String getToolTipText(Object element) { return Messages.AxisTT; } }); new TableColumnSortHelper<ModelItem>(table_viewer, view_col) { @Override public int compare(final ModelItem item1, final ModelItem item2) { final int cmp = item1.getAxis().getName().compareTo(item2.getAxis().getName()); if (cmp != 0) return cmp; return item1.getDisplayName().compareTo(item2.getDisplayName()); } }; view_col.setEditingSupport(new EditSupportBase(table_viewer) { // Thread-safe copy of model axes as this editor is invoked final List<AxisConfig> axes = new ArrayList<>(); @Override protected CellEditor getCellEditor(final Object element) { editing = true; final List<String> axis_names = new ArrayList<>(); axes.clear(); for (AxisConfig axis : model.getAxes()) { axes.add(axis); axis_names.add(axis.getName()); } final ComboBoxCellEditor combo = new ComboBoxCellEditor(table_viewer.getTable(), axis_names.toArray(new String[axis_names.size()]), SWT.READ_ONLY); combo.setValue(getValue(element)); return combo; } @Override protected Object getValue(final Object element) { return model.getAxisIndex(((ModelItem) element).getAxis()); } @Override protected void setValue(final Object element, final Object value) { final int axis_index = ((Integer) value).intValue(); final AxisConfig axis = axes.get(axis_index); final ModelItem item = (ModelItem) element; if (axis != item.getAxis()) new ChangeAxisCommand(operations_manager, item, axis); editing = false; } }); // Trace Type Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceType, 75, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getTraceType().toString()); } @Override public String getToolTipText(Object element) { return Messages.TraceTypeTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; final ComboBoxCellEditor combo = new ComboBoxCellEditor(table_viewer.getTable(), TraceType.getDisplayNames(), SWT.READ_ONLY); combo.setValue(getValue(element)); return combo; } @Override protected Object getValue(final Object element) { return ((ModelItem) element).getTraceType().ordinal(); } @Override protected void setValue(final Object element, final Object value) { final TraceType trace_type = TraceType.values()[(((Integer) value).intValue())]; final ModelItem item = (ModelItem) element; if (trace_type != item.getTraceType()) new ChangeTraceTypeCommand(operations_manager, item, trace_type); editing = false; } }); // Line Width Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceLineWidth, 40, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(Integer.toString(item.getLineWidth())); } @Override public String getToolTipText(Object element) { return Messages.TraceLineWidthTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return Integer.toString(((ModelItem) element).getLineWidth()); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { int width; try { width = Integer.parseInt(value.toString().trim()); } catch (NumberFormatException ex) { width = 0; } final ModelItem item = (ModelItem) element; if (width != item.getLineWidth()) new ChangeLineWidthCommand(operations_manager, item, width); editing = false; } }); // Line Style Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.TraceLineStyle, 75, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getLineStyle().toString()); } @Override public String getToolTipText(Object element) { return Messages.TraceLineStyleTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; final ComboBoxCellEditor combo = new ComboBoxCellEditor(table_viewer.getTable(), LineStyle.getDisplayNames(), SWT.READ_ONLY); combo.setValue(getValue(element)); return combo; } @Override protected Object getValue(final Object element) { return ((ModelItem) element).getLineStyle().ordinal(); } @Override protected void setValue(final Object element, final Object value) { final LineStyle line_style = LineStyle.values()[((Integer) value).intValue()]; final ModelItem item = (ModelItem) element; if (line_style != item.getLineStyle()) new ChangeLineStyleCommand(operations_manager, item, line_style); editing = false; } }); // Point Type Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.PointType, 75, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(item.getPointType().toString()); } @Override public String getToolTipText(Object element) { return Messages.PointTypeTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected CellEditor getCellEditor(final Object element) { editing = true; final ComboBoxCellEditor combo = new ComboBoxCellEditor(table_viewer.getTable(), PointType.getDisplayNames(), SWT.READ_ONLY); combo.setValue(getValue(element)); return combo; } @Override protected Object getValue(final Object element) { return ((ModelItem) element).getPointType().ordinal(); } @Override protected void setValue(final Object element, final Object value) { final PointType point_type = PointType.values()[((Integer) value).intValue()]; final ModelItem item = (ModelItem) element; if (point_type != item.getPointType()) new ChangePointTypeCommand(operations_manager, item, point_type); editing = false; } }); // Point Size Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.PointSize, 40, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(Integer.toString(item.getPointSize())); } @Override public String getToolTipText(Object element) { return Messages.PointSizeTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return Integer.toString(((ModelItem) element).getPointSize()); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { int size; try { size = Integer.parseInt(value.toString().trim()); } catch (NumberFormatException ex) { size = 0; } final ModelItem item = (ModelItem) element; if (size != item.getPointSize()) new ChangePointSizeCommand(operations_manager, item, size); editing = false; } }); // Request Type Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.RequestType, 75, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); if (item instanceof PVItem) cell.setText(((PVItem) item).getRequestType().toString()); else cell.setText(Messages.NotApplicable); } @Override public String getToolTipText(Object element) { return Messages.RequestTypeTT; } }); // Edit as boolean: Raw == false, Optimized == true view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected boolean canEdit(final Object element) { return element instanceof PVItem; } @Override protected CellEditor getCellEditor(final Object element) { editing = true; return new CheckboxCellEditor(((TableViewer) getViewer()).getTable()); } @Override protected Object getValue(final Object element) { return ((PVItem) element).getRequestType() == RequestType.OPTIMIZED; } @Override protected void setValue(final Object element, final Object value) { final PVItem item = (PVItem) element; final RequestType request_type = ((Boolean) value).booleanValue() ? RequestType.OPTIMIZED : RequestType.RAW; if (request_type == RequestType.RAW && prompt_for_raw_data_request) { if (!MessageDialog.openQuestion(shell, Messages.RequestTypeWarning, Messages.RequestTypeWarningDetail)) return; prompt_for_raw_data_request = false; } new ChangeRequestTypeCommand(operations_manager, item, request_type); editing = false; } }); // Waveform Index Column ---------- view_col = TableHelper.createColumn(table_layout, table_viewer, Messages.WaveformIndexCol, 40, 10); view_col.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final ModelItem item = (ModelItem) cell.getElement(); cell.setText(Integer.toString(item.getWaveformIndex())); } @Override public String getToolTipText(Object element) { return Messages.WaveformIndexColTT; } }); view_col.setEditingSupport(new EditSupportBase(table_viewer) { @Override protected Object getValue(final Object element) { return Integer.toString(((ModelItem) element).getWaveformIndex()); } @Override protected CellEditor getCellEditor(Object element) { editing = true; return super.getCellEditor(element); } @Override protected void setValue(final Object element, final Object value) { int index; try { index = Integer.parseInt(value.toString().trim()); if (index < 0) return; final ModelItem item = (ModelItem) element; if (index != item.getWaveformIndex()) new ChangeWaveformIndexCommand(operations_manager, item, index); } catch (NumberFormatException ex) { return; } finally { editing = false; } } }); ColumnViewerToolTipSupport.enableFor(table_viewer); }
From source file:org.destecs.ide.ui.navigator.DestecsLabelProvider.java
License:Open Source License
/** * Lazy load the resource manager/* w w w .ja v a 2 s . co m*/ * * @return The resource manager, create one if necessary */ private ResourceManager getResourceManager() { if (resourceManager == null) { resourceManager = new LocalResourceManager(JFaceResources.getResources()); } return resourceManager; }
From source file:org.dresdenocl.modelbus.ui.internal.wizards.util.MetaModelLabelProvider.java
License:Open Source License
/** * <p>//from ww w. ja v a 2 s . c o m * Creates a new {@link MetaModelLabelProvider}. * </p> */ public MetaModelLabelProvider() { this.resources = new LocalResourceManager(JFaceResources.getResources()); }
From source file:org.dresdenocl.modelbus.ui.internal.wizards.util.ModelInstanceTypeLabelProvider.java
License:Open Source License
/** * <p>/*from w w w .j a va 2s . co m*/ * Instantiates a new {@link ModelInstanceTypeLabelProvider}. * </p> */ public ModelInstanceTypeLabelProvider() { this.resources = new LocalResourceManager(JFaceResources.getResources()); }
From source file:org.dresdenocl.modelbus.ui.internal.wizards.util.ModelLabelProvider.java
License:Open Source License
/** * <p>//from ww w . j a va 2s . c o m * Instantiates a new {@link ModelLabelProvider}. * </p> */ public ModelLabelProvider() { this.resources = new LocalResourceManager(JFaceResources.getResources()); }
From source file:org.eclipse.birt.report.designer.internal.ui.swt.custom.TabbedPropertyTitle.java
License:Open Source License
private void updateToolBar() { if (toolbar != null) { ResourceManager parentResourceManager = JFaceResources.getResources(); LocalResourceManager localManager = new LocalResourceManager(parentResourceManager); for (int i = 0; i < toolbar.getItemCount(); i++) { ToolItem item = toolbar.getItem(i); IAction action = (IAction) actionMap.get(item); if (action != null) { ImageDescriptor image = null; if (action.getImageDescriptor() != null) image = action.getImageDescriptor(); if (image != null) item.setImage(localManager.createImageWithDefault(image)); item.setToolTipText(action.getToolTipText()); if (IAction.AS_CHECK_BOX == action.getStyle()) { item.setSelection(action.isChecked()); }/* w ww .ja va2s. c o m*/ item.setEnabled(action.isEnabled()); } } disposeOldImages(); imageManager = localManager; if (toolbar.isFocusControl()) toolbar.setFocus(); } }
From source file:org.eclipse.buildship.ui.external.viewer.FilteredTree.java
License:Open Source License
/** * Create the button that clears the text. * * @param parent parent <code>Composite</code> of toolbar button *//*from w w w. ja v a 2s .co m*/ private void createClearText(Composite parent) { // only create the button if the text widget doesn't support one // natively if ((filterText.getStyle() & SWT.ICON_CANCEL) == 0) { final Label clearButton = new Label(parent, SWT.NONE); ResourceManager resourceManager = new LocalResourceManager(JFaceResources.getResources(), clearButton); final Image inactiveImage = resourceManager .createImage(JFaceResources.getImageRegistry().getDescriptor(DISABLED_CLEAR_ICON)); final Image activeImage = resourceManager .createImage(JFaceResources.getImageRegistry().getDescriptor(CLEAR_ICON)); final Image pressedImage = resourceManager .createImage(JFaceResources.getImageRegistry().getDescriptor(PRESSED_CLEAR_ICON)); clearButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); clearButton.setImage(inactiveImage); clearButton.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND)); clearButton.setToolTipText(ViewerMessages.FilteredTree_ClearToolTip); clearButton.addMouseListener(new MouseAdapter() { private MouseMoveListener fMoveListener; @Override public void mouseDown(MouseEvent e) { clearButton.setImage(pressedImage); fMoveListener = new MouseMoveListener() { private boolean fMouseInButton = true; @Override public void mouseMove(MouseEvent e) { boolean mouseInButton = isMouseInButton(e); if (mouseInButton != fMouseInButton) { fMouseInButton = mouseInButton; clearButton.setImage(mouseInButton ? pressedImage : inactiveImage); } } }; clearButton.addMouseMoveListener(fMoveListener); } @Override public void mouseUp(MouseEvent e) { if (fMoveListener != null) { clearButton.removeMouseMoveListener(fMoveListener); fMoveListener = null; boolean mouseInButton = isMouseInButton(e); clearButton.setImage(mouseInButton ? activeImage : inactiveImage); if (mouseInButton) { clearText(); filterText.setFocus(); } } } private boolean isMouseInButton(MouseEvent e) { Point buttonSize = clearButton.getSize(); return 0 <= e.x && e.x < buttonSize.x && 0 <= e.y && e.y < buttonSize.y; } }); clearButton.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseEnter(MouseEvent e) { clearButton.setImage(activeImage); } @Override public void mouseExit(MouseEvent e) { clearButton.setImage(inactiveImage); } @Override public void mouseHover(MouseEvent e) { } }); clearButton.getAccessible().addAccessibleListener(new AccessibleAdapter() { @Override public void getName(AccessibleEvent e) { e.result = ViewerMessages.FilteredTree_AccessibleListenerClearButton; } }); clearButton.getAccessible().addAccessibleControlListener(new AccessibleControlAdapter() { @Override public void getRole(AccessibleControlEvent e) { e.detail = ACC.ROLE_PUSHBUTTON; } }); this.clearButtonControl = clearButton; } }
From source file:org.eclipse.buildship.ui.view.execution.ExecutionPageNameLabelProvider.java
License:Open Source License
public ExecutionPageNameLabelProvider() { this.resourceManager = new LocalResourceManager(JFaceResources.getResources()); ColorDescriptor decorationsColor = ColorUtils.getDecorationsColorDescriptorFromCurrentTheme(); this.customTextToColor = ImmutableMap.of("UP-TO-DATE", decorationsColor, "FROM-CACHE", decorationsColor); }